This commit was manufactured by cvs2svn to create tag 'v20050601_0215'.
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 cf2b41a..0000000
--- a/bundles/org.eclipse.jst.jsp.core/.settings/org.eclipse.jdt.core.prefs
+++ /dev/null
@@ -1,79 +0,0 @@
-#Mon May 30 17:57:30 EDT 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.codegen.inlineJsrBytecode=disabled

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

-org.eclipse.jdt.core.compiler.problem.enumIdentifier=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=error

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

-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.suppressWarnings=enabled

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

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

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

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

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

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

-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=warning

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

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

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

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

diff --git a/bundles/org.eclipse.jst.jsp.core/.settings/org.eclipse.pde.prefs b/bundles/org.eclipse.jst.jsp.core/.settings/org.eclipse.pde.prefs
deleted file mode 100644
index 42fb716..0000000
--- a/bundles/org.eclipse.jst.jsp.core/.settings/org.eclipse.pde.prefs
+++ /dev/null
@@ -1,14 +0,0 @@
-#Fri May 27 23:56:32 EDT 2005
-compilers.p.deprecated=1
-compilers.p.illegal-att-value=0
-compilers.p.no-required-att=0
-compilers.p.not-externalized-att=1
-compilers.p.unknown-attribute=0
-compilers.p.unknown-class=0
-compilers.p.unknown-element=0
-compilers.p.unknown-resource=0
-compilers.p.unresolved-ex-points=0
-compilers.p.unresolved-import=0
-compilers.p.unused-element-or-attribute=0
-compilers.use-project=true
-eclipse.preferences.version=1
diff --git a/bundles/org.eclipse.jst.jsp.core/META-INF/MANIFEST.MF b/bundles/org.eclipse.jst.jsp.core/META-INF/MANIFEST.MF
deleted file mode 100644
index 7870b65..0000000
--- a/bundles/org.eclipse.jst.jsp.core/META-INF/MANIFEST.MF
+++ /dev/null
@@ -1,42 +0,0 @@
-Manifest-Version: 1.0
-Bundle-ManifestVersion: 2
-Bundle-Name: %pluginName
-Bundle-SymbolicName: org.eclipse.jst.jsp.core; singleton:=true
-Bundle-Version: 1.0.0
-Bundle-Activator: org.eclipse.jst.jsp.core.internal.JSPCorePlugin
-Bundle-Vendor: %providerName
-Bundle-Localization: plugin
-Export-Package: org.eclipse.jst.jsp.core.internal,
- org.eclipse.jst.jsp.core.internal.contentmodel,
- org.eclipse.jst.jsp.core.internal.contentmodel.tld,
- org.eclipse.jst.jsp.core.internal.contentmodel.tld.provisional,
- org.eclipse.jst.jsp.core.internal.contenttype,
- org.eclipse.jst.jsp.core.internal.document,
- org.eclipse.jst.jsp.core.internal.domdocument,
- org.eclipse.jst.jsp.core.internal.encoding,
- org.eclipse.jst.jsp.core.internal.java,
- org.eclipse.jst.jsp.core.internal.java.search,
- org.eclipse.jst.jsp.core.internal.modelhandler,
- org.eclipse.jst.jsp.core.internal.modelquery,
- org.eclipse.jst.jsp.core.internal.parser,
- org.eclipse.jst.jsp.core.internal.parser.internal,
- org.eclipse.jst.jsp.core.internal.preferences,
- org.eclipse.jst.jsp.core.internal.provisional,
- org.eclipse.jst.jsp.core.internal.provisional.contenttype,
- org.eclipse.jst.jsp.core.internal.provisional.text,
- org.eclipse.jst.jsp.core.internal.regions,
- org.eclipse.jst.jsp.core.internal.tasks,
- org.eclipse.jst.jsp.core.internal.text,
- org.eclipse.jst.jsp.core.internal.util
-Require-Bundle: org.eclipse.core.runtime,
- org.eclipse.core.resources,
- org.eclipse.core.filebuffers,
- org.eclipse.wst.html.core,
- org.eclipse.wst.xml.core,
- org.eclipse.wst.sse.ui,
- org.eclipse.wst.sse.core,
- org.eclipse.wst.xml.uriresolver,
- org.eclipse.jdt.core,
- org.eclipse.text,
- org.eclipse.wst.common.uriresolver
-Eclipse-AutoStart: true
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 6b443b0..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,\
-               .options,\
-               plugin.properties,\
-               META-INF/,\
-               .
-src.includes = plugin.xml,\
-               plugin.properties,\
-               component.xml,\
-               build.properties
-source.. = 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 c013b11..0000000
--- a/bundles/org.eclipse.jst.jsp.core/component.xml
+++ /dev/null
@@ -1,9 +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" />
-
-
-</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 acab5bf..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
-JSP_Tag_Content_Type_Extension_Element.name=JSP Tag Definition
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 24b531d..0000000
--- a/bundles/org.eclipse.jst.jsp.core/plugin.xml
+++ /dev/null
@@ -1,128 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<?eclipse version="3.0"?>
-<plugin>
-
-     <extension
-         point="org.eclipse.wst.sse.core.modelHandler">
-      <modelHandler
-            class="org.eclipse.jst.jsp.core.internal.modelhandler.ModelHandlerForJSP"
-            associatedContentTypeId="org.eclipse.jst.jsp.core.jspsource"
-            id="org.eclipse.jst.jsp.core.internal.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.taskdelegate"
-         point="org.eclipse.wst.sse.core.taskscanner">
-      <scanner
-            class="org.eclipse.jst.jsp.core.internal.tasks.JSPTaskScannerDelegate"
-            contentTypeIds="org.eclipse.jst.jsp.core.jspsource" />
-   </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.internal.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.internal.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,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>
-		 <content-type
-               file-extensions="jspf,jsf"
-               priority="high"
-               name="%JSP_Content_Type_Extension_Element.name"
-               id="jspfragmentsource"
-               base-type="org.eclipse.jst.jsp.core.jspsource"
-			   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>		 
-	
-	<!-- initialize jsp core preferences -->
-	<extension point="org.eclipse.core.runtime.preferences">
-         <initializer class="org.eclipse.jst.jsp.core.internal.preferences.JSPCorePreferenceInitializer"/>
-	</extension>
-</plugin>
diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/Assert.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/Assert.java
deleted file mode 100644
index c634c56..0000000
--- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/Assert.java
+++ /dev/null
@@ -1,123 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2001, 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * 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;
-
-
-
-/**
- * <code>Assert</code> is useful for for embedding runtime sanity checks in
- * code. The predicate methods all test a condition and throw some type of
- * unchecked exception if the condition does not hold.
- * <p>
- * Assertion failure exceptions, like most runtime exceptions, are thrown when
- * something is misbehaving. Assertion failures are invariably unspecified
- * behavior; consequently, clients should never rely on these being thrown
- * (and certainly should not being catching them specifically).
- * </p>
- */
-public final class Assert {
-
-	/**
-	 * <code>AssertionFailedException</code> is a runtime exception thrown
-	 * by some of the methods in <code>Assert</code>.
-	 * <p>
-	 * This class is not declared public to prevent some misuses; programs
-	 * that catch or otherwise depend on assertion failures are susceptible to
-	 * unexpected breakage when assertions in the code are added or removed.
-	 * </p>
-	 */
-	class AssertionFailedException extends RuntimeException {
-		/**
-		 * Comment for <code>serialVersionUID</code>
-		 */
-		private static final long serialVersionUID = 1L;
-
-		/**
-		 * Constructs a new exception.
-		 */
-		public AssertionFailedException() {
-			super();
-		}
-
-		/**
-		 * Constructs a new exception with the given message.
-		 */
-		public AssertionFailedException(String detail) {
-			super(detail);
-		}
-	}
-
-	/**
-	 * Asserts that an argument is legal. If the given boolean is not
-	 * <code>true</code>, an <code>IllegalArgumentException</code> is
-	 * thrown. The given message is included in that exception, to aid
-	 * debugging.
-	 * 
-	 * @param expression
-	 *            the outcode of the check
-	 * @param message
-	 *            the message to include in the exception
-	 * @return <code>true</code> if the check passes (does not return if the
-	 *         check fails)
-	 * @exception IllegalArgumentException
-	 *                if the legality test failed
-	 */
-	public static boolean isLegal(boolean expression, String message) {
-		if (!expression)
-			throw new IllegalArgumentException(message);
-		return expression;
-	}
-
-	/**
-	 * Asserts that the given object is not <code>null</code>. If this is
-	 * not the case, some kind of unchecked exception is thrown. The given
-	 * message is included in that exception, to aid debugging.
-	 * 
-	 * @param object
-	 *            the value to test
-	 * @param message
-	 *            the message to include in the exception
-	 * @exception IllegalArgumentException
-	 *                if the object is <code>null</code>
-	 */
-	public static void isNotNull(Object object, String message) {
-		if (object == null) {
-			Logger.log(Logger.ERROR, "null_argument: " + message); //$NON-NLS-1$
-			throw new Assert().new AssertionFailedException(message);
-		}
-	}
-
-	/**
-	 * Asserts that the given boolean is <code>true</code>. If this is not
-	 * the case, some kind of unchecked exception is thrown. The given message
-	 * is included in that exception, to aid debugging.
-	 * 
-	 * @param expression
-	 *            the outcode of the check
-	 * @param message
-	 *            the message to include in the exception
-	 * @return <code>true</code> if the check passes (does not return if the
-	 *         check fails)
-	 */
-	public static boolean isTrue(boolean expression, String message) {
-		if (!expression) {
-			Logger.log(Logger.ERROR, "assertion failed: " + message); //$NON-NLS-1$
-			throw new Assert().new AssertionFailedException(message);
-		}
-		return expression;
-	}
-
-	/* This class is not intended to be instantiated. */
-	private Assert() {
-	}
-}
diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/JSPCoreMessages.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/JSPCoreMessages.java
deleted file mode 100644
index d535579..0000000
--- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/JSPCoreMessages.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.jst.jsp.core.internal;
-
-import org.eclipse.osgi.util.NLS;
-
-/**
- * Strings used by JSP Core
- * 
- * @since 1.0
- */
-public class JSPCoreMessages extends NLS {
-	private static final String BUNDLE_NAME = "org.eclipse.jst.jsp.core.internal.JSPCorePluginResources"; //$NON-NLS-1$
-
-	public static String JSPIndexManager_0;
-	public static String JSPIndexManager_2;
-	public static String JSP_Search;
-	public static String JSPDocumentLoader_1;
-	
-	private JSPCoreMessages() {
-	}
-
-	static {
-		// initialize resource bundle
-		NLS.initializeMessages(BUNDLE_NAME, JSPCoreMessages.class);
-	}
-}
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 3905b7b..0000000
--- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/JSPCorePlugin.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;
-
-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.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.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;	
-
-	/**
-	 * 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#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);
-	}
-}
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 01d6d8d..0000000
--- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/JSPCorePluginResources.properties
+++ /dev/null
@@ -1,14 +0,0 @@
-###############################################################################
-# Copyright (c) 2004 IBM Corporation and others.
-# All rights reserved. This program and the accompanying materials
-# are made available under the terms of the Eclipse Public License v1.0
-# which accompanies this distribution, and is available at
-# http://www.eclipse.org/legal/epl-v10.html
-# 
-# Contributors:
-#     IBM Corporation - initial API and implementation
-###############################################################################
-JSPIndexManager_0=Updating JSP Index
-JSPIndexManager_2=JSP Indexer indexing {0} files
-JSP_Search=JSP Search - 
-JSPDocumentLoader_1=Program Error: structured model had no structuredDocument
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 1ab27a7..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.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;
-import org.eclipse.wst.xml.core.internal.provisional.contentmodel.CMNodeWrapper;
-
-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 0f117ff..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.internal.contentmodel.CMNode;
-import org.eclipse.wst.xml.core.internal.provisional.contentmodel.CMNodeWrapper;
-
-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 a75e1ce..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.internal.contentmodel.HTMLCMDocumentFactory;
-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.provisional.contentmodel.CMDocType;
-
-/**
- * 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 dcf88dc..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; //$NON-NLS-1$ //$NON-NLS-2$
-	}
-}
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 abf1519..0000000
--- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/ProjectDescription.java
+++ /dev/null
@@ -1,753 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2001, 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies 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.internal.Logger;
-import org.eclipse.jst.jsp.core.internal.contentmodel.tld.provisional.JSP12TLDNames;
-import org.eclipse.jst.jsp.core.internal.util.DocumentProvider;
-import org.eclipse.wst.sse.core.internal.util.JarUtilities;
-import org.eclipse.wst.xml.uriresolver.internal.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 {
-			IResource resource = delta.getResource();
-			if (resource.getType() == IResource.FILE) {
-				if (resource.getName().endsWith(".tld")) { //$NON-NLS-1$
-					if (delta.getKind() == IResourceDelta.REMOVED) {
-						removeTLD(resource);
-					}
-					else {
-						updateTLD(resource, delta.getKind());
-					}
-				}
-				else if (resource.getName().endsWith(".jar")) { //$NON-NLS-1$
-					if (delta.getKind() == IResourceDelta.REMOVED) {
-						removeJAR(resource);
-					}
-					else {
-						updateJAR(resource, delta.getKind());
-					}
-				}
-				else if (resource.getName().endsWith(".tag") || resource.getName().endsWith(".tagx")) { //$NON-NLS-1$ //$NON-NLS-2$
-					if (delta.getKind() == IResourceDelta.REMOVED) {
-						removeTagDir(resource);
-					}
-					else {
-						updateTagDir(resource, delta.getKind());
-					}
-				}
-				else if (resource.getName().equals(WEB_XML) && resource.getParent().getName().equals(WEB_INF)) {
-					if (delta.getKind() == IResourceDelta.REMOVED) {
-						removeServlets(resource);
-					}
-					else {
-						updateServlets(resource, delta.getKind());
-					}
-				}
-			}
-			return resource.getName().length() != 0 && resource.getName().charAt(0) != '.';
-		}
-	}
-
-	class Indexer implements IResourceProxyVisitor {
-		public boolean visit(IResourceProxy proxy) throws CoreException {
-			if (proxy.getType() == IResource.FILE) {
-				if (proxy.getName().endsWith(".tld")) { //$NON-NLS-1$
-					updateTLD(proxy.requestResource(), ITaglibRecordEvent.ADDED);
-				}
-				else if (proxy.getName().endsWith(".jar")) { //$NON-NLS-1$
-					updateJAR(proxy.requestResource(), ITaglibRecordEvent.ADDED);
-				}
-				else if (proxy.getName().endsWith(".tag") || proxy.getName().endsWith(".tagx")) { //$NON-NLS-1$ //$NON-NLS-2$
-					updateTagDir(proxy.requestResource(), ITaglibRecordEvent.ADDED);
-				}
-				else if (proxy.getName().equals(WEB_XML) && proxy.requestResource().getParent().getName().equals(WEB_INF)) {
-					updateServlets(proxy.requestResource(), ITaglibRecordEvent.ADDED);
-				}
-			}
-			String name = proxy.getName();
-			return name.length() != 0 && name.charAt(0) != '.';
-		}
-	}
-
-	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() + ")"; //$NON-NLS-1$ //$NON-NLS-2$
-					break;
-				case ITaglibRecordEvent.CHANGED :
-					string += " CHANGED (" + TaglibRecordEvent.class.getName() + ")"; //$NON-NLS-1$ //$NON-NLS-2$
-					break;
-				case ITaglibRecordEvent.REMOVED :
-					string += " REMOVED (" + TaglibRecordEvent.class.getName() + ")"; //$NON-NLS-1$ //$NON-NLS-2$
-					break;
-				default :
-					string += " other:" + fType + " (" + TaglibRecordEvent.class.getName() + ")"; //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
-					break;
-			}
-			return string;
-		}
-	}
-
-	static boolean _debugIndexCreation = "true".equalsIgnoreCase(Platform.getDebugOption("org.eclipse.jst.jsp.core/taglib/indexcreation")); //$NON-NLS-1$ //$NON-NLS-2$
-	static boolean _debugIndexTime = "true".equalsIgnoreCase(Platform.getDebugOption("org.eclipse.jst.jsp.core/taglib/indextime")); //$NON-NLS-1$ //$NON-NLS-2$
-
-	private static final String WEB_INF = "WEB-INF"; //$NON-NLS-1$
-
-	private static final IPath WEB_INF_PATH = new Path("WEB-INF"); //$NON-NLS-1$
-	private static final String WEB_XML = "web.xml"; //$NON-NLS-1$
-
-	/*
-	 * 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")) { //$NON-NLS-1$
-				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]); //$NON-NLS-1$ //$NON-NLS-2$
-							libraryRecord.urlRecords.add(record);
-							fClasspathReferences.put(uri, record);
-							if (_debugIndexCreation)
-								System.out.println("created record for " + uri + "@" + record.getURL()); //$NON-NLS-1$ //$NON-NLS-2$
-						}
-						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()); //$NON-NLS-1$
-		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")) { //$NON-NLS-1$
-				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]); //$NON-NLS-1$ //$NON-NLS-2$
-							jarRecord.urlRecords.add(record);
-							getImplicitReferences(jarLocationString).put(uri, record);
-							if (_debugIndexCreation)
-								System.out.println("created record for " + uri + "@" + record.getURL()); //$NON-NLS-1$ //$NON-NLS-2$
-						}
-						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()); //$NON-NLS-1$
-
-		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(); //$NON-NLS-1$
-			// specified location is relative to root of the webapp
-			String location = readTextofChild(taglibs.item(i), "taglib-location").trim(); //$NON-NLS-1$
-			TLDRecord record = new TLDRecord();
-			record.uri = uri;
-			if (location.startsWith("/")) { //$NON-NLS-1$
-				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); //$NON-NLS-1$ //$NON-NLS-2$
-		}
-		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()); //$NON-NLS-1$
-		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")) //$NON-NLS-1$
-				record.shortName = "tags"; //$NON-NLS-1$
-			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")) { //$NON-NLS-1$ //$NON-NLS-2$
-						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"); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
-	}
-
-	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"); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
-	}
-
-	/**
-	 * @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); //$NON-NLS-1$ //$NON-NLS-2$
-			}
-			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()); //$NON-NLS-1$
-		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()); //$NON-NLS-1$
-		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); //$NON-NLS-1$ //$NON-NLS-2$
-				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()); //$NON-NLS-1$
-		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("/")) { //$NON-NLS-1$
-			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 c801f4d..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; //$NON-NLS-1$
-	}
-}
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 b3af0f9..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; //$NON-NLS-1$ //$NON-NLS-2$
-	}
-}
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 8967f0d..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; //$NON-NLS-1$ //$NON-NLS-2$
-	}
-}
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 31b986f..0000000
--- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/TaglibController.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
- *     
- *******************************************************************************/
-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.provisional.text.IStructuredDocument;
-import org.eclipse.wst.sse.core.internal.text.BasicStructuredDocument;
-import org.eclipse.wst.sse.core.internal.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"); //$NON-NLS-1$
-				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) {
-		// if _instance is null, we are already shutting donw
-		if (_instance == null)
-			return null;
-
-		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 a2a0b5b..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.internal.util.StringUtils;
-import org.eclipse.wst.xml.uriresolver.internal.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"); //$NON-NLS-1$ //$NON-NLS-2$
-								}
-								ProjectDescription description = (ProjectDescription) fProjectDescriptions.remove(projects[i]);
-								if (description != null) {
-									if (_debugIndexCreation) {
-										System.out.println("removing index of " + description.fProject.getName()); //$NON-NLS-1$
-									}
-									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"); //$NON-NLS-1$ //$NON-NLS-2$
-										}
-										ProjectDescription description = (ProjectDescription) fProjectDescriptions.remove(projects[i]);
-										if (description != null) {
-											if (_debugIndexCreation) {
-												System.out.println("removing index of " + description.fProject.getName()); //$NON-NLS-1$
-											}
-											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")); //$NON-NLS-1$ //$NON-NLS-2$
-	static boolean _debugEvents = "true".equalsIgnoreCase(Platform.getDebugOption("org.eclipse.jst.jsp.core/taglib/events")); //$NON-NLS-1$ //$NON-NLS-2$
-	static final boolean _debugResolution = "true".equals(Platform.getDebugOption("org.eclipse.jst.jsp.core/taglib/resolve")); //$NON-NLS-1$ //$NON-NLS-2$
-
-	static TaglibIndex _instance;
-
-	static {
-		_instance = new TaglibIndex();
-	}
-
-	static void fireTaglibRecordEvent(ITaglibRecordEvent event) {
-		if(_debugEvents) {
-			System.out.println("TaglibIndex fired event:" + event); //$NON-NLS-1$
-		}
-		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); //$NON-NLS-1$ //$NON-NLS-2$
-			}
-			else {
-				switch (result.getRecordType()) {
-					case (ITaglibRecord.TLD) : {
-						TLDRecord record = (TLDRecord) result;
-						System.out.println("TaglibIndex resolved " + basePath + ":" + reference + " = " + record.getLocation()); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
-					}
-						break;
-					case (ITaglibRecord.JAR) : {
-						JarRecord record = (JarRecord) result;
-						System.out.println("TaglibIndex resolved " + basePath + ":" + reference + " = " + record.getLocation()); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
-					}
-						break;
-					case (ITaglibRecord.TAGDIR) : {
-					}
-						break;
-					case (ITaglibRecord.URL) : {
-						URLRecord record = (URLRecord) result;
-						System.out.println("TaglibIndex resolved " + basePath + ":" + reference + " = " + record.getURL()); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
-					}
-						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, IResourceChangeEvent.POST_CHANGE);
-		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 62aba77..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; //$NON-NLS-1$ //$NON-NLS-2$
-	}
-}
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 c018b77..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.internal.contentmodel.tld.provisional.JSP12TLDNames;
-import org.eclipse.jst.jsp.core.internal.contentmodel.tld.provisional.TLDAttributeDeclaration;
-import org.eclipse.jst.jsp.core.internal.contentmodel.tld.provisional.TLDDocument;
-import org.eclipse.wst.sse.core.internal.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 66fad76..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.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.contentmodel.tld.provisional.JSP11TLDNames;
-import org.eclipse.jst.jsp.core.internal.contentmodel.tld.provisional.JSP12TLDNames;
-import org.eclipse.jst.jsp.core.internal.contentmodel.tld.provisional.JSP20TLDNames;
-import org.eclipse.jst.jsp.core.internal.contentmodel.tld.provisional.TLDDocument;
-import org.eclipse.jst.jsp.core.internal.contentmodel.tld.provisional.TLDFunction;
-import org.eclipse.jst.jsp.core.internal.contentmodel.tld.provisional.TLDInitParam;
-import org.eclipse.jst.jsp.core.internal.contentmodel.tld.provisional.TLDListener;
-import org.eclipse.jst.jsp.core.internal.contentmodel.tld.provisional.TLDValidator;
-import org.eclipse.jst.jsp.core.internal.contentmodel.tld.provisional.TLDVariable;
-import org.eclipse.jst.jsp.core.internal.util.DocumentProvider;
-import org.eclipse.wst.sse.core.internal.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.internal.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()); //$NON-NLS-1$
-		}
-		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() + ";"; //$NON-NLS-1$ //$NON-NLS-2$
-				}
-				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); //$NON-NLS-1$
-			}
-			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.getFunctions().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()); //$NON-NLS-1$
-				}
-
-				if (document.getSmallIcon() != null) {
-					String iconPath = URIHelper.normalize(((TLDDocument) document).getSmallIcon(), record.getLocation().toString(), "/"); //$NON-NLS-1$
-					document.setProperty(JSP12TLDNames.SMALL_ICON, "file:" + iconPath); //$NON-NLS-1$
-				}
-				if (document.getLargeIcon() != null) {
-					String iconPath = URIHelper.normalize(((TLDDocument) document).getLargeIcon(), record.getLocation().toString(), "/"); //$NON-NLS-1$
-					document.setProperty(JSP12TLDNames.LARGE_ICON, "file:" + iconPath); //$NON-NLS-1$
-				}
-			}
-				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/", "/"); //$NON-NLS-1$ //$NON-NLS-2$
-					document.setProperty(JSP12TLDNames.SMALL_ICON, "jar:file:" + iconPath); //$NON-NLS-1$
-				}
-				if (document.getLargeIcon() != null) {
-					String iconPath = URIHelper.normalize(((TLDDocument) document).getLargeIcon(), record.getLocation().toString() + "!META-INF/", "/"); //$NON-NLS-1$ //$NON-NLS-2$
-					document.setProperty(JSP12TLDNames.LARGE_ICON, "jar:file:" + iconPath); //$NON-NLS-1$
-				}
-				if (document != null && document.getElements().getLength() == 0) {
-					System.out.println("failure parsing " + record.getLocation()); //$NON-NLS-1$
-				}
-			}
-				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(), "/"); //$NON-NLS-1$
-						document.setProperty(JSP12TLDNames.SMALL_ICON, iconPath);
-					}
-					if (document.getLargeIcon() != null) {
-						String iconPath = URIHelper.normalize(((TLDDocument) document).getLargeIcon(), record.getURL().toString(), "/"); //$NON-NLS-1$
-						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 740a360..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.internal.Logger;
-import org.eclipse.jst.jsp.core.internal.contentmodel.tld.provisional.TLDDocument;
-import org.eclipse.jst.jsp.core.internal.contentmodel.tld.provisional.TLDValidator;
-import org.eclipse.wst.sse.core.internal.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 c383d88..0000000
--- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/tld/CMElementDeclarationImpl.java
+++ /dev/null
@@ -1,461 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies 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.internal.contentmodel.tld.provisional.JSP11TLDNames;
-import org.eclipse.jst.jsp.core.internal.contentmodel.tld.provisional.JSP12TLDNames;
-import org.eclipse.jst.jsp.core.internal.contentmodel.tld.provisional.TLDDocument;
-import org.eclipse.jst.jsp.core.internal.contentmodel.tld.provisional.TLDElementDeclaration;
-import org.eclipse.wst.sse.core.internal.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 getTagInfo();	// return tag info
-			// bug88336 no need to restore markers 
-			// return StringUtils.restoreMarkers(getTagInfo()); // return tag description
-		}
-		else if (propertyName != null && propertyName.equals("description")) {	//$NON-NLS-1$
-			return getDescription();
-			// bug88336 no need to restore markers 
-			// 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 result;
-			// bug88336 no need to restore markers 
-			// 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 4b652fe..0000000
--- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/tld/TLDCMDocumentManager.java
+++ /dev/null
@@ -1,991 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies 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.HashMap;
-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.filebuffers.ITextFileBuffer;
-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.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.contentmodel.tld.provisional.JSP11TLDNames;
-import org.eclipse.jst.jsp.core.internal.contentmodel.tld.provisional.JSP12TLDNames;
-import org.eclipse.jst.jsp.core.internal.contentmodel.tld.provisional.JSP20TLDNames;
-import org.eclipse.jst.jsp.core.internal.contentmodel.tld.provisional.TLDDocument;
-import org.eclipse.jst.jsp.core.internal.contentmodel.tld.provisional.TLDElementDeclaration;
-import org.eclipse.jst.jsp.core.internal.parser.JSPSourceParser;
-import org.eclipse.jst.jsp.core.internal.provisional.JSP12Namespace;
-import org.eclipse.jst.jsp.core.internal.regions.DOMJSPRegionContexts;
-import org.eclipse.wst.common.uriresolver.internal.provisional.URIResolverPlugin;
-import org.eclipse.wst.sse.core.internal.ltk.parser.BlockMarker;
-import org.eclipse.wst.sse.core.internal.ltk.parser.StructuredDocumentRegionHandler;
-import org.eclipse.wst.sse.core.internal.ltk.parser.StructuredDocumentRegionHandlerExtension;
-import org.eclipse.wst.sse.core.internal.provisional.text.IStructuredDocument;
-import org.eclipse.wst.sse.core.internal.provisional.text.IStructuredDocumentRegion;
-import org.eclipse.wst.sse.core.internal.provisional.text.ITextRegion;
-import org.eclipse.wst.sse.core.internal.provisional.text.ITextRegionList;
-import org.eclipse.wst.sse.core.internal.util.Assert;
-import org.eclipse.wst.sse.core.internal.util.Debug;
-import org.eclipse.wst.sse.core.internal.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.internal.regions.DOMRegionContext;
-import org.eclipse.wst.xml.uriresolver.internal.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, DOMRegionContext.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() == DOMRegionContext.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() == DOMRegionContext.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())) {
-
-					// prevent slow performance when editing scriptlet part of
-					// the JSP
-					// only process includes if they've been modified
-					if (hasAnyIncludeBeenModified(fileLocation.toString())) {
-						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() == DOMRegionContext.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() == DOMRegionContext.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() == DOMRegionContext.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() == DOMRegionContext.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() == DOMRegionContext.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"); //$NON-NLS-1$
-			Assert.isTrue(newDocument.getParser() != null, "null document parser"); //$NON-NLS-1$
-			Assert.isTrue(newDocument.getParser() instanceof JSPSourceParser, "can only listen to document with a JSPSourceParser"); //$NON-NLS-1$
-			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;
-
-	// timestamp cache to prevent excessive reparsing
-	// of included files
-	// String (filepath) > Long (modification stamp)
-	HashMap fInclude2TimestampMap = new HashMap();
-
-	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;
-	}
-
-	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;
-		ITextFileBuffer fileBuffer = TaglibController.getFileBuffer(this);
-		if (fileBuffer != null) {
-			ITaglibRecord reference = TaglibIndex.resolve(fileBuffer.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());
-	}
-
-	/**
-	 * @param fileLocation
-	 *            the "root" file
-	 */
-	boolean hasAnyIncludeBeenModified(String fileLocation) {
-
-		boolean result = false;
-		// check the top level
-		if (hasBeenModified(fileLocation)) {
-			result = true;
-		}
-		else {
-			// check all includees
-			Iterator iter = fInclude2TimestampMap.keySet().iterator();
-			while (iter.hasNext()) {
-				if (hasBeenModified((String) iter.next())) {
-					result = true;
-					break;
-				}
-			}
-		}
-		return result;
-	}
-
-	/**
-	 * @param filename
-	 * @return
-	 */
-	boolean hasBeenModified(String filename) {
-
-		boolean result = false;
-		// quick filename/timestamp cache check here...
-		IPath filePath = new Path(filename);
-		IFile f = ResourcesPlugin.getWorkspace().getRoot().getFileForLocation(filePath);
-		if (f == null && filePath.segmentCount() > 1) {
-			f = ResourcesPlugin.getWorkspace().getRoot().getFile(filePath);
-		}
-		if (f != null && f.exists()) {
-			Long currentStamp = new Long(f.getModificationStamp());
-			Object o = fInclude2TimestampMap.get(filename);
-			if (o != null) {
-				Long previousStamp = (Long) o;
-				// stamps don't match, file changed
-				if (currentStamp.longValue() != previousStamp.longValue()) {
-					result = true;
-					// store for next time
-					fInclude2TimestampMap.put(filename, currentStamp);
-				}
-			}
-			else {
-				// return true, since we've not encountered this file yet.
-				result = true;
-				// store for next time
-				fInclude2TimestampMap.put(filename, currentStamp);
-			}
-		}
-		return result;
-	}
-}
\ 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 65c7de0..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.internal.contentmodel.tld.provisional.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 7edf467..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.internal.contentmodel.tld.provisional.TLDInitParam;
-import org.eclipse.wst.sse.core.internal.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 517b319..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.internal.contentmodel.tld.provisional.TLDListener;
-import org.eclipse.wst.sse.core.internal.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 55badba..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.internal.contentmodel.tld.provisional.TLDValidator;
-import org.eclipse.wst.sse.core.internal.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 f6c0525..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.internal.contentmodel.tld.provisional.JSP12TLDNames;
-import org.eclipse.jst.jsp.core.internal.contentmodel.tld.provisional.TLDVariable;
-import org.eclipse.wst.sse.core.internal.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 fcd90af..0000000
--- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/tld/TaglibTracker.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.core.internal.contentmodel.tld;
-
-
-
-import org.eclipse.jst.jsp.core.internal.contentmodel.CMDocumentWrapperImpl;
-import org.eclipse.wst.sse.core.internal.provisional.text.IStructuredDocumentRegion;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMDocument;
-import org.eclipse.wst.xml.core.internal.provisional.contentmodel.CMDocumentTracker;
-
-/**
- * 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;
-	}
-
-	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/contentmodel/tld/provisional/JSP11TLDNames.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/tld/provisional/JSP11TLDNames.java
deleted file mode 100644
index 6a484dc..0000000
--- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/tld/provisional/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.internal.contentmodel.tld.provisional;
-
-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/internal/contentmodel/tld/provisional/JSP12TLDNames.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/tld/provisional/JSP12TLDNames.java
deleted file mode 100644
index 4e8c767..0000000
--- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/tld/provisional/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.internal.contentmodel.tld.provisional;
-
-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/internal/contentmodel/tld/provisional/JSP20TLDNames.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/tld/provisional/JSP20TLDNames.java
deleted file mode 100644
index ea51e19..0000000
--- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/tld/provisional/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.internal.contentmodel.tld.provisional;
-
-/*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/internal/contentmodel/tld/provisional/TLDAttributeDeclaration.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/tld/provisional/TLDAttributeDeclaration.java
deleted file mode 100644
index 05960a3..0000000
--- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/tld/provisional/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.internal.contentmodel.tld.provisional;
-
-
-
-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/internal/contentmodel/tld/provisional/TLDDocument.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/tld/provisional/TLDDocument.java
deleted file mode 100644
index 7addae4..0000000
--- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/tld/provisional/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.internal.contentmodel.tld.provisional;
-
-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/internal/contentmodel/tld/provisional/TLDElementDeclaration.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/tld/provisional/TLDElementDeclaration.java
deleted file mode 100644
index f62ed23..0000000
--- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/tld/provisional/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.internal.contentmodel.tld.provisional;
-
-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/internal/contentmodel/tld/provisional/TLDFunction.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/tld/provisional/TLDFunction.java
deleted file mode 100644
index 8f2b50a..0000000
--- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/tld/provisional/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.internal.contentmodel.tld.provisional;
-
-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/internal/contentmodel/tld/provisional/TLDInitParam.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/tld/provisional/TLDInitParam.java
deleted file mode 100644
index e4d5c50..0000000
--- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/tld/provisional/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.internal.contentmodel.tld.provisional;
-
-
-/**
- * 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/internal/contentmodel/tld/provisional/TLDListener.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/tld/provisional/TLDListener.java
deleted file mode 100644
index aa9116c..0000000
--- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/tld/provisional/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.internal.contentmodel.tld.provisional;
-
-
-/**
- * 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/internal/contentmodel/tld/provisional/TLDValidator.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/tld/provisional/TLDValidator.java
deleted file mode 100644
index ae6e044..0000000
--- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/tld/provisional/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.internal.contentmodel.tld.provisional;
-
-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/internal/contentmodel/tld/provisional/TLDVariable.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/tld/provisional/TLDVariable.java
deleted file mode 100644
index 1a01b08..0000000
--- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/tld/provisional/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.internal.contentmodel.tld.provisional;
-
-/**
- * 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/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 3706254..0000000
--- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contenttype/ContentDescriberForJSP.java
+++ /dev/null
@@ -1,214 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies 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 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.jst.jsp.core.internal.provisional.contenttype.IContentDescriptionForJSP;
-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 final class ContentDescriberForJSP 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};
-
-	/*
-	 * (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;
-	}
-
-	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 IResourceCharsetDetector getDetector() {
-		return new JSPResourceEncodingDetector();
-	}
-
-	private void handleCalculations(IContentDescription description, IResourceCharsetDetector detector) throws IOException {
-		// handle standard ones first, to be sure detector processes
-		handleStandardCalculations(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);
-			}
-		}
-	}
-
-	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
-	 * @param detector
-	 * @throws IOException
-	 */
-	private void handleStandardCalculations(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);
-	}
-
-	/**
-	 * @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;
-		return result;
-	}
-}
\ 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/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 c0b35c8..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 = 8000;
-	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 133b892..0000000
--- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contenttype/JSPResourceEncodingDetector.java
+++ /dev/null
@@ -1,473 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies 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.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 java.util.regex.Pattern;
-
-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.NonContentBasedEncodingRules;
-import org.eclipse.wst.sse.core.internal.encoding.util.ByteReader;
-import org.eclipse.wst.xml.core.internal.contenttype.EncodingParserConstants;
-import org.eclipse.wst.xml.core.internal.contenttype.XMLHeadTokenizerConstants;
-
-public class JSPResourceEncodingDetector implements IResourceCharsetDetector {
-
-	private String fCharset;
-
-	private String fContentType;
-
-	private String fContentTypeValue;
-
-	private String fLanguage;
-
-	private String fPageEncodingValue;
-
-	private JSPHeadTokenizer fTokenizer;
-
-	private String fXMLDecEncodingName;
-
-	private boolean unicodeCase;
-
-	private EncodingMemento fEncodingMemento;
-
-	private boolean fHeaderParsed;
-
-	private Reader fReader;
-
-
-	/**
-	 * No Arg constructor.
-	 */
-	public JSPResourceEncodingDetector() {
-		super();
-	}
-
-	class NullMemento extends EncodingMemento {
-		/**
-		 * 
-		 */
-		public NullMemento() {
-			super();
-			String defaultCharset = NonContentBasedEncodingRules.useDefaultNameRules(null);
-			setJavaCharsetName(defaultCharset);
-			setAppropriateDefault(defaultCharset);
-			setDetectedCharsetName(null);
-		}
-
-	}
-
-	/**
-	 * @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;
-	}
-
-	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;
-	}
-
-	public String getLanguage() throws IOException {
-		ensureInputSet();
-		if (!fHeaderParsed) {
-			parseInput();
-			fHeaderParsed = true;
-		}
-		return fLanguage;
-	}
-
-	public String getSpecDefaultEncoding() {
-		// by JSP Spec
-		final String enc = "ISO-8859-1"; //$NON-NLS-1$
-		return enc;
-	}
-
-	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;
-	}
-
-	/**
-	 * 
-	 */
-	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);
-		}
-	}
-
-	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;
-	}
-
-	/**
-	 * 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());
-	}
-
-	/**
-	 * 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;
-	}
-
-	/**
-	 * 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;
-	}
-
-	private JSPHeadTokenizer getTokinizer() {
-		if (fTokenizer == null) {
-			fTokenizer = new JSPHeadTokenizer();
-		}
-		return fTokenizer;
-	}
-
-	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);
-		}
-	}
-
-	private boolean isLegalString(String valueTokenType) {
-		boolean result = false;
-		if (valueTokenType != null) {
-			result = valueTokenType.equals(EncodingParserConstants.StringValue) || valueTokenType.equals(EncodingParserConstants.UnDelimitedStringValue) || valueTokenType.equals(EncodingParserConstants.InvalidTerminatedStringValue) || valueTokenType.equals(EncodingParserConstants.InvalidTermintatedUnDelimitedStringValue);
-		}
-		return result;
-	}
-
-	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];
-		}
-	}
-
-	/**
-	 * 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 void parseInput() throws IOException {
-		JSPHeadTokenizer tokenizer = getTokinizer();
-		fReader.reset();
-		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 void resetAll() {
-		fReader = null;
-		fHeaderParsed = false;
-		fEncodingMemento = null;
-		fCharset = null;
-		fContentTypeValue = null;
-		fPageEncodingValue = null;
-		fXMLDecEncodingName = null;
-		unicodeCase = false;
-	}
-
-
-
-	/**
-	 * convience method all subclasses can use (but not override)
-	 * 
-	 * @param detectedCharsetName
-	 * @param reason
-	 */
-	private void createEncodingMemento(String detectedCharsetName, String reason) {
-		createEncodingMemento(detectedCharsetName);
-	}
-
-	/**
-	 * convience method all subclasses can use (but not override)
-	 */
-	private void ensureInputSet() {
-		if (fReader == null) {
-			throw new IllegalStateException("input must be set before use"); //$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/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 d0050e2..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.internal.parser.JSPSourceParser;
-import org.eclipse.jst.jsp.core.internal.provisional.JSP11Namespace;
-import org.eclipse.wst.sse.core.internal.document.StructuredDocumentFactory;
-import org.eclipse.wst.sse.core.internal.ltk.parser.RegionParser;
-import org.eclipse.wst.sse.core.internal.ltk.parser.TagMarker;
-import org.eclipse.wst.sse.core.internal.provisional.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/PageDirectiveAdapter.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/document/PageDirectiveAdapter.java
deleted file mode 100644
index d787f9e..0000000
--- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/document/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.internal.document;
-
-import org.eclipse.wst.sse.core.internal.ltk.modelhandler.EmbeddedTypeHandler;
-import org.eclipse.wst.sse.core.internal.provisional.INodeAdapter;
-import org.eclipse.wst.sse.core.internal.provisional.INodeAdapterFactory;
-import org.eclipse.wst.sse.core.internal.provisional.INodeNotifier;
-import org.eclipse.wst.sse.ui.internal.provisional.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(INodeAdapterFactory 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/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 61a13f1..0000000
--- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/document/PageDirectiveAdapterFactory.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.document;
-
-import org.eclipse.wst.sse.core.internal.provisional.AbstractAdapterFactory;
-import org.eclipse.wst.sse.core.internal.provisional.INodeAdapter;
-import org.eclipse.wst.sse.core.internal.provisional.INodeAdapterFactory;
-import org.eclipse.wst.sse.core.internal.provisional.INodeNotifier;
-import org.eclipse.wst.sse.ui.internal.provisional.contentproperties.ContentSettingsChangeSubject;
-import org.eclipse.wst.sse.ui.internal.util.Assert;
-import org.eclipse.wst.xml.core.internal.provisional.document.IDOMNode;
-import org.w3c.dom.Node;
-
-/**
- * This class adapts document 
- * with the an instance of PageDirectiveAdapter
- */
-public class PageDirectiveAdapterFactory extends AbstractAdapterFactory implements INodeAdapterFactory {
-
-
-	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 IDOMNode) {
-			IDOMNode node = (IDOMNode) 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 INodeAdapterFactory 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 aa4f1ed..0000000
--- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/document/PageDirectiveAdapterImpl.java
+++ /dev/null
@@ -1,612 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies 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.internal.modelhandler.EmbeddedTypeStateData;
-import org.eclipse.jst.jsp.core.internal.text.StructuredTextPartitionerForJSP;
-import org.eclipse.wst.sse.core.internal.ltk.modelhandler.EmbeddedTypeHandler;
-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.provisional.INodeAdapter;
-import org.eclipse.wst.sse.core.internal.provisional.INodeAdapterFactory;
-import org.eclipse.wst.sse.core.internal.provisional.INodeNotifier;
-import org.eclipse.wst.sse.core.internal.provisional.IStructuredModel;
-import org.eclipse.wst.sse.core.internal.provisional.text.IStructuredPartitioning;
-import org.eclipse.wst.sse.core.internal.util.Debug;
-import org.eclipse.wst.sse.core.internal.util.StringUtils;
-import org.eclipse.wst.xml.core.internal.provisional.document.IDOMNode;
-
-/**
- * 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 IDOMNode) {
-			IDOMNode node = (IDOMNode) 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()) {
-				INodeAdapterFactory factory = (INodeAdapterFactory) 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()) {
-				INodeAdapterFactory factory = (INodeAdapterFactory) 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();
-				INodeAdapterFactory factory = null;
-				while (iterator.hasNext()) {
-					factory = (INodeAdapterFactory) 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(INodeAdapterFactory 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(IStructuredPartitioning.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();
-				INodeAdapterFactory factory = null;
-				while (iterator.hasNext()) {
-					factory = (INodeAdapterFactory) 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 6037021..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.internal.provisional.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 8c4f7c1..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.internal.PropagatingAdapterFactory;
-import org.eclipse.wst.sse.core.internal.provisional.INodeAdapter;
-import org.eclipse.wst.sse.core.internal.provisional.INodeAdapterFactory;
-import org.eclipse.wst.sse.core.internal.provisional.INodeNotifier;
-import org.eclipse.wst.xml.core.internal.propagate.PropagatingAdapterFactoryImpl;
-import org.eclipse.wst.xml.core.internal.provisional.document.IDOMElement;
-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 IDOMElement) {
-			IDOMElement xmlElement = (IDOMElement) 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 INodeAdapterFactory 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 2fc219a..0000000
--- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/document/PageDirectiveWatcherImpl.java
+++ /dev/null
@@ -1,108 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies 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.internal.provisional.INodeNotifier;
-import org.eclipse.wst.sse.core.internal.provisional.IndexedRegion;
-import org.eclipse.wst.xml.core.internal.document.AttrImpl;
-import org.eclipse.wst.xml.core.internal.provisional.document.IDOMDocument;
-import org.eclipse.wst.xml.core.internal.provisional.document.IDOMElement;
-import org.eclipse.wst.xml.core.internal.provisional.document.IDOMNode;
-
-
-
-/** 
- * 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;
-	IDOMElement targetElement;
-
-	/**
-	 * Constructor for PageDirectiveWatcherImpl.
-	 */
-	public PageDirectiveWatcherImpl(IDOMElement 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) ((IDOMDocument) 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) ((IDOMDocument) targetElement.getOwnerDocument()).getAdapterFor(PageDirectiveAdapter.class);
-			pageDirectiveAdapter.changedLanguage(((IndexedRegion) targetElement).getStartOffset(), languageValue);
-		}
-
-
-	}
-
-	public boolean isAdapterForType(Object type) {
-		return (type == adapterType);
-	}
-
-	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 IDOMNode) {
-
-			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) ((IDOMDocument) 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) ((IDOMDocument) 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;
-			}
-		}
-
-	}
-
-	public String getContentType() {
-		String contentTypeValue = targetElement.getAttribute("contentType"); //$NON-NLS-1$
-		return contentTypeValue;
-	}
-
-	public String getLanguage() {
-		String languageValue = targetElement.getAttribute("language"); //$NON-NLS-1$
-		return languageValue;
-	}
-
-	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 5bcc664..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.internal.regions.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 ef6ea04..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.internal.regions.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 6584c04..0000000
--- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/domdocument/DOMDocumentForJSP.java
+++ /dev/null
@@ -1,167 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies 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.internal.document.DocumentStyleImpl;
-import org.eclipse.wst.sse.core.internal.model.FactoryRegistry;
-import org.eclipse.wst.sse.core.internal.provisional.INodeAdapter;
-import org.eclipse.wst.sse.core.internal.provisional.INodeAdapterFactory;
-import org.eclipse.wst.sse.ui.internal.IReleasable;
-import org.eclipse.wst.xml.core.internal.document.DocumentImpl;
-import org.eclipse.wst.xml.core.internal.provisional.document.IDOMModel;
-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();
-	}
-
-	/**
-	 * Default behavior for getting an adapter.
-	 * Overridden in case embedded type provides a different adapter
-	 * we don't want to use a cached one.
-	 */
-	public INodeAdapter getAdapterFor(Object type) {
-
-		// https://bugs.eclipse.org/bugs/show_bug.cgi?id=85484
-
-		// just always create a new one for JSP
-		// need to investigate if this is a performance hit...
-		// seems to make HTML Validator (even) slower
-		
-		INodeAdapter oldAdapter = getExistingAdapter(type);
-		if(oldAdapter != null) {
-			if(oldAdapter instanceof IReleasable) {
-				((IReleasable)oldAdapter).release();
-				removeAdapter(oldAdapter);
-			}
-		}
-		
-		INodeAdapter result = null;
-		
-		// if we didn't find one in our list already,
-		// let's create it
-		FactoryRegistry reg = getFactoryRegistry();
-		if (reg != null) {
-			INodeAdapterFactory factory = reg.getFactoryFor(type);
-			if (factory != null) {
-				INodeAdapter newAdapter = factory.adapt(this);
-				result = newAdapter;
-			}
-		}
-		// We won't prevent null from being returned, but it would be
-		// unusual.
-		// It might be because Factory is not working correctly, or
-		// not installed, so we'll allow warning message.
-		if ((result == null) && (org.eclipse.wst.sse.core.internal.util.Debug.displayWarnings)) {
-			System.out.println("Warning: no adapter was found or created for " + type); //$NON-NLS-1$
-		}
-		return result;
-	}
-	
-	/**
-	 * @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(IDOMModel 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 413627f..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.internal.document.DOMStyleModelImpl;
-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 DOMStyleModelImpl {
-
-	/**
-	 * 
-	 */
-	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 9f6bcda..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.internal.regions.DOMJSPRegionContexts;
-import org.eclipse.wst.html.core.internal.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 26b71c4..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.internal.regions.DOMJSPRegionContexts;
-import org.eclipse.wst.xml.core.internal.document.DOMModelImpl;
-import org.eclipse.wst.xml.core.internal.document.XMLModelUpdater;
-
-
-public class NestDOMModelUpdater extends XMLModelUpdater {
-
-	/**
-	 * @param model
-	 */
-	public NestDOMModelUpdater(DOMModelImpl 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 6b7eb82..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.internal.regions.DOMJSPRegionContexts;
-import org.eclipse.wst.sse.core.internal.provisional.text.IStructuredDocumentRegion;
-import org.eclipse.wst.sse.core.internal.provisional.text.ITextRegion;
-import org.eclipse.wst.xml.core.internal.document.DOMModelImpl;
-import org.eclipse.wst.xml.core.internal.document.JSPTag;
-import org.eclipse.wst.xml.core.internal.document.XMLModelParser;
-
-public class NestedDOMModelParser extends XMLModelParser {
-
-	/**
-	 * @param model
-	 */
-	public NestedDOMModelParser(DOMModelImpl 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 da91a23..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.internal.regions.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/encoding/IJSPHeadContentDetector.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/encoding/IJSPHeadContentDetector.java
deleted file mode 100644
index 02b8453..0000000
--- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/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.internal.encoding;
-
-import java.io.IOException;
-
-import org.eclipse.wst.sse.core.internal.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/internal/encoding/JSPDocumentHeadContentDetector.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/encoding/JSPDocumentHeadContentDetector.java
deleted file mode 100644
index 5679036..0000000
--- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/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.internal.encoding;
-
-import org.eclipse.jface.text.IDocument;
-import org.eclipse.jst.jsp.core.internal.contenttype.JSPResourceEncodingDetector;
-import org.eclipse.wst.sse.core.internal.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/internal/encoding/JSPDocumentLoader.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/encoding/JSPDocumentLoader.java
deleted file mode 100644
index 3bbbe78..0000000
--- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/encoding/JSPDocumentLoader.java
+++ /dev/null
@@ -1,558 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies 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.encoding;
-
-import java.io.IOException;
-import java.io.InputStream;
-import java.io.Reader;
-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.internal.Assert;
-import org.eclipse.jst.jsp.core.internal.JSPCoreMessages;
-import org.eclipse.jst.jsp.core.internal.document.PageDirectiveAdapter;
-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.provisional.JSP11Namespace;
-import org.eclipse.jst.jsp.core.internal.provisional.contenttype.ContentTypeIdForJSP;
-import org.eclipse.jst.jsp.core.internal.text.StructuredTextPartitionerForJSP;
-import org.eclipse.wst.sse.core.internal.PropagatingAdapter;
-import org.eclipse.wst.sse.core.internal.document.AbstractDocumentLoader;
-import org.eclipse.wst.sse.core.internal.document.IDocumentCharsetDetector;
-import org.eclipse.wst.sse.core.internal.document.IDocumentLoader;
-import org.eclipse.wst.sse.core.internal.document.StructuredDocumentFactory;
-import org.eclipse.wst.sse.core.internal.encoding.CodedIO;
-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.encoding.util.BufferedLimitedReader;
-import org.eclipse.wst.sse.core.internal.ltk.modelhandler.EmbeddedTypeHandler;
-import org.eclipse.wst.sse.core.internal.ltk.parser.JSPCapableParser;
-import org.eclipse.wst.sse.core.internal.ltk.parser.RegionParser;
-import org.eclipse.wst.sse.core.internal.ltk.parser.TagMarker;
-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.provisional.INodeNotifier;
-import org.eclipse.wst.sse.core.internal.provisional.IStructuredModel;
-import org.eclipse.wst.sse.core.internal.provisional.document.IEncodedDocument;
-import org.eclipse.wst.sse.core.internal.provisional.text.IStructuredDocument;
-import org.eclipse.wst.sse.core.internal.text.BasicStructuredDocument;
-import org.eclipse.wst.xml.core.internal.provisional.document.IDOMDocument;
-import org.eclipse.wst.xml.core.internal.provisional.document.IDOMModel;
-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;
-	}
-
-
-	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 = ((IDOMModel) 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();
-			Reader fullPreparedReader = getFullPreparedReader();
-			BufferedLimitedReader limitedReader = new BufferedLimitedReader(fullPreparedReader, CodedIO.MAX_BUF_SIZE);
-			jspProvider.set(limitedReader);
-			if (jspProvider instanceof IJSPHeadContentDetector) {
-				mimeType = ((IJSPHeadContentDetector) jspProvider).getContentType();
-				fullPreparedReader.reset();
-			}
-
-			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.
-		IDOMModel domModel = (IDOMModel) model;
-		IStructuredDocument structuredDocument = model.getStructuredDocument();
-		IDOMDocument 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.
-		IDOMModel domModel = (IDOMModel) model;
-		IDOMDocument 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) {
-		IDOMModel domModel = (IDOMModel) structuredModel;
-		//
-		// document must have already been set for this to
-		// work.
-		Document document = domModel.getDocument();
-		Assert.isNotNull(document, JSPCoreMessages.JSPDocumentLoader_1);
-		// 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.
-		IDOMModel domModel = (IDOMModel) model;
-		IStructuredDocument structuredDocument = model.getStructuredDocument();
-		IDOMDocument 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 IDOMModel) {
-			IDOMDocument document = ((IDOMModel) 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/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 8df5524..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"; //$NON-NLS-1$
-                }
-            };
-        }
-        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 4370d9a..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.internal.provisional.text.IStructuredDocumentRegion;
-import org.eclipse.wst.sse.core.internal.provisional.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 43dfba4..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 = ""; //$NON-NLS-1$
-	
-		// 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 5ef7219..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.internal.regions.DOMJSPRegionContexts;
-import org.eclipse.wst.sse.core.internal.provisional.text.IStructuredDocumentRegion;
-import org.eclipse.wst.sse.core.internal.provisional.text.ITextRegion;
-import org.eclipse.wst.xml.core.internal.regions.DOMRegionContext;
-
-
-/**
- * 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 == DOMRegionContext.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 e7f849d..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 = ""; //$NON-NLS-1$
-	private String fJspText = ""; //$NON-NLS-1$
-	
-	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"); //$NON-NLS-1$
-					}
-					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"); //$NON-NLS-1$
-					}
-					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("+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++"); //$NON-NLS-1$
-			System.out.println("(+) JSPTranslation ["+ this + "] finished creating CompilationUnit: " + cu); //$NON-NLS-1$ //$NON-NLS-2$
-			System.out.println("+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++"); //$NON-NLS-1$
-		}
-		
-		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("------------------------------------------------------------------"); //$NON-NLS-1$
-						System.out.println("(-) JSPTranslation [" + this +"] discarding CompilationUnit: " + fCompilationUnit); //$NON-NLS-1$ //$NON-NLS-2$
-						System.out.println("------------------------------------------------------------------"); //$NON-NLS-1$
-					}
-					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 5ee8bb2..0000000
--- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/JSPTranslationAdapter.java
+++ /dev/null
@@ -1,236 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies 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.internal.provisional.INodeAdapter;
-import org.eclipse.wst.sse.core.internal.provisional.INodeNotifier;
-import org.eclipse.wst.xml.core.internal.provisional.document.IDOMModel;
-import org.eclipse.wst.xml.core.internal.provisional.document.IDOMNode;
-
-/**
- * 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 IDOMModel fXMLModel;
-	private JSPTranslator fTranslator = null;
-	private NullProgressMonitor fTranslationMonitor = null;
-
-	public JSPTranslationAdapter(IDOMModel xmlModel) {
-		setXMLModel(xmlModel);
-		initializeJavaPlugins();
-	}
-
-	/**
-	 * Initialize the required Java Plugins
-	 */
-	protected void initializeJavaPlugins() {
-		JavaCore.getPlugin();
-	}
-
-	public boolean isAdapterForType(Object type) {
-		return type.equals(IJSPTranslation.class);
-	}
-
-	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;
-	}
-
-	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); //$NON-NLS-1$
-			
-			fJSPTranslation.release();
-		}
-	}
-
-	/**
-	 * Returns the JSPTranslation for this adapter.
-	 * 
-	 * @return a JSPTranslationExtension
-	 */
-	public synchronized JSPTranslationExtension getJSPTranslation() {
-		
-		if (fJSPTranslation == null || fDocumentIsDirty) {
-			JSPTranslator translator = null;
-			if (getXMLModel() != null && getXMLModel().getIndexedRegion(0) != null) {
-				translator = getTranslator((IDOMNode) 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); //$NON-NLS-1$
-				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(IDOMNode 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(IDOMModel xmlModel) {
-		fXMLModel = xmlModel;
-		setDocument(fXMLModel.getStructuredDocument());
-	}
-
-	/**
-	 * @return the XMLModel for this adapter.
-	 */
-	public IDOMModel 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 ab3a132..0000000
--- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/JSPTranslationAdapterFactory.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.java;
-
-import org.eclipse.core.runtime.Platform;
-import org.eclipse.wst.sse.core.internal.provisional.AbstractAdapterFactory;
-import org.eclipse.wst.sse.core.internal.provisional.INodeAdapter;
-import org.eclipse.wst.sse.core.internal.provisional.INodeAdapterFactory;
-import org.eclipse.wst.sse.core.internal.provisional.INodeNotifier;
-import org.eclipse.wst.xml.core.internal.provisional.document.IDOMNode;
-
-/**
- * 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();
-	}
-
-	public INodeAdapterFactory copy() {
-		return new JSPTranslationAdapterFactory();
-	}
-
-	protected INodeAdapter createAdapter(INodeNotifier target) {
-		if (target instanceof IDOMNode && fAdapter == null) {
-			fAdapter = new JSPTranslationAdapter(((IDOMNode) target).getModel());
-			if(DEBUG) {
-				System.out.println("(+) JSPTranslationAdapterFactory [" + this + "] created adapter: " + fAdapter); //$NON-NLS-1$ //$NON-NLS-2$
-			}
-		}
-		return fAdapter;
-	}
-
-
-	public boolean isFactoryForType(Object type) {
-		return type.equals(IJSPTranslation.class);
-	}
-
-	public void release() {
-		if (fAdapter != null) {
-			if(DEBUG) {
-				System.out.println("(-) JSPTranslationAdapterFactory [" + this + "] releasing adapter: " + fAdapter); //$NON-NLS-1$ //$NON-NLS-2$
-			}
-			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 007befe..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("================================================"); //$NON-NLS-1$
-			System.out.println("deltas:"); //$NON-NLS-1$
-			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) ); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
-			System.out.println("==============================================="); //$NON-NLS-1$
-		}
-		
-		// 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 4bdb485..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.internal.provisional.IModelManager;
-import org.eclipse.wst.sse.core.internal.provisional.StructuredModelManager;
-import org.eclipse.wst.xml.core.internal.provisional.document.IDOMDocument;
-import org.eclipse.wst.xml.core.internal.provisional.document.IDOMModel;
-
-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) {
-			IDOMModel xmlModel = (IDOMModel) getModelManager().getExistingModelForRead(fDocument);
-			try {
-				IDOMDocument 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 eea50c0..0000000
--- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/JSPTranslator.java
+++ /dev/null
@@ -1,1994 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies 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.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.internal.contentmodel.tld.provisional.JSP12TLDNames;
-import org.eclipse.jst.jsp.core.internal.contentmodel.tld.provisional.TLDElementDeclaration;
-import org.eclipse.jst.jsp.core.internal.contentmodel.tld.provisional.TLDVariable;
-import org.eclipse.jst.jsp.core.internal.regions.DOMJSPRegionContexts;
-import org.eclipse.wst.sse.core.internal.ltk.parser.BlockMarker;
-import org.eclipse.wst.sse.core.internal.provisional.text.IStructuredDocument;
-import org.eclipse.wst.sse.core.internal.provisional.text.IStructuredDocumentRegion;
-import org.eclipse.wst.sse.core.internal.provisional.text.ITextRegion;
-import org.eclipse.wst.sse.core.internal.provisional.text.ITextRegionCollection;
-import org.eclipse.wst.sse.core.internal.provisional.text.ITextRegionContainer;
-import org.eclipse.wst.sse.core.internal.provisional.text.ITextRegionList;
-import org.eclipse.wst.sse.core.internal.util.StringUtils;
-import org.eclipse.wst.sse.core.internal.util.URIResolver;
-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.internal.provisional.contentmodel.CMDocumentTracker;
-import org.eclipse.wst.xml.core.internal.provisional.contentmodel.CMNodeWrapper;
-import org.eclipse.wst.xml.core.internal.provisional.document.IDOMModel;
-import org.eclipse.wst.xml.core.internal.provisional.document.IDOMNode;
-import org.eclipse.wst.xml.core.internal.regions.DOMRegionContext;
-
-/**
- * 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; //$NON-NLS-1$
-	private String fTryCatchEnd = " } catch (java.lang.Exception e) {} " + ENDL; //$NON-NLS-1$
-
-	/** 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 IDOMModel 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(IDOMNode 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(IDOMNode 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(IDOMNode 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("--------------------------------------------------------------"); //$NON-NLS-1$
-				Position java = (Position) it.next();
-				System.out.println("Java range:[" + java.offset + ":" + java.length + "]"); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
-				System.out.println("[" + fResult.toString().substring(java.offset, java.offset + java.length) + "]"); //$NON-NLS-1$ //$NON-NLS-2$
-				System.out.println("--------------------------------------------------------------"); //$NON-NLS-1$
-				System.out.println("|maps to...|"); //$NON-NLS-1$
-				System.out.println("=============================================================="); //$NON-NLS-1$
-				Position jsp = (Position) fJava2JspRanges.get(java);
-				System.out.println("JSP range:[" + jsp.offset + ":" + jsp.length + "]"); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
-				System.out.println("[" + fJspTextBuffer.toString().substring(jsp.offset, jsp.offset + jsp.length) + "]"); //$NON-NLS-1$ //$NON-NLS-2$
-				System.out.println("=============================================================="); //$NON-NLS-1$
-				System.out.println(""); //$NON-NLS-1$
-				System.out.println(""); //$NON-NLS-1$
-			}
-		}
-
-		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() == DOMRegionContext.XML_COMMENT_TEXT || getCurrentNode().getType() == DOMRegionContext.XML_CDATA_TEXT || getCurrentNode().getType() == DOMRegionContext.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() == DOMRegionContext.XML_CONTENT)
-					break;
-				else if (r.getType() == DOMJSPRegionContexts.JSP_DIRECTIVE_NAME)
-					break;
-				else if (r.getType() == DOMRegionContext.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 == DOMRegionContext.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 == DOMRegionContext.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 != DOMRegionContext.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() == DOMRegionContext.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(DOMRegionContext.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() == DOMRegionContext.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(DOMRegionContext.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(DOMRegionContext.XML_TAG_ATTRIBUTE_NAME)) {
-			if (remainingRegions.hasNext() && (r = (ITextRegion) remainingRegions.next()) != null && r.getType() == DOMRegionContext.XML_TAG_ATTRIBUTE_EQUALS) {
-				if (remainingRegions.hasNext() && (r = (ITextRegion) remainingRegions.next()) != null && r.getType() == DOMRegionContext.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(DOMRegionContext.XML_TAG_ATTRIBUTE_NAME)) {
-
-				attrName = getCurrentNode().getText(r).trim();
-				if (attrName.length() > 0) {
-					if (regions.hasNext() && (r = (ITextRegion) regions.next()) != null && r.getType() == DOMRegionContext.XML_TAG_ATTRIBUTE_EQUALS) {
-						if (regions.hasNext() && (r = (ITextRegion) regions.next()) != null && r.getType() == DOMRegionContext.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) {
-		
-		int origNewTextLength = newText.length();
-		
-		// 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, origNewTextLength);
-					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() == DOMRegionContext.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; //$NON-NLS-1$ //$NON-NLS-2$
-		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() == DOMRegionContext.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() == DOMRegionContext.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() == DOMRegionContext.XML_TAG_ATTRIBUTE_NAME) {
-				attrName = jspReferenceRegion.getText(r);
-				if (regions.size() >= j + 2 && regions.get(j + 2).getType() == DOMRegionContext.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() == DOMRegionContext.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() == DOMRegionContext.BLOCK_TEXT // need
-					// this
-					// for
-					// embedded
-					// JSP
-					// regions
-					|| stRegion.getType() == DOMRegionContext.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() != DOMRegionContext.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() == DOMRegionContext.XML_CONTENT || r.getType() == DOMRegionContext.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() == DOMRegionContext.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() == DOMRegionContext.XML_CDATA_TEXT) {
-						sb.append(getCurrentNode().getFullText(temp));
-					}
-					else if (temp.getType() == DOMRegionContext.XML_CDATA_OPEN || temp.getType() == DOMRegionContext.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() != DOMRegionContext.XML_TAG_CLOSE || r.getType() != DOMRegionContext.XML_EMPTY_TAG_CLOSE)) {
-
-			attrName = attrValue = null;
-			if (r.getType().equals(DOMRegionContext.XML_TAG_ATTRIBUTE_NAME)) {
-				attrName = container.getText(r).trim();
-				if (regions.hasNext() && (r = (ITextRegion) regions.next()) != null && r.getType() == DOMRegionContext.XML_TAG_ATTRIBUTE_EQUALS) {
-					if (regions.hasNext() && (r = (ITextRegion) regions.next()) != null && r.getType() == DOMRegionContext.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 3efbbd5..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.internal.regions.DOMJSPRegionContexts;
-import org.eclipse.wst.sse.core.internal.ltk.parser.BlockMarker;
-import org.eclipse.wst.sse.core.internal.ltk.parser.StructuredDocumentRegionHandler;
-import org.eclipse.wst.sse.core.internal.provisional.text.IStructuredDocumentRegion;
-import org.eclipse.wst.sse.core.internal.provisional.text.ITextRegion;
-import org.eclipse.wst.sse.core.internal.util.Debug;
-import org.eclipse.wst.sse.core.internal.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.internal.regions.DOMRegionContext;
-
-
-/**
- * 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() == DOMRegionContext.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("")) //$NON-NLS-1$
-				    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() == DOMRegionContext.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() == DOMRegionContext.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() == DOMRegionContext.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() == DOMRegionContext.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 7b9ac0d..0000000
--- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/search/IndexWorkspaceJob.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.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.internal.JSPCoreMessages;
-import org.eclipse.jst.jsp.core.internal.provisional.contenttype.ContentTypeIdForJSP;
-
-/**
- * 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()); //$NON-NLS-1$
-						// 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(JSPCoreMessages.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) 
-	 * for similar method
-	 */
-	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 9322061..0000000
--- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/search/JSPIndexManager.java
+++ /dev/null
@@ -1,536 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies 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.ArrayList;
-import java.util.HashMap;
-import java.util.List;
-
-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.internal.JSPCoreMessages;
-import org.eclipse.jst.jsp.core.internal.JSPCorePlugin;
-import org.eclipse.jst.jsp.core.internal.Logger;
-import org.eclipse.jst.jsp.core.internal.provisional.contenttype.ContentTypeIdForJSP;
-import org.eclipse.osgi.util.NLS;
-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"; //$NON-NLS-1$
-	
-	/**
-	 * 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 {
-				if(!isHiddenResource(delta.getFullPath())) {
-					
-					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.exists() && 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;
-		}
-		// https://bugs.eclipse.org/bugs/show_bug.cgi?id=93463
-		private boolean isHiddenResource(IPath p) {
-			String[] segments = p.segments();
-			for (int i = 0; i < segments.length; i++) {
-				if(segments[i].startsWith("."))	//$NON-NLS-1$
-					return true;
-			}
-			return false;
-		}
-		
-		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 { 
-		List fileList =  null;
-		private final int maximumToRemember = 50;
-		ProcessFilesJob(String taskName) {
-			super(taskName);
-			fileList = new ArrayList();
-		}
-		
-		synchronized void process(IFile[] files) {
-			for (int i = 0; i < files.length; i++) {
-				fileList.add(files[i]);
-			}
-			if(DEBUG) {
-				System.out.println("JSPIndexManager queuing " + files.length + " files"); //$NON-NLS-2$ //$NON-NLS-1$
-			}
-			schedule(20);
-		}
-		
-		synchronized IFile[] getFiles() {
-			IFile[] files = (IFile[]) fileList.toArray(new IFile[fileList.size()]);
-			if (fileList.size() > maximumToRemember) {
-				fileList = new ArrayList();
-			}
-			else {
-				fileList.clear();
-			}
-			return files;
-		}
-		
-		protected IStatus run(IProgressMonitor monitor) {
-			if(isCanceled(monitor) || frameworkIsShuttingDown()) {
-				setCanceledState();
-				return Status.CANCEL_STATUS;
-			}
-			
-			long start = System.currentTimeMillis();
-			
-			try {
-				IFile[] filesToBeProcessed = getFiles();
-				if(DEBUG) {
-					System.out.println("JSPIndexManager indexing " + filesToBeProcessed.length + " files"); //$NON-NLS-2$ //$NON-NLS-1$
-				}
-				// API indicates that monitor is never null
-				monitor.beginTask("", filesToBeProcessed.length); //$NON-NLS-1$
-				JSPSearchSupport ss = JSPSearchSupport.getInstance();
-				String processingNFiles = ""; //$NON-NLS-1$
-
-				
-				for(int i = 0; i < filesToBeProcessed.length; i++) {
-
-					if(isCanceled(monitor) || frameworkIsShuttingDown()) {
-						setCanceledState();
-						return Status.CANCEL_STATUS;
-					}
-					try {
-						ss.addJspFile(filesToBeProcessed [i]);
-						// JSP Indexer processing n files
-						processingNFiles = NLS.bind(JSPCoreMessages.JSPIndexManager_2, new String[]{Integer.toString((filesToBeProcessed .length -i))});
-						monitor.subTask(processingNFiles + " - " + filesToBeProcessed [i].getName()); //$NON-NLS-1$
-						monitor.worked(1);
-						
-						if(DEBUG) {
-							System.out.println("JSPIndexManager Job added file: " + filesToBeProcessed [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 = filesToBeProcessed[i] != null ? filesToBeProcessed[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;
-	
-	// Job for processing resource delta
-	ProcessFilesJob processFilesJob = null;
-	
-	private JSPIndexManager(){
-		processFilesJob = new ProcessFilesJob(JSPCoreMessages.JSPIndexManager_0);
-		// only show in verbose mode
-		processFilesJob.setSystem(true);
-		processFilesJob.setPriority(Job.LONG);
-		processFilesJob.addJobChangeListener(new JobChangeAdapter() {
-			public void done(IJobChangeEvent event) {
-				super.done(event);
-				setStableState();
-			}
-		});
-	}
-	
-	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)); //$NON-NLS-1$
-		}
-		Plugin jspModelPlugin = JSPCorePlugin.getDefault();
-		jspModelPlugin.getPluginPreferences().setValue(PKEY_INDEX_STATE, state);
-		jspModelPlugin.savePluginPreferences();
-		
-	}
-	private String state2String(int state) {
-		String s = "UNKNOWN";	//$NON-NLS-1$
-		switch(state) {
-			case(S_STABLE):
-				s = "S_STABLE";	//$NON-NLS-1$
-				break;
-			case(S_UPDATING):
-				s = "S_UPDATING";	//$NON-NLS-1$
-				break;
-			case(S_CANCELED):
-				s = "S_CANCELED";	//$NON-NLS-1$
-				break;
-			case(S_REBUILDING):
-				s = "S_REBUILDING";	//$NON-NLS-1$
-				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"); //$NON-NLS-1$
-
-		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) {
-				// don't use this rule
-		// https://w3.opensource.ibm.com/bugzilla/show_bug.cgi?id=4931
-		//processFiles.setRule(new IndexFileRule());
-		processFilesJob.process(files);
-	}
-	
-	
-	/**
-	 * 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!"); //$NON-NLS-1$
-		}
-		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 3919f96..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.internal.provisional.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 1db9f99..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.internal.exceptions.UnsupportedCharsetExceptionWithDetail;
-import org.eclipse.wst.sse.core.internal.provisional.IModelManager;
-import org.eclipse.wst.sse.core.internal.provisional.IStructuredModel;
-import org.eclipse.wst.sse.core.internal.provisional.StructuredModelManager;
-import org.eclipse.wst.xml.core.internal.provisional.document.IDOMDocument;
-import org.eclipse.wst.xml.core.internal.provisional.document.IDOMModel;
-
-
-/**
- * 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;
-
-		IDOMModel xmlModel = null;
-		try {
-			// get existing model for read, then get document from it
-			IModelManager modelManager = getModelManager();
-			if (modelManager != null) {
-				xmlModel = (IDOMModel) modelManager.getModelForRead(jspFile);
-			}
-			// handle unsupported
-			if (xmlModel != null) {
-				setupAdapterFactory(xmlModel);
-				IDOMDocument 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 45e02e9..0000000
--- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/search/JSPSearchParticipant.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.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 = calculateValue();
-
-	private static boolean calculateValue() {
-		String value = Platform.getDebugOption("org.eclipse.jst.jsp.core/debug/jspsearch"); //$NON-NLS-1$
-		boolean debug = value != null && value.equalsIgnoreCase("true"); //$NON-NLS-1$
-		return debug;
-	}
-
-	/**
-	 * 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 fa14c04..0000000
--- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/search/JSPSearchSupport.java
+++ /dev/null
@@ -1,567 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies 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.core.JavaModelManager;
-import org.eclipse.jst.jsp.core.internal.JSPCoreMessages;
-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;
-import org.eclipse.jst.jsp.core.internal.provisional.contenttype.ContentTypeIdForJSP;
-
-/**
- * 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("org.eclipse.jst.jsp.core/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(JSPCoreMessages.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(JSPCoreMessages.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")) { //$NON-NLS-1$
-            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) {
-
-        String indexLocation = null;
-        // we don't want to inadvertently use a JDT Index
-        // we want to be sure to use the Index from the JSP location
-        //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.
-            // https://bugs.eclipse.org/bugs/show_bug.cgi?id=77564
-            JavaModelManager.getJavaModelManager().getIndexManager().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/modelhandler/EmbeddedTypeStateData.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/modelhandler/EmbeddedTypeStateData.java
deleted file mode 100644
index 87d76a4..0000000
--- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/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.internal.modelhandler;
-
-
-
-import org.eclipse.wst.sse.core.internal.ltk.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/internal/modelhandler/JSPModelLoader.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/modelhandler/JSPModelLoader.java
deleted file mode 100644
index 5772a2f..0000000
--- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/modelhandler/JSPModelLoader.java
+++ /dev/null
@@ -1,564 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies 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.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.internal.document.PageDirectiveAdapter;
-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.encoding.IJSPHeadContentDetector;
-import org.eclipse.jst.jsp.core.internal.encoding.JSPDocumentHeadContentDetector;
-import org.eclipse.jst.jsp.core.internal.encoding.JSPDocumentLoader;
-import org.eclipse.jst.jsp.core.internal.modelquery.ModelQueryAdapterFactoryForJSP;
-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.html.core.internal.provisional.contenttype.ContentTypeIdForHTML;
-import org.eclipse.wst.html.core.internal.text.StructuredTextPartitionerForHTML;
-import org.eclipse.wst.sse.core.internal.PropagatingAdapter;
-import org.eclipse.wst.sse.core.internal.document.IDocumentLoader;
-import org.eclipse.wst.sse.core.internal.document.StructuredDocumentFactory;
-import org.eclipse.wst.sse.core.internal.ltk.modelhandler.EmbeddedTypeHandler;
-import org.eclipse.wst.sse.core.internal.ltk.parser.JSPCapableParser;
-import org.eclipse.wst.sse.core.internal.ltk.parser.RegionParser;
-import org.eclipse.wst.sse.core.internal.model.AbstractModelLoader;
-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.provisional.IModelLoader;
-import org.eclipse.wst.sse.core.internal.provisional.INodeAdapterFactory;
-import org.eclipse.wst.sse.core.internal.provisional.INodeNotifier;
-import org.eclipse.wst.sse.core.internal.provisional.IStructuredModel;
-import org.eclipse.wst.sse.core.internal.provisional.text.IStructuredDocument;
-import org.eclipse.wst.sse.core.internal.text.BasicStructuredDocument;
-import org.eclipse.wst.sse.core.internal.util.Assert;
-import org.eclipse.wst.sse.core.internal.util.Debug;
-import org.eclipse.wst.xml.core.internal.DebugAdapterFactory;
-import org.eclipse.wst.xml.core.internal.document.DOMModelImpl;
-import org.eclipse.wst.xml.core.internal.propagate.PropagatingAdapterFactoryImpl;
-import org.eclipse.wst.xml.core.internal.provisional.contenttype.ContentTypeIdForXML;
-import org.eclipse.wst.xml.core.internal.provisional.document.IDOMDocument;
-import org.eclipse.wst.xml.core.internal.provisional.document.IDOMModel;
-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);
-		IDOMModel domModel = (IDOMModel) 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();
-		INodeAdapterFactory factory = null;
-		//
-		factory = new ModelQueryAdapterFactoryForJSP();
-		result.add(factory);
-		factory = new PropagatingAdapterFactoryImpl();
-		result.add(factory);
-		factory = new PageDirectiveAdapterFactory();
-		result.add(factory);
-
-
-
-		return result;
-	}
-
-
-	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.
-		IDOMModel domModel = (IDOMModel) model;
-		IDOMDocument 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.
-		IDOMModel domModel = (IDOMModel) model;
-		IStructuredDocument structuredDocument = model.getStructuredDocument();
-		IDOMDocument 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
-			((DOMModelImpl)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.
-		IDOMModel domModel = (IDOMModel) model;
-		IStructuredDocument structuredDocument = model.getStructuredDocument();
-		IDOMDocument 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 = ((IDOMModel) 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 IDOMModel) {
-			IDOMDocument document = ((IDOMModel) 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/internal/modelhandler/ModelHandlerForJSP.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/modelhandler/ModelHandlerForJSP.java
deleted file mode 100644
index 0ad55b1..0000000
--- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/modelhandler/ModelHandlerForJSP.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.core.internal.modelhandler;
-
-import org.eclipse.core.runtime.Preferences;
-import org.eclipse.jst.jsp.core.internal.JSPCorePlugin;
-import org.eclipse.jst.jsp.core.internal.encoding.JSPDocumentHeadContentDetector;
-import org.eclipse.jst.jsp.core.internal.encoding.JSPDocumentLoader;
-import org.eclipse.jst.jsp.core.internal.parser.JSPSourceParser;
-import org.eclipse.jst.jsp.core.internal.regions.DOMJSPRegionContexts;
-import org.eclipse.wst.sse.core.internal.document.IDocumentCharsetDetector;
-import org.eclipse.wst.sse.core.internal.document.IDocumentLoader;
-import org.eclipse.wst.sse.core.internal.ltk.modelhandler.AbstractModelHandler;
-import org.eclipse.wst.sse.core.internal.ltk.parser.BlockMarker;
-import org.eclipse.wst.sse.core.internal.provisional.IModelLoader;
-
-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);
-	}
-
-	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/internal/modelquery/JSPModelQueryAdapterImpl.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/modelquery/JSPModelQueryAdapterImpl.java
deleted file mode 100644
index 193701f..0000000
--- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/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.internal.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.internal.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/internal/modelquery/JSPModelQueryAssociationProvider.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/modelquery/JSPModelQueryAssociationProvider.java
deleted file mode 100644
index b7b1273..0000000
--- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/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.internal.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/internal/modelquery/JSPModelQueryCMProvider.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/modelquery/JSPModelQueryCMProvider.java
deleted file mode 100644
index 8f83675..0000000
--- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/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.internal.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.internal.contentmodel.CMDocument;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMElementDeclaration;
-import org.eclipse.wst.xml.core.internal.contentmodel.modelquery.ModelQueryCMProvider;
-import org.eclipse.wst.xml.core.internal.provisional.document.IDOMNode;
-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 IDOMNode) {
-				// check position dependent
-				IDOMNode xmlNode = (IDOMNode) 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/internal/modelquery/JSPModelQueryImpl.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/modelquery/JSPModelQueryImpl.java
deleted file mode 100644
index a9a9c67..0000000
--- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/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.internal.modelquery;
-
-
-import java.util.HashMap;
-import java.util.List;
-
-import org.eclipse.jst.jsp.core.internal.document.PageDirectiveAdapter;
-import org.eclipse.wst.sse.core.internal.provisional.INodeNotifier;
-import org.eclipse.wst.sse.core.internal.provisional.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.internal.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/internal/modelquery/ModelQueryAdapterFactoryForJSP.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/modelquery/ModelQueryAdapterFactoryForJSP.java
deleted file mode 100644
index 35c3522..0000000
--- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/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.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.internal.provisional.AbstractAdapterFactory;
-import org.eclipse.wst.sse.core.internal.provisional.IModelStateListener;
-import org.eclipse.wst.sse.core.internal.provisional.INodeAdapter;
-import org.eclipse.wst.sse.core.internal.provisional.INodeAdapterFactory;
-import org.eclipse.wst.sse.core.internal.provisional.INodeNotifier;
-import org.eclipse.wst.sse.core.internal.provisional.IStructuredModel;
-import org.eclipse.wst.sse.core.internal.util.Debug;
-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.provisional.document.IDOMNode;
-import org.eclipse.wst.xml.core.internal.ssemodelquery.ModelQueryAdapter;
-import org.eclipse.wst.xml.uriresolver.internal.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 INodeAdapterFactory 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 IDOMNode) {
-				IDOMNode xmlNode = (IDOMNode) 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/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 522c493..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.internal.provisional.events.StructuredDocumentEvent;
-import org.eclipse.wst.sse.core.internal.provisional.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 effcef2..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.internal.contentmodel.tld.provisional.JSP11TLDNames;
-import org.eclipse.jst.jsp.core.internal.provisional.JSP12Namespace;
-import org.eclipse.jst.jsp.core.internal.regions.DOMJSPRegionContexts;
-import org.eclipse.wst.sse.core.internal.ltk.parser.RegionParser;
-import org.eclipse.wst.sse.core.internal.ltk.parser.StructuredDocumentRegionParser;
-import org.eclipse.wst.sse.core.internal.provisional.events.StructuredDocumentEvent;
-import org.eclipse.wst.sse.core.internal.provisional.exceptions.SourceEditingRuntimeException;
-import org.eclipse.wst.sse.core.internal.provisional.text.IStructuredDocumentRegion;
-import org.eclipse.wst.sse.core.internal.provisional.text.IStructuredDocumentRegionList;
-import org.eclipse.wst.sse.core.internal.provisional.text.IStructuredTextReParser;
-import org.eclipse.wst.sse.core.internal.provisional.text.ITextRegion;
-import org.eclipse.wst.sse.core.internal.provisional.text.ITextRegionContainer;
-import org.eclipse.wst.sse.core.internal.provisional.text.ITextRegionList;
-import org.eclipse.wst.sse.core.internal.text.CoreNodeList;
-import org.eclipse.wst.sse.core.internal.util.Debug;
-import org.eclipse.wst.xml.core.internal.parser.XMLStructuredDocumentReParser;
-import org.eclipse.wst.xml.core.internal.regions.DOMRegionContext;
-
-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() == DOMRegionContext.XML_TAG_OPEN && (previous == null || (!previous.isEnded() || previous.getType() == DOMRegionContext.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() == DOMRegionContext.WHITE_SPACE && container.getRegions().size() >= 2)
-				internal = container.getRegions().get(container.getRegions().size() - 2);
-			if (internal.getType() == DOMRegionContext.XML_EMPTY_TAG_CLOSE) {
-				result = true;
-			}
-		}
-		//case 3 test
-		if (changesIncludeA_lt && (region.getType() == DOMRegionContext.XML_TAG_ATTRIBUTE_NAME || region.getType() == DOMRegionContext.XML_TAG_ATTRIBUTE_VALUE)) {
-			result = true;
-		}
-		//case 4 test
-		if (delsIncludeA_gt && region.getType() == DOMRegionContext.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() == DOMRegionContext.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() == DOMRegionContext.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 a4e6433..0000000
--- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/parser/JSPSourceParser.java
+++ /dev/null
@@ -1,428 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies 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.internal.contentmodel.tld.provisional.JSP12TLDNames;
-import org.eclipse.jst.jsp.core.internal.parser.internal.JSPTokenizer;
-import org.eclipse.jst.jsp.core.internal.provisional.JSP12Namespace;
-import org.eclipse.jst.jsp.core.internal.regions.DOMJSPRegionContexts;
-import org.eclipse.wst.sse.core.internal.ltk.parser.BlockTokenizer;
-import org.eclipse.wst.sse.core.internal.ltk.parser.JSPCapableParser;
-import org.eclipse.wst.sse.core.internal.ltk.parser.RegionParser;
-import org.eclipse.wst.sse.core.internal.ltk.parser.StructuredDocumentRegionHandler;
-import org.eclipse.wst.sse.core.internal.ltk.parser.StructuredDocumentRegionHandlerExtension;
-import org.eclipse.wst.sse.core.internal.ltk.parser.StructuredDocumentRegionParser;
-import org.eclipse.wst.sse.core.internal.ltk.parser.TagMarker;
-import org.eclipse.wst.sse.core.internal.provisional.text.IStructuredDocument;
-import org.eclipse.wst.sse.core.internal.provisional.text.IStructuredDocumentRegion;
-import org.eclipse.wst.sse.core.internal.provisional.text.ITextRegion;
-import org.eclipse.wst.sse.core.internal.provisional.text.ITextRegionContainer;
-import org.eclipse.wst.sse.core.internal.provisional.text.ITextRegionList;
-import org.eclipse.wst.sse.core.internal.text.IRegionComparible;
-import org.eclipse.wst.sse.core.internal.util.Debug;
-import org.eclipse.wst.sse.core.internal.util.StringUtils;
-import org.eclipse.wst.xml.core.internal.parser.XMLSourceParser;
-import org.eclipse.wst.xml.core.internal.regions.DOMRegionContext;
-
-/**
- * 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:"; //$NON-NLS-1$
-
-		/**
-		 * 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() == DOMRegionContext.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() == DOMRegionContext.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() == DOMRegionContext.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() == DOMRegionContext.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();
-			}
-		}
-
-		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;
-	}
-
-
-	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 == DOMRegionContext.BLOCK_TEXT) {
-				if (currentNode != null && currentNode.getLastRegion().getType() == DOMRegionContext.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 == DOMRegionContext.XML_CONTENT) || (type == DOMRegionContext.XML_CHAR_REFERENCE) || (type == DOMRegionContext.XML_ENTITY_REFERENCE)
-						|| (type == DOMRegionContext.XML_PI_OPEN) || (type == DOMRegionContext.XML_TAG_OPEN) || (type == DOMRegionContext.XML_END_TAG_OPEN) || (type == DOMRegionContext.XML_COMMENT_OPEN) || (type == DOMRegionContext.XML_CDATA_OPEN)
-						|| (type == DOMRegionContext.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 == DOMRegionContext.XML_TAG_NAME) || (type == DOMRegionContext.XML_TAG_ATTRIBUTE_NAME) || (type == DOMRegionContext.XML_TAG_ATTRIBUTE_EQUALS) || (type == DOMRegionContext.XML_TAG_ATTRIBUTE_VALUE)
-						|| (type == DOMRegionContext.XML_COMMENT_TEXT) || (type == DOMRegionContext.XML_PI_CONTENT) || (type == DOMRegionContext.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 == DOMRegionContext.XML_PI_CLOSE) || (type == DOMRegionContext.XML_TAG_CLOSE) || (type == DOMRegionContext.XML_EMPTY_TAG_CLOSE) || (type == DOMRegionContext.XML_COMMENT_CLOSE) || (type == DOMRegionContext.XML_CDATA_CLOSE)
-						|| (type == DOMJSPRegionContexts.JSP_CLOSE) || (type == DOMJSPRegionContexts.JSP_COMMENT_CLOSE) || (type == DOMJSPRegionContexts.JSP_DIRECTIVE_CLOSE) || (type == DOMRegionContext.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 == DOMRegionContext.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().adjustLength(region.getLength());
-				currentNode.adjustLength(region.getLength());
-			}
-			else if (type == DOMRegionContext.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() == DOMRegionContext.UNDEFINED) {
-					currentNode.getLastRegion().adjustLength(region.getLength());
-					currentNode.adjustLength(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 == DOMRegionContext.XML_CONTENT) || (type == DOMRegionContext.XML_CHAR_REFERENCE) || (type == DOMRegionContext.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 17ee237..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.regions.DOMJSPRegionContexts;
-import org.eclipse.wst.sse.core.internal.parser.ForeignRegion;
-import org.eclipse.wst.sse.core.internal.provisional.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 ForeignRegion(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 16be426..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.internal.provisional.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 d3b5101..0000000
--- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/parser/internal/JSPTokenizer.java
+++ /dev/null
@@ -1,3598 +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.internal.regions.DOMJSPRegionContexts;
-import org.eclipse.wst.sse.core.internal.ltk.parser.BlockMarker;
-import org.eclipse.wst.sse.core.internal.ltk.parser.BlockTokenizer;
-import org.eclipse.wst.sse.core.internal.ltk.parser.TagMarker;
-import org.eclipse.wst.sse.core.internal.provisional.text.ITextRegion;
-import org.eclipse.wst.sse.core.internal.provisional.text.ITextRegionList;
-import org.eclipse.wst.sse.core.internal.util.Debug;
-import org.eclipse.wst.sse.core.internal.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.11 2005/05/28 01:26:17 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
-	 *
-	 */
-	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/preferences/JSPCorePreferenceInitializer.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/preferences/JSPCorePreferenceInitializer.java
deleted file mode 100644
index 762af18..0000000
--- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/preferences/JSPCorePreferenceInitializer.java
+++ /dev/null
@@ -1,38 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.jst.jsp.core.internal.preferences;
-
-import org.eclipse.core.runtime.preferences.AbstractPreferenceInitializer;
-import org.eclipse.core.runtime.preferences.DefaultScope;
-import org.eclipse.core.runtime.preferences.IEclipsePreferences;
-import org.eclipse.jst.jsp.core.internal.JSPCorePlugin;
-import org.eclipse.wst.sse.core.internal.encoding.CommonCharsetNames;
-import org.eclipse.wst.sse.core.internal.encoding.CommonEncodingPreferenceNames;
-
-/**
- * Sets default values for JSP Core preferences
- */
-public class JSPCorePreferenceInitializer extends AbstractPreferenceInitializer {
-
-	public void initializeDefaultPreferences() {
-		IEclipsePreferences node = new DefaultScope().getNode(JSPCorePlugin.getDefault().getBundle().getSymbolicName());
-
-		// code generation preferences
-		node.put(CommonEncodingPreferenceNames.INPUT_CODESET, ""); //$NON-NLS-1$
-		String defaultEnc = "ISO-8859-1";//$NON-NLS-1$
-		String systemEnc = System.getProperty("file.encoding"); //$NON-NLS-1$
-		if (systemEnc != null) {
-			defaultEnc = CommonCharsetNames.getPreferredDefaultIanaName(systemEnc, "ISO-8859-1");//$NON-NLS-1$
-		}
-		node.put(CommonEncodingPreferenceNames.OUTPUT_CODESET, defaultEnc);
-		node.put(CommonEncodingPreferenceNames.END_OF_LINE_CODE, ""); //$NON-NLS-1$
-	}
-}
diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/provisional/JSP11Namespace.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/provisional/JSP11Namespace.java
deleted file mode 100644
index 0c179a7..0000000
--- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/provisional/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.internal.provisional;
-
-
-/**
- * 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/internal/provisional/JSP12Namespace.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/provisional/JSP12Namespace.java
deleted file mode 100644
index c24b244..0000000
--- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/provisional/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.internal.provisional;
-
-/**
- * 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/internal/provisional/JSP20Namespace.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/provisional/JSP20Namespace.java
deleted file mode 100644
index 5852c43..0000000
--- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/provisional/JSP20Namespace.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.internal.provisional;
-
-/**
- * New names for JSP 2.0 spec.
- */
-
-public interface JSP20Namespace extends JSP12Namespace {
-	/**
-	 * New elements for JSP 2.0 spec.
-	 */
-	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/internal/provisional/contenttype/ContentTypeIdForJSP.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/provisional/contenttype/ContentTypeIdForJSP.java
deleted file mode 100644
index 07f47a3..0000000
--- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/provisional/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.internal.provisional.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/internal/provisional/contenttype/IContentDescriptionForJSP.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/provisional/contenttype/IContentDescriptionForJSP.java
deleted file mode 100644
index 6caee22..0000000
--- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/provisional/contenttype/IContentDescriptionForJSP.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.core.internal.provisional.contenttype;
-
-import org.eclipse.core.runtime.QualifiedName;
-import org.eclipse.wst.sse.core.internal.encoding.ICodedResourcePlugin;
-
-
-public interface IContentDescriptionForJSP {
-	/**
-	 * Extra properties as part of ContentDescription, if the content is JSP.
-	 */
-	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/provisional/text/IJSPPartitionTypes.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/provisional/text/IJSPPartitionTypes.java
deleted file mode 100644
index b4a23b9..0000000
--- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/provisional/text/IJSPPartitionTypes.java
+++ /dev/null
@@ -1,23 +0,0 @@
-package org.eclipse.jst.jsp.core.internal.provisional.text;
-
-
-/**
- * This interface is not intended to be implemented.
- * It defines the partition types for JSP.
- * Clients should reference the partition type Strings defined here directly.
- * 
- * @since 1.0
- */
-public interface IJSPPartitionTypes {
-
-	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.core/src/org/eclipse/jst/jsp/core/internal/regions/DOMJSPRegionContexts.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/regions/DOMJSPRegionContexts.java
deleted file mode 100644
index f0aa201..0000000
--- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/regions/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.internal.regions;
-
-import org.eclipse.wst.xml.core.internal.regions.DOMRegionContext;
-
-
-/**
- *
- */
-
-public interface DOMJSPRegionContexts extends DOMRegionContext {
-	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/internal/tasks/JSPTaskScannerDelegate.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/tasks/JSPTaskScannerDelegate.java
deleted file mode 100644
index 017e2d0..0000000
--- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/tasks/JSPTaskScannerDelegate.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.internal.regions.DOMJSPRegionContexts;
-import org.eclipse.wst.sse.core.internal.provisional.text.IStructuredDocumentRegion;
-import org.eclipse.wst.sse.core.internal.provisional.text.ITextRegion;
-import org.eclipse.wst.xml.core.internal.tasks.XMLTaskScannerDelegate;
-
-public class JSPTaskScannerDelegate extends XMLTaskScannerDelegate {
-	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 125b273..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.internal.provisional.text.IStructuredDocumentRegion;
-import org.eclipse.wst.sse.core.internal.provisional.text.IStructuredTextPartitioner;
-import org.eclipse.wst.sse.core.internal.provisional.text.ITextRegion;
-import org.eclipse.wst.sse.core.internal.text.rules.IStructuredTypedRegion;
-
-/**
- * To be used when no known partitioner is available.
- * Always returns the unknown type.
- */
-public class NullStructuredDocumentPartitioner implements IStructuredTextPartitioner {
-
-	public class NullStructuredTypedRegion implements IStructuredTypedRegion {
-
-		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 = "org.eclipse.wst.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 IStructuredTypedRegion createPartition(int offset, int length, String type) {
-		IStructuredTypedRegion result = new NullStructuredTypedRegion();
-		result.setOffset(offset);
-		result.setLength(length);
-		result.setType(type);
-		return result;
-	}
-
-	public void disconnect() {
-		// nothing to do
-	}
-
-	public String getDefaultPartitionType() {
-		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, IStructuredDocumentRegion nextNode) {
-		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 getDefaultPartitionType();
-	}
-
-	public ITypedRegion getPartition(int offset) {
-		return createPartition(offset, 1, getDefaultPartitionType());
-	}
-
-}
\ 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 d9b7695..0000000
--- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/text/StructuredTextPartitionerForJSP.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.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.internal.contentmodel.tld.provisional.JSP12TLDNames;
-import org.eclipse.jst.jsp.core.internal.encoding.JSPDocumentHeadContentDetector;
-import org.eclipse.jst.jsp.core.internal.parser.JSPSourceParser;
-import org.eclipse.jst.jsp.core.internal.provisional.JSP11Namespace;
-import org.eclipse.jst.jsp.core.internal.provisional.JSP12Namespace;
-import org.eclipse.jst.jsp.core.internal.provisional.text.IJSPPartitionTypes;
-import org.eclipse.jst.jsp.core.internal.regions.DOMJSPRegionContexts;
-import org.eclipse.wst.html.core.internal.text.StructuredTextPartitionerForHTML;
-import org.eclipse.wst.sse.core.internal.ltk.parser.StructuredDocumentRegionHandler;
-import org.eclipse.wst.sse.core.internal.ltk.parser.StructuredDocumentRegionHandlerExtension;
-import org.eclipse.wst.sse.core.internal.ltk.parser.StructuredDocumentRegionParser;
-import org.eclipse.wst.sse.core.internal.parser.ForeignRegion;
-import org.eclipse.wst.sse.core.internal.provisional.text.IStructuredDocument;
-import org.eclipse.wst.sse.core.internal.provisional.text.IStructuredDocumentRegion;
-import org.eclipse.wst.sse.core.internal.provisional.text.IStructuredTextPartitioner;
-import org.eclipse.wst.sse.core.internal.provisional.text.ITextRegion;
-import org.eclipse.wst.sse.core.internal.provisional.text.ITextRegionList;
-import org.eclipse.wst.sse.core.internal.text.rules.StructuredTextPartitioner;
-import org.eclipse.wst.sse.core.internal.util.StringUtils;
-import org.eclipse.wst.xml.core.internal.regions.DOMRegionContext;
-import org.eclipse.wst.xml.core.internal.text.rules.StructuredTextPartitionerForXML;
-
-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() == DOMRegionContext.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() == DOMRegionContext.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); //$NON-NLS-1$
-					}
-					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-NLS-1$
-			}
-		}
-
-
-		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")); //$NON-NLS-1$ //$NON-NLS-2$
-
-
-	// 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[]{IJSPPartitionTypes.JSP_DEFAULT, IJSPPartitionTypes.JSP_DEFAULT_EL, IJSPPartitionTypes.JSP_DIRECTIVE, IJSPPartitionTypes.JSP_CONTENT_DELIMITER, IJSPPartitionTypes.JSP_CONTENT_JAVA, IJSPPartitionTypes.JSP_CONTENT_JAVASCRIPT, IJSPPartitionTypes.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 getDefaultPartitionType() {
-		return getEmbeddedPartitioner().getDefaultPartitionType();
-	}
-
-	/**
-	 * 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(DOMRegionContext.XML_TAG_OPEN) && r.getType().equals(DOMRegionContext.XML_TAG_NAME)) {
-					result = sdRegion.getText(r);
-				}
-			}
-		}
-		return result;
-	}
-
-	protected String getPartitionType(ForeignRegion region, int offset) {
-		return getEmbeddedPartitioner().getPartitionType(region, offset);
-	}
-
-
-	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 = IJSPPartitionTypes.JSP_COMMENT;
-		else if (region_type == DOMJSPRegionContexts.JSP_DIRECTIVE_NAME || region_type == DOMJSPRegionContexts.JSP_DIRECTIVE_OPEN || region_type == DOMJSPRegionContexts.JSP_DIRECTIVE_CLOSE)
-			result = IJSPPartitionTypes.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 = IJSPPartitionTypes.JSP_CONTENT_DELIMITER;
-		else if (region_type == DOMJSPRegionContexts.JSP_ROOT_TAG_NAME)
-			result = IJSPPartitionTypes.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 = IJSPPartitionTypes.JSP_DEFAULT_EL;
-		else if (region_type == DOMRegionContext.XML_CONTENT) {
-			// possibly between <jsp:scriptlet>, <jsp:expression>,
-			// <jsp:declaration>
-			IStructuredDocumentRegion sdRegion = this.structuredDocument.getRegionAtCharacterOffset(offset);
-			if (isJspJavaActionName(getParentName(sdRegion)))
-				result = getPartitionTypeForDocumentLanguage();
-			else
-				result = getDefaultPartitionType();
-		}
-		else {
-			result = getEmbeddedPartitioner().getPartitionType(region, offset);
-		}
-		return result;
-	}
-
-	public String getPartitionTypeBetween(IStructuredDocumentRegion previousNode, IStructuredDocumentRegion nextNode) {
-		return getEmbeddedPartitioner().getPartitionTypeBetween(previousNode, nextNode);
-	}
-
-	private String getPartitionTypeForDocumentLanguage() {
-		String result;
-		if (fLanguage == null || fLanguage.equalsIgnoreCase("java")) { //$NON-NLS-1$
-			result = IJSPPartitionTypes.JSP_CONTENT_JAVA;
-		}
-		else if (fLanguage.equalsIgnoreCase("javascript")) { //$NON-NLS-1$
-			result = IJSPPartitionTypes.JSP_CONTENT_JAVASCRIPT;
-		}
-		else {
-			result = IJSPPartitionTypes.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(DOMRegionContext.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);
-	}
-
-	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(), IJSPPartitionTypes.JSP_DIRECTIVE);
-				return true;
-			}
-			if (fEnableJSPActionPartitions && isAction(sdRegion, offset)) {
-				setInternalPartition(offset, containedChildRegion.getLength(), IJSPPartitionTypes.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 == DOMRegionContext.XML_CONTENT || type == DOMRegionContext.BLOCK_TEXT || type == DOMRegionContext.XML_CDATA_OPEN || type == DOMRegionContext.XML_CDATA_TEXT || type == DOMRegionContext.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);
-		}
-	}
-
-	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 1122fd2..0000000
--- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/util/DocumentProvider.java
+++ /dev/null
@@ -1,460 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies 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.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.internal.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 {
-	private Document document = null;
-	private ErrorHandler errorHandler = null;
-	private String fBaseReference;
-	private String fileName = null;
-	private boolean fValidating = true;
-	private InputStream inputStream = null;
-	private String jarFileName = null;
-	private EntityResolver resolver = null;
-
-	private Node rootElement = null;
-	private String rootElementName = null;
-
-	public DocumentProvider() {
-		super();
-	}
-
-	private 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;
-	}
-
-	private DocumentBuilder getDocumentBuilder() {
-		return CommonXML.getDocumentBuilder(isValidating());
-	}
-
-	private 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) {
-		Element result = null;
-		if (document == null)
-			load();
-		if (document != null) {
-			result = (Element) getNode(getRootElement(), name);
-		}
-		return result;
-	}
-
-	/**
-	 * 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;
-	}
-
-	private 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;
-	}
-
-	private 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'.
-	 ************************************************************************/
-	private 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$ //$NON-NLS-2$ //$NON-NLS-3$
-				}
-
-				public void fatalError(SAXParseException exception) throws SAXException {
-					Logger.log(Logger.WARNING, "SAXParseException with " + getJarFileName() + "/" + getFileName() + " (fatalError) while reading descriptor: " + exception.getMessage()); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
-				}
-
-				public void warning(SAXParseException exception) throws SAXException {
-					Logger.log(Logger.WARNING, "SAXParseException with " + getJarFileName() + "/" + getFileName() + " (warning) while reading descriptor: " + exception.getMessage()); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
-				}
-			};
-		}
-		return errorHandler;
-	}
-
-	private 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
-	 */
-	private 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;
-	}
-
-	private 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;
-						}
-					}
-				}
-			}
-		}
-	}
-
-	private 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;
-	}
-}
\ No newline at end of file
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 04d30dc..0000000
--- a/bundles/org.eclipse.jst.jsp.ui/.settings/org.eclipse.jdt.core.prefs
+++ /dev/null
@@ -1,69 +0,0 @@
-#Mon May 30 17:57:20 EDT 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.codegen.inlineJsrBytecode=disabled

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

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

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

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

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

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

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

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

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

-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.enumIdentifier=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=error

-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.invalidJavadoc=ignore

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

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

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

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

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

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

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

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

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

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

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

-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=warning

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

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

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

-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=warning

-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=warning

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

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

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

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

diff --git a/bundles/org.eclipse.jst.jsp.ui/.settings/org.eclipse.pde.prefs b/bundles/org.eclipse.jst.jsp.ui/.settings/org.eclipse.pde.prefs
deleted file mode 100644
index 42fb716..0000000
--- a/bundles/org.eclipse.jst.jsp.ui/.settings/org.eclipse.pde.prefs
+++ /dev/null
@@ -1,14 +0,0 @@
-#Fri May 27 23:56:32 EDT 2005
-compilers.p.deprecated=1
-compilers.p.illegal-att-value=0
-compilers.p.no-required-att=0
-compilers.p.not-externalized-att=1
-compilers.p.unknown-attribute=0
-compilers.p.unknown-class=0
-compilers.p.unknown-element=0
-compilers.p.unknown-resource=0
-compilers.p.unresolved-ex-points=0
-compilers.p.unresolved-import=0
-compilers.p.unused-element-or-attribute=0
-compilers.use-project=true
-eclipse.preferences.version=1
diff --git a/bundles/org.eclipse.jst.jsp.ui/META-INF/MANIFEST.MF b/bundles/org.eclipse.jst.jsp.ui/META-INF/MANIFEST.MF
deleted file mode 100644
index b0a236f..0000000
--- a/bundles/org.eclipse.jst.jsp.ui/META-INF/MANIFEST.MF
+++ /dev/null
@@ -1,60 +0,0 @@
-Manifest-Version: 1.0
-Bundle-ManifestVersion: 2
-Bundle-Name: %pluginName
-Bundle-SymbolicName: org.eclipse.jst.jsp.ui; singleton:=true
-Bundle-Version: 1.0.0
-Bundle-Activator: org.eclipse.jst.jsp.ui.internal.JSPUIPlugin
-Bundle-Vendor: %providerName
-Bundle-Localization: plugin
-Export-Package: org.eclipse.jst.jsp.ui.internal,
- org.eclipse.jst.jsp.ui.internal.autoedit,
- org.eclipse.jst.jsp.ui.internal.breakpointproviders,
- org.eclipse.jst.jsp.ui.internal.contentassist,
- org.eclipse.jst.jsp.ui.internal.editor,
- org.eclipse.jst.jsp.ui.internal.format,
- org.eclipse.jst.jsp.ui.internal.hyperlink,
- org.eclipse.jst.jsp.ui.internal.java.refactoring,
- org.eclipse.jst.jsp.ui.internal.java.search,
- org.eclipse.jst.jsp.ui.internal.java.search.ui,
- org.eclipse.jst.jsp.ui.internal.preferences,
- org.eclipse.jst.jsp.ui.internal.preferences.ui,
- org.eclipse.jst.jsp.ui.internal.projection,
- org.eclipse.jst.jsp.ui.internal.provisional,
- org.eclipse.jst.jsp.ui.internal.reconcile,
- org.eclipse.jst.jsp.ui.internal.registry,
- org.eclipse.jst.jsp.ui.internal.style,
- org.eclipse.jst.jsp.ui.internal.style.java,
- org.eclipse.jst.jsp.ui.internal.taginfo,
- org.eclipse.jst.jsp.ui.internal.templates,
- org.eclipse.jst.jsp.ui.internal.text,
- org.eclipse.jst.jsp.ui.internal.views.contentoutline,
- org.eclipse.jst.jsp.ui.internal.wizard
-Require-Bundle: org.eclipse.ui.ide,
- org.eclipse.ui.views,
- org.eclipse.jface.text,
- org.eclipse.ui.workbench.texteditor,
- org.eclipse.ui.editors,
- org.eclipse.ui,
- org.eclipse.wst.sse.ui,
- org.eclipse.wst.html.ui,
- org.eclipse.wst.css.ui,
- org.eclipse.wst.xml.ui,
- org.eclipse.jst.jsp.core,
- org.eclipse.wst.html.core,
- org.eclipse.wst.css.core,
- org.eclipse.wst.xml.core,
- org.eclipse.wst.xml.uriresolver,
- org.eclipse.wst.sse.core,
- org.eclipse.jdt.ui,
- org.eclipse.jdt.core,
- org.eclipse.debug.core,
- org.eclipse.jdt.debug,
- org.eclipse.core.resources,
- org.eclipse.core.runtime,
- org.eclipse.search,
- org.eclipse.ltk.core.refactoring,
- org.eclipse.ltk.ui.refactoring,
- org.eclipse.wst.common.uriresolver,
- org.eclipse.ui.ide,
- org.eclipse.wst.javascript.ui
-Eclipse-AutoStart: true
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 a4ffd6a..0000000
--- a/bundles/org.eclipse.jst.jsp.ui/build.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
-###############################################################################
-source.. = src/
-bin.includes = plugin.xml,\
-               *.jar,\
-               ./,\
-               icons/,\
-               plugin.properties,\
-               templates/,\
-               META-INF/,\
-               .
-src.includes = plugin.xml,\
-               plugin.properties,\
-               icons/,\
-               build.xml,\
-               templates/,\
-               build.properties
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 66c4c41..0000000
--- a/bundles/org.eclipse.jst.jsp.ui/plugin.properties
+++ /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
-###############################################################################
-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_Source.name=JSP Source
-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
-##
-AddTask.label=Add &Task...
-AddTask.tooltip=Add Task...
-AddBookmark.label=Add Boo&kmark...
-AddBookmark.tooltip=Add Bookmark...
\ No newline at end of file
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 1dcccf2..0000000
--- a/bundles/org.eclipse.jst.jsp.ui/plugin.xml
+++ /dev/null
@@ -1,420 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<?eclipse version="3.0"?>
-<plugin>
-
-			<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.core.jspsource.source">
-      <contentTypeBinding contentTypeId="org.eclipse.jst.jsp.core.jspsource" />
-		</editor>
-	</extension>
-	<extension point="org.eclipse.wst.sse.ui.extendedconfiguration"> 
-		<configuration 
-      		type="textviewerconfiguration"
-			class="org.eclipse.jst.jsp.ui.internal.provisional.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.internal.views.properties.XMLPropertySheetConfiguration"
-			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.source"
-			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.internal.provisional.preferences"
-			class="org.eclipse.jst.jsp.ui.internal.preferences.ui.JSPFilesPreferencePage"
-			id="org.eclipse.wst.sse.ui.preferences.jsp">
-		</page>
-		<page name="%JSP_Source.name"
-			category="org.eclipse.wst.sse.ui.preferences.jsp"
-			class="org.eclipse.jst.jsp.ui.internal.preferences.ui.JSPSourcePreferencePage"
-			id="org.eclipse.wst.sse.ui.preferences.jsp.source">
-		</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.common.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"
-				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"
-				id="org.eclipse.jst.jsp.ui.jsp_scriptlet">
-				<content>%jsp_scr_content</content>
-			</item>
-			<item label="%jsp_expression" icon="icons/snippets/jspexp.gif"
-				id="org.eclipse.jst.jsp.ui.jsp_expression">
-				<content>%jsp_expression_content</content>
-			</item>
-			<item label="%jsp_declaration" icon="icons/snippets/jspdecl.gif"
-				id="org.eclipse.jst.jsp.ui.jsp_declaration">
-				<content>%jsp_declaration_content</content>
-			</item>
-			<item label="%jsp_include_directive"
-				icon="icons/snippets/jspincl.gif"
-				id="org.eclipse.jst.jsp.ui.jsp_include_directive">
-				<content>%jsp_include_directive_content</content>
-			</item>
-			<item label="%jsp_page_directive"
-				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"
-				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>
-		</category>
-	</extension>
-
-	<!-- Editor actionsets -->
-	<extension point="org.eclipse.ui.actionSetPartAssociations">
-		<actionSetPartAssociation
-			targetID="org.eclipse.ui.edit.text.actionSet.annotationNavigation">
-			<part id="org.eclipse.jst.jsp.core.jspsource.source">
-			</part>
-		</actionSetPartAssociation>
-		<actionSetPartAssociation
-			targetID="org.eclipse.ui.NavigateActionSet">
-			<part id="org.eclipse.jst.jsp.core.jspsource.source">
-			</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>
-	
-   <!-- Add new JSP wizard to J2EE Project Navigator -->
-   <extension
-		point="org.eclipse.wst.common.navigator.workbench.commonWizard">
-        <commonWizard
-			type="new"
-            wizardId="org.eclipse.jst.jsp.ui.internal.wizard.NewJSPWizard">
-			<enablement>
-				<or>
-		           <objectClass 
-		                name="org.eclipse.core.resources.IProject">
-		           </objectClass>
-		           <objectClass
-		                 name="org.eclipse.core.resources.IFolder">
-		           </objectClass> 
-		           <objectClass
-		                 name="org.eclipse.core.resources.IFile">
-		           </objectClass> 
-				</or>
-			</enablement>
-       </commonWizard>
-    </extension> 
-	
-	<extension
-		point="org.eclipse.ui.popupMenus">
-		<viewerContribution
-			targetID="org.eclipse.jst.jsp.core.jspsource.source.RulerContext"
-            id="org.eclipse.ui.texteditor.ruler.context.actions">
-			<action
-				label="%AddTask.label"
-				helpContextId="org.eclipse.ui.AddTask_action_context"
-				class="org.eclipse.ui.texteditor.TaskRulerAction"
-				tooltip="%AddTask.tooltip"
-				menubarPath="additions"
-				id="org.eclipse.ui.texteditor.TaskRulerAction">
-			</action>
-			<action
-				label="%AddBookmark.label"
-				helpContextId="org.eclipse.ui.bookmark_action_context"
-				class="org.eclipse.ui.texteditor.BookmarkRulerAction"
-				tooltip="%AddBookmark.tooltip"
-				menubarPath="additions"
-				id="org.eclipse.ui.texteditor.BookmarkRulerAction">
-			</action>
-		</viewerContribution>
-	</extension>
-	
-	
-</plugin>
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/JSPUIMessages.java b/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/JSPUIMessages.java
deleted file mode 100644
index 285fa5c..0000000
--- a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/JSPUIMessages.java
+++ /dev/null
@@ -1,94 +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 - Initial API and implementation
- **********************************************************************/
-package org.eclipse.jst.jsp.ui.internal;
-
-import java.util.MissingResourceException;
-import java.util.ResourceBundle;
-
-import org.eclipse.osgi.util.NLS;
-
-/**
- * Strings used by JSP UI
- * 
- * @since 1.0
- */
-public class JSPUIMessages extends NLS {
-	private static final String BUNDLE_NAME = "org.eclipse.jst.jsp.ui.internal.JSPUIPluginResources";//$NON-NLS-1$
-	private static ResourceBundle fResourceBundle;
-
-	public static String Sample_JSP_doc;
-	public static String JSP_Delimiters_UI_;
-	public static String Refactor_label;
-	public static String RenameElement_label; // resource bundle
-	public static String MoveElement_label; // resource bundle
-	public static String MoveElementWizard;
-	public static String OK;
-	public static String JSP_changes;
-	public static String ActionContributorJSP_0;
-	public static String JSPRenameElementAction_0;
-	public static String JSPMoveElementAction_0;
-	public static String BasicRefactorSearchRequestor_0;
-	public static String BasicRefactorSearchRequestor_1;
-	public static String BasicRefactorSearchRequestor_2;
-	public static String BasicRefactorSearchRequestor_3;
-	public static String BasicRefactorSearchRequestor_4;
-	public static String BasicRefactorSearchRequestor_5;
-	public static String BasicRefactorSearchRequestor_6;
-	public static String _UI_WIZARD_NEW_TITLE;
-	public static String _UI_WIZARD_NEW_HEADING;
-	public static String _UI_WIZARD_NEW_DESCRIPTION;
-	public static String _ERROR_FILENAME_MUST_END_JSP;
-	public static String NewJSPTemplatesWizardPage_0;
-	public static String NewJSPTemplatesWizardPage_1;
-	public static String NewJSPTemplatesWizardPage_2;
-	public static String NewJSPTemplatesWizardPage_3;
-	public static String NewJSPTemplatesWizardPage_4;
-	public static String NewJSPTemplatesWizardPage_5;
-	public static String NewJSPTemplatesWizardPage_6;
-	public static String ToggleComment_label; // resource bundle
-	public static String ToggleComment_tooltip; // resource bundle
-	public static String ToggleComment_description; // resource bundle
-	public static String AddBlockComment_label; // resource bundle
-	public static String AddBlockComment_tooltip; // resource bundle
-	public static String AddBlockComment_description; // resource bundle
-	public static String RemoveBlockComment_label; // resource bundle
-	public static String RemoveBlockComment_tooltip; // resource bundle
-	public static String RemoveBlockComment_description; // resource bundle
-	public static String CleanupDocument_label; // resource bundle
-	public static String CleanupDocument_tooltip; // resource bundle
-	public static String CleanupDocument_description; // resource bundle
-	public static String FindOccurrences_label;	// resource bundle
-	public static String OccurrencesSearchQuery_0;
-	public static String OccurrencesSearchQuery_2;
-	public static String Override_method_in;
-	public static String Creating_files_encoding;
-	public static String Content_Assist_not_availab_UI_;
-	public static String Java_Content_Assist_is_not_UI_;
-	public static String JSPSourcePreferencePage_0;
-	public static String JSPSourcePreferencePage_1;
-	public static String JSPSourcePreferencePage_2;
-	public static String JSPColorPage_jsp_content;
-	
-	static {
-		// load message values from bundle file
-		NLS.initializeMessages(BUNDLE_NAME, JSPUIMessages.class);
-	}
-
-	public static ResourceBundle getResourceBundle() {
-		try {
-			if (fResourceBundle == null)
-				fResourceBundle = ResourceBundle.getBundle(BUNDLE_NAME);
-		}
-		catch (MissingResourceException x) {
-			fResourceBundle = null;
-		}
-		return fResourceBundle;
-	}
-}
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 ac621e0..0000000
--- a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/JSPUIPlugin.java
+++ /dev/null
@@ -1,104 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies 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 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.internal.provisional.registry.AdapterFactoryRegistry;
-import org.eclipse.wst.sse.ui.internal.provisional.registry.AdapterFactoryRegistryImpl;
-import org.eclipse.wst.sse.ui.internal.provisional.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;	
-	
-	/**
-	 * 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;
-	}
-}
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 035fdcb..0000000
--- a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/JSPUIPluginResources.properties
+++ /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
-###############################################################################
-## 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
-MoveElementWizard=Move the selected elements
-#
-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}''
-BasicRefactorSearchRequestor_6=JSP Rename Change
-#
-_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 one of the following extensions {0}.
-NewJSPTemplatesWizardPage_0=Select JSP Template
-NewJSPTemplatesWizardPage_1=Select a template as initial content in the JSP page.
-NewJSPTemplatesWizardPage_2=Name
-NewJSPTemplatesWizardPage_3=Description
-NewJSPTemplatesWizardPage_4=Use JSP Template
-NewJSPTemplatesWizardPage_5=Preview
-NewJSPTemplatesWizardPage_6=Templates are 'New JSP' templates found in the <a>JSP Templates</a> preference page.
-# Copied from sse.ui
-CleanupDocument_label=C&leanup Document...
-CleanupDocument_tooltip=Cleanup Document
-CleanupDocument_description=Cleanup Document
-ToggleComment_label=Togg&le Comment
-ToggleComment_tooltip=Toggle Comment
-ToggleComment_description=Toggle Comment
-AddBlockComment_label=Add &Block Comment
-AddBlockComment_tooltip=Add Block Comment
-AddBlockComment_description=Add Block Comment
-RemoveBlockComment_label=Remove Bloc&k Comment
-RemoveBlockComment_tooltip=Remove Block Comment
-RemoveBlockComment_description=Remove Block Comment
-FindOccurrences_label=O&ccurrences in File
-OccurrencesSearchQuery_0={0} - {1} Occurrences in {2}
-OccurrencesSearchQuery_2=file
-Content_Assist_not_availab_UI_=Content Assist not available at the current location
-Java_Content_Assist_is_not_UI_=Java Content Assist is not available for the current cursor location
-#
-Override_method_in=Override method in '
-Creating_files_encoding=Creating files encoding preference
-#
-JSPSourcePreferencePage_0=JSP Source preferences are based on the content within the JSP.
-JSPSourcePreferencePage_1=See <a>''{0}''</a> for JSP with HTML content.
-JSPSourcePreferencePage_2=See <a>''{0}''</a> for JSP with XML content.
-JSPColorPage_jsp_content=JSP Content
\ No newline at end of file
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 61525e5..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.internal.provisional.IStructuredModel;
-import org.eclipse.wst.sse.core.internal.provisional.StructuredModelManager;
-import org.eclipse.wst.sse.ui.internal.StructuredDocumentCommand;
-import org.eclipse.wst.xml.core.internal.provisional.document.IDOMNode;
-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$
-						IDOMNode node = (IDOMNode) 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 33629b9..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.internal.contentmodel.tld.provisional.TLDElementDeclaration;
-import org.eclipse.jst.jsp.core.internal.provisional.JSP12Namespace;
-import org.eclipse.jst.jsp.core.internal.regions.DOMJSPRegionContexts;
-import org.eclipse.ui.IEditorInput;
-import org.eclipse.wst.sse.core.internal.provisional.IStructuredModel;
-import org.eclipse.wst.sse.core.internal.provisional.IndexedRegion;
-import org.eclipse.wst.sse.core.internal.provisional.text.IStructuredDocument;
-import org.eclipse.wst.sse.core.internal.provisional.text.IStructuredDocumentRegion;
-import org.eclipse.wst.sse.core.internal.provisional.text.ITextRegion;
-import org.eclipse.wst.sse.core.internal.provisional.text.ITextRegionCollection;
-import org.eclipse.wst.sse.core.internal.provisional.text.ITextRegionList;
-import org.eclipse.wst.sse.ui.internal.provisional.extensions.breakpoint.IBreakpointProvider;
-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.internal.provisional.contentmodel.CMNodeWrapper;
-import org.eclipse.wst.xml.core.internal.provisional.document.IDOMDocument;
-import org.eclipse.wst.xml.core.internal.regions.DOMRegionContext;
-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(((IDOMDocument) 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(DOMRegionContext.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 d25d3fc..0000000
--- a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/breakpointproviders/JavaBreakpointProvider.java
+++ /dev/null
@@ -1,108 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies 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.JSPUIMessages;
-import org.eclipse.jst.jsp.ui.internal.JSPUIPlugin;
-import org.eclipse.ui.IEditorInput;
-import org.eclipse.ui.IFileEditorInput;
-import org.eclipse.wst.sse.ui.internal.provisional.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;
-	}
-
-
-
-	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);
-	}
-
-	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, JSPUIMessages.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;
-	}
-
-	public void setSourceEditingTextTools(SourceEditingTextTools util) {
-	}
-
-	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 c59820d..0000000
--- a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/breakpointproviders/JavaScriptBreakpointProvider.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.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.JSPUIMessages;
-import org.eclipse.jst.jsp.ui.internal.JSPUIPlugin;
-import org.eclipse.ui.IEditorInput;
-import org.eclipse.wst.sse.ui.internal.provisional.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);
-	}
-
-
-	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) {
-				new JavascriptLineBreakpoint(res, lineNumber, pos, pos);
-			}
-		}
-		return new Status(IStatus.OK, JSPUIPlugin.ID, IStatus.OK, JSPUIMessages.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;
-	}
-
-	public void setSourceEditingTextTools(SourceEditingTextTools util) {
-	}
-
-	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 04cb47e..0000000
--- a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/breakpointproviders/JavaStratumBreakpointProvider.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.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.internal.provisional.text.IJSPPartitionTypes;
-import org.eclipse.jst.jsp.ui.internal.JSPUIMessages;
-import org.eclipse.jst.jsp.ui.internal.JSPUIPlugin;
-import org.eclipse.ui.IEditorInput;
-import org.eclipse.ui.IStorageEditorInput;
-import org.eclipse.wst.sse.ui.internal.StructuredResourceMarkerAnnotationModel;
-import org.eclipse.wst.sse.ui.internal.provisional.extensions.breakpoint.IBreakpointProvider;
-import org.eclipse.wst.sse.ui.internal.provisional.extensions.breakpoint.SourceEditingTextTools;
-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; 
-
-	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) {
-			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$
-				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$
-				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, JSPUIMessages.OK, null);
-		}
-		return status;
-	}
-
-	private String getClassPattern() {
-		return fClassPattern;
-	}
-
-
-	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-1$ //$NON-NLS-2$
-							lineText.equals("}") || lineText.equals("<%")) //$NON-NLS-1$ //$NON-NLS-2$
-				{
-					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 == IJSPPartitionTypes.JSP_CONTENT_JAVA || type == IJSPPartitionTypes.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;
-			}
-		}
-	}
-
-	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 68580d9..0000000
--- a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/breakpointproviders/JavascriptLineBreakpoint.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 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 Should be deleted? Along with calling class?
-	}
-
-	/**
-	 * 
-	 */
-	public JavascriptLineBreakpoint() {
-		super();
-	}
-
-	/**
-	 * 
-	 */
-	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 99d0d0e..0000000
--- a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/contentassist/BeanInfoProvider.java
+++ /dev/null
@@ -1,442 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies 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>
- * 
- * @since 1.0
- */
-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;
-					
-					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;
-				}
-				// 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 1588bf2..0000000
--- a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/contentassist/CustomTemplateProposal.java
+++ /dev/null
@@ -1,42 +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.internal.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)
- * 
- * @since 1.0
- */
-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 e917501..0000000
--- a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/contentassist/IBeanInfoProvider.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.ui.internal.contentassist;
-
-import org.eclipse.core.resources.IResource;
-
-/**
- * @since 1.0
- */
-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 3e7ccb5..0000000
--- a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/contentassist/IJavaPropertyDescriptor.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.ui.internal.contentassist;
-
-/**
- * @since 1.0
- */
-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 222b1a3..0000000
--- a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/contentassist/JSPCompletionProcessor.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.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.ui.internal.JSPUIMessages;
-import org.eclipse.jst.jsp.ui.internal.Logger;
-import org.eclipse.wst.sse.core.internal.provisional.StructuredModelManager;
-import org.eclipse.wst.sse.ui.internal.IReleasable;
-import org.eclipse.wst.sse.ui.internal.StructuredTextViewer;
-import org.eclipse.wst.sse.ui.internal.contentassist.IResourceDependentProcessor;
-import org.eclipse.wst.xml.core.internal.provisional.document.IDOMDocument;
-import org.eclipse.wst.xml.core.internal.provisional.document.IDOMModel;
-import org.osgi.framework.Bundle;
-import org.osgi.framework.BundleException;
-
-
-/**
- * @since 1.0
- */
-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 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);
-
-		JSPProposalCollector collector = null;
-		
-		IDOMModel xmlModel = null;
-		try {
-			if (viewer instanceof StructuredTextViewer)
-				fViewer = (StructuredTextViewer) viewer;
-
-			xmlModel = (IDOMModel) StructuredModelManager.getModelManager().getExistingModelForRead(fViewer.getDocument());
-
-			IDOMDocument xmlDoc = xmlModel.getDocument();
-			if (fTranslationAdapter == null)
-				fTranslationAdapter = (JSPTranslationAdapter) xmlDoc.getAdapterFor(IJSPTranslation.class);
-			if (fTranslationAdapter != null) {
-
-				JSPTranslation translation = fTranslationAdapter.getJSPTranslation();
-				fJavaPosition = translation.getJavaOffset(getDocumentPosition());
-
-				if (DEBUG)
-					System.out.println(debug(translation));
-
-				try {
-
-					ICompilationUnit cu = translation.getCompilationUnit();
-
-					// can't get java proposals w/out a compilation unit
-					if (cu == null)
-						return new ICompletionProposal[0];
-					
-					collector = new JSPProposalCollector(cu, translation);
-					synchronized (cu) {
-						cu.codeComplete(fJavaPosition, collector, 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 = new ICompletionProposal[0];
-		if(collector != null) {
-			results = collector.getJSPCompletionProposals();
-			if (results == null || results.length < 1)
-				fErrorMessage = JSPUIMessages.Java_Content_Assist_is_not_UI_;
-		}
-		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();
-	}
-
-	/**
-	 * 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: get appropriate error message
-		// 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();
-
-		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$
-		}
-	}
-
-	public void release() {
-		fTranslationAdapter = null;
-	}
-
-	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/JSPCompletionProposal.java b/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/contentassist/JSPCompletionProposal.java
deleted file mode 100644
index eae7383..0000000
--- a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/contentassist/JSPCompletionProposal.java
+++ /dev/null
@@ -1,27 +0,0 @@
-package org.eclipse.jst.jsp.ui.internal.contentassist;
-
-import org.eclipse.jdt.ui.text.java.IJavaCompletionProposal;
-import org.eclipse.jface.text.ITextViewer;
-import org.eclipse.jface.text.contentassist.IContextInformation;
-import org.eclipse.swt.graphics.Image;
-import org.eclipse.wst.sse.ui.internal.contentassist.CustomCompletionProposal;
-
-/**
- * Implements IJavaCompletionProposal for use with JSPProposalCollector.
- *
- * @since 1.0
- */
-public class JSPCompletionProposal extends CustomCompletionProposal implements IJavaCompletionProposal  {
-
-	public JSPCompletionProposal(String replacementString, int replacementOffset, int replacementLength, int cursorPosition, Image image, String displayString, IContextInformation contextInformation, String additionalProposalInfo, int relevance, boolean updateReplacementLengthOnValidate) {
-		super(replacementString, replacementOffset, replacementLength, cursorPosition, image, displayString, contextInformation, additionalProposalInfo, relevance, updateReplacementLengthOnValidate);
-	}
-	
-	/**
-	 * Sets cursor position after applying.
-	 */
-	public void apply(ITextViewer viewer, char trigger, int stateMask, int offset) {
-		super.apply(viewer, trigger, stateMask, offset);
-		viewer.setSelectedRange(getCursorPosition(), 0);
-	}
-}
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 c49f5c3..0000000
--- a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/contentassist/JSPContentAssistProcessor.java
+++ /dev/null
@@ -1,1236 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies 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.internal.contentmodel.TaglibController;
-import org.eclipse.jst.jsp.core.internal.contentmodel.tld.TLDCMDocumentManager;
-import org.eclipse.jst.jsp.core.internal.document.PageDirectiveAdapter;
-import org.eclipse.jst.jsp.core.internal.document.PageDirectiveAdapterFactory;
-import org.eclipse.jst.jsp.core.internal.provisional.JSP11Namespace;
-import org.eclipse.jst.jsp.core.internal.provisional.JSP12Namespace;
-import org.eclipse.jst.jsp.core.internal.provisional.contenttype.ContentTypeIdForJSP;
-import org.eclipse.jst.jsp.core.internal.provisional.text.IJSPPartitionTypes;
-import org.eclipse.jst.jsp.core.internal.regions.DOMJSPRegionContexts;
-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.internal.contentassist.CSSContentAssistProcessor;
-import org.eclipse.wst.html.core.internal.contentmodel.HTMLCMDocumentFactory;
-import org.eclipse.wst.html.core.internal.contentmodel.HTMLElementDeclaration;
-import org.eclipse.wst.html.core.internal.contentmodel.JSPCMDocument;
-import org.eclipse.wst.html.core.internal.provisional.HTMLCMProperties;
-import org.eclipse.wst.html.core.internal.provisional.text.IHTMLPartitionTypes;
-import org.eclipse.wst.html.ui.internal.contentassist.HTMLContentAssistProcessor;
-import org.eclipse.wst.javascript.ui.internal.common.contentassist.JavaScriptContentAssistProcessor;
-import org.eclipse.wst.sse.core.internal.ltk.parser.BlockMarker;
-import org.eclipse.wst.sse.core.internal.provisional.IModelManager;
-import org.eclipse.wst.sse.core.internal.provisional.INodeNotifier;
-import org.eclipse.wst.sse.core.internal.provisional.IStructuredModel;
-import org.eclipse.wst.sse.core.internal.provisional.IndexedRegion;
-import org.eclipse.wst.sse.core.internal.provisional.StructuredModelManager;
-import org.eclipse.wst.sse.core.internal.provisional.text.IStructuredDocument;
-import org.eclipse.wst.sse.core.internal.provisional.text.IStructuredDocumentRegion;
-import org.eclipse.wst.sse.core.internal.provisional.text.IStructuredPartitionTypes;
-import org.eclipse.wst.sse.core.internal.provisional.text.IStructuredPartitioning;
-import org.eclipse.wst.sse.core.internal.provisional.text.ITextRegion;
-import org.eclipse.wst.sse.core.internal.provisional.text.ITextRegionContainer;
-import org.eclipse.wst.sse.core.internal.provisional.text.ITextRegionList;
-import org.eclipse.wst.sse.core.internal.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.internal.provisional.registry.AdapterFactoryProvider;
-import org.eclipse.wst.sse.ui.internal.provisional.registry.AdapterFactoryRegistry;
-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.provisional.contentmodel.CMDocType;
-import org.eclipse.wst.xml.core.internal.provisional.contentmodel.CMDocumentTracker;
-import org.eclipse.wst.xml.core.internal.provisional.contentmodel.CMNodeWrapper;
-import org.eclipse.wst.xml.core.internal.provisional.document.IDOMModel;
-import org.eclipse.wst.xml.core.internal.provisional.document.IDOMNode;
-import org.eclipse.wst.xml.core.internal.provisional.text.IXMLPartitions;
-import org.eclipse.wst.xml.core.internal.regions.DOMRegionContext;
-import org.eclipse.wst.xml.core.internal.ssemodelquery.ModelQueryAdapter;
-import org.eclipse.wst.xml.ui.internal.contentassist.AbstractContentAssistProcessor;
-import org.eclipse.wst.xml.ui.internal.contentassist.ContentAssistRequest;
-import org.eclipse.wst.xml.ui.internal.contentassist.NonValidatingModelQueryAction;
-import org.eclipse.wst.xml.ui.internal.contentassist.ProposalComparator;
-import org.eclipse.wst.xml.ui.internal.contentassist.XMLContentAssistProcessor;
-import org.eclipse.wst.xml.ui.internal.contentassist.XMLContentAssistUtilities;
-import org.eclipse.wst.xml.ui.internal.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
- * 
- * @since 1.0
- */
-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(IHTMLPartitionTypes.HTML_DEFAULT, htmlProcessor);
-		fPartitionToProcessorMap.put(IXMLPartitions.XML_DEFAULT, xmlProcessor);
-		fPartitionToProcessorMap.put(IStructuredPartitionTypes.DEFAULT_PARTITION, htmlProcessor);
-		fPartitionToProcessorMap.put(IJSPPartitionTypes.JSP_DEFAULT, jspJavaProcessor);
-		fPartitionToProcessorMap.put(IJSPPartitionTypes.JSP_DIRECTIVE, xmlProcessor);
-		fPartitionToProcessorMap.put(IHTMLPartitionTypes.HTML_COMMENT, htmlProcessor);
-		fPartitionToProcessorMap.put(IJSPPartitionTypes.JSP_CONTENT_JAVASCRIPT, javascriptProcessor);
-		fPartitionToProcessorMap.put(IHTMLPartitionTypes.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);
-
-		IDOMNode node = (IDOMNode) 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() == DOMRegionContext.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() == DOMRegionContext.XML_TAG_ATTRIBUTE_EQUALS && contentAssistRequest.getReplacementLength() == 0) || (contentAssistRequest.getRegion().getType() == DOMRegionContext.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);
-			}
-		}
-
-		else if (contentAssistRequest.getRegion().getType() == DOMRegionContext.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);
-				IDOMNode xmlNode = null;
-				IDOMModel xmlOuterModel = null;
-				if (contentAssistRequest.getNode() instanceof IDOMNode) {
-					xmlNode = (IDOMNode) 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++) {
-						IDOMNode useBean = (IDOMNode) 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 IDOMNode) {
-			/*
-			 * 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 IDOMNode)
-					textInsertionOffset = ((IDOMNode) nodeAlreadyAtIndex).getEndOffset();
-			} else {
-				textInsertionOffset = ((IDOMNode) node).getStartOffset();
-			}
-			TLDCMDocumentManager mgr = TaglibController.getTLDCMDocumentManager(((IDOMNode) 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) ((IDOMNode) node).getAdapterFor(ModelQueryAdapter.class);
-			else
-				mqAdapter = (ModelQueryAdapter) ((IDOMNode) 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")) || ((((IDOMNode) docElement).getStartStructuredDocumentRegion() != null || ((IDOMNode) 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;
-							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);
-		IStructuredDocument structuredDocument = (IStructuredDocument)viewer.getDocument();
-		
-		IStructuredDocumentRegion fn = structuredDocument.getRegionAtCharacterOffset(documentPosition);
-
-		// ////////////////////////////////////////////////////////////////////////////
-		// ANOTHER WORKAROUND UNTIL PARTITIONING TAKES CARE OF THIS
-		// check for xml-jsp tags...
-		// CMVC 243657
-		if (partitionType == IJSPPartitionTypes.JSP_DIRECTIVE && fn != null) {
-			IStructuredDocumentRegion possibleXMLJSP = ((fn.getType() == DOMRegionContext.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() == DOMRegionContext.XML_TAG_OPEN && documentPosition == possibleXMLJSP.getStartOffset()) {
-					// do regular jsp content assist
-				} else if (xmlOpenOrClose.getType() == DOMRegionContext.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 == IJSPPartitionTypes.JSP_CONTENT_JAVASCRIPT || partitionType == IHTMLPartitionTypes.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() == DOMRegionContext.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() == DOMRegionContext.XML_TAG_NAME) {
-							return getJSPJavaCompletionProposals(viewer, documentPosition);
-						}
-					}
-					sdr = sdr.getNext();
-				}
-			}
-		}
-		// /////////////////////////////////////////////////////////////////////////
-
-		// check special JSP delimiter cases
-		if (fn != null && partitionType == IJSPPartitionTypes.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() == DOMRegionContext.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() == DOMRegionContext.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 != IJSPPartitionTypes.JSP_CONTENT_JAVASCRIPT) { // this
-							// check
-							// is
-							// failing
-							// for
-							// XML-JSP
-							// (region
-							// is
-							// not
-							// javascript...)
-							return getJSPJavaCompletionProposals(viewer, documentPosition);
-						} 
-						partitionType = IJSPPartitionTypes.JSP_CONTENT_JAVASCRIPT;
-					}
-				} else if ((firstRegion.getType() == DOMRegionContext.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 != IJSPPartitionTypes.JSP_CONTENT_JAVASCRIPT) {
-								return getJSPJavaCompletionProposals(viewer, documentPosition);
-							} 
-							partitionType = IJSPPartitionTypes.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() == DOMRegionContext.XML_CDATA_TEXT || fn.getType() == DOMRegionContext.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() == DOMRegionContext.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);
-				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 == IJSPPartitionTypes.JSP_CONTENT_JAVASCRIPT || partitionType == IHTMLPartitionTypes.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 == IJSPPartitionTypes.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()); //$NON-NLS-1$
-			System.out.println("relevance > " + ((CustomCompletionProposal) test).getRelevance()); //$NON-NLS-1$
-
-			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(IHTMLPartitionTypes.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(IJSPPartitionTypes.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(), IStructuredPartitioning.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();
-	}
-
-
-	public char[] getCompletionProposalAutoActivationCharacters() {
-		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")) || ((((IDOMNode) docElement).getStartStructuredDocumentRegion() == null && ((IDOMNode) 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, IDOMNode, IDOMNode)
-	 */
-	protected ContentAssistRequest computeCompletionProposals(int documentPosition, String matchString, ITextRegion completionRegion, IDOMNode treeNode, IDOMNode 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() == DOMRegionContext.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]);
-				}
-			}
-		}
-	}
-
-
-	protected void addEntityProposals(ContentAssistRequest contentAssistRequest, int documentPosition, ITextRegion completionRegion, IDOMNode treeNode) {
-		// ignore
-	}
-
-	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 01be41d..0000000
--- a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/contentassist/JSPDummyContentAssistProcessor.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.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.internal.provisional.text.IStructuredDocumentRegion;
-import org.eclipse.wst.sse.core.internal.provisional.text.ITextRegion;
-import org.eclipse.wst.sse.ui.internal.contentassist.IResourceDependentProcessor;
-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.core.internal.provisional.document.IDOMNode;
-import org.eclipse.wst.xml.ui.internal.contentassist.AbstractContentAssistProcessor;
-import org.eclipse.wst.xml.ui.internal.contentassist.ContentAssistRequest;
-import org.eclipse.wst.xml.ui.internal.contentassist.XMLContentModelGenerator;
-import org.w3c.dom.Document;
-import org.w3c.dom.Element;
-import org.w3c.dom.Node;
-
-/**
- * This class is a "null" version of AbstractContentAssistProcessor
- * 
- * @since 1.0
- */
-public class JSPDummyContentAssistProcessor extends AbstractContentAssistProcessor implements IResourceDependentProcessor {
-
-	IResource fResource = null;
-
-
-	protected void addAttributeNameProposals(ContentAssistRequest contentAssistRequest) {
-		super.addAttributeNameProposals(contentAssistRequest);
-	}
-
-
-	protected void addAttributeValueProposals(ContentAssistRequest contentAssistRequest) {
-		super.addAttributeValueProposals(contentAssistRequest);
-	}
-
-
-	protected void addCommentProposal(ContentAssistRequest contentAssistRequest) {
-		super.addCommentProposal(contentAssistRequest);
-	}
-
-
-	protected void addContent(List contentList, CMContent content) {
-		super.addContent(contentList, content);
-	}
-
-
-	protected void addDocTypeProposal(ContentAssistRequest contentAssistRequest) {
-		super.addDocTypeProposal(contentAssistRequest);
-	}
-
-
-	protected void addEmptyDocumentProposals(ContentAssistRequest contentAssistRequest) {
-		super.addEmptyDocumentProposals(contentAssistRequest);
-	}
-
-
-	protected void addEndTagNameProposals(ContentAssistRequest contentAssistRequest) {
-		super.addEndTagNameProposals(contentAssistRequest);
-	}
-
-
-	protected void addEndTagProposals(ContentAssistRequest contentAssistRequest) {
-		super.addEndTagProposals(contentAssistRequest);
-	}
-
-
-	protected void addEntityProposals(ContentAssistRequest contentAssistRequest, int documentPosition, ITextRegion completionRegion, IDOMNode treeNode) {
-		super.addEntityProposals(contentAssistRequest, documentPosition, completionRegion, treeNode);
-	}
-
-
-	protected void addEntityProposals(Vector proposals, Properties map, String key, int nodeOffset, IStructuredDocumentRegion parent, ITextRegion completionRegion) {
-		super.addEntityProposals(proposals, map, key, nodeOffset, parent, completionRegion);
-	}
-
-
-	protected void addPCDATAProposal(String nodeName, ContentAssistRequest contentAssistRequest) {
-		super.addPCDATAProposal(nodeName, contentAssistRequest);
-	}
-
-
-	protected void addStartDocumentProposals(ContentAssistRequest contentAssistRequest) {
-		super.addStartDocumentProposals(contentAssistRequest);
-	}
-
-
-	protected void addTagCloseProposals(ContentAssistRequest contentAssistRequest) {
-		super.addTagCloseProposals(contentAssistRequest);
-	}
-
-
-	protected void addTagInsertionProposals(ContentAssistRequest contentAssistRequest, int childPosition) {
-		super.addTagInsertionProposals(contentAssistRequest, childPosition);
-	}
-
-
-	protected void addTagNameProposals(ContentAssistRequest contentAssistRequest, int childPosition) {
-		super.addTagNameProposals(contentAssistRequest, childPosition);
-	}
-
-
-	protected void addXMLProposal(ContentAssistRequest contentAssistRequest) {
-		super.addXMLProposal(contentAssistRequest);
-	}
-
-
-	protected boolean attributeInList(IDOMNode node, Node parent, CMNode cmnode) {
-		return super.attributeInList(node, parent, cmnode);
-	}
-
-
-	protected boolean beginsWith(String aString, String prefix) {
-		return super.beginsWith(aString, prefix);
-	}
-
-
-	protected ContentAssistRequest computeAttributeProposals(int documentPosition, String matchString, ITextRegion completionRegion, IDOMNode nodeAtOffset, IDOMNode node) {
-		return super.computeAttributeProposals(documentPosition, matchString, completionRegion, nodeAtOffset, node);
-	}
-
-
-	protected ContentAssistRequest computeAttributeValueProposals(int documentPosition, String matchString, ITextRegion completionRegion, IDOMNode nodeAtOffset, IDOMNode node) {
-		return super.computeAttributeValueProposals(documentPosition, matchString, completionRegion, nodeAtOffset, node);
-	}
-
-
-	protected ContentAssistRequest computeCompletionProposals(int documentPosition, String matchString, ITextRegion completionRegion, IDOMNode treeNode, IDOMNode xmlnode) {
-		return super.computeCompletionProposals(documentPosition, matchString, completionRegion, treeNode, xmlnode);
-	}
-
-
-	public ICompletionProposal[] computeCompletionProposals(ITextViewer viewer, int documentOffset) {
-		return super.computeCompletionProposals(viewer, documentOffset);
-	}
-
-
-	protected ContentAssistRequest computeContentProposals(int documentPosition, String matchString, ITextRegion completionRegion, IDOMNode nodeAtOffset, IDOMNode 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);
-	}
-
-
-	protected ContentAssistRequest computeEndTagOpenProposals(int documentPosition, String matchString, ITextRegion completionRegion, IDOMNode nodeAtOffset, IDOMNode node) {
-		return super.computeEndTagOpenProposals(documentPosition, matchString, completionRegion, nodeAtOffset, node);
-	}
-
-	protected ICompletionProposal[] computeEntityReferenceProposals(int documentPosition, ITextRegion completionRegion, IDOMNode treeNode) {
-		return super.computeEntityReferenceProposals(documentPosition, completionRegion, treeNode);
-	}
-
-	protected ContentAssistRequest computeEqualsProposals(int documentPosition, String matchString, ITextRegion completionRegion, IDOMNode nodeAtOffset, IDOMNode node) {
-		return super.computeEqualsProposals(documentPosition, matchString, completionRegion, nodeAtOffset, node);
-	}
-
-	protected ContentAssistRequest computeStartDocumentProposals(int documentPosition, String matchString, ITextRegion completionRegion, IDOMNode nodeAtOffset, IDOMNode node) {
-		return super.computeStartDocumentProposals(documentPosition, matchString, completionRegion, nodeAtOffset, node);
-	}
-
-	protected ContentAssistRequest computeTagCloseProposals(int documentPosition, String matchString, ITextRegion completionRegion, IDOMNode nodeAtOffset, IDOMNode node) {
-		return super.computeTagCloseProposals(documentPosition, matchString, completionRegion, nodeAtOffset, node);
-	}
-
-	protected ContentAssistRequest computeTagNameProposals(int documentPosition, String matchString, ITextRegion completionRegion, IDOMNode nodeAtOffset, IDOMNode node) {
-		return super.computeTagNameProposals(documentPosition, matchString, completionRegion, nodeAtOffset, node);
-	}
-
-	protected ContentAssistRequest computeTagOpenProposals(int documentPosition, String matchString, ITextRegion completionRegion, IDOMNode nodeAtOffset, IDOMNode node) {
-		return super.computeTagOpenProposals(documentPosition, matchString, completionRegion, nodeAtOffset, node);
-	}
-
-	protected String getAdditionalInfo(CMNode parentOrOwner, CMNode cmnode) {
-		return super.getAdditionalInfo(parentOrOwner, cmnode);
-	}
-
-	protected List getAvailableChildrenAtIndex(Element parent, int index) {
-		return super.getAvailableChildrenAtIndex(parent, index);
-	}
-
-	protected List getAvailableRootChildren(Document document, int childIndex) {
-		return super.getAvailableRootChildren(document, childIndex);
-	}
-
-	protected CMElementDeclaration getCMElementDeclaration(Node node) {
-		return super.getCMElementDeclaration(node);
-	}
-
-	public char[] getCompletionProposalAutoActivationCharacters() {
-		return super.getCompletionProposalAutoActivationCharacters();
-	}
-
-	protected ITextRegion getCompletionRegion(int offset, IStructuredDocumentRegion flatNode) {
-		return super.getCompletionRegion(offset, flatNode);
-	}
-
-	protected ITextRegion getCompletionRegion(int documentPosition, Node domnode) {
-		return super.getCompletionRegion(documentPosition, domnode);
-	}
-
-	public XMLContentModelGenerator getContentGenerator() {
-		return super.getContentGenerator();
-	}
-
-	public char[] getContextInformationAutoActivationCharacters() {
-		return super.getContextInformationAutoActivationCharacters();
-	}
-
-	public IContextInformationValidator getContextInformationValidator() {
-		return super.getContextInformationValidator();
-	}
-
-	protected int getElementPosition(Node child) {
-		return super.getElementPosition(child);
-	}
-
-	/**
-	 * @see org.eclipse.jface.text.contentassist.IContentAssistProcessor#getErrorMessage()
-	 */
-	public String getErrorMessage() {
-		return super.getErrorMessage();
-	}
-
-	protected String getMatchString(IStructuredDocumentRegion parent, ITextRegion aRegion, int offset) {
-		return super.getMatchString(parent, aRegion, offset);
-	}
-
-
-	protected ITextRegion getNameRegion(IStructuredDocumentRegion flatNode) {
-		return super.getNameRegion(flatNode);
-	}
-
-
-	protected List getPossibleDataTypeValues(Node node, CMAttributeDeclaration ad) {
-		return super.getPossibleDataTypeValues(node, ad);
-	}
-
-	protected String getRequiredName(Node parentOrOwner, CMNode cmnode) {
-		return super.getRequiredName(parentOrOwner, cmnode);
-	}
-
-	protected String getRequiredText(Node parentOrOwner, CMAttributeDeclaration attrDecl) {
-		return super.getRequiredText(parentOrOwner, attrDecl);
-	}
-
-	protected String getRequiredText(Node parentOrOwner, CMElementDeclaration elementDecl) {
-		return super.getRequiredText(parentOrOwner, elementDecl);
-	}
-
-	protected List getValidCMNodes(int childPosition, int kindOfAction, List modelQueryActions) {
-		return super.getValidCMNodes(childPosition, kindOfAction, modelQueryActions);
-	}
-
-	protected void init() {
-		super.init();
-	}
-
-	public void initialize(IResource iResource) {
-		fResource = iResource;
-	}
-
-	protected boolean isCloseRegion(ITextRegion region) {
-		return super.isCloseRegion(region);
-	}
-
-	protected boolean isNameRegion(ITextRegion region) {
-		return super.isNameRegion(region);
-	}
-
-	protected boolean isQuote(String string) {
-		return super.isQuote(string);
-	}
-
-	protected Properties mapToProperties(CMNamedNodeMap map) {
-		return super.mapToProperties(map);
-	}
-
-
-	public void release() {
-		super.release();
-	}
-
-	protected void setErrorMessage(String errorMessage, String prepend, String append) {
-		super.setErrorMessage(errorMessage, prepend, append);
-	}
-
-	protected void setErrorMessage(String errorMessage, String append) {
-		super.setErrorMessage(errorMessage, append);
-	}
-
-	public void setErrorMessage(String errorMessage) {
-		super.setErrorMessage(errorMessage);
-	}
-
-	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 1bd8650..0000000
--- a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/contentassist/JSPJavaContentAssistProcessor.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.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.internal.provisional.text.IJSPPartitionTypes;
-import org.eclipse.jst.jsp.core.internal.regions.DOMJSPRegionContexts;
-import org.eclipse.jst.jsp.ui.internal.JSPUIMessages;
-import org.eclipse.wst.sse.core.internal.provisional.IndexedRegion;
-import org.eclipse.wst.sse.core.internal.provisional.text.IStructuredDocumentRegion;
-import org.eclipse.wst.sse.core.internal.provisional.text.ITextRegion;
-import org.eclipse.wst.sse.core.internal.provisional.text.ITextRegionContainer;
-import org.eclipse.wst.sse.core.internal.provisional.text.ITextRegionList;
-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.CustomCompletionProposal;
-import org.eclipse.wst.sse.ui.internal.contentassist.IResourceDependentProcessor;
-import org.eclipse.wst.xml.core.internal.provisional.document.IDOMNode;
-import org.eclipse.wst.xml.core.internal.regions.DOMRegionContext;
-import org.eclipse.wst.xml.ui.internal.contentassist.XMLRelevanceConstants;
-import org.eclipse.wst.xml.ui.internal.util.SharedXMLEditorPluginImageHelper;
-
-/**
- * @since 1.0
- */
-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 = JSPUIMessages.Content_Assist_not_availab_UI_;
-	protected String fErrorMessage = null;
-	private JSPCompletionProcessor fJspCompletionProcessor = null;
-
-	public JSPJavaContentAssistProcessor() {
-		super();
-	}
-
-	public JSPJavaContentAssistProcessor(IResource file) {
-		super();
-		fResource = file;
-	}
-
-	/**
-	 * 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;
-		}
-
-		IDOMNode xNode = null;
-		IStructuredDocumentRegion flat = null;
-		if (treeNode instanceof IDOMNode) {
-			xNode = (IDOMNode) 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() != DOMRegionContext.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;
-		//			}
-		//		}
-
-		return results;
-	}
-
-	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() == DOMRegionContext.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 == IJSPPartitionTypes.JSP_DEFAULT || type == IJSPPartitionTypes.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 4a2e028..0000000
--- a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/contentassist/JSPPropertyContentAssistProcessor.java
+++ /dev/null
@@ -1,219 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies 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.internal.provisional.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.internal.provisional.IndexedRegion;
-import org.eclipse.wst.sse.core.internal.provisional.text.IStructuredDocumentRegion;
-import org.eclipse.wst.sse.core.internal.provisional.text.ITextRegion;
-import org.eclipse.wst.sse.core.internal.provisional.text.ITextRegionContainer;
-import org.eclipse.wst.sse.core.internal.provisional.text.ITextRegionList;
-import org.eclipse.wst.sse.core.internal.util.StringUtils;
-import org.eclipse.wst.sse.ui.internal.contentassist.CustomCompletionProposal;
-import org.eclipse.wst.xml.core.internal.provisional.document.IDOMNode;
-import org.eclipse.wst.xml.core.internal.regions.DOMRegionContext;
-import org.eclipse.wst.xml.ui.internal.contentassist.ContentAssistRequest;
-import org.eclipse.wst.xml.ui.internal.contentassist.XMLRelevanceConstants;
-import org.eclipse.wst.xml.ui.internal.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.
- * @since 1.0
- */
-public class JSPPropertyContentAssistProcessor extends JSPDummyContentAssistProcessor {
-
-	protected IResource resource = null;
-
-	public JSPPropertyContentAssistProcessor() {
-		super();
-	}
-
-	protected void addAttributeValueProposals(ContentAssistRequest contentAssistRequest) {
-		IDOMNode node = (IDOMNode) 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() == DOMRegionContext.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() == DOMRegionContext.XML_TAG_NAME && open.getText(tagNameRegion).trim().equals("jsp:setProperty")) { //$NON-NLS-1$
-				isGetProperty = false;
-				break;
-			}
-		}
-
-		String currentValue = null;
-		if (contentAssistRequest.getRegion().getType() == DOMRegionContext.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, IDOMNode 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
-					IBeanInfoProvider 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, IDOMNode 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;
-	}
-	
-	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/JSPProposalCollector.java b/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/contentassist/JSPProposalCollector.java
deleted file mode 100644
index 70aa294..0000000
--- a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/contentassist/JSPProposalCollector.java
+++ /dev/null
@@ -1,175 +0,0 @@
-package org.eclipse.jst.jsp.ui.internal.contentassist;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import org.eclipse.jdt.core.CompletionProposal;
-import org.eclipse.jdt.core.ICompilationUnit;
-import org.eclipse.jdt.core.Signature;
-import org.eclipse.jdt.ui.text.java.CompletionProposalCollector;
-import org.eclipse.jdt.ui.text.java.IJavaCompletionProposal;
-import org.eclipse.jface.text.contentassist.IContextInformation;
-import org.eclipse.jst.jsp.core.internal.java.JSP2ServletNameUtil;
-import org.eclipse.jst.jsp.core.internal.java.JSPTranslation;
-import org.eclipse.swt.graphics.Image;
-
-/**
- * Passed into ICodeComplete#codeComplete(int offset, CompletionRequestor requestor).
- * Adapts IJavaCompletionProposals to JSPCompletion proposals.
- * This includes:
- *  - translating offsets
- *  - "fixing" up display strings
- *  - filtering some unwanted proposals
- *
- * @since 1.0
- */
-public class JSPProposalCollector extends CompletionProposalCollector {
-
-	private String fJspName;
-	private String fMangledName;
-	private JSPTranslation fTranslation;
-	
-	public JSPProposalCollector(ICompilationUnit cu, JSPTranslation translation) {
-		super(cu);
-		if(cu != null) {
-			// set some names for fixing up mangled name in proposals
-			// set mangled (servlet) name
-			String cuName = cu.getPath().lastSegment();
-			setMangledName(cuName.substring(0, cuName.lastIndexOf('.')));
-			// set name of jsp file
-			String unmangled = JSP2ServletNameUtil.unmangle(cuName);
-			setJspName(unmangled.substring(unmangled.lastIndexOf('/') + 1));
-		}
-		
-		if(translation == null)
-			throw new IllegalArgumentException("JSPTranslation cannot be null"); //$NON-NLS-1$
-		
-		fTranslation = translation;
-	}
-
-	/**
-	 * Ensures that we only return JSPCompletionProposals.
-	 * @return an array of JSPCompletionProposals
-	 */
-	public JSPCompletionProposal[] getJSPCompletionProposals() {
-		List results = new ArrayList();
-		IJavaCompletionProposal[] javaProposals = getJavaCompletionProposals();
-		// need to filter out non JSPCompletionProposals
-		// because their offsets haven't been translated
-		for (int i = 0; i < javaProposals.length; i++) {
-			if(javaProposals[i] instanceof JSPCompletionProposal)
-				results.add(javaProposals[i]);
-		}
-		return (JSPCompletionProposal[])results.toArray(new JSPCompletionProposal[results.size()]);
-	}
-	
-	/**
-	 * Overridden to:
-	 *  - translate Java -> JSP offsets
-	 *  - fix cursor-position-after
-	 *  - fix mangled servlet name in display string
-	 *  - remove unwanted proposals (servlet constructor)
-	 */
-	protected IJavaCompletionProposal createJavaCompletionProposal(CompletionProposal proposal) {
-		
-		JSPCompletionProposal jspProposal = null;
-		
-		// from proposal
-		String completion = String.valueOf(proposal.getCompletion());
-		String mangledName = getMangledName();
-		
-		// ignore constructor proposals
-		// (they will include mangled servlet name)
-		if(mangledName != null && completion.indexOf(mangledName) == -1) {
-			
-			// java offset
-			int offset = proposal.getReplaceStart();
-			// replacement length
-			int length = proposal.getReplaceEnd() - offset;
-			// translate offset from Java > JSP
-			offset = fTranslation.getJspOffset(offset);
-			// cursor position after must be calculated
-			int positionAfter = calculatePositionAfter(proposal, completion, offset);
-			
-			// from java proposal
-			IJavaCompletionProposal javaProposal = super.createJavaCompletionProposal(proposal);
-			Image image = javaProposal.getImage();
-			String displayString = javaProposal.getDisplayString();
-			displayString = fixupDisplayString(displayString);
-			IContextInformation contextInformation = javaProposal.getContextInformation();
-			String additionalInfo = javaProposal.getAdditionalProposalInfo();
-			int relevance = javaProposal.getRelevance();
-			
-			boolean updateLengthOnValidate = true;
-			
-			jspProposal = new JSPCompletionProposal(completion, offset, length, positionAfter, image, displayString, contextInformation, additionalInfo, relevance, updateLengthOnValidate);
-		}
-		return jspProposal;
-	}
-
-	/**
-	 * Cacluates the where the cursor should be after applying this proposal.
-	 * eg. method(|) if the method proposal chosen had params.
-	 * 
-	 * @param proposal
-	 * @param completion
-	 * @param currentCursorOffset
-	 * @return
-	 */
-	private int calculatePositionAfter(CompletionProposal proposal, String completion, int currentCursorOffset) {
-		// calculate cursor position after
-		int positionAfter = completion.length();
-		int kind = proposal.getKind();
-		
-		// may need better logic here...
-		// put cursor inside parenthesis if there's params
-		// only checking for any kind of declaration
-		if(kind == CompletionProposal.ANONYMOUS_CLASS_DECLARATION || kind == CompletionProposal.METHOD_DECLARATION || kind == CompletionProposal.POTENTIAL_METHOD_DECLARATION || kind == CompletionProposal.METHOD_REF) {
-			String[] params = Signature.getParameterTypes(String.valueOf(proposal.getSignature()));
-			if(completion.length() > 0 && params.length > 0)
-				positionAfter--;
-		}
-		return positionAfter;
-	}
-
-	/**
-	 * Replaces mangled (servlet) name with jsp file name.
-	 * 
-	 * @param displayString
-	 * @return
-	 */
-	private String fixupDisplayString(String displayString) {
-		StringBuffer fixedName = new StringBuffer(displayString);
-		String mangledName = getMangledName();
-		if(mangledName != null) {
-			int index = displayString.indexOf(mangledName);
-			if(index != -1) {
-				fixedName = new StringBuffer();
-				fixedName.append(displayString.substring(0, index));
-				fixedName.append(getJspName());
-				fixedName.append(displayString.substring(index + mangledName.length()));
-			}
-		}
-		return fixedName.toString();
-	}
-	
-	private String getMangledName() {
-		return fMangledName;
-	}
-
-	private void setMangledName(String mangledName) {
-		fMangledName = mangledName;
-	}
-
-	private String getJspName() {
-		return fJspName;
-	}
-
-	private void setJspName(String jspName) {
-		fJspName = jspName;
-	}
-	
-	static char[] getTypeTriggers() {
-		return TYPE_TRIGGERS;
-	}
-}
\ 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 c3dd04d..0000000
--- a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/contentassist/JSPTemplateCompletionProcessor.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.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.
- * 
- * @since 1.0
- */
-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 de6b002..0000000
--- a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/contentassist/JSPUseBeanContentAssistProcessor.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.ui.internal.contentassist;
-
-
-
-import org.eclipse.jface.text.contentassist.ICompletionProposal;
-import org.eclipse.jst.jsp.core.internal.provisional.JSP11Namespace;
-import org.eclipse.wst.sse.core.internal.provisional.text.IStructuredDocumentRegion;
-import org.eclipse.wst.sse.core.internal.provisional.text.ITextRegion;
-import org.eclipse.wst.sse.core.internal.provisional.text.ITextRegionContainer;
-import org.eclipse.wst.sse.core.internal.provisional.text.ITextRegionList;
-import org.eclipse.wst.sse.core.internal.util.StringUtils;
-import org.eclipse.wst.sse.ui.internal.contentassist.CustomCompletionProposal;
-import org.eclipse.wst.xml.core.internal.provisional.document.IDOMNode;
-import org.eclipse.wst.xml.core.internal.regions.DOMRegionContext;
-import org.eclipse.wst.xml.ui.internal.contentassist.ContentAssistRequest;
-
-/**
- * @since 1.0
- */
-public class JSPUseBeanContentAssistProcessor extends JSPDummyContentAssistProcessor {
-
-	public JSPUseBeanContentAssistProcessor() {
-		super();
-	}
-
-	protected void addAttributeValueProposals(ContentAssistRequest contentAssistRequest) {
-
-		IDOMNode node = (IDOMNode) 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() == DOMRegionContext.XML_TAG_ATTRIBUTE_NAME)
-				break;
-		}
-
-		String attributeName = null;
-		if (nameRegion != null)
-			attributeName = open.getText(nameRegion);
-
-		String currentValue = null;
-		if (contentAssistRequest.getRegion().getType() == DOMRegionContext.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)) {
-				// class is the concrete implementation 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)) {
-				// type is the more general type for the bean
-				// which means it may be an interface
-				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);
-						}
-					}
-				}
-			}
-		}
-	}
-
-	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 c661c3b..0000000
--- a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/contentassist/JavaParameterListValidator.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.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;
-
-
-/**
- * @since 1.0
- */
-public class JavaParameterListValidator implements IContextInformationValidator, IContextInformationPresenter {
-    
-    private int fPosition;
-    private ITextViewer fViewer;
-    private IContextInformation fInformation;
-    
-    private int fCurrentParameter;
-    
-    /**
-     * @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 5029428..0000000
--- a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/contentassist/JavaTypeCompletionProposal.java
+++ /dev/null
@@ -1,300 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies 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.internal.provisional.JSP11Namespace;
-import org.eclipse.jst.jsp.core.internal.provisional.JSP12Namespace;
-import org.eclipse.jst.jsp.core.internal.regions.DOMJSPRegionContexts;
-import org.eclipse.swt.graphics.Image;
-import org.eclipse.wst.sse.core.internal.provisional.text.IStructuredDocument;
-import org.eclipse.wst.sse.core.internal.provisional.text.IStructuredDocumentRegion;
-import org.eclipse.wst.sse.core.internal.provisional.text.ITextRegion;
-import org.eclipse.wst.sse.core.internal.provisional.text.ITextRegionList;
-import org.eclipse.wst.sse.core.internal.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.internal.regions.DOMRegionContext;
-
-/**
- * An implementation of ICompletionProposal whose values can be
- * read after creation.
- * 
- * @since 1.0
- */
-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() == DOMRegionContext.XML_TAG_ATTRIBUTE_NAME) {
-				if (flatNode.getText(region).equals(JSP11Namespace.ATTR_NAME_IMPORT)) {
-					isImport = true;
-				}
-				else {
-					isImport = false;
-				}
-			}
-			else if (isImport && region.getType() == DOMRegionContext.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) {
-				// ignore
-			}
-
-			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);
-	}
-
-	// 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) {
-			// ignore
-		}
-
-		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 6c9a025..0000000
--- a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/contentassist/JavaTypeFinder.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.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.runtime.CoreException;
-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.SearchEngine;
-import org.eclipse.jdt.core.search.SearchPattern;
-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.internal.util.URIHelper;
-
-/**
- * @since 1.0
- */
-public class JavaTypeFinder {
-
-	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
-		}
-	}
-
-	private 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()]);
-	}
-
-	/**
-	 *
-	 * @param resource
-	 * @param replacementStart
-	 * @param replacementLength
-	 * @param searchFor IJavaSearchConstants.TYPE, IJavaSearchConstants.CLASS
-	 * @return
-	 */
-	private static ICompletionProposal[] findProposals(IResource resource, int replacementStart, int replacementLength, int searchFor, boolean ignoreAbstractClasses) {
-
-		JavaTypeNameRequestor requestor = new JavaTypeNameRequestor();
-		requestor.setJSPOffset(replacementStart);
-		requestor.setReplacementLength(replacementLength);
-		requestor.setIgnoreAbstractClasses(ignoreAbstractClasses);
-
-		try {
-			IJavaElement[] elements = new IJavaElement[]{getJavaProject(resource)};
-			IJavaSearchScope scope = SearchEngine.createJavaSearchScope(elements);
-			new SearchEngine().searchAllTypeNames(null, null, SearchPattern.R_PATTERN_MATCH | SearchPattern.R_PREFIX_MATCH, searchFor, scope, requestor, IJavaSearchConstants.WAIT_UNTIL_READY_TO_SEARCH, null);
-
-		}
-		catch (CoreException exc) {
-			Logger.logException(exc);
-		}
-		catch (Exception exc) { 
-			// JavaModel
-			Logger.logException(exc);
-		}
-		return requestor.getProposals();
-	}
-
-	public static ICompletionProposal[] getTypeProposals(IResource resource, int replacementStart, int replacementLength) {
-		return findProposals(resource, replacementStart, replacementLength, IJavaSearchConstants.TYPE, false);
-	}
-	
-	public static ICompletionProposal[] getClassProposals(IResource resource, int replacementStart, int replacementLength) {
-		return findProposals(resource, replacementStart, replacementLength, IJavaSearchConstants.CLASS, true);
-	}
-
-	private 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/JavaTypeNameRequestor.java b/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/contentassist/JavaTypeNameRequestor.java
deleted file mode 100644
index 5ebf45b..0000000
--- a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/contentassist/JavaTypeNameRequestor.java
+++ /dev/null
@@ -1,116 +0,0 @@
-package org.eclipse.jst.jsp.ui.internal.contentassist;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import org.eclipse.jdt.core.CompletionProposal;
-import org.eclipse.jdt.core.Flags;
-import org.eclipse.jdt.core.Signature;
-import org.eclipse.jdt.core.search.TypeNameRequestor;
-import org.eclipse.jdt.ui.text.java.CompletionProposalLabelProvider;
-import org.eclipse.jface.resource.ImageDescriptor;
-import org.eclipse.jst.jsp.ui.internal.editor.JSPEditorPluginImageHelper;
-import org.eclipse.swt.graphics.Image;
-import org.eclipse.wst.javascript.ui.internal.common.contentassist.IRelevanceConstants;
-
-/**
- * Use w/ JDT search engine to find all type names.
- * Creates proposals from matches reported.
- *
- * @since 1.0
- */
-public class JavaTypeNameRequestor extends TypeNameRequestor {
-	
-	private int fJSPOffset = -1;
-	private int fReplacementLength = -1;
-	private List fProposals = new ArrayList();
-	private boolean fIgnoreAbstractClasses = false;
-	
-	private CompletionProposalLabelProvider fLabelProvider = new CompletionProposalLabelProvider();
-	
-	public void acceptType(int modifiers, char[] packageName, char[] simpleTypeName, char[][] enclosingTypeNames, String path) {
-
-        int offset = getJSPOffset();
-        int length = getReplacementLength();
-		
-		// somehow offset or length was set incorrectly
-		if(offset == -1 || length == -1)
-			return;
-		// ignore abstract classes?
-		if(ignoreAbstractClasses() && Flags.isAbstract(modifiers))
-			return;
-		
-		Image image = calculateImage(modifiers);
-		
-        String containerNameString = new String(packageName);
-        String typeNameString = String.valueOf(simpleTypeName);
-			
-        // 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(typeQualifier);
-        }
-		
-        JavaTypeCompletionProposal proposal = new JavaTypeCompletionProposal(fullName, offset, length, fullName, image, typeNameString, typeQualifier, IRelevanceConstants.R_NONE, true);
-        proposal.setTriggerCharacters(JSPProposalCollector.getTypeTriggers());
-		fProposals.add(proposal);
-	}
-
-
-	private Image calculateImage(int modifiers) {
-		CompletionProposal p = CompletionProposal.create(CompletionProposal.TYPE_REF, getJSPOffset());
-		p.setFlags(modifiers);
-		ImageDescriptor descriptor = fLabelProvider.createImageDescriptor(p);
-		Image image = JSPEditorPluginImageHelper.getInstance().getImage(descriptor);
-		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();
-    }
-	
-	int getJSPOffset() {
-		return fJSPOffset;
-	}
-
-	void setJSPOffset(int offset) {
-		fJSPOffset = offset;
-	}
-
-	int getReplacementLength() {
-		return fReplacementLength;
-	}
-
-	void setReplacementLength(int replacementLength) {
-		fReplacementLength = replacementLength;
-	}
-	void setIgnoreAbstractClasses(boolean ignore) {
-		fIgnoreAbstractClasses = ignore;
-	}
-	boolean ignoreAbstractClasses() {
-		return fIgnoreAbstractClasses;
-	}
-	
-	JavaTypeCompletionProposal[] getProposals() {
-		return (JavaTypeCompletionProposal[])fProposals.toArray(new JavaTypeCompletionProposal[fProposals.size()]);
-	}
-}
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 9d3f2df..0000000
--- a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/contentassist/NoRegionContentAssistProcessorForJSP.java
+++ /dev/null
@@ -1,96 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies 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.internal.provisional.JSP11Namespace;
-import org.eclipse.jst.jsp.core.internal.provisional.text.IJSPPartitionTypes;
-import org.eclipse.jst.jsp.core.internal.regions.DOMJSPRegionContexts;
-import org.eclipse.wst.html.core.internal.provisional.text.IHTMLPartitionTypes;
-import org.eclipse.wst.html.ui.internal.contentassist.NoRegionContentAssistProcessorForHTML;
-import org.eclipse.wst.sse.core.internal.provisional.text.IStructuredDocument;
-import org.eclipse.wst.sse.core.internal.provisional.text.IStructuredDocumentRegion;
-import org.eclipse.wst.sse.core.internal.provisional.text.IStructuredPartitionTypes;
-import org.eclipse.wst.xml.core.internal.provisional.text.IXMLPartitions;
-
-/**
- * @since 1.0
- */
-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(IStructuredPartitionTypes.DEFAULT_PARTITION, jspContentAssistProcessor);
-		fPartitionToProcessorMap.put(IXMLPartitions.XML_DEFAULT, jspContentAssistProcessor);
-		fPartitionToProcessorMap.put(IHTMLPartitionTypes.HTML_DEFAULT, jspContentAssistProcessor);
-		fPartitionToProcessorMap.put(IHTMLPartitionTypes.HTML_COMMENT, jspContentAssistProcessor);
-		fPartitionToProcessorMap.put(IJSPPartitionTypes.JSP_DEFAULT, jspContentAssistProcessor);
-		// JSP directives
-		fPartitionToProcessorMap.put(IJSPPartitionTypes.JSP_DIRECTIVE, jspContentAssistProcessor);
-		// JSP delimiters
-		fPartitionToProcessorMap.put(IJSPPartitionTypes.JSP_CONTENT_DELIMITER, jspContentAssistProcessor);
-		// JSP JavaScript
-		fPartitionToProcessorMap.put(IJSPPartitionTypes.JSP_CONTENT_JAVASCRIPT, jspContentAssistProcessor);
-
-		IContentAssistProcessor jspJavaContentAssistProcessor = new JSPJavaContentAssistProcessor();
-		// JSP Java
-		fPartitionToProcessorMap.put(IJSPPartitionTypes.JSP_CONTENT_JAVA, jspJavaContentAssistProcessor);
-	}
-
-	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;
-	}
-
-	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(IJSPPartitionTypes.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/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 fec333c..0000000
--- a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/editor/ActionContributorJSP.java
+++ /dev/null
@@ -1,90 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies 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.JSPUIMessages;
-import org.eclipse.ui.IEditorPart;
-import org.eclipse.ui.IWorkbenchActionConstants;
-import org.eclipse.ui.texteditor.RetargetTextEditorAction;
-import org.eclipse.wst.html.ui.internal.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.core.jspsource.source", "org.eclipse.wst.sse.ui.StructuredTextEditor"}; //$NON-NLS-1$ //$NON-NLS-2$
-
-	public ActionContributorJSP() {
-		super();
-
-		ResourceBundle bundle = JSPUIMessages.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(JSPUIMessages.ActionContributorJSP_0, RefactorActionGroup.MENU_ID); //$NON-NLS-1$
-		refactorMenu.add(this.renameElementAction);
-		refactorMenu.add(this.moveElementAction);
-	}
-	
-
-	protected String[] getExtensionIDs() {
-		return EDITOR_IDS;
-	}
-	
-
-	protected void addToMenu(IMenuManager menu) {
-		super.addToMenu(menu);
-
-		menu.insertAfter(IWorkbenchActionConstants.M_EDIT, this.refactorMenu);
-	}
-	
-
-	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));
-	}
-	
-
-	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 37d6bdd..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.internal.document.PageDirectiveAdapter;
-import org.eclipse.jst.jsp.core.internal.provisional.JSP11Namespace;
-import org.eclipse.jst.jsp.core.internal.provisional.JSP12Namespace;
-import org.eclipse.wst.xml.core.internal.provisional.document.IDOMDocument;
-import org.eclipse.wst.xml.ui.internal.provisional.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 IDOMDocument) {
-				PageDirectiveAdapter adapter = (PageDirectiveAdapter) ((IDOMDocument) 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 d236080..0000000
--- a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/editor/StructuredTextEditorJSP.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.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.JSPUIMessages;
-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.internal.edit.ui.CleanupActionHTML;
-import org.eclipse.wst.html.ui.internal.search.HTMLFindOccurrencesAction;
-import org.eclipse.wst.sse.core.internal.provisional.StructuredModelManager;
-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.internal.provisional.document.IDOMDocument;
-import org.eclipse.wst.xml.core.internal.provisional.document.IDOMModel;
-import org.eclipse.wst.xml.ui.internal.actions.AddBlockCommentActionXML;
-import org.eclipse.wst.xml.ui.internal.actions.RemoveBlockCommentActionXML;
-import org.eclipse.wst.xml.ui.internal.actions.ToggleCommentActionXML;
-
-public class StructuredTextEditorJSP extends StructuredTextEditor {
-	private final static String UNDERSCORE = "_"; //$NON-NLS-1$
-	
-	protected void createActions() {
-		super.createActions();
-
-		ResourceBundle resourceBundle = JSPUIMessages.getResourceBundle();
-
-		Action action = new CleanupActionHTML(resourceBundle, StructuredTextEditorActionConstants.ACTION_NAME_CLEANUP_DOCUMENT + UNDERSCORE, this);
-		action.setActionDefinitionId(ActionDefinitionIds.CLEANUP_DOCUMENT);
-		setAction(StructuredTextEditorActionConstants.ACTION_NAME_CLEANUP_DOCUMENT, action);
-
-		action = new ToggleCommentActionXML(resourceBundle, StructuredTextEditorActionConstants.ACTION_NAME_TOGGLE_COMMENT + UNDERSCORE, this);
-		action.setActionDefinitionId(ActionDefinitionIds.TOGGLE_COMMENT);
-		setAction(StructuredTextEditorActionConstants.ACTION_NAME_TOGGLE_COMMENT, action);
-
-		action = new AddBlockCommentActionXML(resourceBundle, StructuredTextEditorActionConstants.ACTION_NAME_ADD_BLOCK_COMMENT + UNDERSCORE, 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 + UNDERSCORE, 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 + UNDERSCORE, 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(JSPUIMessages.getResourceBundle(), IActionConstantsJSP.ACTION_NAME_RENAME_ELEMENT + UNDERSCORE, this);
-		setAction(IActionConstantsJSP.ACTION_NAME_RENAME_ELEMENT, renameAction);
-		markAsSelectionDependentAction(IActionConstantsJSP.ACTION_NAME_RENAME_ELEMENT, true);
-
-		JSPMoveElementAction moveAction = new JSPMoveElementAction(JSPUIMessages.getResourceBundle(), IActionConstantsJSP.ACTION_NAME_MOVE_ELEMENT + UNDERSCORE, 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
-		IDOMModel xmlModel = (IDOMModel) StructuredModelManager.getModelManager().getExistingModelForRead(getDocument());
-		try {
-			if (xmlModel != null) {
-				IDOMDocument 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;
-	}
-
-	protected void addContextMenuActions(IMenuManager menu) {
-
-		super.addContextMenuActions(menu);
-
-		if (getSourceViewer().isEditable()) {
-			String label = JSPUIMessages.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 be5c52d..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.internal.provisional.IStructuredModel;
-import org.eclipse.wst.sse.core.internal.provisional.StructuredModelManager;
-import org.eclipse.wst.xml.core.internal.provisional.document.IDOMDocument;
-import org.eclipse.wst.xml.core.internal.provisional.document.IDOMModel;
-
-/**
- * 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;
-
-		IDOMModel xmlModel = null;
-		try {
-			xmlModel = (IDOMModel) StructuredModelManager.getModelManager().getExistingModelForRead(document);
-			if (xmlModel != null) {
-				IDOMDocument 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 2f780c0..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.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.internal.provisional.JSP11Namespace;
-import org.eclipse.jst.jsp.core.internal.provisional.text.IJSPPartitionTypes;
-import org.eclipse.jst.jsp.ui.internal.Logger;
-import org.eclipse.wst.sse.core.internal.provisional.IStructuredModel;
-import org.eclipse.wst.sse.core.internal.provisional.IndexedRegion;
-import org.eclipse.wst.sse.core.internal.provisional.StructuredModelManager;
-import org.eclipse.wst.sse.core.internal.provisional.text.IStructuredPartitioning;
-import org.eclipse.wst.sse.core.internal.util.StringUtils;
-import org.eclipse.wst.xml.core.internal.provisional.document.IDOMAttr;
-import org.eclipse.wst.xml.core.internal.provisional.document.IDOMNode;
-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, IStructuredPartitioning.DEFAULT_STRUCTURED_PARTITIONING, region.getOffset(), false);
-					if (partition != null && partition.getType() == IJSPPartitionTypes.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
-				IDOMNode docNode = (IDOMNode) node;
-				hyperRegion = new Region(docNode.getStartOffset(), docNode.getEndOffset() - docNode.getStartOffset());
-			}
-			else if (nodeType == Node.ATTRIBUTE_NODE) {
-				// handle attribute nodes
-				IDOMAttr att = (IDOMAttr) 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 6762926..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")); //$NON-NLS-1$
-		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 2414d54..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.internal.provisional.IStructuredModel;
-import org.eclipse.wst.sse.core.internal.provisional.StructuredModelManager;
-import org.eclipse.wst.sse.core.internal.util.StringUtils;
-import org.eclipse.wst.sse.core.internal.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 17aaa0a..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.jst.jsp.ui.internal.Logger;
-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;
-
-/**
- * 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 36ad43d..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.internal.provisional.URIResolverPlugin;
-import org.eclipse.wst.sse.core.internal.provisional.IStructuredModel;
-import org.eclipse.wst.sse.core.internal.provisional.IndexedRegion;
-import org.eclipse.wst.sse.core.internal.provisional.StructuredModelManager;
-import org.eclipse.wst.sse.core.internal.util.StringUtils;
-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.eclipse.wst.xml.core.internal.provisional.document.IDOMAttr;
-import org.eclipse.wst.xml.core.internal.provisional.document.IDOMNode;
-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
-				IDOMNode docNode = (IDOMNode) node;
-				hyperRegion = new Region(docNode.getStartOffset(), docNode.getEndOffset() - docNode.getStartOffset());
-			}
-			else if (nodeType == Node.ATTRIBUTE_NODE) {
-				// handle attribute nodes
-				IDOMAttr att = (IDOMAttr) 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 8a7501c..0000000
--- a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/java/refactoring/BasicRefactorSearchRequestor.java
+++ /dev/null
@@ -1,357 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies 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.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.JSPUIMessages;
-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.osgi.util.NLS;
-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.internal.document.DocumentReader;
-import org.eclipse.wst.sse.core.internal.encoding.CodedStreamCreator;
-
-/**
- * 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 = JSPUIMessages.BasicRefactorSearchRequestor_0;
-		
-		public RenameChange(IFile jspFile, IDocument jspDoc, TextEdit edit, String description) {
-			super(JSPUIMessages.BasicRefactorSearchRequestor_6, 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 ITextEditor) {
-
-							doc = ((ITextEditor) o).getDocumentProvider().getDocument(editor.getEditorInput());
-							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 += " " + NLS.bind(JSPUIMessages.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 1ac5f8a..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.internal.provisional.StructuredModelManager;
-import org.eclipse.wst.xml.core.internal.provisional.document.IDOMDocument;
-import org.eclipse.wst.xml.core.internal.provisional.document.IDOMModel;
-
-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
-			IDOMModel xmlModel = (IDOMModel) StructuredModelManager.getModelManager().getExistingModelForRead(document);
-			try {
-				if (xmlModel != null) {
-					IDOMDocument 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 485ff11..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.JSPUIMessages;
-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 JSPUIMessages.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 edac9c8..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.JSPUIMessages;
-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(JSPUIMessages.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 6147208..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.JSPUIMessages;
-
-/**
- * @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(JSPUIMessages.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 8d21c72..0000000
--- a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/java/refactoring/JSPMoveElementAction.java
+++ /dev/null
@@ -1,192 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies 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.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.JSPUIMessages;
-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.internal.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));
-				//String openRefactoringWizMsg = RefactoringMessages.getString("OpenRefactoringWizardAction.refactoring"); //$NON-NLS-1$
-				String openRefactoringWizMsg = JSPUIMessages.MoveElementWizard; //"Move the selected elements"; //$NON-NLS-1$
-				new RefactoringStarter().activate(refactoring, wizard, parent, openRefactoringWizMsg, true);
-				
-				PlatformStatusLineUtil.clearStatusLine();
-				
-			} catch (JavaModelException e) {
-				Logger.logException(e);
-			}
-		}
-		else  {
-			PlatformStatusLineUtil.displayErrorMessage(JSPUIMessages.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 d15e089..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.JSPUIMessages;
-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 JSPUIMessages.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 3903d39..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.JSPUIMessages;
-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(JSPUIMessages.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 3cffa0c..0000000
--- a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/java/refactoring/JSPPackageRenameRequestor.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.refactoring;
-
-import org.eclipse.jdt.core.IJavaElement;
-import org.eclipse.jst.jsp.ui.internal.JSPUIMessages;
-import org.eclipse.osgi.util.NLS;
-
-/**
- * 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 = NLS.bind(JSPUIMessages.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 6348bbc..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.JSPUIMessages;
-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.internal.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(JSPUIMessages.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 facd680..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.JSPUIMessages;
-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 JSPUIMessages.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 c5a2148..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.JSPUIMessages;
-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(JSPUIMessages.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 edd02f2..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.JSPUIMessages;
-
-/**
- * @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(JSPUIMessages.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 99f1666..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.JSPUIMessages;
-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 JSPUIMessages.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 e6a16de..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.JSPUIMessages;
-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(JSPUIMessages.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 d93ccf7..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.JSPUIMessages;
-
-/**
- * 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(JSPUIMessages.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 ae3dbc4..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("org.eclipse.jst.jsp.core/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 4abefce..0000000
--- a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/java/search/JSPFindOccurrencesAction.java
+++ /dev/null
@@ -1,108 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies 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.internal.provisional.text.IJSPPartitionTypes;
-import org.eclipse.jst.jsp.core.internal.regions.DOMJSPRegionContexts;
-import org.eclipse.search.ui.ISearchQuery;
-import org.eclipse.swt.graphics.Point;
-import org.eclipse.ui.texteditor.ITextEditor;
-import org.eclipse.wst.sse.core.internal.provisional.IStructuredModel;
-import org.eclipse.wst.sse.ui.internal.StructuredTextEditor;
-import org.eclipse.wst.sse.ui.internal.search.BasicFindOccurrencesAction;
-import org.eclipse.wst.xml.core.internal.provisional.document.IDOMDocument;
-import org.eclipse.wst.xml.core.internal.provisional.document.IDOMModel;
-import org.eclipse.wst.xml.core.internal.regions.DOMRegionContext;
-
-/**
- * <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);
-	}
-
-
-	public ISearchQuery getSearchQuery() {
-		return new JSPSearchQuery(getJspFile(), getJavaElement());
-	}
-
-	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 IDOMModel) {
-			IDOMDocument xmlDoc = ((IDOMModel) 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;
-	}
-
-	public String[] getPartitionTypes() {
-		return new String[]{IJSPPartitionTypes.JSP_DEFAULT, IJSPPartitionTypes.JSP_CONTENT_JAVA};
-	}
-
-	public String[] getRegionTypes() {
-		return new String[]{DOMRegionContext.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 424a676..0000000
--- a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/java/search/JSPSearchQuery.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.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.jst.jsp.ui.internal.JSPUIMessages;
-import org.eclipse.osgi.util.NLS;
-import org.eclipse.search.ui.ISearchResult;
-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;
-	}
-
-	protected IWorkspaceRunnable getRunnable() {
-		return new SingleFileSearch();
-	}
-	
-	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 NLS.bind(JSPUIMessages.OccurrencesSearchQuery_0, args);
-	}
-
-	private String getFilename() {
-		String filename = JSPUIMessages.OccurrencesSearchQuery_2;
-		if(getFile() != null)
-			filename = getFile().getName();
-		return filename;
-	}
-	
-	private String getOccurrencesCountText() {
-		String count = ""; //$NON-NLS-1$
-		// pa_TODO make dynamic
-		return count;
-	}
-
-	protected String getSearchText() {
-		return this.fElement.getElementName();
-	}
-	
-	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 9dc8275..0000000
--- a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/java/search/JSPSearchRequestor.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.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;
-	}
-	
-
-	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 4e35d83..0000000
--- a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/java/search/JSPSingleFileSearchRequestor.java
+++ /dev/null
@@ -1,38 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies 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;
-	}
-	
-	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 badbf18..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("org.eclipse.jst.jsp.core/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 7b2649a..0000000
--- a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/preferences/JSPUIPreferenceInitializer.java
+++ /dev/null
@@ -1,70 +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.jface.text.templates.Template;
-import org.eclipse.jst.jsp.ui.internal.JSPUIPlugin;
-import org.eclipse.jst.jsp.ui.internal.style.IStyleConstantsJSP;
-import org.eclipse.wst.html.ui.internal.style.IStyleConstantsHTML;
-import org.eclipse.wst.sse.ui.internal.preferences.ui.ColorHelper;
-import org.eclipse.wst.xml.ui.internal.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$
-
-		// specified value is black; leaving as widget default
-		store.setDefault(IStyleConstantsXML.TAG_ATTRIBUTE_EQUALS, styleValue);
-
-		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);
-
-		styleValue = "null" + NOBACKGROUNDBOLD; //$NON-NLS-1$
-		store.setDefault(IStyleConstantsJSP.JSP_CONTENT, styleValue);
-		
-		// set default new jsp file template to use in new file wizard
-		/*
-		 * Need to find template name that goes with default template id (name
-		 * may change for differnt language)
-		 */
-		String templateName = ""; //$NON-NLS-1$
-		Template template = JSPUIPlugin.getDefault().getTemplateStore().findTemplateById("org.eclipse.jst.jsp.ui.templates.jsphtml"); //$NON-NLS-1$
-		if (template != null)
-			templateName = template.getName();
-		store.setDefault(JSPUIPreferenceNames.NEW_FILE_TEMPLATE_NAME, templateName);
-	}
-
-}
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 c185063..0000000
--- a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/preferences/JSPUIPreferenceNames.java
+++ /dev/null
@@ -1,65 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *     
- *******************************************************************************/
-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$
-	}
-
-	/**
-	 * The key to store the last template name used in new JSP file wizard.
-	 * Template name is stored instead of template id because user-created
-	 * templates do not have template ids.
-	 * <p>
-	 * Value is of type <code>String</code>.
-	 * </p>
-	 */
-	public static final String NEW_FILE_TEMPLATE_NAME = "newFileTemplateName"; //$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 c7f2347..0000000
--- a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/preferences/ui/JSPColorPage.java
+++ /dev/null
@@ -1,167 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies 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.internal.provisional.contenttype.ContentTypeIdForJSP;
-import org.eclipse.jst.jsp.core.internal.regions.DOMJSPRegionContexts;
-import org.eclipse.jst.jsp.ui.internal.JSPUIMessages;
-import org.eclipse.jst.jsp.ui.internal.JSPUIPlugin;
-import org.eclipse.jst.jsp.ui.internal.editor.IHelpContextIds;
-import org.eclipse.jst.jsp.ui.internal.style.IStyleConstantsJSP;
-import org.eclipse.swt.SWT;
-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.html.ui.internal.style.IStyleConstantsHTML;
-import org.eclipse.wst.sse.core.internal.provisional.IModelManager;
-import org.eclipse.wst.sse.core.internal.provisional.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.internal.preferences.ui.StyledTextColorPicker;
-import org.eclipse.wst.xml.core.internal.regions.DOMRegionContext;
-import org.eclipse.wst.xml.ui.internal.preferences.XMLColorPage;
-import org.eclipse.wst.xml.ui.internal.style.IStyleConstantsXML;
-
-public class JSPColorPage extends XMLColorPage {
-
-	/**
-	 * Overridden to set up StyledTextColorPicker differently
-	 */
-	protected void createContentsForPicker(Composite parent) {
-		// create the color picker
-		fPicker = new JSPStyledTextColorPicker(parent, SWT.NULL);
-		GridData data = new GridData(GridData.FILL_BOTH);
-		fPicker.setLayoutData(data);
-
-		fPicker.setPreferenceStore(fOverlayStore);
-		setupPicker(fPicker);
-
-		fPicker.setText(getSampleText());
-	}
-	
-	/**
-	 * 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 JSPUIMessages.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(DOMRegionContext.XML_CONTENT); // leave content between tags alone
-		contextStyleMap.remove(DOMRegionContext.XML_DECLARATION_OPEN); // xml/html specific
-		contextStyleMap.remove(DOMRegionContext.XML_DECLARATION_CLOSE); // xml/html specific
-		contextStyleMap.remove(DOMRegionContext.XML_ELEMENT_DECLARATION); // xml/html specific
-		contextStyleMap.remove(DOMRegionContext.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_CONTENT, IStyleConstantsJSP.JSP_CONTENT);
-		
-		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, JSPUIMessages.JSP_Delimiters_UI_); //$NON-NLS-1$ = "JSP Delimiters"
-		descriptions.put(IStyleConstantsJSP.JSP_CONTENT, JSPUIMessages.JSPColorPage_jsp_content);
-	}
-
-	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);
-		list.add(IStyleConstantsJSP.JSP_CONTENT);
-	}
-
-	protected void setupPicker(StyledTextColorPicker picker) {
-		IModelManager mmanager = StructuredModelManager.getModelManager();
-		picker.setParser(mmanager.createStructuredDocumentFor(ContentTypeIdForJSP.ContentTypeID_JSP).getParser());
-
-		// create descriptions for highlighting types
-		Dictionary descriptions = new Hashtable();
-		initDescriptions(descriptions);
-
-		// map region types to highlighting types
-		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.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 4351d30..0000000
--- a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/preferences/ui/JSPFilesPreferencePage.java
+++ /dev/null
@@ -1,73 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies 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.internal.preferences.ui.HTMLFilesPreferencePage;
-
-public class JSPFilesPreferencePage extends HTMLFilesPreferencePage {
-
-
-	protected Preferences getModelPreferences() {
-		return JSPCorePlugin.getDefault().getPluginPreferences();
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.jface.preference.PreferencePage#doGetPreferenceStore()
-	 */
-	protected IPreferenceStore doGetPreferenceStore() {
-		return JSPUIPlugin.getDefault().getPreferenceStore();
-	}
-
-	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/JSPSourcePreferencePage.java b/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/preferences/ui/JSPSourcePreferencePage.java
deleted file mode 100644
index 5381ecb..0000000
--- a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/preferences/ui/JSPSourcePreferencePage.java
+++ /dev/null
@@ -1,100 +0,0 @@
-package org.eclipse.jst.jsp.ui.internal.preferences.ui;
-
-import org.eclipse.jface.preference.PreferencePage;
-import org.eclipse.jst.jsp.ui.internal.JSPUIMessages;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.custom.ScrolledComposite;
-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.Control;
-import org.eclipse.swt.widgets.Text;
-import org.eclipse.ui.IWorkbench;
-import org.eclipse.ui.IWorkbenchPreferencePage;
-import org.eclipse.ui.dialogs.PreferenceLinkArea;
-import org.eclipse.ui.preferences.IWorkbenchPreferenceContainer;
-
-public class JSPSourcePreferencePage extends PreferencePage implements IWorkbenchPreferencePage {
-
-	public void init(IWorkbench workbench) {
-		// do nothing
-	}
-
-	protected Control createContents(Composite parent) {
-		Composite composite = createScrolledComposite(parent);
-
-		Text label = new Text(composite, SWT.READ_ONLY);
-		label.setText(JSPUIMessages.JSPSourcePreferencePage_0);
-		GridData data = new GridData(GridData.FILL_HORIZONTAL | GridData.GRAB_HORIZONTAL);
-		data.horizontalIndent = 0;
-		label.setLayoutData(data);
-		
-		PreferenceLinkArea fileEditorsArea = new PreferenceLinkArea(composite, SWT.NONE, "org.eclipse.wst.html.ui.preferences.source", JSPUIMessages.JSPSourcePreferencePage_1,//$NON-NLS-1$
-					(IWorkbenchPreferenceContainer) getContainer(), null);
-
-		data = new GridData(GridData.FILL_HORIZONTAL | GridData.GRAB_HORIZONTAL);
-		data.horizontalIndent = 5;
-		fileEditorsArea.getControl().setLayoutData(data);
-
-		PreferenceLinkArea contentTypeArea = new PreferenceLinkArea(composite, SWT.NONE, "org.eclipse.wst.sse.ui.preferences.xml.source", JSPUIMessages.JSPSourcePreferencePage_2,//$NON-NLS-1$
-					(IWorkbenchPreferenceContainer) getContainer(), null);
-
-		data = new GridData(GridData.FILL_HORIZONTAL | GridData.GRAB_HORIZONTAL);
-		data.horizontalIndent = 5;
-		contentTypeArea.getControl().setLayoutData(data);
-
-		return composite;
-	}
-
-	private Composite createScrolledComposite(Composite parent) {
-		// create scrollbars for this parent when needed
-		final ScrolledComposite sc1 = new ScrolledComposite(parent, SWT.H_SCROLL | SWT.V_SCROLL);
-		sc1.setLayoutData(new GridData(GridData.FILL_BOTH));
-		Composite composite = createComposite(sc1);
-		sc1.setContent(composite);
-
-		// not calling setSize for composite will result in a blank composite,
-		// so calling it here initially
-		// setSize actually needs to be called after all controls are created,
-		// so scrolledComposite
-		// has correct minSize
-		setSize(composite);
-		return composite;
-	}
-
-	private void setSize(Composite composite) {
-		if (composite != null) {
-			Point minSize = composite.computeSize(SWT.DEFAULT, SWT.DEFAULT);
-			composite.setSize(minSize);
-			// set scrollbar composite's min size so page is expandable but
-			// has scrollbars when needed
-			if (composite.getParent() instanceof ScrolledComposite) {
-				ScrolledComposite sc1 = (ScrolledComposite) composite.getParent();
-				sc1.setMinSize(minSize);
-				sc1.setExpandHorizontal(true);
-				sc1.setExpandVertical(true);
-			}
-		}
-	}
-
-	private Composite createComposite(Composite parent) {
-		Composite composite = new Composite(parent, SWT.NULL);
-
-		// GridLayout
-		GridLayout layout = new GridLayout();
-		layout.marginWidth = 0;
-		layout.marginHeight = 0;
-		composite.setLayout(layout);
-
-		// GridData
-		GridData data = new GridData(GridData.FILL);
-		data.horizontalIndent = 0;
-		data.verticalAlignment = GridData.FILL;
-		data.horizontalAlignment = GridData.FILL;
-		composite.setLayoutData(data);
-
-		composite.setFont(parent.getFont());
-		return composite;
-	}
-}
diff --git a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/preferences/ui/JSPStyledTextColorPicker.java b/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/preferences/ui/JSPStyledTextColorPicker.java
deleted file mode 100644
index d35451e..0000000
--- a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/preferences/ui/JSPStyledTextColorPicker.java
+++ /dev/null
@@ -1,36 +0,0 @@
-package org.eclipse.jst.jsp.ui.internal.preferences.ui;
-
-import org.eclipse.jst.jsp.ui.internal.style.IStyleConstantsJSP;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.wst.sse.ui.internal.preferences.ui.StyledTextColorPicker;
-
-/**
-* Overrides StyledTextColorPicker for special enablement behavior 
-* for JSPContent (only background settable)
-**/
-public class JSPStyledTextColorPicker extends StyledTextColorPicker {
-	
-	public JSPStyledTextColorPicker(Composite parent, int style) {
-		super(parent, style);
-	}
-	
-	/**
-	 * Activate controls based on the given local color type.
-	 * Overridden to disable foreground color, bold.
-	 */
-	protected void activate(String namedStyle) {
-		if(namedStyle != null && namedStyle == IStyleConstantsJSP.JSP_CONTENT) {
-			fForeground.setEnabled(false);
-			fBackground.setEnabled(true);
-			fClearStyle.setEnabled(true);
-			fBold.setEnabled(false);
-			if (showItalic)
-				fItalic.setEnabled(false);
-			fForegroundLabel.setEnabled(false);
-			fBackgroundLabel.setEnabled(false);
-		}
-		else {
-			super.activate(namedStyle);
-		}
-	}
-}
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 cd59cd1..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.internal.provisional.HTML40Namespace;
-import org.eclipse.wst.sse.core.internal.provisional.AbstractAdapterFactory;
-import org.eclipse.wst.sse.core.internal.provisional.INodeAdapter;
-import org.eclipse.wst.sse.core.internal.provisional.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 0941a19..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.internal.provisional.JSP11Namespace;
-import org.eclipse.wst.sse.core.internal.provisional.INodeAdapter;
-import org.eclipse.wst.sse.core.internal.provisional.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 8f8d660..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.internal.provisional.INodeAdapter;
-import org.eclipse.wst.sse.core.internal.provisional.INodeNotifier;
-import org.eclipse.wst.sse.core.internal.provisional.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"; //$NON-NLS-1$
-			System.out.println("ProjectionModelNodeAdapterHTML.updateAdapter (" + nodeName + "):" + (end - start)); //$NON-NLS-1$ //$NON-NLS-2$
-		}
-	}
-}
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 f4316f9..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.internal.PropagatingAdapter;
-import org.eclipse.wst.sse.core.internal.model.FactoryRegistry;
-import org.eclipse.wst.sse.core.internal.provisional.INodeNotifier;
-import org.eclipse.wst.sse.core.internal.provisional.IStructuredModel;
-import org.eclipse.wst.sse.core.internal.provisional.IndexedRegion;
-import org.eclipse.wst.sse.core.internal.provisional.StructuredModelManager;
-import org.eclipse.wst.sse.ui.internal.projection.IStructuredTextFoldingProvider;
-import org.eclipse.wst.xml.core.internal.provisional.document.IDOMModel;
-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)); //$NON-NLS-1$
-	}
-
-	/**
-	 * 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
-					IDOMModel domModel = (IDOMModel) 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)); //$NON-NLS-1$
-		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
-					IDOMModel domModel = (IDOMModel) 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)); //$NON-NLS-1$
-		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/provisional/StructuredTextViewerConfigurationJSP.java b/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/provisional/StructuredTextViewerConfigurationJSP.java
deleted file mode 100644
index 0ba4d2a..0000000
--- a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/provisional/StructuredTextViewerConfigurationJSP.java
+++ /dev/null
@@ -1,496 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies 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.provisional;
-
-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.provisional.text.IJSPPartitionTypes;
-import org.eclipse.jst.jsp.core.internal.text.StructuredTextPartitionerForJSP;
-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.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.internal.provisional.text.ICSSPartitionTypes;
-import org.eclipse.wst.css.ui.internal.contentassist.CSSContentAssistProcessor;
-import org.eclipse.wst.css.ui.internal.style.LineStyleProviderForEmbeddedCSS;
-import org.eclipse.wst.html.core.internal.format.HTMLFormatProcessorImpl;
-import org.eclipse.wst.html.core.internal.provisional.text.IHTMLPartitionTypes;
-import org.eclipse.wst.html.core.internal.text.StructuredTextPartitionerForHTML;
-import org.eclipse.wst.html.ui.internal.contentassist.HTMLContentAssistProcessor;
-import org.eclipse.wst.html.ui.internal.style.LineStyleProviderForHTML;
-import org.eclipse.wst.html.ui.internal.taginfo.HTMLBestMatchHoverProcessor;
-import org.eclipse.wst.html.ui.internal.taginfo.HTMLInformationProvider;
-import org.eclipse.wst.html.ui.internal.taginfo.HTMLTagInfoHoverProcessor;
-import org.eclipse.wst.javascript.ui.internal.common.contentassist.JavaScriptContentAssistProcessor;
-import org.eclipse.wst.javascript.ui.internal.common.style.LineStyleProviderForJavaScript;
-import org.eclipse.wst.javascript.ui.internal.common.taginfo.JavaScriptBestMatchHoverProcessor;
-import org.eclipse.wst.javascript.ui.internal.common.taginfo.JavaScriptInformationProvider;
-import org.eclipse.wst.javascript.ui.internal.common.taginfo.JavaScriptTagInfoHoverProcessor;
-import org.eclipse.wst.sse.core.internal.provisional.IStructuredModel;
-import org.eclipse.wst.sse.core.internal.provisional.StructuredModelManager;
-import org.eclipse.wst.sse.core.internal.provisional.text.IStructuredPartitionTypes;
-import org.eclipse.wst.sse.ui.internal.SSEUIPlugin;
-import org.eclipse.wst.sse.ui.internal.format.StructuredFormattingStrategy;
-import org.eclipse.wst.sse.ui.internal.provisional.StructuredTextViewerConfiguration;
-import org.eclipse.wst.sse.ui.internal.provisional.preferences.CommonEditorPreferenceNames;
-import org.eclipse.wst.sse.ui.internal.provisional.style.IHighlighter;
-import org.eclipse.wst.sse.ui.internal.provisional.style.LineStyleProvider;
-import org.eclipse.wst.sse.ui.internal.reconcile.StructuredRegionProcessor;
-import org.eclipse.wst.sse.ui.internal.taginfo.AnnotationHoverProcessor;
-import org.eclipse.wst.sse.ui.internal.taginfo.ProblemAnnotationHoverProcessor;
-import org.eclipse.wst.sse.ui.internal.taginfo.TextHoverManager;
-import org.eclipse.wst.sse.ui.internal.util.EditorUtility;
-import org.eclipse.wst.xml.core.internal.provisional.text.IXMLPartitions;
-import org.eclipse.wst.xml.core.internal.text.rules.StructuredTextPartitionerForXML;
-import org.eclipse.wst.xml.ui.internal.doubleclick.XMLDoubleClickStrategy;
-import org.eclipse.wst.xml.ui.internal.style.LineStyleProviderForXML;
-import org.eclipse.wst.xml.ui.internal.taginfo.XMLBestMatchHoverProcessor;
-import org.eclipse.wst.xml.ui.internal.taginfo.XMLInformationProvider;
-import org.eclipse.wst.xml.ui.internal.taginfo.XMLTagInfoHoverProcessor;
-import org.eclipse.wst.xml.ui.internal.validation.StructuredTextReconcilingStrategyForMarkup;
-
-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 == IJSPPartitionTypes.JSP_CONTENT_JAVA) {
-			allStrategies.add(getJavaSourceViewerConfiguration().getAutoEditStrategies(sourceViewer, IJavaPartitions.JAVA_PARTITIONING)[0]);
-		}
-
-		if (contentType == IHTMLPartitionTypes.HTML_DEFAULT || contentType == IHTMLPartitionTypes.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] = IStructuredPartitionTypes.DEFAULT_PARTITION;
-			configuredContentTypes[1] = IStructuredPartitionTypes.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, IHTMLPartitionTypes.HTML_DEFAULT);
-			setContentAssistProcessor(contentAssistant, htmlContentAssistProcessor, IHTMLPartitionTypes.HTML_COMMENT);
-
-			// HTML JavaScript
-			setContentAssistProcessor(contentAssistant, jsContentAssistProcessor, IHTMLPartitionTypes.SCRIPT);
-
-			// CSS
-			setContentAssistProcessor(contentAssistant, cssContentAssistProcessor, ICSSPartitionTypes.STYLE);
-			setContentAssistProcessor(contentAssistant, cssContentAssistProcessor, ICSSPartitionTypes.STYLE);
-
-			// JSP
-			setContentAssistProcessor(contentAssistant, jspContentAssistProcessor, IStructuredPartitionTypes.DEFAULT_PARTITION);
-			setContentAssistProcessor(contentAssistant, jspContentAssistProcessor, IXMLPartitions.XML_DEFAULT);
-			setContentAssistProcessor(contentAssistant, jspContentAssistProcessor, IHTMLPartitionTypes.HTML_DEFAULT);
-			setContentAssistProcessor(contentAssistant, jspContentAssistProcessor, IHTMLPartitionTypes.HTML_COMMENT);
-			setContentAssistProcessor(contentAssistant, jspContentAssistProcessor, IJSPPartitionTypes.JSP_DEFAULT);
-
-			// JSP directives
-			setContentAssistProcessor(contentAssistant, jspContentAssistProcessor, IJSPPartitionTypes.JSP_DIRECTIVE);
-			// JSP delimiters
-			setContentAssistProcessor(contentAssistant, jspContentAssistProcessor, IJSPPartitionTypes.JSP_CONTENT_DELIMITER);
-			// JSP JavaScript
-			setContentAssistProcessor(contentAssistant, jspContentAssistProcessor, IJSPPartitionTypes.JSP_CONTENT_JAVASCRIPT);
-			// JSP Java
-			setContentAssistProcessor(contentAssistant, jspJavaContentAssistProcessor, IJSPPartitionTypes.JSP_CONTENT_JAVA);
-			// unknown
-			setContentAssistProcessor(contentAssistant, noRegionProcessorJsp, IStructuredPartitionTypes.UNKNOWN_PARTITION);
-			// CMVC 269718
-			// JSP COMMENT
-			setContentAssistProcessor(contentAssistant, jspContentAssistProcessor, IJSPPartitionTypes.JSP_COMMENT);
-		}
-
-		return ca;
-	}
-
-	public IContentAssistant getCorrectionAssistant(ISourceViewer sourceViewer) {
-		return null;
-	}
-
-	public IContentFormatter getContentFormatter(ISourceViewer sourceViewer) {
-		MultiPassContentFormatter formatter = new MultiPassContentFormatter(getConfiguredDocumentPartitioning(sourceViewer), IXMLPartitions.XML_DEFAULT);
-
-		formatter.setMasterStrategy(new StructuredFormattingStrategy(new HTMLFormatProcessorImpl()));
-		formatter.setSlaveStrategy(new FormattingStrategyJSPJava(), IJSPPartitionTypes.JSP_CONTENT_JAVA);
-
-		return formatter;
-	}
-
-	public ITextDoubleClickStrategy getDoubleClickStrategy(ISourceViewer sourceViewer, String contentType) {
-		if (contentType.compareTo(IHTMLPartitionTypes.HTML_DEFAULT) == 0)
-			// HTML
-			return new XMLDoubleClickStrategy();
-		else if (contentType.compareTo(IHTMLPartitionTypes.SCRIPT) == 0 || contentType.compareTo(IJSPPartitionTypes.JSP_CONTENT_JAVA) == 0 || contentType.compareTo(IJSPPartitionTypes.JSP_CONTENT_JAVASCRIPT) == 0)
-			// HTML JavaScript
-			// JSP Java or JSP JavaScript
-			return getJavaSourceViewerConfiguration().getDoubleClickStrategy(sourceViewer, contentType);
-		else if (contentType.compareTo(IJSPPartitionTypes.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(IHTMLPartitionTypes.HTML_DEFAULT, htmlLineStyleProvider);
-			highlighter.addProvider(IHTMLPartitionTypes.HTML_COMMENT, htmlLineStyleProvider);
-			highlighter.addProvider(IHTMLPartitionTypes.HTML_DECLARATION, htmlLineStyleProvider);
-
-			// HTML JavaScript
-			LineStyleProvider jsLineStyleProvider = new LineStyleProviderForJavaScript();
-			highlighter.addProvider(IHTMLPartitionTypes.SCRIPT, jsLineStyleProvider);
-
-			// CSS
-			LineStyleProvider cssLineStyleProvider = new LineStyleProviderForEmbeddedCSS();
-			highlighter.addProvider(ICSSPartitionTypes.STYLE, cssLineStyleProvider);
-
-			// JSP
-			LineStyleProvider jspLineStyleProvider = new LineStyleProviderForJSP();
-			highlighter.addProvider(IJSPPartitionTypes.JSP_DEFAULT, jspLineStyleProvider);
-			highlighter.addProvider(IJSPPartitionTypes.JSP_COMMENT, jspLineStyleProvider);
-			highlighter.addProvider(IJSPPartitionTypes.JSP_DIRECTIVE, jspLineStyleProvider);
-			highlighter.addProvider(IJSPPartitionTypes.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(IJSPPartitionTypes.JSP_CONTENT_JAVA, new LineStyleProviderForJava());
-			highlighter.addProvider(IJSPPartitionTypes.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, IHTMLPartitionTypes.HTML_DEFAULT);
-
-			// HTML JavaScript
-			IInformationProvider javascriptInformationProvider = new JavaScriptInformationProvider();
-			fInformationPresenter.setInformationProvider(javascriptInformationProvider, IHTMLPartitionTypes.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 == IHTMLPartitionTypes.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 == IHTMLPartitionTypes.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 == IJSPPartitionTypes.JSP_DEFAULT) || (contentType == IJSPPartitionTypes.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 == IJSPPartitionTypes.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, IStructuredPartitionTypes.DEFAULT_PARTITION);
-					fReconciler.setReconcilingStrategy(markupStrategy, IXMLPartitions.XML_DEFAULT);
-
-					fReconciler.setReconcilingStrategy(jspStrategy, IJSPPartitionTypes.JSP_DEFAULT);
-					fReconciler.setReconcilingStrategy(jspStrategy, IJSPPartitionTypes.JSP_CONTENT_JAVA);
-					fReconciler.setReconcilingStrategy(jspStrategy, IJSPPartitionTypes.JSP_CONTENT_DELIMITER);
-					fReconciler.setReconcilingStrategy(jspStrategy, IJSPPartitionTypes.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/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 4161f40..0000000
--- a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/reconcile/ReconcileStepForJava.java
+++ /dev/null
@@ -1,192 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies 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.internal.provisional.text.IJSPPartitionTypes;
-import org.eclipse.wst.sse.core.internal.provisional.IStructuredModel;
-import org.eclipse.wst.sse.core.internal.provisional.StructuredModelManager;
-import org.eclipse.wst.sse.core.internal.provisional.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 1.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(IJSPPartitionTypes.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 1160980..0000000
--- a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/reconcile/ReconcileStepForJspTranslation.java
+++ /dev/null
@@ -1,322 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies 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.internal.regions.DOMJSPRegionContexts;
-import org.eclipse.wst.sse.core.internal.provisional.IStructuredModel;
-import org.eclipse.wst.sse.core.internal.provisional.StructuredModelManager;
-import org.eclipse.wst.sse.core.internal.provisional.text.IStructuredDocument;
-import org.eclipse.wst.sse.core.internal.provisional.text.IStructuredDocumentRegion;
-import org.eclipse.wst.sse.core.internal.provisional.text.ITextRegion;
-import org.eclipse.wst.sse.core.internal.provisional.text.ITextRegionList;
-import org.eclipse.wst.sse.core.internal.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.internal.provisional.document.IDOMDocument;
-import org.eclipse.wst.xml.core.internal.provisional.document.IDOMModel;
-import org.eclipse.wst.xml.core.internal.regions.DOMRegionContext;
-
-/**
- * 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) {
-						IDOMDocument xmlDoc = ((IDOMModel) model).getDocument();
-						fTranslationAdapter = (JSPTranslationAdapter) xmlDoc.getAdapterFor(IJSPTranslation.class);
-					}
-				}
-				finally {
-					if (model != null)
-						model.releaseFromRead();
-				}
-			}
-		}
-		return fTranslationAdapter;
-	}
-
-	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() == DOMRegionContext.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() == DOMRegionContext.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() == DOMRegionContext.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() == DOMRegionContext.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() == DOMRegionContext.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;
-					}
-				}
-			}
-		}
-	}
-
-	public void release() {
-		if (fTranslationAdapter != null) {
-			if(DEBUG) {
-				System.out.println("ReconcileStepForJSPTranslation ["+this+"] releasing JSPTranslationAdapter " + fTranslationAdapter); //$NON-NLS-1$ //$NON-NLS-2$
-			}
-			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((IDOMModel) 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 99e4e40..0000000
--- a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/reconcile/StructuredTextReconcilingStrategyForJSP.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.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);
-		}
-	}
-	
-	/**
-	 * @return <code>true</code> if the entire document is validated
-	 * for each edit (this strategy can't handle partial document validation).
-	 * This will greatly help performance.
-	 */
-	public boolean isTotalScope() {
-		return true;
-	}
-}
\ 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 6416985..0000000
--- a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/registry/AdapterFactoryProviderForJSP.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.ui.internal.registry;
-
-import java.util.Iterator;
-
-import org.eclipse.jst.jsp.core.internal.document.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.internal.modelhandler.ModelHandlerForJSP;
-import org.eclipse.jst.jsp.ui.internal.JSPUIPlugin;
-import org.eclipse.ui.views.properties.IPropertySource;
-import org.eclipse.wst.html.ui.internal.contentoutline.JFaceNodeAdapterFactoryForHTML;
-import org.eclipse.wst.sse.core.internal.PropagatingAdapter;
-import org.eclipse.wst.sse.core.internal.ltk.modelhandler.IDocumentTypeHandler;
-import org.eclipse.wst.sse.core.internal.model.FactoryRegistry;
-import org.eclipse.wst.sse.core.internal.provisional.INodeAdapterFactory;
-import org.eclipse.wst.sse.core.internal.provisional.IStructuredModel;
-import org.eclipse.wst.sse.ui.internal.contentoutline.IJFaceNodeAdapter;
-import org.eclipse.wst.sse.ui.internal.provisional.registry.AdapterFactoryProvider;
-import org.eclipse.wst.sse.ui.internal.provisional.registry.AdapterFactoryRegistry;
-import org.eclipse.wst.sse.ui.internal.provisional.registry.embedded.EmbeddedAdapterFactoryProvider;
-import org.eclipse.wst.sse.ui.internal.util.Assert;
-import org.eclipse.wst.xml.core.internal.provisional.document.IDOMDocument;
-import org.eclipse.wst.xml.core.internal.provisional.document.IDOMModel;
-import org.eclipse.wst.xml.ui.internal.properties.XMLPropertySourceAdapterFactory;
-
-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$
-		INodeAdapterFactory factory = null;
-		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 IDOMModel) {
-			IDOMModel xmlModel = (IDOMModel) structuredModel;
-			IDOMDocument 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 IDOMModel) {
-			IDOMModel xmlModel = (IDOMModel) structuredModel;
-			IDOMDocument document = xmlModel.getDocument();
-			PropagatingAdapter propagatingAdapter = (PropagatingAdapter) document.getAdapterFor(PropagatingAdapter.class);
-			if (propagatingAdapter != null) {
-				// what to do?
-			}
-		}
-	}
-
-	/*
-	 * @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/IStyleConstantsJSP.java b/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/style/IStyleConstantsJSP.java
deleted file mode 100644
index 2b81bf8..0000000
--- a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/style/IStyleConstantsJSP.java
+++ /dev/null
@@ -1,5 +0,0 @@
-package org.eclipse.jst.jsp.ui.internal.style;
-
-public interface IStyleConstantsJSP {
-	public static final String JSP_CONTENT = "jsp_content"; //$NON-NLS-1$
-}
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 4388979..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.internal.regions.DOMJSPRegionContexts;
-import org.eclipse.jst.jsp.ui.internal.JSPUIPlugin;
-import org.eclipse.wst.html.ui.internal.style.IStyleConstantsHTML;
-import org.eclipse.wst.sse.core.internal.provisional.text.ITextRegion;
-import org.eclipse.wst.sse.ui.internal.provisional.style.AbstractLineStyleProvider;
-import org.eclipse.wst.sse.ui.internal.provisional.style.LineStyleProvider;
-import org.eclipse.wst.xml.core.internal.regions.DOMRegionContext;
-import org.eclipse.wst.xml.ui.internal.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 == DOMRegionContext.XML_TAG_NAME) {
-					result = (TextAttribute) getTextAttributes().get(IStyleConstantsXML.TAG_NAME);
-				}
-				else if ((type == DOMRegionContext.XML_TAG_OPEN) || (type == DOMRegionContext.XML_END_TAG_OPEN) || (type == DOMRegionContext.XML_TAG_CLOSE) || (type == DOMRegionContext.XML_EMPTY_TAG_CLOSE)) {
-					result = (TextAttribute) getTextAttributes().get(IStyleConstantsXML.TAG_BORDER);
-				}
-				else if (type == DOMRegionContext.XML_TAG_ATTRIBUTE_NAME) {
-					result = (TextAttribute) getTextAttributes().get(IStyleConstantsXML.TAG_ATTRIBUTE_NAME);
-				}
-				else if ((type == DOMRegionContext.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 == DOMRegionContext.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 == DOMRegionContext.UNDEFINED)
-					result = (TextAttribute) getTextAttributes().get(IStyleConstantsXML.XML_CONTENT);
-
-				else if (type == DOMRegionContext.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 == DOMRegionContext.XML_CONTENT)
-					result = (TextAttribute) getTextAttributes().get(IStyleConstantsXML.XML_CONTENT);
-				else if (type == DOMRegionContext.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 c69436d..0000000
--- a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/style/java/JavaCodeScanner.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.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.WordRule;
-import org.eclipse.swt.graphics.Color;
-import org.eclipse.wst.sse.ui.internal.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 f2e319f..0000000
--- a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/style/java/LineStyleProviderForJava.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.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.jst.jsp.ui.internal.style.IStyleConstantsJSP;
-import org.eclipse.swt.custom.StyleRange;
-import org.eclipse.swt.graphics.Color;
-import org.eclipse.swt.widgets.Display;
-import org.eclipse.wst.html.ui.internal.style.IStyleConstantsHTML;
-import org.eclipse.wst.sse.ui.internal.preferences.ui.ColorHelper;
-import org.eclipse.wst.sse.ui.internal.provisional.style.AbstractLineStyleProvider;
-import org.eclipse.wst.sse.ui.internal.provisional.style.LineStyleProvider;
-import org.eclipse.wst.sse.ui.internal.util.EditorUtility;
-import org.eclipse.wst.xml.ui.internal.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) {
-		
-//		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);
-//			}
-//		}
-		// support for user defined backgroud for JSP scriptlet regions
-		String styleString = JSPUIPlugin.getDefault().getPreferenceStore().getString(IStyleConstantsJSP.JSP_CONTENT);
-		String[] prefs = ColorHelper.unpackStylePreferences(styleString);
-		Color bgColor = (prefs != null && prefs.length == 3 && prefs[1].startsWith("#") && Display.getCurrent() != null) //$NON-NLS-1$
-							? new Color(Display.getCurrent(), ColorHelper.toRGB(prefs[1]))
-							: attr.getBackground();
-							
-		presentation.add(new StyleRange(offset, length, attr.getForeground(), bgColor, 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 e6f53f6..0000000
--- a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/taginfo/JSPBestMatchHoverProcessor.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.ui.internal.taginfo;
-
-import org.eclipse.jface.text.ITextHover;
-import org.eclipse.wst.sse.ui.internal.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;
-
-	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 608686c..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.internal.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/JSPJavaJavadocHoverProcessor.java b/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/taginfo/JSPJavaJavadocHoverProcessor.java
deleted file mode 100644
index 7ee1293..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.internal.provisional.StructuredModelManager;
-import org.eclipse.wst.xml.core.internal.provisional.document.IDOMDocument;
-import org.eclipse.wst.xml.core.internal.provisional.document.IDOMModel;
-
-/**
- * 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
-		IDOMModel xmlModel = (IDOMModel) StructuredModelManager.getModelManager().getExistingModelForRead(textViewer.getDocument());
-		try {
-			if(xmlModel != null) {
-				IDOMDocument 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 2a234ca..0000000
--- a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/taginfo/JSPTagInfoHoverProcessor.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.jst.jsp.ui.internal.taginfo;
-
-
-
-import org.eclipse.jst.jsp.core.internal.regions.DOMJSPRegionContexts;
-import org.eclipse.wst.html.ui.internal.taginfo.HTMLTagInfoHoverProcessor;
-import org.eclipse.wst.sse.core.internal.provisional.IndexedRegion;
-import org.eclipse.wst.sse.core.internal.provisional.text.IStructuredDocumentRegion;
-import org.eclipse.wst.sse.core.internal.provisional.text.ITextRegion;
-import org.eclipse.wst.xml.core.internal.provisional.document.IDOMNode;
-
-/**
- * Provides hover help documentation for JSP tags
- */
-public class JSPTagInfoHoverProcessor extends HTMLTagInfoHoverProcessor {
-
-	protected String computeRegionHelp(IndexedRegion treeNode, IDOMNode 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((IDOMNode) 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(IDOMNode xmlnode, IDOMNode 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 23b1058..0000000
--- a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/templates/EncodingTemplateVariableResolverJSP.java
+++ /dev/null
@@ -1,38 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *     
- *******************************************************************************/
-package org.eclipse.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.jst.jsp.ui.internal.JSPUIMessages;
-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"; //$NON-NLS-1$
-	}
-
-	/**
-	 * Creates a new encoding variable
-	 */
-	public EncodingTemplateVariableResolverJSP() {
-		super(ENCODING_TYPE, JSPUIMessages.Creating_files_encoding);
-	}
-
-	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 ae12677..0000000
--- a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/text/JSPDocumentRegionEdgeMatcher.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.ui.internal.text;
-
-import org.eclipse.jst.jsp.core.internal.regions.DOMJSPRegionContexts;
-import org.eclipse.wst.sse.ui.internal.text.DocumentRegionEdgeMatcher;
-import org.eclipse.wst.xml.core.internal.regions.DOMRegionContext;
-
-public class JSPDocumentRegionEdgeMatcher extends DocumentRegionEdgeMatcher {
-
-	protected final static char[] BRACKETS = {'{', '}', '(', ')', '[', ']'};
-
-	/**
-	 * @param validContexts
-	 * @param nextMatcher
-	 */
-	public JSPDocumentRegionEdgeMatcher() {
-		super(new String[]{DOMRegionContext.XML_TAG_NAME, DOMRegionContext.XML_COMMENT_TEXT, DOMJSPRegionContexts.JSP_COMMENT_TEXT, DOMJSPRegionContexts.JSP_DIRECTIVE_NAME, DOMJSPRegionContexts.JSP_ROOT_TAG_NAME, DOMRegionContext.XML_CDATA_TEXT, DOMRegionContext.XML_PI_OPEN, DOMRegionContext.XML_PI_CONTENT}, new JavaPairMatcher(BRACKETS));
-	}
-}
diff --git a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/text/JavaCodeReader.java b/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/text/JavaCodeReader.java
deleted file mode 100644
index ae8a3e0..0000000
--- a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/text/JavaCodeReader.java
+++ /dev/null
@@ -1,251 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.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 2, 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.ui.internal.text;
-
-import java.io.IOException;
-
-import org.eclipse.jface.text.BadLocationException;
-import org.eclipse.jface.text.IDocument;
-
-
-/**
- * Reads from a document either forwards or backwards. May be configured to
- * skip comments and strings.
- * 
- * Copied from org.eclipse.jdt.internal.ui.text so we don't have to
- * depend on the org.eclipse.jdt.ui plugin.
- * 
- * No modifications were made.
- */
-class JavaCodeReader extends SingleCharReader {
-
-	/** The EOF character */
-	public static final int EOF = -1;
-
-	private boolean fSkipComments = false;
-	private boolean fSkipStrings = false;
-	private boolean fForward = false;
-
-	private IDocument fDocument;
-	private int fOffset;
-
-	private int fEnd = -1;
-	private int fCachedLineNumber = -1;
-	private int fCachedLineOffset = -1;
-
-
-	public JavaCodeReader() {
-	}
-
-	/**
-	 * Returns the offset of the last read character. Should only be called after read has been called.
-	 */
-	public int getOffset() {
-		return fForward ? fOffset - 1 : fOffset;
-	}
-
-	public void configureForwardReader(IDocument document, int offset, int length, boolean skipComments, boolean skipStrings) throws IOException {
-		fDocument = document;
-		fOffset = offset;
-		fSkipComments = skipComments;
-		fSkipStrings = skipStrings;
-
-		fForward = true;
-		fEnd = Math.min(fDocument.getLength(), fOffset + length);
-	}
-
-	public void configureBackwardReader(IDocument document, int offset, boolean skipComments, boolean skipStrings) throws IOException {
-		fDocument = document;
-		fOffset = offset;
-		fSkipComments = skipComments;
-		fSkipStrings = skipStrings;
-
-		fForward = false;
-		try {
-			fCachedLineNumber = fDocument.getLineOfOffset(fOffset);
-		}
-		catch (BadLocationException x) {
-			throw new IOException(x.getMessage());
-		}
-	}
-
-	/*
-	 * @see Reader#close()
-	 */
-	public void close() throws IOException {
-		fDocument = null;
-	}
-
-	/*
-	 * @see SingleCharReader#read()
-	 */
-	public int read() throws IOException {
-		try {
-			return fForward ? readForwards() : readBackwards();
-		}
-		catch (BadLocationException x) {
-			throw new IOException(x.getMessage());
-		}
-	}
-
-	private void gotoCommentEnd() throws BadLocationException {
-		while (fOffset < fEnd) {
-			char current = fDocument.getChar(fOffset++);
-			if (current == '*') {
-				if (fOffset < fEnd && fDocument.getChar(fOffset) == '/') {
-					++fOffset;
-					return;
-				}
-			}
-		}
-	}
-
-	private void gotoStringEnd(char delimiter) throws BadLocationException {
-		while (fOffset < fEnd) {
-			char current = fDocument.getChar(fOffset++);
-			if (current == '\\') {
-				// ignore escaped characters
-				++fOffset;
-			}
-			else if (current == delimiter) {
-				return;
-			}
-		}
-	}
-
-	private void gotoLineEnd() throws BadLocationException {
-		int line = fDocument.getLineOfOffset(fOffset);
-		fOffset = fDocument.getLineOffset(line + 1);
-	}
-
-	private int readForwards() throws BadLocationException {
-		while (fOffset < fEnd) {
-			char current = fDocument.getChar(fOffset++);
-
-			switch (current) {
-				case '/' :
-
-					if (fSkipComments && fOffset < fEnd) {
-						char next = fDocument.getChar(fOffset);
-						if (next == '*') {
-							// a comment starts, advance to the comment end
-							++fOffset;
-							gotoCommentEnd();
-							continue;
-						}
-						else if (next == '/') {
-							// '//'-comment starts, advance to the line end
-							gotoLineEnd();
-							continue;
-						}
-					}
-
-					return current;
-
-				case '"' :
-				case '\'' :
-
-					if (fSkipStrings) {
-						gotoStringEnd(current);
-						continue;
-					}
-
-					return current;
-			}
-
-			return current;
-		}
-
-		return EOF;
-	}
-
-	private void handleSingleLineComment() throws BadLocationException {
-		int line = fDocument.getLineOfOffset(fOffset);
-		if (line < fCachedLineNumber) {
-			fCachedLineNumber = line;
-			fCachedLineOffset = fDocument.getLineOffset(line);
-			int offset = fOffset;
-			while (fCachedLineOffset < offset) {
-				char current = fDocument.getChar(offset--);
-				if (current == '/' && fCachedLineOffset <= offset && fDocument.getChar(offset) == '/') {
-					fOffset = offset;
-					return;
-				}
-			}
-		}
-	}
-
-	private void gotoCommentStart() throws BadLocationException {
-		while (0 < fOffset) {
-			char current = fDocument.getChar(fOffset--);
-			if (current == '*' && 0 <= fOffset && fDocument.getChar(fOffset) == '/')
-				return;
-		}
-	}
-
-	private void gotoStringStart(char delimiter) throws BadLocationException {
-		while (0 < fOffset) {
-			char current = fDocument.getChar(fOffset);
-			if (current == delimiter) {
-				if (!(0 <= fOffset && fDocument.getChar(fOffset - 1) == '\\'))
-					return;
-			}
-			--fOffset;
-		}
-	}
-
-	private int readBackwards() throws BadLocationException {
-
-		while (0 < fOffset) {
-			--fOffset;
-
-			handleSingleLineComment();
-
-			char current = fDocument.getChar(fOffset);
-			switch (current) {
-				case '/' :
-
-					if (fSkipComments && fOffset > 1) {
-						char next = fDocument.getChar(fOffset - 1);
-						if (next == '*') {
-							// a comment ends, advance to the comment start
-							fOffset -= 2;
-							gotoCommentStart();
-							continue;
-						}
-					}
-
-					return current;
-
-				case '"' :
-				case '\'' :
-
-					if (fSkipStrings) {
-						--fOffset;
-						gotoStringStart(current);
-						continue;
-					}
-
-					return current;
-			}
-
-			return current;
-		}
-
-		return EOF;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/text/JavaPairMatcher.java b/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/text/JavaPairMatcher.java
deleted file mode 100644
index 0a55e93..0000000
--- a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/text/JavaPairMatcher.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.jst.jsp.ui.internal.text;
-
-import java.io.IOException;
-
-import org.eclipse.jface.text.BadLocationException;
-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;
-
-
-/**
- * Helper class for match pairs of characters.
- *
- * Copied from org.eclipse.jdt.internal.ui.text so we don't have to
- * depend on the org.eclipse.jdt.ui plugin.
- * 
- * No modifications were made.
- */
-class JavaPairMatcher implements ICharacterPairMatcher {
-
-	protected char[] fPairs;
-	protected IDocument fDocument;
-	protected int fOffset;
-
-	protected int fStartPos;
-	protected int fEndPos;
-	protected int fAnchor;
-
-	protected JavaCodeReader fReader = new JavaCodeReader();
-
-
-	public JavaPairMatcher(char[] pairs) {
-		fPairs = pairs;
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.jface.text.source.ICharacterPairMatcher#match(org.eclipse.jface.text.IDocument, int)
-	 */
-	public IRegion match(IDocument document, int offset) {
-
-		fOffset = offset;
-
-		if (fOffset < 0)
-			return null;
-
-		fDocument = document;
-
-		if (fDocument != null && matchPairsAt() && fStartPos != fEndPos)
-			return new Region(fStartPos, fEndPos - fStartPos + 1);
-
-		return null;
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.jface.text.source.ICharacterPairMatcher#getAnchor()
-	 */
-	public int getAnchor() {
-		return fAnchor;
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.jface.text.source.ICharacterPairMatcher#dispose()
-	 */
-	public void dispose() {
-		clear();
-		fDocument = null;
-		fReader = null;
-	}
-
-	/*
-	 * @see org.eclipse.jface.text.source.ICharacterPairMatcher#clear()
-	 */
-	public void clear() {
-		if (fReader != null) {
-			try {
-				fReader.close();
-			}
-			catch (IOException x) {
-				// ignore
-			}
-		}
-	}
-
-	protected boolean matchPairsAt() {
-
-		int i;
-		int pairIndex1 = fPairs.length;
-		int pairIndex2 = fPairs.length;
-
-		fStartPos = -1;
-		fEndPos = -1;
-
-		// get the chars preceding and following the start position
-		try {
-
-			char prevChar = fDocument.getChar(Math.max(fOffset - 1, 0));
-			// modified behavior for http://dev.eclipse.org/bugs/show_bug.cgi?id=16879			
-			//			char nextChar= fDocument.getChar(fOffset);
-
-			// search for opening peer character next to the activation point
-			for (i = 0; i < fPairs.length; i = i + 2) {
-				//				if (nextChar == fPairs[i]) {
-				//					fStartPos= fOffset;
-				//					pairIndex1= i;
-				//				} else 
-				if (prevChar == fPairs[i]) {
-					fStartPos = fOffset - 1;
-					pairIndex1 = i;
-				}
-			}
-
-			// search for closing peer character next to the activation point
-			for (i = 1; i < fPairs.length; i = i + 2) {
-				if (prevChar == fPairs[i]) {
-					fEndPos = fOffset - 1;
-					pairIndex2 = i;
-				}
-				//				else if (nextChar == fPairs[i]) {
-				//					fEndPos= fOffset;
-				//					pairIndex2= i;
-				//				}
-			}
-
-			if (fEndPos > -1) {
-				fAnchor = RIGHT;
-				fStartPos = searchForOpeningPeer(fEndPos, fPairs[pairIndex2 - 1], fPairs[pairIndex2], fDocument);
-				if (fStartPos > -1)
-					return true;
-				else
-					fEndPos = -1;
-			}
-			else if (fStartPos > -1) {
-				fAnchor = LEFT;
-				fEndPos = searchForClosingPeer(fStartPos, fPairs[pairIndex1], fPairs[pairIndex1 + 1], fDocument);
-				if (fEndPos > -1)
-					return true;
-				else
-					fStartPos = -1;
-			}
-
-		}
-		catch (BadLocationException x) {
-		}
-		catch (IOException x) {
-		}
-
-		return false;
-	}
-
-	protected int searchForClosingPeer(int offset, int openingPeer, int closingPeer, IDocument document) throws IOException {
-
-		fReader.configureForwardReader(document, offset + 1, document.getLength(), true, true);
-
-		int stack = 1;
-		int c = fReader.read();
-		while (c != JavaCodeReader.EOF) {
-			if (c == openingPeer && c != closingPeer)
-				stack++;
-			else if (c == closingPeer)
-				stack--;
-
-			if (stack == 0)
-				return fReader.getOffset();
-
-			c = fReader.read();
-		}
-
-		return -1;
-	}
-
-	protected int searchForOpeningPeer(int offset, int openingPeer, int closingPeer, IDocument document) throws IOException {
-
-		fReader.configureBackwardReader(document, offset, true, true);
-
-		int stack = 1;
-		int c = fReader.read();
-		while (c != JavaCodeReader.EOF) {
-			if (c == closingPeer && c != openingPeer)
-				stack++;
-			else if (c == openingPeer)
-				stack--;
-
-			if (stack == 0)
-				return fReader.getOffset();
-
-			c = fReader.read();
-		}
-
-		return -1;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/text/SingleCharReader.java b/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/text/SingleCharReader.java
deleted file mode 100644
index 8b9abff..0000000
--- a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/text/SingleCharReader.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.text;
-
-
-
-//package org.eclipse.jdt.internal.corext.javadoc;
-// todo: this class is copied from the above package until it is made non-internal.  Until that time, check that class occassionally for bugfixes.
-
-
-
-import java.io.IOException;
-import java.io.Reader;
-
-abstract class SingleCharReader extends Reader {
-
-
-	/**
-	 * @see Reader#read(char)
-	 */
-	public abstract int read() throws IOException;
-
-	/**
-	 * @see Reader#read(char[],int,int)
-	 */
-	public int read(char cbuf[], int off, int len) throws IOException {
-		int end = off + len;
-		for (int i = off; i < end; i++) {
-			int ch = read();
-			if (ch == -1) {
-				if (i == off) {
-					return -1;
-				}
-				else {
-					return i - off;
-				}
-			}
-			cbuf[i] = (char) ch;
-		}
-		return len;
-	}
-
-	/**
-	 * @see Reader#ready()
-	 */
-	public boolean ready() throws IOException {
-		return true;
-	}
-
-	/**
-	 * Gets the content as a String
-	 */
-	public String getString() throws IOException {
-		StringBuffer buf = new StringBuffer();
-		int ch;
-		while ((ch = read()) != -1) {
-			buf.append((char) ch);
-		}
-		return buf.toString();
-	}
-}
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 f8c9285..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.internal.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/NewJSPTemplatesWizardPage.java b/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/wizard/NewJSPTemplatesWizardPage.java
deleted file mode 100644
index 638e0a7..0000000
--- a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/wizard/NewJSPTemplatesWizardPage.java
+++ /dev/null
@@ -1,471 +0,0 @@
-package org.eclipse.jst.jsp.ui.internal.wizard;
-
-import org.eclipse.jface.dialogs.Dialog;
-import org.eclipse.jface.preference.PreferenceDialog;
-import org.eclipse.jface.text.Document;
-import org.eclipse.jface.text.IDocument;
-import org.eclipse.jface.text.source.SourceViewer;
-import org.eclipse.jface.text.source.SourceViewerConfiguration;
-import org.eclipse.jface.text.templates.DocumentTemplateContext;
-import org.eclipse.jface.text.templates.Template;
-import org.eclipse.jface.text.templates.TemplateBuffer;
-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.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.LabelProvider;
-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.Viewer;
-import org.eclipse.jface.viewers.ViewerSorter;
-import org.eclipse.jface.wizard.WizardPage;
-import org.eclipse.jst.jsp.ui.internal.JSPUIMessages;
-import org.eclipse.jst.jsp.ui.internal.JSPUIPlugin;
-import org.eclipse.jst.jsp.ui.internal.Logger;
-import org.eclipse.jst.jsp.ui.internal.preferences.JSPUIPreferenceNames;
-import org.eclipse.jst.jsp.ui.internal.templates.TemplateContextTypeIdsJSP;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.events.ControlAdapter;
-import org.eclipse.swt.events.ControlEvent;
-import org.eclipse.swt.events.SelectionAdapter;
-import org.eclipse.swt.events.SelectionEvent;
-import org.eclipse.swt.graphics.Image;
-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.Button;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Control;
-import org.eclipse.swt.widgets.Label;
-import org.eclipse.swt.widgets.Link;
-import org.eclipse.swt.widgets.Table;
-import org.eclipse.swt.widgets.TableColumn;
-import org.eclipse.ui.dialogs.PreferencesUtil;
-
-/**
- * Templates page in new file wizard. Allows users to select a new file
- * template to be applied in new file.
- * 
- */
-public class NewJSPTemplatesWizardPage extends WizardPage {
-
-	/**
-	 * Content provider for templates
-	 */
-	private class TemplateContentProvider implements IStructuredContentProvider {
-		/** The template store. */
-		private TemplateStore fStore;
-
-		/*
-		 * @see IContentProvider#dispose()
-		 */
-		public void dispose() {
-			fStore = null;
-		}
-
-		/*
-		 * @see IStructuredContentProvider#getElements(Object)
-		 */
-		public Object[] getElements(Object input) {
-			return fStore.getTemplates(TemplateContextTypeIdsJSP.NEW);
-		}
-
-		/*
-		 * @see IContentProvider#inputChanged(Viewer, Object, Object)
-		 */
-		public void inputChanged(Viewer viewer, Object oldInput, Object newInput) {
-			fStore = (TemplateStore) newInput;
-		}
-	}
-
-	/**
-	 * Label provider for templates.
-	 */
-	private class TemplateLabelProvider extends LabelProvider implements ITableLabelProvider {
-
-		/*
-		 * @see org.eclipse.jface.viewers.ITableLabelProvider#getColumnImage(java.lang.Object,
-		 *      int)
-		 */
-		public Image getColumnImage(Object element, int columnIndex) {
-			return null;
-		}
-
-		/*
-		 * @see org.eclipse.jface.viewers.ITableLabelProvider#getColumnText(java.lang.Object,
-		 *      int)
-		 */
-		public String getColumnText(Object element, int columnIndex) {
-			Template template = (Template) element;
-
-			switch (columnIndex) {
-				case 0 :
-					return template.getName();
-				case 1 :
-					return template.getDescription();
-				default :
-					return ""; //$NON-NLS-1$
-			}
-		}
-	}
-
-	/** Last selected template name */
-	private String fLastSelectedTemplateName;
-	/** The viewer displays the pattern of selected template. */
-	private SourceViewer fPatternViewer;
-	/** The table presenting the templates. */
-	private TableViewer fTableViewer;
-	/** Template store used by this wizard page */
-	private TemplateStore fTemplateStore;
-	/** Checkbox for using templates. */
-	private Button fUseTemplateButton;
-
-	public NewJSPTemplatesWizardPage() {
-		super("NewJSPTemplatesWizardPage", JSPUIMessages.NewJSPTemplatesWizardPage_0, null); //$NON-NLS-1$
-		setDescription(JSPUIMessages.NewJSPTemplatesWizardPage_1);
-	}
-
-	/**
-	 * Correctly resizes the table so no phantom columns appear
-	 * 
-	 * @param parent
-	 *            the parent control
-	 * @param buttons
-	 *            the buttons
-	 * @param table
-	 *            the table
-	 * @param column1
-	 *            the first column
-	 * @param column2
-	 *            the second column
-	 * @param column3
-	 *            the third column
-	 */
-	private void configureTableResizing(final Composite parent, final Table table, final TableColumn column1, final TableColumn column2) {
-		parent.addControlListener(new ControlAdapter() {
-			public void controlResized(ControlEvent e) {
-				Rectangle area = parent.getClientArea();
-				Point preferredSize = table.computeSize(SWT.DEFAULT, SWT.DEFAULT);
-				int width = area.width - 2 * table.getBorderWidth();
-				if (preferredSize.y > area.height) {
-					// Subtract the scrollbar width from the total column
-					// width
-					// if a vertical scrollbar will be required
-					Point vBarSize = table.getVerticalBar().getSize();
-					width -= vBarSize.x;
-				}
-
-				Point oldSize = table.getSize();
-				if (oldSize.x > width) {
-					// table is getting smaller so make the columns
-					// smaller first and then resize the table to
-					// match the client area width
-					column1.setWidth(width / 2);
-					column2.setWidth(width / 2);
-					table.setSize(width, area.height);
-				}
-				else {
-					// table is getting bigger so make the table
-					// bigger first and then make the columns wider
-					// to match the client area width
-					table.setSize(width, area.height);
-					column1.setWidth(width / 2);
-					column2.setWidth(width / 2);
-				}
-			}
-		});
-	}
-
-	public void createControl(Composite ancestor) {
-		Composite parent = new Composite(ancestor, SWT.NONE);
-		GridLayout layout = new GridLayout();
-		layout.numColumns = 2;
-		parent.setLayout(layout);
-
-		// create checkbox for user to use JSP Template
-		fUseTemplateButton = new Button(parent, SWT.CHECK);
-		fUseTemplateButton.setText(JSPUIMessages.NewJSPTemplatesWizardPage_4);
-		GridData data = new GridData(SWT.FILL, SWT.FILL, true, false, 2, 1);
-		fUseTemplateButton.setLayoutData(data);
-		fUseTemplateButton.addSelectionListener(new SelectionAdapter() {
-			public void widgetSelected(SelectionEvent e) {
-				enableTemplates();
-			}
-		});
-
-		// create composite for Templates table
-		Composite innerParent = new Composite(parent, SWT.NONE);
-		GridLayout innerLayout = new GridLayout();
-		innerLayout.numColumns = 2;
-		innerLayout.marginHeight = 0;
-		innerLayout.marginWidth = 0;
-		innerParent.setLayout(innerLayout);
-		GridData gd = new GridData(SWT.FILL, SWT.FILL, true, true, 2, 1);
-		innerParent.setLayoutData(gd);
-
-		// Create linked text to just to templates preference page
-		Link link = new Link(innerParent, SWT.NONE);
-		link.setText(JSPUIMessages.NewJSPTemplatesWizardPage_6);
-		data = new GridData(SWT.FILL, SWT.FILL, true, false, 2, 1);
-		link.setLayoutData(data);
-		link.addSelectionListener(new SelectionAdapter() {
-			public void widgetSelected(SelectionEvent e) {
-				linkClicked();
-			}
-		});
-
-		// create table that displays templates
-		Table table = new Table(innerParent, SWT.BORDER | SWT.FULL_SELECTION);
-
-		data = new GridData(GridData.FILL_BOTH);
-		data.widthHint = convertWidthInCharsToPixels(2);
-		data.heightHint = convertHeightInCharsToPixels(10);
-		data.horizontalSpan = 2;
-		table.setLayoutData(data);
-		table.setHeaderVisible(true);
-		table.setLinesVisible(true);
-		TableLayout tableLayout = new TableLayout();
-		table.setLayout(tableLayout);
-
-		TableColumn column1 = new TableColumn(table, SWT.NONE);
-		column1.setText(JSPUIMessages.NewJSPTemplatesWizardPage_2);
-
-		TableColumn column2 = new TableColumn(table, SWT.NONE);
-		column2.setText(JSPUIMessages.NewJSPTemplatesWizardPage_3);
-
-		fTableViewer = new TableViewer(table);
-		fTableViewer.setLabelProvider(new TemplateLabelProvider());
-		fTableViewer.setContentProvider(new TemplateContentProvider());
-
-		fTableViewer.setSorter(new ViewerSorter() {
-			public int compare(Viewer viewer, Object object1, Object object2) {
-				if ((object1 instanceof Template) && (object2 instanceof Template)) {
-					Template left = (Template) object1;
-					Template right = (Template) object2;
-					int result = left.getName().compareToIgnoreCase(right.getName());
-					if (result != 0)
-						return result;
-					return left.getDescription().compareToIgnoreCase(right.getDescription());
-				}
-				return super.compare(viewer, object1, object2);
-			}
-
-			public boolean isSorterProperty(Object element, String property) {
-				return true;
-			}
-		});
-
-		fTableViewer.addSelectionChangedListener(new ISelectionChangedListener() {
-			public void selectionChanged(SelectionChangedEvent e) {
-				updateViewerInput();
-			}
-		});
-
-		// create viewer that displays currently selected template's contents
-		fPatternViewer = doCreateViewer(parent);
-
-		fTemplateStore = JSPUIPlugin.getDefault().getTemplateStore();
-		fTableViewer.setInput(fTemplateStore);
-
-		configureTableResizing(innerParent, table, column1, column2);
-		loadLastSavedPreferences();
-
-		Dialog.applyDialogFont(parent);
-		setControl(parent);
-	}
-
-	/**
-	 * Creates, configures and returns a source viewer to present the template
-	 * pattern on the preference page. Clients may override to provide a
-	 * custom source viewer featuring e.g. syntax coloring.
-	 * 
-	 * @param parent
-	 *            the parent control
-	 * @return a configured source viewer
-	 */
-	private SourceViewer createViewer(Composite parent) {
-		SourceViewer viewer = new SourceViewer(parent, null, null, false, SWT.BORDER | SWT.V_SCROLL | SWT.H_SCROLL);
-		SourceViewerConfiguration configuration = new SourceViewerConfiguration();
-		viewer.configure(configuration);
-		IDocument document = new Document();
-		viewer.setDocument(document);
-		return viewer;
-	}
-
-	private SourceViewer doCreateViewer(Composite parent) {
-		Label label = new Label(parent, SWT.NONE);
-		label.setText(JSPUIMessages.NewJSPTemplatesWizardPage_5);
-		GridData data = new GridData();
-		data.horizontalSpan = 2;
-		label.setLayoutData(data);
-
-		SourceViewer viewer = createViewer(parent);
-		viewer.setEditable(false);
-
-		Control control = viewer.getControl();
-		data = new GridData(GridData.FILL_BOTH);
-		data.horizontalSpan = 2;
-		data.heightHint = convertHeightInCharsToPixels(5);
-		control.setLayoutData(data);
-
-		return viewer;
-	}
-
-	/**
-	 * Enable/disable controls in page based on fUseTemplateButton's current
-	 * state.
-	 */
-	void enableTemplates() {
-		boolean enabled = fUseTemplateButton.getSelection();
-
-		if (!enabled) {
-			// save last selected template
-			Template template = getSelectedTemplate();
-			if (template != null)
-				fLastSelectedTemplateName = template.getName();
-			else
-				fLastSelectedTemplateName = ""; //$NON-NLS-1$
-
-			fTableViewer.setSelection(null);
-		}
-		else {
-			setSelectedTemplate(fLastSelectedTemplateName);
-		}
-
-		fTableViewer.getControl().setEnabled(enabled);
-		fPatternViewer.getControl().setEnabled(enabled);
-	}
-
-	/**
-	 * Return the template preference page id
-	 * 
-	 * @return
-	 */
-	private String getPreferencePageId() {
-		return "org.eclipse.wst.sse.ui.preferences.jsp.templates"; //$NON-NLS-1$
-	}
-
-	/**
-	 * Get the currently selected template.
-	 * 
-	 * @return
-	 */
-	private Template getSelectedTemplate() {
-		Template template = null;
-		IStructuredSelection selection = (IStructuredSelection) fTableViewer.getSelection();
-
-		if (selection.size() == 1) {
-			template = (Template) selection.getFirstElement();
-		}
-		return template;
-	}
-
-	/**
-	 * Returns template string to insert.
-	 * 
-	 * @return String to insert or null if none is to be inserted
-	 */
-	String getTemplateString() {
-		String templateString = null;
-
-		Template template = getSelectedTemplate();
-		if (template != null) {
-			TemplateContextType contextType = JSPUIPlugin.getDefault().getTemplateContextRegistry().getContextType(TemplateContextTypeIdsJSP.NEW);
-			IDocument document = new Document();
-			TemplateContext context = new DocumentTemplateContext(contextType, document, 0, 0);
-			try {
-				TemplateBuffer buffer = context.evaluate(template);
-				templateString = buffer.getString();
-			}
-			catch (Exception e) {
-				Logger.log(Logger.WARNING_DEBUG, "Could not create template for new jsp", e); //$NON-NLS-1$
-			}
-		}
-
-		return templateString;
-	}
-
-	void linkClicked() {
-		String pageId = getPreferencePageId();
-		PreferenceDialog dialog = PreferencesUtil.createPreferenceDialogOn(getShell(), pageId, new String[]{pageId}, null);
-		dialog.open();
-		fTableViewer.refresh();
-	}
-
-	/**
-	 * Load the last template name used in New JSP File wizard.
-	 */
-	private void loadLastSavedPreferences() {
-		String templateName = JSPUIPlugin.getDefault().getPreferenceStore().getString(JSPUIPreferenceNames.NEW_FILE_TEMPLATE_NAME);
-		if (templateName == null || templateName.length() == 0) {
-			fLastSelectedTemplateName = ""; //$NON-NLS-1$
-			fUseTemplateButton.setSelection(false);
-		}
-		else {
-			fLastSelectedTemplateName = templateName;
-			fUseTemplateButton.setSelection(true);
-		}
-		enableTemplates();
-	}
-
-	/**
-	 * Save template name used for next call to New JSP File wizard.
-	 */
-	void saveLastSavedPreferences() {
-		String templateName = ""; //$NON-NLS-1$
-
-		Template template = getSelectedTemplate();
-		if (template != null) {
-			templateName = template.getName();
-		}
-
-		JSPUIPlugin.getDefault().getPreferenceStore().setValue(JSPUIPreferenceNames.NEW_FILE_TEMPLATE_NAME, templateName);
-		JSPUIPlugin.getDefault().savePluginPreferences();
-	}
-
-	/**
-	 * Select a template in the table viewer given the template name. If
-	 * template name cannot be found or templateName is null, just select
-	 * first item in table. If no items in table select nothing.
-	 * 
-	 * @param templateName
-	 */
-	private void setSelectedTemplate(String templateName) {
-		Object template = null;
-
-		if (templateName != null && templateName.length() > 0) {
-			// pick the last used template
-			template = fTemplateStore.findTemplate(templateName, TemplateContextTypeIdsJSP.NEW);
-		}
-
-		// no record of last used template so just pick first element
-		if (template == null) {
-			// just pick first element
-			template = fTableViewer.getElementAt(0);
-		}
-
-		if (template != null) {
-			IStructuredSelection selection = new StructuredSelection(template);
-			fTableViewer.setSelection(selection, true);
-		}
-	}
-
-	/**
-	 * Updates the pattern viewer.
-	 */
-	void updateViewerInput() {
-		Template template = getSelectedTemplate();
-		if (template != null) {
-			fPatternViewer.getDocument().set(template.getPattern());
-		}
-		else {
-			fPatternViewer.getDocument().set(""); //$NON-NLS-1$
-		}
-	}
-}
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 3787046..0000000
--- a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/wizard/NewJSPWizard.java
+++ /dev/null
@@ -1,146 +0,0 @@
-package org.eclipse.jst.jsp.ui.internal.wizard;
-
-import java.io.ByteArrayInputStream;
-import java.io.ByteArrayOutputStream;
-import java.io.OutputStreamWriter;
-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.core.runtime.Platform;
-import org.eclipse.core.runtime.Preferences;
-import org.eclipse.core.runtime.content.IContentType;
-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.core.internal.JSPCorePlugin;
-import org.eclipse.jst.jsp.core.internal.provisional.contenttype.ContentTypeIdForJSP;
-import org.eclipse.jst.jsp.ui.internal.JSPUIMessages;
-import org.eclipse.jst.jsp.ui.internal.JSPUIPlugin;
-import org.eclipse.jst.jsp.ui.internal.Logger;
-import org.eclipse.osgi.util.NLS;
-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.sse.core.internal.encoding.CommonEncodingPreferenceNames;
-
-public class NewJSPWizard extends Wizard implements INewWizard {
-	static String PAGE_IMAGE = "/icons/full/wizban/newjspfile_wiz.gif"; //$NON-NLS-1$
-	private WizardNewFileCreationPage fNewFilePage;
-	private NewJSPTemplatesWizardPage fNewFileTemplatesPage;
-	private IStructuredSelection fSelection;
-	private List fValidExtensions = null;
-
-	/**
-	 * Get list of valid extensions for JSP Content type
-	 * 
-	 * @return
-	 */
-	List getValidExtensions() {
-		if (fValidExtensions == null) {
-			IContentType type = Platform.getContentTypeManager().getContentType(ContentTypeIdForJSP.ContentTypeID_JSP);
-			fValidExtensions = new ArrayList(Arrays.asList(type.getFileSpecs(IContentType.FILE_EXTENSION_SPEC)));
-		}
-		return fValidExtensions;
-	}
-
-	public void addPages() {
-		fNewFilePage = new WizardNewFileCreationPage("JSPWizardNewFileCreationPage", new StructuredSelection(IDE.computeSelectedResources(fSelection))) { //$NON-NLS-1$
-			protected boolean validatePage() {
-				IPath handlePath = new Path(getFileName());
-				String extension = handlePath.getFileExtension();
-				if (extension == null || !getValidExtensions().contains(extension)) {
-					setErrorMessage(NLS.bind(JSPUIMessages._ERROR_FILENAME_MUST_END_JSP, getValidExtensions().toString()));
-					return false;
-				}
-				setErrorMessage(null);
-				return super.validatePage();
-			}
-		};
-		fNewFilePage.setTitle(JSPUIMessages._UI_WIZARD_NEW_HEADING);
-		fNewFilePage.setDescription(JSPUIMessages._UI_WIZARD_NEW_DESCRIPTION);
-
-		addPage(fNewFilePage);
-
-		fNewFileTemplatesPage = new NewJSPTemplatesWizardPage();
-		addPage(fNewFileTemplatesPage);
-	}
-
-	public void init(IWorkbench aWorkbench, IStructuredSelection aSelection) {
-		fSelection = aSelection;
-		setWindowTitle(JSPUIMessages._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() {
-		// save user options for next use
-		fNewFileTemplatesPage.saveLastSavedPreferences();
-
-		// create a new empty file
-		IFile file = fNewFilePage.createNewFile();
-
-		// put template contents into file
-		String templateString = fNewFileTemplatesPage.getTemplateString();
-		if (templateString != null) {
-			// determine the encoding for the new file
-			Preferences preference = JSPCorePlugin.getDefault().getPluginPreferences();
-			String charSet = preference.getString(CommonEncodingPreferenceNames.OUTPUT_CODESET);
-
-			try {
-				ByteArrayOutputStream outputStream = new ByteArrayOutputStream();
-				OutputStreamWriter outputStreamWriter = null;
-				if (charSet == null || charSet.trim().equals("")) { //$NON-NLS-1$
-					// just use default encoding
-					outputStreamWriter = new OutputStreamWriter(outputStream);
-				} else {
-					outputStreamWriter = new OutputStreamWriter(outputStream, charSet);
-				}
-				outputStreamWriter.write(templateString);
-				outputStreamWriter.flush();
-				outputStreamWriter.close();
-				ByteArrayInputStream inputStream = new ByteArrayInputStream(outputStream.toByteArray());
-				file.setContents(inputStream, true, false, null);
-				inputStream.close();
-			}
-			catch (Exception e) {
-				Logger.log(Logger.WARNING_DEBUG, "Could not create contents for new JSP file", e); //$NON-NLS-1$
-			}
-		}
-
-		// open the file in editor
-		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 845872e..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=New JSP File (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=New JSP File (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=New JSP File (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 3539631..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="org.eclipse.jst.jsp.ui.templates.jspscriptlet" context="jsp_tag" enabled="true">%Templates.jspscriptlet.content</template>
-
-<template name="%Templates.jsphiddencomment.name" description="%Templates.jsphiddencomment.desc" id="org.eclipse.jst.jsp.ui.templates.jsphiddencomment" context="jsp_tag" enabled="true">%Templates.jsphiddencomment.content</template>
-
-<template name="%Templates.jspdeclaration.name" description="%Templates.jspdeclaration.desc" id="org.eclipse.jst.jsp.ui.templates.jspdeclaration" context="jsp_tag" enabled="true">%Templates.jspdeclaration.content</template>
-
-<template name="%Templates.jspexpression.name" description="%Templates.jspexpression.desc" id="org.eclipse.jst.jsp.ui.templates.jspexpression" context="jsp_all" enabled="true">%Templates.jspexpression.content</template>
-
-<template name="%Templates.jspincludedirective.name" description="%Templates.jspincludedirective.desc" id="org.eclipse.jst.jsp.ui.templates.jspincludedirective" context="jsp_tag" enabled="true">%Templates.jspincludedirective.content</template>
-
-<template name="%Templates.jsppagedirective.name" description="%Templates.jsppagedirective.desc" id="org.eclipse.jst.jsp.ui.templates.jsppagedirective" context="jsp_tag" enabled="true">%Templates.jsppagedirective.content</template>
-
-<template name="%Templates.jsptaglibdirective.name" description="%Templates.jsptaglibdirective.desc" id="org.eclipse.jst.jsp.ui.templates.jsptaglibdirective" context="jsp_tag" enabled="true">%Templates.jsptaglibdirective.content</template>
-
-<template name="%Templates.jsphtml.name" description="%Templates.jsphtml.desc" id="org.eclipse.jst.jsp.ui.templates.jsphtml" context="jsp_new" enabled="true">%Templates.jsphtml.content</template>
-
-<template name="%Templates.jspxhtml.name" description="%Templates.jspxhtml.desc" id="org.eclipse.jst.jsp.ui.templates.jspxhtml" context="jsp_new" enabled="true">%Templates.jspxhtml.content</template>
-
-<template name="%Templates.jspxhtmlxml.name" description="%Templates.jspxhtmlxml.desc" id="org.eclipse.jst.jsp.ui.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.core/.classpath b/bundles/org.eclipse.wst.css.core/.classpath
deleted file mode 100644
index 275b34c..0000000
--- a/bundles/org.eclipse.wst.css.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.wst.css.core/.cvsignore b/bundles/org.eclipse.wst.css.core/.cvsignore
deleted file mode 100644
index 0e7c86b..0000000
--- a/bundles/org.eclipse.wst.css.core/.cvsignore
+++ /dev/null
@@ -1,5 +0,0 @@
-bin
-temp.folder
-cssmodel.jar
-build.xml
-dev.properties
diff --git a/bundles/org.eclipse.wst.css.core/.options b/bundles/org.eclipse.wst.css.core/.options
deleted file mode 100644
index 490975b..0000000
--- a/bundles/org.eclipse.wst.css.core/.options
+++ /dev/null
@@ -1,2 +0,0 @@
-org.eclipse.wst.css.core/debug=true
-org.eclipse.wst.css.core/debug/tracefilter=
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/.project b/bundles/org.eclipse.wst.css.core/.project
deleted file mode 100644
index bb046e9..0000000
--- a/bundles/org.eclipse.wst.css.core/.project
+++ /dev/null
@@ -1,28 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<projectDescription>
-	<name>org.eclipse.wst.css.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.css.core/.settings/org.eclipse.jdt.core.prefs b/bundles/org.eclipse.wst.css.core/.settings/org.eclipse.jdt.core.prefs
deleted file mode 100644
index 2e1acf0..0000000
--- a/bundles/org.eclipse.wst.css.core/.settings/org.eclipse.jdt.core.prefs
+++ /dev/null
@@ -1,48 +0,0 @@
-#Mon May 30 17:56:59 EDT 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.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=error
-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.undocumentedEmptyBlock=ignore
-org.eclipse.jdt.core.compiler.problem.unnecessaryElse=warning
-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.css.core/.settings/org.eclipse.pde.prefs b/bundles/org.eclipse.wst.css.core/.settings/org.eclipse.pde.prefs
deleted file mode 100644
index 42fb716..0000000
--- a/bundles/org.eclipse.wst.css.core/.settings/org.eclipse.pde.prefs
+++ /dev/null
@@ -1,14 +0,0 @@
-#Fri May 27 23:56:32 EDT 2005
-compilers.p.deprecated=1
-compilers.p.illegal-att-value=0
-compilers.p.no-required-att=0
-compilers.p.not-externalized-att=1
-compilers.p.unknown-attribute=0
-compilers.p.unknown-class=0
-compilers.p.unknown-element=0
-compilers.p.unknown-resource=0
-compilers.p.unresolved-ex-points=0
-compilers.p.unresolved-import=0
-compilers.p.unused-element-or-attribute=0
-compilers.use-project=true
-eclipse.preferences.version=1
diff --git a/bundles/org.eclipse.wst.css.core/META-INF/MANIFEST.MF b/bundles/org.eclipse.wst.css.core/META-INF/MANIFEST.MF
deleted file mode 100644
index 7e936fa..0000000
--- a/bundles/org.eclipse.wst.css.core/META-INF/MANIFEST.MF
+++ /dev/null
@@ -1,41 +0,0 @@
-Manifest-Version: 1.0
-Bundle-ManifestVersion: 2
-Bundle-Name: %pluginName
-Bundle-SymbolicName: org.eclipse.wst.css.core; singleton:=true
-Bundle-Version: 1.0.0
-Bundle-Activator: org.eclipse.wst.css.core.internal.CSSCorePlugin
-Bundle-Vendor: %providerName
-Bundle-Localization: plugin
-Export-Package: org.eclipse.wst.css.core.internal,
- org.eclipse.wst.css.core.internal.cleanup,
- org.eclipse.wst.css.core.internal.contentmodel,
- org.eclipse.wst.css.core.internal.contenttype,
- org.eclipse.wst.css.core.internal.document,
- org.eclipse.wst.css.core.internal.encoding,
- org.eclipse.wst.css.core.internal.event,
- org.eclipse.wst.css.core.internal.eventimpl,
- org.eclipse.wst.css.core.internal.format,
- org.eclipse.wst.css.core.internal.formatter,
- org.eclipse.wst.css.core.internal.metamodel,
- org.eclipse.wst.css.core.internal.metamodel.util,
- org.eclipse.wst.css.core.internal.metamodelimpl,
- org.eclipse.wst.css.core.internal.modelhandler,
- org.eclipse.wst.css.core.internal.parser,
- org.eclipse.wst.css.core.internal.parser.regions,
- org.eclipse.wst.css.core.internal.parserz,
- org.eclipse.wst.css.core.internal.preferences,
- org.eclipse.wst.css.core.internal.provisional.adapters,
- org.eclipse.wst.css.core.internal.provisional.contenttype,
- org.eclipse.wst.css.core.internal.provisional.document,
- org.eclipse.wst.css.core.internal.provisional.preferences,
- org.eclipse.wst.css.core.internal.provisional.text,
- org.eclipse.wst.css.core.internal.tasks,
- org.eclipse.wst.css.core.internal.text,
- org.eclipse.wst.css.core.internal.util,
- org.eclipse.wst.css.core.internal.util.declaration
-Require-Bundle: org.eclipse.core.runtime,
- org.eclipse.core.resources,
- org.eclipse.wst.sse.ui,
- org.eclipse.wst.xml.core,
- org.eclipse.wst.sse.core
-Eclipse-AutoStart: true
diff --git a/bundles/org.eclipse.wst.css.core/build.properties b/bundles/org.eclipse.wst.css.core/build.properties
deleted file mode 100644
index 7af2510..0000000
--- a/bundles/org.eclipse.wst.css.core/build.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
-###############################################################################
-bin.includes = plugin.xml,\
-               cssprofile/,\
-               .options,\
-               plugin.properties,\
-               META-INF/,\
-               .
-src.includes = plugin.xml,\
-               cssprofile/,\
-               build.xml,\
-               .options,\
-               plugin.properties,\
-               component.xml,\
-               build.properties
-source.. = src/
-               
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/component.xml b/bundles/org.eclipse.wst.css.core/component.xml
deleted file mode 100644
index 277b26f..0000000
--- a/bundles/org.eclipse.wst.css.core/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.css">
-        <component-depends unrestricted="true"></component-depends>
-        <plugin id="org.eclipse.wst.css.core" />
-        <plugin id="org.eclipse.wst.css.ui" />
-
-</component>
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/cssprofile/css-profile.dtd b/bundles/org.eclipse.wst.css.core/cssprofile/css-profile.dtd
deleted file mode 100644
index 35535a8..0000000
--- a/bundles/org.eclipse.wst.css.core/cssprofile/css-profile.dtd
+++ /dev/null
@@ -1,132 +0,0 @@
-<!-- DTD for CSS Meta Model Profile -->
-
-<!-- Entities -->
-
-<!-- name-definition	: In defining meta model object, object name -->
-<!-- is given by using this attribute. -->
-
-<!ENTITY % name-definition 'name CDATA #REQUIRED' >
-
-<!-- name-reference		: used to refer meta model object that defined -->
-<!-- by name-definition -->
-
-<!ENTITY % name-reference 'name CDATA #REQUIRED' >
-
-<!-- availability		: CSS Meta Model Profile permit importing -->
-<!-- other profile and describe difference for it. -->
-
-<!ENTITY % availability 'enabled (true | false) "true"' >
-<!ENTITY % overwrite 'overwrite (true | false) "false"' >
-
-<!-- ******************** -->
-<!--  elments/attributes  -->
-<!-- ******************** -->
-
-<!ELEMENT css-profile (profile-import? , (stylesheet-def | charset-rule-def | import-rule-def | page-rule-def | media-rule-def | fontface-rule-def | style-rule-def | property-def | descriptor-def | container-def | function-def | number-def | unit-def | keyword-def | category-def | pseudo-element-def | pseudo-class-def)*) >
-
-<!-- a profile can include other profile -->
-
-<!ELEMENT profile-import EMPTY >
-<!ATTLIST profile-import name CDATA #REQUIRED >
-
-<!-- which type of rule can be used? -->
-
-<!ELEMENT stylesheet-def (description? , (charset-rule | import-rule | page-rule | media-rule | fontface-rule | style-rule)*) >
-<!ATTLIST stylesheet-def %overwrite; >
-
-<!ELEMENT charset-rule EMPTY >
-<!ATTLIST charset-rule %availability; >
-<!ELEMENT import-rule EMPTY >
-<!ATTLIST import-rule %availability; >
-<!ELEMENT page-rule EMPTY >
-<!ATTLIST page-rule %availability; >
-<!ELEMENT media-rule EMPTY >
-<!ATTLIST media-rule %availability; >
-<!ELEMENT fontface-rule EMPTY >
-<!ATTLIST fontface-rule %availability; >
-<!ELEMENT style-rule EMPTY >
-<!ATTLIST style-rule %availability; >
-
-<!ELEMENT charset-rule-def (description?) >
-<!ATTLIST charset-rule-def %overwrite; >
-
-<!ELEMENT import-rule-def (description?) >
-<!ATTLIST import-rule-def %overwrite; >
-
-<!ELEMENT page-rule-def (description? , (property | pseudo-class)*) >
-<!ATTLIST page-rule-def %overwrite; >
-
-<!ELEMENT media-rule-def (description?) >
-<!ATTLIST media-rule-def %overwrite; >
-
-<!ELEMENT fontface-rule-def (description? , descriptor*) >
-<!ATTLIST fontface-rule-def %overwrite; >
-
-<!ELEMENT style-rule-def (description? , (property | selector-expression | pseudo-class | pseudo-element)*) >
-<!ATTLIST style-rule-def %overwrite; >
-
-<!ELEMENT selector-expression EMPTY >
-<!ATTLIST selector-expression name (descendant | child | adjacent | universal | attribute) #REQUIRED %availability; >
-
-<!ELEMENT pseudo-class EMPTY >
-<!ATTLIST pseudo-class %name-reference; %availability; >
-
-<!ELEMENT pseudo-element EMPTY >
-<!ATTLIST pseudo-element %name-reference; %availability; >
-
-<!ELEMENT pseudo-class-def (description?, selector-value) >
-<!ATTLIST pseudo-class-def %name-definition; %overwrite; >
-<!ELEMENT selector-value (#PCDATA) >
-
-<!ELEMENT pseudo-element-def (description?, selector-value) >
-<!ATTLIST pseudo-element-def %name-definition; %overwrite; >
-
-<!ELEMENT keyword-def (description? , keyword-value) >
-<!ATTLIST keyword-def %name-definition; %overwrite; >
-<!ELEMENT keyword-value (#PCDATA) >
-<!ELEMENT description (#PCDATA) >
-
-<!ELEMENT function-def (description? , function-value) >
-<!ATTLIST function-def %name-definition; %overwrite; >
-<!ELEMENT function-value (#PCDATA) >
-
-<!ELEMENT number-def (description? , unit*) >
-<!ATTLIST number-def %name-definition; %overwrite; >
-<!ELEMENT unit EMPTY >
-<!ATTLIST unit %name-reference; %availability; >
-
-<!ELEMENT unit-def (description? , unit-value) >
-<!ATTLIST unit-def %name-definition; %overwrite; >
-<!ELEMENT unit-value (#PCDATA) >
-
-<!ELEMENT container-def (description? , (number | keyword | function | container)*) >
-<!ATTLIST container-def %name-definition; %overwrite; >
-
-<!ELEMENT category-def (description?, caption) >
-<!ATTLIST category-def %name-definition; %overwrite; >
-<!ELEMENT caption (#PCDATA) >
-
-<!ELEMENT property-def (description? , (number | keyword | function | container | string | separator | property)*) >
-<!ATTLIST property-def %name-definition; %overwrite;
-					   inherited (yes | no | na) "na"
-					   mediagroup CDATA #IMPLIED
-					   category CDATA #IMPLIED >
-<!ELEMENT descriptor-def (description?, (number | keyword | function | container | string | separator | property)*) >
-<!ATTLIST descriptor-def %name-definition; %overwrite; >
-
-<!ELEMENT number EMPTY >
-<!ATTLIST number %name-reference; %availability; > 
-<!ELEMENT keyword EMPTY >
-<!ATTLIST keyword %name-reference; %availability; > 
-<!ELEMENT function EMPTY >
-<!ATTLIST function %name-reference; %availability; >
-<!ELEMENT container EMPTY >
-<!ATTLIST container %name-reference; %availability; > 
-<!ELEMENT string EMPTY >
-<!ATTLIST string %name-reference; %availability; >
-<!ELEMENT separator EMPTY >
-<!ATTLIST separator name (comma | slash) #REQUIRED %availability; >
-<!ELEMENT property EMPTY >
-<!ATTLIST property %name-reference; %availability; > 
-<!ELEMENT descriptor EMPTY >
-<!ATTLIST descriptor %name-reference; %availability; >
diff --git a/bundles/org.eclipse.wst.css.core/cssprofile/cssprofile-css1.xml b/bundles/org.eclipse.wst.css.core/cssprofile/cssprofile-css1.xml
deleted file mode 100644
index 6b0b175..0000000
--- a/bundles/org.eclipse.wst.css.core/cssprofile/cssprofile-css1.xml
+++ /dev/null
@@ -1,826 +0,0 @@
-<?xml version="1.0" encoding="UTF-8" ?>
-<!--<!DOCTYPE css-profile SYSTEM "css-profile.dtd" >-->
-<css-profile>
-	<stylesheet-def>
-		<description>%css1.stylesheet-def.description</description>
-		<import-rule/>
-		<style-rule/>
-	</stylesheet-def>
-
-	<import-rule-def>
-	</import-rule-def>
-
-	<style-rule-def>
-		<selector-expression name="descendant"/>
-		<pseudo-element name="first-line"/>
-		<pseudo-element name="first-letter"/>
-		<pseudo-class name="link"/>
-		<pseudo-class name="visited"/>
-		<pseudo-class name="active"/>
-		<property name="background"/>
-		<property name="background-attachment"/>
-		<property name="background-color"/>
-		<property name="background-image"/>
-		<property name="background-position"/>
-		<property name="background-repeat"/>
-		<property name="border"/>
-		<property name="border-bottom"/>
-		<property name="border-bottom-width"/>
-		<property name="border-color"/>
-		<property name="border-left"/>
-		<property name="border-left-width"/>
-		<property name="border-right"/>
-		<property name="border-right-width"/>
-		<property name="border-style"/>
-		<property name="border-top"/>
-		<property name="border-top-width"/>
-		<property name="border-width"/>
-		<property name="clear"/>
-		<property name="color"/>
-		<property name="display"/>
-		<property name="float"/>
-		<property name="font"/>
-		<property name="font-family"/>
-		<property name="font-size"/>
-		<property name="font-style"/>
-		<property name="font-variant"/>
-		<property name="font-weight"/>
-		<property name="height"/>
-		<property name="letter-spacing"/>
-		<property name="line-height"/>
-		<property name="list-style"/>
-		<property name="list-style-image"/>
-		<property name="list-style-position"/>
-		<property name="list-style-type"/>
-		<property name="margin"/>
-		<property name="margin-bottom"/>
-		<property name="margin-left"/>
-		<property name="margin-right"/>
-		<property name="margin-top"/>
-		<property name="padding"/>
-		<property name="padding-bottom"/>
-		<property name="padding-left"/>
-		<property name="padding-right"/>
-		<property name="padding-top"/>
-		<property name="text-align"/>
-		<property name="text-decoration"/>
-		<property name="text-indent"/>
-		<property name="text-transform"/>
-		<property name="vertical-align"/>
-		<property name="white-space"/>
-		<property name="width"/>
-		<property name="word-spacing"/>
-	</style-rule-def>
-
-	<pseudo-class-def name="link">
-		<selector-value>link</selector-value>
-	</pseudo-class-def>
-	<pseudo-class-def name="visited">
-		<selector-value>visited</selector-value>
-	</pseudo-class-def>
-	<pseudo-class-def name="active">
-		<selector-value>active</selector-value>
-	</pseudo-class-def>
-
-	<pseudo-element-def name="first-line">
-		<selector-value>first-line</selector-value>
-	</pseudo-element-def>
-	<pseudo-element-def name="first-letter">
-		<selector-value>first-letter</selector-value>
-	</pseudo-element-def>
-
-	<!-- property definition -->
-
-    <property-def name="background" inherited="no" category="colorandbackground">
-        <property name="background-color"/>
-        <property name="background-image"/>
-        <property name="background-repeat"/>
-        <property name="background-attachment"/>
-        <property name="background-position"/>
-    </property-def>
-    <property-def name="background-attachment" inherited="no" category="colorandbackground">
-        <keyword name="scroll"/>
-        <keyword name="fixed"/>
-    </property-def>
-    <property-def name="background-color" inherited="no" category="colorandbackground">
-        <container name="color"/>
-        <keyword name="transparent"/>
-    </property-def>
-    <property-def name="background-image" inherited="no" category="colorandbackground">
-        <function name="uri"/>
-        <keyword name="none"/>
-    </property-def>
-	<property-def name="background-position" inherited="no" category="colorandbackground">
-		<number name="percentage"/>
-		<number name="length"/>
-		<keyword name="top"/>
-		<keyword name="center"/>
-		<keyword name="bottom"/>
-		<keyword name="left"/>
-		<keyword name="right"/>
-	</property-def>
-	<property-def name="background-repeat" inherited="no" category="colorandbackground">
-		<keyword name="repeat"/>
-		<keyword name="repeat-x"/>
-		<keyword name="repeat-y"/>
-		<keyword name="no-repeat"/>
-	</property-def>
-	<property-def name="border" inherited="no" category="box">
-		<property name="border-width"/>
-		<property name="border-style"/>
-		<container name="color"/>
-	</property-def>
-	<property-def name="border-color" inherited="no" category="box">
-		<container name="color"/>
-	</property-def>
-	<property-def name="border-style" inherited="no" category="box">
-		<keyword name="none"/>
-		<keyword name="dotted"/>
-		<keyword name="dashed"/>
-		<keyword name="solid"/>
-		<keyword name="double"/>
-		<keyword name="groove"/>
-		<keyword name="ridge"/>
-		<keyword name="inset"/>
-		<keyword name="outset"/>
-	</property-def>
-	<property-def name="border-top" inherited="no" category="box">
-		<property name="border-top-width"/>
-		<property name="border-style"/>
-		<container name="color"/>
-	</property-def>
-	<property-def name="border-right" inherited="no" category="box">
-		<property name="border-right-width"/>
-		<property name="border-style"/>
-		<container name="color"/>
-	</property-def>
-	<property-def name="border-bottom" inherited="no" category="box">
-		<property name="border-bottom-width"/>
-		<property name="border-style"/>
-		<container name="color"/>
-	</property-def>
-	<property-def name="border-left" inherited="no" category="box">
-		<property name="border-left-width"/>
-		<property name="border-style"/>
-		<container name="color"/>
-	</property-def>
-	<property-def name="border-top-width" inherited="no" category="box">
-		<keyword name="thin"/>
-		<keyword name="medium"/>
-		<keyword name="thick"/>
-		<number name="length"/>
-	</property-def>
-	<property-def name="border-right-width" inherited="no" category="box">
-		<keyword name="thin"/>
-		<keyword name="medium"/>
-		<keyword name="thick"/>
-		<number name="length"/>
-	</property-def>
-	<property-def name="border-bottom-width" inherited="no" category="box">
-		<keyword name="thin"/>
-		<keyword name="medium"/>
-		<keyword name="thick"/>
-		<number name="length"/>
-	</property-def>
-	<property-def name="border-left-width" inherited="no" category="box">
-		<keyword name="thin"/>
-		<keyword name="medium"/>
-		<keyword name="thick"/>
-		<number name="length"/>
-	</property-def>
-	<property-def name="border-width" inherited="no" category="box">
-		<keyword name="thin"/>
-		<keyword name="medium"/>
-		<keyword name="thick"/>
-		<number name="length"/>
-	</property-def>
-	<property-def name="clear" inherited="no" category="box">
-		<keyword name="none"/>
-		<keyword name="left"/>
-		<keyword name="right"/>
-		<keyword name="both"/>
-	</property-def>
-	<property-def name="color" inherited="yes" category="colorandbackground">
-		<container name="color"/>
-	</property-def>
-	<property-def name="display" inherited="no" category="classification">
-		<keyword name="block"/>
-		<keyword name="inline"/>
-		<keyword name="list-item"/>
-		<keyword name="none"/>
-	</property-def>
-	<property-def name="float" inherited="no" category="box">
-		<keyword name="left"/>
-		<keyword name="right"/>
-		<keyword name="none"/>
-	</property-def>
-	<property-def name="font"
-		inherited="yes" category="font">
-		<property name="font-style"/>
-		<property name="font-variant"/>
-		<property name="font-weight"/>
-		<property name="font-size"/>
-		<property name="line-height"/>
-		<property name="font-family"/>
-		<separator name="slash"/>
-	</property-def>
-	<property-def name="font-family" inherited="yes" category="font">
-		<string name="family-name"/>
-		<container name="generic-family"/>
-		<separator name="comma"/>
-	</property-def>
-	<property-def name="font-size" inherited="yes" category="font">
-		<container name="absolute-size"/>
-		<container name="relative-size"/>
-		<number name="length"/>
-		<number name="percentage"/>
-	</property-def>
-	<property-def name="font-style" inherited="yes" category="font">
-		<keyword name="normal"/>
-		<keyword name="italic"/>
-		<keyword name="oblique"/>
-	</property-def>
-	<property-def name="font-variant" inherited="yes" category="font">
-		<keyword name="normal"/>
-		<keyword name="small-caps"/>
-	</property-def>
-	<property-def name="font-weight" inherited="yes" category="font">
-		<keyword name="normal"/>
-		<keyword name="bold"/>
-		<keyword name="bolder"/>
-		<keyword name="lighter"/>
-		<keyword name="100"/>
-		<keyword name="200"/>
-		<keyword name="300"/>
-		<keyword name="400"/>
-		<keyword name="500"/>
-		<keyword name="600"/>
-		<keyword name="700"/>
-		<keyword name="800"/>
-		<keyword name="900"/>
-	</property-def>
-	<property-def name="height" inherited="no" category="box">
-		<number name="length"/>
-		<number name="percentage"/>
-		<keyword name="auto"/>
-	</property-def>
-	<property-def name="letter-spacing" inherited="yes" category="text">
-		<keyword name="normal"/>
-		<number name="length"/>
-	</property-def>
-	<property-def name="line-height" inherited="yes" category="text">
-		<keyword name="normal"/>
-		<number name="number"/>
-		<number name="length"/>
-		<number name="percentage"/>
-	</property-def>
-	<property-def name="list-style" inherited="yes" category="classification">
-		<keyword name="disc"/>
-		<keyword name="circle"/>
-		<keyword name="square"/>
-		<keyword name="decimal"/>
-		<keyword name="lower-roman"/>
-		<keyword name="upper-roman"/>
-		<keyword name="lower-alpha"/>
-		<keyword name="upper-alpha"/>
-		<keyword name="none"/>
-		<keyword name="inside"/>
-		<keyword name="outside"/>
-		<function name="uri"/>
-		<keyword name="none"/>
-	</property-def>
-	<property-def name="list-style-image" inherited="yes" category="classification">
-		<function name="uri"/>
-		<keyword name="none"/>
-	</property-def>
-	<property-def name="list-style-position" inherited="yes" category="classification">
-		<keyword name="inside"/>
-		<keyword name="outside"/>
-	</property-def>
-	<property-def name="list-style-type" inherited="yes" category="classification">
-		<keyword name="disc"/>
-		<keyword name="circle"/>
-		<keyword name="square"/>
-		<keyword name="decimal"/>
-		<keyword name="lower-roman"/>
-		<keyword name="upper-roman"/>
-		<keyword name="lower-alpha"/>
-		<keyword name="upper-alpha"/>
-		<keyword name="none"/>
-	</property-def>
-	<property-def name="margin" inherited="no" category="box">
-		<number name="length"/>
-		<number name="percentage"/>
-		<keyword name="auto"/>
-	</property-def>
-	<property-def name="margin-top" inherited="no" category="box">
-		<number name="length"/>
-		<number name="percentage"/>
-		<keyword name="auto"/>
-	</property-def>
-	<property-def name="margin-right" inherited="no" category="box">
-		<number name="length"/>
-		<number name="percentage"/>
-		<keyword name="auto"/>
-	</property-def>
-	<property-def name="margin-bottom" inherited="no" category="box">
-		<number name="length"/>
-		<number name="percentage"/>
-		<keyword name="auto"/>
-	</property-def>
-	<property-def name="margin-left" inherited="no" category="box">
-		<number name="length"/>
-		<number name="percentage"/>
-		<keyword name="auto"/>
-	</property-def>
-	<property-def name="padding" inherited="no" category="box">
-		<number name="length"/>
-		<number name="percentage"/>
-	</property-def>
-	<property-def name="padding-top" inherited="no" category="box">
-		<number name="length"/>
-		<number name="percentage"/>
-	</property-def>
-	<property-def name="padding-right" inherited="no" category="box">
-		<number name="length"/>
-		<number name="percentage"/>
-	</property-def>
-	<property-def name="padding-bottom" inherited="no" category="box">
-		<number name="length"/>
-		<number name="percentage"/>
-	</property-def>
-	<property-def name="padding-left" inherited="no" category="box">
-		<number name="length"/>
-		<number name="percentage"/>
-	</property-def>
-	<property-def name="text-align" inherited="yes" category="text">
-		<keyword name="left"/>
-		<keyword name="right"/>
-		<keyword name="center"/>
-		<keyword name="justify"/>
-	</property-def>
-	<property-def name="text-decoration" inherited="no" category="text">
-		<keyword name="none"/>
-		<keyword name="underline"/>
-		<keyword name="overline"/>
-		<keyword name="line-through"/>
-		<keyword name="blink"/>
-	</property-def>
-	<property-def name="text-indent" inherited="yes" category="text">
-		<number name="length"/>
-		<number name="percentage"/>
-	</property-def>
-	<property-def name="text-transform" inherited="yes" category="text">
-		<keyword name="capitalize"/>
-		<keyword name="uppercase"/>
-		<keyword name="lowercase"/>
-		<keyword name="none"/>
-	</property-def>
-	<property-def name="vertical-align" inherited="no" category="text">
-		<keyword name="baseline"/>
-		<keyword name="sub"/>
-		<keyword name="super"/>
-		<keyword name="top"/>
-		<keyword name="text-top"/>
-		<keyword name="middle"/>
-		<keyword name="bottom"/>
-		<keyword name="text-bottom"/>
-		<number name="percentage"/>
-	</property-def>
-	<property-def name="white-space" inherited="yes" category="classification">
-		<keyword name="normal"/>
-		<keyword name="pre"/>
-		<keyword name="nowrap"/>
-	</property-def>
-	<property-def name="width" inherited="no" category="box">
-		<number name="length"/>
-		<number name="percentage"/>
-		<keyword name="auto"/>
-	</property-def>
-	<property-def name="word-spacing" inherited="yes" category="text">
-		<keyword name="normal"/>
-		<number name="length"/>
-	</property-def>
-
-	<!-- container definition : Container is the lump of values.
-	It can be used like macros. -->
-    <container-def name="absolute-size">
-        <keyword name="xx-small"/>
-        <keyword name="x-small"/>
-        <keyword name="small"/>
-        <keyword name="medium"/>
-        <keyword name="large"/>
-        <keyword name="x-large"/>
-        <keyword name="xx-large"/>
-    </container-def>
-	<container-def name="color">
-		<keyword name="aqua"/>
-		<keyword name="black"/>
-		<keyword name="blue"/>
-		<keyword name="fuchsia"/>
-		<keyword name="gray"/>
-		<keyword name="green"/>
-		<keyword name="lime"/>
-		<keyword name="maroon"/>
-		<keyword name="navy"/>
-		<keyword name="olive"/>
-		<keyword name="purple"/>
-		<keyword name="red"/>
-		<keyword name="silver"/>
-		<keyword name="teal"/>
-		<keyword name="white"/>
-		<keyword name="yellow"/>
-		<function name="rgb"/>
-		<number name="hash"/>
-	</container-def>
-	<container-def name="generic-family">
-		<keyword name="serif"/>
-		<keyword name="sans-serif"/>
-		<keyword name="cursive"/>
-		<keyword name="fantasy"/>
-		<keyword name="monospace"/>
-	</container-def>
-	<container-def name="relative-size">
-		<keyword name="smaller"/>
-		<keyword name="larger"/>
-	</container-def>
-
-	<!-- category definition : This is used to categorize properties
-	in Properties View. -->
-	<category-def name="box">
-		<caption>%css1.category-def.box.caption</caption>
-	</category-def>
-	<category-def name="colorandbackground">
-		<caption>%css1.category-def.colorandbackground.caption</caption>
-	</category-def>
-	<category-def name="classification">
-		<caption>%css1.category-def.classification.caption</caption>
-	</category-def>
-	<category-def name="font">
-		<caption>%css1.category-def.font.caption</caption>
-	</category-def>
-	<category-def name="text">
-		<caption>%css1.category-def.text.caption</caption>
-	</category-def>
-
-	<function-def name="rgb">
-		<function-value>rgb</function-value>
-	</function-def>
-	<function-def name="uri">
-		<function-value>url</function-value>
-	</function-def>
-	
-	<!-- number definition : What unit types be acceptable for each
-	number type? -->
-    <number-def name="hash">
-        <unit name="hash"/>
-    </number-def>
-    <number-def name="length">
-        <unit name="em"/>
-        <unit name="ex"/>
-        <unit name="px"/>
-        <unit name="in"/>
-        <unit name="cm"/>
-        <unit name="mm"/>
-        <unit name="pt"/>
-        <unit name="pc"/>
-    </number-def>
-	<number-def name="number">
-	</number-def>
-	<number-def name="percentage">
-		<unit name="percentage"/>
-	</number-def>
-
-	<unit-def name="cm">
-		<unit-value>cm</unit-value>
-	</unit-def>
-	<unit-def name="em">
-		<unit-value>em</unit-value>
-	</unit-def>
-	<unit-def name="ex">
-		<unit-value>ex</unit-value>
-	</unit-def>
-	<unit-def name="hash">
-		<unit-value>#</unit-value>
-	</unit-def>
-	<unit-def name="in">
-		<unit-value>in</unit-value>
-	</unit-def>
-	<unit-def name="mm">
-		<unit-value>mm</unit-value>
-	</unit-def>
-	<unit-def name="pc">
-		<unit-value>pc</unit-value>
-	</unit-def>
-	<unit-def name="percentage">
-		<unit-value>%</unit-value>
-	</unit-def>
-	<unit-def name="pt">
-		<unit-value>pt</unit-value>
-	</unit-def>
-	<unit-def name="px">
-		<unit-value>px</unit-value>
-	</unit-def>
-
-    <!-- keywords : string constants (this is last part..) -->
-    <keyword-def name="100">
-        <keyword-value>100</keyword-value>
-    </keyword-def>
-    <keyword-def name="200">
-        <keyword-value>200</keyword-value>
-    </keyword-def>
-    <keyword-def name="300">
-        <keyword-value>300</keyword-value>
-    </keyword-def>
-    <keyword-def name="400">
-        <keyword-value>400</keyword-value>
-    </keyword-def>
-    <keyword-def name="500">
-        <keyword-value>500</keyword-value>
-    </keyword-def>
-    <keyword-def name="600">
-        <keyword-value>600</keyword-value>
-    </keyword-def>
-    <keyword-def name="700">
-        <keyword-value>700</keyword-value>
-    </keyword-def>
-    <keyword-def name="800">
-        <keyword-value>800</keyword-value>
-    </keyword-def>
-    <keyword-def name="900">
-        <keyword-value>900</keyword-value>
-    </keyword-def>
-    <keyword-def name="aqua">
-        <keyword-value>aqua</keyword-value>
-    </keyword-def>
-    <keyword-def name="auto">
-        <keyword-value>auto</keyword-value>
-    </keyword-def>
-    <keyword-def name="baseline">
-        <keyword-value>baseline</keyword-value>
-    </keyword-def>
-    <keyword-def name="black">
-        <keyword-value>black</keyword-value>
-    </keyword-def>
-    <keyword-def name="blink">
-        <keyword-value>blink</keyword-value>
-    </keyword-def>
-    <keyword-def name="block">
-        <keyword-value>block</keyword-value>
-    </keyword-def>
-    <keyword-def name="blue">
-        <keyword-value>blue</keyword-value>
-    </keyword-def>
-    <keyword-def name="bold">
-        <keyword-value>bold</keyword-value>
-    </keyword-def>
-    <keyword-def name="bolder">
-        <keyword-value>bolder</keyword-value>
-    </keyword-def>
-    <keyword-def name="both">
-        <keyword-value>both</keyword-value>
-    </keyword-def>
-    <keyword-def name="bottom">
-        <keyword-value>bottom</keyword-value>
-    </keyword-def>
-    <keyword-def name="capitalize">
-        <keyword-value>capitalize</keyword-value>
-    </keyword-def>
-    <keyword-def name="center">
-        <keyword-value>center</keyword-value>
-    </keyword-def>
-    <keyword-def name="circle">
-        <keyword-value>circle</keyword-value>
-    </keyword-def>
-    <keyword-def name="cursive">
-        <keyword-value>cursive</keyword-value>
-    </keyword-def>
-    <keyword-def name="dashed">
-        <keyword-value>dashed</keyword-value>
-    </keyword-def>
-    <keyword-def name="decimal">
-        <keyword-value>decimal</keyword-value>
-    </keyword-def>
-    <keyword-def name="disc">
-        <keyword-value>disc</keyword-value>
-    </keyword-def>
-    <keyword-def name="dotted">
-        <keyword-value>dotted</keyword-value>
-    </keyword-def>
-    <keyword-def name="double">
-        <keyword-value>double</keyword-value>
-    </keyword-def>
-    <keyword-def name="fantasy">
-        <keyword-value>fantasy</keyword-value>
-    </keyword-def>
-    <keyword-def name="fixed">
-        <keyword-value>fixed</keyword-value>
-    </keyword-def>
-    <keyword-def name="fuchsia">
-        <keyword-value>fuchsia</keyword-value>
-    </keyword-def>
-    <keyword-def name="gray">
-        <keyword-value>gray</keyword-value>
-    </keyword-def>
-    <keyword-def name="green">
-        <keyword-value>green</keyword-value>
-    </keyword-def>
-    <keyword-def name="groove">
-        <keyword-value>groove</keyword-value>
-    </keyword-def>
-    <keyword-def name="inline">
-        <keyword-value>inline</keyword-value>
-    </keyword-def>
-    <keyword-def name="inset">
-        <keyword-value>inset</keyword-value>
-    </keyword-def>
-    <keyword-def name="inside">
-        <keyword-value>inside</keyword-value>
-    </keyword-def>
-    <keyword-def name="italic">
-        <keyword-value>italic</keyword-value>
-    </keyword-def>
-    <keyword-def name="justify">
-        <keyword-value>justify</keyword-value>
-    </keyword-def>
-    <keyword-def name="large">
-        <keyword-value>large</keyword-value>
-    </keyword-def>
-    <keyword-def name="larger">
-        <keyword-value>larger</keyword-value>
-    </keyword-def>
-    <keyword-def name="left">
-        <keyword-value>left</keyword-value>
-    </keyword-def>
-    <keyword-def name="lighter">
-        <keyword-value>lighter</keyword-value>
-    </keyword-def>
-    <keyword-def name="lime">
-        <keyword-value>lime</keyword-value>
-    </keyword-def>
-    <keyword-def name="line-through">
-        <keyword-value>line-through</keyword-value>
-    </keyword-def>
-    <keyword-def name="list-item">
-        <keyword-value>list-item</keyword-value>
-    </keyword-def>
-    <keyword-def name="lower-alpha">
-        <keyword-value>lower-alpha</keyword-value>
-    </keyword-def>
-    <keyword-def name="lower-roman">
-        <keyword-value>lower-roman</keyword-value>
-    </keyword-def>
-    <keyword-def name="lowercase">
-        <keyword-value>lowercase</keyword-value>
-    </keyword-def>
-    <keyword-def name="maroon">
-        <keyword-value>maroon</keyword-value>
-    </keyword-def>
-    <keyword-def name="medium">
-        <keyword-value>medium</keyword-value>
-    </keyword-def>
-    <keyword-def name="middle">
-        <keyword-value>middle</keyword-value>
-    </keyword-def>
-    <keyword-def name="monospace">
-        <keyword-value>monospace</keyword-value>
-    </keyword-def>
-    <keyword-def name="navy">
-        <keyword-value>navy</keyword-value>
-    </keyword-def>
-    <keyword-def name="no-repeat">
-        <keyword-value>no-repeat</keyword-value>
-    </keyword-def>
-    <keyword-def name="none">
-        <keyword-value>none</keyword-value>
-    </keyword-def>
-    <keyword-def name="normal">
-        <keyword-value>normal</keyword-value>
-    </keyword-def>
-    <keyword-def name="nowrap">
-        <keyword-value>nowrap</keyword-value>
-    </keyword-def>
-    <keyword-def name="oblique">
-        <keyword-value>oblique</keyword-value>
-    </keyword-def>
-    <keyword-def name="olive">
-        <keyword-value>olive</keyword-value>
-    </keyword-def>
-    <keyword-def name="outset">
-        <keyword-value>outset</keyword-value>
-    </keyword-def>
-    <keyword-def name="outside">
-        <keyword-value>outside</keyword-value>
-    </keyword-def>
-    <keyword-def name="overline">
-        <keyword-value>overline</keyword-value>
-    </keyword-def>
-    <keyword-def name="pre">
-        <keyword-value>pre</keyword-value>
-    </keyword-def>
-    <keyword-def name="purple">
-        <keyword-value>purple</keyword-value>
-    </keyword-def>
-    <keyword-def name="red">
-        <keyword-value>red</keyword-value>
-    </keyword-def>
-    <keyword-def name="repeat">
-        <keyword-value>repeat</keyword-value>
-    </keyword-def>
-    <keyword-def name="repeat-x">
-        <keyword-value>repeat-x</keyword-value>
-    </keyword-def>
-    <keyword-def name="repeat-y">
-        <keyword-value>repeat-y</keyword-value>
-    </keyword-def>
-    <keyword-def name="ridge">
-        <keyword-value>ridge</keyword-value>
-    </keyword-def>
-    <keyword-def name="right">
-        <keyword-value>right</keyword-value>
-    </keyword-def>
-    <keyword-def name="sans-serif">
-        <keyword-value>sans-serif</keyword-value>
-    </keyword-def>
-    <keyword-def name="scroll">
-        <keyword-value>scroll</keyword-value>
-    </keyword-def>
-    <keyword-def name="serif">
-        <keyword-value>serif</keyword-value>
-    </keyword-def>
-    <keyword-def name="silver">
-        <keyword-value>silver</keyword-value>
-    </keyword-def>
-    <keyword-def name="small">
-        <keyword-value>small</keyword-value>
-    </keyword-def>
-    <keyword-def name="small-caps">
-        <keyword-value>small-caps</keyword-value>
-    </keyword-def>
-    <keyword-def name="smaller">
-        <keyword-value>smaller</keyword-value>
-    </keyword-def>
-    <keyword-def name="solid">
-        <keyword-value>solid</keyword-value>
-    </keyword-def>
-    <keyword-def name="square">
-        <keyword-value>square</keyword-value>
-    </keyword-def>
-    <keyword-def name="sub">
-        <keyword-value>sub</keyword-value>
-    </keyword-def>
-    <keyword-def name="super">
-        <keyword-value>super</keyword-value>
-    </keyword-def>
-    <keyword-def name="teal">
-        <keyword-value>teal</keyword-value>
-    </keyword-def>
-    <keyword-def name="text-top">
-        <keyword-value>text-top</keyword-value>
-    </keyword-def>
-    <keyword-def name="text-bottom">
-        <keyword-value>text-bottom</keyword-value>
-    </keyword-def>
-    <keyword-def name="thick">
-        <keyword-value>thick</keyword-value>
-    </keyword-def>
-    <keyword-def name="thin">
-        <keyword-value>thin</keyword-value>
-    </keyword-def>
-    <keyword-def name="top">
-        <keyword-value>top</keyword-value>
-    </keyword-def>
-    <keyword-def name="transparent">
-        <keyword-value>transparent</keyword-value>
-    </keyword-def>
-    <keyword-def name="underline">
-        <keyword-value>underline</keyword-value>
-    </keyword-def>
-    <keyword-def name="upper-alpha">
-        <keyword-value>upper-alpha</keyword-value>
-    </keyword-def>
-    <keyword-def name="upper-roman">
-        <keyword-value>upper-roman</keyword-value>
-    </keyword-def>
-    <keyword-def name="uppercase">
-        <keyword-value>uppercase</keyword-value>
-    </keyword-def>
-    <keyword-def name="white">
-        <keyword-value>white</keyword-value>
-    </keyword-def>
-    <keyword-def name="x-large">
-        <keyword-value>x-large</keyword-value>
-    </keyword-def>
-    <keyword-def name="x-small">
-        <keyword-value>x-small</keyword-value>
-    </keyword-def>
-    <keyword-def name="xx-small">
-        <keyword-value>xx-small</keyword-value>
-    </keyword-def>
-    <keyword-def name="xx-large">
-        <keyword-value>xx-large</keyword-value>
-    </keyword-def>
-    <keyword-def name="yellow">
-        <keyword-value>yellow</keyword-value>
-    </keyword-def>
-</css-profile>
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/cssprofile/cssprofile-css2.xml b/bundles/org.eclipse.wst.css.core/cssprofile/cssprofile-css2.xml
deleted file mode 100644
index 4efc084..0000000
--- a/bundles/org.eclipse.wst.css.core/cssprofile/cssprofile-css2.xml
+++ /dev/null
@@ -1,2258 +0,0 @@
-<?xml version="1.0" encoding="UTF-8" ?>
-<!--<!DOCTYPE css-profile SYSTEM "css-profile.dtd" >-->
-<css-profile>
-	<stylesheet-def>
-		<description>%css2.stylesheet-def.description</description>
-		<charset-rule/>
-		<import-rule/>
-		<page-rule/>
-		<media-rule/>
-		<fontface-rule/>
-		<style-rule/>
-	</stylesheet-def>
-
-	<charset-rule-def>
-	</charset-rule-def>
-	<import-rule-def>
-	</import-rule-def>
-	<media-rule-def>
-	</media-rule-def>
-
-	<page-rule-def>
-		<pseudo-class name="left"/>
-		<pseudo-class name="right"/>
-		<pseudo-class name="first"/>
-		<property name="size"/>
-		<property name="marks"/>
-		<property name="page-break-after"/>
-		<property name="page-break-before"/>
-		<property name="page-break-inside"/>
-		<property name="orphans"/>
-		<property name="widows"/>
-	</page-rule-def>
-
-	<fontface-rule-def>
-		<descriptor name="ascent"/>
-		<descriptor name="baseline"/>
-		<descriptor name="bbox"/>
-		<descriptor name="cap-height"/>
-		<descriptor name="centerline"/>
-		<descriptor name="definition-src"/>
-		<descriptor name="descent"/>
-		<descriptor name="font-family"/>
-		<descriptor name="font-size"/>
-		<descriptor name="font-stretch"/>
-		<descriptor name="font-style"/>
-		<descriptor name="font-variant"/>
-		<descriptor name="font-weight"/>
-		<descriptor name="mathline"/>
-		<descriptor name="panose-1"/>
-		<descriptor name="slope"/>
-		<descriptor name="slope"/>
-		<descriptor name="src"/>
-		<descriptor name="stemh"/>
-		<descriptor name="stemv"/>
-		<descriptor name="topline"/>
-		<descriptor name="unicode-range"/>
-		<descriptor name="units-per-em"/>
-		<descriptor name="widths"/>
-		<descriptor name="x-height"/>
-	</fontface-rule-def>
-
-	<!-- Which properties can style rule include ? -->
-
-	<style-rule-def>
-		<selector-expression name="descendant"/>
-		<selector-expression name="child"/>
-		<selector-expression name="adjacent"/>
-		<selector-expression name="universal"/>
-		<selector-expression name="attribute"/>
-		<pseudo-element name="first-line"/>
-		<pseudo-element name="first-letter"/>
-		<pseudo-element name="before"/>
-		<pseudo-element name="after"/>
-		<pseudo-class name="first-child"/>
-		<pseudo-class name="link"/>
-		<pseudo-class name="visited"/>
-		<pseudo-class name="hover"/>
-		<pseudo-class name="active"/>
-		<pseudo-class name="focus"/>
-		<pseudo-class name="lang"/>
-		<property name="azimuth"/>
-		<property name="background"/>
-		<property name="background-attachment"/>
-		<property name="background-color"/>
-		<property name="background-image"/>
-		<property name="background-position"/>
-		<property name="background-repeat"/>
-		<property name="border"/>
-		<property name="border-collapse"/>
-		<property name="border-color"/>
-		<property name="border-spacing"/>
-		<property name="border-style"/>
-		<property name="border-top"/>
-		<property name="border-right"/>
-		<property name="border-bottom"/>
-		<property name="border-left"/>
-		<property name="border-top-color"/>
-		<property name="border-right-color"/>
-		<property name="border-bottom-color"/>
-		<property name="border-left-color"/>
-		<property name="border-top-style"/>
-		<property name="border-right-style"/>
-		<property name="border-bottom-style"/>
-		<property name="border-left-style"/>
-		<property name="border-top-width"/>
-		<property name="border-right-width"/>
-		<property name="border-bottom-width"/>
-		<property name="border-left-width"/>
-		<property name="border-width"/>
-		<property name="bottom"/>
-		<property name="caption-side"/>
-		<property name="clear"/>
-		<property name="clip"/>
-		<property name="color"/>
-		<property name="content"/>
-		<property name="counter-increment"/>
-		<property name="counter-reset"/>
-		<property name="cue"/>
-		<property name="cue-after"/>
-		<property name="cue-before"/>
-		<property name="cursor"/>
-		<property name="direction"/>
-		<property name="display"/>
-		<property name="elevation"/>
-		<property name="empty-cells"/>
-		<property name="float"/>
-		<property name="font"/>
-		<property name="font-family"/>
-		<property name="font-size"/>
-		<property name="font-size-adjust"/>
-		<property name="font-stretch"/>
-		<property name="font-style"/>
-		<property name="font-variant"/>
-		<property name="font-weight"/>
-		<property name="height"/>
-		<property name="left"/>
-		<property name="letter-spacing"/>
-		<property name="line-height"/>
-		<property name="list-style"/>
-		<property name="list-style-image"/>
-		<property name="list-style-position"/>
-		<property name="list-style-type"/>
-		<property name="margin"/>
-		<property name="margin-top"/>
-		<property name="margin-right"/>
-		<property name="margin-bottom"/>
-		<property name="margin-left"/>
-		<property name="marker-offset"/>
-		<property name="marks"/>
-		<property name="max-height"/>
-		<property name="max-width"/>
-		<property name="min-height"/>
-		<property name="min-width"/>
-		<property name="orphans"/>
-		<property name="outline"/>
-		<property name="outline-color"/>
-		<property name="outline-style"/>
-		<property name="outline-width"/>
-		<property name="overflow"/>
-		<property name="padding"/>
-		<property name="padding-top"/>
-		<property name="padding-right"/>
-		<property name="padding-bottom"/>
-		<property name="padding-left"/>
-		<property name="page"/>
-		<property name="page-break-after"/>
-		<property name="page-break-before"/>
-		<property name="page-break-inside"/>
-		<property name="pause"/>
-		<property name="pause-after"/>
-		<property name="pause-before"/>
-		<property name="pitch"/>
-		<property name="pitch-range"/>
-		<property name="play-during"/>
-		<property name="position"/>
-		<property name="quotes"/>
-		<property name="richness"/>
-		<property name="right"/>
-		<property name="size"/>
-		<property name="speak"/>
-		<property name="speak-header"/>
-		<property name="speak-numeral"/>
-		<property name="speak-punctuation"/>
-		<property name="speech-rate"/>
-		<property name="stress"/>
-		<property name="table-layout"/>
-		<property name="text-align"/>
-		<property name="text-decoration"/>
-		<property name="text-indent"/>
-		<property name="text-shadow"/>
-		<property name="text-transform"/>
-		<property name="top"/>
-		<property name="unicode-bidi"/>
-		<property name="vertical-align"/>
-		<property name="visibility"/>
-		<property name="voice-family"/>
-		<property name="volume"/>
-		<property name="white-space"/>
-		<property name="widows"/>
-		<property name="width"/>
-		<property name="word-spacing"/>
-		<property name="z-index"/>
-	</style-rule-def>
-
-	<pseudo-class-def name="first-child">
-		<selector-value>first-child</selector-value>
-	</pseudo-class-def>
-	<pseudo-class-def name="link">
-		<selector-value>link</selector-value>
-	</pseudo-class-def>
-	<pseudo-class-def name="visited">
-		<selector-value>visited</selector-value>
-	</pseudo-class-def>
-	<pseudo-class-def name="hover">
-		<selector-value>hover</selector-value>
-	</pseudo-class-def>
-	<pseudo-class-def name="active">
-		<selector-value>active</selector-value>
-	</pseudo-class-def>
-	<pseudo-class-def name="focus">
-		<selector-value>focus</selector-value>
-	</pseudo-class-def>
-	<pseudo-class-def name="lang">
-		<selector-value>lang</selector-value>
-	</pseudo-class-def>
-	<pseudo-class-def name="left">
-		<selector-value>left</selector-value>
-	</pseudo-class-def>
-	<pseudo-class-def name="right">
-		<selector-value>right</selector-value>
-	</pseudo-class-def>
-	<pseudo-class-def name="first">
-		<selector-value>first</selector-value>
-	</pseudo-class-def>
-
-	<pseudo-element-def name="first-line">
-		<selector-value>first-line</selector-value>
-	</pseudo-element-def>
-	<pseudo-element-def name="first-letter">
-		<selector-value>first-letter</selector-value>
-	</pseudo-element-def>
-	<pseudo-element-def name="before">
-		<selector-value>before</selector-value>
-	</pseudo-element-def>
-	<pseudo-element-def name="after">
-		<selector-value>after</selector-value>
-	</pseudo-element-def>
-
-	<!-- property definition -->
-
-	<property-def name="azimuth"
-		inherited="yes" mediagroup="aural" category="aural">
-        <description>This provides spatial audio property for aural
-        presentation</description>
-        <number name="angle"/>
-        <keyword name="left-side"/>
-        <keyword name="far-left"/>
-        <keyword name="left"/>
-        <keyword name="center-left"/>
-        <keyword name="center"/>
-        <keyword name="center-right"/>
-        <keyword name="right"/>
-        <keyword name="far-right"/>
-        <keyword name="right-side"/>
-        <keyword name="behind"/>
-        <keyword name="leftwards"/>
-        <keyword name="rightwards"/>
-        <keyword name="inherit"/>
-    </property-def>
-    <property-def name="background"
-		inherited="no" mediagroup="visual" category="colorandbackground">
-        <property name="background-color"/>
-        <property name="background-image"/>
-        <property name="background-repeat"/>
-        <property name="background-attachment"/>
-        <property name="background-position"/>
-        <keyword name="inherit"/>
-    </property-def>
-    <property-def name="background-attachment"
-		inherited="no" mediagroup="visual" category="colorandbackground">
-        <keyword name="scroll"/>
-        <keyword name="fixed"/>
-        <keyword name="inherit"/>
-    </property-def>
-    <property-def name="background-color"
-		inherited="no" mediagroup="visual" category="colorandbackground">
-        <container name="color"/>
-        <keyword name="transparent"/>
-        <keyword name="inherit"/>
-    </property-def>
-    <property-def name="background-image"
-		inherited="no" mediagroup="visual" category="colorandbackground">
-        <function name="uri"/>
-        <keyword name="none"/>
-        <keyword name="inherit"/>
-    </property-def>
-	<property-def name="background-position"
-		inherited="no" mediagroup="visual" category="colorandbackground">
-		<number name="percentage"/>
-		<number name="length"/>
-		<keyword name="top"/>
-		<keyword name="center"/>
-		<keyword name="bottom"/>
-		<keyword name="left"/>
-		<keyword name="right"/>
-		<keyword name="inherit"/>
-	</property-def>
-	<property-def name="background-repeat"
-		inherited="no" mediagroup="visual" category="colorandbackground">
-		<keyword name="repeat"/>
-		<keyword name="repeat-x"/>
-		<keyword name="repeat-y"/>
-		<keyword name="no-repeat"/>
-		<keyword name="inherit"/>
-	</property-def>
-	<property-def name="border"
-		inherited="no" mediagroup="visual" category="box">
-		<property name="border-width"/>
-		<property name="border-style"/>
-		<container name="color"/>
-		<keyword name="inherit"/>
-	</property-def>
-	<property-def name="border-collapse"
-		inherited="yes" mediagroup="visual" category="tables">
-		<keyword name="collapse"/>
-		<keyword name="separate"/>
-		<keyword name="inherit"/>
-	</property-def>
-	<property-def name="border-color"
-		inherited="no" mediagroup="visual" category="box">
-		<container name="color"/>
-		<keyword name="transparent"/>
-		<keyword name="inherit"/>
-	</property-def>
-	<property-def name="border-spacing"
-		inherited="yes" mediagroup="visual" category="tables">
-		<number name="length"/>
-		<keyword name="inherit"/>
-	</property-def>
-	<property-def name="border-style"
-		inherited="no" mediagroup="visual" category="box">
-		<container name="border-style"/>
-		<keyword name="inherit"/>
-	</property-def>
-	<property-def name="border-top"
-		inherited="no" mediagroup="visual" category="box">
-		<property name="border-top-width"/>
-		<property name="border-style"/>
-		<container name="color"/>
-		<keyword name="inherit"/>
-	</property-def>
-	<property-def name="border-right"
-		inherited="no" mediagroup="visual" category="box">
-		<property name="border-right-width"/>
-		<property name="border-style"/>
-		<container name="color"/>
-		<keyword name="inherit"/>
-	</property-def>
-	<property-def name="border-bottom"
-		inherited="no" mediagroup="visual" category="box">
-		<property name="border-bottom-width"/>
-		<property name="border-style"/>
-		<container name="color"/>
-		<keyword name="inherit"/>
-	</property-def>
-	<property-def name="border-left"
-		inherited="no" mediagroup="visual" category="box">
-		<property name="border-left-width"/>
-		<property name="border-style"/>
-		<container name="color"/>
-		<keyword name="inherit"/>
-	</property-def>
-	<property-def name="border-top-color"
-		inherited="no" mediagroup="visual" category="box">
-		<container name="color"/>
-		<keyword name="inherit"/>
-	</property-def>
-	<property-def name="border-right-color"
-		inherited="no" mediagroup="visual" category="box">
-		<container name="color"/>
-		<keyword name="inherit"/>
-	</property-def>
-	<property-def name="border-bottom-color"
-		inherited="no" mediagroup="visual" category="box">
-		<container name="color"/>
-		<keyword name="inherit"/>
-	</property-def>
-	<property-def name="border-left-color"
-		inherited="no" mediagroup="visual" category="box">
-		<container name="color"/>
-		<keyword name="inherit"/>
-	</property-def>
-	<property-def name="border-top-style"
-		inherited="no" mediagroup="visual" category="box">
-		<container name="border-style"/>
-		<keyword name="inherit"/>
-	</property-def>
-	<property-def name="border-right-style"
-		inherited="no" mediagroup="visual" category="box">
-		<container name="border-style"/>
-		<keyword name="inherit"/>
-	</property-def>
-	<property-def name="border-bottom-style"
-		inherited="no" mediagroup="visual" category="box">
-		<container name="border-style"/>
-		<keyword name="inherit"/>
-	</property-def>
-	<property-def name="border-left-style"
-		inherited="no" mediagroup="visual" category="box">
-		<container name="border-style"/>
-		<keyword name="inherit"/>
-	</property-def>
-	<property-def name="border-top-width"
-		inherited="no" mediagroup="visual" category="box">
-		<container name="border-width"/>
-		<keyword name="inherit"/>
-	</property-def>
-	<property-def name="border-right-width"
-		inherited="no" mediagroup="visual" category="box">
-		<container name="border-width"/>
-		<keyword name="inherit"/>
-	</property-def>
-	<property-def name="border-bottom-width"
-		inherited="no" mediagroup="visual" category="box">
-		<container name="border-width"/>
-		<keyword name="inherit"/>
-	</property-def>
-	<property-def name="border-left-width"
-		inherited="no" mediagroup="visual" category="box">
-		<container name="border-width"/>
-		<keyword name="inherit"/>
-	</property-def>
-	<property-def name="border-width"
-		inherited="no" mediagroup="visual" category="box">
-		<container name="border-width"/>
-		<keyword name="inherit"/>
-	</property-def>
-	<property-def name="bottom"
-		inherited="no" mediagroup="visual" category="visual">
-		<number name="length"/>
-		<number name="percentage"/>
-		<keyword name="auto"/>
-		<keyword name="inherit"/>
-	</property-def>
-	<property-def name="caption-side"
-		inherited="yes" mediagroup="visual" category="tables">
-		<keyword name="top"/>
-		<keyword name="bottom"/>
-		<keyword name="left"/>
-		<keyword name="right"/>
-		<keyword name="inherit"/>
-	</property-def>
-	<property-def name="clear"
-		inherited="no" mediagroup="visual" category="visual">
-		<keyword name="none"/>
-		<keyword name="left"/>
-		<keyword name="right"/>
-		<keyword name="both"/>
-		<keyword name="inherit"/>
-	</property-def>
-	<property-def name="clip"
-		inherited="no" mediagroup="visual" category="visual">
-		<container name="shape"/>
-		<keyword name="auto"/>
-		<keyword name="inherit"/>
-	</property-def>
-	<property-def name="color"
-		inherited="yes" mediagroup="visual" category="colorandbackground">
-		<container name="color"/>
-		<keyword name="inherit"/>
-	</property-def>
-	<property-def name="content"
-		inherited="no" mediagroup="all" category="content">
-		<string name="any"/>
-		<function name="uri"/>
-		<function name="counter"/>
-		<function name="attr"/>
-		<keyword name="open-quote"/>
-		<keyword name="close-quote"/>
-		<keyword name="no-open-quote"/>
-		<keyword name="no-close-quote"/>
-		<keyword name="inherit"/>
-	</property-def>
-	<property-def name="counter-increment"
-		inherited="no" mediagroup="all" category="content">
-		<string name="counter-identifier"/>
-		<number name="integer"/>
-		<keyword name="none"/>
-		<keyword name="inherit"/>
-	</property-def>
-	<property-def name="counter-reset"
-		inherited="no" mediagroup="all" category="content">
-		<string name="counter-identifier"/>
-		<number name="integer"/>
-		<keyword name="none"/>
-		<keyword name="inherit"/>
-	</property-def>
-	<property-def name="cue"
-		inherited="no" mediagroup="aural" category="aural">
-		<property name="cue-before"/>
-		<property name="cue-after"/>
-		<keyword name="inherit"/>
-	</property-def>
-	<property-def name="cue-after"
-		inherited="no" mediagroup="aural" category="aural">
-		<function name="uri"/>
-		<keyword name="none"/>
-		<keyword name="inherit"/>
-	</property-def>
-	<property-def name="cue-before"
-		inherited="no" mediagroup="aural" category="aural">
-		<function name="uri"/>
-		<keyword name="none"/>
-		<keyword name="inherit"/>
-	</property-def>
-	<property-def name="cursor"
-		inherited="yes" mediagroup="visual,interactive" category="ui">
-		<function name="uri"/>
-		<keyword name="auto"/>
-		<keyword name="crosshair"/>
-		<keyword name="default"/>
-		<keyword name="pointer"/>
-		<keyword name="move"/>
-		<keyword name="e-resize"/>
-		<keyword name="ne-resize"/>
-		<keyword name="nw-resize"/>
-		<keyword name="n-resize"/>
-		<keyword name="se-resize"/>
-		<keyword name="sw-resize"/>
-		<keyword name="s-resize"/>
-		<keyword name="w-resize"/>
-		<keyword name="text"/>
-		<keyword name="wait"/>
-		<keyword name="help"/>
-		<keyword name="inherit"/>
-		<separator name="comma"/>
-	</property-def>
-	<property-def name="direction"
-		inherited="yes" mediagroup="visual" category="visual">
-		<keyword name="ltr"/>
-		<keyword name="rtl"/>
-		<keyword name="inherit"/>
-	</property-def>
-	<property-def name="display"
-		inherited="no" mediagroup="all" category="visual">
-		<keyword name="inline"/>
-		<keyword name="block"/>
-		<keyword name="list-item"/>
-		<keyword name="run-in"/>
-		<keyword name="compact"/>
-		<keyword name="marker"/>
-		<keyword name="table"/>
-		<keyword name="inline-table"/>
-		<keyword name="table-row-group"/>
-		<keyword name="table-header-group"/>
-		<keyword name="table-footer-group"/>
-		<keyword name="table-row"/>
-		<keyword name="table-column-group"/>
-		<keyword name="table-column"/>
-		<keyword name="table-cell"/>
-		<keyword name="table-caption"/>
-		<keyword name="none"/>
-		<keyword name="inherit"/>
-	</property-def>
-	<property-def name="elevation"
-		inherited="yes" mediagroup="aural" category="aural">
-		<number name="angle"/>
-		<keyword name="below"/>
-		<keyword name="level"/>
-		<keyword name="above"/>
-		<keyword name="higher"/>
-		<keyword name="lower"/>
-		<keyword name="inherit"/>
-	</property-def>
-	<property-def name="empty-cells"
-		inherited="yes" mediagroup="visual" category="tables">
-		<keyword name="show"/>
-		<keyword name="hide"/>
-		<keyword name="inherit"/>
-	</property-def>
-	<property-def name="float"
-		inherited="no" mediagroup="visual" category="visual">
-		<keyword name="left"/>
-		<keyword name="right"/>
-		<keyword name="none"/>
-		<keyword name="inherit"/>
-	</property-def>
-	<property-def name="font"
-		inherited="yes" mediagroup="visual" category="font">
-		<property name="font-style"/>
-		<property name="font-variant"/>
-		<property name="font-weight"/>
-		<property name="font-size"/>
-		<property name="line-height"/>
-		<property name="font-family"/>
-		<keyword name="caption"/>
-		<keyword name="icon"/>
-		<keyword name="menu"/>
-		<keyword name="message-box"/>
-		<keyword name="small-caption"/>
-		<keyword name="status-bar"/>
-		<keyword name="inherit"/>
-		<separator name="slash"/>
-	</property-def>
-	<property-def name="font-family"
-		inherited="yes" mediagroup="visual" category="font">
-		<string name="family-name"/>
-		<container name="generic-family"/>
-		<keyword name="inherit"/>
-		<separator name="comma"/>
-	</property-def>
-	<property-def name="font-size"
-		inherited="yes" mediagroup="visual" category="font">
-		<container name="absolute-size"/>
-		<container name="relative-size"/>
-		<number name="length"/>
-		<number name="percentage"/>
-		<keyword name="inherit"/>
-	</property-def>
-	<property-def name="font-size-adjust"
-		inherited="yes" mediagroup="visual" category="font">
-		<number name="number"/>
-		<keyword name="none"/>
-		<keyword name="inherit"/>
-	</property-def>
-	<property-def name="font-stretch"
-		inherited="yes" mediagroup="visual" category="font">
-		<keyword name="normal"/>
-		<keyword name="wider"/>
-		<keyword name="narrower"/>
-		<keyword name="ultra-condensed"/>
-		<keyword name="extra-condensed"/>
-		<keyword name="condensed"/>
-		<keyword name="semi-condensed"/>
-		<keyword name="semi-expanded"/>
-		<keyword name="expanded"/>
-		<keyword name="extra-expanded"/>
-		<keyword name="ultra-expanded"/>
-		<keyword name="inherit"/>
-	</property-def>
-	<property-def name="font-style"
-		inherited="yes" mediagroup="visual" category="font">
-		<keyword name="normal"/>
-		<keyword name="italic"/>
-		<keyword name="oblique"/>
-		<keyword name="inherit"/>
-	</property-def>
-	<property-def name="font-variant"
-		inherited="yes" mediagroup="visual" category="font">
-		<keyword name="normal"/>
-		<keyword name="small-caps"/>
-		<keyword name="inherit"/>
-	</property-def>
-	<property-def name="font-weight"
-		inherited="yes" mediagroup="visual" category="font">
-		<keyword name="normal"/>
-		<keyword name="bold"/>
-		<keyword name="bolder"/>
-		<keyword name="lighter"/>
-		<keyword name="100"/>
-		<keyword name="200"/>
-		<keyword name="300"/>
-		<keyword name="400"/>
-		<keyword name="500"/>
-		<keyword name="600"/>
-		<keyword name="700"/>
-		<keyword name="800"/>
-		<keyword name="900"/>
-		<keyword name="inherit"/>
-	</property-def>
-	<property-def name="height"
-		inherited="no" mediagroup="visual" category="visual">
-		<number name="length"/>
-		<number name="percentage"/>
-		<keyword name="auto"/>
-		<keyword name="inherit"/>
-	</property-def>
-	<property-def name="left"
-		inherited="no" mediagroup="visual" category="visual">
-		<number name="length"/>
-		<number name="percentage"/>
-		<keyword name="auto"/>
-		<keyword name="inherit"/>
-	</property-def>
-	<property-def name="letter-spacing"
-		inherited="yes" mediagroup="visual" category="text">
-		<keyword name="normal"/>
-		<number name="length"/>
-		<keyword name="inherit"/>
-	</property-def>
-	<property-def name="line-height"
-		inherited="yes" mediagroup="visual" category="visual">
-		<keyword name="normal"/>
-		<number name="number"/>
-		<number name="length"/>
-		<number name="percentage"/>
-		<keyword name="inherit"/>
-	</property-def>
-	<property-def name="list-style"
-		inherited="yes" mediagroup="visual" category="content">
-		<property name="list-style-type"/>
-		<property name="list-style-position"/>
-		<property name="list-style-image"/>
-		<keyword name="inherit"/>
-	</property-def>
-	<property-def name="list-style-image"
-		inherited="yes" mediagroup="visual" category="content">
-		<function name="uri"/>
-		<keyword name="none"/>
-		<keyword name="inherit"/>
-	</property-def>
-	<property-def name="list-style-position"
-		inherited="yes" mediagroup="visual" category="content">
-		<keyword name="inside"/>
-		<keyword name="outside"/>
-		<keyword name="inherit"/>
-	</property-def>
-	<property-def name="list-style-type"
-		inherited="yes" mediagroup="visual" category="content">
-		<keyword name="disc"/>
-		<keyword name="circle"/>
-		<keyword name="square"/>
-		<keyword name="decimal"/>
-		<keyword name="decimal-leading-zero"/>
-		<keyword name="lower-roman"/>
-		<keyword name="upper-roman"/>
-		<keyword name="lower-greek"/>
-		<keyword name="lower-alpha"/>
-		<keyword name="lower-latin"/>
-		<keyword name="upper-alpha"/>
-		<keyword name="upper-latin"/>
-		<keyword name="hebrew"/>
-		<keyword name="armenian"/>
-		<keyword name="georgian"/>
-		<keyword name="cjk-ideographic"/>
-		<keyword name="hiragana"/>
-		<keyword name="katakana"/>
-		<keyword name="hiragana-iroha"/>
-		<keyword name="katakana-iroha"/>
-		<keyword name="none"/>
-		<keyword name="inherit"/>
-	</property-def>
-	<property-def name="margin"
-		inherited="no" mediagroup="visual" category="box">
-		<container name="margin-width"/>
-		<keyword name="inherit"/>
-	</property-def>
-	<property-def name="margin-top"
-		inherited="no" mediagroup="visual" category="box">
-		<container name="margin-width"/>
-		<keyword name="inherit"/>
-	</property-def>
-	<property-def name="margin-right"
-		inherited="no" mediagroup="visual" category="box">
-		<container name="margin-width"/>
-		<keyword name="inherit"/>
-	</property-def>
-	<property-def name="margin-bottom"
-		inherited="no" mediagroup="visual" category="box">
-		<container name="margin-width"/>
-		<keyword name="inherit"/>
-	</property-def>
-	<property-def name="margin-left"
-		inherited="no" mediagroup="visual" category="box">
-		<container name="margin-width"/>
-		<keyword name="inherit"/>
-	</property-def>
-	<property-def name="marker-offset"
-		inherited="no" mediagroup="visual" category="content">
-		<number name="length"/>
-		<keyword name="auto"/>
-		<keyword name="inherit"/>
-	</property-def>
-	<property-def name="marks"
-		inherited="na" mediagroup="visual,paged" category="page">
-		<keyword name="crop"/>
-		<keyword name="cross"/>
-		<keyword name="none"/>
-		<keyword name="inherit"/>
-	</property-def>
-	<property-def name="max-height"
-		inherited="no" mediagroup="visual" category="visual">
-		<number name="length"/>
-		<number name="percentage"/>
-		<keyword name="none"/>
-		<keyword name="inherit"/>
-	</property-def>
-	<property-def name="max-width"
-		inherited="no" mediagroup="visual" category="visual">
-		<number name="length"/>
-		<number name="percentage"/>
-		<keyword name="none"/>
-		<keyword name="inherit"/>
-	</property-def>
-	<property-def name="min-height"
-		inherited="no" mediagroup="visual" category="visual">
-		<number name="length"/>
-		<number name="percentage"/>
-		<keyword name="none"/>
-		<keyword name="inherit"/>
-	</property-def>
-	<property-def name="min-width"
-		inherited="no" mediagroup="visual" category="visual">
-		<number name="length"/>
-		<number name="percentage"/>
-		<keyword name="none"/>
-		<keyword name="inherit"/>
-	</property-def>
-	<property-def name="orphans"
-		inherited="yes" mediagroup="visual,paged" category="page">
-		<number name="integer"/>
-		<keyword name="inherit"/>
-	</property-def>
-	<property-def name="outline"
-		inherited="no" mediagroup="visual,interactive" category="ui">
-		<property name="outline-color"/>
-		<property name="outline-style"/>
-		<property name="outline-width"/>
-		<keyword name="inherit"/>
-	</property-def>
-	<property-def name="outline-color"
-		inherited="no" mediagroup="visual,interactive" category="ui">
-		<container name="color"/>
-		<keyword name="invert"/>
-		<keyword name="inherit"/>
-	</property-def>
-	<property-def name="outline-style"
-		inherited="no" mediagroup="visual,interactive" category="ui">
-		<container name="border-style"/>
-		<keyword name="inherit"/>
-	</property-def>
-	<property-def name="outline-width"
-		inherited="no" mediagroup="visual,interactive" category="ui">
-		<container name="border-width"/>
-		<keyword name="inherit"/>
-	</property-def>
-	<property-def name="overflow"
-		inherited="no" mediagroup="visual" category="visual">
-		<keyword name="visible"/>
-		<keyword name="hidden"/>
-		<keyword name="scroll"/>
-		<keyword name="auto"/>
-		<keyword name="inherit"/>
-	</property-def>
-	<property-def name="padding"
-		inherited="no" mediagroup="visual" category="box">
-		<container name="padding-width"/>
-		<keyword name="inherit"/>
-	</property-def>
-	<property-def name="padding-top"
-		inherited="no" mediagroup="visual" category="box">
-		<container name="padding-width"/>
-		<keyword name="inherit"/>
-	</property-def>
-	<property-def name="padding-right"
-		inherited="no" mediagroup="visual" category="box">
-		<container name="padding-width"/>
-		<keyword name="inherit"/>
-	</property-def>
-	<property-def name="padding-bottom"
-		inherited="no" mediagroup="visual" category="box">
-		<container name="padding-width"/>
-		<keyword name="inherit"/>
-	</property-def>
-	<property-def name="padding-left"
-		inherited="no" mediagroup="visual" category="box">
-		<container name="padding-width"/>
-		<keyword name="inherit"/>
-	</property-def>
-	<property-def name="page"
-		inherited="yes" mediagroup="visual,paged" category="page">
-		<string name="page-identifier"/>
-		<keyword name="auto"/>
-	</property-def>
-	<property-def name="page-break-after"
-		inherited="no" mediagroup="visual,paged" category="page">
-		<keyword name="auto"/>
-		<keyword name="always"/>
-		<keyword name="avoid"/>
-		<keyword name="left"/>
-		<keyword name="right"/>
-		<keyword name="inherit"/>
-	</property-def>
-	<property-def name="page-break-before"
-		inherited="no" mediagroup="visual,paged" category="page">
-		<keyword name="auto"/>
-		<keyword name="always"/>
-		<keyword name="avoid"/>
-		<keyword name="left"/>
-		<keyword name="right"/>
-		<keyword name="inherit"/>
-	</property-def>
-	<property-def name="page-break-inside"
-		inherited="yes" mediagroup="visual,paged" category="page">
-		<keyword name="avoid"/>
-		<keyword name="auto"/>
-		<keyword name="inherit"/>
-	</property-def>
-	<property-def name="pause"
-		inherited="no" mediagroup="aural" category="aural">
-		<number name="time"/>
-		<number name="percentage"/>
-		<keyword name="inherit"/>
-	</property-def>
-	<property-def name="pause-after"
-		inherited="no" mediagroup="aural" category="aural">
-		<number name="time"/>
-		<number name="percentage"/>
-		<keyword name="inherit"/>
-	</property-def>
-	<property-def name="pause-before"
-		inherited="no" mediagroup="aural" category="aural">
-		<number name="time"/>
-		<number name="percentage"/>
-		<keyword name="inherit"/>
-	</property-def>
-	<property-def name="pitch"
-		inherited="yes" mediagroup="aural" category="aural">
-		<number name="frequency"/>
-		<keyword name="x-low"/>
-		<keyword name="low"/>
-		<keyword name="medium"/>
-		<keyword name="high"/>
-		<keyword name="x-high"/>
-		<keyword name="inherit"/>
-	</property-def>
-	<property-def name="pitch-range"
-		inherited="yes" mediagroup="aural" category="aural">
-		<number name="number"/>
-		<keyword name="inherit"/>
-	</property-def>
-	<property-def name="play-during"
-		inherited="no" mediagroup="aural" category="aural">
-		<function name="uri"/>
-		<keyword name="mix"/>
-		<keyword name="repeat"/>
-		<keyword name="auto"/>
-		<keyword name="none"/>
-		<keyword name="inherit"/>
-	</property-def>
-	<property-def name="position"
-		inherited="no" mediagroup="visual" category="visual">
-		<keyword name="static"/>
-		<keyword name="relative"/>
-		<keyword name="absolute"/>
-		<keyword name="fixed"/>
-		<keyword name="inherit"/>
-	</property-def>
-	<property-def name="quotes"
-		inherited="yes" mediagroup="visual" category="content">
-		<string name="any"/>
-		<keyword name="none"/>
-		<keyword name="inherit"/>
-	</property-def>
-	<property-def name="richness"
-		inherited="yes" mediagroup="aural" category="aural">
-		<number name="number"/>
-		<keyword name="inherit"/>
-	</property-def>
-	<property-def name="right"
-		inherited="no" mediagroup="visual" category="visual">
-		<number name="length"/>
-		<number name="percentage"/>
-		<keyword name="auto"/>
-		<keyword name="inherit"/>
-	</property-def>
-	<property-def name="size"
-		inherited="na" mediagroup="visual,paged" category="page">
-		<number name="length"/>
-		<keyword name="auto"/>
-		<keyword name="portrait"/>
-		<keyword name="landscape"/>
-		<keyword name="inherit"/>
-	</property-def>
-	<property-def name="speak"
-		inherited="yes" mediagroup="aural" category="aural">
-		<keyword name="normal"/>
-		<keyword name="none"/>
-		<keyword name="spell-out"/>
-		<keyword name="inherit"/>
-	</property-def>
-	<property-def name="speak-header"
-		inherited="yes" mediagroup="aural" category="tables">
-		<keyword name="once"/>
-		<keyword name="always"/>
-		<keyword name="inherit"/>
-	</property-def>
-	<property-def name="speak-numeral"
-		inherited="yes" mediagroup="aural" category="aural">
-		<keyword name="digits"/>
-		<keyword name="continuous"/>
-		<keyword name="inherit"/>
-	</property-def>
-	<property-def name="speak-punctuation"
-		inherited="yes" mediagroup="aural" category="aural">
-		<keyword name="code"/>
-		<keyword name="none"/>
-		<keyword name="inherit"/>
-	</property-def>
-	<property-def name="speech-rate"
-		inherited="yes" mediagroup="aural" category="aural">
-		<number name="number"/>
-		<keyword name="x-slow"/>
-		<keyword name="slow"/>
-		<keyword name="medium"/>
-		<keyword name="fast"/>
-		<keyword name="x-fast"/>
-		<keyword name="faster"/>
-		<keyword name="slower"/>
-		<keyword name="inherit"/>
-	</property-def>
-	<property-def name="stress"
-		inherited="yes" mediagroup="aural" category="aural">
-		<number name="number"/>
-		<keyword name="inherit"/>
-	</property-def>
-	<property-def name="table-layout"
-		inherited="no" mediagroup="visual" category="tables">
-		<keyword name="auto"/>
-		<keyword name="fixed"/>
-		<keyword name="inherit"/>
-	</property-def>
-	<property-def name="text-align"
-		inherited="yes" mediagroup="visual" category="text">
-		<keyword name="left"/>
-		<keyword name="right"/>
-		<keyword name="center"/>
-		<keyword name="justify"/>
-		<string name="any"/>
-		<keyword name="inherit"/>
-	</property-def>
-	<property-def name="text-decoration"
-		inherited="no" mediagroup="visual" category="text">
-		<keyword name="none"/>
-		<keyword name="underline"/>
-		<keyword name="overline"/>
-		<keyword name="line-through"/>
-		<keyword name="blink"/>
-		<keyword name="inherit"/>
-	</property-def>
-	<property-def name="text-indent"
-		inherited="yes" mediagroup="visual" category="text">
-		<number name="length"/>
-		<number name="percentage"/>
-		<keyword name="inherit"/>
-	</property-def>
-	<property-def name="text-shadow"
-		inherited="no" mediagroup="visual" category="text">
-		<keyword name="none"/>
-		<container name="color"/>
-		<number name="length"/>
-		<keyword name="inherit"/>
-		<separator name="comma"/>
-	</property-def>
-	<property-def name="text-transform"
-		inherited="yes" mediagroup="visual" category="text">
-		<keyword name="capitalize"/>
-		<keyword name="uppercase"/>
-		<keyword name="lowercase"/>
-		<keyword name="none"/>
-		<keyword name="inherit"/>
-	</property-def>
-	<property-def name="top"
-		inherited="no" mediagroup="visual" category="visual">
-		<number name="length"/>
-		<number name="percentage"/>
-		<keyword name="auto"/>
-		<keyword name="inherit"/>
-	</property-def>
-	<property-def name="unicode-bidi"
-		inherited="no" mediagroup="visual" category="visual">
-		<keyword name="normal"/>
-		<keyword name="embed"/>
-		<keyword name="bidi-override"/>
-		<keyword name="inherit"/>
-	</property-def>
-	<property-def name="vertical-align"
-		inherited="no" mediagroup="visual" category="visual">
-		<keyword name="baseline"/>
-		<keyword name="sub"/>
-		<keyword name="super"/>
-		<keyword name="top"/>
-		<keyword name="text-top"/>
-		<keyword name="middle"/>
-		<keyword name="bottom"/>
-		<keyword name="text-bottom"/>
-		<number name="percentage"/>
-		<number name="length"/>
-		<keyword name="inherit"/>
-	</property-def>
-	<property-def name="visibility"
-		inherited="no" mediagroup="visual" category="visual">
-		<keyword name="visible"/>
-		<keyword name="hidden"/>
-		<keyword name="collapse"/>
-		<keyword name="inherit"/>
-	</property-def>
-	<property-def name="voice-family"
-		inherited="yes" mediagroup="aural" category="aural">
-		<string name="specific-voice"/>
-		<container name="generic-voice"/>
-		<keyword name="inherit"/>
-	</property-def>
-	<property-def name="volume"
-		inherited="yes" mediagroup="aural" category="aural">
-		<number name="number"/>
-		<number name="percentage"/>
-		<keyword name="silent"/>
-		<keyword name="x-soft"/>
-		<keyword name="soft"/>
-		<keyword name="medium"/>
-		<keyword name="loud"/>
-		<keyword name="x-loud"/>
-		<keyword name="inherit"/>
-	</property-def>
-	<property-def name="white-space"
-		inherited="yes" mediagroup="visual" category="text">
-		<keyword name="normal"/>
-		<keyword name="pre"/>
-		<keyword name="nowrap"/>
-		<keyword name="inherit"/>
-	</property-def>
-	<property-def name="widows"
-		inherited="yes" mediagroup="visual,paged" category="page">
-		<number name="integer"/>
-		<keyword name="inherit"/>
-	</property-def>
-	<property-def name="width"
-		inherited="no" mediagroup="visual" category="visual">
-		<number name="length"/>
-		<number name="percentage"/>
-		<keyword name="auto"/>
-		<keyword name="inherit"/>
-	</property-def>
-	<property-def name="word-spacing"
-		inherited="yes" mediagroup="visual" category="text">
-		<keyword name="normal"/>
-		<number name="length"/>
-		<keyword name="inherit"/>
-	</property-def>
-	<property-def name="z-index"
-		inherited="no" mediagroup="visual" category="visual">
-		<keyword name="auto"/>
-		<number name="integer"/>
-		<keyword name="inherit"/>
-	</property-def>
-
-	<!-- descriptor definition : These are for @font-face -->
-
-	<descriptor-def name="ascent">
-		<number name="number"/>
-	</descriptor-def>
-	<descriptor-def name="baseline">
-		<number name="number"/>
-	</descriptor-def>
-	<descriptor-def name="bbox">
-		<number name="number"/>
-		<separator name="comma"/>
-	</descriptor-def>
-	<descriptor-def name="cap-height">
-		<number name="number"/>
-	</descriptor-def>
-	<descriptor-def name="centerline">
-		<number name="number"/>
-	</descriptor-def>
-	<descriptor-def name="definition-src">
-		<function name="uri"/>
-	</descriptor-def>
-	<descriptor-def name="descent">
-		<number name="number"/>
-	</descriptor-def>
-	<descriptor-def name="font-family">
-		<string name="family-name"/>
-		<container name="generic-family"/>
-		<separator name="comma"/>
-	</descriptor-def>
-	<descriptor-def name="font-size">
-		<keyword name="all"/>
-		<number name="length"/>
-		<separator name="comma"/>
-	</descriptor-def>
-	<descriptor-def name="font-stretch">
-		<keyword name="all"/>
-		<keyword name="normal"/>
-		<keyword name="ultra-condensed"/>
-		<keyword name="extra-condensed"/>
-		<keyword name="condensed"/>
-		<keyword name="semi-condensed"/>
-		<keyword name="semi-expanded"/>
-		<keyword name="expanded"/>
-		<keyword name="extra-expanded"/>
-		<keyword name="ultra-expanded"/>
-		<separator name="comma"/>
-	</descriptor-def>
-	<descriptor-def name="font-style">
-		<keyword name="all"/>
-		<keyword name="normal"/>
-		<keyword name="italic"/>
-		<keyword name="oblique"/>
-		<separator name="comma"/>
-	</descriptor-def>
-	<descriptor-def name="font-variant">
-		<keyword name="normal"/>
-		<keyword name="small-caps"/>
-		<separator name="comma"/>
-	</descriptor-def>
-	<descriptor-def name="font-weight">
-		<keyword name="all"/>
-		<keyword name="normal"/>
-		<keyword name="bold"/>
-		<keyword name="100"/>
-		<keyword name="200"/>
-		<keyword name="300"/>
-		<keyword name="400"/>
-		<keyword name="500"/>
-		<keyword name="600"/>
-		<keyword name="700"/>
-		<keyword name="800"/>
-		<keyword name="900"/>
-		<separator name="comma"/>
-	</descriptor-def>
-	<descriptor-def name="mathline">
-		<number name="number"/>
-	</descriptor-def>
-	<descriptor-def name="panose-1">
-		<number name="integer"/>
-	</descriptor-def>
-	<descriptor-def name="slope">
-		<number name="number"/>
-	</descriptor-def>
-	<descriptor-def name="src">
-		<function name="uri"/>
-		<function name="format"/>
-		<container name="font-face-name"/>
-	</descriptor-def>
-	<descriptor-def name="stemh">
-		<number name="number"/>
-	</descriptor-def>
-	<descriptor-def name="stemv">
-		<number name="number"/>
-	</descriptor-def>
-	<descriptor-def name="topline">
-		<number name="number"/>
-	</descriptor-def>
-	<descriptor-def name="unicode-range">
-		<string name="urange"/>
-	</descriptor-def>
-	<descriptor-def name="units-per-em">
-		<number name="number"/>
-	</descriptor-def>
-	<descriptor-def name="widths">
-		<string name="urange"/>
-		<number name="length"/>
-	</descriptor-def>
-	<descriptor-def name="x-height">
-		<number name="number"/>
-	</descriptor-def>
-
-	<!-- container definition : Container is the lump of values.
-	It can be used like macros. -->
-    <container-def name="absolute-size">
-        <keyword name="xx-small"/>
-        <keyword name="x-small"/>
-        <keyword name="small"/>
-        <keyword name="medium"/>
-        <keyword name="large"/>
-        <keyword name="x-large"/>
-        <keyword name="xx-large"/>
-    </container-def>
-    <container-def name="border-style">
-        <keyword name="none"/>
-        <keyword name="hidden"/>
-        <keyword name="dotted"/>
-        <keyword name="dashed"/>
-        <keyword name="solid"/>
-        <keyword name="double"/>
-        <keyword name="groove"/>
-        <keyword name="ridge"/>
-        <keyword name="inset"/>
-        <keyword name="outset"/>
-    </container-def>
-    <container-def name="border-width">
-        <keyword name="thin"/>
-        <keyword name="medium"/>
-        <keyword name="thick"/>
-        <number name="length"/>
-    </container-def>
-	<container-def name="color">
-		<keyword name="aqua"/>
-		<keyword name="black"/>
-		<keyword name="blue"/>
-		<keyword name="fuchsia"/>
-		<keyword name="gray"/>
-		<keyword name="green"/>
-		<keyword name="lime"/>
-		<keyword name="maroon"/>
-		<keyword name="navy"/>
-		<keyword name="olive"/>
-		<keyword name="purple"/>
-		<keyword name="red"/>
-		<keyword name="silver"/>
-		<keyword name="teal"/>
-		<keyword name="white"/>
-		<keyword name="yellow"/>
-		<container name="system-color"/>
-		<function name="rgb"/>
-		<number name="hash"/>
-	</container-def>
-	<container-def name="generic-family">
-		<keyword name="serif"/>
-		<keyword name="sans-serif"/>
-		<keyword name="cursive"/>
-		<keyword name="fantasy"/>
-		<keyword name="monospace"/>
-	</container-def>
-	<container-def name="font-face-name">
-		<function name="local"/>
-	</container-def>
-	<container-def name="generic-voice">
-		<keyword name="male"/>
-		<keyword name="female"/>
-		<keyword name="child"/>
-	</container-def>
-	<container-def name="margin-width">
-		<number name="length"/>
-		<number name="percentage"/>
-		<keyword name="auto"/>
-	</container-def>
-	<container-def name="padding-width">
-		<number name="length"/>
-		<number name="percentage"/>
-	</container-def>
-	<container-def name="relative-size">
-		<keyword name="smaller"/>
-		<keyword name="larger"/>
-	</container-def>
-	<container-def name="shape">
-		<function name="rect"/>
-	</container-def>
-	<container-def name="system-color">
-		<keyword name="ActiveBorder"/>
-		<keyword name="ActiveCaption"/>
-		<keyword name="AppWorkspace"/>
-		<keyword name="Background"/>
-		<keyword name="ButtonFace"/>
-		<keyword name="ButtonHighlight"/>
-		<keyword name="ButtonShadow"/>
-		<keyword name="ButtonText"/>
-		<keyword name="CaptionText"/>
-		<keyword name="GrayText"/>
-		<keyword name="Highlight"/>
-		<keyword name="HighlightText"/>
-		<keyword name="InactiveBorder"/>
-		<keyword name="InactiveCaption"/>
-		<keyword name="InactiveCaptionText"/>
-		<keyword name="InfoBackground"/>
-		<keyword name="InfoText"/>
-		<keyword name="Menu"/>
-		<keyword name="MenuText"/>
-		<keyword name="Scrollbar"/>
-		<keyword name="ThreeDDarkShadow"/>
-		<keyword name="ThreeDFace"/>
-		<keyword name="ThreeDHighlight"/>
-		<keyword name="ThreeDLightShadow"/>
-		<keyword name="ThreeDShadow"/>
-		<keyword name="Window"/>
-		<keyword name="WindowFrame"/>
-		<keyword name="WindowText"/>
-	</container-def>
-
-	<!-- category definition : This is used to categorize properties
-	in Properties View. -->
-	<category-def name="aural">
-		<caption>%css2.category-def.aural.caption</caption>
-	</category-def>
-	<category-def name="box">
-		<caption>%css2.category-def.box.caption</caption>
-	</category-def>
-	<category-def name="colorandbackground">
-		<caption>%css2.category-def.colorandbackground.caption</caption>
-	</category-def>
-	<category-def name="content">
-		<caption>%css2.category-def.content.caption</caption>
-	</category-def>
-	<category-def name="font">
-		<caption>%css2.category-def.font.caption</caption>
-	</category-def>
-	<category-def name="page">
-		<caption>%css2.category-def.page.caption</caption>
-	</category-def>
-	<category-def name="tables">
-		<caption>%css2.category-def.tables.caption</caption>
-	</category-def>
-	<category-def name="text">
-		<caption>%css2.category-def.text.caption</caption>
-	</category-def>
-	<category-def name="ui">
-		<caption>%css2.category-def.ui.caption</caption>
-	</category-def>
-	<category-def name="visual">
-<!--		<caption>%css2.category-def.visual.caption</caption>-->
-		<caption>%css2.category-def.visual.caption</caption>
-	</category-def>
-	
-	<!-- function definition -->
-	<function-def name="attr">
-		<function-value>attr</function-value>
-	</function-def>
-	<function-def name="counter">
-		<function-value>counter</function-value>
-	</function-def>
-	<function-def name="rect">
-		<function-value>rect</function-value>
-	</function-def>
-	<function-def name="rgb">
-		<function-value>rgb</function-value>
-	</function-def>
-	<function-def name="uri">
-		<function-value>url</function-value>
-	</function-def>
-	<function-def name="format">
-		<function-value>format</function-value>
-	</function-def>
-	<function-def name="local">
-		<function-value>local</function-value>
-	</function-def>
-
-	<!-- number definition : What unit types be acceptable for each
-	number type? -->
-    <number-def name="angle">
-        <unit name="deg"/>
-        <unit name="grad"/>
-        <unit name="rad"/>
-    </number-def>
-    <number-def name="frequency">
-        <unit name="hz"/>
-        <unit name="khz"/>
-    </number-def>
-    <number-def name="hash">
-        <unit name="hash"/>
-    </number-def>
-	<number-def name="integer">
-	</number-def>
-    <number-def name="length">
-        <unit name="em"/>
-        <unit name="ex"/>
-        <unit name="px"/>
-        <unit name="in"/>
-        <unit name="cm"/>
-        <unit name="mm"/>
-        <unit name="pt"/>
-        <unit name="pc"/>
-    </number-def>
-	<number-def name="number">
-	</number-def>
-	<number-def name="percentage">
-		<unit name="percentage"/>
-	</number-def>
-	<number-def name="time">
-		<unit name="ms"/>
-		<unit name="s"/>
-	</number-def>
-
-	<unit-def name="cm">
-		<unit-value>cm</unit-value>
-	</unit-def>
-	<unit-def name="deg">
-		<unit-value>deg</unit-value>
-	</unit-def>
-	<unit-def name="em">
-		<unit-value>em</unit-value>
-	</unit-def>
-	<unit-def name="ex">
-		<unit-value>ex</unit-value>
-	</unit-def>
-	<unit-def name="grad">
-		<unit-value>grad</unit-value>
-	</unit-def>
-	<unit-def name="hash">
-		<unit-value>#</unit-value>
-	</unit-def>
-	<unit-def name="hz">
-		<unit-value>Hz</unit-value>
-	</unit-def>
-	<unit-def name="in">
-		<unit-value>in</unit-value>
-	</unit-def>
-	<unit-def name="khz">
-		<unit-value>kHz</unit-value>
-	</unit-def>
-	<unit-def name="mm">
-		<unit-value>mm</unit-value>
-	</unit-def>
-	<unit-def name="ms">
-		<unit-value>ms</unit-value>
-	</unit-def>
-	<unit-def name="pc">
-		<unit-value>pc</unit-value>
-	</unit-def>
-	<unit-def name="percentage">
-		<unit-value>%</unit-value>
-	</unit-def>
-	<unit-def name="pt">
-		<unit-value>pt</unit-value>
-	</unit-def>
-	<unit-def name="px">
-		<unit-value>px</unit-value>
-	</unit-def>
-	<unit-def name="rad">
-		<unit-value>rad</unit-value>
-	</unit-def>
-	<unit-def name="s">
-		<unit-value>s</unit-value>
-	</unit-def>
-
-    <!-- keywords : string constants (this is last part..) -->
-    <keyword-def name="100">
-        <keyword-value>100</keyword-value>
-    </keyword-def>
-    <keyword-def name="200">
-        <keyword-value>200</keyword-value>
-    </keyword-def>
-    <keyword-def name="300">
-        <keyword-value>300</keyword-value>
-    </keyword-def>
-    <keyword-def name="400">
-        <keyword-value>400</keyword-value>
-    </keyword-def>
-    <keyword-def name="500">
-        <keyword-value>500</keyword-value>
-    </keyword-def>
-    <keyword-def name="600">
-        <keyword-value>600</keyword-value>
-    </keyword-def>
-    <keyword-def name="700">
-        <keyword-value>700</keyword-value>
-    </keyword-def>
-    <keyword-def name="800">
-        <keyword-value>800</keyword-value>
-    </keyword-def>
-    <keyword-def name="900">
-        <keyword-value>900</keyword-value>
-    </keyword-def>
-    <keyword-def name="above">
-        <keyword-value>above</keyword-value>
-    </keyword-def>
-    <keyword-def name="absolute">
-        <keyword-value>absolute</keyword-value>
-    </keyword-def>
-    <keyword-def name="ActiveBorder">
-        <keyword-value>ActiveBorder</keyword-value>
-    </keyword-def>
-    <keyword-def name="ActiveCaption">
-        <keyword-value>ActiveCaption</keyword-value>
-    </keyword-def>
-    <keyword-def name="all">
-        <keyword-value>all</keyword-value>
-    </keyword-def>
-    <keyword-def name="always">
-        <keyword-value>always</keyword-value>
-    </keyword-def>
-    <keyword-def name="AppWorkspace">
-        <keyword-value>AppWorkspace</keyword-value>
-    </keyword-def>
-    <keyword-def name="aqua">
-        <keyword-value>aqua</keyword-value>
-    </keyword-def>
-    <keyword-def name="armenian">
-        <keyword-value>armenian</keyword-value>
-    </keyword-def>
-    <keyword-def name="auto">
-        <keyword-value>auto</keyword-value>
-    </keyword-def>
-    <keyword-def name="avoid">
-        <keyword-value>avoid</keyword-value>
-    </keyword-def>
-    <keyword-def name="Background">
-        <keyword-value>Background</keyword-value>
-    </keyword-def>
-    <keyword-def name="baseline">
-        <keyword-value>baseline</keyword-value>
-    </keyword-def>
-    <keyword-def name="behind">
-        <keyword-value>behind</keyword-value>
-    </keyword-def>
-    <keyword-def name="below">
-        <keyword-value>below</keyword-value>
-    </keyword-def>
-    <keyword-def name="bidi-override">
-        <keyword-value>bidi-override</keyword-value>
-    </keyword-def>
-    <keyword-def name="black">
-        <keyword-value>black</keyword-value>
-    </keyword-def>
-    <keyword-def name="blink">
-        <keyword-value>blink</keyword-value>
-    </keyword-def>
-    <keyword-def name="block">
-        <keyword-value>block</keyword-value>
-    </keyword-def>
-    <keyword-def name="blue">
-        <keyword-value>blue</keyword-value>
-    </keyword-def>
-    <keyword-def name="bold">
-        <keyword-value>bold</keyword-value>
-    </keyword-def>
-    <keyword-def name="bolder">
-        <keyword-value>bolder</keyword-value>
-    </keyword-def>
-    <keyword-def name="both">
-        <keyword-value>both</keyword-value>
-    </keyword-def>
-    <keyword-def name="bottom">
-        <keyword-value>bottom</keyword-value>
-    </keyword-def>
-    <keyword-def name="ButtonFace">
-        <keyword-value>ButtonFace</keyword-value>
-    </keyword-def>
-    <keyword-def name="ButtonHighlight">
-        <keyword-value>ButtonHighlight</keyword-value>
-    </keyword-def>
-    <keyword-def name="ButtonShadow">
-        <keyword-value>ButtonShadow</keyword-value>
-    </keyword-def>
-    <keyword-def name="ButtonText">
-        <keyword-value>ButtonText</keyword-value>
-    </keyword-def>
-    <keyword-def name="capitalize">
-        <keyword-value>capitalize</keyword-value>
-    </keyword-def>
-    <keyword-def name="caption">
-        <keyword-value>caption</keyword-value>
-    </keyword-def>
-    <keyword-def name="CaptionText">
-        <keyword-value>CaptionText</keyword-value>
-    </keyword-def>
-    <keyword-def name="center">
-        <keyword-value>center</keyword-value>
-    </keyword-def>
-    <keyword-def name="center-left">
-        <keyword-value>center-left</keyword-value>
-    </keyword-def>
-    <keyword-def name="center-right">
-        <keyword-value>center-right</keyword-value>
-    </keyword-def>
-    <keyword-def name="child">
-        <keyword-value>child</keyword-value>
-    </keyword-def>
-    <keyword-def name="circle">
-        <keyword-value>circle</keyword-value>
-    </keyword-def>
-    <keyword-def name="cjk-ideographic">
-        <keyword-value>cjk-ideographic</keyword-value>
-    </keyword-def>
-    <keyword-def name="close-quote">
-        <keyword-value>close-quote</keyword-value>
-    </keyword-def>
-    <keyword-def name="code">
-        <keyword-value>code</keyword-value>
-    </keyword-def>
-    <keyword-def name="condensed">
-        <keyword-value>condensed</keyword-value>
-    </keyword-def>
-    <keyword-def name="collapse">
-        <keyword-value>collapse</keyword-value>
-    </keyword-def>
-    <keyword-def name="compact">
-        <keyword-value>compact</keyword-value>
-    </keyword-def>
-    <keyword-def name="continuous">
-        <keyword-value>continuous</keyword-value>
-    </keyword-def>
-    <keyword-def name="crop">
-        <keyword-value>crop</keyword-value>
-    </keyword-def>
-    <keyword-def name="cross">
-        <keyword-value>cross</keyword-value>
-    </keyword-def>
-    <keyword-def name="crosshair">
-        <keyword-value>crosshair</keyword-value>
-    </keyword-def>
-    <keyword-def name="cursive">
-        <keyword-value>cursive</keyword-value>
-    </keyword-def>
-    <keyword-def name="dashed">
-        <keyword-value>dashed</keyword-value>
-    </keyword-def>
-    <keyword-def name="decimal">
-        <keyword-value>decimal</keyword-value>
-    </keyword-def>
-    <keyword-def name="decimal-leading-zero">
-        <keyword-value>decimal-leading-zero</keyword-value>
-    </keyword-def>
-    <keyword-def name="default">
-        <keyword-value>default</keyword-value>
-    </keyword-def>
-    <keyword-def name="digits">
-        <keyword-value>digits</keyword-value>
-    </keyword-def>
-    <keyword-def name="disc">
-        <keyword-value>disc</keyword-value>
-    </keyword-def>
-    <keyword-def name="dotted">
-        <keyword-value>dotted</keyword-value>
-    </keyword-def>
-    <keyword-def name="double">
-        <keyword-value>double</keyword-value>
-    </keyword-def>
-    <keyword-def name="e-resize">
-        <keyword-value>e-resize</keyword-value>
-    </keyword-def>
-    <keyword-def name="embed">
-        <keyword-value>embed</keyword-value>
-    </keyword-def>
-    <keyword-def name="expanded">
-        <keyword-value>expanded</keyword-value>
-    </keyword-def>
-    <keyword-def name="extra-condensed">
-        <keyword-value>extra-condensed</keyword-value>
-    </keyword-def>
-    <keyword-def name="extra-expanded">
-        <keyword-value>extra-expanded</keyword-value>
-    </keyword-def>
-    <keyword-def name="fantasy">
-        <keyword-value>fantasy</keyword-value>
-    </keyword-def>
-    <keyword-def name="far-left">
-        <keyword-value>far-left</keyword-value>
-    </keyword-def>
-    <keyword-def name="far-right">
-        <keyword-value>far-right</keyword-value>
-    </keyword-def>
-    <keyword-def name="fast">
-        <keyword-value>fast</keyword-value>
-    </keyword-def>
-    <keyword-def name="faster">
-        <keyword-value>faster</keyword-value>
-    </keyword-def>
-    <keyword-def name="female">
-        <keyword-value>female</keyword-value>
-    </keyword-def>
-    <keyword-def name="fixed">
-        <keyword-value>fixed</keyword-value>
-    </keyword-def>
-    <keyword-def name="fuchsia">
-        <keyword-value>fuchsia</keyword-value>
-    </keyword-def>
-    <keyword-def name="georgian">
-        <keyword-value>georgian</keyword-value>
-    </keyword-def>
-    <keyword-def name="gray">
-        <keyword-value>gray</keyword-value>
-    </keyword-def>
-    <keyword-def name="GrayText">
-        <keyword-value>GrayText</keyword-value>
-    </keyword-def>
-    <keyword-def name="green">
-        <keyword-value>green</keyword-value>
-    </keyword-def>
-    <keyword-def name="groove">
-        <keyword-value>groove</keyword-value>
-    </keyword-def>
-    <keyword-def name="hebrew">
-        <keyword-value>hebrew</keyword-value>
-    </keyword-def>
-    <keyword-def name="help">
-        <keyword-value>help</keyword-value>
-    </keyword-def>
-    <keyword-def name="hidden">
-        <keyword-value>hidden</keyword-value>
-    </keyword-def>
-    <keyword-def name="hide">
-        <keyword-value>hide</keyword-value>
-    </keyword-def>
-    <keyword-def name="high">
-        <keyword-value>high</keyword-value>
-    </keyword-def>
-    <keyword-def name="Highlight">
-        <keyword-value>Highlight</keyword-value>
-    </keyword-def>
-    <keyword-def name="HighlightText">
-        <keyword-value>HighlightText</keyword-value>
-    </keyword-def>
-    <keyword-def name="higher">
-        <keyword-value>higher</keyword-value>
-    </keyword-def>
-    <keyword-def name="hiragana">
-        <keyword-value>hiragana</keyword-value>
-    </keyword-def>
-    <keyword-def name="hiragana-iroha">
-        <keyword-value>hiragana-iroha</keyword-value>
-    </keyword-def>
-    <keyword-def name="icon">
-        <keyword-value>icon</keyword-value>
-    </keyword-def>
-    <keyword-def name="InactiveBorder">
-        <keyword-value>InactiveBorder</keyword-value>
-    </keyword-def>
-    <keyword-def name="InactiveCaption">
-        <keyword-value>InactiveCaption</keyword-value>
-    </keyword-def>
-    <keyword-def name="InactiveCaptionText">
-        <keyword-value>InactiveCaptionText</keyword-value>
-    </keyword-def>
-    <keyword-def name="InfoBackground">
-        <keyword-value>InfoBackground</keyword-value>
-    </keyword-def>
-    <keyword-def name="InfoText">
-        <keyword-value>InfoText</keyword-value>
-    </keyword-def>
-    <keyword-def name="inherit">
-        <keyword-value>inherit</keyword-value>
-    </keyword-def>
-    <keyword-def name="inline">
-        <keyword-value>inline</keyword-value>
-    </keyword-def>
-    <keyword-def name="inline-table">
-        <keyword-value>inline-table</keyword-value>
-    </keyword-def>
-    <keyword-def name="inset">
-        <keyword-value>inset</keyword-value>
-    </keyword-def>
-    <keyword-def name="inside">
-        <keyword-value>inside</keyword-value>
-    </keyword-def>
-    <keyword-def name="invert">
-        <keyword-value>invert</keyword-value>
-    </keyword-def>
-    <keyword-def name="italic">
-        <keyword-value>italic</keyword-value>
-    </keyword-def>
-    <keyword-def name="justify">
-        <keyword-value>justify</keyword-value>
-    </keyword-def>
-    <keyword-def name="katakana">
-        <keyword-value>katakana</keyword-value>
-    </keyword-def>
-    <keyword-def name="katakana-iroha">
-        <keyword-value>katakana-iroha</keyword-value>
-    </keyword-def>
-    <keyword-def name="landscape">
-        <keyword-value>landscape</keyword-value>
-    </keyword-def>
-    <keyword-def name="large">
-        <keyword-value>large</keyword-value>
-    </keyword-def>
-    <keyword-def name="larger">
-        <keyword-value>larger</keyword-value>
-    </keyword-def>
-    <keyword-def name="left">
-        <keyword-value>left</keyword-value>
-    </keyword-def>
-    <keyword-def name="left-side">
-        <keyword-value>left-side</keyword-value>
-    </keyword-def>
-    <keyword-def name="leftwards">
-        <keyword-value>leftwards</keyword-value>
-    </keyword-def>
-    <keyword-def name="level">
-        <keyword-value>level</keyword-value>
-    </keyword-def>
-    <keyword-def name="lighter">
-        <keyword-value>lighter</keyword-value>
-    </keyword-def>
-    <keyword-def name="lime">
-        <keyword-value>lime</keyword-value>
-    </keyword-def>
-    <keyword-def name="line-through">
-        <keyword-value>line-through</keyword-value>
-    </keyword-def>
-    <keyword-def name="list-item">
-        <keyword-value>list-item</keyword-value>
-    </keyword-def>
-    <keyword-def name="loud">
-        <keyword-value>loud</keyword-value>
-    </keyword-def>
-    <keyword-def name="low">
-        <keyword-value>low</keyword-value>
-    </keyword-def>
-    <keyword-def name="lower">
-        <keyword-value>lower</keyword-value>
-    </keyword-def>
-    <keyword-def name="lower-alpha">
-        <keyword-value>lower-alpha</keyword-value>
-    </keyword-def>
-    <keyword-def name="lower-greek">
-        <keyword-value>lower-greek</keyword-value>
-    </keyword-def>
-    <keyword-def name="lower-latin">
-        <keyword-value>lower-latin</keyword-value>
-    </keyword-def>
-    <keyword-def name="lower-roman">
-        <keyword-value>lower-roman</keyword-value>
-    </keyword-def>
-    <keyword-def name="lowercase">
-        <keyword-value>lowercase</keyword-value>
-    </keyword-def>
-    <keyword-def name="ltr">
-        <keyword-value>ltr</keyword-value>
-    </keyword-def>
-    <keyword-def name="male">
-        <keyword-value>male</keyword-value>
-    </keyword-def>
-    <keyword-def name="marker">
-        <keyword-value>marker</keyword-value>
-    </keyword-def>
-    <keyword-def name="maroon">
-        <keyword-value>maroon</keyword-value>
-    </keyword-def>
-    <keyword-def name="medium">
-        <keyword-value>medium</keyword-value>
-    </keyword-def>
-    <keyword-def name="Menu">
-        <keyword-value>Menu</keyword-value>
-    </keyword-def>
-    <keyword-def name="MenuText">
-        <keyword-value>MenuText</keyword-value>
-    </keyword-def>
-    <keyword-def name="message-box">
-        <keyword-value>message-box</keyword-value>
-    </keyword-def>
-    <keyword-def name="middle">
-        <keyword-value>middle</keyword-value>
-    </keyword-def>
-    <keyword-def name="mix">
-        <keyword-value>mix</keyword-value>
-    </keyword-def>
-    <keyword-def name="monospace">
-        <keyword-value>monospace</keyword-value>
-    </keyword-def>
-    <keyword-def name="move">
-        <keyword-value>move</keyword-value>
-    </keyword-def>
-    <keyword-def name="n-resize">
-        <keyword-value>n-resize</keyword-value>
-    </keyword-def>
-    <keyword-def name="narrower">
-        <keyword-value>narrower</keyword-value>
-    </keyword-def>
-    <keyword-def name="navy">
-        <keyword-value>navy</keyword-value>
-    </keyword-def>
-    <keyword-def name="ne-resize">
-        <keyword-value>ne-resize</keyword-value>
-    </keyword-def>
-    <keyword-def name="no-close-quote">
-        <keyword-value>no-close-quote</keyword-value>
-    </keyword-def>
-    <keyword-def name="no-open-quote">
-        <keyword-value>no-open-quote</keyword-value>
-    </keyword-def>
-    <keyword-def name="no-repeat">
-        <keyword-value>no-repeat</keyword-value>
-    </keyword-def>
-    <keyword-def name="none">
-        <keyword-value>none</keyword-value>
-    </keyword-def>
-    <keyword-def name="normal">
-        <keyword-value>normal</keyword-value>
-    </keyword-def>
-    <keyword-def name="nowrap">
-        <keyword-value>nowrap</keyword-value>
-    </keyword-def>
-    <keyword-def name="nw-resize">
-        <keyword-value>nw-resize</keyword-value>
-    </keyword-def>
-    <keyword-def name="oblique">
-        <keyword-value>oblique</keyword-value>
-    </keyword-def>
-    <keyword-def name="olive">
-        <keyword-value>olive</keyword-value>
-    </keyword-def>
-    <keyword-def name="once">
-        <keyword-value>once</keyword-value>
-    </keyword-def>
-    <keyword-def name="open-quote">
-        <keyword-value>open-quote</keyword-value>
-    </keyword-def>
-    <keyword-def name="outset">
-        <keyword-value>outset</keyword-value>
-    </keyword-def>
-    <keyword-def name="outside">
-        <keyword-value>outside</keyword-value>
-    </keyword-def>
-    <keyword-def name="overline">
-        <keyword-value>overline</keyword-value>
-    </keyword-def>
-    <keyword-def name="pointer">
-        <keyword-value>pointer</keyword-value>
-    </keyword-def>
-    <keyword-def name="portrait">
-        <keyword-value>portrait</keyword-value>
-    </keyword-def>
-    <keyword-def name="pre">
-        <keyword-value>pre</keyword-value>
-    </keyword-def>
-    <keyword-def name="purple">
-        <keyword-value>purple</keyword-value>
-    </keyword-def>
-    <keyword-def name="red">
-        <keyword-value>red</keyword-value>
-    </keyword-def>
-    <keyword-def name="relative">
-        <keyword-value>relative</keyword-value>
-    </keyword-def>
-    <keyword-def name="repeat">
-        <keyword-value>repeat</keyword-value>
-    </keyword-def>
-    <keyword-def name="repeat-x">
-        <keyword-value>repeat-x</keyword-value>
-    </keyword-def>
-    <keyword-def name="repeat-y">
-        <keyword-value>repeat-y</keyword-value>
-    </keyword-def>
-    <keyword-def name="ridge">
-        <keyword-value>ridge</keyword-value>
-    </keyword-def>
-    <keyword-def name="right">
-        <keyword-value>right</keyword-value>
-    </keyword-def>
-    <keyword-def name="right-side">
-        <keyword-value>right-side</keyword-value>
-    </keyword-def>
-    <keyword-def name="rightwards">
-        <keyword-value>rightwards</keyword-value>
-    </keyword-def>
-    <keyword-def name="rtl">
-        <keyword-value>rtl</keyword-value>
-    </keyword-def>
-    <keyword-def name="run-in">
-        <keyword-value>run-in</keyword-value>
-    </keyword-def>
-    <keyword-def name="s-resize">
-        <keyword-value>s-resize</keyword-value>
-    </keyword-def>
-    <keyword-def name="sans-serif">
-        <keyword-value>sans-serif</keyword-value>
-    </keyword-def>
-    <keyword-def name="scroll">
-        <keyword-value>scroll</keyword-value>
-    </keyword-def>
-    <keyword-def name="Scrollbar">
-        <keyword-value>Scrollbar</keyword-value>
-    </keyword-def>
-    <keyword-def name="se-resize">
-        <keyword-value>se-resize</keyword-value>
-    </keyword-def>
-    <keyword-def name="semi-condensed">
-        <keyword-value>semi-condensed</keyword-value>
-    </keyword-def>
-    <keyword-def name="semi-expanded">
-        <keyword-value>semi-expanded</keyword-value>
-    </keyword-def>
-    <keyword-def name="separate">
-        <keyword-value>separate</keyword-value>
-    </keyword-def>
-    <keyword-def name="serif">
-        <keyword-value>serif</keyword-value>
-    </keyword-def>
-    <keyword-def name="show">
-        <keyword-value>show</keyword-value>
-    </keyword-def>
-    <keyword-def name="silent">
-        <keyword-value>silent</keyword-value>
-    </keyword-def>
-    <keyword-def name="silver">
-        <keyword-value>silver</keyword-value>
-    </keyword-def>
-    <keyword-def name="slow">
-        <keyword-value>slow</keyword-value>
-    </keyword-def>
-    <keyword-def name="slower">
-        <keyword-value>slower</keyword-value>
-    </keyword-def>
-    <keyword-def name="small">
-        <keyword-value>small</keyword-value>
-    </keyword-def>
-    <keyword-def name="small-caps">
-        <keyword-value>small-caps</keyword-value>
-    </keyword-def>
-    <keyword-def name="small-caption">
-        <keyword-value>small-caption</keyword-value>
-    </keyword-def>
-    <keyword-def name="smaller">
-        <keyword-value>smaller</keyword-value>
-    </keyword-def>
-    <keyword-def name="soft">
-        <keyword-value>soft</keyword-value>
-    </keyword-def>
-    <keyword-def name="solid">
-        <keyword-value>solid</keyword-value>
-    </keyword-def>
-    <keyword-def name="spell-out">
-        <keyword-value>spell-out</keyword-value>
-    </keyword-def>
-    <keyword-def name="square">
-        <keyword-value>square</keyword-value>
-    </keyword-def>
-    <keyword-def name="static">
-        <keyword-value>static</keyword-value>
-    </keyword-def>
-    <keyword-def name="status-bar">
-        <keyword-value>status-bar</keyword-value>
-    </keyword-def>
-    <keyword-def name="sub">
-        <keyword-value>sub</keyword-value>
-    </keyword-def>
-    <keyword-def name="super">
-        <keyword-value>super</keyword-value>
-    </keyword-def>
-    <keyword-def name="sw-resize">
-        <keyword-value>sw-resize</keyword-value>
-    </keyword-def>
-    <keyword-def name="table">
-        <keyword-value>table</keyword-value>
-    </keyword-def>
-    <keyword-def name="table-caption">
-        <keyword-value>table-caption</keyword-value>
-    </keyword-def>
-    <keyword-def name="table-cell">
-        <keyword-value>table-cell</keyword-value>
-    </keyword-def>
-    <keyword-def name="table-column">
-        <keyword-value>table-column</keyword-value>
-    </keyword-def>
-    <keyword-def name="table-column-group">
-        <keyword-value>table-column-group</keyword-value>
-    </keyword-def>
-    <keyword-def name="table-footer-group">
-        <keyword-value>table-footer-group</keyword-value>
-    </keyword-def>
-    <keyword-def name="table-header-group">
-        <keyword-value>table-header-group</keyword-value>
-    </keyword-def>
-    <keyword-def name="table-row">
-        <keyword-value>table-row</keyword-value>
-    </keyword-def>
-    <keyword-def name="table-row-group">
-        <keyword-value>table-row-group</keyword-value>
-    </keyword-def>
-    <keyword-def name="teal">
-        <keyword-value>teal</keyword-value>
-    </keyword-def>
-    <keyword-def name="text">
-        <keyword-value>text</keyword-value>
-    </keyword-def>
-    <keyword-def name="text-top">
-        <keyword-value>text-top</keyword-value>
-    </keyword-def>
-    <keyword-def name="text-bottom">
-        <keyword-value>text-bottom</keyword-value>
-    </keyword-def>
-    <keyword-def name="thick">
-        <keyword-value>thick</keyword-value>
-    </keyword-def>
-    <keyword-def name="thin">
-        <keyword-value>thin</keyword-value>
-    </keyword-def>
-    <keyword-def name="ThreeDDarkShadow">
-        <keyword-value>ThreeDDarkShadow</keyword-value>
-    </keyword-def>
-    <keyword-def name="ThreeDFace">
-        <keyword-value>ThreeDFace</keyword-value>
-    </keyword-def>
-    <keyword-def name="ThreeDHighlight">
-        <keyword-value>ThreeDHighlight</keyword-value>
-    </keyword-def>
-    <keyword-def name="ThreeDLightShadow">
-        <keyword-value>ThreeDLightShadow</keyword-value>
-    </keyword-def>
-    <keyword-def name="ThreeDShadow">
-        <keyword-value>ThreeDShadow</keyword-value>
-    </keyword-def>
-    <keyword-def name="top">
-        <keyword-value>top</keyword-value>
-    </keyword-def>
-    <keyword-def name="transparent">
-        <keyword-value>transparent</keyword-value>
-    </keyword-def>
-    <keyword-def name="ultra-condensed">
-        <keyword-value>ultra-condensed</keyword-value>
-    </keyword-def>
-    <keyword-def name="ultra-expanded">
-        <keyword-value>ultra-expanded</keyword-value>
-    </keyword-def>
-    <keyword-def name="underline">
-        <keyword-value>underline</keyword-value>
-    </keyword-def>
-    <keyword-def name="upper-alpha">
-        <keyword-value>upper-alpha</keyword-value>
-    </keyword-def>
-    <keyword-def name="upper-latin">
-        <keyword-value>upper-latin</keyword-value>
-    </keyword-def>
-    <keyword-def name="upper-roman">
-        <keyword-value>upper-roman</keyword-value>
-    </keyword-def>
-    <keyword-def name="uppercase">
-        <keyword-value>uppercase</keyword-value>
-    </keyword-def>
-    <keyword-def name="visible">
-        <keyword-value>visible</keyword-value>
-    </keyword-def>
-    <keyword-def name="w-resize">
-        <keyword-value>w-resize</keyword-value>
-    </keyword-def>
-    <keyword-def name="wait">
-        <keyword-value>wait</keyword-value>
-    </keyword-def>
-    <keyword-def name="white">
-        <keyword-value>white</keyword-value>
-    </keyword-def>
-    <keyword-def name="wider">
-        <keyword-value>wider</keyword-value>
-    </keyword-def>
-    <keyword-def name="Window">
-        <keyword-value>Window</keyword-value>
-    </keyword-def>
-    <keyword-def name="WindowFrame">
-        <keyword-value>WindowFrame</keyword-value>
-    </keyword-def>
-    <keyword-def name="WindowText">
-        <keyword-value>WindowText</keyword-value>
-    </keyword-def>
-    <keyword-def name="x-fast">
-        <keyword-value>x-fast</keyword-value>
-    </keyword-def>
-    <keyword-def name="x-high">
-        <keyword-value>x-high</keyword-value>
-    </keyword-def>
-    <keyword-def name="x-large">
-        <keyword-value>x-large</keyword-value>
-    </keyword-def>
-    <keyword-def name="x-loud">
-        <keyword-value>x-loud</keyword-value>
-    </keyword-def>
-    <keyword-def name="x-low">
-        <keyword-value>x-low</keyword-value>
-    </keyword-def>
-    <keyword-def name="x-slow">
-        <keyword-value>x-slow</keyword-value>
-    </keyword-def>
-    <keyword-def name="x-small">
-        <keyword-value>x-small</keyword-value>
-    </keyword-def>
-    <keyword-def name="x-soft">
-        <keyword-value>x-soft</keyword-value>
-    </keyword-def>
-    <keyword-def name="xx-small">
-        <keyword-value>xx-small</keyword-value>
-    </keyword-def>
-    <keyword-def name="xx-large">
-        <keyword-value>xx-large</keyword-value>
-    </keyword-def>
-    <keyword-def name="yellow">
-        <keyword-value>yellow</keyword-value>
-    </keyword-def>
-</css-profile>
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/cssprofile/cssprofile-mobile1_0.xml b/bundles/org.eclipse.wst.css.core/cssprofile/cssprofile-mobile1_0.xml
deleted file mode 100644
index 73b6c12..0000000
--- a/bundles/org.eclipse.wst.css.core/cssprofile/cssprofile-mobile1_0.xml
+++ /dev/null
@@ -1,146 +0,0 @@
-<?xml version="1.0" encoding="UTF-8" ?>
-<!--<!DOCTYPE css-profile SYSTEM "css-profile.dtd" >-->
-<css-profile>
-	<profile-import name="cssprofile-css2.xml"/>
-	<stylesheet-def>
-		<description>%mobile1_0.stylesheet-def.description</description>
-		<charset-rule/>
-		<import-rule/>
-		<media-rule/>
-		<style-rule/>
-	</stylesheet-def>
-
-	<!-- Which properties can style rule include ? -->
-	<!-- using "overwrite" method: only disabled properties are written. -->
-
-	<style-rule-def overwrite="true">
-		<selector-expression name="child" enabled="false"/>
-		<selector-expression name="adjacent" enabled="false"/>
-		<selector-expression name="attribute" enabled="false"/>
-		<pseudo-class name="first-child" enabled="false"/>
-		<pseudo-class name="link" enabled="false"/>
-		<pseudo-class name="active" enabled="false"/>
-		<pseudo-class name="lang" enabled="false"/>
-		<property name="azimuth" enabled="false"/>
-		<property name="border-collapse" enabled="false"/>
-		<property name="border-spacing" enabled="false"/>
-		<property name="bottom" enabled="false"/>
-		<property name="caption-side" enabled="false"/>
-		<property name="clip" enabled="false"/>
-		<property name="content" enabled="false"/>
-		<property name="counter-increment" enabled="false"/>
-		<property name="counter-reset" enabled="false"/>
-		<property name="cue" enabled="false"/>
-		<property name="cue-after" enabled="false"/>
-		<property name="cue-before" enabled="false"/>
-		<property name="cursor" enabled="false"/>
-		<property name="direction" enabled="false"/>
-		<property name="elevation" enabled="false"/>
-		<property name="empty-cells" enabled="false"/>
-		<property name="font-size-adjust" enabled="false"/>
-		<property name="font-stretch" enabled="false"/>
-		<property name="left" enabled="false"/>
-		<property name="letter-spacing" enabled="false"/>
-		<property name="line-height" enabled="false"/>
-		<property name="marker-offset" enabled="false"/>
-		<property name="marks" enabled="false"/>
-		<property name="max-height" enabled="false"/>
-		<property name="max-width" enabled="false"/>
-		<property name="min-height" enabled="false"/>
-		<property name="min-width" enabled="false"/>
-		<property name="orphans" enabled="false"/>
-		<property name="outline" enabled="false"/>
-		<property name="outline-color" enabled="false"/>
-		<property name="outline-style" enabled="false"/>
-		<property name="outline-width" enabled="false"/>
-		<property name="overflow" enabled="false"/>
-		<property name="page" enabled="false"/>
-		<property name="page-break-after" enabled="false"/>
-		<property name="page-break-before" enabled="false"/>
-		<property name="page-break-inside" enabled="false"/>
-		<property name="pause" enabled="false"/>
-		<property name="pause-after" enabled="false"/>
-		<property name="pause-before" enabled="false"/>
-		<property name="pitch" enabled="false"/>
-		<property name="pitch-range" enabled="false"/>
-		<property name="play-during" enabled="false"/>
-		<property name="position" enabled="false"/>
-		<property name="quotes" enabled="false"/>
-		<property name="richness" enabled="false"/>
-		<property name="right" enabled="false"/>
-		<property name="size" enabled="false"/>
-		<property name="speak" enabled="false"/>
-		<property name="speak-header" enabled="false"/>
-		<property name="speak-numeral" enabled="false"/>
-		<property name="speak-punctuation" enabled="false"/>
-		<property name="speech-rate" enabled="false"/>
-		<property name="stress" enabled="false"/>
-		<property name="table-layout" enabled="false"/>
-		<property name="text-shadow" enabled="false"/>
-		<property name="top" enabled="false"/>
-		<property name="unicode-bidi" enabled="false"/>
-		<property name="voice-family" enabled="false"/>
-		<property name="volume" enabled="false"/>
-		<property name="widows" enabled="false"/>
-		<property name="word-spacing" enabled="false"/>
-		<property name="z-index" enabled="false"/>
-	</style-rule-def>
-
-	<!-- property definition -->
-	<!-- using "redifine" method: if "overwrite" attribute is set to
-	"false"	or not set, it means the node is cleanly redifined -->
-
-    <property-def name="background-attachment"
-		inherited="no" mediagroup="visual" category="colorandbackground">
-        <keyword name="scroll"/>
-        <keyword name="inherit"/>
-    </property-def>
-	<property-def name="display"
-		inherited="no" mediagroup="all" category="visual">
-		<keyword name="inline"/>
-		<keyword name="block"/>
-		<keyword name="list-item"/>
-		<keyword name="none"/>
-	</property-def>
-	<property-def name="list-style-type"
-		inherited="yes" mediagroup="visual" category="content">
-		<keyword name="disc"/>
-		<keyword name="circle"/>
-		<keyword name="square"/>
-		<keyword name="decimal"/>
-		<keyword name="lower-roman"/>
-		<keyword name="upper-roman"/>
-		<keyword name="lower-greek"/>
-		<keyword name="lower-alpha"/>
-		<keyword name="upper-alpha"/>
-		<keyword name="none"/>
-		<keyword name="inherit"/>
-	</property-def>
-	<property-def name="text-align"
-		inherited="yes" mediagroup="visual" category="text">
-		<keyword name="left"/>
-		<keyword name="right"/>
-		<keyword name="center"/>
-		<keyword name="justify"/>
-		<keyword name="inherit"/>
-	</property-def>
-	<property-def name="text-decoration"
-		inherited="no" mediagroup="visual" category="text">
-		<keyword name="none"/>
-		<keyword name="underline"/>
-		<keyword name="inherit"/>
-	</property-def>
-	<property-def name="vertical-align"
-		inherited="no" mediagroup="visual" category="visual">
-		<keyword name="baseline"/>
-		<keyword name="sub"/>
-		<keyword name="super"/>
-		<keyword name="inherit"/>
-	</property-def>
-
-	<!-- container definition : Container is the lump of values.
-	It can be used like macros. -->
-	<container-def name="color" overwrite="true">
-		<container name="system-color" enabled="false"/>
-	</container-def>
-</css-profile>
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/cssprofile/cssprofile-wap.xml b/bundles/org.eclipse.wst.css.core/cssprofile/cssprofile-wap.xml
deleted file mode 100644
index 241bca3..0000000
--- a/bundles/org.eclipse.wst.css.core/cssprofile/cssprofile-wap.xml
+++ /dev/null
@@ -1,618 +0,0 @@
-<?xml version="1.0" encoding="UTF-8" ?>
-<!--<!DOCTYPE css-profile SYSTEM "css-profile.dtd" >-->
-<css-profile>
-        <profile-import name="cssprofile-css2.xml"/>
-        <stylesheet-def>
-                <description>%wap.stylesheet-def.description</description>
-                <charset-rule/>
-                <import-rule/>
-                <media-rule/>
-                <style-rule/>
-        </stylesheet-def>
-
-        <!-- Which properties can style rule include ? -->
-        <!-- using "overwrite" method: only disabled properties are written. -->
-
-        <style-rule-def overwrite="true">
-                <property name="azimuth" enabled="false"/>
-                <property name="border-collapse" enabled="false"/>
-                <property name="border-spacing" enabled="false"/>
-                <property name="bottom" enabled="false"/>
-                <property name="caption-side" enabled="false"/>
-                <property name="clip" enabled="false"/>
-                <property name="content" enabled="false"/>
-                <property name="cue" enabled="false"/>
-                <property name="cue-after" enabled="false"/>
-                <property name="cue-before" enabled="false"/>
-                <property name="cursor" enabled="false"/>
-                <property name="direction" enabled="false"/>
-                <property name="elevation" enabled="false"/>
-                <property name="empty-cells" enabled="false"/>
-                <property name="font-size-adjust" enabled="false"/>
-                <property name="font-stretch" enabled="false"/>
-                <property name="left" enabled="false"/>
-                <property name="letter-spacing" enabled="false"/>
-                <property name="line-height" enabled="false"/>
-                <property name="marker-offset" enabled="false"/>
-                <property name="marks" enabled="false"/>
-                <property name="max-height" enabled="false"/>
-                <property name="max-width" enabled="false"/>
-                <property name="min-height" enabled="false"/>
-                <property name="min-width" enabled="false"/>
-                <property name="orphans" enabled="false"/>
-                <property name="outline" enabled="false"/>
-                <property name="outline-color" enabled="false"/>
-                <property name="outline-style" enabled="false"/>
-                <property name="outline-width" enabled="false"/>
-                <property name="overflow" enabled="false"/>
-                <property name="page" enabled="false"/>
-                <property name="page-break-after" enabled="false"/>
-                <property name="page-break-before" enabled="false"/>
-                <property name="page-break-inside" enabled="false"/>
-                <property name="pause" enabled="false"/>
-                <property name="pause-after" enabled="false"/>
-                <property name="pause-before" enabled="false"/>
-                <property name="pitch" enabled="false"/>
-                <property name="pitch-range" enabled="false"/>
-                <property name="play-during" enabled="false"/>
-                <property name="position" enabled="false"/>
-                <property name="quotes" enabled="false"/>
-                <property name="richness" enabled="false"/>
-                <property name="right" enabled="false"/>
-                <property name="size" enabled="false"/>
-                <property name="speak" enabled="false"/>
-                <property name="speak-header" enabled="false"/>
-                <property name="speak-numeral" enabled="false"/>
-                <property name="speak-punctuation" enabled="false"/>
-                <property name="speech-rate" enabled="false"/>
-                <property name="stress" enabled="false"/>
-                <property name="table-layout" enabled="false"/>
-                <property name="text-shadow" enabled="false"/>
-                <property name="top" enabled="false"/>
-                <property name="unicode-bidi" enabled="false"/>
-                <property name="voice-family" enabled="false"/>
-                <property name="volume" enabled="false"/>
-                <property name="widows" enabled="false"/>
-                <property name="word-spacing" enabled="false"/>
-                <property name="z-index" enabled="false"/>
-                <property name="-wap-marquee-style"/>
-                <property name="-wap-marquee-loop"/>
-                <property name="-wap-marquee-dir"/>
-                <property name="-wap-marquee-speed"/>
-                <property name="-wap-accesskey"/>
-                <property name="-wap-input-format"/>
-                <property name="-wap-input-required"/>
-        </style-rule-def>
-
-        <!-- property definition -->
-        <!-- using "redifine" method: if "overwrite" attribute is set to
-        "false" or not set, it means the node is cleanly redifined -->
-
-        <property-def name="display"
-                inherited="no" mediagroup="all" category="visual">
-                <keyword name="inline"/>
-                <keyword name="block"/>
-                <keyword name="list-item"/>
-                <keyword name="-wap-marquee"/>
-                <keyword name="none"/>
-        </property-def>
-        <property-def name="list-style-type"
-                inherited="yes" mediagroup="visual" category="content">
-                <keyword name="disc"/>
-                <keyword name="circle"/>
-                <keyword name="square"/>
-                <keyword name="decimal"/>
-                <keyword name="lower-roman"/>
-                <keyword name="upper-roman"/>
-                <keyword name="lower-alpha"/>
-                <keyword name="upper-alpha"/>
-                <keyword name="none"/>
-                <keyword name="inherit"/>
-        </property-def>
-        <property-def name="text-align"
-                inherited="yes" mediagroup="visual" category="text">
-                <keyword name="left"/>
-                <keyword name="right"/>
-                <keyword name="center"/>
-                <keyword name="justify"/>
-                <keyword name="inherit"/>
-        </property-def>
-        <property-def name="text-decoration"
-                inherited="no" mediagroup="visual" category="text">
-                <keyword name="none"/>
-                <keyword name="underline"/>
-                <keyword name="blink"/>
-                <keyword name="inherit"/>
-        </property-def>
-        <property-def name="vertical-align"
-                inherited="no" mediagroup="visual" category="visual">
-                <keyword name="baseline"/>
-                <keyword name="sub"/>
-                <keyword name="super"/>
-                <keyword name="top"/>
-                <keyword name="middle"/>
-                <keyword name="bottom"/>
-                <keyword name="inherit"/>
-        </property-def>
-    <property-def name="-wap-marquee-style"
-                inherited="no" mediagroup="visual" category="wap">
-                <keyword name="scroll"/>
-                <keyword name="slide"/>
-                <keyword name="alternate"/>
-                <keyword name="inherit"/>
-        </property-def>
-    <property-def name="-wap-marquee-loop"
-                inherited="no" mediagroup="visual" category="wap">
-                <number name="integer"/>
-                <keyword name="infinite"/>
-                <keyword name="inherit"/>
-        </property-def>
-    <property-def name="-wap-marquee-dir"
-                inherited="no" mediagroup="visual" category="wap">
-                <keyword name="ltr"/>
-                <keyword name="rtl"/>
-                <keyword name="inherit"/>
-        </property-def>
-    <property-def name="-wap-marquee-speed"
-                inherited="no" mediagroup="visual" category="wap">
-                <keyword name="slow"/>
-                <keyword name="normal"/>
-                <keyword name="fast"/>
-                <keyword name="inherit"/>
-        </property-def>
-    <property-def name="-wap-accesskey"
-                inherited="no" mediagroup="interactive" category="wap">
-                <container name="keycombination"/>
-                <keyword name="inherit"/>
-        </property-def>
-    <property-def name="-wap-input-format"
-                inherited="no" mediagroup="interactive" category="wap">
-                <container name="format"/>
-                <keyword name="inherit"/>
-        </property-def>
-    <property-def name="-wap-input-required"
-                inherited="no" mediagroup="interactive" category="wap">
-                <keyword name="true"/>
-                <keyword name="false"/>
-                <keyword name="inherit"/>
-        </property-def>
-
-        <!-- container definition : Container is the lump of values.
-        It can be used like macros. -->
-        <container-def name="color" overwrite="true">
-                <container name="system-color" enabled="false"/>
-        </container-def>
-        <container-def name="format">
-                <string name="any"/>
-        </container-def>
-        <container-def name="keycombination">
-                <container name="key"/>
-                <keyword name="-"/>
-        </container-def>
-        <container-def name="key">
-                <keyword name="space"/>
-                <container name="specialkey"/>
-        </container-def>
-        <container-def name="specialkey">
-                <container name="modifierkey"/>
-                <container name="functionkey"/>
-                <container name="navigationkey"/>
-                <container name="editkey"/>
-                <container name="misckey"/>
-                <container name="volumecontrolkey"/>
-                <container name="applicationkey"/>
-                <container name="phonekey"/>
-                <container name="vendorkey"/>
-        </container-def>
-        <container-def name="modifierkey">
-                <keyword name="accesskey"/>
-                <container name="cmdkey"/>
-                <container name="optkey"/>
-                <container name="ctrlkey"/>
-                <container name="shiftkey"/>
-                <container name="altkey"/>
-                <container name="winkey"/>
-                <container name="metakey"/>
-                <keyword name="fn"/>
-                <keyword name="fcn"/>
-                <keyword name="caps"/>
-        </container-def>
-        <container-def name="cmdkey">
-                <keyword name="cmd"/>
-                <keyword name="rcmd"/>
-                <keyword name="lcmd"/>
-        </container-def>
-        <container-def name="optkey">
-                <keyword name="opt"/>
-                <keyword name="ropt"/>
-                <keyword name="lopt"/>
-        </container-def>
-        <container-def name="ctrlkey">
-                <keyword name="ctrl"/>
-                <keyword name="rctrl"/>
-                <keyword name="lctrl"/>
-        </container-def>
-        <container-def name="shiftkey">
-                <keyword name="shift"/>
-                <keyword name="rshift"/>
-                <keyword name="lshift"/>
-        </container-def>
-        <container-def name="altkey">
-                <keyword name="alt"/>
-                <keyword name="ralt"/>
-                <keyword name="lalt"/>
-        </container-def>
-        <container-def name="winkey">
-                <keyword name="win"/>
-                <keyword name="rwin"/>
-                <keyword name="lwin"/>
-        </container-def>
-        <container-def name="metakey">
-                <keyword name="meta"/>
-                <keyword name="rmeta"/>
-                <keyword name="lmeta"/>
-        </container-def>
-        <container-def name="functionkey">
-                <keyword name="f1"/>
-                <keyword name="f2"/>
-                <keyword name="f3"/>
-                <keyword name="f4"/>
-                <keyword name="f5"/>
-                <keyword name="f6"/>
-                <keyword name="f7"/>
-                <keyword name="f8"/>
-                <keyword name="f9"/>
-                <keyword name="f10"/>
-                <keyword name="f11"/>
-                <keyword name="f12"/>
-                <keyword name="f13"/>
-                <keyword name="f14"/>
-                <keyword name="f15"/>
-        </container-def>
-        <container-def name="navigationkey">
-                <keyword name="tab"/>
-                <keyword name="esc"/>
-                <keyword name="enter"/>
-                <keyword name="return"/>
-                <keyword name="menu"/>
-                <keyword name="help"/>
-                <keyword name="namemenu"/>
-                <keyword name="rcl"/>
-                <keyword name="snd"/>
-                <keyword name="arrowkey"/>
-                <keyword name="pagekey"/>
-        </container-def>
-        <container-def name="arrowkey">
-                <keyword name="up"/>
-                <keyword name="down"/>
-                <keyword name="left"/>
-                <keyword name="right"/>
-        </container-def>
-        <container-def name="pagekey">
-                <keyword name="home"/>
-                <keyword name="end"/>
-                <keyword name="pgup"/>
-                <keyword name="pgdn"/>
-        </container-def>
-        <container-def name="editkey">
-                <keyword name="bs"/>
-                <keyword name="del"/>
-                <keyword name="ins"/>
-                <keyword name="undo"/>
-                <keyword name="cut"/>
-                <keyword name="copy"/>
-                <keyword name="paste"/>
-                <keyword name="clr"/>
-                <keyword name="sto"/>
-        </container-def>
-        <container-def name="misckey">
-                <keyword name="prtsc"/>
-                <keyword name="sysrq"/>
-                <keyword name="scrlock"/>
-                <keyword name="pause"/>
-                <keyword name="brk"/>
-                <keyword name="numlock"/>
-                <keyword name="pwr"/>
-        </container-def>
-        <container-def name="volumecontrolkey">
-                <keyword name="volumeup"/>
-                <keyword name="volumedown"/>
-        </container-def>
-        <container-def name="applicationkey">
-                <keyword name="memo"/>
-                <keyword name="todo"/>
-                <keyword name="calendar"/>
-                <keyword name="mail"/>
-                <keyword name="address"/>
-        </container-def>
-        <container-def name="phonekey">
-                <keyword name="phone-send"/>
-                <keyword name="phone-end"/>
-                <keyword name="phone-accept"/>
-        </container-def>
-        <container-def name="vendorkey">
-                <keyword name="vnd."/>
-        </container-def>
-
-        <category-def name="wap">
-                <caption>%wap.category-def.wap.caption</caption>
-        </category-def>
-
-        <number-def name="length">
-        <unit name="em"/>
-        <unit name="ex"/>
-        <unit name="px"/>
-        </number-def>
-
-    <keyword-def name="-wap-marquee">
-        <keyword-value>-wap-marquee</keyword-value>
-    </keyword-def>
-        <keyword-def name="slide">
-                <keyword-value>slide</keyword-value>
-        </keyword-def>
-        <keyword-def name="alternate">
-                <keyword-value>alternate</keyword-value>
-        </keyword-def>
-        <keyword-def name="infinite">
-                <keyword-value>infinite</keyword-value>
-        </keyword-def>
-        <keyword-def name="-">
-                <keyword-value>-</keyword-value>
-        </keyword-def>
-        <keyword-def name="space">
-                <keyword-value>space</keyword-value>
-        </keyword-def>
-        <keyword-def name="accesskey">
-                <keyword-value>accesskey</keyword-value>
-        </keyword-def>
-        <keyword-def name="fn">
-                <keyword-value>fn</keyword-value>
-        </keyword-def>
-        <keyword-def name="fcn">
-                <keyword-value>fcn</keyword-value>
-        </keyword-def>
-        <keyword-def name="caps">
-                <keyword-value>caps</keyword-value>
-        </keyword-def>
-        <keyword-def name="cmd">
-                <keyword-value>cmd</keyword-value>
-        </keyword-def>
-        <keyword-def name="rcmd">
-                <keyword-value>rcmd</keyword-value>
-        </keyword-def>
-        <keyword-def name="lcmd">
-                <keyword-value>lcmd</keyword-value>
-        </keyword-def>
-        <keyword-def name="opt">
-                <keyword-value>opt</keyword-value>
-        </keyword-def>
-        <keyword-def name="ropt">
-                <keyword-value>ropt</keyword-value>
-        </keyword-def>
-        <keyword-def name="lopt">
-                <keyword-value>lopt</keyword-value>
-        </keyword-def>
-        <keyword-def name="ctrl">
-                <keyword-value>ctrl</keyword-value>
-        </keyword-def>
-        <keyword-def name="rctrl">
-                <keyword-value>rctrl</keyword-value>
-        </keyword-def>
-        <keyword-def name="lctrl">
-                <keyword-value>lctrl</keyword-value>
-        </keyword-def>
-        <keyword-def name="shift">
-                <keyword-value>shift</keyword-value>
-        </keyword-def>
-        <keyword-def name="rshift">
-                <keyword-value>rshift</keyword-value>
-        </keyword-def>
-        <keyword-def name="lshift">
-                <keyword-value>lshift</keyword-value>
-        </keyword-def>
-        <keyword-def name="alt">
-                <keyword-value>alt</keyword-value>
-        </keyword-def>
-        <keyword-def name="ralt">
-                <keyword-value>ralt</keyword-value>
-        </keyword-def>
-        <keyword-def name="lalt">
-                <keyword-value>lalt</keyword-value>
-        </keyword-def>
-        <keyword-def name="win">
-                <keyword-value>win</keyword-value>
-        </keyword-def>
-        <keyword-def name="rwin">
-                <keyword-value>rwin</keyword-value>
-        </keyword-def>
-        <keyword-def name="lwin">
-                <keyword-value>lwin</keyword-value>
-        </keyword-def>
-        <keyword-def name="meta">
-                <keyword-value>meta</keyword-value>
-        </keyword-def>
-        <keyword-def name="rmeta">
-                <keyword-value>rmeta</keyword-value>
-        </keyword-def>
-        <keyword-def name="lmeta">
-                <keyword-value>lmeta</keyword-value>
-        </keyword-def>
-        <keyword-def name="f1">
-                <keyword-value>f1</keyword-value>
-        </keyword-def>
-        <keyword-def name="f2">
-                <keyword-value>f2</keyword-value>
-        </keyword-def>
-        <keyword-def name="f3">
-                <keyword-value>f3</keyword-value>
-        </keyword-def>
-        <keyword-def name="f4">
-                <keyword-value>f4</keyword-value>
-        </keyword-def>
-        <keyword-def name="f5">
-                <keyword-value>f5</keyword-value>
-        </keyword-def>
-        <keyword-def name="f6">
-                <keyword-value>f6</keyword-value>
-        </keyword-def>
-        <keyword-def name="f7">
-                <keyword-value>f7</keyword-value>
-        </keyword-def>
-        <keyword-def name="f8">
-                <keyword-value>f8</keyword-value>
-        </keyword-def>
-        <keyword-def name="f9">
-                <keyword-value>f9</keyword-value>
-        </keyword-def>
-        <keyword-def name="f10">
-                <keyword-value>f10</keyword-value>
-        </keyword-def>
-        <keyword-def name="f11">
-                <keyword-value>f11</keyword-value>
-        </keyword-def>
-        <keyword-def name="f12">
-                <keyword-value>f12</keyword-value>
-        </keyword-def>
-        <keyword-def name="f13">
-                <keyword-value>f13</keyword-value>
-        </keyword-def>
-        <keyword-def name="f14">
-                <keyword-value>f14</keyword-value>
-        </keyword-def>
-        <keyword-def name="f15">
-                <keyword-value>f15</keyword-value>
-        </keyword-def>
-        <keyword-def name="tab">
-                <keyword-value>tab</keyword-value>
-        </keyword-def>
-        <keyword-def name="esc">
-                <keyword-value>esc</keyword-value>
-        </keyword-def>
-        <keyword-def name="enter">
-                <keyword-value>enter</keyword-value>
-        </keyword-def>
-        <keyword-def name="return">
-                <keyword-value>return</keyword-value>
-        </keyword-def>
-        <keyword-def name="namemenu">
-                <keyword-value>namemenu</keyword-value>
-        </keyword-def>
-        <keyword-def name="rcl">
-                <keyword-value>rcl</keyword-value>
-        </keyword-def>
-        <keyword-def name="snd">
-                <keyword-value>snd</keyword-value>
-        </keyword-def>
-        <keyword-def name="arrowkey">
-                <keyword-value>arrowkey</keyword-value>
-        </keyword-def>
-        <keyword-def name="pagekey">
-                <keyword-value>pagekey</keyword-value>
-        </keyword-def>
-        <keyword-def name="up">
-                <keyword-value>up</keyword-value>
-        </keyword-def>
-        <keyword-def name="down">
-                <keyword-value>down</keyword-value>
-        </keyword-def>
-        <keyword-def name="home">
-                <keyword-value>home</keyword-value>
-        </keyword-def>
-        <keyword-def name="end">
-                <keyword-value>end</keyword-value>
-        </keyword-def>
-        <keyword-def name="pgup">
-                <keyword-value>pgup</keyword-value>
-        </keyword-def>
-        <keyword-def name="pgdn">
-                <keyword-value>pgdn</keyword-value>
-        </keyword-def>
-        <keyword-def name="bs">
-                <keyword-value>bs</keyword-value>
-        </keyword-def>
-        <keyword-def name="del">
-                <keyword-value>del</keyword-value>
-        </keyword-def>
-        <keyword-def name="ins">
-                <keyword-value>ins</keyword-value>
-        </keyword-def>
-        <keyword-def name="undo">
-                <keyword-value>undo</keyword-value>
-        </keyword-def>
-        <keyword-def name="cut">
-                <keyword-value>cut</keyword-value>
-        </keyword-def>
-        <keyword-def name="copy">
-                <keyword-value>copy</keyword-value>
-        </keyword-def>
-        <keyword-def name="paste">
-                <keyword-value>paste</keyword-value>
-        </keyword-def>
-        <keyword-def name="clr">
-                <keyword-value>clr</keyword-value>
-        </keyword-def>
-        <keyword-def name="sto">
-                <keyword-value>sto</keyword-value>
-        </keyword-def>
-        <keyword-def name="prtsc">
-                <keyword-value>prtsc</keyword-value>
-        </keyword-def>
-        <keyword-def name="sysrq">
-                <keyword-value>sysrq</keyword-value>
-        </keyword-def>
-        <keyword-def name="scrlock">
-                <keyword-value>scrlock</keyword-value>
-        </keyword-def>
-        <keyword-def name="brk">
-                <keyword-value>brk</keyword-value>
-        </keyword-def>
-        <keyword-def name="numlock">
-                <keyword-value>numlock</keyword-value>
-        </keyword-def>
-        <keyword-def name="pwr">
-                <keyword-value>pwr</keyword-value>
-        </keyword-def>
-        <keyword-def name="volumeup">
-                <keyword-value>volumeup</keyword-value>
-        </keyword-def>
-        <keyword-def name="volumedown">
-                <keyword-value>volumedown</keyword-value>
-        </keyword-def>
-        <keyword-def name="memo">
-                <keyword-value>memo</keyword-value>
-        </keyword-def>
-        <keyword-def name="todo">
-                <keyword-value>todo</keyword-value>
-        </keyword-def>
-        <keyword-def name="calendar">
-                <keyword-value>calendar</keyword-value>
-        </keyword-def>
-        <keyword-def name="mail">
-                <keyword-value>mail</keyword-value>
-        </keyword-def>
-        <keyword-def name="address">
-                <keyword-value>address</keyword-value>
-        </keyword-def>
-        <keyword-def name="phone-send">
-                <keyword-value>phone-send</keyword-value>
-        </keyword-def>
-        <keyword-def name="phone-end">
-                <keyword-value>phone-end</keyword-value>
-        </keyword-def>
-        <keyword-def name="phone-accept">
-                <keyword-value>phone-accept</keyword-value>
-        </keyword-def>
-        <keyword-def name="vnd.">
-                <keyword-value>vnd.</keyword-value>
-        </keyword-def>
-        <keyword-def name="true">
-                <keyword-value>true</keyword-value>
-        </keyword-def>
-        <keyword-def name="false">
-                <keyword-value>false</keyword-value>
-        </keyword-def>
-        <keyword-def name="pause">
-                <keyword-value>pause</keyword-value>
-        </keyword-def>
-
-</css-profile>
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/cssprofile/cssprofile.properties b/bundles/org.eclipse.wst.css.core/cssprofile/cssprofile.properties
deleted file mode 100644
index dd7e399..0000000
--- a/bundles/org.eclipse.wst.css.core/cssprofile/cssprofile.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
-###############################################################################
-# cssprofile-css1.xml
-css1.stylesheet-def.description=Cascading Style Sheets, level 1
-css1.category-def.box.caption=Box model
-css1.category-def.colorandbackground.caption=Colors and Backgrounds
-css1.category-def.classification.caption=Classification
-css1.category-def.font.caption=Font
-css1.category-def.text.caption=Text
-# cssprofile-css2.xml
-css2.stylesheet-def.description=Cascading Style Sheets, level 2
-css2.category-def.aural.caption=Aural
-css2.category-def.box.caption=Box model
-css2.category-def.colorandbackground.caption=Colors and Backgrounds
-css2.category-def.content.caption=Generated content/List
-css2.category-def.font.caption=Fonts
-css2.category-def.page.caption=Paged media
-css2.category-def.tables.caption=Tables
-css2.category-def.text.caption=Text
-css2.category-def.visual.caption=Visual
-css2.category-def.ui.caption=User interface
-# cssprofile-mobile1_0.xml
-mobile1_0.stylesheet-def.description=CSS Mobile Profile 1.0
-# cssprofile-wap.xml
-wap.stylesheet-def.description=WCSS 1.0
-wap.category-def.wap.caption=WCSS Extensions
diff --git a/bundles/org.eclipse.wst.css.core/cssprofile/description.txt b/bundles/org.eclipse.wst.css.core/cssprofile/description.txt
deleted file mode 100644
index 9c87545..0000000
--- a/bundles/org.eclipse.wst.css.core/cssprofile/description.txt
+++ /dev/null
@@ -1,15 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
-
- This file contains definitions of data used internally 
- by CSS code, needs no translation, 
- and in no way should be considered API.
- *******************************************************************************/
- 
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/plugin.properties b/bundles/org.eclipse.wst.css.core/plugin.properties
deleted file mode 100644
index 97e65bf..0000000
--- a/bundles/org.eclipse.wst.css.core/plugin.properties
+++ /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
-###############################################################################
-providerName=Eclipse.org
-pluginName=Structured Source CSS Model
-nlFeatureName=Structured Source CSS Model NL Support
-cssprofile_css2.name=CSS2: Cascading Style Sheets, level 2
-cssprofile_css1.name=CSS1: Cascading Style Sheets, level 1
-cssprofile_mobile1_0.name=CSS Mobile Profile 1.0
-cssprofile_wap.name=WCSS 1.0
-Structured_CSS_Document_Factory_Extension.name=Structured CSS Document Factory Extension
-CSS_Content_Type_Extension_Element.name=CSS
diff --git a/bundles/org.eclipse.wst.css.core/plugin.xml b/bundles/org.eclipse.wst.css.core/plugin.xml
deleted file mode 100644
index 9527c17..0000000
--- a/bundles/org.eclipse.wst.css.core/plugin.xml
+++ /dev/null
@@ -1,81 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<?eclipse version="3.0"?>
-<plugin>
-
-     <extension
-         point="org.eclipse.wst.sse.core.cssprofile">
-      <profile
-            name="%cssprofile_css2.name"
-            default="true"
-            uri="cssprofile/cssprofile-css2.xml"
-            id="org.eclipse.wst.css.core.cssprofile.css2">
-      </profile>
-      <profile
-            name="%cssprofile_css1.name"
-            uri="cssprofile/cssprofile-css1.xml"
-            id="org.eclipse.wst.css.core.cssprofile.css1">
-      </profile>
-      <profile
-            name="%cssprofile_mobile1_0.name"
-            uri="cssprofile/cssprofile-mobile1_0.xml"
-            id="org.eclipse.wst.css.core.cssprofile.mobile1_0">
-      </profile>
-      <profile
-            name="%cssprofile_wap.name"
-            uri="cssprofile/cssprofile-wap.xml"
-            id="org.eclipse.wst.css.core.cssprofile.wap">
-      </profile>
-   </extension>
-   <extension
-         point="org.eclipse.wst.sse.core.modelHandler">
-      <modelHandler
-            class="org.eclipse.wst.css.core.internal.modelhandler.ModelHandlerForCSS"
-            associatedContentTypeId="org.eclipse.wst.css.core.csssource"
-            id="org.eclipse.wst.css.core.internal.modelhandler">
-      </modelHandler>
-   </extension>
-   <extension
-         id="org.eclipse.wst.css.core.taskdelegate"
-         point="org.eclipse.wst.sse.core.taskscanner">
-      <scanner
-            class="org.eclipse.wst.css.core.internal.tasks.CSSTaskScannerDelegate"
-            contentTypeIds="org.eclipse.wst.css.core.csssource" />
-   </extension>
-   <extension point="org.eclipse.core.filebuffers.documentCreation"
-         id="org.eclipse.wst.css.core.documentfactories"
-         name="%Structured_CSS_Document_Factory_Extension.name">
-      <factory
-            contentTypeId="org.eclipse.wst.css.core.csssource"
-            class="org.eclipse.wst.sse.core.internal.filebuffers.BasicStructuredDocumentFactory"/>
-   </extension>
-   <extension
-         point="org.eclipse.team.core.fileTypes">
-      <fileTypes
-            type="text"
-            extension="css">
-      </fileTypes>
-   </extension>
-   <extension
-         point="org.eclipse.wst.sse.core.formatProcessors">
-      <processor
-            class="org.eclipse.wst.css.core.internal.format.FormatProcessorCSS"
-            contentTypeId="org.eclipse.wst.css.core.csssource">
-      </processor>
-   </extension>
-   <extension
-         point="org.eclipse.core.runtime.contentTypes">
-         <content-type
-               file-extensions="css"
-               priority="high"
-               name="%CSS_Content_Type_Extension_Element.name"
-               id="csssource"
-               base-type="org.eclipse.core.runtime.text">
-			<describer class="org.eclipse.wst.css.core.internal.contenttype.ContentDescriberForCSS"/>
-		</content-type>
-   </extension>
-
-	<!-- initialize css core preferences -->
-	<extension point="org.eclipse.core.runtime.preferences">
-         <initializer class="org.eclipse.wst.css.core.internal.preferences.CSSCorePreferenceInitializer"/>
-	</extension>
-</plugin>
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/CSSCoreMessages.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/CSSCoreMessages.java
deleted file mode 100644
index 094d5fa..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/CSSCoreMessages.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 - Initial API and implementation
- **********************************************************************/
-package org.eclipse.wst.css.core.internal;
-
-import org.eclipse.osgi.util.NLS;
-
-/**
- * Strings used by CSS Core
- * 
- * @since 1.0
- */
-public class CSSCoreMessages extends NLS {
-	private static final String BUNDLE_NAME = "org.eclipse.wst.css.core.internal.CSSCorePluginResources";//$NON-NLS-1$
-
-	public static String You_cannot_use_CSSStyleShe_UI_;
-	public static String _1concat_ERROR_;
-	public static String _2concat_ERROR_;
-	public static String _3concat_ERROR_;
-	public static String _4concat_ERROR_;
-	public static String _25concat_ERROR_;
-	public static String _26concat_ERROR_;
-	public static String _27concat_ERROR_;
-	public static String _28concat_ERROR_;
-	public static String _5concat_ERROR_;
-	public static String _6concat_ERROR_;
-	public static String _7concat_ERROR_;
-	public static String _8concat_ERROR_;
-
-	static {
-		// load message values from bundle file
-		NLS.initializeMessages(BUNDLE_NAME, CSSCoreMessages.class);
-	}
-}
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/CSSCorePlugin.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/CSSCorePlugin.java
deleted file mode 100644
index 710b39a..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/CSSCorePlugin.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.core.internal;
-
-import org.eclipse.core.resources.IWorkspace;
-import org.eclipse.core.resources.ResourcesPlugin;
-import org.eclipse.core.runtime.Plugin;
-
-/**
- * The main plugin class to be used in the desktop.
- */
-public class CSSCorePlugin extends Plugin {
-	// The shared instance.
-	private static CSSCorePlugin plugin;
-
-	/**
-	 * The constructor.
-	 */
-	public CSSCorePlugin() {
-		super();
-		plugin = this;
-	}
-
-	/**
-	 * Returns the shared instance.
-	 */
-	public static CSSCorePlugin getDefault() {
-		return plugin;
-	}
-
-	/**
-	 * Returns the workspace instance.
-	 */
-	public static IWorkspace getWorkspace() {
-		return ResourcesPlugin.getWorkspace();
-	}
-}
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/CSSCorePluginResources.properties b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/CSSCorePluginResources.properties
deleted file mode 100644
index 6e42bd3..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/CSSCorePluginResources.properties
+++ /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
-###############################################################################
-You_cannot_use_CSSStyleShe_UI_=You cannot use CSSStyleSheet.getOwnerRule() because of many referencers of this rule\nPlease use getOnwerRules()
-_1concat_ERROR_={0}first flat node is null.
-_2concat_ERROR_={0}first flat node is not in model.
-_3concat_ERROR_={0}last flat node is null.
-_4concat_ERROR_={0}last flat node is not in model.
-_25concat_ERROR_={0}first region is null.
-_26concat_ERROR_={0}first region is not in model.
-_27concat_ERROR_={0}last region is null.
-_28concat_ERROR_={0}last region is not in model.
-_5concat_ERROR_={0}first region is null.
-_6concat_ERROR_={0}first region is not in model.
-_7concat_ERROR_={0}last region is null.
-_8concat_ERROR_={0}last region is not in model.
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/Logger.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/Logger.java
deleted file mode 100644
index 78e2fed..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/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.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.css.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);
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/cleanup/CSSCleanupStrategy.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/cleanup/CSSCleanupStrategy.java
deleted file mode 100644
index a248250..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/cleanup/CSSCleanupStrategy.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.wst.css.core.internal.cleanup;
-
-
-
-public interface CSSCleanupStrategy {
-
-	static final short ASIS = 0;
-	static final short LOWER = 1;
-	static final short UPPER = 2;
-
-	/**
-	 * 
-	 * @return short
-	 */
-	short getIdentCase();
-
-	/**
-	 * 
-	 * @return short
-	 */
-	short getPropNameCase();
-
-	/**
-	 * 
-	 * @return short
-	 */
-	short getPropValueCase();
-
-	/**
-	 * 
-	 * @return short
-	 */
-	short getSelectorTagCase();
-
-	/**
-	 * 
-	 * @return boolean
-	 */
-	boolean isFormatSource();
-
-	/**
-	 * 
-	 * @return boolean
-	 */
-	boolean isQuoteValues();
-
-	/**
-	 * 
-	 * @param formatSource
-	 *            boolean
-	 */
-	void setFormatSource(boolean formatSource);
-
-	/**
-	 * 
-	 * @param identCase
-	 *            short
-	 */
-	void setIdentCase(short identCase);
-
-	/**
-	 * 
-	 * @param propNameCase
-	 *            short
-	 */
-	void setPropNameCase(short propNameCase);
-
-	/**
-	 * 
-	 * @param propValueCase
-	 *            short
-	 */
-	void setPropValueCase(short propValueCase);
-
-	/**
-	 * 
-	 * @param quoteValues
-	 *            boolean
-	 */
-	void setQuoteValues(boolean quoteValues);
-
-	/**
-	 * 
-	 * @param selectorTagCase
-	 *            short
-	 */
-	void setSelectorTagCase(short selectorTagCase);
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/cleanup/CSSCleanupStrategyImpl.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/cleanup/CSSCleanupStrategyImpl.java
deleted file mode 100644
index 06e3e62..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/cleanup/CSSCleanupStrategyImpl.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.css.core.internal.cleanup;
-
-import org.eclipse.core.runtime.Preferences;
-import org.eclipse.wst.css.core.internal.CSSCorePlugin;
-import org.eclipse.wst.css.core.internal.preferences.CSSCorePreferenceNames;
-
-
-
-public class CSSCleanupStrategyImpl implements CSSCleanupStrategy {
-
-	static private CSSCleanupStrategy instance = null;
-	// initialize with defaults
-	protected short fIdentCase = ASIS;
-	protected short fPropNameCase = ASIS;
-	protected short fPropValueCase = ASIS;
-	protected short fSelectorTagCase = UPPER;
-	protected boolean fQuoteValues = true;
-	protected boolean fFormatSource = true;
-
-	/**
-	 * CSSCleanupStrategyImpl constructor comment.
-	 */
-	protected CSSCleanupStrategyImpl() {
-		super();
-		initialize();
-	}
-
-	/**
-	 * 
-	 * @return short
-	 */
-	public short getIdentCase() {
-		return fIdentCase;
-	}
-
-	/**
-	 * 
-	 * @return org.eclipse.wst.css.core.internal.cleanup.CSSCleanupStrategy
-	 */
-	public synchronized static CSSCleanupStrategy getInstance() {
-		if (instance == null)
-			instance = new CSSCleanupStrategyImpl();
-		return instance;
-	}
-
-	/**
-	 * 
-	 * @return short
-	 */
-	public short getPropNameCase() {
-		return fPropNameCase;
-	}
-
-	/**
-	 * 
-	 * @return short
-	 */
-	public short getPropValueCase() {
-		return fPropValueCase;
-	}
-
-	/**
-	 * 
-	 * @return short
-	 */
-	public short getSelectorTagCase() {
-		return fSelectorTagCase;
-	}
-
-	/**
-	 * 
-	 */
-	private void initialize() {
-		Preferences prefs = CSSCorePlugin.getDefault().getPluginPreferences();
-		fIdentCase = getCleanupCaseValue(prefs.getInt(CSSCorePreferenceNames.CLEANUP_CASE_IDENTIFIER));
-		fPropNameCase = getCleanupCaseValue(prefs.getInt(CSSCorePreferenceNames.CLEANUP_CASE_PROPERTY_NAME));
-		fPropValueCase = getCleanupCaseValue(prefs.getInt(CSSCorePreferenceNames.CLEANUP_CASE_PROPERTY_VALUE));
-		fSelectorTagCase = getCleanupCaseValue(prefs.getInt(CSSCorePreferenceNames.CLEANUP_CASE_SELECTOR));
-		fQuoteValues = prefs.getBoolean(CSSCorePreferenceNames.QUOTE_ATTR_VALUES);
-		fFormatSource = prefs.getBoolean(CSSCorePreferenceNames.FORMAT_SOURCE);
-	}
-
-	/**
-	 * Return the CSSCleanupStrategy equivalent case short value when given an
-	 * int
-	 * 
-	 * @param value
-	 * @return equivalent case short or ASIS if cannot be determined
-	 */
-	private short getCleanupCaseValue(int value) {
-		switch (value) {
-			case CSSCorePreferenceNames.LOWER :
-				return LOWER;
-			case CSSCorePreferenceNames.UPPER :
-				return UPPER;
-		}
-		return ASIS;
-	}
-
-	/**
-	 * 
-	 * @return boolean
-	 */
-	public boolean isFormatSource() {
-		return fFormatSource;
-	}
-
-	/**
-	 * 
-	 * @return boolean
-	 */
-	public boolean isQuoteValues() {
-		return fQuoteValues;
-	}
-
-	/**
-	 * 
-	 * @param formatSource
-	 *            boolean
-	 */
-	public void setFormatSource(boolean formatSource) {
-		fFormatSource = formatSource;
-	}
-
-	/**
-	 * 
-	 * @param identCase
-	 *            short
-	 */
-	public void setIdentCase(short identCase) {
-		fIdentCase = identCase;
-	}
-
-	/**
-	 * 
-	 * @param propNameCase
-	 *            short
-	 */
-	public void setPropNameCase(short propNameCase) {
-		fPropNameCase = propNameCase;
-	}
-
-	/**
-	 * 
-	 * @param propValueCase
-	 *            short
-	 */
-	public void setPropValueCase(short propValueCase) {
-		fPropValueCase = propValueCase;
-	}
-
-	/**
-	 * 
-	 * @param quoteValues
-	 *            boolean
-	 */
-	public void setQuoteValues(boolean quoteValues) {
-		fQuoteValues = quoteValues;
-	}
-
-	/**
-	 * 
-	 * @param selectorTagCase
-	 *            short
-	 */
-	public void setSelectorTagCase(short selectorTagCase) {
-		fSelectorTagCase = selectorTagCase;
-	}
-
-	// TODO: a saveOptions should be added to CSSCleanupStrategy interface
-	public void saveOptions() {
-		CSSCorePlugin.getDefault().getPluginPreferences().setValue(CSSCorePreferenceNames.CLEANUP_CASE_IDENTIFIER, fIdentCase);
-		CSSCorePlugin.getDefault().getPluginPreferences().setValue(CSSCorePreferenceNames.CLEANUP_CASE_PROPERTY_NAME, fPropNameCase);
-		CSSCorePlugin.getDefault().getPluginPreferences().setValue(CSSCorePreferenceNames.CLEANUP_CASE_PROPERTY_VALUE, fPropValueCase);
-		CSSCorePlugin.getDefault().getPluginPreferences().setValue(CSSCorePreferenceNames.CLEANUP_CASE_SELECTOR, fSelectorTagCase);
-		CSSCorePlugin.getDefault().getPluginPreferences().setValue(CSSCorePreferenceNames.QUOTE_ATTR_VALUES, fQuoteValues);
-		CSSCorePlugin.getDefault().getPluginPreferences().setValue(CSSCorePreferenceNames.FORMAT_SOURCE, fFormatSource);
-		CSSCorePlugin.getDefault().savePluginPreferences();
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/cleanup/CleanupProcessorCSS.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/cleanup/CleanupProcessorCSS.java
deleted file mode 100644
index 844807c..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/cleanup/CleanupProcessorCSS.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.core.internal.cleanup;
-
-import java.io.IOException;
-import java.util.List;
-
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.jface.text.IDocument;
-import org.eclipse.wst.css.core.internal.formatter.CSSFormatUtil;
-import org.eclipse.wst.css.core.internal.formatter.CSSSourceFormatter;
-import org.eclipse.wst.css.core.internal.formatter.CSSSourceFormatterFactory;
-import org.eclipse.wst.css.core.internal.provisional.contenttype.ContentTypeIdForCSS;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSDocument;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSModel;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSNode;
-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.format.IStructuredFormatProcessor;
-import org.eclipse.wst.sse.core.internal.provisional.INodeNotifier;
-import org.eclipse.wst.sse.core.internal.provisional.IStructuredModel;
-import org.eclipse.wst.sse.core.internal.provisional.IndexedRegion;
-import org.eclipse.wst.xml.core.internal.provisional.document.IDOMModel;
-import org.w3c.dom.Node;
-
-
-public class CleanupProcessorCSS extends AbstractStructuredCleanupProcessor {
-
-	public void cleanupModel(IStructuredModel structuredModel, int start, int length) {
-		CSSFormatUtil formatUtil = CSSFormatUtil.getInstance();
-		if (structuredModel instanceof ICSSModel) {
-			ICSSDocument doc = ((ICSSModel) structuredModel).getDocument();
-			CSSSourceFormatter formatter = CSSSourceFormatterFactory.getInstance().getSourceFormatter((INodeNotifier) doc);
-			StringBuffer buf = formatter.cleanup(doc);
-			if (buf != null) {
-				int startOffset = ((IndexedRegion) doc).getStartOffset();
-				int endOffset = ((IndexedRegion) doc).getEndOffset();
-				formatUtil.replaceSource(doc.getModel(), startOffset, endOffset - startOffset, buf.toString());
-			}
-		}
-		else if (structuredModel instanceof IDOMModel) {
-			List cssnodes = formatUtil.collectCSSNodes(structuredModel, start, length);
-			if (cssnodes != null && !cssnodes.isEmpty()) {
-				ICSSModel model = null;
-				for (int i = 0; i < cssnodes.size(); i++) {
-					ICSSNode node = (ICSSNode) cssnodes.get(i);
-					CSSSourceFormatter formatter = CSSSourceFormatterFactory.getInstance().getSourceFormatter((INodeNotifier) node);
-					StringBuffer buf = formatter.cleanup(node);
-					if (buf != null) {
-						int startOffset = ((IndexedRegion) node).getStartOffset();
-						int endOffset = ((IndexedRegion) node).getEndOffset();
-						if (model == null) {
-							model = node.getOwnerDocument().getModel();
-						}
-						formatUtil.replaceSource(model, startOffset, endOffset - startOffset, buf.toString());
-					}
-				}
-			}
-		}
-	}
-
-	protected String getContentType() {
-		return ContentTypeIdForCSS.ContentTypeID_CSS;
-	}
-
-	public void cleanupModel(IStructuredModel structuredModel) {
-		int start = 0;
-		int length = structuredModel.getStructuredDocument().getLength();
-
-		cleanupModel(structuredModel, start, length);
-	}
-
-	public void cleanupDocument(IDocument document) throws IOException, CoreException {
-		// TODO should implement, or delete?
-
-	}
-
-	public void cleanupDocument(IDocument document, int start, int length) throws IOException, CoreException {
-		// TODO should implement, or delete?
-
-	}
-
-	protected IStructuredCleanupHandler getCleanupHandler(Node node) {
-		return null;
-	}
-
-	protected IStructuredFormatProcessor getFormatProcessor() {
-		return null;
-	}
-
-	protected void refreshCleanupPreferences() {
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/contentmodel/IMediaGroupID.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/contentmodel/IMediaGroupID.java
deleted file mode 100644
index 8d02ac8..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/contentmodel/IMediaGroupID.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.core.internal.contentmodel;
-
-
-
-/**
- * 
- */
-public interface IMediaGroupID {
-
-	public final static String M_CONTINUOUS = "continuous"; //$NON-NLS-1$
-	public final static String M_PAGED = "paged"; //$NON-NLS-1$
-
-	public final static String M_VISUAL = "visual"; //$NON-NLS-1$
-	public final static String M_AURAL = "aural"; //$NON-NLS-1$
-	public final static String M_TACTILE = "tactile"; //$NON-NLS-1$
-
-	public final static String M_GRID = "grid"; //$NON-NLS-1$
-	public final static String M_BITMAP = "bitmap"; //$NON-NLS-1$
-
-	public final static String M_INTERACTIVE = "interactive"; //$NON-NLS-1$
-	public final static String M_STATIC = "static"; //$NON-NLS-1$
-
-	public final static String M_ALL = "all"; //$NON-NLS-1$
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/contentmodel/IValID.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/contentmodel/IValID.java
deleted file mode 100644
index f49c1a1..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/contentmodel/IValID.java
+++ /dev/null
@@ -1,266 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this 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.core.internal.contentmodel;
-
-
-
-/**
- * 
- */
-public interface IValID {
-
-	public final static String V_100 = "100"; //$NON-NLS-1$
-	public final static String V_200 = "200"; //$NON-NLS-1$
-	public final static String V_300 = "300"; //$NON-NLS-1$
-	public final static String V_400 = "400"; //$NON-NLS-1$
-	public final static String V_500 = "500"; //$NON-NLS-1$
-	public final static String V_600 = "600"; //$NON-NLS-1$
-	public final static String V_700 = "700"; //$NON-NLS-1$
-	public final static String V_800 = "800"; //$NON-NLS-1$
-	public final static String V_900 = "900"; //$NON-NLS-1$
-	public final static String V_ABOVE = "above"; //$NON-NLS-1$
-	public final static String V_ABSOLUTE = "absolute"; //$NON-NLS-1$
-	public final static String V_ACTIVEBORDER = "ActiveBorder"; //$NON-NLS-1$
-	public final static String V_ACTIVECAPTION = "ActiveCaption"; //$NON-NLS-1$
-	public final static String V_ALL = "all"; //$NON-NLS-1$
-	public final static String V_ALWAYS = "always"; //$NON-NLS-1$
-	public final static String V_APPWORKSPACE = "AppWorkspace"; //$NON-NLS-1$
-	public final static String V_AQUA = "aqua"; //$NON-NLS-1$
-	public final static String V_ARMENIAN = "armenian"; //$NON-NLS-1$
-	public final static String V_AUTO = "auto"; //$NON-NLS-1$
-	public final static String V_AVOID = "avoid"; //$NON-NLS-1$
-	public final static String V_BACKGROUND = "Background"; //$NON-NLS-1$
-	public final static String V_BASELINE = "baseline"; //$NON-NLS-1$
-	public final static String V_BEHIND = "behind"; //$NON-NLS-1$
-	public final static String V_BELOW = "below"; //$NON-NLS-1$
-	public final static String V_BIDI_OVERRIDE = "bidi-override"; //$NON-NLS-1$
-	public final static String V_BLACK = "black"; //$NON-NLS-1$
-	public final static String V_BLINK = "blink"; //$NON-NLS-1$
-	public final static String V_BLOCK = "block"; //$NON-NLS-1$
-	public final static String V_BLUE = "blue"; //$NON-NLS-1$
-	public final static String V_BOLD = "bold"; //$NON-NLS-1$
-	public final static String V_BOLDER = "bolder"; //$NON-NLS-1$
-	public final static String V_BOTH = "both"; //$NON-NLS-1$
-	public final static String V_BOTTOM = "bottom"; //$NON-NLS-1$
-	public final static String V_BUTTONFACE = "ButtonFace"; //$NON-NLS-1$
-	public final static String V_BUTTONHIGHLIGHT = "ButtonHighlight"; //$NON-NLS-1$
-	public final static String V_BUTTONSHADOW = "ButtonShadow"; //$NON-NLS-1$
-	public final static String V_BUTTONTEXT = "ButtonText"; //$NON-NLS-1$
-	public final static String V_CAPITALIZE = "capitalize"; //$NON-NLS-1$
-	public final static String V_CAPTION = "caption"; //$NON-NLS-1$
-	public final static String V_CAPTIONTEXT = "CaptionText"; //$NON-NLS-1$
-	public final static String V_CENTER = "center"; //$NON-NLS-1$
-	public final static String V_CENTER_LEFT = "center-left"; //$NON-NLS-1$
-	public final static String V_CENTER_RIGHT = "center-right"; //$NON-NLS-1$
-	public final static String V_CHILD = "child"; //$NON-NLS-1$
-	public final static String V_CIRCLE = "circle"; //$NON-NLS-1$
-	public final static String V_CJK_IDEOGRAPHIC = "cjk-ideographic"; //$NON-NLS-1$
-	public final static String V_CLOSE_QUOTE = "close-quote"; //$NON-NLS-1$
-	public final static String V_CODE = "code"; //$NON-NLS-1$
-	public final static String V_CONDENSED = "condensed"; //$NON-NLS-1$
-	public final static String V_COLLAPSE = "collapse"; //$NON-NLS-1$
-	public final static String V_COMPACT = "compact"; //$NON-NLS-1$
-	public final static String V_CONTINUOUS = "continuous"; //$NON-NLS-1$
-	public final static String V_CROP = "crop"; //$NON-NLS-1$
-	public final static String V_CROSS = "cross"; //$NON-NLS-1$
-	public final static String V_CROSSHAIR = "crosshair"; //$NON-NLS-1$
-	public final static String V_CURSIVE = "cursive"; //$NON-NLS-1$
-	public final static String V_DASHED = "dashed"; //$NON-NLS-1$
-	public final static String V_DECIMAL = "decimal"; //$NON-NLS-1$
-	public final static String V_DECIMAL_LEADING_ZERO = "decimal-leading-zero"; //$NON-NLS-1$
-	public final static String V_DEFAULT = "default"; //$NON-NLS-1$
-	public final static String V_DIGITS = "digits"; //$NON-NLS-1$
-	public final static String V_DISC = "disc"; //$NON-NLS-1$
-	public final static String V_DOTTED = "dotted"; //$NON-NLS-1$
-	public final static String V_DOUBLE = "double"; //$NON-NLS-1$
-	public final static String V_E_RESIZE = "e-resize"; //$NON-NLS-1$
-	public final static String V_EMBED = "embed"; //$NON-NLS-1$
-	public final static String V_EXPANDED = "expanded"; //$NON-NLS-1$
-	public final static String V_EXTRA_CONDENSED = "extra-condensed"; //$NON-NLS-1$
-	public final static String V_EXTRA_EXPANDED = "extra-expanded"; //$NON-NLS-1$
-	public final static String V_FANTASY = "fantasy"; //$NON-NLS-1$
-	public final static String V_FAR_LEFT = "far-left"; //$NON-NLS-1$
-	public final static String V_FAR_RIGHT = "far-right"; //$NON-NLS-1$
-	public final static String V_FAST = "fast"; //$NON-NLS-1$
-	public final static String V_FASTER = "faster"; //$NON-NLS-1$
-	public final static String V_FEMALE = "female"; //$NON-NLS-1$
-	public final static String V_FIXED = "fixed"; //$NON-NLS-1$
-	public final static String V_FUCHSIA = "fuchsia"; //$NON-NLS-1$
-	public final static String V_GEORGIAN = "georgian"; //$NON-NLS-1$
-	public final static String V_GRAY = "gray"; //$NON-NLS-1$
-	public final static String V_GRAYTEXT = "GrayText"; //$NON-NLS-1$
-	public final static String V_GREEN = "green"; //$NON-NLS-1$
-	public final static String V_GROOVE = "groove"; //$NON-NLS-1$
-	public final static String V_HEBREW = "hebrew"; //$NON-NLS-1$
-	public final static String V_HELP = "help"; //$NON-NLS-1$
-	public final static String V_HIDDEN = "hidden"; //$NON-NLS-1$
-	public final static String V_HIDE = "hide"; //$NON-NLS-1$
-	public final static String V_HIGH = "high"; //$NON-NLS-1$
-	public final static String V_HIGHLIGHT = "Highlight"; //$NON-NLS-1$
-	public final static String V_HIGHLIGHTTEXT = "HighlightText"; //$NON-NLS-1$
-	public final static String V_HIGHER = "higher"; //$NON-NLS-1$
-	public final static String V_HIRAGANA = "hiragana"; //$NON-NLS-1$
-	public final static String V_HIRAGANA_IROHA = "hiragana-iroha"; //$NON-NLS-1$
-	public final static String V_ICON = "icon"; //$NON-NLS-1$
-	public final static String V_INACTIVEBORDER = "InactiveBorder"; //$NON-NLS-1$
-	public final static String V_INACTIVECAPTION = "InactiveCaption"; //$NON-NLS-1$
-	public final static String V_INACTIVECAPTIONTEXT = "InactiveCaptionText"; //$NON-NLS-1$
-	public final static String V_INFOBACKGROUND = "InfoBackground"; //$NON-NLS-1$
-	public final static String V_INFOTEXT = "InfoText"; //$NON-NLS-1$
-	public final static String V_INLINE = "inline"; //$NON-NLS-1$
-	public final static String V_INLINE_TABLE = "inline-table"; //$NON-NLS-1$
-	public final static String V_INSET = "inset"; //$NON-NLS-1$
-	public final static String V_INSIDE = "inside"; //$NON-NLS-1$
-	public final static String V_INVERT = "invert"; //$NON-NLS-1$
-	public final static String V_ITALIC = "italic"; //$NON-NLS-1$
-	public final static String V_JUSTIFY = "justify"; //$NON-NLS-1$
-	public final static String V_KATAKANA = "katakana"; //$NON-NLS-1$
-	public final static String V_KATAKANA_IROHA = "katakana-iroha"; //$NON-NLS-1$
-	public final static String V_LANDSCAPE = "landscape"; //$NON-NLS-1$
-	public final static String V_LARGE = "large"; //$NON-NLS-1$
-	public final static String V_LARGER = "larger"; //$NON-NLS-1$
-	public final static String V_LEFT = "left"; //$NON-NLS-1$
-	public final static String V_LEFT_SIDE = "left-side"; //$NON-NLS-1$
-	public final static String V_LEFTWARDS = "leftwards"; //$NON-NLS-1$
-	public final static String V_LEVEL = "level"; //$NON-NLS-1$
-	public final static String V_LIGHTER = "lighter"; //$NON-NLS-1$
-	public final static String V_LIME = "lime"; //$NON-NLS-1$
-	public final static String V_LINE_THROUGH = "line-through"; //$NON-NLS-1$
-	public final static String V_LIST_ITEM = "list-item"; //$NON-NLS-1$
-	public final static String V_LOUD = "loud"; //$NON-NLS-1$
-	public final static String V_LOW = "low"; //$NON-NLS-1$
-	public final static String V_LOWER = "lower"; //$NON-NLS-1$
-	public final static String V_LOWER_ALPHA = "lower-alpha"; //$NON-NLS-1$
-	public final static String V_LOWER_GREEK = "lower-greek"; //$NON-NLS-1$
-	public final static String V_LOWER_LATIN = "lower-latin"; //$NON-NLS-1$
-	public final static String V_LOWER_ROMAN = "lower-roman"; //$NON-NLS-1$
-	public final static String V_LOWERCASE = "lowercase"; //$NON-NLS-1$
-	public final static String V_LTR = "ltr"; //$NON-NLS-1$
-	public final static String V_MALE = "male"; //$NON-NLS-1$
-	public final static String V_MARKER = "marker"; //$NON-NLS-1$
-	public final static String V_MAROON = "maroon"; //$NON-NLS-1$
-	public final static String V_MEDIUM = "medium"; //$NON-NLS-1$
-	public final static String V_MENU = "menu"; //$NON-NLS-1$
-	public final static String V_MENUTEXT = "MenuText"; //$NON-NLS-1$
-	public final static String V_MESSAGE_BOX = "message-box"; //$NON-NLS-1$
-	public final static String V_MIDDLE = "middle"; //$NON-NLS-1$
-	public final static String V_MIX = "mix"; //$NON-NLS-1$
-	public final static String V_MONOSPACE = "monospace"; //$NON-NLS-1$
-	public final static String V_MOVE = "move"; //$NON-NLS-1$
-	public final static String V_N_RESIZE = "n-resize"; //$NON-NLS-1$
-	public final static String V_NARROWER = "narrower"; //$NON-NLS-1$
-	public final static String V_NAVY = "navy"; //$NON-NLS-1$
-	public final static String V_NE_RESIZE = "ne-resize"; //$NON-NLS-1$
-	public final static String V_NO_CLOSE_QUOTE = "no-close-quote"; //$NON-NLS-1$
-	public final static String V_NO_OPEN_QUOTE = "no-open-quote"; //$NON-NLS-1$
-	public final static String V_NO_REPEAT = "no-repeat"; //$NON-NLS-1$
-	public final static String V_NONE = "none"; //$NON-NLS-1$
-	public final static String V_NORMAL = "normal"; //$NON-NLS-1$
-	public final static String V_NOWRAP = "nowrap"; //$NON-NLS-1$
-	public final static String V_NW_RESIZE = "nw-resize"; //$NON-NLS-1$
-	public final static String V_OBLIQUE = "oblique"; //$NON-NLS-1$
-	public final static String V_OLIVE = "olive"; //$NON-NLS-1$
-	public final static String V_ONCE = "once"; //$NON-NLS-1$
-	public final static String V_OPEN_QUOTE = "open-quote"; //$NON-NLS-1$
-	public final static String V_OUTSET = "outset"; //$NON-NLS-1$
-	public final static String V_OUTSIDE = "outside"; //$NON-NLS-1$
-	public final static String V_OVERLINE = "overline"; //$NON-NLS-1$
-	public final static String V_POINTER = "pointer"; //$NON-NLS-1$
-	public final static String V_PORTRAIT = "portrait"; //$NON-NLS-1$
-	public final static String V_PRE = "pre"; //$NON-NLS-1$
-	public final static String V_PURPLE = "purple"; //$NON-NLS-1$
-	public final static String V_RED = "red"; //$NON-NLS-1$
-	public final static String V_RELATIVE = "relative"; //$NON-NLS-1$
-	public final static String V_REPEAT = "repeat"; //$NON-NLS-1$
-	public final static String V_REPEAT_X = "repeat-x"; //$NON-NLS-1$
-	public final static String V_REPEAT_Y = "repeat-y"; //$NON-NLS-1$
-	public final static String V_RIDGE = "ridge"; //$NON-NLS-1$
-	public final static String V_RIGHT = "right"; //$NON-NLS-1$
-	public final static String V_RIGHT_SIDE = "right-side"; //$NON-NLS-1$
-	public final static String V_RIGHTWARDS = "rightwards"; //$NON-NLS-1$
-	public final static String V_RTL = "rtl"; //$NON-NLS-1$
-	public final static String V_RUN_IN = "run-in"; //$NON-NLS-1$
-	public final static String V_S_RESIZE = "s-resize"; //$NON-NLS-1$
-	public final static String V_SANS_SERIF = "sans-serif"; //$NON-NLS-1$
-	public final static String V_SCROLL = "scroll"; //$NON-NLS-1$
-	public final static String V_SCROLLBAR = "Scrollbar"; //$NON-NLS-1$
-	public final static String V_SE_RESIZE = "se-resize"; //$NON-NLS-1$
-	public final static String V_SEMI_CONDENSED = "semi-condensed"; //$NON-NLS-1$
-	public final static String V_SEMI_EXPANDED = "semi-expanded"; //$NON-NLS-1$
-	public final static String V_SEPARATE = "separate"; //$NON-NLS-1$
-	public final static String V_SERIF = "serif"; //$NON-NLS-1$
-	public final static String V_SHOW = "show"; //$NON-NLS-1$
-	public final static String V_SILENT = "silent"; //$NON-NLS-1$
-	public final static String V_SILVER = "silver"; //$NON-NLS-1$
-	public final static String V_SLOW = "slow"; //$NON-NLS-1$
-	public final static String V_SLOWER = "slower"; //$NON-NLS-1$
-	public final static String V_SMALL = "small"; //$NON-NLS-1$
-	public final static String V_SMALL_CAPS = "small-caps"; //$NON-NLS-1$
-	public final static String V_SMALL_CAPTION = "small-caption"; //$NON-NLS-1$
-	public final static String V_SMALLER = "smaller"; //$NON-NLS-1$
-	public final static String V_SOFT = "soft"; //$NON-NLS-1$
-	public final static String V_SOLID = "solid"; //$NON-NLS-1$
-	public final static String V_SPELL_OUT = "spell-out"; //$NON-NLS-1$
-	public final static String V_SQUARE = "square"; //$NON-NLS-1$
-	public final static String V_STATIC = "static"; //$NON-NLS-1$
-	public final static String V_STATUS_BAR = "status-bar"; //$NON-NLS-1$
-	public final static String V_SUB = "sub"; //$NON-NLS-1$
-	public final static String V_SUPER = "super"; //$NON-NLS-1$
-	public final static String V_SW_RESIZE = "sw-resize"; //$NON-NLS-1$
-	public final static String V_TABLE = "table"; //$NON-NLS-1$
-	public final static String V_TABLE_CAPTION = "table-caption"; //$NON-NLS-1$
-	public final static String V_TABLE_CELL = "table-cell"; //$NON-NLS-1$
-	public final static String V_TABLE_COLUMN = "table-column"; //$NON-NLS-1$
-	public final static String V_TABLE_COLUMN_GROUP = "table-column-group"; //$NON-NLS-1$
-	public final static String V_TABLE_FOOTER_GROUP = "table-footer-group"; //$NON-NLS-1$
-	public final static String V_TABLE_HEADER_GROUP = "table-header-group"; //$NON-NLS-1$
-	public final static String V_TABLE_ROW = "table-row"; //$NON-NLS-1$
-	public final static String V_TABLE_ROW_GROUP = "table-row-group"; //$NON-NLS-1$
-	public final static String V_TEAL = "teal"; //$NON-NLS-1$
-	public final static String V_TEXT = "text"; //$NON-NLS-1$
-	public final static String V_TEXT_TOP = "text-top"; //$NON-NLS-1$
-	public final static String V_TEXT_BOTTOM = "text-bottom"; //$NON-NLS-1$
-	public final static String V_THICK = "thick"; //$NON-NLS-1$
-	public final static String V_THIN = "thin"; //$NON-NLS-1$
-	public final static String V_THREEDDARKSHADOW = "ThreeDDarkShadow"; //$NON-NLS-1$
-	public final static String V_THREEDFACE = "ThreeDFace"; //$NON-NLS-1$
-	public final static String V_THREEDHIGHLIGHT = "ThreeDHighlight"; //$NON-NLS-1$
-	public final static String V_THREEDLIGHTSHADOW = "ThreeDLightShadow"; //$NON-NLS-1$
-	public final static String V_THREEDSHADOW = "ThreeDShadow"; //$NON-NLS-1$
-	public final static String V_TOP = "top"; //$NON-NLS-1$
-	public final static String V_TRANSPARENT = "transparent"; //$NON-NLS-1$
-	public final static String V_ULTRA_CONDENSED = "ultra-condensed"; //$NON-NLS-1$
-	public final static String V_ULTRA_EXPANDED = "ultra-expanded"; //$NON-NLS-1$
-	public final static String V_UNDERLINE = "underline"; //$NON-NLS-1$
-	public final static String V_UPPER_ALPHA = "upper-alpha"; //$NON-NLS-1$
-	public final static String V_UPPER_LATIN = "upper-latin"; //$NON-NLS-1$
-	public final static String V_UPPER_ROMAN = "upper-roman"; //$NON-NLS-1$
-	public final static String V_UPPERCASE = "uppercase"; //$NON-NLS-1$
-	public final static String V_VISIBLE = "visible"; //$NON-NLS-1$
-	public final static String V_W_RESIZE = "w-resize"; //$NON-NLS-1$
-	public final static String V_WAIT = "wait"; //$NON-NLS-1$
-	public final static String V_WHITE = "white"; //$NON-NLS-1$
-	public final static String V_WIDER = "wider"; //$NON-NLS-1$
-	public final static String V_WINDOW = "Window"; //$NON-NLS-1$
-	public final static String V_WINDOWFRAME = "WindowFrame"; //$NON-NLS-1$
-	public final static String V_WINDOWTEXT = "WindowText"; //$NON-NLS-1$
-	public final static String V_X_FAST = "x-fast"; //$NON-NLS-1$
-	public final static String V_X_HIGH = "x-high"; //$NON-NLS-1$
-	public final static String V_X_LARGE = "x-large"; //$NON-NLS-1$
-	public final static String V_X_LOUD = "x-loud"; //$NON-NLS-1$
-	public final static String V_X_LOW = "x-low"; //$NON-NLS-1$
-	public final static String V_X_SLOW = "x-slow"; //$NON-NLS-1$
-	public final static String V_X_SMALL = "x-small"; //$NON-NLS-1$
-	public final static String V_X_SOFT = "x-soft"; //$NON-NLS-1$
-	public final static String V_XX_SMALL = "xx-small"; //$NON-NLS-1$
-	public final static String V_XX_LARGE = "xx-large"; //$NON-NLS-1$
-	public final static String V_YELLOW = "yellow"; //$NON-NLS-1$
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/contentmodel/PropCMContainer.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/contentmodel/PropCMContainer.java
deleted file mode 100644
index d013f7c..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/contentmodel/PropCMContainer.java
+++ /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
- *******************************************************************************/
-package org.eclipse.wst.css.core.internal.contentmodel;
-
-
-
-import java.util.Collection;
-import java.util.Hashtable;
-import java.util.Set;
-import java.util.Vector;
-
-/**
- * 
- */
-public class PropCMContainer extends PropCMNode {
-
-	private java.util.Vector nodes = new Vector();
-	private static java.util.Hashtable instances = null;
-	public final static String VAL_ABSOLUTE_SIZE = "absolute-size";//$NON-NLS-1$
-	public final static String VAL_BORDER_STYLE = "border-style";//$NON-NLS-1$
-	public final static String VAL_BORDER_WIDTH = "border-width";//$NON-NLS-1$
-	public final static String VAL_COLOR = "color";//$NON-NLS-1$
-	public final static String VAL_SYSTEM_COLOR = "system-color";//$NON-NLS-1$
-	public final static String VAL_GENERIC_FAMILY = "generic-family";//$NON-NLS-1$
-	public final static String VAL_GENERIC_VOICE = "generic-voice";//$NON-NLS-1$
-	public final static String VAL_MARGIN_WIDTH = "margin-width";//$NON-NLS-1$
-	public final static String VAL_PADDING_WIDTH = "padding-width";//$NON-NLS-1$
-	public final static String VAL_RELATIVE_SIZE = "relative-size";//$NON-NLS-1$
-
-	/**
-	 * 
-	 */
-	protected PropCMContainer(String name) {
-		super(name);
-	}
-
-	/**
-	 * 
-	 */
-	Object appendChild(Object node) {
-		if (!nodes.contains(node))
-			nodes.add(node);
-		return node;
-	}
-
-	/**
-	 * 
-	 */
-	public boolean canHave(String identifier) {
-		int nChild = getNumChild();
-		for (int i = 0; i < nChild; i++) {
-			Object child = getChildAt(i);
-			if (child instanceof String && identifier.equalsIgnoreCase((String) child))
-				return true;
-			if (child instanceof PropCMContainer && ((PropCMContainer) child).canHave(identifier))
-				return true;
-		}
-		return false;
-	}
-
-	/**
-	 * 
-	 */
-	public Object getChildAt(int index) {
-		if (nodes == null || index < 0 || nodes.size() <= index)
-			return null;
-		return nodes.elementAt(index);
-	}
-
-	/**
-	 * 
-	 */
-	static PropCMContainer getContInstanceOf(String name) {
-		if (name == null)
-			return null;
-
-		// initialize
-		if (instances == null)
-			instances = new Hashtable(20);
-
-		// Initialize of DB
-		if (isNeedInitialize())
-			PropCMNode.initPropertyCM();
-
-		// query
-		Object node = instances.get(name);
-		if (node != null)
-			return (PropCMContainer) node;
-
-		if (PropCMNode.isLoading()) {
-			// register
-			node = new PropCMContainer(name);
-			instances.put(name, node);
-		}
-
-		return (PropCMContainer) node;
-	}
-
-	/**
-	 * 
-	 */
-	void getIdentifiers(Set idents) {
-		if (idents == null)
-			return;
-		int nChildren = nodes.size();
-		for (int i = 0; i < nChildren; i++) {
-			Object node = nodes.elementAt(i);
-			if (node instanceof PropCMNode)
-				((PropCMNode) node).getIdentifiers(idents);
-			else if (node instanceof String)
-				idents.add(node);
-		}
-	}
-
-	/**
-	 * 
-	 */
-	public int getNumChild() {
-		if (nodes == null)
-			return 0;
-		return nodes.size();
-	}
-
-	/**
-	 * 
-	 */
-	public short getType() {
-		return VAL_CONTAINER;
-	}
-
-	/**
-	 * 
-	 */
-	void getValues(Collection values) {
-		if (values == null)
-			return;
-		int nChildren = nodes.size();
-		for (int i = 0; i < nChildren; i++) {
-			Object node = nodes.elementAt(i);
-			if (node instanceof PropCMNode)
-				((PropCMNode) node).getValues(values);
-			else if (node instanceof String) {
-				if (!values.contains(node))
-					values.add(node);
-			}
-		}
-	}
-
-	/**
-	 * 
-	 */
-	Object removeChild(Object node) {
-		nodes.remove(node);
-		return node;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/contentmodel/PropCMFontProperty.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/contentmodel/PropCMFontProperty.java
deleted file mode 100644
index a28e21d..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/contentmodel/PropCMFontProperty.java
+++ /dev/null
@@ -1,198 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this 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.core.internal.contentmodel;
-
-
-
-import java.util.Collection;
-import java.util.Enumeration;
-import java.util.HashSet;
-import java.util.Hashtable;
-import java.util.Iterator;
-import java.util.List;
-import java.util.Vector;
-
-/**
- * 
- */
-public class PropCMFontProperty extends PropCMProperty {
-
-	// static fields
-	private static java.util.Hashtable instances = null;
-	private static java.util.Hashtable cachedIdMap = null;
-	// selecting properties
-	public final static String PF_FONT_FAMILY = "font-family";//$NON-NLS-1$
-	public final static String PF_FONT_STYLE = "font-style";//$NON-NLS-1$
-	public final static String PF_FONT_VARIANT = "font-variant";//$NON-NLS-1$
-	public final static String PF_FONT_WEIGHT = "font-weight";//$NON-NLS-1$
-	public final static String PF_FONT_STRETCH = "font-stretch";//$NON-NLS-1$
-	public final static String PF_FONT_SIZE = "font-size";//$NON-NLS-1$
-	// qualification properties
-	public final static String PF_UNICODE_RANGE = "unicode-range";//$NON-NLS-1$
-	// numeric properties
-	public final static String PF_UNITS_PER_EM = "units-per-em";//$NON-NLS-1$
-	// referencing properties
-	public final static String PF_SRC = "src";//$NON-NLS-1$
-	// matching properties
-	public final static String PF_PANOSE_1 = "panose-1";//$NON-NLS-1$
-	public final static String PF_STEMV = "stemv";//$NON-NLS-1$
-	public final static String PF_STEMH = "stemh";//$NON-NLS-1$
-	public final static String PF_SLOPE = "slope";//$NON-NLS-1$
-	public final static String PF_CAP_HEIGHT = "cap-height";//$NON-NLS-1$
-	public final static String PF_X_HEIGHT = "x-height";//$NON-NLS-1$
-	public final static String PF_ASCENT = "ascent";//$NON-NLS-1$
-	public final static String PF_DESCENT = "descent";//$NON-NLS-1$
-	// synthesis properties
-	public final static String PF_WIDTHS = "widths";//$NON-NLS-1$
-	public final static String PF_BBOX = "bbox";//$NON-NLS-1$
-	public final static String PF_DEFINITION_SRC = "definition-src";//$NON-NLS-1$
-	// alignment properties
-	public final static String PF_BASELINE = "baseline";//$NON-NLS-1$
-	public final static String PF_CENTERLINE = "centerline";//$NON-NLS-1$
-	public final static String PF_MATHLINE = "mathline";//$NON-NLS-1$
-	public final static String PF_TOPLINE = "topline";//$NON-NLS-1$
-
-	/**
-	 * 
-	 */
-	protected PropCMFontProperty(String name) {
-		super(name);
-	}
-
-	/**
-	 * 
-	 */
-	public static PropCMProperty getInstanceOf(String name) {
-		// initialize
-		if (instances == null)
-			instances = new Hashtable(10);
-
-		// Initialize of DB
-		if (isNeedInitialize())
-			PropCMNode.initPropertyCM();
-
-		// query
-		Object node = instances.get(name);
-		if (node != null)
-			return (PropCMProperty) node;
-
-		// register
-		if (PropCMNode.isLoading()) {
-			node = new PropCMFontProperty(name);
-			instances.put(name, node);
-		}
-
-		return (PropCMProperty) node;
-	}
-
-	/**
-	 * 
-	 */
-	public static Enumeration getNameEnum() {
-		// Initialize of DB
-		if (isNeedInitialize())
-			PropCMNode.initPropertyCM();
-
-		return instances.keys();
-	}
-
-	/**
-	 * 
-	 */
-	public static Enumeration getPropertyEnum() {
-		// Initialize of DB
-		if (isNeedInitialize())
-			PropCMNode.initPropertyCM();
-
-		return instances.elements();
-	}
-
-	/**
-	 * 
-	 */
-	public short getType() {
-		return VAL_FONTPROPERTY;
-	}
-
-	/**
-	 * 
-	 */
-	public static Vector names() {
-		// Initialize of DB
-		if (isNeedInitialize())
-			PropCMNode.initPropertyCM();
-
-		return new Vector(instances.keySet());
-	}
-
-	/**
-	 * 
-	 */
-	public static List names(Object mediaGroup) {
-		if (mediaGroup == null)
-			return names();
-
-		// Initialize of DB
-		if (isNeedInitialize())
-			PropCMNode.initPropertyCM();
-
-		Vector properties = new Vector();
-
-		Iterator it = instances.values().iterator();
-		while (it.hasNext()) {
-			PropCMProperty prop = (PropCMProperty) it.next();
-			if (prop.getMediaGroups().contains(mediaGroup))
-				properties.add(prop.getName());
-		}
-
-		return properties;
-	}
-
-	/**
-	 * If itentifier is null, get all properties
-	 */
-	public static Vector propertiesFor(String identifier, boolean shorthands) {
-		// Initialize of DB
-		if (isNeedInitialize())
-			PropCMNode.initPropertyCM();
-
-		// if identifier is null, get all properties
-		if (identifier == null)
-			return new Vector(instances.values());
-
-		if (cachedIdMap == null) {
-			// start cacheing
-			cachedIdMap = new Hashtable();
-		}
-		else {
-			// search cached
-			Object ret = cachedIdMap.get(identifier + String.valueOf(shorthands));
-			if (ret != null)
-				return new Vector((Collection) ret);
-		}
-
-		// create
-		Enumeration properties = getPropertyEnum();
-		HashSet set = new HashSet();
-		while (properties.hasMoreElements()) {
-			PropCMProperty prop = (PropCMProperty) properties.nextElement();
-			if (!shorthands && prop.isShorthand())
-				continue;
-			if (prop.canHave(identifier))
-				set.add(prop);
-		}
-
-		// cache
-		cachedIdMap.put(identifier + String.valueOf(shorthands), set);
-
-		return new Vector(set);
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/contentmodel/PropCMFunction.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/contentmodel/PropCMFunction.java
deleted file mode 100644
index 03efc91..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/contentmodel/PropCMFunction.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.core.internal.contentmodel;
-
-
-
-import java.util.Collection;
-import java.util.Hashtable;
-import java.util.Set;
-
-/**
- * 
- */
-public class PropCMFunction extends PropCMNode {
-
-	private static java.util.Hashtable instances = null;
-	public final static String VAL_ATTR = "attr";//$NON-NLS-1$
-	public final static String VAL_COUNTER = "counter";//$NON-NLS-1$
-	public final static String VAL_RGB = "rgb";//$NON-NLS-1$
-	public final static String VAL_SHAPE = "rect";//$NON-NLS-1$
-	public final static String VAL_URI = "url";//$NON-NLS-1$
-	public final static String VAL_FORMAT = "format";//$NON-NLS-1$
-	public final static String VAL_LOCAL = "local";//$NON-NLS-1$
-
-	/**
-	 * 
-	 */
-	protected PropCMFunction(String name) {
-		super(name);
-	}
-
-	/**
-	 * 
-	 */
-	void getIdentifiers(Set indents) {
-	}
-
-	/**
-	 * 
-	 */
-	static public PropCMFunction getInstanceOf(String name) {
-		if (name == null)
-			return null;
-
-		// initialize
-		if (instances == null)
-			instances = new Hashtable(10);
-
-		// Initialize of DB
-		if (isNeedInitialize())
-			PropCMNode.initPropertyCM();
-
-		// query
-		Object node = instances.get(name);
-		if (node != null)
-			return (PropCMFunction) node;
-
-		// register
-		if (PropCMNode.isLoading()) {
-			node = new PropCMFunction(name);
-			instances.put(name, node);
-		}
-
-		return (PropCMFunction) node;
-	}
-
-	/**
-	 * 
-	 */
-	public short getType() {
-		return VAL_FUNC;
-	}
-
-	/**
-	 * 
-	 */
-	void getValues(Collection values) {
-		if (values != null && !values.contains(this))
-			values.add(this);
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/contentmodel/PropCMNode.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/contentmodel/PropCMNode.java
deleted file mode 100644
index 52a84df..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/contentmodel/PropCMNode.java
+++ /dev/null
@@ -1,1369 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this 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.core.internal.contentmodel;
-
-
-
-import java.util.Collection;
-import java.util.HashSet;
-import java.util.Set;
-import java.util.Vector;
-
-/**
- * 
- */
-public abstract class PropCMNode {
-
-	public final static short VAL_IDENTIFIER = 0;
-	public final static short VAL_PROPERTY = 1;
-	public final static short VAL_NUMBER = 2;
-	public final static short VAL_STRING = 3;
-	public final static short VAL_FUNC = 4;
-	public final static short VAL_CONTAINER = 5;
-	public final static short VAL_SUBPROPERTY = 6;
-	public final static short VAL_FONTPROPERTY = 7;
-	public final static short VAL_UNICODE_RANGE = 8;
-	protected java.lang.String name = null;
-	private static short LOADING = 0; // 0 : not initialized, 1 : under
-										// initializing, 2 : initialize-done
-										// and fix DB
-
-	/**
-	 * 
-	 */
-	public PropCMNode(String name) {
-		super();
-		this.name = name;
-	}
-
-	/**
-	 * 
-	 */
-	public Set getIdentifiers() {
-		HashSet ids = new HashSet();
-		getIdentifiers(ids);
-		return ids;
-	}
-
-	/**
-	 * 
-	 */
-	abstract void getIdentifiers(Set indents);
-
-	/**
-	 * 
-	 */
-	public String getName() {
-		return name;
-	}
-
-	/**
-	 * 
-	 */
-	public abstract short getType();
-
-	/**
-	 * 
-	 */
-	public Collection getValues() {
-		Vector vals = new Vector();
-		getValues(vals);
-		return vals;
-	}
-
-	/**
-	 * 
-	 */
-	abstract void getValues(Collection values);
-
-	/**
-	 * 
-	 */
-	protected static void initPropertyCM() {
-		if (!isNeedInitialize())
-			return;
-		LOADING = 1;
-
-		PropCMNumber.initNumberCMDim();
-
-		// azimuth
-		PropCMProperty prop = PropCMProperty.getInstanceOf(PropCMProperty.P_AZIMUTH);
-		prop.appendChild(PropCMNumber.getInstanceOf(PropCMNumber.VAL_ANGLE));
-		prop.appendChild(IValID.V_LEFT_SIDE);
-		prop.appendChild(IValID.V_FAR_LEFT);
-		prop.appendChild(IValID.V_LEFT);
-		prop.appendChild(IValID.V_CENTER_LEFT);
-		prop.appendChild(IValID.V_CENTER);
-		prop.appendChild(IValID.V_CENTER_RIGHT);
-		prop.appendChild(IValID.V_RIGHT);
-		prop.appendChild(IValID.V_FAR_RIGHT);
-		prop.appendChild(IValID.V_RIGHT_SIDE);
-		prop.appendChild(IValID.V_BEHIND);
-		prop.appendChild(IValID.V_LEFTWARDS);
-		prop.appendChild(IValID.V_RIGHTWARDS);
-		prop.appendMediaGroup(IMediaGroupID.M_AURAL);
-		prop.setMaxValueCount(2);
-
-		// background
-		prop = PropCMProperty.getInstanceOf(PropCMProperty.P_BG);
-		prop.appendChild(PropCMProperty.getInstanceOf(PropCMProperty.P_BG_COLOR));
-		prop.appendChild(PropCMProperty.getInstanceOf(PropCMProperty.P_BG_IMAGE));
-		prop.appendChild(PropCMProperty.getInstanceOf(PropCMProperty.P_BG_REPEAT));
-		prop.appendChild(PropCMProperty.getInstanceOf(PropCMProperty.P_BG_ATTACHMENT));
-		prop.appendChild(PropCMProperty.getInstanceOf(PropCMProperty.P_BG_POSITION));
-		prop.appendMediaGroup(IMediaGroupID.M_VISUAL);
-		prop.setMaxValueCount(6);
-
-		// background-attachment
-		prop = PropCMProperty.getInstanceOf(PropCMProperty.P_BG_ATTACHMENT);
-		prop.appendChild(IValID.V_SCROLL);
-		prop.appendChild(IValID.V_FIXED);
-		prop.appendMediaGroup(IMediaGroupID.M_VISUAL);
-
-		// background-color
-		prop = PropCMProperty.getInstanceOf(PropCMProperty.P_BG_COLOR);
-		prop.appendChild(PropCMContainer.getContInstanceOf(PropCMContainer.VAL_COLOR));
-		prop.appendChild(IValID.V_TRANSPARENT);
-		prop.appendMediaGroup(IMediaGroupID.M_VISUAL);
-
-		// background-image
-		prop = PropCMProperty.getInstanceOf(PropCMProperty.P_BG_IMAGE);
-		prop.appendChild(PropCMFunction.getInstanceOf(PropCMFunction.VAL_URI));
-		prop.appendChild(IValID.V_NONE);
-		prop.appendMediaGroup(IMediaGroupID.M_VISUAL);
-
-		// background-position ---- sub-properties horizontal
-		prop = PropCMSubProperty.getInstanceOf(PropCMSubProperty.PSUB_BG_POSITION_X);
-		prop.appendChild(PropCMNumber.getInstanceOf(PropCMNumber.VAL_LENGTH));
-		prop.appendChild(PropCMNumber.getInstanceOf(PropCMNumber.VAL_PERCENTAGE));
-		prop.appendChild(IValID.V_LEFT);
-		prop.appendChild(IValID.V_CENTER);
-		prop.appendChild(IValID.V_RIGHT);
-		prop.appendMediaGroup(IMediaGroupID.M_VISUAL);
-
-		// background-position ---- sub-properties vertical
-		prop = PropCMSubProperty.getInstanceOf(PropCMSubProperty.PSUB_BG_POSITION_Y);
-		prop.appendChild(PropCMNumber.getInstanceOf(PropCMNumber.VAL_LENGTH));
-		prop.appendChild(PropCMNumber.getInstanceOf(PropCMNumber.VAL_PERCENTAGE));
-		prop.appendChild(IValID.V_TOP);
-		prop.appendChild(IValID.V_CENTER);
-		prop.appendChild(IValID.V_BOTTOM);
-		prop.appendMediaGroup(IMediaGroupID.M_VISUAL);
-
-		// background-position
-		prop = PropCMProperty.getInstanceOf(PropCMProperty.P_BG_POSITION);
-		prop.appendChild(PropCMSubProperty.getInstanceOf(PropCMSubProperty.PSUB_BG_POSITION_X));
-		prop.appendChild(PropCMSubProperty.getInstanceOf(PropCMSubProperty.PSUB_BG_POSITION_Y));
-		prop.setMaxValueCount(2);
-		prop.appendMediaGroup(IMediaGroupID.M_VISUAL);
-
-		// background-repeat
-		prop = PropCMProperty.getInstanceOf(PropCMProperty.P_BG_REPEAT);
-		prop.appendChild(IValID.V_REPEAT);
-		prop.appendChild(IValID.V_REPEAT_X);
-		prop.appendChild(IValID.V_REPEAT_Y);
-		prop.appendChild(IValID.V_NO_REPEAT);
-		prop.appendMediaGroup(IMediaGroupID.M_VISUAL);
-
-		// border
-		prop = PropCMProperty.getInstanceOf(PropCMProperty.P_BORDER);
-		prop.appendChild(PropCMProperty.getInstanceOf(PropCMProperty.P_BORDER_WIDTH));
-		prop.appendChild(PropCMProperty.getInstanceOf(PropCMProperty.P_BORDER_STYLE));
-		// prop.appendChild(PropCMContainer.getContInstanceOf(PropCMContainer.VAL_COLOR));
-		prop.appendChild(PropCMProperty.getInstanceOf(PropCMProperty.P_BORDER_COLOR));
-		prop.setMaxValueCount(9);
-		prop.appendMediaGroup(IMediaGroupID.M_VISUAL);
-
-		// border-collapse
-		prop = PropCMProperty.getInstanceOf(PropCMProperty.P_BORDER_COLLAPSE);
-		prop.appendChild(IValID.V_COLLAPSE);
-		prop.appendChild(IValID.V_SEPARATE);
-		prop.appendMediaGroup(IMediaGroupID.M_VISUAL);
-
-		// border-color
-		prop = PropCMProperty.getInstanceOf(PropCMProperty.P_BORDER_COLOR);
-		prop.appendChild(PropCMProperty.getInstanceOf(PropCMProperty.P_BORDER_TOP_COLOR));
-		prop.appendChild(PropCMProperty.getInstanceOf(PropCMProperty.P_BORDER_RIGHT_COLOR));
-		prop.appendChild(PropCMProperty.getInstanceOf(PropCMProperty.P_BORDER_BOTTOM_COLOR));
-		prop.appendChild(PropCMProperty.getInstanceOf(PropCMProperty.P_BORDER_LEFT_COLOR));
-		// prop.appendChild(PropCMContainer.getContInstanceOf(PropCMContainer.VAL_COLOR));
-		prop.appendChild(IValID.V_TRANSPARENT);
-		prop.setMaxValueCount(4);
-		prop.appendMediaGroup(IMediaGroupID.M_VISUAL);
-
-		// border-spacing
-		prop = PropCMProperty.getInstanceOf(PropCMProperty.P_BORDER_SPACING);
-		prop.appendChild(PropCMNumber.getInstanceOf(PropCMNumber.VAL_LENGTH));
-		prop.setMaxValueCount(2);
-		prop.appendMediaGroup(IMediaGroupID.M_VISUAL);
-
-		// border-style
-		prop = PropCMProperty.getInstanceOf(PropCMProperty.P_BORDER_STYLE);
-		prop.appendChild(PropCMProperty.getInstanceOf(PropCMProperty.P_BORDER_TOP_STYLE));
-		prop.appendChild(PropCMProperty.getInstanceOf(PropCMProperty.P_BORDER_RIGHT_STYLE));
-		prop.appendChild(PropCMProperty.getInstanceOf(PropCMProperty.P_BORDER_BOTTOM_STYLE));
-		prop.appendChild(PropCMProperty.getInstanceOf(PropCMProperty.P_BORDER_LEFT_STYLE));
-		// prop.appendChild(PropCMContainer.getContInstanceOf(PropCMContainer.VAL_BORDER_STYLE));
-		prop.setMaxValueCount(4);
-		prop.appendMediaGroup(IMediaGroupID.M_VISUAL);
-
-		// border-top
-		prop = PropCMProperty.getInstanceOf(PropCMProperty.P_BORDER_TOP);
-		prop.appendChild(PropCMProperty.getInstanceOf(PropCMProperty.P_BORDER_TOP_WIDTH));
-		prop.appendChild(PropCMProperty.getInstanceOf(PropCMProperty.P_BORDER_TOP_STYLE));
-		prop.appendChild(PropCMProperty.getInstanceOf(PropCMProperty.P_BORDER_TOP_COLOR));
-		prop.setMaxValueCount(3);
-		prop.appendMediaGroup(IMediaGroupID.M_VISUAL);
-
-		// border-right
-		prop = PropCMProperty.getInstanceOf(PropCMProperty.P_BORDER_RIGHT);
-		prop.appendChild(PropCMProperty.getInstanceOf(PropCMProperty.P_BORDER_RIGHT_WIDTH));
-		prop.appendChild(PropCMProperty.getInstanceOf(PropCMProperty.P_BORDER_RIGHT_STYLE));
-		prop.appendChild(PropCMProperty.getInstanceOf(PropCMProperty.P_BORDER_RIGHT_COLOR));
-		prop.setMaxValueCount(3);
-		prop.appendMediaGroup(IMediaGroupID.M_VISUAL);
-
-		// border-bottom
-		prop = PropCMProperty.getInstanceOf(PropCMProperty.P_BORDER_BOTTOM);
-		prop.appendChild(PropCMProperty.getInstanceOf(PropCMProperty.P_BORDER_BOTTOM_WIDTH));
-		prop.appendChild(PropCMProperty.getInstanceOf(PropCMProperty.P_BORDER_BOTTOM_STYLE));
-		prop.appendChild(PropCMProperty.getInstanceOf(PropCMProperty.P_BORDER_BOTTOM_COLOR));
-		prop.setMaxValueCount(3);
-		prop.appendMediaGroup(IMediaGroupID.M_VISUAL);
-
-		// border-left
-		prop = PropCMProperty.getInstanceOf(PropCMProperty.P_BORDER_LEFT);
-		prop.appendChild(PropCMProperty.getInstanceOf(PropCMProperty.P_BORDER_LEFT_WIDTH));
-		prop.appendChild(PropCMProperty.getInstanceOf(PropCMProperty.P_BORDER_LEFT_STYLE));
-		prop.appendChild(PropCMProperty.getInstanceOf(PropCMProperty.P_BORDER_LEFT_COLOR));
-		prop.setMaxValueCount(3);
-		prop.appendMediaGroup(IMediaGroupID.M_VISUAL);
-
-		// border-top-color
-		prop = PropCMProperty.getInstanceOf(PropCMProperty.P_BORDER_TOP_COLOR);
-		prop.appendChild(PropCMContainer.getContInstanceOf(PropCMContainer.VAL_COLOR));
-		prop.appendMediaGroup(IMediaGroupID.M_VISUAL);
-
-		// border-top-style
-		prop = PropCMProperty.getInstanceOf(PropCMProperty.P_BORDER_TOP_STYLE);
-		prop.appendChild(PropCMContainer.getContInstanceOf(PropCMContainer.VAL_BORDER_STYLE));
-		prop.appendMediaGroup(IMediaGroupID.M_VISUAL);
-
-		// border-top-width
-		prop = PropCMProperty.getInstanceOf(PropCMProperty.P_BORDER_TOP_WIDTH);
-		prop.appendChild(PropCMContainer.getContInstanceOf(PropCMContainer.VAL_BORDER_WIDTH));
-		prop.appendMediaGroup(IMediaGroupID.M_VISUAL);
-
-		// border-right-color
-		prop = PropCMProperty.getInstanceOf(PropCMProperty.P_BORDER_RIGHT_COLOR);
-		prop.appendChild(PropCMContainer.getContInstanceOf(PropCMContainer.VAL_COLOR));
-		prop.appendMediaGroup(IMediaGroupID.M_VISUAL);
-
-		// border-right-style
-		prop = PropCMProperty.getInstanceOf(PropCMProperty.P_BORDER_RIGHT_STYLE);
-		prop.appendChild(PropCMContainer.getContInstanceOf(PropCMContainer.VAL_BORDER_STYLE));
-		prop.appendMediaGroup(IMediaGroupID.M_VISUAL);
-
-		// border-right-width
-		prop = PropCMProperty.getInstanceOf(PropCMProperty.P_BORDER_RIGHT_WIDTH);
-		prop.appendChild(PropCMContainer.getContInstanceOf(PropCMContainer.VAL_BORDER_WIDTH));
-		prop.appendMediaGroup(IMediaGroupID.M_VISUAL);
-
-		// border-bottom-color
-		prop = PropCMProperty.getInstanceOf(PropCMProperty.P_BORDER_BOTTOM_COLOR);
-		prop.appendChild(PropCMContainer.getContInstanceOf(PropCMContainer.VAL_COLOR));
-		prop.appendMediaGroup(IMediaGroupID.M_VISUAL);
-
-		// border-bottom-style
-		prop = PropCMProperty.getInstanceOf(PropCMProperty.P_BORDER_BOTTOM_STYLE);
-		prop.appendChild(PropCMContainer.getContInstanceOf(PropCMContainer.VAL_BORDER_STYLE));
-		prop.appendMediaGroup(IMediaGroupID.M_VISUAL);
-
-		// border-bottom-width
-		prop = PropCMProperty.getInstanceOf(PropCMProperty.P_BORDER_BOTTOM_WIDTH);
-		prop.appendChild(PropCMContainer.getContInstanceOf(PropCMContainer.VAL_BORDER_WIDTH));
-		prop.appendMediaGroup(IMediaGroupID.M_VISUAL);
-
-		// border-left-color
-		prop = PropCMProperty.getInstanceOf(PropCMProperty.P_BORDER_LEFT_COLOR);
-		prop.appendChild(PropCMContainer.getContInstanceOf(PropCMContainer.VAL_COLOR));
-		prop.appendMediaGroup(IMediaGroupID.M_VISUAL);
-
-		// border-left-style
-		prop = PropCMProperty.getInstanceOf(PropCMProperty.P_BORDER_LEFT_STYLE);
-		prop.appendChild(PropCMContainer.getContInstanceOf(PropCMContainer.VAL_BORDER_STYLE));
-		prop.appendMediaGroup(IMediaGroupID.M_VISUAL);
-
-		// border-left-width
-		prop = PropCMProperty.getInstanceOf(PropCMProperty.P_BORDER_LEFT_WIDTH);
-		prop.appendChild(PropCMContainer.getContInstanceOf(PropCMContainer.VAL_BORDER_WIDTH));
-		prop.appendMediaGroup(IMediaGroupID.M_VISUAL);
-
-		// border-width
-		prop = PropCMProperty.getInstanceOf(PropCMProperty.P_BORDER_WIDTH);
-		// prop.appendChild(PropCMContainer.getContInstanceOf(PropCMContainer.VAL_BORDER_WIDTH));
-		prop.appendChild(PropCMProperty.getInstanceOf(PropCMProperty.P_BORDER_TOP_WIDTH));
-		prop.appendChild(PropCMProperty.getInstanceOf(PropCMProperty.P_BORDER_RIGHT_WIDTH));
-		prop.appendChild(PropCMProperty.getInstanceOf(PropCMProperty.P_BORDER_BOTTOM_WIDTH));
-		prop.appendChild(PropCMProperty.getInstanceOf(PropCMProperty.P_BORDER_LEFT_WIDTH));
-		prop.setMaxValueCount(4);
-		prop.appendMediaGroup(IMediaGroupID.M_VISUAL);
-
-		// bottom
-		prop = PropCMProperty.getInstanceOf(PropCMProperty.P_BOTTOM);
-		prop.appendChild(PropCMNumber.getInstanceOf(PropCMNumber.VAL_LENGTH));
-		prop.appendChild(PropCMNumber.getInstanceOf(PropCMNumber.VAL_PERCENTAGE));
-		prop.appendChild(IValID.V_AUTO);
-		prop.appendMediaGroup(IMediaGroupID.M_VISUAL);
-
-		// caption-side
-		prop = PropCMProperty.getInstanceOf(PropCMProperty.P_CAPTION_SIDE);
-		prop.appendChild(IValID.V_TOP);
-		prop.appendChild(IValID.V_BOTTOM);
-		prop.appendChild(IValID.V_LEFT);
-		prop.appendChild(IValID.V_RIGHT);
-		prop.appendMediaGroup(IMediaGroupID.M_VISUAL);
-
-		// clear
-		prop = PropCMProperty.getInstanceOf(PropCMProperty.P_CLEAR);
-		prop.appendChild(IValID.V_LEFT);
-		prop.appendChild(IValID.V_RIGHT);
-		prop.appendChild(IValID.V_BOTH);
-		prop.appendChild(IValID.V_STATIC);
-		prop.appendMediaGroup(IMediaGroupID.M_VISUAL);
-
-		// clip ---- sub-properties top
-		prop = PropCMSubProperty.getInstanceOf(PropCMSubProperty.PSUB_CLIP_TOP);
-		prop.appendChild(PropCMNumber.getInstanceOf(PropCMNumber.VAL_LENGTH));
-		prop.appendChild(IValID.V_AUTO);
-		((PropCMSubProperty) prop).setContainer(PropCMProperty.getInstanceOf(PropCMProperty.P_CLIP));
-		prop.appendMediaGroup(IMediaGroupID.M_VISUAL);
-
-		// clip ---- sub-properties right
-		prop = PropCMSubProperty.getInstanceOf(PropCMSubProperty.PSUB_CLIP_RIGHT);
-		prop.appendChild(PropCMNumber.getInstanceOf(PropCMNumber.VAL_LENGTH));
-		prop.appendChild(IValID.V_AUTO);
-		((PropCMSubProperty) prop).setContainer(PropCMProperty.getInstanceOf(PropCMProperty.P_CLIP));
-		prop.appendMediaGroup(IMediaGroupID.M_VISUAL);
-
-		// clip ---- sub-properties bottom
-		prop = PropCMSubProperty.getInstanceOf(PropCMSubProperty.PSUB_CLIP_BOTTOM);
-		prop.appendChild(PropCMNumber.getInstanceOf(PropCMNumber.VAL_LENGTH));
-		prop.appendChild(IValID.V_AUTO);
-		((PropCMSubProperty) prop).setContainer(PropCMProperty.getInstanceOf(PropCMProperty.P_CLIP));
-		prop.appendMediaGroup(IMediaGroupID.M_VISUAL);
-
-		// clip ---- sub-properties left
-		prop = PropCMSubProperty.getInstanceOf(PropCMSubProperty.PSUB_CLIP_LEFT);
-		prop.appendChild(PropCMNumber.getInstanceOf(PropCMNumber.VAL_LENGTH));
-		prop.appendChild(IValID.V_AUTO);
-		((PropCMSubProperty) prop).setContainer(PropCMProperty.getInstanceOf(PropCMProperty.P_CLIP));
-		prop.appendMediaGroup(IMediaGroupID.M_VISUAL);
-
-		// clip
-		prop = PropCMProperty.getInstanceOf(PropCMProperty.P_CLIP);
-		prop.appendChild(PropCMFunction.getInstanceOf(PropCMFunction.VAL_SHAPE));
-		prop.appendChild(IValID.V_AUTO);
-		prop.appendMediaGroup(IMediaGroupID.M_VISUAL);
-
-		// color
-		prop = PropCMProperty.getInstanceOf(PropCMProperty.P_COLOR);
-		prop.appendChild(PropCMContainer.getContInstanceOf(PropCMContainer.VAL_COLOR));
-		prop.appendMediaGroup(IMediaGroupID.M_VISUAL);
-
-		// content
-		prop = PropCMProperty.getInstanceOf(PropCMProperty.P_CONTENT);
-		prop.appendChild(PropCMString.getInstanceOf(PropCMString.VAL_ANY));
-		prop.appendChild(PropCMFunction.getInstanceOf(PropCMFunction.VAL_URI));
-		prop.appendChild(PropCMFunction.getInstanceOf(PropCMFunction.VAL_COUNTER));
-		prop.appendChild(PropCMFunction.getInstanceOf(PropCMFunction.VAL_ATTR));
-		prop.appendChild(IValID.V_OPEN_QUOTE);
-		prop.appendChild(IValID.V_CLOSE_QUOTE);
-		prop.appendChild(IValID.V_NO_OPEN_QUOTE);
-		prop.appendChild(IValID.V_NO_CLOSE_QUOTE);
-		prop.setMaxValueCount(-1); // infinite
-		prop.appendMediaGroup(IMediaGroupID.M_ALL);
-
-		// counter-increment
-		prop = PropCMProperty.getInstanceOf(PropCMProperty.P_COUNTER_INCREMENT);
-		prop.appendChild(PropCMString.getInstanceOf(PropCMString.VAL_COUNTER_ID));
-		prop.appendChild(PropCMNumber.getInstanceOf(PropCMNumber.VAL_INTEGER));
-		prop.appendChild(IValID.V_NONE);
-		prop.setMaxValueCount(-1);
-		prop.appendMediaGroup(IMediaGroupID.M_ALL);
-
-		// counter-reset
-		prop = PropCMProperty.getInstanceOf(PropCMProperty.P_COUNTER_RESET);
-		prop.appendChild(PropCMString.getInstanceOf(PropCMString.VAL_COUNTER_ID));
-		prop.appendChild(PropCMNumber.getInstanceOf(PropCMNumber.VAL_INTEGER));
-		prop.appendChild(IValID.V_NONE);
-		prop.setMaxValueCount(-1);
-		prop.appendMediaGroup(IMediaGroupID.M_ALL);
-
-		// cue
-		prop = PropCMProperty.getInstanceOf(PropCMProperty.P_CUE);
-		prop.appendChild(PropCMProperty.getInstanceOf(PropCMProperty.P_CUE_BEFORE));
-		prop.appendChild(PropCMProperty.getInstanceOf(PropCMProperty.P_CUE_AFTER));
-		prop.setMaxValueCount(2);
-		prop.appendMediaGroup(IMediaGroupID.M_AURAL);
-
-		// cue-after
-		prop = PropCMProperty.getInstanceOf(PropCMProperty.P_CUE_AFTER);
-		prop.appendChild(PropCMFunction.getInstanceOf(PropCMFunction.VAL_URI));
-		prop.appendChild(IValID.V_NONE);
-		prop.appendMediaGroup(IMediaGroupID.M_AURAL);
-
-		// cue-before
-		prop = PropCMProperty.getInstanceOf(PropCMProperty.P_CUE_BEFORE);
-		prop.appendChild(PropCMFunction.getInstanceOf(PropCMFunction.VAL_URI));
-		prop.appendChild(IValID.V_NONE);
-		prop.appendMediaGroup(IMediaGroupID.M_AURAL);
-
-		// cursor
-		prop = PropCMProperty.getInstanceOf(PropCMProperty.P_CURSOR);
-		prop.appendChild(PropCMFunction.getInstanceOf(PropCMFunction.VAL_URI));
-		prop.appendChild(IValID.V_AUTO);
-		prop.appendChild(IValID.V_CROSSHAIR);
-		prop.appendChild(IValID.V_DEFAULT);
-		prop.appendChild(IValID.V_POINTER);
-		prop.appendChild(IValID.V_MOVE);
-		prop.appendChild(IValID.V_E_RESIZE);
-		prop.appendChild(IValID.V_NE_RESIZE);
-		prop.appendChild(IValID.V_NW_RESIZE);
-		prop.appendChild(IValID.V_N_RESIZE);
-		prop.appendChild(IValID.V_SE_RESIZE);
-		prop.appendChild(IValID.V_SW_RESIZE);
-		prop.appendChild(IValID.V_S_RESIZE);
-		prop.appendChild(IValID.V_W_RESIZE);
-		prop.appendChild(IValID.V_TEXT);
-		prop.appendChild(IValID.V_WAIT);
-		prop.appendChild(IValID.V_HELP);
-		prop.setMaxValueCount(-1); // infinite
-		prop.appendMediaGroup(IMediaGroupID.M_VISUAL);
-		prop.appendMediaGroup(IMediaGroupID.M_INTERACTIVE);
-
-		// direction
-		prop = PropCMProperty.getInstanceOf(PropCMProperty.P_DIRECTION);
-		prop.appendChild(IValID.V_LTR);
-		prop.appendChild(IValID.V_RTL);
-		prop.appendMediaGroup(IMediaGroupID.M_VISUAL);
-
-		// display
-		prop = PropCMProperty.getInstanceOf(PropCMProperty.P_DISPLAY);
-		prop.appendChild(IValID.V_INLINE);
-		prop.appendChild(IValID.V_BLOCK);
-		prop.appendChild(IValID.V_LIST_ITEM);
-		prop.appendChild(IValID.V_RUN_IN);
-		prop.appendChild(IValID.V_COMPACT);
-		prop.appendChild(IValID.V_MARKER);
-		prop.appendChild(IValID.V_TABLE);
-		prop.appendChild(IValID.V_INLINE_TABLE);
-		prop.appendChild(IValID.V_TABLE_ROW_GROUP);
-		prop.appendChild(IValID.V_TABLE_HEADER_GROUP);
-		prop.appendChild(IValID.V_TABLE_FOOTER_GROUP);
-		prop.appendChild(IValID.V_TABLE_ROW);
-		prop.appendChild(IValID.V_TABLE_COLUMN_GROUP);
-		prop.appendChild(IValID.V_TABLE_COLUMN);
-		prop.appendChild(IValID.V_TABLE_CELL);
-		prop.appendChild(IValID.V_TABLE_CAPTION);
-		prop.appendChild(IValID.V_NONE);
-		prop.appendMediaGroup(IMediaGroupID.M_ALL);
-
-		// elevation
-		prop = PropCMProperty.getInstanceOf(PropCMProperty.P_ELEVATION);
-		prop.appendChild(PropCMNumber.getInstanceOf(PropCMNumber.VAL_ANGLE));
-		prop.appendChild(IValID.V_BELOW);
-		prop.appendChild(IValID.V_LEVEL);
-		prop.appendChild(IValID.V_ABOVE);
-		prop.appendChild(IValID.V_HIGHER);
-		prop.appendChild(IValID.V_LOWER);
-		prop.appendMediaGroup(IMediaGroupID.M_AURAL);
-
-		// empty-cells
-		prop = PropCMProperty.getInstanceOf(PropCMProperty.P_EMPTY_CELLS);
-		prop.appendChild(IValID.V_SHOW);
-		prop.appendChild(IValID.V_HIDE);
-		prop.appendMediaGroup(IMediaGroupID.M_VISUAL);
-
-		// float
-		prop = PropCMProperty.getInstanceOf(PropCMProperty.P_FLOAT);
-		prop.appendChild(IValID.V_LEFT);
-		prop.appendChild(IValID.V_RIGHT);
-		prop.appendChild(IValID.V_NONE);
-		prop.appendMediaGroup(IMediaGroupID.M_VISUAL);
-
-		// font
-		prop = PropCMProperty.getInstanceOf(PropCMProperty.P_FONT);
-		prop.appendChild(PropCMProperty.getInstanceOf(PropCMProperty.P_FONT_STYLE));
-		prop.appendChild(PropCMProperty.getInstanceOf(PropCMProperty.P_FONT_VARIANT));
-		prop.appendChild(PropCMProperty.getInstanceOf(PropCMProperty.P_FONT_WEIGHT));
-		prop.appendChild(PropCMProperty.getInstanceOf(PropCMProperty.P_FONT_SIZE));
-		prop.appendChild(PropCMProperty.getInstanceOf(PropCMProperty.P_LINE_HEIGHT));
-		prop.appendChild(PropCMProperty.getInstanceOf(PropCMProperty.P_FONT_FAMILY));
-		prop.appendChild(IValID.V_CAPTION);
-		prop.appendChild(IValID.V_ICON);
-		prop.appendChild(IValID.V_MENU);
-		prop.appendChild(IValID.V_MESSAGE_BOX);
-		prop.appendChild(IValID.V_SMALL_CAPTION);
-		prop.appendChild(IValID.V_STATUS_BAR);
-		prop.setMaxValueCount(-1);
-		prop.appendMediaGroup(IMediaGroupID.M_VISUAL);
-
-		// font-family
-		prop = PropCMProperty.getInstanceOf(PropCMProperty.P_FONT_FAMILY);
-		prop.appendChild(PropCMString.getInstanceOf(PropCMString.VAL_FONT));
-		prop.appendChild(PropCMContainer.getContInstanceOf(PropCMContainer.VAL_GENERIC_FAMILY));
-		prop.setMaxValueCount(-1);
-		prop.appendMediaGroup(IMediaGroupID.M_VISUAL);
-
-		// font-size
-		prop = PropCMProperty.getInstanceOf(PropCMProperty.P_FONT_SIZE);
-		prop.appendChild(PropCMContainer.getContInstanceOf(PropCMContainer.VAL_ABSOLUTE_SIZE));
-		prop.appendChild(PropCMContainer.getContInstanceOf(PropCMContainer.VAL_RELATIVE_SIZE));
-		prop.appendChild(PropCMNumber.getInstanceOf(PropCMNumber.VAL_LENGTH));
-		prop.appendChild(PropCMNumber.getInstanceOf(PropCMNumber.VAL_PERCENTAGE));
-		prop.appendMediaGroup(IMediaGroupID.M_VISUAL);
-
-		// font-size-adjust
-		prop = PropCMProperty.getInstanceOf(PropCMProperty.P_FONT_SIZE_ADJUST);
-		prop.appendChild(PropCMNumber.getInstanceOf(PropCMNumber.VAL_NUM));
-		prop.appendChild(IValID.V_NONE);
-		prop.appendMediaGroup(IMediaGroupID.M_VISUAL);
-
-		// font-stretch
-		prop = PropCMProperty.getInstanceOf(PropCMProperty.P_FONT_STRETCH);
-		prop.appendChild(IValID.V_NORMAL);
-		prop.appendChild(IValID.V_WIDER);
-		prop.appendChild(IValID.V_NARROWER);
-		prop.appendChild(IValID.V_ULTRA_CONDENSED);
-		prop.appendChild(IValID.V_EXTRA_CONDENSED);
-		prop.appendChild(IValID.V_CONDENSED);
-		prop.appendChild(IValID.V_SEMI_CONDENSED);
-		prop.appendChild(IValID.V_SEMI_EXPANDED);
-		prop.appendChild(IValID.V_EXPANDED);
-		prop.appendChild(IValID.V_EXTRA_EXPANDED);
-		prop.appendChild(IValID.V_ULTRA_EXPANDED);
-		prop.appendMediaGroup(IMediaGroupID.M_VISUAL);
-
-		// font-style
-		prop = PropCMProperty.getInstanceOf(PropCMProperty.P_FONT_STYLE);
-		prop.appendChild(IValID.V_ITALIC);
-		prop.appendChild(IValID.V_OBLIQUE);
-		prop.appendChild(IValID.V_NORMAL);
-		prop.appendMediaGroup(IMediaGroupID.M_VISUAL);
-
-		// font-variant
-		prop = PropCMProperty.getInstanceOf(PropCMProperty.P_FONT_VARIANT);
-		prop.appendChild(IValID.V_SMALL_CAPS);
-		prop.appendChild(IValID.V_NORMAL);
-		prop.appendMediaGroup(IMediaGroupID.M_VISUAL);
-
-		// font-weight
-		prop = PropCMProperty.getInstanceOf(PropCMProperty.P_FONT_WEIGHT);
-		prop.appendChild(IValID.V_BOLD);
-		prop.appendChild(IValID.V_100);
-		prop.appendChild(IValID.V_200);
-		prop.appendChild(IValID.V_300);
-		prop.appendChild(IValID.V_400);
-		prop.appendChild(IValID.V_500);
-		prop.appendChild(IValID.V_600);
-		prop.appendChild(IValID.V_700);
-		prop.appendChild(IValID.V_800);
-		prop.appendChild(IValID.V_900);
-		prop.appendChild(IValID.V_LIGHTER);
-		prop.appendChild(IValID.V_BOLDER);
-		prop.appendChild(IValID.V_NORMAL);
-		prop.appendMediaGroup(IMediaGroupID.M_VISUAL);
-
-		// height
-		prop = PropCMProperty.getInstanceOf(PropCMProperty.P_HEIGHT);
-		prop.appendChild(PropCMNumber.getInstanceOf(PropCMNumber.VAL_LENGTH));
-		prop.appendChild(PropCMNumber.getInstanceOf(PropCMNumber.VAL_PERCENTAGE));
-		prop.appendChild(IValID.V_AUTO);
-		prop.appendMediaGroup(IMediaGroupID.M_VISUAL);
-
-		// leftt
-		prop = PropCMProperty.getInstanceOf(PropCMProperty.P_LEFT);
-		prop.appendChild(PropCMNumber.getInstanceOf(PropCMNumber.VAL_LENGTH));
-		prop.appendChild(PropCMNumber.getInstanceOf(PropCMNumber.VAL_PERCENTAGE));
-		prop.appendChild(IValID.V_AUTO);
-		prop.appendMediaGroup(IMediaGroupID.M_VISUAL);
-
-		// letter-spacing
-		prop = PropCMProperty.getInstanceOf(PropCMProperty.P_LETTER_SPACING);
-		prop.appendChild(IValID.V_NORMAL);
-		prop.appendChild(PropCMNumber.getInstanceOf(PropCMNumber.VAL_LENGTH));
-		prop.appendMediaGroup(IMediaGroupID.M_VISUAL);
-
-		// line-height
-		prop = PropCMProperty.getInstanceOf(PropCMProperty.P_LINE_HEIGHT);
-		prop.appendChild(IValID.V_NORMAL);
-		prop.appendChild(PropCMNumber.getInstanceOf(PropCMNumber.VAL_NUM));
-		prop.appendChild(PropCMNumber.getInstanceOf(PropCMNumber.VAL_LENGTH));
-		prop.appendChild(PropCMNumber.getInstanceOf(PropCMNumber.VAL_PERCENTAGE));
-		prop.appendMediaGroup(IMediaGroupID.M_VISUAL);
-
-		// list-style
-		prop = PropCMProperty.getInstanceOf(PropCMProperty.P_LIST_STYLE);
-		prop.appendChild(PropCMProperty.getInstanceOf(PropCMProperty.P_LIST_STYLE_TYPE));
-		prop.appendChild(PropCMProperty.getInstanceOf(PropCMProperty.P_LIST_STYLE_POSITION));
-		prop.appendChild(PropCMProperty.getInstanceOf(PropCMProperty.P_LIST_STYLE_IMAGE));
-		prop.setMaxValueCount(3);
-		prop.appendMediaGroup(IMediaGroupID.M_VISUAL);
-
-		// list-style-image
-		prop = PropCMProperty.getInstanceOf(PropCMProperty.P_LIST_STYLE_IMAGE);
-		prop.appendChild(PropCMFunction.getInstanceOf(PropCMFunction.VAL_URI));
-		prop.appendChild(IValID.V_NONE);
-		prop.appendMediaGroup(IMediaGroupID.M_VISUAL);
-
-		// list-style-position
-		prop = PropCMProperty.getInstanceOf(PropCMProperty.P_LIST_STYLE_POSITION);
-		prop.appendChild(IValID.V_INSIDE);
-		prop.appendChild(IValID.V_OUTSIDE);
-		prop.appendMediaGroup(IMediaGroupID.M_VISUAL);
-
-		// list-style-type
-		prop = PropCMProperty.getInstanceOf(PropCMProperty.P_LIST_STYLE_TYPE);
-		prop.appendChild(IValID.V_DISC);
-		prop.appendChild(IValID.V_CIRCLE);
-		prop.appendChild(IValID.V_SQUARE);
-		prop.appendChild(IValID.V_DECIMAL);
-		prop.appendChild(IValID.V_DECIMAL_LEADING_ZERO);
-		prop.appendChild(IValID.V_LOWER_ROMAN);
-		prop.appendChild(IValID.V_UPPER_ROMAN);
-		prop.appendChild(IValID.V_LOWER_GREEK);
-		prop.appendChild(IValID.V_LOWER_ALPHA);
-		prop.appendChild(IValID.V_LOWER_LATIN);
-		prop.appendChild(IValID.V_UPPER_ALPHA);
-		prop.appendChild(IValID.V_UPPER_LATIN);
-		prop.appendChild(IValID.V_HEBREW);
-		prop.appendChild(IValID.V_ARMENIAN);
-		prop.appendChild(IValID.V_GEORGIAN);
-		prop.appendChild(IValID.V_CJK_IDEOGRAPHIC);
-		prop.appendChild(IValID.V_HIRAGANA);
-		prop.appendChild(IValID.V_KATAKANA);
-		prop.appendChild(IValID.V_HIRAGANA_IROHA);
-		prop.appendChild(IValID.V_KATAKANA_IROHA);
-		prop.appendChild(IValID.V_NONE);
-		prop.appendMediaGroup(IMediaGroupID.M_VISUAL);
-
-		// margin
-		prop = PropCMProperty.getInstanceOf(PropCMProperty.P_MARGIN);
-		// prop.appendChild(PropCMContainer.getContInstanceOf(PropCMContainer.VAL_MARGIN_WIDTH));
-		prop.appendChild(PropCMProperty.getInstanceOf(PropCMProperty.P_MARGIN_TOP));
-		prop.appendChild(PropCMProperty.getInstanceOf(PropCMProperty.P_MARGIN_RIGHT));
-		prop.appendChild(PropCMProperty.getInstanceOf(PropCMProperty.P_MARGIN_BOTTOM));
-		prop.appendChild(PropCMProperty.getInstanceOf(PropCMProperty.P_MARGIN_LEFT));
-		prop.setMaxValueCount(4);
-		prop.appendMediaGroup(IMediaGroupID.M_VISUAL);
-
-		// margin-top
-		prop = PropCMProperty.getInstanceOf(PropCMProperty.P_MARGIN_TOP);
-		prop.appendChild(PropCMContainer.getContInstanceOf(PropCMContainer.VAL_MARGIN_WIDTH));
-		prop.appendMediaGroup(IMediaGroupID.M_VISUAL);
-
-		// margin-right
-		prop = PropCMProperty.getInstanceOf(PropCMProperty.P_MARGIN_RIGHT);
-		prop.appendChild(PropCMContainer.getContInstanceOf(PropCMContainer.VAL_MARGIN_WIDTH));
-		prop.appendMediaGroup(IMediaGroupID.M_VISUAL);
-
-		// margin-bottom
-		prop = PropCMProperty.getInstanceOf(PropCMProperty.P_MARGIN_BOTTOM);
-		prop.appendChild(PropCMContainer.getContInstanceOf(PropCMContainer.VAL_MARGIN_WIDTH));
-		prop.appendMediaGroup(IMediaGroupID.M_VISUAL);
-
-		// margin-left
-		prop = PropCMProperty.getInstanceOf(PropCMProperty.P_MARGIN_LEFT);
-		prop.appendChild(PropCMContainer.getContInstanceOf(PropCMContainer.VAL_MARGIN_WIDTH));
-		prop.appendMediaGroup(IMediaGroupID.M_VISUAL);
-
-		// marker-offset
-		prop = PropCMProperty.getInstanceOf(PropCMProperty.P_MARKER_OFFSET);
-		prop.appendChild(PropCMNumber.getInstanceOf(PropCMNumber.VAL_LENGTH));
-		prop.appendChild(IValID.V_AUTO);
-		prop.appendMediaGroup(IMediaGroupID.M_VISUAL);
-
-		// marks
-		prop = PropCMProperty.getInstanceOf(PropCMProperty.P_MARKS);
-		prop.appendChild(IValID.V_CROP);
-		prop.appendChild(IValID.V_CROSS);
-		prop.appendChild(IValID.V_NONE);
-		prop.setMaxValueCount(2);
-		prop.appendMediaGroup(IMediaGroupID.M_VISUAL);
-		prop.appendMediaGroup(IMediaGroupID.M_PAGED);
-
-		// max-height
-		prop = PropCMProperty.getInstanceOf(PropCMProperty.P_MAX_HEIGHT);
-		prop.appendChild(PropCMNumber.getInstanceOf(PropCMNumber.VAL_LENGTH));
-		prop.appendChild(PropCMNumber.getInstanceOf(PropCMNumber.VAL_PERCENTAGE));
-		prop.appendChild(IValID.V_NONE);
-		prop.appendMediaGroup(IMediaGroupID.M_VISUAL);
-
-		// max-width
-		prop = PropCMProperty.getInstanceOf(PropCMProperty.P_MAX_WIDTH);
-		prop.appendChild(PropCMNumber.getInstanceOf(PropCMNumber.VAL_LENGTH));
-		prop.appendChild(PropCMNumber.getInstanceOf(PropCMNumber.VAL_PERCENTAGE));
-		prop.appendChild(IValID.V_NONE);
-		prop.appendMediaGroup(IMediaGroupID.M_VISUAL);
-
-		// min-height
-		prop = PropCMProperty.getInstanceOf(PropCMProperty.P_MIN_HEIGHT);
-		prop.appendChild(PropCMNumber.getInstanceOf(PropCMNumber.VAL_LENGTH));
-		prop.appendChild(PropCMNumber.getInstanceOf(PropCMNumber.VAL_PERCENTAGE));
-		prop.appendMediaGroup(IMediaGroupID.M_VISUAL);
-
-		// min-width
-		prop = PropCMProperty.getInstanceOf(PropCMProperty.P_MIN_WIDTH);
-		prop.appendChild(PropCMNumber.getInstanceOf(PropCMNumber.VAL_LENGTH));
-		prop.appendChild(PropCMNumber.getInstanceOf(PropCMNumber.VAL_PERCENTAGE));
-		prop.appendMediaGroup(IMediaGroupID.M_VISUAL);
-
-		// orphans
-		prop = PropCMProperty.getInstanceOf(PropCMProperty.P_ORPHANS);
-		prop.appendChild(PropCMNumber.getInstanceOf(PropCMNumber.VAL_INTEGER));
-		prop.appendMediaGroup(IMediaGroupID.M_VISUAL);
-		prop.appendMediaGroup(IMediaGroupID.M_PAGED);
-
-		// outline
-		prop = PropCMProperty.getInstanceOf(PropCMProperty.P_OUTLINE);
-		prop.appendChild(PropCMProperty.getInstanceOf(PropCMProperty.P_OUTLINE_COLOR));
-		prop.appendChild(PropCMProperty.getInstanceOf(PropCMProperty.P_OUTLINE_STYLE));
-		prop.appendChild(PropCMProperty.getInstanceOf(PropCMProperty.P_OUTLINE_WIDTH));
-		prop.setMaxValueCount(3);
-		prop.appendMediaGroup(IMediaGroupID.M_VISUAL);
-		prop.appendMediaGroup(IMediaGroupID.M_INTERACTIVE);
-
-		// outline-color
-		prop = PropCMProperty.getInstanceOf(PropCMProperty.P_OUTLINE_COLOR);
-		prop.appendChild(PropCMContainer.getContInstanceOf(PropCMContainer.VAL_COLOR));
-		prop.appendChild(IValID.V_INVERT);
-		prop.appendMediaGroup(IMediaGroupID.M_VISUAL);
-		prop.appendMediaGroup(IMediaGroupID.M_INTERACTIVE);
-
-		// outline-style
-		prop = PropCMProperty.getInstanceOf(PropCMProperty.P_OUTLINE_STYLE);
-		prop.appendChild(PropCMContainer.getContInstanceOf(PropCMContainer.VAL_BORDER_STYLE));
-		prop.appendMediaGroup(IMediaGroupID.M_VISUAL);
-		prop.appendMediaGroup(IMediaGroupID.M_INTERACTIVE);
-
-		// outline-width
-		prop = PropCMProperty.getInstanceOf(PropCMProperty.P_OUTLINE_WIDTH);
-		prop.appendChild(PropCMContainer.getContInstanceOf(PropCMContainer.VAL_BORDER_WIDTH));
-		prop.appendMediaGroup(IMediaGroupID.M_VISUAL);
-		prop.appendMediaGroup(IMediaGroupID.M_INTERACTIVE);
-
-		// overflow
-		prop = PropCMProperty.getInstanceOf(PropCMProperty.P_OVERFLOW);
-		prop.appendChild(IValID.V_VISIBLE);
-		prop.appendChild(IValID.V_HIDDEN);
-		prop.appendChild(IValID.V_SCROLL);
-		prop.appendChild(IValID.V_AUTO);
-		prop.appendMediaGroup(IMediaGroupID.M_VISUAL);
-
-		// padding
-		prop = PropCMProperty.getInstanceOf(PropCMProperty.P_PADDING);
-		// prop.appendChild(PropCMContainer.getContInstanceOf(PropCMContainer.VAL_PADDING_WIDTH));
-		prop.appendChild(PropCMProperty.getInstanceOf(PropCMProperty.P_PADDING_TOP));
-		prop.appendChild(PropCMProperty.getInstanceOf(PropCMProperty.P_PADDING_RIGHT));
-		prop.appendChild(PropCMProperty.getInstanceOf(PropCMProperty.P_PADDING_BOTTOM));
-		prop.appendChild(PropCMProperty.getInstanceOf(PropCMProperty.P_PADDING_LEFT));
-		prop.setMaxValueCount(4);
-		prop.appendMediaGroup(IMediaGroupID.M_VISUAL);
-
-		// padding-top
-		prop = PropCMProperty.getInstanceOf(PropCMProperty.P_PADDING_TOP);
-		prop.appendChild(PropCMContainer.getContInstanceOf(PropCMContainer.VAL_PADDING_WIDTH));
-		prop.appendMediaGroup(IMediaGroupID.M_VISUAL);
-
-		// padding-right
-		prop = PropCMProperty.getInstanceOf(PropCMProperty.P_PADDING_RIGHT);
-		prop.appendChild(PropCMContainer.getContInstanceOf(PropCMContainer.VAL_PADDING_WIDTH));
-		prop.appendMediaGroup(IMediaGroupID.M_VISUAL);
-
-		// padding-bottom
-		prop = PropCMProperty.getInstanceOf(PropCMProperty.P_PADDING_BOTTOM);
-		prop.appendChild(PropCMContainer.getContInstanceOf(PropCMContainer.VAL_PADDING_WIDTH));
-		prop.appendMediaGroup(IMediaGroupID.M_VISUAL);
-
-		// padding-left
-		prop = PropCMProperty.getInstanceOf(PropCMProperty.P_PADDING_LEFT);
-		prop.appendChild(PropCMContainer.getContInstanceOf(PropCMContainer.VAL_PADDING_WIDTH));
-		prop.appendMediaGroup(IMediaGroupID.M_VISUAL);
-
-		// page
-		prop = PropCMProperty.getInstanceOf(PropCMProperty.P_PAGE);
-		prop.appendChild(PropCMString.getInstanceOf(PropCMString.VAL_PAGE_ID));
-		prop.appendChild(IValID.V_AUTO);
-		prop.appendMediaGroup(IMediaGroupID.M_VISUAL);
-		prop.appendMediaGroup(IMediaGroupID.M_PAGED);
-
-		// page-break-after
-		prop = PropCMProperty.getInstanceOf(PropCMProperty.P_PAGE_BREAK_AFTER);
-		prop.appendChild(IValID.V_AUTO);
-		prop.appendChild(IValID.V_ALWAYS);
-		prop.appendChild(IValID.V_AVOID);
-		prop.appendChild(IValID.V_LEFT);
-		prop.appendChild(IValID.V_RIGHT);
-		prop.appendMediaGroup(IMediaGroupID.M_VISUAL);
-		prop.appendMediaGroup(IMediaGroupID.M_PAGED);
-
-		// page-break-before
-		prop = PropCMProperty.getInstanceOf(PropCMProperty.P_PAGE_BREAK_BEFORE);
-		prop.appendChild(IValID.V_AUTO);
-		prop.appendChild(IValID.V_ALWAYS);
-		prop.appendChild(IValID.V_AVOID);
-		prop.appendChild(IValID.V_LEFT);
-		prop.appendChild(IValID.V_RIGHT);
-		prop.appendMediaGroup(IMediaGroupID.M_VISUAL);
-		prop.appendMediaGroup(IMediaGroupID.M_PAGED);
-
-		// page-break-inside
-		prop = PropCMProperty.getInstanceOf(PropCMProperty.P_PAGE_BREAK_INSIDE);
-		prop.appendChild(IValID.V_AVOID);
-		prop.appendChild(IValID.V_AUTO);
-		prop.appendMediaGroup(IMediaGroupID.M_VISUAL);
-		prop.appendMediaGroup(IMediaGroupID.M_PAGED);
-
-		// pause
-		prop = PropCMProperty.getInstanceOf(PropCMProperty.P_PAUSE);
-		prop.appendChild(PropCMNumber.getInstanceOf(PropCMNumber.VAL_TIME));
-		prop.appendChild(PropCMNumber.getInstanceOf(PropCMNumber.VAL_PERCENTAGE));
-		prop.setMaxValueCount(2);
-		prop.appendMediaGroup(IMediaGroupID.M_AURAL);
-
-		// pause-after
-		prop = PropCMProperty.getInstanceOf(PropCMProperty.P_PAUSE_AFTER);
-		prop.appendChild(PropCMNumber.getInstanceOf(PropCMNumber.VAL_TIME));
-		prop.appendChild(PropCMNumber.getInstanceOf(PropCMNumber.VAL_PERCENTAGE));
-		prop.appendMediaGroup(IMediaGroupID.M_AURAL);
-
-		// pause-before
-		prop = PropCMProperty.getInstanceOf(PropCMProperty.P_PAUSE_BEFORE);
-		prop.appendChild(PropCMNumber.getInstanceOf(PropCMNumber.VAL_TIME));
-		prop.appendChild(PropCMNumber.getInstanceOf(PropCMNumber.VAL_PERCENTAGE));
-		prop.appendMediaGroup(IMediaGroupID.M_AURAL);
-
-		// pitch
-		prop = PropCMProperty.getInstanceOf(PropCMProperty.P_PITCH);
-		prop.appendChild(PropCMNumber.getInstanceOf(PropCMNumber.VAL_FREQUENCY));
-		prop.appendChild(IValID.V_X_LOW);
-		prop.appendChild(IValID.V_LOW);
-		prop.appendChild(IValID.V_MEDIUM);
-		prop.appendChild(IValID.V_HIGH);
-		prop.appendChild(IValID.V_X_HIGH);
-		prop.appendMediaGroup(IMediaGroupID.M_AURAL);
-
-		// pitch-range
-		prop = PropCMProperty.getInstanceOf(PropCMProperty.P_PITCH_RANGE);
-		prop.appendChild(PropCMNumber.getInstanceOf(PropCMNumber.VAL_NUM));
-		prop.appendMediaGroup(IMediaGroupID.M_AURAL);
-
-		// play-during
-		prop = PropCMProperty.getInstanceOf(PropCMProperty.P_PLAY_DURING);
-		prop.appendChild(PropCMFunction.getInstanceOf(PropCMFunction.VAL_URI));
-		prop.appendChild(IValID.V_MIX);
-		prop.appendChild(IValID.V_REPEAT);
-		prop.appendChild(IValID.V_AUTO);
-		prop.appendChild(IValID.V_NONE);
-		prop.setMaxValueCount(3);
-		prop.appendMediaGroup(IMediaGroupID.M_AURAL);
-
-		// position
-		prop = PropCMProperty.getInstanceOf(PropCMProperty.P_POSITION);
-		prop.appendChild(IValID.V_ABSOLUTE);
-		prop.appendChild(IValID.V_RELATIVE);
-		prop.appendChild(IValID.V_FIXED);
-		prop.appendChild(IValID.V_STATIC);
-		prop.appendMediaGroup(IMediaGroupID.M_VISUAL);
-
-		// quotes
-		prop = PropCMProperty.getInstanceOf(PropCMProperty.P_QUOTES);
-		prop.appendChild(PropCMString.getInstanceOf(PropCMString.VAL_ANY));
-		prop.appendChild(IValID.V_NONE);
-		prop.setMaxValueCount(-1);
-		prop.appendMediaGroup(IMediaGroupID.M_VISUAL);
-
-		// richness
-		prop = PropCMProperty.getInstanceOf(PropCMProperty.P_RICHNESS);
-		prop.appendChild(PropCMNumber.getInstanceOf(PropCMNumber.VAL_NUM));
-		prop.appendMediaGroup(IMediaGroupID.M_AURAL);
-
-		// right
-		prop = PropCMProperty.getInstanceOf(PropCMProperty.P_RIGHT);
-		prop.appendChild(PropCMNumber.getInstanceOf(PropCMNumber.VAL_LENGTH));
-		prop.appendChild(PropCMNumber.getInstanceOf(PropCMNumber.VAL_PERCENTAGE));
-		prop.appendChild(IValID.V_AUTO);
-		prop.appendMediaGroup(IMediaGroupID.M_VISUAL);
-
-		// size
-		prop = PropCMProperty.getInstanceOf(PropCMProperty.P_SIZE);
-		prop.appendChild(PropCMNumber.getInstanceOf(PropCMNumber.VAL_LENGTH));
-		prop.appendChild(IValID.V_AUTO);
-		prop.appendChild(IValID.V_PORTRAIT);
-		prop.appendChild(IValID.V_LANDSCAPE);
-		prop.setMaxValueCount(2);
-		prop.appendMediaGroup(IMediaGroupID.M_VISUAL);
-		prop.appendMediaGroup(IMediaGroupID.M_PAGED);
-
-		// speak
-		prop = PropCMProperty.getInstanceOf(PropCMProperty.P_SPEAK);
-		prop.appendChild(IValID.V_NORMAL);
-		prop.appendChild(IValID.V_NONE);
-		prop.appendChild(IValID.V_SPELL_OUT);
-		prop.appendMediaGroup(IMediaGroupID.M_AURAL);
-
-		// speak-header
-		prop = PropCMProperty.getInstanceOf(PropCMProperty.P_SPEAK_HEADER);
-		prop.appendChild(IValID.V_ONCE);
-		prop.appendChild(IValID.V_ALWAYS);
-		prop.appendMediaGroup(IMediaGroupID.M_AURAL);
-
-		// speak-numeral
-		prop = PropCMProperty.getInstanceOf(PropCMProperty.P_SPEAK_NUMERAL);
-		prop.appendChild(IValID.V_DIGITS);
-		prop.appendChild(IValID.V_CONTINUOUS);
-		prop.appendMediaGroup(IMediaGroupID.M_AURAL);
-
-		// speak-punctuation
-		prop = PropCMProperty.getInstanceOf(PropCMProperty.P_SPEAK_PUNCTUATION);
-		prop.appendChild(IValID.V_CODE);
-		prop.appendChild(IValID.V_NONE);
-		prop.appendMediaGroup(IMediaGroupID.M_AURAL);
-
-		// speech-rate
-		prop = PropCMProperty.getInstanceOf(PropCMProperty.P_SPEECH_RATE);
-		prop.appendChild(PropCMNumber.getInstanceOf(PropCMNumber.VAL_NUM));
-		prop.appendChild(IValID.V_X_SLOW);
-		prop.appendChild(IValID.V_SLOW);
-		prop.appendChild(IValID.V_MEDIUM);
-		prop.appendChild(IValID.V_FAST);
-		prop.appendChild(IValID.V_X_FAST);
-		prop.appendMediaGroup(IMediaGroupID.M_AURAL);
-
-		// stress
-		prop = PropCMProperty.getInstanceOf(PropCMProperty.P_STRESS);
-		prop.appendChild(PropCMNumber.getInstanceOf(PropCMNumber.VAL_NUM));
-		prop.appendMediaGroup(IMediaGroupID.M_AURAL);
-
-		// table-layout
-		prop = PropCMProperty.getInstanceOf(PropCMProperty.P_TABLE_LAYOUT);
-		prop.appendChild(IValID.V_AUTO);
-		prop.appendChild(IValID.V_FIXED);
-		prop.appendMediaGroup(IMediaGroupID.M_VISUAL);
-
-		// text-align
-		prop = PropCMProperty.getInstanceOf(PropCMProperty.P_TEXT_ALIGN);
-		prop.appendChild(IValID.V_LEFT);
-		prop.appendChild(IValID.V_CENTER);
-		prop.appendChild(IValID.V_RIGHT);
-		prop.appendChild(IValID.V_JUSTIFY);
-		prop.appendChild(PropCMString.getInstanceOf(PropCMString.VAL_ANY));
-		prop.appendMediaGroup(IMediaGroupID.M_VISUAL);
-
-		// text-decoration
-		prop = PropCMProperty.getInstanceOf(PropCMProperty.P_TEXT_DECORATION);
-		prop.appendChild(IValID.V_UNDERLINE);
-		prop.appendChild(IValID.V_OVERLINE);
-		prop.appendChild(IValID.V_LINE_THROUGH);
-		prop.appendChild(IValID.V_BLINK);
-		prop.appendChild(IValID.V_NONE);
-		prop.setMaxValueCount(4);
-		prop.appendMediaGroup(IMediaGroupID.M_VISUAL);
-
-		// text-indent
-		prop = PropCMProperty.getInstanceOf(PropCMProperty.P_TEXT_INDENT);
-		prop.appendChild(PropCMNumber.getInstanceOf(PropCMNumber.VAL_LENGTH));
-		prop.appendChild(PropCMNumber.getInstanceOf(PropCMNumber.VAL_PERCENTAGE));
-		prop.appendMediaGroup(IMediaGroupID.M_VISUAL);
-
-		// text-shadow
-		prop = PropCMProperty.getInstanceOf(PropCMProperty.P_TEXT_SHADOW);
-		prop.appendChild(IValID.V_NONE);
-		prop.appendChild(PropCMContainer.getContInstanceOf(PropCMContainer.VAL_COLOR));
-		prop.appendChild(PropCMNumber.getInstanceOf(PropCMNumber.VAL_LENGTH));
-		prop.setMaxValueCount(-1);
-		prop.appendMediaGroup(IMediaGroupID.M_VISUAL);
-
-		// text-transform
-		prop = PropCMProperty.getInstanceOf(PropCMProperty.P_TEXT_TRANSFORM);
-		prop.appendChild(IValID.V_CAPITALIZE);
-		prop.appendChild(IValID.V_UPPERCASE);
-		prop.appendChild(IValID.V_LOWERCASE);
-		prop.appendChild(IValID.V_NONE);
-		prop.appendMediaGroup(IMediaGroupID.M_VISUAL);
-
-		// top
-		prop = PropCMProperty.getInstanceOf(PropCMProperty.P_TOP);
-		prop.appendChild(PropCMNumber.getInstanceOf(PropCMNumber.VAL_LENGTH));
-		prop.appendChild(PropCMNumber.getInstanceOf(PropCMNumber.VAL_PERCENTAGE));
-		prop.appendChild(IValID.V_AUTO);
-		prop.appendMediaGroup(IMediaGroupID.M_VISUAL);
-
-		// unicode-bidi
-		prop = PropCMProperty.getInstanceOf(PropCMProperty.P_UNICODE_BIDI);
-		prop.appendChild(IValID.V_NORMAL);
-		prop.appendChild(IValID.V_EMBED);
-		prop.appendChild(IValID.V_BIDI_OVERRIDE);
-		prop.appendMediaGroup(IMediaGroupID.M_VISUAL);
-
-		// vertical-align
-		prop = PropCMProperty.getInstanceOf(PropCMProperty.P_VERTICAL_ALIGN);
-		prop.appendChild(IValID.V_BOTTOM);
-		prop.appendChild(IValID.V_TEXT_BOTTOM);
-		prop.appendChild(IValID.V_SUB);
-		prop.appendChild(IValID.V_BASELINE);
-		prop.appendChild(IValID.V_MIDDLE);
-		prop.appendChild(IValID.V_SUPER);
-		prop.appendChild(IValID.V_TEXT_TOP);
-		prop.appendChild(IValID.V_TOP);
-		prop.appendChild(PropCMNumber.getInstanceOf(PropCMNumber.VAL_PERCENTAGE));
-		prop.appendChild(PropCMNumber.getInstanceOf(PropCMNumber.VAL_LENGTH));
-		prop.appendMediaGroup(IMediaGroupID.M_VISUAL);
-
-		// visibility
-		prop = PropCMProperty.getInstanceOf(PropCMProperty.P_VISIBILITY);
-		prop.appendChild(IValID.V_VISIBLE);
-		prop.appendChild(IValID.V_HIDDEN);
-		prop.appendChild(IValID.V_COLLAPSE);
-		prop.appendMediaGroup(IMediaGroupID.M_VISUAL);
-
-		// voice-family
-		prop = PropCMProperty.getInstanceOf(PropCMProperty.P_VOICE_FAMILY);
-		prop.appendChild(PropCMString.getInstanceOf(PropCMString.VAL_VOICE));
-		prop.appendChild(PropCMContainer.getContInstanceOf(PropCMContainer.VAL_GENERIC_VOICE));
-		prop.setMaxValueCount(-1);
-		prop.appendMediaGroup(IMediaGroupID.M_AURAL);
-
-		// volume
-		prop = PropCMProperty.getInstanceOf(PropCMProperty.P_VOLUME);
-		prop.appendChild(PropCMNumber.getInstanceOf(PropCMNumber.VAL_NUM));
-		prop.appendChild(PropCMNumber.getInstanceOf(PropCMNumber.VAL_PERCENTAGE));
-		prop.appendChild(IValID.V_SILENT);
-		prop.appendChild(IValID.V_X_SOFT);
-		prop.appendChild(IValID.V_SOFT);
-		prop.appendChild(IValID.V_MEDIUM);
-		prop.appendChild(IValID.V_LOUD);
-		prop.appendChild(IValID.V_X_LOUD);
-		prop.appendMediaGroup(IMediaGroupID.M_AURAL);
-
-		// white-space
-		prop = PropCMProperty.getInstanceOf(PropCMProperty.P_WHITE_SPACE);
-		prop.appendChild(IValID.V_NORMAL);
-		prop.appendChild(IValID.V_PRE);
-		prop.appendChild(IValID.V_NOWRAP);
-		prop.appendMediaGroup(IMediaGroupID.M_VISUAL);
-
-		// widows
-		prop = PropCMProperty.getInstanceOf(PropCMProperty.P_WIDOWS);
-		prop.appendChild(PropCMNumber.getInstanceOf(PropCMNumber.VAL_INTEGER));
-		prop.appendMediaGroup(IMediaGroupID.M_VISUAL);
-		prop.appendMediaGroup(IMediaGroupID.M_PAGED);
-
-		// width
-		prop = PropCMProperty.getInstanceOf(PropCMProperty.P_WIDTH);
-		prop.appendChild(PropCMNumber.getInstanceOf(PropCMNumber.VAL_LENGTH));
-		prop.appendChild(PropCMNumber.getInstanceOf(PropCMNumber.VAL_PERCENTAGE));
-		prop.appendChild(IValID.V_AUTO);
-		prop.appendMediaGroup(IMediaGroupID.M_VISUAL);
-
-		// word-spacing
-		prop = PropCMProperty.getInstanceOf(PropCMProperty.P_WORD_SPACING);
-		prop.appendChild(IValID.V_NORMAL);
-		prop.appendChild(PropCMNumber.getInstanceOf(PropCMNumber.VAL_LENGTH));
-		prop.appendMediaGroup(IMediaGroupID.M_VISUAL);
-
-		// z-index
-		prop = PropCMProperty.getInstanceOf(PropCMProperty.P_Z_INDEX);
-		prop.appendChild(IValID.V_AUTO);
-		prop.appendChild(PropCMNumber.getInstanceOf(PropCMNumber.VAL_INTEGER));
-		prop.appendMediaGroup(IMediaGroupID.M_VISUAL);
-
-		/** ******** font properties ********* */
-		// font-family
-		prop = PropCMFontProperty.getInstanceOf(PropCMFontProperty.PF_FONT_FAMILY);
-		prop.appendChild(PropCMString.getInstanceOf(PropCMString.VAL_FONT));
-		prop.appendChild(PropCMContainer.getContInstanceOf(PropCMContainer.VAL_GENERIC_FAMILY));
-		prop.setMaxValueCount(-1);
-
-		// font-style
-		prop = PropCMFontProperty.getInstanceOf(PropCMFontProperty.PF_FONT_STYLE);
-		prop.appendChild(IValID.V_ITALIC);
-		prop.appendChild(IValID.V_OBLIQUE);
-		prop.appendChild(IValID.V_NORMAL);
-		prop.appendChild(IValID.V_ALL);
-		prop.setMaxValueCount(-1);
-
-		// font-variant
-		prop = PropCMFontProperty.getInstanceOf(PropCMFontProperty.PF_FONT_VARIANT);
-		prop.appendChild(IValID.V_SMALL_CAPS);
-		prop.appendChild(IValID.V_NORMAL);
-		prop.setMaxValueCount(-1);
-
-		// font-weight
-		prop = PropCMFontProperty.getInstanceOf(PropCMFontProperty.PF_FONT_WEIGHT);
-		prop.appendChild(IValID.V_BOLD);
-		prop.appendChild(IValID.V_100);
-		prop.appendChild(IValID.V_200);
-		prop.appendChild(IValID.V_300);
-		prop.appendChild(IValID.V_400);
-		prop.appendChild(IValID.V_500);
-		prop.appendChild(IValID.V_600);
-		prop.appendChild(IValID.V_700);
-		prop.appendChild(IValID.V_800);
-		prop.appendChild(IValID.V_900);
-		prop.appendChild(IValID.V_NORMAL);
-		prop.appendChild(IValID.V_ALL);
-		prop.setMaxValueCount(-1);
-
-		// font-stretch
-		prop = PropCMFontProperty.getInstanceOf(PropCMFontProperty.PF_FONT_STRETCH);
-		prop.appendChild(IValID.V_NORMAL);
-		prop.appendChild(IValID.V_ULTRA_CONDENSED);
-		prop.appendChild(IValID.V_EXTRA_CONDENSED);
-		prop.appendChild(IValID.V_CONDENSED);
-		prop.appendChild(IValID.V_SEMI_CONDENSED);
-		prop.appendChild(IValID.V_SEMI_EXPANDED);
-		prop.appendChild(IValID.V_EXPANDED);
-		prop.appendChild(IValID.V_EXTRA_EXPANDED);
-		prop.appendChild(IValID.V_ULTRA_EXPANDED);
-		prop.appendChild(IValID.V_ALL);
-		prop.setMaxValueCount(-1);
-
-		// font-size
-		prop = PropCMFontProperty.getInstanceOf(PropCMFontProperty.PF_FONT_SIZE);
-		prop.appendChild(PropCMContainer.getContInstanceOf(PropCMContainer.VAL_ABSOLUTE_SIZE));
-		prop.appendChild(PropCMContainer.getContInstanceOf(PropCMContainer.VAL_RELATIVE_SIZE));
-		prop.appendChild(PropCMNumber.getInstanceOf(PropCMNumber.VAL_LENGTH));
-		prop.appendChild(PropCMNumber.getInstanceOf(PropCMNumber.VAL_PERCENTAGE));
-		prop.appendChild(IValID.V_ALL);
-		prop.setMaxValueCount(-1);
-
-		// unicode-range
-		prop = PropCMFontProperty.getInstanceOf(PropCMFontProperty.PF_UNICODE_RANGE);
-		prop.appendChild(PropCMURange.getInstanceOf(PropCMURange.VAL_URANGE));
-		prop.setMaxValueCount(-1);
-
-		// units-per-em
-		prop = PropCMFontProperty.getInstanceOf(PropCMFontProperty.PF_UNITS_PER_EM);
-		prop.appendChild(PropCMNumber.getInstanceOf(PropCMNumber.VAL_NUM));
-
-		// src
-		prop = PropCMFontProperty.getInstanceOf(PropCMFontProperty.PF_SRC);
-		prop.appendChild(PropCMFunction.getInstanceOf(PropCMFunction.VAL_URI));
-		prop.appendChild(PropCMFunction.getInstanceOf(PropCMFunction.VAL_FORMAT));
-		prop.appendChild(PropCMFunction.getInstanceOf(PropCMFunction.VAL_LOCAL));
-		prop.setMaxValueCount(-1);
-
-		// panose-1
-		prop = PropCMFontProperty.getInstanceOf(PropCMFontProperty.PF_PANOSE_1);
-		prop.appendChild(PropCMNumber.getInstanceOf(PropCMNumber.VAL_INTEGER));
-		prop.setMaxValueCount(10);
-
-		// stemv
-		prop = PropCMFontProperty.getInstanceOf(PropCMFontProperty.PF_STEMV);
-		prop.appendChild(PropCMNumber.getInstanceOf(PropCMNumber.VAL_NUM));
-
-		// stemh
-		prop = PropCMFontProperty.getInstanceOf(PropCMFontProperty.PF_STEMH);
-		prop.appendChild(PropCMNumber.getInstanceOf(PropCMNumber.VAL_NUM));
-
-		// slope
-		prop = PropCMFontProperty.getInstanceOf(PropCMFontProperty.PF_SLOPE);
-		prop.appendChild(PropCMNumber.getInstanceOf(PropCMNumber.VAL_NUM));
-
-		// cap-height
-		prop = PropCMFontProperty.getInstanceOf(PropCMFontProperty.PF_CAP_HEIGHT);
-		prop.appendChild(PropCMNumber.getInstanceOf(PropCMNumber.VAL_NUM));
-
-		// x-height
-		prop = PropCMFontProperty.getInstanceOf(PropCMFontProperty.PF_X_HEIGHT);
-		prop.appendChild(PropCMNumber.getInstanceOf(PropCMNumber.VAL_NUM));
-
-		// ascent
-		prop = PropCMFontProperty.getInstanceOf(PropCMFontProperty.PF_ASCENT);
-		prop.appendChild(PropCMNumber.getInstanceOf(PropCMNumber.VAL_NUM));
-
-		// descent
-		prop = PropCMFontProperty.getInstanceOf(PropCMFontProperty.PF_DESCENT);
-		prop.appendChild(PropCMNumber.getInstanceOf(PropCMNumber.VAL_NUM));
-
-		// widths
-		prop = PropCMFontProperty.getInstanceOf(PropCMFontProperty.PF_WIDTHS);
-		prop.appendChild(PropCMNumber.getInstanceOf(PropCMNumber.VAL_NUM));
-		prop.appendChild(PropCMURange.getInstanceOf(PropCMURange.VAL_URANGE));
-		prop.setMaxValueCount(-1);
-
-		// bbox
-		prop = PropCMFontProperty.getInstanceOf(PropCMFontProperty.PF_BBOX);
-		prop.appendChild(PropCMNumber.getInstanceOf(PropCMNumber.VAL_NUM));
-		prop.setMaxValueCount(4);
-		prop.setMaxValueCount(4);
-
-		// definition-src
-		prop = PropCMFontProperty.getInstanceOf(PropCMFontProperty.PF_DEFINITION_SRC);
-		prop.appendChild(PropCMFunction.getInstanceOf(PropCMFunction.VAL_URI));
-
-		// baseline
-		prop = PropCMFontProperty.getInstanceOf(PropCMFontProperty.PF_BASELINE);
-		prop.appendChild(PropCMNumber.getInstanceOf(PropCMNumber.VAL_NUM));
-
-		// centerline
-		prop = PropCMFontProperty.getInstanceOf(PropCMFontProperty.PF_CENTERLINE);
-		prop.appendChild(PropCMNumber.getInstanceOf(PropCMNumber.VAL_NUM));
-
-		// mathline
-		prop = PropCMFontProperty.getInstanceOf(PropCMFontProperty.PF_MATHLINE);
-		prop.appendChild(PropCMNumber.getInstanceOf(PropCMNumber.VAL_NUM));
-
-		// topline
-		prop = PropCMFontProperty.getInstanceOf(PropCMFontProperty.PF_TOPLINE);
-		prop.appendChild(PropCMNumber.getInstanceOf(PropCMNumber.VAL_NUM));
-
-		/** ******** containers ********* */
-
-		// absolute-size
-		PropCMContainer cont = PropCMContainer.getContInstanceOf(PropCMContainer.VAL_ABSOLUTE_SIZE);
-		cont.appendChild(IValID.V_XX_SMALL);
-		cont.appendChild(IValID.V_X_SMALL);
-		cont.appendChild(IValID.V_SMALL);
-		cont.appendChild(IValID.V_MEDIUM);
-		cont.appendChild(IValID.V_LARGE);
-		cont.appendChild(IValID.V_X_LARGE);
-		cont.appendChild(IValID.V_XX_LARGE);
-
-		// border-style
-		cont = PropCMContainer.getContInstanceOf(PropCMContainer.VAL_BORDER_STYLE);
-		cont.appendChild(IValID.V_SOLID);
-		cont.appendChild(IValID.V_DASHED);
-		cont.appendChild(IValID.V_DOTTED);
-		cont.appendChild(IValID.V_DOUBLE);
-		cont.appendChild(IValID.V_GROOVE);
-		cont.appendChild(IValID.V_RIDGE);
-		cont.appendChild(IValID.V_INSET);
-		cont.appendChild(IValID.V_OUTSET);
-		cont.appendChild(IValID.V_HIDDEN);
-		cont.appendChild(IValID.V_NONE);
-
-		// border-width
-		cont = PropCMContainer.getContInstanceOf(PropCMContainer.VAL_BORDER_WIDTH);
-		cont.appendChild(IValID.V_THIN);
-		cont.appendChild(IValID.V_MEDIUM);
-		cont.appendChild(IValID.V_THICK);
-		cont.appendChild(PropCMNumber.getInstanceOf(PropCMNumber.VAL_LENGTH));
-
-		// color
-		cont = PropCMContainer.getContInstanceOf(PropCMContainer.VAL_COLOR);
-		cont.appendChild(IValID.V_AQUA);
-		cont.appendChild(IValID.V_BLACK);
-		cont.appendChild(IValID.V_BLUE);
-		cont.appendChild(IValID.V_FUCHSIA);
-		cont.appendChild(IValID.V_GRAY);
-		cont.appendChild(IValID.V_GREEN);
-		cont.appendChild(IValID.V_LIME);
-		cont.appendChild(IValID.V_MAROON);
-		cont.appendChild(IValID.V_NAVY);
-		cont.appendChild(IValID.V_OLIVE);
-		cont.appendChild(IValID.V_PURPLE);
-		cont.appendChild(IValID.V_RED);
-		cont.appendChild(IValID.V_SILVER);
-		cont.appendChild(IValID.V_TEAL);
-		cont.appendChild(IValID.V_WHITE);
-		cont.appendChild(IValID.V_YELLOW);
-		cont.appendChild(PropCMContainer.getContInstanceOf(PropCMContainer.VAL_SYSTEM_COLOR));
-		cont.appendChild(PropCMFunction.getInstanceOf(PropCMFunction.VAL_RGB));
-		cont.appendChild(PropCMNumber.getInstanceOf(PropCMNumber.VAL_HASH));
-
-		// system color
-		cont = PropCMContainer.getContInstanceOf(PropCMContainer.VAL_SYSTEM_COLOR);
-		cont.appendChild(IValID.V_ACTIVEBORDER);
-		cont.appendChild(IValID.V_ACTIVECAPTION);
-		cont.appendChild(IValID.V_APPWORKSPACE);
-		cont.appendChild(IValID.V_BACKGROUND);
-		cont.appendChild(IValID.V_BUTTONFACE);
-		cont.appendChild(IValID.V_BUTTONHIGHLIGHT);
-		cont.appendChild(IValID.V_BUTTONSHADOW);
-		cont.appendChild(IValID.V_BUTTONTEXT);
-		cont.appendChild(IValID.V_CAPTIONTEXT);
-		cont.appendChild(IValID.V_GRAYTEXT);
-		cont.appendChild(IValID.V_HIGHLIGHT);
-		cont.appendChild(IValID.V_HIGHLIGHTTEXT);
-		cont.appendChild(IValID.V_INACTIVEBORDER);
-		cont.appendChild(IValID.V_INACTIVECAPTION);
-		cont.appendChild(IValID.V_INACTIVECAPTIONTEXT);
-		cont.appendChild(IValID.V_INFOBACKGROUND);
-		cont.appendChild(IValID.V_INFOTEXT);
-		cont.appendChild(IValID.V_MENU);
-		cont.appendChild(IValID.V_MENUTEXT);
-		cont.appendChild(IValID.V_SCROLLBAR);
-		cont.appendChild(IValID.V_THREEDDARKSHADOW);
-		cont.appendChild(IValID.V_THREEDFACE);
-		cont.appendChild(IValID.V_THREEDHIGHLIGHT);
-		cont.appendChild(IValID.V_THREEDLIGHTSHADOW);
-		cont.appendChild(IValID.V_THREEDSHADOW);
-		cont.appendChild(IValID.V_WINDOW);
-		cont.appendChild(IValID.V_WINDOWFRAME);
-		cont.appendChild(IValID.V_WINDOWTEXT);
-
-		// generic-family
-		cont = PropCMContainer.getContInstanceOf(PropCMContainer.VAL_GENERIC_FAMILY);
-		cont.appendChild(IValID.V_SERIF);
-		cont.appendChild(IValID.V_SANS_SERIF);
-		cont.appendChild(IValID.V_CURSIVE);
-		cont.appendChild(IValID.V_FANTASY);
-		cont.appendChild(IValID.V_MONOSPACE);
-
-		// generic-voice
-		cont = PropCMContainer.getContInstanceOf(PropCMContainer.VAL_GENERIC_VOICE);
-		cont.appendChild(IValID.V_MALE);
-		cont.appendChild(IValID.V_FEMALE);
-		cont.appendChild(IValID.V_CHILD);
-
-		// margin-width
-		cont = PropCMContainer.getContInstanceOf(PropCMContainer.VAL_MARGIN_WIDTH);
-		cont.appendChild(PropCMNumber.getInstanceOf(PropCMNumber.VAL_LENGTH));
-		cont.appendChild(PropCMNumber.getInstanceOf(PropCMNumber.VAL_PERCENTAGE));
-		cont.appendChild(IValID.V_AUTO);
-
-		// padding-width
-		cont = PropCMContainer.getContInstanceOf(PropCMContainer.VAL_PADDING_WIDTH);
-		cont.appendChild(PropCMNumber.getInstanceOf(PropCMNumber.VAL_LENGTH));
-		cont.appendChild(PropCMNumber.getInstanceOf(PropCMNumber.VAL_PERCENTAGE));
-
-		// relative-size
-		cont = PropCMContainer.getContInstanceOf(PropCMContainer.VAL_RELATIVE_SIZE);
-		cont.appendChild(IValID.V_SMALLER);
-		cont.appendChild(IValID.V_LARGER);
-
-		LOADING = 2;
-	}
-
-	/**
-	 * 
-	 */
-	protected static boolean isLoading() {
-		return LOADING == 1;
-	}
-
-	/**
-	 * 
-	 */
-	protected static boolean isNeedInitialize() {
-		return LOADING == 0;
-	}
-
-	/**
-	 * 
-	 */
-	public String toString() {
-		return getName();
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/contentmodel/PropCMNumber.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/contentmodel/PropCMNumber.java
deleted file mode 100644
index 2fcccb0..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/contentmodel/PropCMNumber.java
+++ /dev/null
@@ -1,219 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this 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.core.internal.contentmodel;
-
-
-
-import java.util.Collection;
-import java.util.HashSet;
-import java.util.Hashtable;
-import java.util.Iterator;
-import java.util.Set;
-import java.util.Vector;
-
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSPrimitiveValue;
-import org.w3c.dom.css.CSSPrimitiveValue;
-
-
-/**
- * 
- */
-public class PropCMNumber extends PropCMNode {
-
-	private static java.util.Hashtable instances = null;
-	public final static java.lang.String VAL_ANGLE = "angle";//$NON-NLS-1$
-	public final static java.lang.String VAL_FREQUENCY = "frequency";//$NON-NLS-1$
-	public final static java.lang.String VAL_INTEGER = "integer";//$NON-NLS-1$
-	public final static java.lang.String VAL_LENGTH = "length";//$NON-NLS-1$
-	public final static java.lang.String VAL_PERCENTAGE = "percentage";//$NON-NLS-1$
-	public final static java.lang.String VAL_TIME = "time";//$NON-NLS-1$
-	public final static java.lang.String VAL_HASH = "hash"; //$NON-NLS-1$
-	public final static java.lang.String VAL_NUM = "number";//$NON-NLS-1$
-	public final static String DIM_CM = "cm";//$NON-NLS-1$
-	public final static String DIM_DEG = "deg";//$NON-NLS-1$
-	public final static String DIM_EMS = "em";//$NON-NLS-1$
-	public final static String DIM_EXS = "ex";//$NON-NLS-1$
-	public final static String DIM_GRAD = "grad";//$NON-NLS-1$
-	public final static String DIM_HASH = "#";//$NON-NLS-1$
-	public final static String DIM_HZ = "Hz";//$NON-NLS-1$
-	public final static String DIM_IN = "in";//$NON-NLS-1$
-	public final static String DIM_INTEGER = "INTEGER";//$NON-NLS-1$
-	public final static String DIM_KHZ = "kHz";//$NON-NLS-1$
-	public final static String DIM_MM = "mm";//$NON-NLS-1$
-	public final static String DIM_MS = "ms";//$NON-NLS-1$
-	public final static String DIM_NUMBER = "NUMBER";//$NON-NLS-1$
-	public final static String DIM_PC = "pc";//$NON-NLS-1$
-	public final static String DIM_PERCENTAGE = "%";//$NON-NLS-1$
-	public final static String DIM_PT = "pt";//$NON-NLS-1$
-	public final static String DIM_PX = "px";//$NON-NLS-1$
-	public final static String DIM_RAD = "rad";//$NON-NLS-1$
-	public final static String DIM_S = "s";//$NON-NLS-1$
-	private java.util.Vector fDims = new Vector();
-
-	/**
-	 * 
-	 */
-	protected PropCMNumber(String name) {
-		super(name);
-	}
-
-	/**
-	 * 
-	 */
-	public static String getDimension(short primitiveType) {
-		switch (primitiveType) {
-			case CSSPrimitiveValue.CSS_CM :
-				return DIM_CM;
-			case CSSPrimitiveValue.CSS_DEG :
-				return DIM_DEG;
-			case CSSPrimitiveValue.CSS_EMS :
-				return DIM_EMS;
-			case CSSPrimitiveValue.CSS_EXS :
-				return DIM_EXS;
-			case CSSPrimitiveValue.CSS_GRAD :
-				return DIM_GRAD;
-			case ICSSPrimitiveValue.CSS_HASH :
-				return DIM_HASH; // prefix dimension ....
-			case CSSPrimitiveValue.CSS_HZ :
-				return DIM_HZ;
-			case CSSPrimitiveValue.CSS_IN :
-				return DIM_IN;
-			case ICSSPrimitiveValue.CSS_INTEGER :
-				return "";//$NON-NLS-1$
-			case CSSPrimitiveValue.CSS_KHZ :
-				return DIM_KHZ;
-			case CSSPrimitiveValue.CSS_MM :
-				return DIM_MM;
-			case CSSPrimitiveValue.CSS_MS :
-				return DIM_MS;
-			case CSSPrimitiveValue.CSS_NUMBER :
-				return "";//$NON-NLS-1$
-			case CSSPrimitiveValue.CSS_PC :
-				return DIM_PC;
-			case CSSPrimitiveValue.CSS_PERCENTAGE :
-				return DIM_PERCENTAGE;
-			case CSSPrimitiveValue.CSS_PT :
-				return DIM_PT;
-			case CSSPrimitiveValue.CSS_PX :
-				return DIM_PX;
-			case CSSPrimitiveValue.CSS_RAD :
-				return DIM_RAD;
-			case CSSPrimitiveValue.CSS_S :
-				return DIM_S;
-		}
-
-		return null;
-	}
-
-	/**
-	 * 
-	 */
-	public Set getDimensions() {
-		HashSet vals = new HashSet();
-		Iterator it = fDims.iterator();
-		while (it.hasNext()) {
-			vals.add(it.next());
-		}
-
-		return vals;
-	}
-
-	/**
-	 * 
-	 */
-	void getIdentifiers(Set indents) {
-	}
-
-	/**
-	 * 
-	 */
-	static public PropCMNumber getInstanceOf(String name) {
-		if (name == null)
-			return null;
-
-		// initialize
-		if (instances == null)
-			instances = new Hashtable(20);
-
-		// Initialize of DB
-		if (isNeedInitialize())
-			PropCMNode.initPropertyCM();
-
-		// query
-		Object node = instances.get(name);
-		if (node != null)
-			return (PropCMNumber) node;
-
-		// register
-		if (PropCMNode.isLoading()) {
-			node = new PropCMNumber(name);
-			instances.put(name, node);
-		}
-
-		return (PropCMNumber) node;
-	}
-
-	/**
-	 * 
-	 */
-	public short getType() {
-		return VAL_NUMBER;
-	}
-
-	/**
-	 * 
-	 */
-	void getValues(Collection values) {
-		if (values != null && !values.contains(this))
-			values.add(this);
-	}
-
-	/**
-	 * 
-	 */
-	static void initNumberCMDim() {
-		PropCMNumber num = getInstanceOf(VAL_ANGLE);
-		num.fDims.add(DIM_DEG);
-		num.fDims.add(DIM_GRAD);
-		num.fDims.add(DIM_RAD);
-
-		num = getInstanceOf(VAL_FREQUENCY);
-		num.fDims.add(DIM_HZ);
-		num.fDims.add(DIM_KHZ);
-
-		num = getInstanceOf(VAL_HASH);
-		num.fDims.add(DIM_HASH);
-
-		// num = getInstanceOf(VAL_INTEGER);
-		// num.fDims.add(DIM_INTEGER);
-
-		num = getInstanceOf(VAL_LENGTH);
-		num.fDims.add(DIM_CM);
-		num.fDims.add(DIM_EMS);
-		num.fDims.add(DIM_EXS);
-		num.fDims.add(DIM_IN);
-		num.fDims.add(DIM_MM);
-		num.fDims.add(DIM_PC);
-		num.fDims.add(DIM_PT);
-		num.fDims.add(DIM_PX);
-
-		// num = getInstanceOf(VAL_NUMBER);
-		// num.fDims.add(DIM_NUMBER);
-
-		num = getInstanceOf(VAL_PERCENTAGE);
-		num.fDims.add(DIM_PERCENTAGE);
-
-		num = getInstanceOf(VAL_TIME);
-		num.fDims.add(DIM_MS);
-		num.fDims.add(DIM_S);
-
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/contentmodel/PropCMProperty.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/contentmodel/PropCMProperty.java
deleted file mode 100644
index bbab38f..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/contentmodel/PropCMProperty.java
+++ /dev/null
@@ -1,417 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this 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.core.internal.contentmodel;
-
-
-
-import java.util.ArrayList;
-import java.util.Arrays;
-import java.util.Collection;
-import java.util.Enumeration;
-import java.util.HashSet;
-import java.util.Hashtable;
-import java.util.Iterator;
-import java.util.List;
-import java.util.Vector;
-
-/**
- * 
- */
-public class PropCMProperty extends PropCMContainer {
-
-	// static fields
-	private static java.util.Hashtable instances = null;
-	private static java.util.Hashtable cachedIdMap = null;
-	public final static String P_AZIMUTH = "azimuth";//$NON-NLS-1$
-	public final static String P_BG = "background";//$NON-NLS-1$
-	public final static String P_BG_ATTACHMENT = "background-attachment";//$NON-NLS-1$
-	public final static String P_BG_COLOR = "background-color";//$NON-NLS-1$
-	public final static String P_BG_IMAGE = "background-image";//$NON-NLS-1$
-	public final static String P_BG_POSITION = "background-position";//$NON-NLS-1$
-	public final static String P_BG_REPEAT = "background-repeat";//$NON-NLS-1$
-	public final static String P_BORDER = "border";//$NON-NLS-1$
-	public final static String P_BORDER_COLLAPSE = "border-collapse";//$NON-NLS-1$
-	public final static String P_BORDER_COLOR = "border-color";//$NON-NLS-1$
-	public final static String P_BORDER_SPACING = "border-spacing";//$NON-NLS-1$
-	public final static String P_BORDER_STYLE = "border-style";//$NON-NLS-1$
-	public final static String P_BORDER_TOP = "border-top";//$NON-NLS-1$
-	public final static String P_BORDER_RIGHT = "border-right";//$NON-NLS-1$
-	public final static String P_BORDER_BOTTOM = "border-bottom";//$NON-NLS-1$
-	public final static String P_BORDER_LEFT = "border-left";//$NON-NLS-1$
-	public final static String P_BORDER_TOP_COLOR = "border-top-color";//$NON-NLS-1$
-	public final static String P_BORDER_RIGHT_COLOR = "border-right-color";//$NON-NLS-1$
-	public final static String P_BORDER_BOTTOM_COLOR = "border-bottom-color";//$NON-NLS-1$
-	public final static String P_BORDER_LEFT_COLOR = "border-left-color";//$NON-NLS-1$
-	public final static String P_BORDER_TOP_STYLE = "border-top-style";//$NON-NLS-1$
-	public final static String P_BORDER_RIGHT_STYLE = "border-right-style";//$NON-NLS-1$
-	public final static String P_BORDER_BOTTOM_STYLE = "border-bottom-style";//$NON-NLS-1$
-	public final static String P_BORDER_LEFT_STYLE = "border-left-style";//$NON-NLS-1$
-	public final static String P_BORDER_TOP_WIDTH = "border-top-width";//$NON-NLS-1$
-	public final static String P_BORDER_RIGHT_WIDTH = "border-right-width";//$NON-NLS-1$
-	public final static String P_BORDER_BOTTOM_WIDTH = "border-bottom-width";//$NON-NLS-1$
-	public final static String P_BORDER_LEFT_WIDTH = "border-left-width";//$NON-NLS-1$
-	public final static String P_BORDER_WIDTH = "border-width";//$NON-NLS-1$
-	public final static String P_BOTTOM = "bottom";//$NON-NLS-1$
-	public final static String P_CAPTION_SIDE = "caption-side";//$NON-NLS-1$
-	public final static String P_CLEAR = "clear";//$NON-NLS-1$
-	public final static String P_CLIP = "clip";//$NON-NLS-1$
-	public final static String P_COLOR = "color";//$NON-NLS-1$
-	public final static String P_CONTENT = "content";//$NON-NLS-1$
-	public final static String P_COUNTER_INCREMENT = "counter-increment";//$NON-NLS-1$
-	public final static String P_COUNTER_RESET = "counter-reset";//$NON-NLS-1$
-	public final static String P_CUE = "cue";//$NON-NLS-1$
-	public final static String P_CUE_AFTER = "cue-after";//$NON-NLS-1$
-	public final static String P_CUE_BEFORE = "cue-before";//$NON-NLS-1$
-	public final static String P_CURSOR = "cursor";//$NON-NLS-1$
-	public final static String P_DIRECTION = "direction";//$NON-NLS-1$
-	public final static String P_DISPLAY = "display";//$NON-NLS-1$
-	public final static String P_ELEVATION = "elevation";//$NON-NLS-1$
-	public final static String P_EMPTY_CELLS = "empty-cells";//$NON-NLS-1$
-	public final static String P_FLOAT = "float";//$NON-NLS-1$
-	public final static String P_FONT = "font";//$NON-NLS-1$
-	public final static String P_FONT_FAMILY = "font-family";//$NON-NLS-1$
-	public final static String P_FONT_SIZE = "font-size";//$NON-NLS-1$
-	public final static String P_FONT_SIZE_ADJUST = "font-size-adjust";//$NON-NLS-1$
-	public final static String P_FONT_STRETCH = "font-stretch";//$NON-NLS-1$
-	public final static String P_FONT_STYLE = "font-style";//$NON-NLS-1$
-	public final static String P_FONT_VARIANT = "font-variant";//$NON-NLS-1$
-	public final static String P_FONT_WEIGHT = "font-weight";//$NON-NLS-1$
-	public final static String P_HEIGHT = "height";//$NON-NLS-1$
-	public final static String P_LEFT = "left";//$NON-NLS-1$
-	public final static String P_LETTER_SPACING = "letter-spacing";//$NON-NLS-1$
-	public final static String P_LINE_HEIGHT = "line-height";//$NON-NLS-1$
-	public final static String P_LIST_STYLE = "list-style";//$NON-NLS-1$
-	public final static String P_LIST_STYLE_IMAGE = "list-style-image";//$NON-NLS-1$
-	public final static String P_LIST_STYLE_POSITION = "list-style-position";//$NON-NLS-1$
-	public final static String P_LIST_STYLE_TYPE = "list-style-type";//$NON-NLS-1$
-	public final static String P_MARGIN = "margin";//$NON-NLS-1$
-	public final static String P_MARGIN_TOP = "margin-top";//$NON-NLS-1$
-	public final static String P_MARGIN_RIGHT = "margin-right";//$NON-NLS-1$
-	public final static String P_MARGIN_BOTTOM = "margin-bottom";//$NON-NLS-1$
-	public final static String P_MARGIN_LEFT = "margin-left";//$NON-NLS-1$
-	public final static String P_MARKER_OFFSET = "marker-offset";//$NON-NLS-1$
-	public final static String P_MARKS = "marks";//$NON-NLS-1$
-	public final static String P_MAX_HEIGHT = "max-height";//$NON-NLS-1$
-	public final static String P_MAX_WIDTH = "max-width";//$NON-NLS-1$
-	public final static String P_MIN_HEIGHT = "min-height";//$NON-NLS-1$
-	public final static String P_MIN_WIDTH = "min-width";//$NON-NLS-1$
-	public final static String P_ORPHANS = "orphans";//$NON-NLS-1$
-	public final static String P_OUTLINE = "outline";//$NON-NLS-1$
-	public final static String P_OUTLINE_COLOR = "outline-color";//$NON-NLS-1$
-	public final static String P_OUTLINE_STYLE = "outline-style";//$NON-NLS-1$
-	public final static String P_OUTLINE_WIDTH = "outline-width";//$NON-NLS-1$
-	public final static String P_OVERFLOW = "overflow";//$NON-NLS-1$
-	public final static String P_PADDING = "padding";//$NON-NLS-1$
-	public final static String P_PADDING_TOP = "padding-top";//$NON-NLS-1$
-	public final static String P_PADDING_RIGHT = "padding-right";//$NON-NLS-1$
-	public final static String P_PADDING_BOTTOM = "padding-bottom";//$NON-NLS-1$
-	public final static String P_PADDING_LEFT = "padding-left";//$NON-NLS-1$
-	public final static String P_PAGE = "page";//$NON-NLS-1$
-	public final static String P_PAGE_BREAK_AFTER = "page-break-after";//$NON-NLS-1$
-	public final static String P_PAGE_BREAK_BEFORE = "page-break-before";//$NON-NLS-1$
-	public final static String P_PAGE_BREAK_INSIDE = "page-break-inside";//$NON-NLS-1$
-	public final static String P_PAUSE = "pause";//$NON-NLS-1$
-	public final static String P_PAUSE_AFTER = "pause-after";//$NON-NLS-1$
-	public final static String P_PAUSE_BEFORE = "pause-before";//$NON-NLS-1$
-	public final static String P_PITCH = "pitch";//$NON-NLS-1$
-	public final static String P_PITCH_RANGE = "pitch-range";//$NON-NLS-1$
-	public final static String P_PLAY_DURING = "play-during";//$NON-NLS-1$
-	public final static String P_POSITION = "position";//$NON-NLS-1$
-	public final static String P_QUOTES = "quotes";//$NON-NLS-1$
-	public final static String P_RICHNESS = "richness";//$NON-NLS-1$
-	public final static String P_RIGHT = "right";//$NON-NLS-1$
-	public final static String P_SIZE = "size";//$NON-NLS-1$
-	public final static String P_SPEAK = "speak";//$NON-NLS-1$
-	public final static String P_SPEAK_HEADER = "speak-header";//$NON-NLS-1$
-	public final static String P_SPEAK_NUMERAL = "speak-numeral";//$NON-NLS-1$
-	public final static String P_SPEAK_PUNCTUATION = "speak-punctuation";//$NON-NLS-1$
-	public final static String P_SPEECH_RATE = "speech-rate";//$NON-NLS-1$
-	public final static String P_STRESS = "stress";//$NON-NLS-1$
-	public final static String P_TABLE_LAYOUT = "table-layout";//$NON-NLS-1$
-	public final static String P_TEXT_ALIGN = "text-align";//$NON-NLS-1$
-	public final static String P_TEXT_DECORATION = "text-decoration";//$NON-NLS-1$
-	public final static String P_TEXT_INDENT = "text-indent";//$NON-NLS-1$
-	public final static String P_TEXT_SHADOW = "text-shadow";//$NON-NLS-1$
-	public final static String P_TEXT_TRANSFORM = "text-transform";//$NON-NLS-1$
-	public final static String P_TOP = "top";//$NON-NLS-1$
-	public final static String P_UNICODE_BIDI = "unicode-bidi";//$NON-NLS-1$
-	public final static String P_VERTICAL_ALIGN = "vertical-align";//$NON-NLS-1$
-	public final static String P_VISIBILITY = "visibility";//$NON-NLS-1$
-	public final static String P_VOICE_FAMILY = "voice-family";//$NON-NLS-1$
-	public final static String P_VOLUME = "volume";//$NON-NLS-1$
-	public final static String P_WHITE_SPACE = "white-space";//$NON-NLS-1$
-	public final static String P_WIDOWS = "widows";//$NON-NLS-1$
-	public final static String P_WIDTH = "width";//$NON-NLS-1$
-	public final static String P_WORD_SPACING = "word-spacing";//$NON-NLS-1$
-	public final static String P_Z_INDEX = "z-index";//$NON-NLS-1$
-	// instance fields
-	private int fMinValueCount = 1;
-	private int fMaxValueCount = 1;
-	private Object[] mediaGroups;
-	protected List containers;
-
-	/**
-	 * 
-	 */
-	protected PropCMProperty(String name) {
-		super(name);
-	}
-
-	/**
-	 * 
-	 */
-	Object appendChild(Object node) {
-		Object ret = super.appendChild(node);
-		if (node instanceof PropCMProperty) {
-			// register shorthand container
-			PropCMProperty cm = (PropCMProperty) node;
-			if (cm.containers == null)
-				cm.containers = new Vector();
-			if (!cm.containers.contains(this))
-				cm.containers.add(this);
-		}
-		return ret;
-	}
-
-	/**
-	 * 
-	 */
-	void appendMediaGroup(Object mg) {
-		if (mediaGroups == null)
-			mediaGroups = new Object[1];
-		else {
-			Object[] oldMediaGroups = mediaGroups;
-			mediaGroups = new Object[oldMediaGroups.length + 1];
-			System.arraycopy(oldMediaGroups, 0, mediaGroups, 0, oldMediaGroups.length);
-		}
-		mediaGroups[mediaGroups.length - 1] = mg;
-	}
-
-	/**
-	 * 
-	 */
-	public static PropCMProperty getInstanceOf(String name) {
-		// initialize
-		if (instances == null)
-			instances = new Hashtable(200);
-
-		// Initialize of DB
-		if (isNeedInitialize())
-			PropCMNode.initPropertyCM();
-
-		// query
-		Object node = instances.get(name);
-		if (node != null)
-			return (PropCMProperty) node;
-
-		// register
-		if (PropCMNode.isLoading()) {
-			node = new PropCMProperty(name);
-			instances.put(name, node);
-		}
-
-		return (PropCMProperty) node;
-	}
-
-	/**
-	 * 
-	 */
-	public int getMaxValueCount() {
-		return fMaxValueCount;
-	}
-
-	/**
-	 * 
-	 */
-	public List getMediaGroups() {
-		if (mediaGroups != null)
-			return Arrays.asList(mediaGroups);
-		else
-			return new ArrayList();
-	}
-
-	/**
-	 * 
-	 */
-	public int getMinValueCount() {
-		return fMinValueCount;
-	}
-
-	/**
-	 * 
-	 */
-	public static Enumeration getNameEnum() {
-		// Initialize of DB
-		if (isNeedInitialize())
-			PropCMNode.initPropertyCM();
-
-		return instances.keys();
-	}
-
-	/**
-	 * 
-	 */
-	public static Enumeration getPropertyEnum() {
-		// Initialize of DB
-		if (isNeedInitialize())
-			PropCMNode.initPropertyCM();
-
-		return instances.elements();
-	}
-
-	/**
-	 * 
-	 */
-	public int getShorthandContainerCount() {
-		return (containers == null) ? 0 : containers.size();
-	}
-
-	/**
-	 * 
-	 */
-	public short getType() {
-		return VAL_PROPERTY;
-	}
-
-	/**
-	 * 
-	 */
-	public boolean isShorthand() {
-		int nChild = getNumChild();
-		for (int i = 0; i < nChild; i++) {
-			Object obj = getChildAt(i);
-			if (obj instanceof PropCMProperty && !(obj instanceof PropCMSubProperty))
-				return true;
-		}
-		return false;
-	}
-
-	/**
-	 * 
-	 */
-	public static Vector names() {
-		// Initialize of DB
-		if (isNeedInitialize())
-			PropCMNode.initPropertyCM();
-
-		return new Vector(instances.keySet());
-	}
-
-	/**
-	 * 
-	 */
-	public static List names(Object mediaGroup) {
-		if (mediaGroup == null)
-			return names();
-
-		// Initialize of DB
-		if (isNeedInitialize())
-			PropCMNode.initPropertyCM();
-
-		Vector properties = new Vector();
-
-		Iterator it = instances.values().iterator();
-		while (it.hasNext()) {
-			PropCMProperty prop = (PropCMProperty) it.next();
-			if (prop.getMediaGroups().contains(mediaGroup))
-				properties.add(prop.getName());
-		}
-
-		return properties;
-	}
-
-	/**
-	 * If identifier is null, get all properties
-	 */
-	public static Vector propertiesFor(String identifier, boolean shorthands) {
-		// Initialize of DB
-		if (isNeedInitialize())
-			PropCMNode.initPropertyCM();
-
-		// if identifier is null, get all properties
-		if (identifier == null)
-			return new Vector(instances.values());
-
-		if (cachedIdMap == null) {
-			// start cacheing
-			cachedIdMap = new Hashtable();
-		}
-		else {
-			// search cached
-			Object ret = cachedIdMap.get(identifier + String.valueOf(shorthands));
-			if (ret != null)
-				return new Vector((Collection) ret);
-		}
-
-		// create
-		Enumeration propertyEnum = getPropertyEnum();
-		HashSet set = new HashSet();
-		while (propertyEnum.hasMoreElements()) {
-			PropCMProperty prop = (PropCMProperty) propertyEnum.nextElement();
-			if (!shorthands && prop.isShorthand())
-				continue;
-			if (prop.canHave(identifier))
-				set.add(prop);
-		}
-
-		// cache
-		cachedIdMap.put(identifier + String.valueOf(shorthands), set);
-
-		return new Vector(set);
-	}
-
-	/**
-	 * 
-	 */
-	protected void setMaxValueCount(int newMaxValueCount) {
-		fMaxValueCount = newMaxValueCount;
-	}
-
-	/**
-	 * 
-	 */
-	protected void setMinValueCount(int newMinValueCount) {
-		fMinValueCount = newMinValueCount;
-	}
-
-	/**
-	 * 
-	 */
-	public PropCMProperty shorthandContainerAt(int i) {
-		if (containers == null)
-			return null;
-		if (i < 0 || containers.size() <= i)
-			return null;
-		return (PropCMProperty) containers.get(i);
-	}
-
-	/**
-	 * 
-	 */
-	public Iterator shorthandContainerIterator() {
-		if (containers == null) {
-			return new Iterator() {
-				public boolean hasNext() {
-					return false;
-				}
-
-				public Object next() {
-					return null;
-				}
-
-				public void remove() {
-				}
-			};
-		}
-		else
-			return containers.iterator();
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/contentmodel/PropCMString.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/contentmodel/PropCMString.java
deleted file mode 100644
index 61b30c3..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/contentmodel/PropCMString.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.wst.css.core.internal.contentmodel;
-
-
-
-import java.util.Collection;
-import java.util.Hashtable;
-import java.util.Set;
-
-/**
- * 
- */
-public class PropCMString extends PropCMNode {
-
-	private static java.util.Hashtable instances = null;
-	public final static java.lang.String VAL_FONT = "font";//$NON-NLS-1$
-	public final static java.lang.String VAL_COUNTER_ID = "counterId";//$NON-NLS-1$
-	public final static java.lang.String VAL_PAGE_ID = "pageId";//$NON-NLS-1$
-	public final static java.lang.String VAL_VOICE = "voice";//$NON-NLS-1$
-	public final static java.lang.String VAL_ANY = "any"; //$NON-NLS-1$
-
-	/**
-	 * 
-	 */
-	protected PropCMString(String name) {
-		super(name);
-	}
-
-	/**
-	 * 
-	 */
-	void getIdentifiers(Set indents) {
-	}
-
-	/**
-	 * 
-	 */
-	static public PropCMString getInstanceOf(String name) {
-		if (name == null)
-			return null;
-
-		// initialize
-		if (instances == null)
-			instances = new Hashtable(10);
-
-		// Initialize of DB
-		if (isNeedInitialize())
-			PropCMNode.initPropertyCM();
-
-		// query
-		Object node = instances.get(name);
-		if (node != null)
-			return (PropCMString) node;
-
-		// register
-		node = new PropCMString(name);
-		instances.put(name, node);
-
-		return (PropCMString) node;
-	}
-
-	/**
-	 * 
-	 */
-	public short getType() {
-		return VAL_STRING;
-	}
-
-	/**
-	 * 
-	 */
-	void getValues(Collection values) {
-		if (values != null && !values.contains(this))
-			values.add(this);
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/contentmodel/PropCMSubProperty.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/contentmodel/PropCMSubProperty.java
deleted file mode 100644
index 81ebb37..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/contentmodel/PropCMSubProperty.java
+++ /dev/null
@@ -1,122 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this 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.core.internal.contentmodel;
-
-
-
-import java.util.Enumeration;
-import java.util.Hashtable;
-import java.util.Vector;
-
-/**
- * 
- */
-public class PropCMSubProperty extends PropCMProperty {
-
-	// static fields
-	private static java.util.Hashtable instances = null;
-	public final static String PSUB_BG_POSITION_X = "background-positionH";//$NON-NLS-1$
-	public final static String PSUB_BG_POSITION_Y = "background-positionV";//$NON-NLS-1$
-	public final static String PSUB_CLIP_TOP = "clipTop";//$NON-NLS-1$
-	public final static String PSUB_CLIP_RIGHT = "clipRight";//$NON-NLS-1$
-	public final static String PSUB_CLIP_BOTTOM = "clipBottom";//$NON-NLS-1$
-	public final static String PSUB_CLIP_LEFT = "clipLeft";//$NON-NLS-1$
-
-	/**
-	 * 
-	 */
-	protected PropCMSubProperty(String name) {
-		super(name);
-	}
-
-	/**
-	 * 
-	 */
-	public PropCMProperty getContainer() {
-		return shorthandContainerAt(0);
-	}
-
-	/**
-	 * 
-	 */
-	public static PropCMProperty getInstanceOf(String name) {
-		// initialize
-		if (instances == null)
-			instances = new Hashtable(10);
-
-		// Initialize of DB
-		if (isNeedInitialize())
-			PropCMNode.initPropertyCM();
-
-		// query
-		Object node = instances.get(name);
-		if (node != null)
-			return (PropCMProperty) node;
-
-		// register
-		if (PropCMNode.isLoading()) {
-			node = new PropCMSubProperty(name);
-			instances.put(name, node);
-		}
-
-		return (PropCMProperty) node;
-	}
-
-	/**
-	 * 
-	 */
-	public static Enumeration getNameEnum() {
-		// Initialize of DB
-		if (isNeedInitialize())
-			PropCMNode.initPropertyCM();
-
-		return instances.keys();
-	}
-
-	/**
-	 * 
-	 */
-	public static Enumeration getPropertyEnum() {
-		// Initialize of DB
-		if (isNeedInitialize())
-			PropCMNode.initPropertyCM();
-
-		return instances.elements();
-	}
-
-	/**
-	 * 
-	 */
-	public short getType() {
-		return VAL_SUBPROPERTY;
-	}
-
-	/**
-	 * 
-	 */
-	public static Vector names() {
-		// Initialize of DB
-		if (isNeedInitialize())
-			PropCMNode.initPropertyCM();
-
-		return new Vector(instances.keySet());
-	}
-
-	/**
-	 * 
-	 */
-	public void setContainer(PropCMProperty prop) {
-		if (containers == null)
-			containers = new Vector();
-		containers.clear();
-		containers.add(prop);
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/contentmodel/PropCMURange.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/contentmodel/PropCMURange.java
deleted file mode 100644
index 3375715..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/contentmodel/PropCMURange.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.wst.css.core.internal.contentmodel;
-
-
-
-import java.util.Collection;
-import java.util.Hashtable;
-import java.util.Set;
-
-/**
- * 
- */
-public class PropCMURange extends PropCMNode {
-
-	private static java.util.Hashtable instances = null;
-	public final static String VAL_URANGE = "urange";//$NON-NLS-1$
-
-	/**
-	 * 
-	 */
-	protected PropCMURange(String name) {
-		super(name);
-	}
-
-	/**
-	 * 
-	 */
-	void getIdentifiers(Set indents) {
-	}
-
-	/**
-	 * 
-	 */
-	public static PropCMURange getInstanceOf(String name) {
-		if (name == null)
-			return null;
-
-		// initialize
-		if (instances == null)
-			instances = new Hashtable(10);
-
-		// Initialize of DB
-		if (isNeedInitialize())
-			PropCMNode.initPropertyCM();
-
-		// query
-		Object node = instances.get(name);
-		if (node != null)
-			return (PropCMURange) node;
-
-		// register
-		node = new PropCMURange(name);
-		instances.put(name, node);
-
-		return (PropCMURange) node;
-	}
-
-	/**
-	 * 
-	 */
-	public short getType() {
-		return VAL_UNICODE_RANGE;
-	}
-
-	/**
-	 * 
-	 */
-	void getValues(Collection values) {
-		if (values != null && !values.contains(this))
-			values.add(this);
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/contentmodel/PropCMUtil.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/contentmodel/PropCMUtil.java
deleted file mode 100644
index 816ba37..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/contentmodel/PropCMUtil.java
+++ /dev/null
@@ -1,48 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this 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.core.internal.contentmodel;
-
-
-
-import java.util.Collection;
-import java.util.Iterator;
-
-/**
- * 
- */
-public class PropCMUtil {
-
-	/**
-	 * 
-	 */
-	public static void minus(Collection src, Collection ref) {
-		Iterator it = ref.iterator();
-		while (it.hasNext()) {
-			Object obj = it.next();
-			if (src.contains(obj))
-				src.remove(obj);
-		}
-		return;
-	}
-
-	/**
-	 * 
-	 */
-	public static void plus(Collection src, Collection ref) {
-		Iterator it = ref.iterator();
-		while (it.hasNext()) {
-			Object obj = it.next();
-			if (!src.contains(obj))
-				src.add(obj);
-		}
-		return;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/contenttype/CSSHeadTokenizer.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/contenttype/CSSHeadTokenizer.java
deleted file mode 100644
index 02da8cf..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/contenttype/CSSHeadTokenizer.java
+++ /dev/null
@@ -1,1355 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.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 1/27/04 6:42 PM */
-
-/*nlsXXX*/
-package org.eclipse.wst.css.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 1/27/04 6:42 PM from the specification file
- * <tt>file:/D:/DevTimeSupport/HeadParsers/CSSHeadTokenizer/CSSHeadTokenizer.jflex</tt>
- */
-public class CSSHeadTokenizer {
-
-	/** 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 QuotedAttributeValue = 6;
-	final public static int CHARSET_RULE = 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, 7, 7};
-
-	/**
-	 * Translates characters to character classes
-	 */
-	final private static String yycmap_packed = "\11\0\1\6\1\11\2\0\1\10\22\0\1\6\1\0\1\36\2\0" + "\1\41\1\0\1\37\7\0\1\40\13\0\1\35\1\12\1\7\1\34" + "\1\13\1\17\1\22\1\0\1\20\1\31\1\25\1\0\1\33\1\21" + "\1\32\2\0\1\16\1\15\1\27\1\30\2\0\1\23\1\24\1\26" + "\3\0\1\14\10\0\1\22\1\0\1\20\1\31\1\25\1\0\1\33" + "\1\21\1\32\2\0\1\16\1\15\1\27\1\30\2\0\1\23\1\24" + "\1\26\3\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";
-
-	/**
-	 * 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;
-
-
-	/** the number of characters up to the start of the matched text */
-	private int yychar;
-
-
-	/**
-	 * 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 = 8000;
-	StringBuffer string = new StringBuffer();
-	// state stack for easier state handling
-	private IntStack fStateStack = new IntStack();
-	private String valueText = null;
-
-
-
-	public CSSHeadTokenizer() {
-		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;
-
-
-		/* the number of characters up to the start of the matched text */
-		yychar = 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 CSSHeadTokenizer(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 CSSHeadTokenizer(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 < 158) {
-			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;
-									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 8 :
-									case 9 :
-										yy_isFinal = true;
-										yy_state = 12;
-										break yy_forNext;
-									case 10 :
-										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 = 8;
-										break yy_forNext;
-								}
-
-							case 2 :
-								switch (yy_input) {
-									case 11 :
-										yy_isFinal = true;
-										yy_state = 15;
-										break yy_forNext;
-									case 21 :
-										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 6 :
-									case 8 :
-									case 9 :
-										yy_isFinal = true;
-										yy_state = 17;
-										break yy_forNext;
-									case 29 :
-										yy_isFinal = true;
-										yy_noLookAhead = true;
-										yy_state = 18;
-										break yy_forNext;
-									default :
-										yy_isFinal = true;
-										yy_noLookAhead = true;
-										yy_state = 8;
-										break yy_forNext;
-								}
-
-							case 4 :
-								switch (yy_input) {
-									case 6 :
-									case 8 :
-										yy_isFinal = true;
-										yy_state = 20;
-										break yy_forNext;
-									case 9 :
-										yy_isFinal = true;
-										yy_state = 21;
-										break yy_forNext;
-									case 30 :
-										yy_isFinal = true;
-										yy_noLookAhead = true;
-										yy_state = 22;
-										break yy_forNext;
-									case 31 :
-										yy_isFinal = true;
-										yy_noLookAhead = true;
-										yy_state = 23;
-										break yy_forNext;
-									default :
-										yy_isFinal = true;
-										yy_noLookAhead = true;
-										yy_state = 19;
-										break yy_forNext;
-								}
-
-							case 5 :
-								switch (yy_input) {
-									case 8 :
-									case 9 :
-									case 10 :
-									case 28 :
-										yy_isFinal = true;
-										yy_noLookAhead = true;
-										yy_state = 25;
-										break yy_forNext;
-									case 11 :
-									case 32 :
-										yy_isFinal = true;
-										yy_state = 26;
-										break yy_forNext;
-									case 29 :
-										yy_isFinal = true;
-										yy_noLookAhead = true;
-										yy_state = 27;
-										break yy_forNext;
-									case 30 :
-										yy_isFinal = true;
-										yy_noLookAhead = true;
-										yy_state = 28;
-										break yy_forNext;
-									default :
-										yy_isFinal = true;
-										yy_noLookAhead = true;
-										yy_state = 24;
-										break yy_forNext;
-								}
-
-							case 6 :
-								switch (yy_input) {
-									case 8 :
-									case 9 :
-									case 10 :
-									case 28 :
-										yy_isFinal = true;
-										yy_noLookAhead = true;
-										yy_state = 25;
-										break yy_forNext;
-									case 32 :
-										yy_isFinal = true;
-										yy_state = 26;
-										break yy_forNext;
-									case 29 :
-										yy_isFinal = true;
-										yy_noLookAhead = true;
-										yy_state = 27;
-										break yy_forNext;
-									case 31 :
-										yy_isFinal = true;
-										yy_noLookAhead = true;
-										yy_state = 28;
-										break yy_forNext;
-									case 33 :
-										yy_isFinal = true;
-										yy_state = 29;
-										break yy_forNext;
-									default :
-										yy_isFinal = true;
-										yy_noLookAhead = true;
-										yy_state = 24;
-										break yy_forNext;
-								}
-
-							case 7 :
-								switch (yy_input) {
-									case 10 :
-									case 28 :
-										yy_isFinal = true;
-										yy_noLookAhead = true;
-										yy_state = 25;
-										break yy_forNext;
-									case 32 :
-										yy_isFinal = true;
-										yy_state = 26;
-										break yy_forNext;
-									case 11 :
-										yy_isFinal = true;
-										yy_state = 29;
-										break yy_forNext;
-									case 6 :
-									case 8 :
-									case 9 :
-										yy_isFinal = true;
-										yy_noLookAhead = true;
-										yy_state = 30;
-										break yy_forNext;
-									case 29 :
-										yy_isFinal = true;
-										yy_noLookAhead = true;
-										yy_state = 31;
-										break yy_forNext;
-									case 30 :
-									case 31 :
-										yy_isFinal = true;
-										yy_noLookAhead = true;
-										yy_state = 32;
-										break yy_forNext;
-									default :
-										yy_isFinal = true;
-										yy_noLookAhead = true;
-										yy_state = 24;
-										break yy_forNext;
-								}
-
-							case 9 :
-								switch (yy_input) {
-									case 2 :
-										yy_isFinal = true;
-										yy_noLookAhead = true;
-										yy_state = 33;
-										break yy_forNext;
-									default :
-										break yy_forAction;
-								}
-
-							case 10 :
-								switch (yy_input) {
-									case 1 :
-										yy_isFinal = true;
-										yy_noLookAhead = true;
-										yy_state = 34;
-										break yy_forNext;
-									default :
-										break yy_forAction;
-								}
-
-							case 11 :
-								switch (yy_input) {
-									case 4 :
-										yy_state = 35;
-										break yy_forNext;
-									default :
-										break yy_forAction;
-								}
-
-							case 12 :
-								switch (yy_input) {
-									case 6 :
-									case 8 :
-									case 9 :
-										yy_state = 36;
-										break yy_forNext;
-									case 10 :
-										yy_state = 37;
-										break yy_forNext;
-									case 15 :
-										yy_state = 38;
-										break yy_forNext;
-									default :
-										break yy_forAction;
-								}
-
-							case 13 :
-								switch (yy_input) {
-									case 11 :
-										yy_state = 39;
-										break yy_forNext;
-									default :
-										break yy_forAction;
-								}
-
-							case 14 :
-								switch (yy_input) {
-									case 16 :
-										yy_state = 40;
-										break yy_forNext;
-									default :
-										break yy_forAction;
-								}
-
-							case 15 :
-								switch (yy_input) {
-									case 28 :
-										yy_isFinal = true;
-										yy_noLookAhead = true;
-										yy_state = 41;
-										break yy_forNext;
-									default :
-										break yy_forAction;
-								}
-
-							case 16 :
-								switch (yy_input) {
-									case 23 :
-										yy_state = 42;
-										break yy_forNext;
-									default :
-										break yy_forAction;
-								}
-
-							case 17 :
-								switch (yy_input) {
-									case 6 :
-									case 8 :
-									case 9 :
-										yy_isFinal = true;
-										yy_state = 17;
-										break yy_forNext;
-									default :
-										break yy_forAction;
-								}
-
-							case 20 :
-								switch (yy_input) {
-									case 6 :
-									case 8 :
-										yy_isFinal = true;
-										yy_state = 20;
-										break yy_forNext;
-									case 9 :
-										yy_state = 43;
-										break yy_forNext;
-									default :
-										yy_isFinal = true;
-										yy_noLookAhead = true;
-										yy_state = 19;
-										break yy_forNext;
-								}
-
-							case 21 :
-								switch (yy_input) {
-									case 6 :
-									case 8 :
-										yy_isFinal = true;
-										yy_state = 20;
-										break yy_forNext;
-									case 9 :
-										yy_state = 43;
-										break yy_forNext;
-									default :
-										yy_isFinal = true;
-										yy_noLookAhead = true;
-										yy_state = 19;
-										break yy_forNext;
-								}
-
-							case 26 :
-								switch (yy_input) {
-									case 28 :
-										yy_isFinal = true;
-										yy_noLookAhead = true;
-										yy_state = 44;
-										break yy_forNext;
-									default :
-										break yy_forAction;
-								}
-
-							case 29 :
-								switch (yy_input) {
-									case 28 :
-										yy_isFinal = true;
-										yy_noLookAhead = true;
-										yy_state = 45;
-										break yy_forNext;
-									default :
-										break yy_forAction;
-								}
-
-							case 35 :
-								switch (yy_input) {
-									case 5 :
-										yy_isFinal = true;
-										yy_noLookAhead = true;
-										yy_state = 46;
-										break yy_forNext;
-									default :
-										break yy_forAction;
-								}
-
-							case 36 :
-								switch (yy_input) {
-									case 6 :
-									case 8 :
-									case 9 :
-										yy_state = 36;
-										break yy_forNext;
-									case 10 :
-										yy_state = 37;
-										break yy_forNext;
-									case 15 :
-										yy_state = 38;
-										break yy_forNext;
-									default :
-										break yy_forAction;
-								}
-
-							case 37 :
-								switch (yy_input) {
-									case 11 :
-										yy_state = 39;
-										break yy_forNext;
-									default :
-										break yy_forAction;
-								}
-
-							case 38 :
-								switch (yy_input) {
-									case 16 :
-										yy_state = 40;
-										break yy_forNext;
-									default :
-										break yy_forAction;
-								}
-
-							case 39 :
-								switch (yy_input) {
-									case 12 :
-										yy_state = 47;
-										break yy_forNext;
-									default :
-										break yy_forAction;
-								}
-
-							case 40 :
-								switch (yy_input) {
-									case 17 :
-										yy_state = 48;
-										break yy_forNext;
-									default :
-										break yy_forAction;
-								}
-
-							case 42 :
-								switch (yy_input) {
-									case 16 :
-										yy_state = 49;
-										break yy_forNext;
-									default :
-										break yy_forAction;
-								}
-
-							case 43 :
-								switch (yy_input) {
-									case 6 :
-									case 8 :
-										yy_isFinal = true;
-										yy_state = 20;
-										break yy_forNext;
-									case 9 :
-										yy_state = 43;
-										break yy_forNext;
-									default :
-										yy_isFinal = true;
-										yy_noLookAhead = true;
-										yy_state = 19;
-										break yy_forNext;
-								}
-
-							case 47 :
-								switch (yy_input) {
-									case 13 :
-										yy_state = 50;
-										break yy_forNext;
-									default :
-										break yy_forAction;
-								}
-
-							case 48 :
-								switch (yy_input) {
-									case 18 :
-										yy_state = 51;
-										break yy_forNext;
-									default :
-										break yy_forAction;
-								}
-
-							case 49 :
-								switch (yy_input) {
-									case 24 :
-										yy_state = 52;
-										break yy_forNext;
-									default :
-										break yy_forAction;
-								}
-
-							case 50 :
-								switch (yy_input) {
-									case 14 :
-										yy_state = 53;
-										break yy_forNext;
-									default :
-										break yy_forAction;
-								}
-
-							case 51 :
-								switch (yy_input) {
-									case 19 :
-										yy_state = 54;
-										break yy_forNext;
-									default :
-										break yy_forAction;
-								}
-
-							case 52 :
-								switch (yy_input) {
-									case 25 :
-										yy_state = 55;
-										break yy_forNext;
-									default :
-										break yy_forAction;
-								}
-
-							case 53 :
-								switch (yy_input) {
-									case 6 :
-									case 8 :
-									case 9 :
-										yy_isFinal = true;
-										yy_state = 56;
-										break yy_forNext;
-									default :
-										break yy_forAction;
-								}
-
-							case 54 :
-								switch (yy_input) {
-									case 20 :
-										yy_state = 57;
-										break yy_forNext;
-									default :
-										break yy_forAction;
-								}
-
-							case 55 :
-								switch (yy_input) {
-									case 26 :
-										yy_state = 58;
-										break yy_forNext;
-									default :
-										break yy_forAction;
-								}
-
-							case 56 :
-								switch (yy_input) {
-									case 6 :
-									case 8 :
-									case 9 :
-										yy_isFinal = true;
-										yy_state = 56;
-										break yy_forNext;
-									default :
-										break yy_forAction;
-								}
-
-							case 57 :
-								switch (yy_input) {
-									case 21 :
-										yy_state = 59;
-										break yy_forNext;
-									default :
-										break yy_forAction;
-								}
-
-							case 58 :
-								switch (yy_input) {
-									case 23 :
-										yy_state = 60;
-										break yy_forNext;
-									default :
-										break yy_forAction;
-								}
-
-							case 59 :
-								switch (yy_input) {
-									case 22 :
-										yy_isFinal = true;
-										yy_noLookAhead = true;
-										yy_state = 61;
-										break yy_forNext;
-									default :
-										break yy_forAction;
-								}
-
-							case 60 :
-								switch (yy_input) {
-									case 27 :
-										yy_state = 62;
-										break yy_forNext;
-									default :
-										break yy_forAction;
-								}
-
-							case 62 :
-								switch (yy_input) {
-									case 6 :
-									case 8 :
-									case 9 :
-										yy_state = 62;
-										break yy_forNext;
-									case 7 :
-										yy_isFinal = true;
-										yy_state = 63;
-										break yy_forNext;
-									default :
-										break yy_forAction;
-								}
-
-							case 63 :
-								switch (yy_input) {
-									case 6 :
-									case 8 :
-									case 9 :
-										yy_isFinal = true;
-										yy_state = 63;
-										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 45 : {
-					yypushback(2);
-					popState();
-					valueText = string.toString();
-					return EncodingParserConstants.InvalidTerminatedStringValue;
-				}
-				case 65 :
-					break;
-				case 25 : {
-					yypushback(1);
-					popState();
-					valueText = string.toString();
-					return EncodingParserConstants.InvalidTerminatedStringValue;
-				}
-				case 66 :
-					break;
-				case 19 :
-				case 20 : {
-					yypushback(1);
-					yybegin(UnDelimitedString);
-					string.setLength(0);
-				}
-				case 67 :
-					break;
-				case 18 : {
-					yybegin(YYINITIAL);
-					hasMore = false;
-					return CSSHeadTokenizerConstants.RuleEnd;
-				}
-				case 68 :
-					break;
-				case 32 : {
-					yypushback(1);
-					popState();
-					valueText = string.toString();
-					return EncodingParserConstants.InvalidTermintatedUnDelimitedStringValue;
-				}
-				case 69 :
-					break;
-				case 44 : {
-					yypushback(2);
-					popState();
-					valueText = string.toString();
-					return EncodingParserConstants.InvalidTerminatedStringValue;
-				}
-				case 70 :
-					break;
-				case 61 : {
-					if (yychar == 0) {
-						yybegin(CHARSET_RULE);
-						return CSSHeadTokenizerConstants.CHARSET_RULE;
-					}
-				}
-				case 71 :
-					break;
-				case 56 : {
-					if (yychar == 0) {
-						yybegin(ST_XMLDecl);
-						return XMLHeadTokenizerConstants.XMLDeclStart;
-					}
-				}
-				case 72 :
-					break;
-				case 8 :
-				case 9 :
-				case 10 :
-				case 11 :
-				case 12 :
-				case 13 :
-				case 14 :
-				case 15 :
-				case 16 :
-				case 21 : {
-					if (yychar > MAX_TO_SCAN) {
-						hasMore = false;
-						return EncodingParserConstants.MAX_CHARS_REACHED;
-					}
-				}
-				case 73 :
-					break;
-				case 41 : {
-					yybegin(YYINITIAL);
-					return XMLHeadTokenizerConstants.XMLDeclEnd;
-				}
-				case 74 :
-					break;
-				case 63 : {
-					pushCurrentState();
-					yybegin(QuotedAttributeValue);
-					return XMLHeadTokenizerConstants.XMLDelEncoding;
-				}
-				case 75 :
-					break;
-				case 3 :
-				case 17 : {
-					pushCurrentState();
-					yybegin(QuotedAttributeValue);
-				}
-				case 76 :
-					break;
-				case 46 : {
-					hasMore = false;
-					return EncodingParserConstants.UTF83ByteBOM;
-				}
-				case 77 :
-					break;
-				case 33 : {
-					hasMore = false;
-					return EncodingParserConstants.UTF16BE;
-				}
-				case 78 :
-					break;
-				case 34 : {
-					hasMore = false;
-					return EncodingParserConstants.UTF16LE;
-				}
-				case 79 :
-					break;
-				case 24 :
-				case 26 :
-				case 29 : {
-					string.append(yytext());
-				}
-				case 80 :
-					break;
-				case 23 : {
-					yybegin(SQ_STRING);
-					string.setLength(0);
-				}
-				case 81 :
-					break;
-				case 22 : {
-					yybegin(DQ_STRING);
-					string.setLength(0);
-				}
-				case 82 :
-					break;
-				case 27 : {
-					yypushback(1);
-					popState();
-					valueText = string.toString();
-					return EncodingParserConstants.InvalidTerminatedStringValue;
-				}
-				case 83 :
-					break;
-				case 28 : {
-					popState();
-					valueText = string.toString();
-					return EncodingParserConstants.StringValue;
-				}
-				case 84 :
-					break;
-				case 30 : {
-					yypushback(1);
-					popState();
-					valueText = string.toString();
-					return EncodingParserConstants.UnDelimitedStringValue;
-				}
-				case 85 :
-					break;
-				case 31 : {
-					yypushback(1);
-					popState();
-					valueText = string.toString();
-					return EncodingParserConstants.UnDelimitedStringValue;
-				}
-				case 86 :
-					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++) {
-			CSSHeadTokenizer scanner = null;
-			try {
-				scanner = new CSSHeadTokenizer(new java.io.FileReader(argv[i]));
-			}
-			catch (java.io.FileNotFoundException e) {
-				System.out.println("File not found : \"" + argv[i] + "\"");
-				System.exit(1);
-			}
-			catch (ArrayIndexOutOfBoundsException e) {
-				System.out.println("Usage : java CSSHeadTokenizer <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);
-			}
-		}
-	}
-
-
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/contenttype/CSSHeadTokenizerConstants.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/contenttype/CSSHeadTokenizerConstants.java
deleted file mode 100644
index 75446c7..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/contenttype/CSSHeadTokenizerConstants.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.css.core.internal.contenttype;
-
-
-public interface CSSHeadTokenizerConstants {
-
-	String RuleEnd = "RuleEnd"; //$NON-NLS-1$
-	String CHARSET_RULE = "CHARSET_RULE"; //$NON-NLS-1$
-
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/contenttype/CSSResourceEncodingDetector.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/contenttype/CSSResourceEncodingDetector.java
deleted file mode 100644
index 1827a89..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/contenttype/CSSResourceEncodingDetector.java
+++ /dev/null
@@ -1,369 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this 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.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.NonContentBasedEncodingRules;
-import org.eclipse.wst.sse.core.internal.encoding.util.ByteReader;
-import org.eclipse.wst.xml.core.internal.contenttype.EncodingParserConstants;
-
-
-
-public class CSSResourceEncodingDetector implements IResourceCharsetDetector {
-	class NullMemento extends EncodingMemento {
-		/**
-		 * 
-		 */
-		public NullMemento() {
-			super();
-			String defaultCharset = NonContentBasedEncodingRules.useDefaultNameRules(null);
-			setJavaCharsetName(defaultCharset);
-			setAppropriateDefault(defaultCharset);
-			setDetectedCharsetName(null);
-		}
-	}
-
-
-	private CSSHeadTokenizer fTokenizer;
-	private EncodingMemento fEncodingMemento;
-	private boolean fHeaderParsed;
-	private Reader fReader;
-
-	/**
-	 * There is no spec defined encoding for CSS, so Null is returned.
-	 */
-	public String getSpecDefaultEncoding() {
-		// should match what's in plugin.xml (or look it up from there).
-		return null;
-	}
-
-	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;
-	}
-
-	/**
-	 * @return Returns the tokenizer.
-	 */
-	private CSSHeadTokenizer getTokenizer() {
-		if (fTokenizer == null) {
-			fTokenizer = new CSSHeadTokenizer();
-		}
-		return fTokenizer;
-	}
-
-	private boolean isLegalString(String valueTokenType) {
-		boolean result = false;
-		if (valueTokenType != null) {
-			result = valueTokenType.equals(EncodingParserConstants.StringValue) || valueTokenType.equals(EncodingParserConstants.UnDelimitedStringValue) || valueTokenType.equals(EncodingParserConstants.InvalidTerminatedStringValue) || valueTokenType.equals(EncodingParserConstants.InvalidTermintatedUnDelimitedStringValue);
-		}
-		return result;
-	}
-
-	private void parseInput() throws IOException {
-		checkInContents();
-		if (fEncodingMemento == null) {
-			checkHeuristics();
-		}
-	}
-
-	private void checkInContents() throws IOException {
-		CSSHeadTokenizer 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 == CSSHeadTokenizerConstants.CHARSET_RULE) {
-				if (tokenizer.hasMoreTokens()) {
-					HeadParserToken valueToken = tokenizer.getNextToken();
-					String valueTokenType = valueToken.getType();
-					if (isLegalString(valueTokenType)) {
-						createEncodingMemento(valueToken.getText(), EncodingMemento.FOUND_ENCODING_IN_CONTENT);
-
-					}
-				}
-			}
-
-		}
-		while (tokenizer.hasMoreTokens());
-	}
-
-	/**
-	 * 
-	 */
-	private void checkHeuristics() throws IOException {
-		boolean noHeuristic = false;
-		String heuristicEncoding = null;
-		try {
-			fReader.reset();
-			byte[] bytes = new byte[3];
-			int nRead = 0;
-			for (int i = 0; i < bytes.length; i++) {
-				if (fReader.ready()) {
-					int oneByte = fReader.read();
-					nRead++;
-					if (oneByte <= 0xFF) {
-						bytes[i] = (byte) oneByte;
-					}
-					else {
-						noHeuristic = true;
-					}
-				}
-				else {
-					noHeuristic = true;
-					break;
-				}
-			}
-			if (!noHeuristic && nRead == 3) {
-				heuristicEncoding = EncodingGuesser.guessEncoding(bytes, 3);
-			}
-		}
-		catch (IOException e) {
-			// if any IO exception, then not a heuristic case
-		}
-		finally {
-			fReader.reset();
-		}
-		if (heuristicEncoding != null) {
-			createEncodingMemento(heuristicEncoding, EncodingMemento.GUESSED_ENCODING_FROM_STREAM);
-		}
-
-	}
-
-	/**
-	 * 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
-	 */
-	private void createEncodingMemento(String detectedCharsetName, String reason) {
-		createEncodingMemento(detectedCharsetName);
-	}
-
-	/**
-	 * convience method all subclasses can use (but not override)
-	 */
-	private final 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();
-	}
-
-	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;
-	}
-
-	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);
-		}
-	}
-
-	/**
-	 * 
-	 */
-	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);
-		}
-	}
-
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/contenttype/ContentDescriberForCSS.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/contenttype/ContentDescriberForCSS.java
deleted file mode 100644
index 5eeca5c..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/contenttype/ContentDescriberForCSS.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.css.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 final class ContentDescriberForCSS implements ITextContentDescriber {
-	final private static QualifiedName[] SUPPORTED_OPTIONS = {IContentDescription.CHARSET, IContentDescription.BYTE_ORDER_MARK, IContentDescriptionExtended.DETECTED_CHARSET, IContentDescriptionExtended.UNSUPPORTED_CHARSET, IContentDescriptionExtended.APPROPRIATE_DEFAULT};
-
-	public int describe(InputStream contents, IContentDescription description) throws IOException {
-		int result = IContentDescriber.INDETERMINATE;
-
-		calculateSupportedOptions(contents, description);
-
-		return result;
-	}
-
-	public int describe(Reader contents, IContentDescription description) throws IOException {
-		int result = IContentDescriber.INDETERMINATE;
-
-		calculateSupportedOptions(contents, description);
-
-		return result;
-	}
-
-	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 IResourceCharsetDetector getDetector() {
-		return new CSSResourceEncodingDetector();
-	}
-
-	/**
-	 * @param description
-	 * @param detector
-	 * @throws IOException
-	 */
-	private 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);
-				}
-			}
-		}
-
-	}
-
-	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) {
-
-			// 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;
-	}
-
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/contenttype/EncodingGuesser.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/contenttype/EncodingGuesser.java
deleted file mode 100644
index 82f6e5c..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/contenttype/EncodingGuesser.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.css.core.internal.contenttype;
-
-/**
- * 
- * This is ported from PageDesigner's hpbcom/Kanji.cpp's
- * Kanji::guess_kanji_code(),
- *  
- */
-public class EncodingGuesser {
-	private static final int ASCII = 0; // ASCII
-	// ISO-2022-JP
-	private static final int ASCII_IN = 8; // This is after ISO2022's change
-	// Shift-JIS
-	private static final int EUC_HALFKANA = 6; // This is Half Kana in EUC-JP
-	private static final int EUC_JP = 3; // This is EUC-JP
-	private static final int ISO2022_JP = 4; // This is ISO-2022-JP
-	private static final int JIS_HALFKANA = 7; // THis is Half Kana in
-	private static final byte KT_EUC1 = 0x40;
-	private static final byte KT_EUC2 = (byte) 0x80;
-	// ASCII
-	private static final byte KT_JIN = 0x01;
-	private static final byte KT_JOUT = 0x02;
-	//	private static final byte KT_ESC = 0x04;
-	//	private static final byte KT_JIS = 0x08;
-	private static final byte KT_SFT1 = 0x10;
-	private static final byte KT_SFT2 = 0x20;
-	private static final byte ktype[] = {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 00 */
-	0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 10 */
-	0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x08, 0x08, 0x09, 0x08, 0x08, 0x08, /* !"#$%&' *//* " */
-	0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, /* ()*+,-./ */
-	0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, /* 01234567 */
-	0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, /* 89:; <=>? */
-	0x29, 0x28, 0x2b, 0x28, 0x28, 0x28, 0x28, 0x28, /* @ABCDEFG */
-	0x2a, 0x28, 0x2a, 0x28, 0x28, 0x28, 0x28, 0x28, /* HIJKLMNO */
-	0x28, 0x28, 0x28, 0x28, 0x28, 0x28, 0x28, 0x28, /* PQRSTUVW */
-	0x28, 0x28, 0x28, 0x28, 0x28, 0x28, 0x28, 0x28, /* XYZ[\]^_ */
-	0x28, 0x28, 0x28, 0x28, 0x28, 0x28, 0x28, 0x28, /* abcdefg */
-	0x28, 0x28, 0x28, 0x28, 0x28, 0x28, 0x28, 0x28, /* hijklmno */
-	0x28, 0x28, 0x28, 0x28, 0x28, 0x28, 0x28, 0x28, /* pqrstuvw */
-	0x28, 0x28, 0x28, 0x28, 0x28, 0x28, 0x28, 0x00, /* xyz{|}~ */
-	0x20, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, /* 80 */
-	0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, /* 90 */
-	0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x20, (byte) 0xe0, (byte) 0xe0, (byte) 0xe0, (byte) 0xe0, (byte) 0xe0, (byte) 0xe0, (byte) 0xe0, /* A0 */
-	(byte) 0xe0, (byte) 0xe0, (byte) 0xe0, (byte) 0xe0, (byte) 0xe0, (byte) 0xe0, (byte) 0xe0, (byte) 0xe0, (byte) 0xe0, (byte) 0xe0, (byte) 0xe0, (byte) 0xe0, (byte) 0xe0, (byte) 0xe0, (byte) 0xe0, (byte) 0xe0, /* B0 */
-	(byte) 0xe0, (byte) 0xe0, (byte) 0xe0, (byte) 0xe0, (byte) 0xe0, (byte) 0xe0, (byte) 0xe0, (byte) 0xe0, (byte) 0xe0, (byte) 0xe0, (byte) 0xe0, (byte) 0xe0, (byte) 0xe0, (byte) 0xe0, (byte) 0xe0, (byte) 0xe0, /* C0 */
-	(byte) 0xe0, (byte) 0xe0, (byte) 0xe0, (byte) 0xe0, (byte) 0xe0, (byte) 0xe0, (byte) 0xe0, (byte) 0xe0, (byte) 0xe0, (byte) 0xe0, (byte) 0xe0, (byte) 0xe0, (byte) 0xe0, (byte) 0xe0, (byte) 0xe0, (byte) 0xe0, /* D0 */
-	(byte) 0xe0, (byte) 0xe0, (byte) 0xe0, (byte) 0xe0, (byte) 0xe0, (byte) 0xe0, (byte) 0xe0, (byte) 0xe0, (byte) 0xf0, (byte) 0xf0, (byte) 0xf0, (byte) 0xf0, (byte) 0xf0, (byte) 0xf0, (byte) 0xf0, (byte) 0xf0, /* E0 */
-	(byte) 0xf0, (byte) 0xf0, (byte) 0xf0, (byte) 0xf0, (byte) 0xf0, (byte) 0xf0, (byte) 0xf0, (byte) 0xf0, (byte) 0xf0, (byte) 0xf0, (byte) 0xf0, (byte) 0xf0, (byte) 0xf0, (byte) 0xf0, (byte) 0xf0, (byte) 0xf0, /* F0 */
-	(byte) 0xf0, (byte) 0xf0, (byte) 0xf0, (byte) 0xf0, (byte) 0xf0, (byte) 0xc0, (byte) 0xc0, 0x00,};
-	//	private static final int ISO8859_1 = 1; // ISO-1
-	private static final int SHIFT_JIS = 2; // This is Shift-JIS
-	private static final int SJIS_HALFKANA = 5; // This is Half Kana in
-
-	/**
-	 * Currently, only Japanese encodings are supported.
-	 */
-	private static final int UNKNOWN = -1; // Unknown
-
-	/**
-	 * @return java.lang.String
-	 * @param code
-	 *            int
-	 * 
-	 * Convert private int to IANA Encoding name.
-	 */
-	private static String convertToIANAEncodingName(int code) {
-		String encoding = null;
-
-		switch (code) {
-			case SHIFT_JIS :
-			case SJIS_HALFKANA :
-				encoding = "Shift_JIS";//$NON-NLS-1$
-				break;
-			case EUC_JP :
-			case EUC_HALFKANA :
-				encoding = "EUC-JP";//$NON-NLS-1$
-				break;
-			case ISO2022_JP :
-			case JIS_HALFKANA :
-				encoding = "ISO-2022-JP";//$NON-NLS-1$
-			default :
-				break;
-		}
-
-		return encoding;
-	}
-
-	/**
-	 * Return guessed Java Encoding name target: bytes to be inspected length:
-	 * length of target
-	 */
-	public static String guessEncoding(byte[] target, int length) {
-		int code = UNKNOWN;
-
-		// Currently, only Japanese is supported.
-		String system_ctype = java.util.Locale.getDefault().getLanguage();
-		String jp_ctype = java.util.Locale.JAPANESE.getLanguage();
-		if (system_ctype.compareTo(jp_ctype) == 0) {
-			// Ok, I'm under ja_JP.
-			code = ASCII;
-			int pos = 0;
-			while ((code == ASCII) && (length > 0)) {
-				int ch1 = target[pos];
-				ch1 = ch1 & 0x000000FF;
-				int ch2 = (length >= 2) ? target[pos + 1] : 0;
-				ch2 = ch2 & 0x000000FF;
-				int ch3 = (length >= 3) ? target[pos + 2] : 0;
-				ch3 = ch3 & 0x000000FF;
-				code = guessJapaneseKanjiCode(ch1, ch2, ch3, 0);
-				pos++;
-				length--;
-			}
-			switch (code) {
-				case ISO2022_JP :
-				case JIS_HALFKANA :
-					code = ISO2022_JP;
-					break;
-				case EUC_JP :
-					code = EUC_JP;
-					break;
-				default :
-					code = SHIFT_JIS;
-			}
-		}
-		return (convertToIANAEncodingName(code));
-	}
-
-	/**
-	 * Guess the encoding. halfkana_flag = 0x01 ( detect SJIS half kana )
-	 * halfkana_flag = 0x02 ( detect EUC half kana )
-	 */
-	private static int guessJapaneseKanjiCode(int ch1, int ch2, int ch3, int halfkana_flag) {
-		boolean sjis_hankaku_flag = ((halfkana_flag & 0x01) != 0) ? true : false;
-		boolean euc_hankaku_flag = ((halfkana_flag & 0x02) != 0) ? true : false;
-
-		if (ch1 == 0)
-			return UNKNOWN;
-		if (sjis_hankaku_flag && ch1 >= 0xa1 && ch1 <= 0xdf)
-			return SJIS_HALFKANA;
-		else if (euc_hankaku_flag && ch1 == 0x8e && ch2 >= 0xa1 && ch2 <= 0xdf)
-			return EUC_HALFKANA;
-		else if (((ktype[ch1] & KT_SFT1) != 0) && ((ktype[ch2] & KT_SFT2) != 0))
-			return SHIFT_JIS;
-		else if (((ktype[ch1] & KT_EUC1) != 0) && ((ktype[ch2] & KT_EUC2) != 0))
-			return EUC_JP;
-		else if (ch1 == 0x1b && ((ktype[ch2] & KT_JIN) != 0))
-			return ISO2022_JP;
-		else if (ch1 >= 0xa1 && ch1 <= 0xdf)
-			return SJIS_HALFKANA;
-		else if (ch1 == 0x1b && ch2 == 0x28/* '(' */&& ch3 == 0x49/* 'I' */)
-			return JIS_HALFKANA;
-		else if (ch1 == 0x1b && ch2 == 0x28/* '(' */&& ((ktype[ch3] & KT_JOUT) != 0))
-			return ASCII_IN;
-
-		return ASCII;
-	}
-
-	public EncodingGuesser() {
-		super();
-	}
-}
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/contenttype/HeadParserToken.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/contenttype/HeadParserToken.java
deleted file mode 100644
index 8821407..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/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.css.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.css.core/src/org/eclipse/wst/css/core/internal/contenttype/IntStack.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/contenttype/IntStack.java
deleted file mode 100644
index 117136d..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/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.css.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.css.core/src/org/eclipse/wst/css/core/internal/document/AbstractCSSNodeList.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/document/AbstractCSSNodeList.java
deleted file mode 100644
index 10949cc..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/document/AbstractCSSNodeList.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.css.core.internal.document;
-
-import java.util.Vector;
-
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSNode;
-
-
-/**
- * 
- */
-abstract class AbstractCSSNodeList {
-
-	protected Vector nodes = null;
-
-	ICSSNode appendNode(ICSSNode node) {
-		if (node == null)
-			return null;
-		if (this.nodes == null)
-			this.nodes = new Vector();
-		this.nodes.addElement(node);
-		return node;
-	}
-
-	/**
-	 * @return int
-	 */
-	public int getLength() {
-		if (this.nodes == null)
-			return 0;
-		return this.nodes.size();
-	}
-
-
-	protected ICSSNode itemImpl(int index) {
-		if (this.nodes == null)
-			return null;
-		if (index < 0 || index >= this.nodes.size())
-			return null;
-		return (ICSSNode) this.nodes.elementAt(index);
-	}
-
-
-	ICSSNode removeNode(int index) {
-		if (this.nodes == null)
-			return null; // no node
-		if (index < 0 || index >= this.nodes.size())
-			return null; // invalid parameter
-
-		ICSSNode removed = (ICSSNode) this.nodes.elementAt(index);
-		this.nodes.removeElementAt(index);
-		return removed;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/document/CSSAttrImpl.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/document/CSSAttrImpl.java
deleted file mode 100644
index 471b452..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/document/CSSAttrImpl.java
+++ /dev/null
@@ -1,133 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this 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.core.internal.document;
-
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSAttr;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSDocument;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSNamedNodeMap;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSNode;
-
-/**
- * 
- */
-class CSSAttrImpl extends CSSRegionContainer implements ICSSAttr {
-
-	private String fName = null;
-	private String fValue = null;
-	private CSSNodeImpl ownerCSSNode = null;
-
-	CSSAttrImpl(CSSAttrImpl that) {
-		super(that);
-		this.fName = that.fName;
-		this.setValue(that.fValue);
-	}
-
-	/**
-	 * CSSAttr constructor comment.
-	 */
-	CSSAttrImpl(String name) {
-		super();
-		this.fName = name;
-	}
-
-	public ICSSNode cloneNode(boolean deep) {
-		return new CSSAttrImpl(this);
-	}
-
-	/**
-	 * @return org.eclipse.wst.css.core.model.interfaces.ICSSNamedNodeMap
-	 */
-	public ICSSNamedNodeMap getAttributes() {
-		return null;
-	}
-
-	/**
-	 * @return java.lang.String
-	 */
-	public java.lang.String getName() {
-		return fName;
-	}
-
-	/**
-	 * @return short
-	 */
-	public short getNodeType() {
-		return ATTR_NODE;
-	}
-
-	public ICSSNode getOwnerCSSNode() {
-		return ownerCSSNode;
-	}
-
-	/**
-	 * @return java.lang.String
-	 */
-	public java.lang.String getValue() {
-		return fValue;
-	}
-
-	/**
-	 * @return boolean
-	 * @param name
-	 *            java.lang.String
-	 */
-	protected boolean matchName(String name) {
-		if (name == null)
-			return /* (this.name == null) */false;
-		if (this.fName == null)
-			return false;
-		return this.fName.equals(name);
-	}
-
-	/**
-	 * 
-	 */
-	protected void notifyValueChanged(String oldValue) {
-		if (this.ownerCSSNode == null)
-			return;
-
-		// for model
-		ICSSDocument doc = ownerCSSNode.getContainerDocument();
-		if (doc == null)
-			return;
-		CSSModelImpl model = (CSSModelImpl) doc.getModel();
-		if (model == null)
-			return;
-		model.valueChanged(this, oldValue);
-
-		// for adapters
-		String value = getValue();
-		this.ownerCSSNode.notify(CHANGE, this, oldValue, value, this.ownerCSSNode.getStartOffset());
-	}
-
-	/**
-	 * @param newName
-	 *            java.lang.String
-	 */
-	protected void setName(java.lang.String newName) {
-		fName = newName;
-	}
-
-	protected void setOwnerCSSNode(CSSNodeImpl newOwnerCSSNode) {
-		ownerCSSNode = newOwnerCSSNode;
-	}
-
-	/**
-	 * @param newValue
-	 *            java.lang.String
-	 */
-	public void setValue(java.lang.String newValue) {
-		String oldValue = fValue;
-		fValue = newValue;
-
-		notifyValueChanged(oldValue);
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/document/CSSCharsetRuleImpl.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/document/CSSCharsetRuleImpl.java
deleted file mode 100644
index aec5d5e..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/document/CSSCharsetRuleImpl.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.wst.css.core.internal.document;
-
-
-
-import org.eclipse.wst.css.core.internal.CSSCorePlugin;
-import org.eclipse.wst.css.core.internal.preferences.CSSCorePreferenceNames;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSCharsetRule;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSNode;
-import org.eclipse.wst.css.core.internal.util.CSSUtil;
-
-
-/**
- * 
- */
-class CSSCharsetRuleImpl extends CSSRuleImpl implements ICSSCharsetRule {
-
-	/**
-	 * 
-	 */
-	CSSCharsetRuleImpl() {
-		super();
-	}
-
-	CSSCharsetRuleImpl(CSSCharsetRuleImpl that) {
-		super(that);
-	}
-
-	public ICSSNode cloneNode(boolean deep) {
-		CSSCharsetRuleImpl cloned = new CSSCharsetRuleImpl(this);
-
-		return cloned;
-	}
-
-	/**
-	 * The encoding information used in this <code>@charset</code> rule.
-	 * @exception org.w3c.dom.DOMException
-	 *                SYNTAX_ERR: Raised if the specified encoding value has a
-	 *                syntax error and is unparsable. <br>
-	 *                NO_MODIFICATION_ALLOWED_ERR: Raised if this encoding
-	 *                rule is readonly.
-	 */
-	public String getEncoding() {
-		return CSSUtil.extractStringContents(getAttribute(ENCODING));
-	}
-
-	/**
-	 * @return short
-	 */
-	public short getNodeType() {
-		return CHARSETRULE_NODE;
-	}
-
-	/**
-	 * The type of the rule, as defined above. The expectation is that
-	 * binding-specific casting methods can be used to cast down from an
-	 * instance of the <code>CSSRule</code> interface to the specific
-	 * derived interface implied by the <code>type</code>.
-	 */
-	public short getType() {
-		return CHARSET_RULE;
-	}
-
-	public void setEncoding(String encoding) throws org.w3c.dom.DOMException {
-		String quote = CSSCorePlugin.getDefault().getPluginPreferences().getString(CSSCorePreferenceNames.FORMAT_QUOTE);
-		String enc = CSSUtil.extractStringContents(encoding);
-		quote = CSSUtil.detectQuote(enc, quote);
-		setAttribute(ENCODING, quote + enc + quote);
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/document/CSSDeclarationItemParser.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/document/CSSDeclarationItemParser.java
deleted file mode 100644
index b35b7d5..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/document/CSSDeclarationItemParser.java
+++ /dev/null
@@ -1,1077 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this 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.core.internal.document;
-
-import java.util.Iterator;
-
-import org.eclipse.wst.css.core.internal.contentmodel.PropCMProperty;
-import org.eclipse.wst.css.core.internal.parserz.CSSRegionContexts;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSDocument;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSPrimitiveValue;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSStyleDeclItem;
-import org.eclipse.wst.css.core.internal.provisional.document.ICounter;
-import org.eclipse.wst.css.core.internal.util.CSSUtil;
-import org.eclipse.wst.sse.core.internal.provisional.text.IStructuredDocumentRegion;
-import org.eclipse.wst.sse.core.internal.provisional.text.ITextRegion;
-import org.eclipse.wst.sse.core.internal.provisional.text.ITextRegionList;
-import org.eclipse.wst.sse.core.internal.text.TextRegionListImpl;
-import org.w3c.dom.css.CSSPrimitiveValue;
-
-
-/**
- * 
- */
-class CSSDeclarationItemParser {
-	/**
-	 * 
-	 */
-	final class FloatInfo {
-		/**
-		 * 
-		 */
-		FloatInfo(String text) {
-			parse(text);
-		}
-
-		/**
-		 * 
-		 */
-		void parse(String text) {
-			StringBuffer bufValue = new StringBuffer();
-			StringBuffer bufIdent = new StringBuffer();
-			boolean bNum = true;
-			int len = text.length();
-			for (int i = 0; i < len; i++) {
-				char c = text.charAt(i);
-				if (bNum) {
-					if ('0' <= c && c <= '9' || c == '.' || c == '+' || c == '-') {
-						bufValue.append(c);
-					}
-					else {
-						bufIdent.append(c);
-						bNum = false;
-					}
-				}
-				else {
-					bufIdent.append(c);
-				}
-			}
-			String valueStr = bufValue.toString();
-			fValue = Float.valueOf(valueStr).floatValue();
-			fIdentifier = bufIdent.toString();
-			fType = getFloatValueType(valueStr, fIdentifier);
-		}
-
-		/**
-		 * 
-		 */
-		float getValue() {
-			return fValue;
-		}
-
-		/**
-		 * 
-		 */
-		String getIdentifier() {
-			return fIdentifier;
-		}
-
-		/**
-		 * 
-		 */
-		short getValueType() {
-			return fType;
-		}
-
-		private float fValue = 0.0f;
-		private String fIdentifier = null;
-		private short fType = CSSPrimitiveValue.CSS_UNKNOWN;
-	}
-
-	final static int S_NORMAL = 0;
-	final static int S_FUNCTION = 1;
-	final static int S_FONT_SLASH = 2;
-	final static int S_COMMA_SEPARATION = 3;
-	private ICSSDocument fDocument = null;
-	private IStructuredDocumentRegion fParentRegion = null;
-	private boolean fTempStructuredDocument = false;
-	private CSSModelUpdateContext fUpdateContext = null;
-
-	/**
-	 * CSSDeclarationItemParser constructor comment.
-	 */
-	CSSDeclarationItemParser(ICSSDocument doc) {
-		super();
-		fDocument = doc;
-	}
-
-	/**
-	 * 
-	 */
-	private CSSPrimitiveValueImpl createAttrValue(ITextRegionList regions) {
-		String funcName = getFunctionName(regions);
-		if (funcName == null || !funcName.toLowerCase().equals("attr")) { //$NON-NLS-1$
-			return null;
-		}
-		String accepts[] = {CSSRegionContexts.CSS_DECLARATION_VALUE_IDENT};
-		ITextRegionList valueRegions = getFunctionParameters(regions, accepts);
-		if (valueRegions.size() != 1) {
-			return null;
-		}
-
-		CSSPrimitiveValueImpl value = getCSSPrimitiveValue(CSSPrimitiveValue.CSS_ATTR);
-		if (value == null) {
-			return null;
-		}
-
-		ITextRegion region = valueRegions.get(0);
-		value.setValue(getText(region));
-
-		return value;
-	}
-
-	/**
-	 * 
-	 */
-	private CSSPrimitiveValueImpl createCountersValue(ITextRegionList regions) {
-		String funcName = getFunctionName(regions);
-		if (funcName == null || !funcName.toLowerCase().equals("counters")) { //$NON-NLS-1$
-			return null;
-		}
-
-		String accepts[] = {CSSRegionContexts.CSS_DECLARATION_VALUE_IDENT, CSSRegionContexts.CSS_DECLARATION_VALUE_STRING};
-		ITextRegionList valueRegions = getFunctionParameters(regions, accepts);
-		int size = valueRegions.size();
-		if (size != 2 && size != 3) {
-			return null;
-		}
-
-		CounterImpl value = getCounter();
-		if (value == null) {
-			return null;
-		}
-
-		for (int i = 0; i < size; i++) {
-			ITextRegion region = valueRegions.get(i);
-			String text = getText(region);
-			CSSAttrImpl attr = null;
-			switch (i) {
-				case 0 :
-					value.setIdentifier(text);
-					attr = value.getAttributeNode(ICounter.IDENTIFIER);
-					break;
-				case 1 :
-					value.setSeparator(text);
-					attr = value.getAttributeNode(ICounter.SEPARATOR);
-					break;
-				case 2 :
-					value.setListStyle(text);
-					attr = value.getAttributeNode(ICounter.LISTSTYLE);
-					break;
-				default :
-					break;
-			}
-			if (attr != null) {
-				attr.setRangeRegion(fParentRegion, region, region);
-			}
-		}
-
-		return value;
-	}
-
-	/**
-	 * 
-	 */
-	private CSSPrimitiveValueImpl createCounterValue(ITextRegionList regions) {
-		String funcName = getFunctionName(regions);
-		if (funcName == null || !funcName.toLowerCase().equals("counter")) { //$NON-NLS-1$
-			return null;
-		}
-
-		String accepts[] = {CSSRegionContexts.CSS_DECLARATION_VALUE_IDENT};
-		ITextRegionList valueRegions = getFunctionParameters(regions, accepts);
-		int size = valueRegions.size();
-		if (size != 1 && size != 2) {
-			return null;
-		}
-
-		CounterImpl value = getCounter();
-		if (value == null) {
-			return null;
-		}
-
-		for (int i = 0; i < size; i++) {
-			ITextRegion region = valueRegions.get(i);
-			String text = getText(region);
-			CSSAttrImpl attr = null;
-			switch (i) {
-				case 0 :
-					value.setIdentifier(text);
-					attr = value.getAttributeNode(ICounter.IDENTIFIER);
-					break;
-				case 1 :
-					value.setListStyle(text);
-					attr = value.getAttributeNode(ICounter.LISTSTYLE);
-					break;
-				default :
-					break;
-			}
-			if (attr != null) {
-				attr.setRangeRegion(fParentRegion, region, region);
-			}
-		}
-
-		return value;
-	}
-
-	/**
-	 * 
-	 */
-	private CSSStyleDeclItemImpl createDeclarationItem(ITextRegionList nodeRegions) {
-		CSSStyleDeclItemImpl item = null;
-		String name = getPropertyName(nodeRegions);
-		if (name != null) {
-			item = getCSSStyleDeclItem(name);
-		}
-		return item;
-	}
-
-	/**
-	 * 
-	 */
-	private CSSPrimitiveValueImpl createFloatValue(String text, String type) {
-		FloatInfo info = new FloatInfo(text);
-		CSSPrimitiveValueImpl value = getCSSPrimitiveValue(info.getValueType());
-		if (value != null) {
-			value.setValue(info.getValue());
-		}
-		return value;
-	}
-
-	/**
-	 * 
-	 */
-	private CSSPrimitiveValueImpl createFormatValue(ITextRegionList regions) {
-		String funcName = getFunctionName(regions);
-		if (funcName == null || !funcName.toLowerCase().equals("format")) { //$NON-NLS-1$
-			return null;
-		}
-		String accepts[] = {CSSRegionContexts.CSS_DECLARATION_VALUE_STRING};
-		ITextRegionList valueRegions = getFunctionParameters(regions, accepts);
-		// format can take variable args.
-		if (valueRegions.size() == 0) {
-			return null;
-		}
-
-		CSSPrimitiveValueImpl value = getCSSPrimitiveValue(ICSSPrimitiveValue.CSS_FORMAT);
-		if (value == null) {
-			return null;
-		}
-
-		ITextRegion region = valueRegions.get(0);
-		value.setValue(CSSUtil.extractStringContents(getText(region)));
-
-		return value;
-
-	}
-
-	/**
-	 * 
-	 */
-	private CSSPrimitiveValueImpl createLocalValue(ITextRegionList regions) {
-		String funcName = getFunctionName(regions);
-		if (funcName == null || !funcName.toLowerCase().equals("local")) { //$NON-NLS-1$
-			return null;
-		}
-		String accepts[] = {CSSRegionContexts.CSS_DECLARATION_VALUE_STRING};
-		ITextRegionList valueRegions = getFunctionParameters(regions, accepts);
-		if (valueRegions.size() != 1) {
-			return null;
-		}
-
-		CSSPrimitiveValueImpl value = getCSSPrimitiveValue(ICSSPrimitiveValue.CSS_LOCAL);
-		if (value == null) {
-			return null;
-		}
-
-		ITextRegion region = valueRegions.get(0);
-		value.setValue(CSSUtil.extractStringContents(getText(region)));
-
-		return value;
-	}
-
-	/**
-	 * 
-	 */
-	private CSSPrimitiveValueImpl createPrimitiveValue(ITextRegion region) {
-		if (region == null) {
-			return null;
-		}
-		CSSPrimitiveValueImpl value = null;
-		String type = region.getType();
-		String text = getText(region);
-		if (isBlank(type)) {
-			value = null;
-		}
-		else if (type == CSSRegionContexts.CSS_DECLARATION_VALUE_NUMBER || type == CSSRegionContexts.CSS_DECLARATION_VALUE_DIMENSION || type == CSSRegionContexts.CSS_DECLARATION_VALUE_PERCENTAGE) {
-			value = createFloatValue(text, type);
-		}
-		else if (type == CSSRegionContexts.CSS_DECLARATION_VALUE_STRING || type == CSSRegionContexts.CSS_DECLARATION_VALUE_URI || type == CSSRegionContexts.CSS_DECLARATION_VALUE_IDENT || type == CSSRegionContexts.CSS_DECLARATION_VALUE_HASH) {
-			value = createStringValue(text, type);
-		}
-
-		if (value == null) {
-			value = createStringValue(text, type);
-		}
-
-		if (!fTempStructuredDocument && value != null) {
-			value.setRangeRegion(fParentRegion, region, region);
-		}
-
-		return value;
-	}
-
-	/**
-	 * 
-	 */
-	private CSSPrimitiveValueImpl createPrimitiveValue(ITextRegionList regions) {
-		CSSPrimitiveValueImpl value = null;
-		CSSUtil.stripSurroundingSpace(regions);
-		if (regions.isEmpty()) {
-			return null;
-		}
-		ITextRegion region = regions.get(0);
-		if (region == null) {
-			return null;
-		}
-		String type = region.getType();
-		if (type == CSSRegionContexts.CSS_DECLARATION_VALUE_FUNCTION) {
-			String text = getText(region).toLowerCase();
-			if (text.equals("rgb(")) { //$NON-NLS-1$
-				value = createRgbValue(regions);
-			}
-			else if (text.equals("counter(")) { //$NON-NLS-1$
-				value = createCounterValue(regions);
-			}
-			else if (text.equals("counters(")) { //$NON-NLS-1$
-				value = createCountersValue(regions);
-			}
-			else if (text.equals("attr(")) { //$NON-NLS-1$
-				value = createAttrValue(regions);
-			}
-			else if (text.equals("format(")) { //$NON-NLS-1$
-				value = createFormatValue(regions);
-			}
-			else if (text.equals("local(")) { //$NON-NLS-1$
-				value = createLocalValue(regions);
-			}
-			else if (text.equals("rect(")) { //$NON-NLS-1$
-				value = createRectValue(regions);
-			}
-			if (value == null) {
-				value = createStringValue(regions);
-			}
-		}
-		else {
-			value = createStringValue(regions);
-		}
-
-		if (!fTempStructuredDocument && value != null) {
-			value.setRangeRegion(fParentRegion, regions.get(0), regions.get(regions.size() - 1));
-		}
-
-		return value;
-	}
-
-	/**
-	 * 
-	 */
-	private CSSPrimitiveValueImpl createRectValue(ITextRegionList regions) {
-		String funcName = getFunctionName(regions);
-		if (funcName == null || !funcName.toLowerCase().equals("rect")) { //$NON-NLS-1$
-			return null;
-		}
-		String accepts[] = {CSSRegionContexts.CSS_DECLARATION_VALUE_NUMBER, CSSRegionContexts.CSS_DECLARATION_VALUE_DIMENSION, CSSRegionContexts.CSS_DECLARATION_VALUE_IDENT}; // IDENT:
-																																												// for
-																																												// 'auto'
-		ITextRegionList valueRegions = getFunctionParameters(regions, accepts);
-		if (valueRegions.size() != 4) {
-			return null;
-		}
-
-		RectImpl value = getRect();
-		if (value == null) {
-			return null;
-		}
-
-		for (int i = 0; i < 4; i++) {
-			ITextRegion region = valueRegions.get(i);
-			CSSPrimitiveValueImpl childValue = null;
-			switch (i) {
-				case 0 :
-					childValue = (CSSPrimitiveValueImpl) value.getTop();
-					break;
-				case 1 :
-					childValue = (CSSPrimitiveValueImpl) value.getRight();
-					break;
-				case 2 :
-					childValue = (CSSPrimitiveValueImpl) value.getBottom();
-					break;
-				case 3 :
-					childValue = (CSSPrimitiveValueImpl) value.getLeft();
-					break;
-				default :
-					break;
-			}
-			if (childValue == null) {
-				return null;
-			}
-			String text = getText(region);
-			String type = region.getType();
-			if (type == CSSRegionContexts.CSS_DECLARATION_VALUE_IDENT) {
-				setStringValue(childValue, text, type);
-			}
-			else {
-				setFloatValue(childValue, text, type);
-			}
-			if (!fTempStructuredDocument) {
-				childValue.setRangeRegion(fParentRegion, region, region);
-			}
-		}
-
-		return value;
-	}
-
-	/**
-	 * 
-	 */
-	private CSSPrimitiveValueImpl createRgbValue(ITextRegionList regions) {
-		String funcName = getFunctionName(regions);
-		if (funcName == null || !funcName.toLowerCase().equals("rgb")) { //$NON-NLS-1$
-			return null;
-		}
-		String accepts[] = {CSSRegionContexts.CSS_DECLARATION_VALUE_NUMBER, CSSRegionContexts.CSS_DECLARATION_VALUE_PERCENTAGE};
-		ITextRegionList valueRegions = getFunctionParameters(regions, accepts);
-		if (valueRegions.size() != 3) {
-			return null;
-		}
-
-		RGBColorImpl value = getRGBColor();
-		if (value == null) {
-			return null;
-		}
-
-		for (int i = 0; i < 3; i++) {
-			ITextRegion region = valueRegions.get(i);
-			CSSPrimitiveValueImpl childValue = null;
-			switch (i) {
-				case 0 :
-					childValue = (CSSPrimitiveValueImpl) value.getRed();
-					break;
-				case 1 :
-					childValue = (CSSPrimitiveValueImpl) value.getGreen();
-					break;
-				case 2 :
-					childValue = (CSSPrimitiveValueImpl) value.getBlue();
-					break;
-				default :
-					break;
-			}
-			if (childValue == null) {
-				return null;
-			}
-			setFloatValue(childValue, getText(region), region.getType());
-			if (!fTempStructuredDocument) {
-				childValue.setRangeRegion(fParentRegion, region, region);
-			}
-		}
-
-		return value;
-	}
-
-	/**
-	 * 
-	 */
-	private CSSPrimitiveValueImpl createStringValue(String text, String type) {
-		short valueType = getStringValueType(text, type);
-		CSSPrimitiveValueImpl value = getCSSPrimitiveValue(valueType);
-		if (value != null) {
-			if (valueType == CSSPrimitiveValue.CSS_URI) {
-				text = CSSUtil.extractUriContents(text);
-			}
-			else if (valueType == CSSPrimitiveValue.CSS_STRING) {
-				text = CSSUtil.extractStringContents(text);
-			}
-			value.setValue(text);
-		}
-		return value;
-	}
-
-	/**
-	 * 
-	 */
-	private CSSPrimitiveValueImpl createStringValue(ITextRegionList regions) {
-		String type = CSSRegionContexts.CSS_DECLARATION_VALUE_IDENT;
-		if (regions.size() == 1) {
-			ITextRegion region = regions.get(0);
-			type = region.getType();
-		}
-		return createStringValue(makeString(regions), type);
-	}
-
-	/**
-	 * 
-	 */
-	private CounterImpl getCounter() {
-		CounterImpl node;
-		if (fUpdateContext != null && fUpdateContext.isActive()) {
-			node = fUpdateContext.getCounter();
-		}
-		else {
-			node = (CounterImpl) fDocument.createCSSPrimitiveValue(CSSPrimitiveValue.CSS_COUNTER);
-		}
-		return node;
-	}
-
-	/**
-	 * 
-	 */
-	private CSSPrimitiveValueImpl getCSSPrimitiveValue(short type) {
-		CSSPrimitiveValueImpl node;
-		if (fUpdateContext != null && fUpdateContext.isActive()) {
-			node = fUpdateContext.getCSSPrimitiveValue(type);
-		}
-		else {
-			node = (CSSPrimitiveValueImpl) fDocument.createCSSPrimitiveValue(type);
-		}
-		return node;
-	}
-
-	/**
-	 * 
-	 */
-	private CSSStyleDeclItemImpl getCSSStyleDeclItem(String propertyName) {
-		CSSStyleDeclItemImpl node;
-		if (fUpdateContext != null && fUpdateContext.isActive()) {
-			node = fUpdateContext.getCSSStyleDeclItem(propertyName);
-		}
-		else {
-			node = (CSSStyleDeclItemImpl) fDocument.createCSSStyleDeclItem(propertyName);
-		}
-		return node;
-	}
-
-	/**
-	 * 
-	 */
-	static short getFloatValueType(String ident) {
-		ident = ident.toLowerCase();
-		short valueType;
-		if (ident.length() == 0) {
-			valueType = CSSPrimitiveValue.CSS_NUMBER;
-		}
-		else if (ident.equals("%")) { //$NON-NLS-1$
-			valueType = CSSPrimitiveValue.CSS_PERCENTAGE;
-		}
-		else if (ident.equalsIgnoreCase("em")) { //$NON-NLS-1$
-			valueType = CSSPrimitiveValue.CSS_EMS;
-		}
-		else if (ident.equalsIgnoreCase("ex")) { //$NON-NLS-1$
-			valueType = CSSPrimitiveValue.CSS_EXS;
-		}
-		else if (ident.equalsIgnoreCase("px")) { //$NON-NLS-1$
-			valueType = CSSPrimitiveValue.CSS_PX;
-		}
-		else if (ident.equalsIgnoreCase("cm")) { //$NON-NLS-1$
-			valueType = CSSPrimitiveValue.CSS_CM;
-		}
-		else if (ident.equalsIgnoreCase("mm")) { //$NON-NLS-1$
-			valueType = CSSPrimitiveValue.CSS_MM;
-		}
-		else if (ident.equalsIgnoreCase("in")) { //$NON-NLS-1$
-			valueType = CSSPrimitiveValue.CSS_IN;
-		}
-		else if (ident.equalsIgnoreCase("pt")) { //$NON-NLS-1$
-			valueType = CSSPrimitiveValue.CSS_PT;
-		}
-		else if (ident.equalsIgnoreCase("pc")) { //$NON-NLS-1$
-			valueType = CSSPrimitiveValue.CSS_PC;
-		}
-		else if (ident.equalsIgnoreCase("deg")) { //$NON-NLS-1$
-			valueType = CSSPrimitiveValue.CSS_DEG;
-		}
-		else if (ident.equalsIgnoreCase("rad")) { //$NON-NLS-1$
-			valueType = CSSPrimitiveValue.CSS_RAD;
-		}
-		else if (ident.equalsIgnoreCase("grad")) { //$NON-NLS-1$
-			valueType = CSSPrimitiveValue.CSS_GRAD;
-		}
-		else if (ident.equalsIgnoreCase("ms")) { //$NON-NLS-1$
-			valueType = CSSPrimitiveValue.CSS_MS;
-		}
-		else if (ident.equalsIgnoreCase("s")) { //$NON-NLS-1$
-			valueType = CSSPrimitiveValue.CSS_S;
-		}
-		else if (ident.equalsIgnoreCase("hz")) { //$NON-NLS-1$
-			valueType = CSSPrimitiveValue.CSS_HZ;
-		}
-		else if (ident.equalsIgnoreCase("khz")) { //$NON-NLS-1$
-			valueType = CSSPrimitiveValue.CSS_KHZ;
-		}
-		else {
-			valueType = CSSPrimitiveValue.CSS_DIMENSION;
-		}
-		return valueType;
-	}
-
-	/**
-	 * 
-	 */
-	static short getFloatValueType(String value, String ident) {
-		ident = ident.toLowerCase();
-		short valueType;
-		if (ident.length() == 0) {
-			if (0 <= value.indexOf('.')) {
-				valueType = CSSPrimitiveValue.CSS_NUMBER;
-			}
-			else {
-				valueType = ICSSPrimitiveValue.CSS_INTEGER;
-			}
-		}
-		else if (ident.equals("%")) { //$NON-NLS-1$
-			valueType = CSSPrimitiveValue.CSS_PERCENTAGE;
-		}
-		else if (ident.equalsIgnoreCase("em")) { //$NON-NLS-1$
-			valueType = CSSPrimitiveValue.CSS_EMS;
-		}
-		else if (ident.equalsIgnoreCase("ex")) { //$NON-NLS-1$
-			valueType = CSSPrimitiveValue.CSS_EXS;
-		}
-		else if (ident.equalsIgnoreCase("px")) { //$NON-NLS-1$
-			valueType = CSSPrimitiveValue.CSS_PX;
-		}
-		else if (ident.equalsIgnoreCase("cm")) { //$NON-NLS-1$
-			valueType = CSSPrimitiveValue.CSS_CM;
-		}
-		else if (ident.equalsIgnoreCase("mm")) { //$NON-NLS-1$
-			valueType = CSSPrimitiveValue.CSS_MM;
-		}
-		else if (ident.equalsIgnoreCase("in")) { //$NON-NLS-1$
-			valueType = CSSPrimitiveValue.CSS_IN;
-		}
-		else if (ident.equalsIgnoreCase("pt")) { //$NON-NLS-1$
-			valueType = CSSPrimitiveValue.CSS_PT;
-		}
-		else if (ident.equalsIgnoreCase("pc")) { //$NON-NLS-1$
-			valueType = CSSPrimitiveValue.CSS_PC;
-		}
-		else if (ident.equalsIgnoreCase("deg")) { //$NON-NLS-1$
-			valueType = CSSPrimitiveValue.CSS_DEG;
-		}
-		else if (ident.equalsIgnoreCase("rad")) { //$NON-NLS-1$
-			valueType = CSSPrimitiveValue.CSS_RAD;
-		}
-		else if (ident.equalsIgnoreCase("grad")) { //$NON-NLS-1$
-			valueType = CSSPrimitiveValue.CSS_GRAD;
-		}
-		else if (ident.equalsIgnoreCase("ms")) { //$NON-NLS-1$
-			valueType = CSSPrimitiveValue.CSS_MS;
-		}
-		else if (ident.equalsIgnoreCase("s")) { //$NON-NLS-1$
-			valueType = CSSPrimitiveValue.CSS_S;
-		}
-		else if (ident.equalsIgnoreCase("hz")) { //$NON-NLS-1$
-			valueType = CSSPrimitiveValue.CSS_HZ;
-		}
-		else if (ident.equalsIgnoreCase("khz")) { //$NON-NLS-1$
-			valueType = CSSPrimitiveValue.CSS_KHZ;
-		}
-		else {
-			valueType = CSSPrimitiveValue.CSS_DIMENSION;
-		}
-		return valueType;
-	}
-
-	/**
-	 * 
-	 */
-	private String getFunctionName(ITextRegionList regions) {
-		if (regions == null || regions.size() < 2) {
-			return null;
-		}
-		ITextRegion firstRegion = regions.get(0);
-		if (firstRegion.getType() != CSSRegionContexts.CSS_DECLARATION_VALUE_FUNCTION) {
-			return null;
-		}
-		ITextRegion lastRegion = regions.get(regions.size() - 1);
-		if (lastRegion.getType() != CSSRegionContexts.CSS_DECLARATION_VALUE_PARENTHESIS_CLOSE) {
-			return null;
-		}
-		String text = getText(firstRegion);
-		return text.substring(0, text.length() - 1);
-	}
-
-	/**
-	 * this method has no validation check, then regions must be passed
-	 * getFunctionName()...
-	 */
-	private ITextRegionList getFunctionParameters(ITextRegionList regions, String[] accepts) {
-		ITextRegionList newRegions = new TextRegionListImpl();
-		int nAccepts = (accepts != null) ? accepts.length : 0;
-		Iterator i = regions.iterator();
-		i.next(); // skip FUNCTION
-		while (i.hasNext()) {
-			ITextRegion region = (ITextRegion) i.next();
-			if (region == null) {
-				continue;
-			}
-			String type = region.getType();
-			if (isBlank(type)) {
-				continue;
-			}
-			if (nAccepts == 0) {
-				newRegions.add(region);
-			}
-			else {
-				for (int iAccept = 0; iAccept < nAccepts; iAccept++) {
-					if (type == accepts[iAccept]) {
-						newRegions.add(region);
-						break;
-					}
-				}
-			}
-		}
-		return newRegions;
-	}
-
-	/**
-	 * 
-	 */
-	// private String getPropertyName(IStructuredDocumentRegion flatNode) {
-	// Vector nodeRegions = new Vector(flatNode.getRegions());
-	// return getPropertyName(nodeRegions);
-	// }
-	/**
-	 * 
-	 */
-	private String getPropertyName(ITextRegionList nodeRegions) {
-		ITextRegionList nameRegions = new TextRegionListImpl();
-		String name = null;
-		while (!nodeRegions.isEmpty()) {
-			ITextRegion region = nodeRegions.remove(0);
-			if (region == null) {
-				continue;
-			}
-			String type = region.getType();
-			if (type == CSSRegionContexts.CSS_DECLARATION_SEPARATOR) {
-				CSSUtil.stripSurroundingSpace(nameRegions);
-				name = makeString(nameRegions);
-				break;
-			}
-			else {
-				nameRegions.add(region);
-			}
-		}
-		return name;
-	}
-
-	/**
-	 * 
-	 */
-	private RectImpl getRect() {
-		RectImpl node;
-		if (fUpdateContext != null && fUpdateContext.isActive()) {
-			node = fUpdateContext.getRect();
-		}
-		else {
-			node = (RectImpl) fDocument.createCSSPrimitiveValue(CSSPrimitiveValue.CSS_RECT);
-		}
-		return node;
-	}
-
-	/**
-	 * 
-	 */
-	private RGBColorImpl getRGBColor() {
-		RGBColorImpl node;
-		if (fUpdateContext != null && fUpdateContext.isActive()) {
-			node = fUpdateContext.getRGBColor();
-		}
-		else {
-			node = (RGBColorImpl) fDocument.createCSSPrimitiveValue(CSSPrimitiveValue.CSS_RGBCOLOR);
-		}
-		return node;
-	}
-
-	/**
-	 * 
-	 */
-	private short getStringValueType(String text, String type) {
-		short valueType;
-		if (text.toLowerCase().equals("inherit")) { //$NON-NLS-1$
-			valueType = ICSSPrimitiveValue.CSS_INHERIT_PRIMITIVE;
-		}
-		else if (type == CSSRegionContexts.CSS_DECLARATION_VALUE_URI) {
-			valueType = CSSPrimitiveValue.CSS_URI;
-		}
-		else if (type == CSSRegionContexts.CSS_DECLARATION_VALUE_STRING) {
-			valueType = CSSPrimitiveValue.CSS_STRING;
-		}
-		else if (type == CSSRegionContexts.CSS_DECLARATION_VALUE_HASH) {
-			valueType = ICSSPrimitiveValue.CSS_HASH;
-		}
-		else if (type == CSSRegionContexts.CSS_DECLARATION_VALUE_OPERATOR && text.equals(",")) { //$NON-NLS-1$
-			valueType = ICSSPrimitiveValue.CSS_COMMA;
-		}
-		else if (type == CSSRegionContexts.CSS_DECLARATION_VALUE_OPERATOR && text.equals("/")) { //$NON-NLS-1$
-			valueType = ICSSPrimitiveValue.CSS_SLASH;
-		}
-		else if (type == CSSRegionContexts.CSS_DECLARATION_VALUE_UNICODE_RANGE) {
-			valueType = ICSSPrimitiveValue.CSS_URANGE;
-		}
-		else {
-			valueType = CSSPrimitiveValue.CSS_IDENT;
-		}
-		return valueType;
-	}
-
-	/**
-	 * 
-	 */
-	private String makeString(ITextRegionList regions) {
-		StringBuffer buf = new StringBuffer();
-		boolean bSpace = false;
-		for (Iterator i = regions.iterator(); i.hasNext();) {
-			ITextRegion region = (ITextRegion) i.next();
-			String type = region.getType();
-			if (!bSpace && isBlank(type)) {
-				buf.append(" "); //$NON-NLS-1$
-				bSpace = true;
-			}
-			else {
-				buf.append(getText(region));
-				bSpace = false;
-			}
-		}
-
-		return buf.toString();
-	}
-
-	/**
-	 * 
-	 */
-	void setStructuredDocumentTemporary(boolean bTemp) {
-		fTempStructuredDocument = bTemp;
-	}
-
-	/**
-	 * 
-	 */
-	private void setFloatValue(CSSPrimitiveValueImpl value, String text, String type) {
-		FloatInfo info = new FloatInfo(text);
-		value.setFloatValue(info.getValueType(), info.getValue());
-	}
-
-	/**
-	 * 
-	 */
-	private void setStringValue(CSSPrimitiveValueImpl value, String text, String type) {
-		short valueType = getStringValueType(text, type);
-		value.setStringValue(valueType, text);
-	}
-
-	/**
-	 * @param item
-	 *            org.eclipse.wst.css.core.model.interfaces.ICSSStyleDeclItem
-	 * @param nodeRegions
-	 *            java.util.Vector
-	 */
-	private void setupImportantAttribute(ICSSStyleDeclItem item, ITextRegionList nodeRegions) {
-		if (item == null || nodeRegions == null || nodeRegions.isEmpty()) {
-			return;
-		}
-		ITextRegion region = nodeRegions.get(nodeRegions.size() - 1);
-		if (region != null && region.getType() == CSSRegionContexts.CSS_DECLARATION_VALUE_IMPORTANT) {
-			item.setPriority(getText(region));
-			CSSAttrImpl attr = ((CSSStyleDeclItemImpl) item).getAttributeNode(ICSSStyleDeclItem.IMPORTANT);
-			attr.setRangeRegion(fParentRegion, region, region);
-			nodeRegions.remove(region);
-		}
-	}
-
-	/**
-	 * 
-	 */
-	void setUpdateContext(CSSModelUpdateContext updateContext) {
-		fUpdateContext = updateContext;
-	}
-
-	/**
-	 * 
-	 */
-	public static boolean hasColonSeparator(IStructuredDocumentRegion flatNode) {
-		if (flatNode == null) {
-			return false;
-		}
-		ITextRegionList regions = flatNode.getRegions();
-		if (regions == null || regions.size() == 0) {
-			return false;
-		}
-
-		for (Iterator i = regions.iterator(); i.hasNext();) {
-			ITextRegion region = (ITextRegion) i.next();
-			if (region == null) {
-				continue;
-			}
-			if (region.getType() == CSSRegionContexts.CSS_DECLARATION_SEPARATOR) {
-				return true;
-			}
-		}
-
-		return false;
-	}
-
-	/**
-	 * 
-	 */
-	CSSStyleDeclItemImpl setupDeclarationItem(IStructuredDocumentRegion flatNode) {
-		if (flatNode == null) {
-			return null;
-		}
-		if (!hasColonSeparator(flatNode)) {
-			return null;
-		}
-
-		fParentRegion = flatNode;
-
-		ITextRegionList nodeRegions = new TextRegionListImpl(flatNode.getRegions()); // make
-		// copy
-		CSSStyleDeclItemImpl newItem = createDeclarationItem(nodeRegions);
-		if (newItem == null) {
-			return null;
-		}
-		if (!fTempStructuredDocument && flatNode != null) {
-			newItem.setRangeStructuredDocumentRegion(flatNode, flatNode);
-		}
-
-		CSSUtil.stripSurroundingSpace(nodeRegions);
-		setupImportantAttribute(newItem, nodeRegions);
-		// Now, nodeRegions just has regions for value.
-		setupValues(newItem, nodeRegions);
-		return newItem;
-	}
-
-	void setupValues(ICSSStyleDeclItem item, IStructuredDocumentRegion parentRegion, ITextRegionList nodeRegions) {
-		fParentRegion = parentRegion;
-		setupValues(item, nodeRegions);
-	}
-
-	/**
-	 * nodeRegions must be broken. If you need after, make copy of them.
-	 */
-	private void setupValues(ICSSStyleDeclItem item, ITextRegionList nodeRegions) {
-		if (item == null) {
-			return;
-		}
-
-		ICSSPrimitiveValue value;
-		ITextRegionList regionBuf = new TextRegionListImpl();
-
-		String propertyName = item.getPropertyName().toLowerCase();
-		boolean bFont = (propertyName.equals(PropCMProperty.P_FONT));
-		// (short-hand) font
-		int status = (propertyName.equals(PropCMProperty.P_VOICE_FAMILY) || propertyName.equals(PropCMProperty.P_FONT_FAMILY)) ? S_COMMA_SEPARATION : S_NORMAL;
-		while (!nodeRegions.isEmpty()) {
-			value = null;
-			ITextRegion region = nodeRegions.remove(0);
-			if (region == null) {
-				continue;
-			}
-			String type = region.getType();
-			// if (type == CSSRegionContexts.CSS_DECLARATION_DELIMITER || type
-			// == CSSRegionContexts.CSS_RBRACE) {
-			// break;
-			// }
-			switch (status) {
-				case S_NORMAL :
-					if (type == CSSRegionContexts.CSS_DECLARATION_VALUE_FUNCTION) {
-						regionBuf.add(region);
-						status = S_FUNCTION;
-					}
-					else if (bFont && type == CSSRegionContexts.CSS_DECLARATION_VALUE_OPERATOR && fParentRegion.getText(region).equals("/")) { //$NON-NLS-1$
-						value = createPrimitiveValue(region);
-						status = S_FONT_SLASH;
-					}
-					else if (!isBlank(type)) {
-						value = createPrimitiveValue(region);
-					}
-					break;
-				case S_FUNCTION :
-					if (type == CSSRegionContexts.CSS_DECLARATION_VALUE_PARENTHESIS_CLOSE) {
-						regionBuf.add(region);
-						value = createPrimitiveValue(regionBuf);
-						regionBuf.clear();
-						status = S_NORMAL;
-					}
-					else if (!isBlank(type)) {
-						regionBuf.add(region);
-					}
-					break;
-				case S_FONT_SLASH :
-					if (type == CSSRegionContexts.CSS_DECLARATION_VALUE_DIMENSION) {
-						value = createPrimitiveValue(region);
-						status = S_COMMA_SEPARATION;
-					}
-					else if (!isBlank(type)) {
-						value = createPrimitiveValue(region);
-					}
-					break;
-				case S_COMMA_SEPARATION :
-					if (type == CSSRegionContexts.CSS_DECLARATION_VALUE_OPERATOR && fParentRegion.getText(region).equals(",")) { //$NON-NLS-1$
-						value = createPrimitiveValue(regionBuf);
-						regionBuf.clear();
-						if (value != null) {
-							if (fUpdateContext == null || !fUpdateContext.isActive()) {
-								item.appendValue(value);
-							}
-						}
-						value = createPrimitiveValue(region);
-					}
-					else {
-						regionBuf.add(region);
-					}
-					break;
-				default :
-					break;
-			}
-			if (value != null) {
-				if (fUpdateContext == null || !fUpdateContext.isActive()) {
-					item.appendValue(value);
-				}
-			}
-		}
-		if (!regionBuf.isEmpty()) {
-			value = createPrimitiveValue(regionBuf);
-			if (fUpdateContext == null || !fUpdateContext.isActive()) {
-				item.appendValue(value);
-			}
-		}
-	}
-
-	private String getText(ITextRegion region) {
-		return (fParentRegion != null) ? fParentRegion.getText(region) : ""; //$NON-NLS-1$ 
-	}
-
-	private static boolean isBlank(String type) {
-		return (type == CSSRegionContexts.CSS_S || type == CSSRegionContexts.CSS_COMMENT || type == CSSRegionContexts.CSS_DECLARATION_VALUE_S);
-	}
-
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/document/CSSDocumentImpl.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/document/CSSDocumentImpl.java
deleted file mode 100644
index c0a688e..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/document/CSSDocumentImpl.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.wst.css.core.internal.document;
-
-
-
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSCharsetRule;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSDocument;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSImportRule;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSMediaRule;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSModel;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSNode;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSPageRule;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSPrimitiveValue;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSStyleDeclItem;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSStyleDeclaration;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSStyleRule;
-import org.w3c.dom.css.CSSFontFaceRule;
-import org.w3c.dom.css.CSSPrimitiveValue;
-import org.w3c.dom.css.CSSRule;
-import org.w3c.dom.css.CSSUnknownRule;
-import org.w3c.dom.stylesheets.MediaList;
-
-
-/**
- * 
- */
-abstract class CSSDocumentImpl extends CSSStructuredDocumentRegionContainer implements ICSSDocument {
-
-	private CSSModelImpl fModel = null;
-
-	/**
-	 * CSSDocumentImpl constructor comment.
-	 */
-	CSSDocumentImpl() {
-		super();
-	}
-
-
-	CSSDocumentImpl(CSSDocumentImpl that) {
-		super(that);
-	}
-
-	ICSSNode createCSSAttr(String name) {
-		CSSAttrImpl attr = new CSSAttrImpl(name);
-		attr.setOwnerDocument(this);
-
-		return attr;
-	}
-
-	/**
-	 * @return org.w3c.dom.css.CSSCharsetRule
-	 */
-	public ICSSCharsetRule createCSSCharsetRule() {
-		return null;
-	}
-
-	/**
-	 * @return org.w3c.dom.css.CSSFontFaceRule
-	 */
-	public CSSFontFaceRule createCSSFontFaceRule() {
-		return null;
-	}
-
-	/**
-	 * @return org.w3c.dom.css.CSSImportRule
-	 */
-	public ICSSImportRule createCSSImportRule() {
-		return null;
-	}
-
-	/**
-	 * @return org.w3c.dom.css.ICSSMediaRule
-	 */
-	public ICSSMediaRule createCSSMediaRule() {
-		return null;
-	}
-
-	/**
-	 * @return org.w3c.dom.css.CSSPageRule
-	 */
-	public ICSSPageRule createCSSPageRule() {
-		return null;
-	}
-
-	/**
-	 * @return org.w3c.dom.css.CSSPrimitiveValue
-	 */
-	public ICSSPrimitiveValue createCSSPrimitiveValue(short primitiveType) {
-		CSSPrimitiveValueImpl value = null;
-		if (primitiveType == CSSPrimitiveValue.CSS_COUNTER)
-			value = new CounterImpl();
-		else if (primitiveType == CSSPrimitiveValue.CSS_RECT)
-			value = new RectImpl();
-		else if (primitiveType == CSSPrimitiveValue.CSS_RGBCOLOR)
-			value = new RGBColorImpl();
-		else
-			value = new CSSPrimitiveValueImpl(primitiveType);
-		value.setOwnerDocument(this);
-
-		return value;
-	}
-
-	/**
-	 * @return org.w3c.dom.css.CSSRule
-	 * @param rule
-	 *            java.lang.String
-	 */
-	public CSSRule createCSSRule(String rule) {
-		return null;
-	}
-
-	/**
-	 * @return org.w3c.dom.css.CSSStyleDeclaration
-	 */
-	public ICSSStyleDeclaration createCSSStyleDeclaration() {
-		return null;
-	}
-
-	public ICSSStyleDeclItem createCSSStyleDeclItem(String propertyName) {
-		CSSStyleDeclItemImpl item = new CSSStyleDeclItemImpl(propertyName);
-		item.setOwnerDocument(this);
-
-		return item;
-	}
-
-	/**
-	 * @return org.w3c.dom.css.CSSStyleRule
-	 */
-	public ICSSStyleRule createCSSStyleRule() {
-		return null;
-	}
-
-	/**
-	 * @return org.w3c.dom.css.CSSUnknownRule
-	 */
-	public CSSUnknownRule createCSSUnknownRule() {
-		return null;
-	}
-
-	/**
-	 * @return org.w3c.dom.stylesheets.MediaList
-	 */
-	public MediaList createMediaList() {
-		return null;
-	}
-
-	public ICSSModel getModel() {
-		return fModel;
-	}
-
-	void setModel(CSSModelImpl model) {
-		this.fModel = model;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/document/CSSFontFaceRuleImpl.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/document/CSSFontFaceRuleImpl.java
deleted file mode 100644
index 5dcdc28..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/document/CSSFontFaceRuleImpl.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.wst.css.core.internal.document;
-
-
-
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSNode;
-import org.w3c.dom.css.CSSFontFaceRule;
-
-
-/**
- * 
- */
-class CSSFontFaceRuleImpl extends CSSRuleDeclContainer implements CSSFontFaceRule {
-
-	/**
-	 * 
-	 */
-	CSSFontFaceRuleImpl() {
-		super();
-	}
-
-	CSSFontFaceRuleImpl(CSSFontFaceRuleImpl that) {
-		super(that);
-	}
-
-	public ICSSNode cloneNode(boolean deep) {
-		CSSFontFaceRuleImpl cloned = new CSSFontFaceRuleImpl(this);
-
-		if (deep)
-			cloneChildNodes(cloned, deep);
-
-		return cloned;
-	}
-
-	/**
-	 * @return java.lang.String
-	 */
-	String extractPreString() {
-		return "@font-face";//$NON-NLS-1$
-	}
-
-	/**
-	 * @return short
-	 */
-	public short getNodeType() {
-		return FONTFACERULE_NODE;
-	}
-
-	/**
-	 * The type of the rule, as defined above. The expectation is that
-	 * binding-specific casting methods can be used to cast down from an
-	 * instance of the <code>CSSRule</code> interface to the specific
-	 * derived interface implied by the <code>type</code>.
-	 */
-	public short getType() {
-		return FONT_FACE_RULE;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/document/CSSImportRuleImpl.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/document/CSSImportRuleImpl.java
deleted file mode 100644
index db425d2..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/document/CSSImportRuleImpl.java
+++ /dev/null
@@ -1,225 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this 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.core.internal.document;
-
-
-
-import org.eclipse.wst.css.core.internal.Logger;
-import org.eclipse.wst.css.core.internal.provisional.adapters.IModelProvideAdapter;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSImportRule;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSModel;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSNode;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSStyleSheet;
-import org.eclipse.wst.css.core.internal.util.CSSLinkConverter;
-import org.eclipse.wst.css.core.internal.util.CSSUtil;
-import org.eclipse.wst.css.core.internal.util.URLModelProviderCSS;
-import org.eclipse.wst.sse.core.internal.provisional.INodeNotifier;
-import org.eclipse.wst.sse.core.internal.provisional.IStructuredModel;
-import org.eclipse.wst.xml.core.internal.provisional.document.IDOMNode;
-import org.w3c.dom.DOMException;
-import org.w3c.dom.css.CSSStyleSheet;
-import org.w3c.dom.stylesheets.MediaList;
-
-
-/**
- * 
- */
-class CSSImportRuleImpl extends CSSRuleImpl implements ICSSImportRule {
-
-	private boolean fDirty = true;
-	private ICSSStyleSheet fStyleSheet;
-
-	/**
-	 * 
-	 */
-	CSSImportRuleImpl() {
-		super();
-	}
-
-	CSSImportRuleImpl(CSSImportRuleImpl that) {
-		super(that);
-	}
-
-	public ICSSNode cloneNode(boolean deep) {
-		CSSImportRuleImpl cloned = new CSSImportRuleImpl(this);
-
-		if (deep)
-			cloneChildNodes(cloned, deep);
-
-		return cloned;
-	}
-
-	/**
-	 * 
-	 */
-	void closeStyleSheet() {
-		if (fStyleSheet != null) {
-			ICSSStyleSheet sheet = fStyleSheet;
-			fStyleSheet = null; // to prevent loop, we must reset fStyleSheet
-								// before all closing action
-
-			sheet.getModel().removeStyleListener(getOwnerDocument().getModel());
-			// get ModelProvideAdapter
-			IModelProvideAdapter adapter = (IModelProvideAdapter) getAdapterFor(IModelProvideAdapter.class);
-			// if (getOwnerDocument().getModel().getStyleSheetType() ==
-			// ICSSModel.EMBEDDED) { // case STYLE tag
-			// adapter = (ModelProvideAdapter)
-			// ((INodeNotifier)getOwnerDocument().getModel().getOwnerDOMNode()).getAdapterFor(ModelProvideAdapter.class);
-			// }
-			if (adapter != null)
-				adapter.modelRemoved(sheet.getModel());
-
-			sheet.getModel().releaseFromRead();
-		}
-	}
-
-	/**
-	 * The location of the style sheet to be imported. The attribute will not
-	 * contain the <code>"url(...)"</code> specifier around the URI.
-	 */
-	public String getHref() {
-		return CSSUtil.extractUriContents(getAttribute(HREF));
-	}
-
-	/**
-	 * A list of media types for which this style sheet may be used.
-	 */
-	public org.w3c.dom.stylesheets.MediaList getMedia() {
-		ICSSNode media = getFirstChild();
-		if (media != null) {
-			if (media instanceof MediaList) {
-				return (MediaList) media;
-			}
-		}
-
-		// THIS CASE IS ERROR CASE
-		return null;
-	}
-
-	/**
-	 * @return short
-	 */
-	public short getNodeType() {
-		return IMPORTRULE_NODE;
-	}
-
-	/**
-	 * The style sheet referred to by this rule, if it has been loaded. The
-	 * value of this attribute is <code>null</code> if the style sheet has
-	 * not yet been loaded or if it will not be loaded (e.g. if the style
-	 * sheet is for a media type not supported by the user agent).
-	 */
-	public CSSStyleSheet getStyleSheet() {
-
-		if (fDirty) {
-			// NOTE: try/catch block is a TEMP fix to avoid compile errors:
-			try {
-				closeStyleSheet();
-
-				if (getHref() == null || getHref().length() <= 0) {
-					fDirty = false;
-					return null;
-				}
-
-				IStructuredModel baseModel = getOwnerDocument().getModel();
-				if (getOwnerDocument().getModel().getStyleSheetType() == ICSSModel.EMBEDDED) { // case
-																								// STYLE
-																								// tag
-					baseModel = ((IDOMNode) getOwnerDocument().getModel().getOwnerDOMNode()).getModel();
-				}
-				// get ModelProvideAdapter
-				IModelProvideAdapter adapter = (IModelProvideAdapter) getAdapterFor(IModelProvideAdapter.class);
-				// if (getOwnerDocument().getModel().getStyleSheetType() ==
-				// ICSSModel.EMBEDDED) { // case STYLE tag
-				// adapter = (ModelProvideAdapter)
-				// ((INodeNotifier)getOwnerDocument().getModel().getOwnerDOMNode()).getAdapterFor(ModelProvideAdapter.class);
-				// }
-
-				// load model from IModelManager
-				URLModelProviderCSS provider = new URLModelProviderCSS();
-				IStructuredModel newModel = provider.getModelForRead(baseModel, getHref());
-				fDirty = false;
-
-				if (newModel == null)
-					return null;
-				if (!(newModel instanceof ICSSModel)) {
-					newModel.releaseFromRead();
-					return null;
-				}
-
-				// notify adapter
-				if (adapter != null)
-					adapter.modelProvided(newModel);
-
-				fStyleSheet = (ICSSStyleSheet) ((ICSSModel) newModel).getDocument();
-				if (fStyleSheet != null)
-					fStyleSheet.getModel().addStyleListener(getOwnerDocument().getModel());
-			}
-			catch (java.io.IOException e) {
-				Logger.logException(e);
-			}
-		}
-		return fStyleSheet;
-	}
-
-	/**
-	 * The type of the rule, as defined above. The expectation is that
-	 * binding-specific casting methods can be used to cast down from an
-	 * instance of the <code>CSSRule</code> interface to the specific
-	 * derived interface implied by the <code>type</code>.
-	 */
-	public short getType() {
-		return IMPORT_RULE;
-	}
-
-	/**
-	 * 
-	 */
-	public void refreshStyleSheet() {
-		if (!fDirty) {
-			closeStyleSheet();
-			fDirty = true;
-			notify(INodeNotifier.CHANGE, getAttributeNode(HREF), null, null, getStartOffset());
-		}
-	}
-
-	/**
-	 */
-	void releaseRule() {
-		if (fStyleSheet != null) {
-			ICSSStyleSheet sheet = fStyleSheet;
-			fStyleSheet = null; // to prevent loop, we must reset fStyleSheet
-								// before all closing action
-
-			sheet.getModel().removeStyleListener(getOwnerDocument().getModel());
-			// get ModelProvideAdapter
-			IModelProvideAdapter adapter = (IModelProvideAdapter) getAdapterFor(IModelProvideAdapter.class);
-			// if (getOwnerDocument().getModel().getStyleSheetType() ==
-			// ICSSModel.EMBEDDED) { // case STYLE tag
-			// adapter = (ModelProvideAdapter)
-			// ((INodeNotifier)getOwnerDocument().getModel().getOwnerDOMNode()).getAdapterFor(ModelProvideAdapter.class);
-			// }
-			if (adapter != null)
-				adapter.modelReleased(sheet.getModel());
-
-			sheet.getModel().releaseFromRead();
-		}
-	}
-
-	/**
-	 * @param href
-	 *            java.lang.String
-	 */
-	public void setHref(String href) throws DOMException {
-		fDirty = true;
-		setAttribute(HREF, CSSLinkConverter.addFunc(href));
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/document/CSSMediaRuleImpl.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/document/CSSMediaRuleImpl.java
deleted file mode 100644
index 492c836..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/document/CSSMediaRuleImpl.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.wst.css.core.internal.document;
-
-
-
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSMediaRule;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSNode;
-import org.w3c.dom.DOMException;
-import org.w3c.dom.css.CSSRule;
-import org.w3c.dom.css.CSSRuleList;
-import org.w3c.dom.stylesheets.MediaList;
-
-
-/**
- * 
- */
-class CSSMediaRuleImpl extends CSSRuleImpl implements ICSSMediaRule {
-
-	/**
-	 * 
-	 */
-	CSSMediaRuleImpl() {
-		super();
-	}
-
-	CSSMediaRuleImpl(CSSMediaRuleImpl that) {
-		super(that);
-	}
-
-	/**
-	 * @return org.w3c.dom.css.CSSRule
-	 * @param rule
-	 *            org.w3c.dom.css.CSSRule
-	 * @exception org.w3c.dom.DOMException
-	 *                The exception description.
-	 */
-	public org.w3c.dom.css.CSSRule appendRule(org.w3c.dom.css.CSSRule rule) throws org.w3c.dom.DOMException {
-		if (rule == null)
-			return null;
-
-		CSSRule ret = (CSSRule) appendChild((CSSNodeImpl) rule);
-		return ret;
-	}
-
-	public ICSSNode cloneNode(boolean deep) {
-		CSSMediaRuleImpl cloned = new CSSMediaRuleImpl(this);
-
-		if (deep)
-			cloneChildNodes(cloned, deep);
-
-		return cloned;
-	}
-
-	/**
-	 * Used to delete a rule from the media block.
-	 * 
-	 * @param index
-	 *            The index within the media block's rule collection of the
-	 *            rule to remove.
-	 * @exception DOMException
-	 *                INDEX_SIZE_ERR: Raised if the specified index does not
-	 *                correspond to a rule in the media rule list. <br>
-	 *                NO_MODIFICATION_ALLOWED_ERR: Raised if this media rule
-	 *                is readonly.
-	 */
-	public void deleteRule(int index) throws DOMException {
-		CSSNodeImpl node = getIndexedRule(index);
-		if (node != null)
-			removeChild(node);
-	}
-
-	/**
-	 * A list of all CSS rules contained within the media block.
-	 */
-	public CSSRuleList getCssRules() {
-		CSSRuleListImpl list = new CSSRuleListImpl();
-
-		for (ICSSNode node = getFirstChild(); node != null; node = node.getNextSibling()) {
-			if (node instanceof CSSRule)
-				list.appendNode(node);
-		}
-
-		return list;
-	}
-
-	CSSRuleImpl getIndexedRule(int index) {
-		if (index < 0)
-			return null;
-
-		int i = 0;
-		for (ICSSNode node = getFirstChild(); node != null; node = node.getNextSibling()) {
-			if (node instanceof CSSRule) {
-				if (i++ == index)
-					return (CSSRuleImpl) node;
-			}
-		}
-		return null;
-	}
-
-	/**
-	 * A list of media types for this rule.
-	 */
-	public MediaList getMedia() {
-		for (ICSSNode node = getFirstChild(); node != null; node = node.getNextSibling()) {
-			if (node instanceof MediaListImpl)
-				return (MediaList) node;
-		}
-
-		return null;
-	}
-
-	/**
-	 * @return short
-	 */
-	public short getNodeType() {
-		return MEDIARULE_NODE;
-	}
-
-	/**
-	 * The type of the rule, as defined above. The expectation is that
-	 * binding-specific casting methods can be used to cast down from an
-	 * instance of the <code>CSSRule</code> interface to the specific
-	 * derived interface implied by the <code>type</code>.
-	 */
-	public short getType() {
-		return MEDIA_RULE;
-	}
-
-	/**
-	 * Used to insert a new rule into the media block.
-	 * 
-	 * @param rule
-	 *            The parsable text representing the rule. For rule sets this
-	 *            contains both the selector and the style declaration. For
-	 *            at-rules, this specifies both the at-identifier and the rule
-	 *            content.
-	 * @param index
-	 *            The index within the media block's rule collection of the
-	 *            rule before which to insert the specified rule. If the
-	 *            specified index is equal to the length of the media blocks's
-	 *            rule collection, the rule will be added to the end of the
-	 *            media block.
-	 * @return The index within the media block's rule collection of the newly
-	 *         inserted rule.
-	 * @exception DOMException
-	 *                HIERARCHY_REQUEST_ERR: Raised if the rule cannot be
-	 *                inserted at the specified index, e.g., if an
-	 *                <code>@import</code> rule is inserted after a standard rule set or other
-	 *         at-rule. <br>
-	 *         INDEX_SIZE_ERR: Raised if the specified index is not a valid
-	 *         insertion point. <br>
-	 *         NO_MODIFICATION_ALLOWED_ERR: Raised if this media rule is
-	 *         readonly. <br>
-	 *         SYNTAX_ERR: Raised if the specified rule has a syntax error and
-	 *         is unparsable.
-	 */
-	public int insertRule(String rule, int index) throws DOMException {
-		int length = getCssRules().getLength();
-		if (index < 0 || length < index)
-			throw new DOMException(DOMException.INDEX_SIZE_ERR, "");//$NON-NLS-1$
-
-		CSSRuleImpl refRule = (length != index) ? getIndexedRule(index) : null;
-
-		CSSRuleImpl newRule = (CSSRuleImpl) getOwnerDocument().createCSSRule(rule);
-
-		// prevent from nesting @media rule
-		if (newRule.getType() == CSSRule.MEDIA_RULE)
-			throw new DOMException(DOMException.SYNTAX_ERR, "");//$NON-NLS-1$
-
-		insertBefore(newRule, refRule);
-
-		return index;
-	}
-
-	/**
-	 * @return org.w3c.dom.css.CSSRule
-	 * @param newRule
-	 *            org.w3c.dom.css.CSSRule
-	 * @param refRule
-	 *            org.w3c.dom.css.CSSRule
-	 */
-	public org.w3c.dom.css.CSSRule insertRuleBefore(org.w3c.dom.css.CSSRule newRule, org.w3c.dom.css.CSSRule refRule) throws org.w3c.dom.DOMException {
-		if (newRule == null && refRule == null)
-			return null;
-
-		CSSRule ret = (CSSRule) insertBefore((CSSNodeImpl) newRule, (CSSNodeImpl) refRule);
-		return ret;
-	}
-
-	/**
-	 * @return org.w3c.dom.css.CSSRule
-	 * @param rule
-	 *            org.w3c.dom.css.CSSRule
-	 * @exception org.w3c.dom.DOMException
-	 *                The exception description.
-	 */
-	public org.w3c.dom.css.CSSRule removeRule(org.w3c.dom.css.CSSRule rule) throws org.w3c.dom.DOMException {
-		if (rule == null)
-			return null;
-
-		CSSRule ret = (CSSRule) removeChild((CSSNodeImpl) rule);
-		return ret;
-	}
-
-	/**
-	 * @return org.w3c.dom.css.CSSRule
-	 * @param newChild
-	 *            org.w3c.dom.css.CSSRule
-	 * @param oldChild
-	 *            org.w3c.dom.css.CSSRule
-	 * @exception org.w3c.dom.DOMException
-	 *                The exception description.
-	 */
-	public org.w3c.dom.css.CSSRule replaceRule(org.w3c.dom.css.CSSRule newRule, org.w3c.dom.css.CSSRule oldRule) throws org.w3c.dom.DOMException {
-		if (newRule == null && oldRule == null)
-			return null;
-
-		CSSRule ret = (CSSRule) replaceChild((CSSNodeImpl) newRule, (CSSNodeImpl) oldRule);
-		return ret;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/document/CSSModelCreationContext.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/document/CSSModelCreationContext.java
deleted file mode 100644
index 313f28c..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/document/CSSModelCreationContext.java
+++ /dev/null
@@ -1,155 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this 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.core.internal.document;
-
-
-
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSNode;
-import org.eclipse.wst.sse.core.internal.provisional.text.IStructuredDocumentRegion;
-
-
-/**
- * 
- */
-class CSSModelCreationContext {
-
-	private CSSNodeImpl fRootNode = null;
-	private CSSNodeImpl fTargetNode = null;
-	private CSSNodeImpl fNextNode = null;
-	private int fReparseStart = -1;
-	private int fReparseEnd = -1;
-
-	/**
-	 * CSSModelContext constructor comment.
-	 */
-	CSSModelCreationContext(CSSNodeImpl rootNode) {
-		super();
-
-		fRootNode = rootNode;
-	}
-
-	/**
-	 * 
-	 */
-	void clear() {
-		fNextNode = null;
-		fTargetNode = null;
-		resetReparseRange();
-	}
-
-	/**
-	 * 
-	 */
-	CSSNodeImpl getNextNode() {
-		return fNextNode;
-	}
-
-	/**
-	 * 
-	 */
-	int getReparseEnd() {
-		return fReparseEnd;
-	}
-
-	/**
-	 * 
-	 */
-	int getReparseStart() {
-		return fReparseStart;
-	}
-
-	/**
-	 * 
-	 */
-	CSSNodeImpl getRootNode() {
-		return fRootNode;
-	}
-
-	/**
-	 * 
-	 */
-	CSSNodeImpl getTargetNode() {
-		return fTargetNode;
-	}
-
-	/**
-	 * 
-	 */
-	boolean isToReparse() {
-		return (0 <= getReparseStart() && 0 <= getReparseEnd());
-	}
-
-	/**
-	 * 
-	 */
-	void resetReparseRange() {
-		fReparseStart = fReparseEnd = -1;
-	}
-
-	/**
-	 * 
-	 */
-	void setLast() {
-		fNextNode = null;
-
-		if (!(fRootNode instanceof CSSStructuredDocumentRegionContainer)) {
-			fTargetNode = fRootNode;
-		}
-		else {
-			IStructuredDocumentRegion lastStructuredDocumentRegion = ((CSSStructuredDocumentRegionContainer) fRootNode).getLastStructuredDocumentRegion();
-			CSSNodeImpl node = fRootNode;
-			while (node != null) {
-				ICSSNode lastChild = node.getLastChild();
-				if (lastChild instanceof CSSStructuredDocumentRegionContainer && ((CSSStructuredDocumentRegionContainer) lastChild).getLastStructuredDocumentRegion() == lastStructuredDocumentRegion) {
-					node = (CSSNodeImpl) lastChild;
-				}
-				else {
-					break;
-				}
-			}
-			fTargetNode = node;
-		}
-	}
-
-	/**
-	 * 
-	 */
-	void setNextNode(ICSSNode node) {
-		fNextNode = (CSSNodeImpl) node;
-		if (fNextNode != null) {
-			fTargetNode = (CSSNodeImpl) fNextNode.getParentNode();
-		}
-	}
-
-	/**
-	 * 
-	 */
-	void setReparseEnd(int end) {
-		fReparseEnd = end;
-	}
-
-	/**
-	 * 
-	 */
-	void setReparseStart(int start) {
-		fReparseStart = start;
-	}
-
-	/**
-	 * 
-	 */
-	void setTargetNode(ICSSNode node) {
-		fTargetNode = (CSSNodeImpl) node;
-		if (fNextNode != null && fNextNode.getParentNode() != fTargetNode) {
-			fNextNode = null;
-		}
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/document/CSSModelDeletionContext.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/document/CSSModelDeletionContext.java
deleted file mode 100644
index c458e5c..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/document/CSSModelDeletionContext.java
+++ /dev/null
@@ -1,268 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this 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.core.internal.document;
-
-
-
-import java.util.ArrayList;
-import java.util.Collection;
-import java.util.Enumeration;
-import java.util.Iterator;
-
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSNode;
-import org.eclipse.wst.css.core.internal.util.CSSUtil;
-import org.eclipse.wst.sse.core.internal.provisional.text.IStructuredDocumentRegion;
-import org.eclipse.wst.sse.core.internal.provisional.text.IStructuredDocumentRegionList;
-
-
-/**
- * 
- */
-class CSSModelDeletionContext {
-
-	private int fOldStart = -1;
-	private int fOldLength = 0;
-	private int fNewStart = -1;
-	private int fNewLength = 0;
-	private int fLengthDifference = 0;
-	private IStructuredDocumentRegionList fOldStructuredDocumentRegions = null;
-	// private ICSSNode fRootNode = null;
-	private int fRemovedRangeBegin = -1;
-	private int fRemovedRangeEnd = -1;
-	private CSSNodeListImpl fNodesToBeRemoved = new CSSNodeListImpl();
-
-	/**
-	 * CSSModelDeletionContext constructor comment.
-	 */
-	CSSModelDeletionContext(ICSSNode rootNode) {
-		super();
-
-		// fRootNode = rootNode;
-	}
-
-	/**
-	 * 
-	 */
-	boolean addNodeToBeRemoved(ICSSNode node) {
-		int nNodes = fNodesToBeRemoved.getLength();
-		for (int i = 0; i < nNodes; i++) {
-			ICSSNode parent = fNodesToBeRemoved.item(i);
-			if (CSSModelUtil.isParentOf(parent, node)) {
-				return false;
-			}
-		}
-		fNodesToBeRemoved.appendNode(node);
-		return true;
-	}
-
-	/**
-	 * 
-	 */
-	void expandRemovedRangeBegin(IStructuredDocumentRegion flatNode) {
-		if (flatNode == null) {
-			return;
-		}
-		int newBegin = flatNode.getStart(); // fOldStart == fNewStart, right??
-		if (fRemovedRangeBegin < 0 || newBegin < fRemovedRangeBegin) {
-			fRemovedRangeBegin = newBegin;
-		}
-	}
-
-	/**
-	 * 
-	 */
-	void expandRemovedRangeEnd(IStructuredDocumentRegion flatNode) {
-		if (flatNode == null) {
-			return;
-		}
-		int newEnd = flatNode.getEnd() + ((isOldNode(flatNode)) ? fLengthDifference : 0);
-		if (fRemovedRangeEnd < 0 || fRemovedRangeEnd < newEnd) {
-			fRemovedRangeEnd = newEnd;
-		}
-	}
-
-	/**
-	 * 
-	 */
-	private CSSStructuredDocumentRegionContainer findContainer(CSSNodeImpl parent, IStructuredDocumentRegion flatNode) {
-		if (parent instanceof CSSStructuredDocumentRegionContainer) {
-			// Am i a container of flatNode?
-			IStructuredDocumentRegion firstNode = ((CSSStructuredDocumentRegionContainer) parent).getFirstStructuredDocumentRegion();
-			IStructuredDocumentRegion lastNode = ((CSSStructuredDocumentRegionContainer) parent).getLastStructuredDocumentRegion();
-			int firstStart = getOriginalOffset(firstNode);
-			int lastStart = getOriginalOffset(lastNode);
-			int start = flatNode.getStart();
-
-			if (firstStart <= start && start <= lastStart) {
-				// I am a container, is my child a container ?
-				for (ICSSNode node = parent.getFirstChild(); node != null; node = node.getNextSibling()) {
-					if (node instanceof CSSNodeImpl) {
-						CSSStructuredDocumentRegionContainer container = findContainer((CSSNodeImpl) node, flatNode);
-						if (container != null) {
-							return container;
-						}
-					}
-				}
-				return (CSSStructuredDocumentRegionContainer) parent;
-			}
-		}
-
-		return null;
-	}
-
-	/**
-	 * 
-	 */
-	CSSStructuredDocumentRegionContainer findDeletionTarget(CSSNodeImpl parent, IStructuredDocumentRegion flatNode) {
-		CSSStructuredDocumentRegionContainer target = findContainer(parent, flatNode);
-		if (target == null) {
-			return null;
-		}
-
-		// System.out.print(flatNode.toString() + ": ");
-
-		// child a(=====)b(=====)c
-		// parent (================) a,c can remove parent, but b cannot.
-
-		ICSSNode child;
-
-		for (child = target.getFirstChild(); child != null && !(child instanceof CSSStructuredDocumentRegionContainer); child = child.getNextSibling()) {
-			// just advancing
-		}
-
-		if (child == null) {
-			// System.out.println("target has no children."); // TESTBYCOZY
-			return target; // has no child containers.
-		}
-		else {
-			IStructuredDocumentRegion firstNode = ((CSSStructuredDocumentRegionContainer) child).getFirstStructuredDocumentRegion();
-			if (flatNode.getStart() < getOriginalOffset(firstNode)) {
-				// System.out.println("flatNode is in front of first child");
-				// // TESTBYCOZY
-				return target; // a
-			}
-		}
-
-		for (child = target.getLastChild(); child != null && !(child instanceof CSSStructuredDocumentRegionContainer); child = child.getPreviousSibling()) {
-			// just advancing
-		}
-
-		if (child == null) {
-			// System.out.println("target has no children."); // TESTBYCOZY
-			return target; // has no child containers.
-		}
-		else {
-			IStructuredDocumentRegion firstNode = ((CSSStructuredDocumentRegionContainer) child).getFirstStructuredDocumentRegion();
-			if (getOriginalOffset(firstNode) < flatNode.getStart()) {
-				// System.out.println("flatNode is in after of last child");
-				// // TESTBYCOZY
-				return target; // c
-			}
-		}
-
-		// System.out.println("flatNode inner of children"); // TESTBYCOZY
-		return null; // b
-	}
-
-	/**
-	 * 
-	 */
-	Iterator getNodesToBeRemoved() {
-		Collection nodes = new ArrayList();
-		int nNodes = fNodesToBeRemoved.getLength();
-		for (int i = 0; i < nNodes; i++) {
-			nodes.add(fNodesToBeRemoved.item(i));
-		}
-		return nodes.iterator();
-	}
-
-	/**
-	 * 
-	 */
-	private int getOriginalOffset(IStructuredDocumentRegion flatNode) {
-		int offset = 0;
-		if (flatNode != null) {
-			offset = flatNode.getStart();
-			if (0 <= fLengthDifference) {
-				if (fNewStart + fNewLength < offset) {
-					offset -= fLengthDifference;
-				}
-			}
-			else {
-				if (fOldStart + fOldLength <= offset || (fNewStart < 0 && fOldStart <= offset && !isOldNode(flatNode)) || (0 <= fNewStart && fNewStart + fNewLength <= offset && !isOldNode(flatNode))) {
-					offset -= fLengthDifference;
-				}
-			}
-		}
-
-		return offset;
-	}
-
-	/**
-	 * 
-	 */
-	int getRemovedRangeBegin() {
-		return fRemovedRangeBegin;
-	}
-
-	/**
-	 * 
-	 */
-	int getRemovedRangeEnd() {
-		return fRemovedRangeEnd;
-	}
-
-	/**
-	 * 
-	 */
-	private boolean isOldNode(IStructuredDocumentRegion flatNode) {
-		if (fOldStructuredDocumentRegions != null) {
-			for (Enumeration e = fOldStructuredDocumentRegions.elements(); e.hasMoreElements();) {
-				if (e.nextElement() == flatNode) {
-					return true;
-				}
-			}
-		}
-
-		return false;
-	}
-
-	/**
-	 * 
-	 */
-	void setupContext(IStructuredDocumentRegionList newStructuredDocumentRegions, IStructuredDocumentRegionList oldStructuredDocumentRegions) {
-		IStructuredDocumentRegion flatNode = null;
-		fOldLength = CSSUtil.getTextLength(oldStructuredDocumentRegions);
-		if (oldStructuredDocumentRegions != null && 0 < oldStructuredDocumentRegions.getLength() && (flatNode = oldStructuredDocumentRegions.item(0)) != null) {
-			fOldStart = flatNode.getStart();
-		}
-		else {
-			fOldStart = -1;
-		}
-		fNewLength = CSSUtil.getTextLength(newStructuredDocumentRegions);
-		if (newStructuredDocumentRegions != null && 0 < newStructuredDocumentRegions.getLength() && (flatNode = newStructuredDocumentRegions.item(0)) != null) {
-			fNewStart = flatNode.getStart();
-			fRemovedRangeBegin = fNewStart;
-			fRemovedRangeEnd = fNewStart + fNewLength;
-		}
-		else {
-			fNewStart = -1;
-			fRemovedRangeBegin = fRemovedRangeEnd = -1;
-		}
-		fLengthDifference = fNewLength - fOldLength;
-		fOldStructuredDocumentRegions = oldStructuredDocumentRegions;
-
-		// cleanup nodes
-		while (0 < fNodesToBeRemoved.getLength()) {
-			fNodesToBeRemoved.removeNode(0);
-		}
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/document/CSSModelImpl.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/document/CSSModelImpl.java
deleted file mode 100644
index 8236b68..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/document/CSSModelImpl.java
+++ /dev/null
@@ -1,622 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2001, 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this 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.core.internal.document;
-
-
-
-import java.util.Iterator;
-import java.util.List;
-import java.util.Vector;
-
-import org.eclipse.wst.css.core.internal.event.ICSSStyleListener;
-import org.eclipse.wst.css.core.internal.eventimpl.CSSEmbededStyleNotifyAdapter;
-import org.eclipse.wst.css.core.internal.eventimpl.CSSStyleNotifyAdapter;
-import org.eclipse.wst.css.core.internal.parser.CSSSourceParser;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSAttr;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSDocument;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSImportRule;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSModel;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSNode;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSSelector;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSSelectorList;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSStyleDeclaration;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSStyleRule;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSValue;
-import org.eclipse.wst.css.core.internal.util.ImportRuleCollector;
-import org.eclipse.wst.css.core.internal.util.ImportedCollector;
-import org.eclipse.wst.css.core.internal.util.SelectorsCollector;
-import org.eclipse.wst.sse.core.internal.ltk.parser.RegionParser;
-import org.eclipse.wst.sse.core.internal.model.AbstractStructuredModel;
-import org.eclipse.wst.sse.core.internal.provisional.IStructuredModel;
-import org.eclipse.wst.sse.core.internal.provisional.IndexedRegion;
-import org.eclipse.wst.sse.core.internal.provisional.events.IStructuredDocumentListener;
-import org.eclipse.wst.sse.core.internal.provisional.events.NewDocumentEvent;
-import org.eclipse.wst.sse.core.internal.provisional.events.NoChangeEvent;
-import org.eclipse.wst.sse.core.internal.provisional.events.RegionChangedEvent;
-import org.eclipse.wst.sse.core.internal.provisional.events.RegionsReplacedEvent;
-import org.eclipse.wst.sse.core.internal.provisional.events.StructuredDocumentRegionsReplacedEvent;
-import org.eclipse.wst.sse.core.internal.provisional.exceptions.ResourceInUse;
-import org.eclipse.wst.sse.core.internal.provisional.text.IStructuredDocument;
-import org.eclipse.wst.sse.core.internal.provisional.text.IStructuredDocumentRegion;
-import org.eclipse.wst.sse.core.internal.provisional.text.IStructuredDocumentRegionList;
-import org.eclipse.wst.sse.core.internal.provisional.text.ITextRegion;
-import org.eclipse.wst.sse.core.internal.provisional.text.ITextRegionList;
-import org.eclipse.wst.sse.core.internal.util.Assert;
-import org.eclipse.wst.xml.core.internal.provisional.document.IDOMNode;
-import org.w3c.dom.Element;
-import org.w3c.dom.Node;
-
-
-
-public class CSSModelImpl extends AbstractStructuredModel implements ICSSModel, IStructuredDocumentListener {
-
-	private CSSDocumentImpl document = null;
-	private org.w3c.dom.Node ownerNode = null;
-	private CSSStyleNotifyAdapter styleNotifier = null;
-	private CSSModelParser fParser = null;
-	private CSSModelUpdater fUpdater = null;
-	private boolean fStructuredDocumentUpdate = false;
-	private final static String ID_NON_EXTERNAL_CSS = "**_NON_EXTERNAL_CSS_***";//$NON-NLS-1$
-
-	/**
-	 * CSSModelImpl constructor comment.
-	 * 
-	 */
-	public CSSModelImpl() {
-		super();
-	}
-
-	/**
-	 * @param listener
-	 *            org.eclipse.wst.css.core.event.CSSStyleListener
-	 */
-	public void addStyleListener(ICSSStyleListener listener) {
-		getStyleNotifier().addStyleListener(listener);
-	}
-
-	void attrReplaced(CSSNodeImpl parentNode, CSSNodeImpl newAttr, CSSNodeImpl oldAttr) {
-		if (!fStructuredDocumentUpdate) {
-			CSSModelUpdater updater = getUpdater();
-			updater.attrReplaced(parentNode, newAttr, oldAttr);
-		}
-
-		ICSSSelector removed[] = null, added[] = null;
-		if (oldAttr != null && oldAttr.getNodeType() == ICSSNode.ATTR_NODE && ((CSSAttrImpl) oldAttr).getName().equals(ICSSStyleRule.SELECTOR)) {
-			CSSAttrImpl attr = (CSSAttrImpl) oldAttr;
-			// collect changed selector
-			ICSSSelectorList list = new CSSSelectorListImpl(attr.getValue());
-			removed = new ICSSSelector[list.getLength()];
-			for (int i = 0; i < list.getLength(); i++)
-				removed[i] = list.getSelector(i);
-		}
-		if (newAttr != null && newAttr.getNodeType() == ICSSNode.ATTR_NODE && ((CSSAttrImpl) newAttr).getName().equals(ICSSStyleRule.SELECTOR)) {
-			CSSAttrImpl attr = (CSSAttrImpl) newAttr;
-			// collect changed selector
-			ICSSSelectorList list = new CSSSelectorListImpl(attr.getValue());
-			added = new ICSSSelector[list.getLength()];
-			for (int i = 0; i < list.getLength(); i++)
-				added[i] = list.getSelector(i);
-		}
-		if (removed != null || added != null || getDocument().getNodeType() == ICSSNode.STYLEDECLARATION_NODE) {
-			getStyleNotifier().fire(removed, added, null);
-		}
-		// for href attribute
-		if (getStyleListeners() != null && getStyleListeners().size() > 0) {
-			boolean update = false;
-			if (oldAttr != null && oldAttr.getNodeType() == ICSSNode.ATTR_NODE && ((CSSAttrImpl) oldAttr).getName().equals(ICSSImportRule.HREF)) {
-				update = true;
-			}
-			if (newAttr != null && newAttr.getNodeType() == ICSSNode.ATTR_NODE && ((CSSAttrImpl) newAttr).getName().equals(ICSSImportRule.HREF)) {
-				update = true;
-			}
-			if (update)
-				((ICSSImportRule) parentNode).getStyleSheet();
-		}
-	}
-
-	/**
-	 * 
-	 */
-	public void beginRecording(Object requester, String label, String description) {
-		getStyleNotifier().beginRecording();
-
-		Node node = getOwnerDOMNode();
-		if (node != null && node instanceof IDOMNode) {
-			IStructuredModel model = ((IDOMNode) node).getModel();
-			if (model != null) {
-				model.beginRecording(requester, label, description);
-				return;
-			}
-		}
-		super.beginRecording(requester, label, description);
-	}
-
-	void childReplaced(CSSNodeImpl parentNode, CSSNodeImpl newChild, CSSNodeImpl oldChild) {
-		if (!fStructuredDocumentUpdate) {
-			CSSModelUpdater updater = getUpdater();
-			updater.childReplaced(parentNode, newChild, oldChild);
-		}
-
-		// always check and send selector event
-		ICSSSelector removed[] = null, added[] = null;
-		if (parentNode.getNodeType() == ICSSNode.STYLESHEET_NODE || parentNode.getNodeType() == ICSSNode.MEDIARULE_NODE) {
-			// collect old selectors
-			SelectorsCollector selTrav = new SelectorsCollector();
-			selTrav.apply(oldChild);
-			int nSel = selTrav.getSelectors().size();
-			if (nSel > 0) {
-				removed = new ICSSSelector[nSel];
-				for (int i = 0; i < nSel; i++)
-					removed[i] = (ICSSSelector) selTrav.getSelectors().get(i);
-			}
-			// collect new selectors
-			selTrav = new SelectorsCollector();
-			selTrav.apply(newChild);
-			nSel = selTrav.getSelectors().size();
-			if (nSel > 0) {
-				added = new ICSSSelector[nSel];
-				for (int i = 0; i < nSel; i++)
-					added[i] = (ICSSSelector) selTrav.getSelectors().get(i);
-			}
-		}
-		else {
-			// modification
-			ICSSNode rule = parentNode;
-			while (rule != null) {
-				if (rule instanceof ICSSStyleRule)
-					break;
-				rule = rule.getParentNode();
-			}
-			if (rule != null) {
-				ICSSSelectorList list = ((ICSSStyleRule) rule).getSelectors();
-				added = new ICSSSelector[list.getLength()];
-				for (int i = 0; i < list.getLength(); i++)
-					added[i] = list.getSelector(i);
-			}
-		}
-		if (removed != null || added != null || getDocument().getNodeType() == ICSSNode.STYLEDECLARATION_NODE) {
-			// send selector changed event
-			getStyleNotifier().fire(removed, added, null);
-		}
-		// close removed import-rule's external style sheets
-		{
-			ImportRuleCollector trav = new ImportRuleCollector();
-			trav.apply(oldChild);
-			Iterator it = trav.getRules().iterator();
-			while (it.hasNext()) {
-				((CSSImportRuleImpl) it.next()).closeStyleSheet();
-			}
-		}
-		// send events to listener for new import-rules
-		if (getStyleListeners() != null && getStyleListeners().size() > 0) {
-			ImportedCollector trav = new ImportedCollector();
-			trav.apply(newChild);
-		}
-	}
-
-	/**
-	 * 
-	 */
-	private void closeImported() {
-		if (!isShared()) {
-			// release listeners
-			if (getStyleListeners() != null) {
-				Vector toRemove = new Vector(getStyleListeners());
-				Iterator it = toRemove.iterator();
-				while (it.hasNext()) {
-					removeStyleListener((ICSSStyleListener) it.next());
-				}
-			}
-			// close import rules
-			ImportRuleCollector trav = new ImportRuleCollector();
-			trav.apply(getDocument());
-			Iterator it2 = trav.getRules().iterator();
-			while (it2.hasNext()) {
-				((CSSImportRuleImpl) it2.next()).releaseRule();
-			}
-		}
-	}
-
-	private CSSDocumentImpl createDocument() {
-		CSSDocumentImpl doc = null;
-		int parserMode = CSSSourceParser.MODE_STYLESHEET;
-		if (ownerNode == null) {
-			// this case is external CSS file
-			doc = (CSSStyleSheetImpl) DOMCSSImpl.createCSSStyleSheet(null, null); // parameters
-																					// are
-																					// for
-																					// STYLE-tag
-			parserMode = CSSSourceParser.MODE_STYLESHEET;
-		}
-		else if (ownerNode instanceof org.w3c.dom.Element && ((Element) ownerNode).getTagName().toUpperCase().equals("STYLE")) {//$NON-NLS-1$
-			// this case is STYLE-tag
-			Element style = (Element) ownerNode;
-			doc = (CSSStyleSheetImpl) DOMCSSImpl.createCSSStyleSheet(style.getAttribute("TITLE"), //$NON-NLS-1$
-						style.getAttribute("MEDIA"));//$NON-NLS-1$
-			parserMode = CSSSourceParser.MODE_STYLESHEET;
-		}
-		else if (ownerNode instanceof org.w3c.dom.Element || ownerNode instanceof org.w3c.dom.Attr) {
-			// Inline attributes
-			doc = (CSSStyleDeclarationImpl) DOMCSSImpl.createCSSStyleDeclaration();
-			parserMode = CSSSourceParser.MODE_DECLARATION;
-		}
-		RegionParser regionParser = getStructuredDocument().getParser();
-		if (regionParser instanceof CSSSourceParser) {
-			((CSSSourceParser) regionParser).setParserMode(parserMode);
-		}
-		return doc;
-	}
-
-	/**
-	 * 
-	 */
-	public void endRecording(Object requester) {
-		Node node = getOwnerDOMNode();
-		if (node != null && node instanceof IDOMNode) {
-			IStructuredModel model = ((IDOMNode) node).getModel();
-			if (model != null) {
-				model.endRecording(requester);
-				return;
-			}
-		}
-		super.endRecording(requester);
-
-		getStyleNotifier().endRecording();
-	}
-
-	public ICSSDocument getDocument() {
-		if (document == null) {
-			this.document = createDocument();
-			this.document.setModel(this);
-		}
-		return this.document;
-	}
-
-	public IStructuredDocument getStructuredDocument() {
-		IStructuredDocument structuredDocument = super.getStructuredDocument();
-		if (structuredDocument != null)
-			return structuredDocument;
-
-		// the first time
-		Assert.isNotNull(getModelHandler());
-		structuredDocument = (IStructuredDocument) getModelHandler().getDocumentLoader().createNewStructuredDocument();
-
-		setStructuredDocument(structuredDocument);
-
-		return structuredDocument;
-	}
-
-	/**
-	 * getNode method comment.
-	 */
-	public IndexedRegion getIndexedRegion(int offset) {
-		if (getDocument() == null)
-			return null;
-		return ((CSSStructuredDocumentRegionContainer) getDocument()).getContainerNode(offset);
-	}
-
-	/**
-	 * @return org.w3c.dom.Node
-	 */
-	public Node getOwnerDOMNode() {
-		return ownerNode;
-	}
-
-	/**
-	 * @param ownerNode
-	 *            org.w3c.dom.Node if the case of external CSS model, you
-	 *            should set null, else if internal css, you should set
-	 *            STYLE-tag node, else if inline css, you should set the
-	 *            element that is the owner of style-attribute.
-	 */
-	public void setOwnerDOMNode(Node node) {
-		// prohibit owner change
-		Assert.isTrue(ownerNode == null);
-		ownerNode = node;
-		if (ownerNode != null) { // for internal/inline CSS context
-			try {
-				setId(ID_NON_EXTERNAL_CSS);
-			}
-			catch (ResourceInUse e) {
-				// impossible
-			}
-		}
-	}
-
-	/**
-	 * 
-	 */
-	private CSSModelParser getParser() {
-		if (fParser == null) {
-			if (getDocument() != null) {
-				fParser = new CSSModelParser(document);
-			}
-		}
-		return fParser;
-	}
-
-	/**
-	 * @return java.util.List
-	 */
-	public List getStyleListeners() {
-		return getStyleNotifier().getStyleListeners();
-	}
-
-	/**
-	 * 
-	 * @return java.lang.Object
-	 */
-	public java.lang.Object getStyleSheetType() {
-		if (getDocument() instanceof ICSSStyleDeclaration)
-			return INLINE;
-		if (getOwnerDOMNode() != null)
-			return EMBEDDED;
-		else
-			return EXTERNAL;
-	}
-
-	private CSSStyleNotifyAdapter getStyleNotifier() {
-		if (styleNotifier == null) {
-			styleNotifier = (ownerNode != null) ? new CSSEmbededStyleNotifyAdapter(this) : new CSSStyleNotifyAdapter(this);
-		}
-		return styleNotifier;
-	}
-
-	/**
-	 * 
-	 */
-	private CSSModelUpdater getUpdater() {
-		if (fUpdater == null) {
-			fUpdater = new CSSModelUpdater(this);
-			fUpdater.setParser(getParser());
-		}
-		return fUpdater;
-	}
-
-	/**
-	 */
-	public boolean isRecording() {
-		return getStyleNotifier().isRecording();
-	}
-
-	/**
-	 * This function returns true if there are other references to the
-	 * underlying model.
-	 */
-	public boolean isShared() {
-		return (getStyleSheetType() == EXTERNAL) && super.isShared();
-	}
-
-	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 (getDocument() == null)
-			return;
-
-		fStructuredDocumentUpdate = true;
-
-		((CSSStructuredDocumentRegionContainer) getDocument()).removeChildNodes();
-
-		CSSModelParser parser = getParser();
-		parser.setStructuredDocumentEvent(structuredDocumentEvent);
-		parser.replaceStructuredDocumentRegions(flatNodes, null);
-
-		fStructuredDocumentUpdate = false;
-	}
-
-	/**
-	 * noChange method comment.
-	 */
-	public void noChange(NoChangeEvent structuredDocumentEvent) {
-		// nop
-	}
-
-	public void nodesReplaced(StructuredDocumentRegionsReplacedEvent structuredDocumentEvent) {
-		if (structuredDocumentEvent == null) {
-			return;
-		}
-		IStructuredDocumentRegionList oldStructuredDocumentRegions = structuredDocumentEvent.getOldStructuredDocumentRegions();
-		IStructuredDocumentRegionList newStructuredDocumentRegions = structuredDocumentEvent.getNewStructuredDocumentRegions();
-		if (oldStructuredDocumentRegions == null && newStructuredDocumentRegions == null) {
-			return;
-		}
-
-		fStructuredDocumentUpdate = true;
-
-		CSSModelParser parser = getParser();
-		parser.setStructuredDocumentEvent(structuredDocumentEvent);
-		parser.replaceStructuredDocumentRegions(newStructuredDocumentRegions, oldStructuredDocumentRegions);
-
-		fStructuredDocumentUpdate = false;
-	}
-
-	/**
-	 * cleanup -> rebuild CSS Nodes This is pre-beta fix for 178176.
-	 */
-	public void refreshNodes() {
-		// cleanup old nodes
-		fStructuredDocumentUpdate = true;
-		((CSSStructuredDocumentRegionContainer) getDocument()).removeChildNodes();
-		fStructuredDocumentUpdate = false;
-
-		getParser().cleanupUpdateContext();
-
-		IStructuredDocument structuredDocument = getStructuredDocument();
-		String source = structuredDocument.getText();
-
-		structuredDocument.replaceText(this, 0, source.length(), null);
-		structuredDocument.replaceText(this, 0, 0, source);
-	}
-
-	public void regionChanged(RegionChangedEvent structuredDocumentEvent) {
-		if (structuredDocumentEvent == null) {
-			return;
-		}
-		IStructuredDocumentRegion flatNode = structuredDocumentEvent.getStructuredDocumentRegion();
-		if (flatNode == null) {
-			return;
-		}
-		ITextRegion region = structuredDocumentEvent.getRegion();
-		if (region == null) {
-			return;
-		}
-
-		fStructuredDocumentUpdate = true;
-
-		CSSModelParser parser = getParser();
-		parser.setStructuredDocumentEvent(structuredDocumentEvent);
-		parser.changeRegion(flatNode, region);
-
-		fStructuredDocumentUpdate = false;
-	}
-
-	public void regionsReplaced(RegionsReplacedEvent structuredDocumentEvent) {
-		if (structuredDocumentEvent == null)
-			return;
-		IStructuredDocumentRegion flatNode = structuredDocumentEvent.getStructuredDocumentRegion();
-		if (flatNode == null)
-			return;
-		ITextRegionList oldRegions = structuredDocumentEvent.getOldRegions();
-		ITextRegionList newRegions = structuredDocumentEvent.getNewRegions();
-		if (oldRegions == null && newRegions == null)
-			return;
-
-		fStructuredDocumentUpdate = true;
-
-		CSSModelParser parser = getParser();
-		parser.setStructuredDocumentEvent(structuredDocumentEvent);
-		parser.replaceRegions(flatNode, newRegions, oldRegions);
-
-		fStructuredDocumentUpdate = false;
-
-	}
-
-	/**
-	 * 
-	 */
-	public void releaseFromEdit() {
-		closeImported();
-		if (getStyleSheetType() == EXTERNAL) {
-			super.releaseFromEdit();
-		}
-	}
-
-	/**
-	 * 
-	 */
-	public void releaseFromRead() {
-		closeImported();
-		if (getStyleSheetType() == EXTERNAL) {
-			super.releaseFromRead();
-		}
-	}
-
-	/**
-	 * @param listener
-	 *            org.eclipse.wst.css.core.event.CSSStyleListener
-	 */
-	public void removeStyleListener(ICSSStyleListener listener) {
-		getStyleNotifier().removeStyleListener(listener);
-	}
-
-	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);
-	}
-
-	/**
-	 * @param srcModel
-	 *            com.imb.sed.css.mode.intefaces.ICSSModel
-	 * @param removed
-	 *            org.eclipse.wst.css.core.model.interfaces.ICSSSelector[]
-	 * @param added
-	 *            org.eclipse.wst.css.core.model.interfaces.ICSSSelector[]
-	 */
-	public void styleChanged(ICSSModel srcModel, ICSSSelector[] removed, ICSSSelector[] added, String media) {
-		getStyleNotifier().styleChanged(srcModel, removed, added, media);
-	}
-
-	/**
-	 * @param srcModel
-	 *            org.eclipse.wst.css.core.model.interfaces.ICSSModel
-	 */
-	public void styleUpdate(ICSSModel srcModel) {
-		getStyleNotifier().styleUpdate(srcModel);
-	}
-
-	void valueChanged(CSSNodeImpl node, String oldValue) {
-		if (!fStructuredDocumentUpdate) {
-			CSSModelUpdater updater = getUpdater();
-			updater.valueChanged(node, oldValue);
-		}
-
-		ICSSSelector removed[] = null, added[] = null;
-		if (node != null) {
-			if (node.getNodeType() == ICSSNode.ATTR_NODE && ((CSSAttrImpl) node).getName().equals(ICSSStyleRule.SELECTOR)) {
-				CSSAttrImpl attr = (CSSAttrImpl) node;
-				// collect changed selector
-				ICSSSelectorList list = new CSSSelectorListImpl(attr.getValue());
-				added = new ICSSSelector[list.getLength()];
-				for (int i = 0; i < list.getLength(); i++)
-					added[i] = list.getSelector(i);
-
-				// get old value
-				list = new CSSSelectorListImpl(oldValue);
-				removed = new ICSSSelector[list.getLength()];
-				for (int i = 0; i < list.getLength(); i++)
-					removed[i] = list.getSelector(i);
-			}
-			else if (node instanceof ICSSValue) {
-				ICSSNode rule = node;
-				while (rule != null) {
-					if (rule instanceof ICSSStyleRule)
-						break;
-					rule = rule.getParentNode();
-				}
-				if (rule != null) {
-					ICSSSelectorList list = ((ICSSStyleRule) rule).getSelectors();
-					added = new ICSSSelector[list.getLength()];
-					for (int i = 0; i < list.getLength(); i++)
-						added[i] = list.getSelector(i);
-				}
-			}
-		}
-		if (removed != null || added != null || getDocument().getNodeType() == ICSSNode.STYLEDECLARATION_NODE) {
-			// send selector changed event
-			getStyleNotifier().fire(removed, added, null);
-		}
-		// for href attribute
-		if (getStyleListeners() != null && getStyleListeners().size() > 0) {
-			if (node != null && node.getNodeType() == ICSSNode.ATTR_NODE && ((CSSAttrImpl) node).getName().equals(ICSSImportRule.HREF)) {
-				((ICSSImportRule) ((ICSSAttr) node).getOwnerCSSNode()).getStyleSheet();
-			}
-		}
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/document/CSSModelNodeFeeder.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/document/CSSModelNodeFeeder.java
deleted file mode 100644
index 0f50a99..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/document/CSSModelNodeFeeder.java
+++ /dev/null
@@ -1,122 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this 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.core.internal.document;
-
-
-
-/**
- * 
- */
-class CSSModelNodeFeeder {
-
-	CSSDocumentImpl fDocument = null;
-	CSSModelUpdateContext fUpdateContext = null;
-
-	/**
-	 * CSSModelNodeFeeder constructor comment.
-	 */
-	CSSModelNodeFeeder() {
-		super();
-	}
-
-	/**
-	 * CSSModelNodeFeeder constructor comment.
-	 */
-	CSSModelNodeFeeder(CSSDocumentImpl document, CSSModelUpdateContext updateContext) {
-		super();
-		fDocument = document;
-		fUpdateContext = updateContext;
-	}
-
-	/**
-	 * 
-	 */
-	CSSCharsetRuleImpl getCSSCharsetRule() {
-		CSSCharsetRuleImpl node;
-		if (fUpdateContext.isActive()) {
-			node = fUpdateContext.getCSSCharsetRule();
-		}
-		else {
-			node = (CSSCharsetRuleImpl) fDocument.createCSSCharsetRule();
-		}
-		return node;
-	}
-
-	/**
-	 * 
-	 */
-	CSSFontFaceRuleImpl getCSSFontFaceRule() {
-		CSSFontFaceRuleImpl node;
-		if (fUpdateContext.isActive()) {
-			node = fUpdateContext.getCSSFontFaceRule();
-		}
-		else {
-			node = (CSSFontFaceRuleImpl) fDocument.createCSSFontFaceRule();
-		}
-		return node;
-	}
-
-	/**
-	 * 
-	 */
-	CSSImportRuleImpl getCSSImportRule() {
-		CSSImportRuleImpl node;
-		if (fUpdateContext.isActive()) {
-			node = fUpdateContext.getCSSImportRule();
-		}
-		else {
-			node = (CSSImportRuleImpl) fDocument.createCSSImportRule();
-		}
-		return node;
-	}
-
-	/**
-	 * 
-	 */
-	CSSMediaRuleImpl getCSSMediaRule() {
-		CSSMediaRuleImpl node;
-		if (fUpdateContext.isActive()) {
-			node = fUpdateContext.getCSSMediaRule();
-		}
-		else {
-			node = (CSSMediaRuleImpl) fDocument.createCSSMediaRule();
-		}
-		return node;
-	}
-
-	/**
-	 * 
-	 */
-	CSSPageRuleImpl getCSSPageRule() {
-		CSSPageRuleImpl node;
-		if (fUpdateContext.isActive()) {
-			node = fUpdateContext.getCSSPageRule();
-		}
-		else {
-			node = (CSSPageRuleImpl) fDocument.createCSSPageRule();
-		}
-		return node;
-	}
-
-	/**
-	 * 
-	 */
-	CSSStyleRuleImpl getCSSStyleRule() {
-		CSSStyleRuleImpl node;
-		if (fUpdateContext.isActive()) {
-			node = fUpdateContext.getCSSStyleRule();
-		}
-		else {
-			node = (CSSStyleRuleImpl) fDocument.createCSSStyleRule();
-		}
-		return node;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/document/CSSModelParser.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/document/CSSModelParser.java
deleted file mode 100644
index 99a4009..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/document/CSSModelParser.java
+++ /dev/null
@@ -1,1275 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this 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.core.internal.document;
-
-import java.util.Collection;
-import java.util.Enumeration;
-import java.util.HashSet;
-import java.util.Iterator;
-
-import org.eclipse.wst.css.core.internal.parserz.CSSRegionContexts;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSCharsetRule;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSImportRule;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSMediaRule;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSModel;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSNode;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSPageRule;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSRuleContainer;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSStyleDeclItem;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSStyleRule;
-import org.eclipse.wst.css.core.internal.text.StructuredDocumentWalker;
-import org.eclipse.wst.css.core.internal.util.CSSUtil;
-import org.eclipse.wst.sse.core.internal.provisional.events.StructuredDocumentEvent;
-import org.eclipse.wst.sse.core.internal.provisional.text.IStructuredDocument;
-import org.eclipse.wst.sse.core.internal.provisional.text.IStructuredDocumentRegion;
-import org.eclipse.wst.sse.core.internal.provisional.text.IStructuredDocumentRegionList;
-import org.eclipse.wst.sse.core.internal.provisional.text.ITextRegion;
-import org.eclipse.wst.sse.core.internal.provisional.text.ITextRegionList;
-import org.eclipse.wst.sse.core.internal.text.BasicStructuredDocumentRegion;
-import org.eclipse.wst.sse.core.internal.text.CoreNodeList;
-import org.eclipse.wst.sse.core.internal.text.TextRegionListImpl;
-import org.eclipse.wst.sse.core.internal.util.Assert;
-import org.w3c.dom.css.CSSFontFaceRule;
-import org.w3c.dom.css.CSSRule;
-import org.w3c.dom.css.CSSStyleDeclaration;
-
-
-/**
- * 
- */
-class CSSModelParser {
-
-	private CSSDocumentImpl fDocument = null;
-	private CSSModelCreationContext fCreationContext = null;
-	private CSSModelDeletionContext fDeletionContext = null;
-	private CSSModelUpdateContext fUpdateContext = null;
-	private CSSModelNodeFeeder fFeeder = null;
-	private StructuredDocumentWalker fStructuredDocumentWalker = null;
-	private boolean fParseFloating = false;
-
-	/**
-	 * CSSModelParser constructor comment.
-	 */
-	private CSSModelParser() {
-		super();
-	}
-
-	/**
-	 * 
-	 */
-	CSSModelParser(CSSDocumentImpl doc) {
-		super();
-		fDocument = doc;
-		fCreationContext = new CSSModelCreationContext(doc);
-		fDeletionContext = new CSSModelDeletionContext(doc);
-		fUpdateContext = new CSSModelUpdateContext();
-		fFeeder = new CSSModelNodeFeeder(doc, fUpdateContext);
-	}
-
-	/**
-	 * 
-	 */
-	void changeStructuredDocumentRegion(IStructuredDocumentRegion flatNode) {
-		replaceStructuredDocumentRegions(new CoreNodeList(flatNode, flatNode), new CoreNodeList(flatNode, flatNode));
-	}
-
-	/**
-	 * 
-	 */
-	void changeRegion(IStructuredDocumentRegion flatNode, ITextRegion region) {
-		if (flatNode == null || region == null) {
-			return;
-		}
-		if (fDocument == null) {
-			return;
-		}
-
-		changeStructuredDocumentRegion(flatNode);
-	}
-
-	/**
-	 * 
-	 */
-	private void checkNextNode(IStructuredDocumentRegion flatNode, String type) {
-		IStructuredDocumentRegion next = CSSUtil.findNextSignificantNode(flatNode);
-		if (CSSUtil.getStructuredDocumentRegionType(next) == type) {
-			fCreationContext.setReparseStart(flatNode.getEnd());
-			fCreationContext.setReparseEnd(next.getEnd());
-		}
-	}
-
-	/**
-	 * 
-	 */
-	private void cleanupDeletionContext() {
-		// setupDeletionContext(null);
-	}
-
-	/**
-	 * 
-	 */
-	boolean cleanupFirstNode(IStructuredDocumentRegion firstNode, CSSStructuredDocumentRegionContainer target) {
-		if (firstNode == null || target == null) {
-			return false;
-		}
-
-		if (firstNode == target.getFirstStructuredDocumentRegion()) {
-			IStructuredDocumentRegion nextNode = fStructuredDocumentWalker.getNextNodeInCurrent(firstNode);
-			IStructuredDocumentRegion lastNode = target.getLastStructuredDocumentRegion();
-			if (lastNode == null || fStructuredDocumentWalker.isOldNode(lastNode) || nextNode == null || lastNode.getStartOffset() < nextNode.getStartOffset()) {
-				target.setRangeStructuredDocumentRegion(null, null);
-			}
-			else {
-				target.setFirstStructuredDocumentRegion(nextNode);
-			}
-			ICSSNode parent = target.getParentNode();
-			if (parent instanceof CSSStructuredDocumentRegionContainer) {
-				cleanupFirstNode(firstNode, (CSSStructuredDocumentRegionContainer) parent);
-				return true;
-			}
-		}
-
-		return false;
-	}
-
-	/**
-	 * 
-	 */
-	boolean cleanupLastNode(IStructuredDocumentRegion lastNode, CSSStructuredDocumentRegionContainer target) {
-		if (lastNode == null || target == null) {
-			return false;
-		}
-
-		if (lastNode == target.getLastStructuredDocumentRegion()) {
-			IStructuredDocumentRegion prevNode = fStructuredDocumentWalker.getPrevNodeInCurrent(lastNode);
-			IStructuredDocumentRegion firstNode = target.getFirstStructuredDocumentRegion();
-			if (firstNode == null || fStructuredDocumentWalker.isOldNode(firstNode) || prevNode == null || prevNode.getStartOffset() < firstNode.getStartOffset()) {
-				target.setRangeStructuredDocumentRegion(null, null);
-			}
-			else {
-				target.setLastStructuredDocumentRegion(prevNode);
-			}
-			ICSSNode parent = target.getParentNode();
-			if (parent instanceof CSSStructuredDocumentRegionContainer) {
-				cleanupLastNode(lastNode, (CSSStructuredDocumentRegionContainer) parent);
-				return true;
-			}
-		}
-
-		return false;
-	}
-
-	/**
-	 * 
-	 */
-	int cleanupUpdateContext() {
-		int remains = fUpdateContext.getNodeCount();
-		fUpdateContext.cleanupContext();
-		return remains;
-	}
-
-	/**
-	 * create floating CSS rule (owner document will be set) this is for
-	 * CSSStyleSheet.createCSSRule(String)
-	 * 
-	 * @return org.w3c.dom.css.CSSRule
-	 */
-	CSSRule createCSSRule(IStructuredDocumentRegionList flatNodes) {
-		if (flatNodes == null) {
-			return null;
-		}
-
-		fParseFloating = true;
-
-		// setup creation context
-		fCreationContext.clear();
-		fCreationContext.setTargetNode(null);
-		fCreationContext.setNextNode(null);
-		CSSRuleImpl parentRule = null;
-
-		for (Enumeration e = flatNodes.elements(); e.hasMoreElements();) {
-			IStructuredDocumentRegion flatNode = (IStructuredDocumentRegion) e.nextElement();
-			if (flatNode == null) {
-				continue;
-			}
-			CSSNodeImpl modified = insertStructuredDocumentRegion(flatNode);
-			if (parentRule == null && modified instanceof CSSRuleImpl) {
-				parentRule = (CSSRuleImpl) modified;
-			}
-		}
-
-		fParseFloating = false;
-
-		if (parentRule != null) {
-			CSSModelUtil.cleanupContainer(parentRule);
-		}
-
-		return parentRule;
-	}
-
-	/**
-	 * 
-	 */
-	private IStructuredDocumentRegion findBraceClose(int depth, IStructuredDocumentRegion start, boolean bBreakSibling) {
-		IStructuredDocumentRegion result = null;
-		int braceLevel = 0;
-		IStructuredDocumentRegion prevNode = null;
-		IStructuredDocumentRegion region = start.getNext();
-		for (; region != null; region = region.getNext()) {
-			int offset = region.getStart();
-			if (offset < 0) {
-				Assert.isTrue(false);
-				break;
-			}
-			CSSNodeImpl node = getNodeAt(offset);
-			int depthHit = (node != null) ? CSSModelUtil.getDepth(node) : -1;
-			if (depth <= depthHit) {
-				// sibling is found before "}"
-				if (bBreakSibling) {
-					CSSNodeImpl parent = (CSSNodeImpl) node.getParentNode();
-					while (depth <= CSSModelUtil.getDepth(parent)) {
-						node = parent;
-						parent = (CSSNodeImpl) parent.getParentNode();
-					}
-					if (parent != null && node != null) {
-						parent.removeChild(node);
-					}
-				}
-				else {
-					result = prevNode;
-					break;
-				}
-			}
-			String type = CSSUtil.getStructuredDocumentRegionType(region);
-			if (type == CSSRegionContexts.CSS_LBRACE) {
-				braceLevel++;
-			}
-			if (type == CSSRegionContexts.CSS_RBRACE) {
-				braceLevel--;
-				if (braceLevel < 0) {
-					result = region;
-					break;
-				}
-			}
-			prevNode = region;
-		}
-
-		if (result == null && region == null) {
-			// reach the end of document
-			result = prevNode;
-		}
-
-		return result;
-	}
-
-	/**
-	 * 
-	 */
-	private IStructuredDocumentRegionList getStructuredDocumentRegionList(int start, int end) {
-		IStructuredDocumentRegionList nodeList = null;
-		if (0 <= start && start <= end) {
-			ICSSModel model = fDocument.getModel();
-			if (model instanceof CSSModelImpl) {
-				IStructuredDocument structuredDocument = ((CSSModelImpl) model).getStructuredDocument();
-				if (structuredDocument != null) {
-					IStructuredDocumentRegion startNode = structuredDocument.getRegionAtCharacterOffset(start);
-					IStructuredDocumentRegion endNode = structuredDocument.getRegionAtCharacterOffset(end - 1);
-					if (startNode != null && endNode != null) {
-						nodeList = new CoreNodeList(startNode, endNode);
-					}
-				}
-			}
-		}
-
-		return nodeList;
-	}
-
-	/**
-	 * 
-	 */
-	private CSSNodeImpl getNodeAt(int offset) {
-		CSSNodeImpl rootNode = fCreationContext.getRootNode();
-		ICSSNode target = rootNode.getNodeAt(offset);
-		if (target instanceof CSSNodeImpl) {
-			return (CSSNodeImpl) target;
-		}
-		else {
-			return null;
-		}
-	}
-
-	/**
-	 * 
-	 */
-	private CSSNodeImpl insertBraceClose(IStructuredDocumentRegion region) {
-		ICSSNode target = CSSModelUtil.findBraceContainer(fCreationContext.getTargetNode());
-
-		if (!(target instanceof CSSStructuredDocumentRegionContainer)) {
-			return null;
-		}
-
-		CSSStructuredDocumentRegionContainer parent = (CSSStructuredDocumentRegionContainer) target;
-		if (CSSModelUtil.isInterruption(parent, region)) {
-			ICSSNode node = parent.getParentNode();
-			if (node instanceof CSSNodeImpl) {
-				fCreationContext.setReparseStart(parent.getStartOffset());
-				fCreationContext.setReparseEnd(parent.getEndOffset());
-				((CSSNodeImpl) node).removeChild(parent);
-			}
-			return null;
-		}
-
-		if (parent instanceof ICSSPageRule || parent instanceof ICSSMediaRule || parent instanceof CSSFontFaceRule || parent instanceof ICSSStyleRule) {
-			CSSModelUtil.expandStructuredDocumentRegionContainer(parent, region);
-			if (!CSSModelUtil.isBraceClosed(target)) {
-				fCreationContext.setTargetNode(parent.getParentNode());
-				fCreationContext.setNextNode(parent.getNextSibling());
-				return parent;
-			}
-		}
-
-		return null;
-	}
-
-	/**
-	 * 
-	 */
-	private CSSNodeImpl insertBraceOpen(IStructuredDocumentRegion region) {
-		IStructuredDocumentRegion keyRegion = CSSUtil.findPreviousSignificantNode(region);
-		if (keyRegion == null) {
-			return null;
-		}
-		if (!fParseFloating) {
-			CSSNodeImpl node = getNodeAt(keyRegion.getStartOffset());
-			if (node != null && !(node instanceof ICSSRuleContainer)) {
-				return null;
-			}
-		}
-		String type = CSSUtil.getStructuredDocumentRegionType(keyRegion);
-
-		CSSNodeImpl inserted = null;
-		if (type == CSSRegionContexts.CSS_PAGE) {
-			inserted = insertPageRule(keyRegion, region);
-		}
-		else if (type == CSSRegionContexts.CSS_MEDIA) {
-			inserted = insertMediaRule(keyRegion, region);
-		}
-		else if (type == CSSRegionContexts.CSS_FONT_FACE) {
-			inserted = insertFontFaceRule(keyRegion, region);
-		}
-		else if (CSSUtil.isSelectorText(keyRegion)) {
-			inserted = insertStyleRule(keyRegion, region);
-		}
-
-		if (inserted instanceof CSSStructuredDocumentRegionContainer) {
-			// CSSModelUtil.expandStructuredDocumentRegionContainer((CSSStructuredDocumentRegionContainer)inserted,
-			// flatNode);
-			IStructuredDocumentRegion braceClose = findBraceClose(CSSModelUtil.getDepth(inserted), region, (type == CSSRegionContexts.CSS_MEDIA));
-			if (braceClose != null) {
-				fCreationContext.setReparseStart(region.getEnd());
-				fCreationContext.setReparseEnd(braceClose.getEnd());
-			}
-		}
-
-		return inserted;
-	}
-
-	/**
-	 * 
-	 */
-	private CSSNodeImpl insertCharsetRule(IStructuredDocumentRegion beginDocRegion, IStructuredDocumentRegion endDocRegion) {
-		CSSNodeImpl parent = fCreationContext.getTargetNode();
-		if (!fParseFloating && !(parent instanceof ICSSRuleContainer)) {
-			return null;
-		}
-
-		ITextRegionList regions = new TextRegionListImpl(beginDocRegion.getRegions());
-		regions.remove(0); // must be "@charset"
-		ITextRegion encodingRegion = null;
-		while (!regions.isEmpty()) {
-			ITextRegion textRegion = regions.remove(0);
-			if (textRegion == null) {
-				continue;
-			}
-			String type = textRegion.getType();
-			if (type == CSSRegionContexts.CSS_S || type == CSSRegionContexts.CSS_COMMENT) {
-				continue;
-			}
-			if (type == CSSRegionContexts.CSS_STRING) {
-				encodingRegion = textRegion;
-				break;
-			}
-			else {
-				break;
-			}
-		}
-		if (encodingRegion == null) {
-			return null;
-		}
-
-		CSSCharsetRuleImpl rule = fFeeder.getCSSCharsetRule();
-		if (rule == null) {
-			return null;
-		}
-
-		if (!fUpdateContext.isActive()) {
-			rule.setAttribute(ICSSCharsetRule.ENCODING, beginDocRegion.getText(encodingRegion));
-		}
-
-		// setup flat container
-		rule.setRangeStructuredDocumentRegion(beginDocRegion, endDocRegion);
-		CSSAttrImpl attr = rule.getAttributeNode(ICSSCharsetRule.ENCODING);
-		if (attr != null) {
-			attr.setRangeRegion(beginDocRegion, encodingRegion, encodingRegion);
-		}
-
-		// insert to tree
-		if (!fUpdateContext.isActive() && parent != null) {
-			propagateRangePreInsert(parent, rule);
-			CSSNodeImpl next = fCreationContext.getNextNode();
-			if (next != null) {
-				parent.insertBefore(rule, next);
-			}
-			else {
-				parent.appendChild(rule);
-			}
-		}
-
-		return rule;
-	}
-
-	/**
-	 * 
-	 */
-	private CSSNodeImpl insertStructuredDocumentRegion(IStructuredDocumentRegion region) {
-		if (fCreationContext == null || region == null) {
-			return null;
-		}
-
-		String type = ((BasicStructuredDocumentRegion) region).getType();
-		CSSNodeImpl modified = null;
-
-		ICSSNode target = fCreationContext.getTargetNode();
-
-		if ((fParseFloating && target == null) || target instanceof ICSSRuleContainer) {
-			if (type == CSSRegionContexts.CSS_DELIMITER) {
-				modified = insertSemiColonForRule(region);
-			}
-			else if (type == CSSRegionContexts.CSS_LBRACE) {
-				modified = insertBraceOpen(region);
-			}
-			else if (type == CSSRegionContexts.CSS_RBRACE) {
-				modified = insertBraceClose(region);
-			}
-			else if (type == CSSRegionContexts.CSS_MEDIA || type == CSSRegionContexts.CSS_PAGE || type == CSSRegionContexts.CSS_FONT_FACE || CSSUtil.isSelectorText(region)) {
-				checkNextNode(region, CSSRegionContexts.CSS_LBRACE);
-			}
-			else if (type == CSSRegionContexts.CSS_IMPORT || type == CSSRegionContexts.CSS_CHARSET) {
-				checkNextNode(region, CSSRegionContexts.CSS_DELIMITER);
-			}
-		}
-		else if ((target instanceof CSSRuleDeclContainer || target instanceof CSSStyleDeclaration) && type == CSSRegionContexts.CSS_DECLARATION_PROPERTY) {
-			modified = insertStyleDeclarationItem(region);
-		}
-		else if (target instanceof ICSSStyleDeclItem && type == CSSRegionContexts.CSS_DECLARATION_DELIMITER) {
-			modified = insertSemiColonForStyleDeclarationItem(region);
-		}
-		else if (type == CSSRegionContexts.CSS_RBRACE) {
-			modified = insertBraceClose(region);
-		}
-
-		// post process
-		if (modified != null) {
-			if (modified instanceof CSSStructuredDocumentRegionContainer) {
-				((CSSStructuredDocumentRegionContainer) modified).propagateRangeStructuredDocumentRegion();
-			}
-		}
-
-		return modified;
-	}
-
-	/**
-	 * 
-	 */
-	private void insertStructuredDocumentRegions(IStructuredDocumentRegionList regionList) {
-		for (Enumeration e = regionList.elements(); e.hasMoreElements();) {
-			IStructuredDocumentRegion region = (IStructuredDocumentRegion) e.nextElement();
-			if (region == null) {
-				continue;
-			}
-			insertStructuredDocumentRegion(region);
-			if (fCreationContext.isToReparse()) {
-				int origStart = region.getEnd();
-				int origEnd = regionList.item(regionList.getLength() - 1).getEnd();
-				int newStart = fCreationContext.getReparseStart();
-				int newEnd = fCreationContext.getReparseEnd();
-				if (newStart < origStart || origEnd < newEnd) {
-					IStructuredDocumentRegionList newNodeList = getStructuredDocumentRegionList(newStart, newEnd);
-					setupCreationContext(newNodeList.item(0));
-					insertStructuredDocumentRegions(newNodeList);
-					return;
-				}
-				else {
-					fCreationContext.resetReparseRange();
-				}
-			}
-		}
-	}
-
-	/**
-	 * 
-	 */
-	private CSSNodeImpl insertFontFaceRule(IStructuredDocumentRegion region, IStructuredDocumentRegion braceNode) {
-		CSSNodeImpl parent = fCreationContext.getTargetNode();
-		if (!fParseFloating && !(parent instanceof ICSSRuleContainer)) {
-			return null;
-		}
-
-		CSSFontFaceRuleImpl rule = fFeeder.getCSSFontFaceRule();
-		if (rule == null) {
-			return null;
-		}
-
-		// setup flat container
-		rule.setRangeStructuredDocumentRegion(region, braceNode);
-
-		// insert to tree
-		if (!fUpdateContext.isActive() && parent != null) {
-			propagateRangePreInsert(parent, rule);
-			CSSNodeImpl next = fCreationContext.getNextNode();
-			if (next != null) {
-				parent.insertBefore(rule, next);
-			}
-			else {
-				parent.appendChild(rule);
-			}
-		}
-
-		fCreationContext.setTargetNode(rule);
-		// TargetNext is set to null automatically
-
-		return rule;
-	}
-
-	/**
-	 * 
-	 */
-	private CSSNodeImpl insertImportRule(IStructuredDocumentRegion beginDocRegion, IStructuredDocumentRegion endDocRegion) {
-		CSSNodeImpl parent = fCreationContext.getTargetNode();
-		if (!fParseFloating && !(parent instanceof ICSSRuleContainer)) {
-			return null;
-		}
-
-		ITextRegionList regions = new TextRegionListImpl(beginDocRegion.getRegions());
-		regions.remove(0); // must be "@import"
-		ITextRegion hrefRegion = null;
-		while (!regions.isEmpty()) {
-			ITextRegion textRegion = regions.remove(0);
-			if (textRegion == null) {
-				continue;
-			}
-			String type = textRegion.getType();
-			if (type == CSSRegionContexts.CSS_S || type == CSSRegionContexts.CSS_COMMENT) {
-				continue;
-			}
-			if (type == CSSRegionContexts.CSS_URI || type == CSSRegionContexts.CSS_STRING) {
-				hrefRegion = textRegion;
-				break;
-			}
-			else {
-				break;
-			}
-		}
-		if (hrefRegion == null) {
-			return null;
-		}
-
-		CSSImportRuleImpl rule = fFeeder.getCSSImportRule();
-		if (rule == null) {
-			return null;
-		}
-
-		CSSUtil.stripSurroundingSpace(regions);
-		MediaListImpl mediaList = (MediaListImpl) rule.getMedia();
-		setMediaList(mediaList, beginDocRegion, regions);
-
-		if (!fUpdateContext.isActive()) {
-			rule.setAttribute(ICSSImportRule.HREF, beginDocRegion.getText(hrefRegion));
-		}
-
-		// setup flat container
-		rule.setRangeStructuredDocumentRegion(beginDocRegion, endDocRegion);
-		CSSAttrImpl attr = rule.getAttributeNode(ICSSImportRule.HREF);
-		if (attr != null) {
-			attr.setRangeRegion(beginDocRegion, hrefRegion, hrefRegion);
-		}
-
-		// insert to tree
-		if (!fUpdateContext.isActive() && parent != null) {
-			propagateRangePreInsert(parent, rule);
-			CSSNodeImpl next = fCreationContext.getNextNode();
-			if (next != null) {
-				parent.insertBefore(rule, next);
-			}
-			else {
-				parent.appendChild(rule);
-			}
-		}
-
-		return rule;
-	}
-
-	/**
-	 * 
-	 */
-	private CSSNodeImpl insertMediaRule(IStructuredDocumentRegion flatNode, IStructuredDocumentRegion braceNode) {
-		CSSNodeImpl parent = fCreationContext.getTargetNode();
-		if (!fParseFloating && !(parent instanceof ICSSRuleContainer)) {
-			return null;
-		}
-
-		CSSMediaRuleImpl rule = fFeeder.getCSSMediaRule();
-		if (rule == null) {
-			return null;
-		}
-
-		ITextRegionList regions = new TextRegionListImpl(flatNode.getRegions());
-		regions.remove(0); // must be "@media"
-
-		CSSUtil.stripSurroundingSpace(regions);
-		MediaListImpl mediaList = (MediaListImpl) rule.getMedia();
-		setMediaList(mediaList, flatNode, regions);
-
-		// setup flat container
-		rule.setRangeStructuredDocumentRegion(flatNode, braceNode);
-
-		// insert to tree
-		if (!fUpdateContext.isActive() && parent != null) {
-			propagateRangePreInsert(parent, rule);
-			CSSNodeImpl next = fCreationContext.getNextNode();
-			if (next != null) {
-				parent.insertBefore(rule, next);
-			}
-			else {
-				parent.appendChild(rule);
-			}
-		}
-
-		fCreationContext.setTargetNode(rule);
-		// TargetNext is set to null automatically
-
-		return rule;
-	}
-
-	/**
-	 * 
-	 */
-	private CSSNodeImpl insertPageRule(IStructuredDocumentRegion flatNode, IStructuredDocumentRegion braceNode) {
-		CSSNodeImpl parent = fCreationContext.getTargetNode();
-		if (!fParseFloating && !(parent instanceof ICSSRuleContainer)) {
-			return null;
-		}
-
-		// get selector regions
-		ITextRegionList selectorRegions = new TextRegionListImpl(flatNode.getRegions());
-		selectorRegions.remove(0); // must be "@page"
-		CSSUtil.stripSurroundingSpace(selectorRegions);
-
-		CSSPageRuleImpl rule = fFeeder.getCSSPageRule();
-		if (rule == null) {
-			return null;
-		}
-
-		if (!fUpdateContext.isActive()) {
-			String selectorStr = CSSUtil.getRegionText(flatNode, selectorRegions);
-			if (0 < selectorStr.length()) {
-				rule.setSelectorText(selectorStr);
-			}
-		}
-
-		// setup flat container
-		rule.setRangeStructuredDocumentRegion(flatNode, braceNode);
-		CSSAttrImpl attr = rule.getAttributeNode(ICSSPageRule.SELECTOR);
-		if (attr != null && selectorRegions != null && !selectorRegions.isEmpty()) {
-			attr.setRangeRegion(flatNode, selectorRegions.get(0), selectorRegions.get(selectorRegions.size() - 1));
-		}
-
-		// insert to tree
-		if (!fUpdateContext.isActive() && parent != null) {
-			propagateRangePreInsert(parent, rule);
-			CSSNodeImpl next = fCreationContext.getNextNode();
-			if (next != null) {
-				parent.insertBefore(rule, next);
-			}
-			else {
-				parent.appendChild(rule);
-			}
-		}
-
-		fCreationContext.setTargetNode(rule);
-		// TargetNext is set to null automatically
-
-		return rule;
-	}
-
-	/**
-	 * 
-	 */
-	private CSSNodeImpl insertSemiColonForRule(IStructuredDocumentRegion region) {
-		IStructuredDocumentRegion keyRegion = CSSUtil.findPreviousSignificantNode(region);
-		String type = CSSUtil.getStructuredDocumentRegionType(keyRegion);
-
-		CSSNodeImpl inserted = null;
-		if (type == CSSRegionContexts.CSS_IMPORT) {
-			inserted = insertImportRule(keyRegion, region);
-		}
-		else if (type == CSSRegionContexts.CSS_CHARSET) {
-			inserted = insertCharsetRule(keyRegion, region);
-		}
-
-		return inserted;
-	}
-
-	/**
-	 * 
-	 */
-	private CSSNodeImpl insertSemiColonForStyleDeclarationItem(IStructuredDocumentRegion region) {
-		// only target/net node is changed. nothing to do.
-
-		CSSNodeImpl targetNode = fCreationContext.getTargetNode();
-		if (targetNode instanceof ICSSStyleDeclItem) {
-			int offset = targetNode.getStartOffset();
-			// widen document region range
-			// ((CSSStyleDeclItemImpl)targetNode).setLastStructuredDocumentRegion(region);
-			CSSModelUtil.expandStructuredDocumentRegionContainer((CSSStyleDeclItemImpl) targetNode, region);
-			// psStructuredDocumentRegion indicates CSSStyleDeclItem
-			ICSSNode parentNode = targetNode.getParentNode();
-			fCreationContext.setTargetNode(parentNode);
-			ICSSNode next = null;
-			if (parentNode.hasChildNodes()) {
-				for (ICSSNode child = targetNode.getFirstChild(); child != null; child = child.getNextSibling()) {
-					if (child instanceof CSSStructuredDocumentRegionContainer && offset < ((CSSStructuredDocumentRegionContainer) child).getStartOffset()) {
-						next = child;
-						break;
-					}
-				}
-			}
-			fCreationContext.setNextNode(next);
-
-			return targetNode;
-		}
-
-		return null;
-	}
-
-	/**
-	 * 
-	 */
-	private CSSNodeImpl insertStyleDeclarationItem(IStructuredDocumentRegion docRegion) {
-		CSSStyleDeclarationImpl parent = null;
-		CSSNodeImpl node = fCreationContext.getTargetNode();
-		if (node instanceof CSSRuleDeclContainer) {
-			CSSRuleDeclContainer declContainer = (CSSRuleDeclContainer) node;
-			parent = (CSSStyleDeclarationImpl) declContainer.getStyle();
-		}
-		else if (node instanceof CSSStyleDeclarationImpl) {
-			parent = (CSSStyleDeclarationImpl) node;
-		}
-
-		CSSDeclarationItemParser itemParser = new CSSDeclarationItemParser(parent.getOwnerDocument());
-		itemParser.setStructuredDocumentTemporary(false);
-		itemParser.setUpdateContext(fUpdateContext);
-		CSSStyleDeclItemImpl declItem = itemParser.setupDeclarationItem(docRegion);
-		if (declItem == null) {
-			return null;
-		}
-
-		// setup flat container
-		declItem.setRangeStructuredDocumentRegion(docRegion, docRegion);
-
-		// insert to tree
-		if (!fUpdateContext.isActive()) {
-			propagateRangePreInsert(parent, declItem);
-			CSSNodeImpl next = fCreationContext.getNextNode();
-			if (next != null) {
-				parent.insertBefore(declItem, next);
-			}
-			else {
-				parent.appendChild(declItem);
-			}
-		}
-
-		fCreationContext.setTargetNode(declItem);
-		// TargetNext is set to null automatically
-
-		return declItem;
-	}
-
-	/**
-	 * 
-	 */
-	private CSSNodeImpl insertStyleRule(IStructuredDocumentRegion flatNode, IStructuredDocumentRegion braceNode) {
-		CSSNodeImpl parent = fCreationContext.getTargetNode();
-		if (!fParseFloating && !(parent instanceof ICSSRuleContainer)) {
-			return null;
-		}
-
-		// get selector regions
-		ITextRegionList selectorRegions = new TextRegionListImpl(flatNode.getRegions());
-		CSSUtil.stripSurroundingSpace(selectorRegions);
-
-		CSSStyleRuleImpl rule = fFeeder.getCSSStyleRule();
-		if (rule == null) {
-			return null;
-		}
-
-		if (!fUpdateContext.isActive()) {
-			String selectorStr = CSSUtil.getRegionText(flatNode, selectorRegions);
-			if (selectorStr != null && 0 < selectorStr.length()) {
-				rule.setSelectorText(selectorStr);
-			}
-		}
-
-		// setup flat container
-		rule.setRangeStructuredDocumentRegion(flatNode, braceNode);
-		CSSAttrImpl attr = rule.getAttributeNode(ICSSPageRule.SELECTOR);
-		if (attr != null && selectorRegions != null && !selectorRegions.isEmpty()) {
-			attr.setRangeRegion(flatNode, selectorRegions.get(0), selectorRegions.get(selectorRegions.size() - 1));
-		}
-
-		// insert to tree
-		if (!fUpdateContext.isActive() && parent != null) {
-			propagateRangePreInsert(parent, rule);
-			CSSNodeImpl next = fCreationContext.getNextNode();
-			if (next != null) {
-				parent.insertBefore(rule, next);
-			}
-			else {
-				parent.appendChild(rule);
-			}
-		}
-
-		fCreationContext.setTargetNode(rule);
-		// TargetNext is set to null automatically
-
-		return rule;
-	}
-
-	/**
-	 * 
-	 */
-	private void pretendRemoveNode() {
-		CSSStructuredDocumentRegionContainer node = (CSSStructuredDocumentRegionContainer) fUpdateContext.getDeletionTarget();
-		if (node == null) {
-			return;
-		}
-
-		IStructuredDocumentRegion firstNode = node.getFirstStructuredDocumentRegion();
-		if (firstNode != null) {
-			fDeletionContext.expandRemovedRangeBegin(firstNode);
-		}
-		IStructuredDocumentRegion lastNode = node.getLastStructuredDocumentRegion();
-		if (lastNode != null) {
-			fDeletionContext.expandRemovedRangeEnd(lastNode);
-		}
-
-		shrinkContainer((CSSStructuredDocumentRegionContainer) fUpdateContext.getDeletionTargetParent(), node);
-	}
-
-	/**
-	 * @param parent
-	 *            org.eclipse.wst.css.core.model.CSSNodeImpl
-	 * @param child
-	 *            org.eclipse.wst.css.core.model.CSSNodeImpl
-	 */
-	private void propagateRangePreInsert(CSSNodeImpl parent, CSSNodeImpl child) {
-		if (!(child instanceof CSSStructuredDocumentRegionContainer) || !(parent instanceof CSSStructuredDocumentRegionContainer)) {
-			return;
-		}
-
-		CSSStructuredDocumentRegionContainer parentContainer = (CSSStructuredDocumentRegionContainer) parent;
-		CSSStructuredDocumentRegionContainer childContainer = (CSSStructuredDocumentRegionContainer) child;
-		IStructuredDocumentRegion firstNode = childContainer.getFirstStructuredDocumentRegion();
-		IStructuredDocumentRegion lastNode = childContainer.getLastStructuredDocumentRegion();
-		if (firstNode == null || lastNode == null) {
-			return;
-		}
-
-		boolean bModified = parentContainer.includeRangeStructuredDocumentRegion(firstNode, lastNode);
-		if (bModified) {
-			parentContainer.propagateRangeStructuredDocumentRegion();
-		}
-	}
-
-	/**
-	 * 
-	 */
-	private void removeStructuredDocumentRegion(IStructuredDocumentRegion flatNode) {
-		String type = CSSUtil.getStructuredDocumentRegionType(flatNode);
-		if (type == CSSRegionContexts.CSS_DELIMITER || type == CSSRegionContexts.CSS_DECLARATION_DELIMITER) {
-			do {
-				flatNode = fStructuredDocumentWalker.getPrevNode(flatNode);
-				type = (flatNode != null) ? CSSUtil.getStructuredDocumentRegionType(flatNode) : null;
-			}
-			while (type != null && (type == CSSRegionContexts.CSS_S || type == CSSRegionContexts.CSS_COMMENT));
-		}
-		if (flatNode == null) {
-			return;
-		}
-
-		// if (fDeletionContext.isInRemovedRange(flatNode)) { // already
-		// removed
-		// return;
-		// }
-
-		CSSStructuredDocumentRegionContainer node = fDeletionContext.findDeletionTarget(fDocument, flatNode);
-		if (node == null || node == fDocument) {
-			return; // not attached with any treeNode
-		}
-
-		if (node instanceof CSSStyleDeclarationImpl) {
-			ICSSNode rule = node.getParentNode();
-			if (rule instanceof CSSStyleRuleImpl) {
-				node = (CSSStructuredDocumentRegionContainer) rule;
-			}
-			else {
-				return;
-			}
-		}
-
-		// ICSSNode p = node.getParentNode();
-		// if (p == null || ! (p instanceof
-		// CSSStructuredDocumentRegionContainer)) {
-		// return;
-		// }
-		// CSSStructuredDocumentRegionContainer parent =
-		// (CSSStructuredDocumentRegionContainer)p;
-
-		if (fDeletionContext.addNodeToBeRemoved(node)) {
-			IStructuredDocumentRegion firstNode = node.getFirstStructuredDocumentRegion();
-			if (firstNode != null) {
-				fDeletionContext.expandRemovedRangeBegin(firstNode);
-			}
-			IStructuredDocumentRegion lastNode = node.getLastStructuredDocumentRegion();
-			if (lastNode != null) {
-				fDeletionContext.expandRemovedRangeEnd(lastNode);
-			}
-		}
-
-		// shrinkContainer(node);
-		// parent.removeChild(node);
-	}
-
-	/**
-	 * 
-	 */
-	private void removeStructuredDocumentRegions(IStructuredDocumentRegionList flatNodes) {
-		for (Enumeration e = flatNodes.elements(); e.hasMoreElements();) {
-			IStructuredDocumentRegion flatNode = (IStructuredDocumentRegion) e.nextElement();
-			if (flatNode == null) {
-				continue;
-			}
-			removeStructuredDocumentRegion(flatNode);
-		}
-
-		Iterator i = fDeletionContext.getNodesToBeRemoved();
-		while (i.hasNext()) {
-			CSSNodeImpl node = (CSSNodeImpl) i.next();
-			if (!(node instanceof CSSStructuredDocumentRegionContainer)) {
-				continue;
-			}
-			CSSNodeImpl parent = (CSSNodeImpl) node.getParentNode();
-			if (!(parent instanceof CSSStructuredDocumentRegionContainer)) {
-				continue;
-			}
-			shrinkContainer((CSSStructuredDocumentRegionContainer) parent, (CSSStructuredDocumentRegionContainer) node);
-			parent.removeChild(node);
-		}
-	}
-
-	/**
-	 * 
-	 */
-	void replaceStructuredDocumentRegions(IStructuredDocumentRegionList newStructuredDocumentRegions, IStructuredDocumentRegionList oldStructuredDocumentRegions) {
-		if (fDocument == null || fCreationContext == null) {
-			return;
-		}
-
-		if (oldStructuredDocumentRegions != null && 0 < oldStructuredDocumentRegions.getLength()) {
-			setupDeletionContext(newStructuredDocumentRegions, oldStructuredDocumentRegions);
-			short updateMode = fUpdateContext.getUpdateMode();
-			if (updateMode == CSSModelUpdateContext.UPDATE_IDLE) {
-				removeStructuredDocumentRegions(oldStructuredDocumentRegions);
-			}
-			else {
-				pretendRemoveNode();
-			}
-			newStructuredDocumentRegions = getStructuredDocumentRegionList(fDeletionContext.getRemovedRangeBegin(), fDeletionContext.getRemovedRangeEnd());
-			cleanupDeletionContext();
-		}
-
-		if (newStructuredDocumentRegions != null && 0 < newStructuredDocumentRegions.getLength()) {
-			setupCreationContext(newStructuredDocumentRegions.item(0));
-			insertStructuredDocumentRegions(newStructuredDocumentRegions);
-		}
-
-		// make document hold whole structuredDocument
-		/*
-		 * boolean bUpdate = false; IStructuredDocumentRegion flatNode;
-		 * flatNode = fDocument.getFirstStructuredDocumentRegion(); bUpdate =
-		 * bUpdate || (flatNode == null ||
-		 * fStructuredDocumentWalker.isOldNode(flatNode) ||
-		 * flatNode.getPrevious() != null); flatNode =
-		 * fDocument.getLastStructuredDocumentRegion(); bUpdate = bUpdate ||
-		 * (flatNode == null || fStructuredDocumentWalker.isOldNode(flatNode) ||
-		 * flatNode.getNext() != null);
-		 */
-		IStructuredDocument structuredDocument = fStructuredDocumentWalker.getStructuredDocument();
-		fDocument.setRangeStructuredDocumentRegion(structuredDocument.getFirstStructuredDocumentRegion(), structuredDocument.getLastStructuredDocumentRegion());
-		/* } */
-
-		// remove in official release
-		// CSSModelUtil.diagnoseTree(fDocument,
-		// fStructuredDocumentWalker.getStructuredDocument());
-	}
-
-	/**
-	 * 
-	 */
-	void replaceRegions(IStructuredDocumentRegion flatNode, ITextRegionList newRegions, ITextRegionList oldRegions) {
-		if (flatNode == null) {
-			return;
-		}
-		if (newRegions == null || oldRegions == null) {
-			return;
-		}
-		if (fDocument == null) {
-			return;
-		}
-
-		changeStructuredDocumentRegion(flatNode);
-	}
-
-	/**
-	 */
-	private void resetCreationTarget(IStructuredDocumentRegion newStructuredDocumentRegion) {
-		if (newStructuredDocumentRegion == null || newStructuredDocumentRegion.getStartOffset() <= 0) {
-			// top of document
-			fCreationContext.setTargetNode(fDocument);
-			fCreationContext.setNextNode(fDocument.getFirstChild());
-			return;
-		}
-
-		int cursorPos = newStructuredDocumentRegion.getStartOffset();
-		CSSNodeImpl cursorNode = getNodeAt(cursorPos);
-		if (cursorNode == null) { // end of document
-			cursorNode = fDocument;
-		}
-
-		// find edge of tree node
-		CSSNodeImpl node = null;
-		// boolean bOverSemiColon = false;
-		boolean bOverOpenBrace = false;
-		IStructuredDocumentRegion flatNode;
-		for (flatNode = newStructuredDocumentRegion; flatNode != null; flatNode = flatNode.getPrevious()) {
-			node = getNodeAt(flatNode.getStartOffset());
-			if (node == null) {
-				node = fDocument;
-			}
-			if (node != cursorNode || node.getStartOffset() == flatNode.getStartOffset()) {
-				break;
-			}
-			if (flatNode != newStructuredDocumentRegion) {
-				String type = CSSUtil.getStructuredDocumentRegionType(flatNode);
-				// if (type == CSSRegionContexts.CSS_DELIMITER ||
-				// type == CSSRegionContexts.CSS_DECLARATION_DELIMITER) {
-				// bOverSemiColon = true;
-				// } else
-				if (type == CSSRegionContexts.CSS_LBRACE) {
-					bOverOpenBrace = true;
-				}
-			}
-		}
-
-		CSSNodeImpl targetNode = null;
-
-		// if (flatNode == null) {
-		// v<--|
-		// AAAAAA
-		// BBBBBBBBBB cursorNode:A , node:B -> target is A
-		// targetNode = (node == null) ? fDocument : node;
-		// } else
-		if (cursorNode == node) {
-			// v<--|
-			// AAAAAA
-			// BBBBBBBBBB cursorNode:A , node:B -> target is A
-			if (bOverOpenBrace && cursorNode instanceof CSSRuleDeclContainer) {
-				targetNode = (CSSNodeImpl) ((CSSRuleDeclContainer) cursorNode).getStyle();
-			}
-			else {
-				targetNode = cursorNode;
-			}
-		}
-		else {
-			// 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) {
-				// targetNode = (CSSNodeImpl)((bOverSemiColon) ?
-				// node.getParentNode() : node); // NP
-				String regionType = CSSUtil.getStructuredDocumentRegionType(flatNode);
-				if (regionType == CSSRegionContexts.CSS_DELIMITER || regionType == CSSRegionContexts.CSS_DECLARATION_DELIMITER) {
-					targetNode = (CSSNodeImpl) node.getParentNode();
-				}
-				else {
-					targetNode = node;
-				}
-			}
-			else if (CSSUtil.getStructuredDocumentRegionType(flatNode) == CSSRegionContexts.CSS_RBRACE) {
-				targetNode = (CSSNodeImpl) node.getParentNode();
-			}
-			else {
-				targetNode = node;
-			}
-		}
-
-		fCreationContext.setTargetNode(targetNode);
-		ICSSNode next = null;
-		if (targetNode.hasChildNodes()) {
-			for (ICSSNode child = targetNode.getFirstChild(); child != null; child = child.getNextSibling()) {
-				if (child instanceof CSSStructuredDocumentRegionContainer && cursorPos < ((CSSStructuredDocumentRegionContainer) child).getStartOffset()) {
-					next = child;
-					break;
-				}
-			}
-		}
-		fCreationContext.setNextNode(next);
-
-	}
-
-	/**
-	 */
-	private void resetReparseRange() {
-		fCreationContext.clear();
-	}
-
-	void setStructuredDocumentEvent(StructuredDocumentEvent event) {
-		if (fStructuredDocumentWalker == null) {
-			fStructuredDocumentWalker = new StructuredDocumentWalker();
-		}
-		fStructuredDocumentWalker.initialize(event);
-	}
-
-	/**
-	 * regions: surrounding spaces should be removed. Q. Why did you set
-	 * mediaTable ? A. MediaList may have two or more medium that have same
-	 * value, then searcing in MediaList is not perfect. Q.
-	 * fUpdateContext.isActive() is not care. Are you OK? A. OK.
-	 */
-	private void setMediaList(MediaListImpl mediaList, IStructuredDocumentRegion region, ITextRegionList textRegions) {
-		if (mediaList == null || textRegions == null) {
-			return;
-		}
-		Collection mediaTable = new HashSet();
-		CSSNodeListImpl attrs = mediaList.getMedia();
-		for (int i = 0; i != attrs.getLength(); i++) {
-			mediaTable.add(attrs.item(i));
-		}
-
-		ITextRegion start = null;
-		ITextRegion end = null;
-
-		Iterator i = textRegions.iterator();
-		ITextRegion textRegion = (ITextRegion) ((i.hasNext()) ? i.next() : null);
-		while (textRegion != null) {
-			if (textRegion.getType() == CSSRegionContexts.CSS_MEDIUM) {
-				String mediumStr = region.getText(textRegion);
-				if (0 < mediumStr.length()) {
-					CSSAttrImpl attr = null;
-					// is the medium already set ?
-					Iterator iTable = mediaTable.iterator();
-					while (iTable.hasNext()) {
-						CSSAttrImpl cai = (CSSAttrImpl) iTable.next();
-						if (mediumStr.equalsIgnoreCase(cai.getValue())) {
-							attr = cai;
-							mediaTable.remove(cai);
-							break;
-						}
-					}
-					if (attr == null) {
-						// is not set. create new attribute
-						String key = "mediumP" + mediaList.mediumCounter++; //$NON-NLS-1$
-						mediaList.setAttribute(key, mediumStr);
-						attr = mediaList.getAttributeNode(key);
-					}
-					attr.setRangeRegion(region, textRegion, textRegion);
-					if (start == null) {
-						start = textRegion;
-					}
-					end = textRegion;
-				}
-			}
-			textRegion = (ITextRegion) ((i.hasNext()) ? i.next() : null);
-		}
-
-		if (start != null && end != null) {
-			mediaList.setRangeRegion(region, start, end);
-		}
-	}
-
-	/**
-	 * 
-	 */
-	private void setupCreationContext(IStructuredDocumentRegion region) {
-		resetReparseRange();
-		resetCreationTarget(region);
-	}
-
-	/**
-	 * 
-	 */
-	private void setupDeletionContext(IStructuredDocumentRegionList newStructuredDocumentRegions, IStructuredDocumentRegionList oldStructuredDocumentRegions) {
-		fDeletionContext.setupContext(newStructuredDocumentRegions, oldStructuredDocumentRegions);
-	}
-
-	/**
-	 * 
-	 */
-	void setupUpdateContext(short updateMode, ICSSNode parentNode, ICSSNode targetNode) {
-		fUpdateContext.setupContext(updateMode, parentNode, targetNode);
-	}
-
-	/**
-	 * 
-	 */
-	void shrinkContainer(CSSStructuredDocumentRegionContainer parent, CSSStructuredDocumentRegionContainer child) {
-		if (child == null) {
-			return;
-		}
-
-		boolean bModified = false;
-		bModified = bModified || cleanupLastNode(child.getLastStructuredDocumentRegion(), parent);
-		bModified = bModified || cleanupFirstNode(child.getFirstStructuredDocumentRegion(), parent);
-
-		if (bModified) {
-			if (parent != null) {
-				for (ICSSNode node = parent.getFirstChild(); node != null; node = node.getNextSibling()) {
-					if (child != node && node instanceof CSSStructuredDocumentRegionContainer) {
-						((CSSStructuredDocumentRegionContainer) node).propagateRangeStructuredDocumentRegion();
-					}
-				}
-			}
-		}
-
-		child.setRangeStructuredDocumentRegion(null, null);
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/document/CSSModelUpdateContext.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/document/CSSModelUpdateContext.java
deleted file mode 100644
index 6344998..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/document/CSSModelUpdateContext.java
+++ /dev/null
@@ -1,416 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this 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.core.internal.document;
-
-
-
-import java.util.LinkedList;
-
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSNode;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSPrimitiveValue;
-import org.eclipse.wst.css.core.internal.util.AbstractCssTraverser;
-import org.eclipse.wst.css.core.internal.util.CSSUtil;
-import org.w3c.dom.DOMException;
-import org.w3c.dom.css.CSSPrimitiveValue;
-
-
-/**
- * 
- */
-class CSSModelUpdateContext {
-
-
-	class CSSNodeUpdateTraverser extends AbstractCssTraverser {
-		public CSSNodeUpdateTraverser() {
-			super();
-			setTraverseImported(false);
-			setTraverseImportFirst(false);
-		}
-
-		public LinkedList getNodeList() {
-			return fTravNodeList;
-		}
-
-		protected void begin(ICSSNode node) {
-			fTravNodeList = new LinkedList();
-		}
-
-		protected short preNode(ICSSNode node) {
-			if (node instanceof CSSStyleDeclarationImpl || node instanceof CSSAttrImpl || node instanceof MediaListImpl) {
-				// skip
-			}
-			else {
-				fTravNodeList.add(node);
-			}
-			if (node instanceof CSSPrimitiveContainer) {
-				return TRAV_PRUNE;
-			}
-			else {
-				return TRAV_CONT;
-			}
-		}
-
-		LinkedList fTravNodeList = null;
-	}
-
-	ICSSNode fLastNode = null;
-	ICSSNode fDeletionTargetParent = null;
-	ICSSNode fDeletionTarget = null;
-	LinkedList fNodeList = null;
-	private short fUpdateMode = UPDATE_IDLE;
-	static final short UPDATE_IDLE = 0;
-	static final short UPDATE_INSERT_FNCONTAINER = 1;
-	static final short UPDATE_INSERT_RCONTAINER = 2;
-	static final short UPDATE_REMOVE_FNCONTAINER = 3;
-	static final short UPDATE_REMOVE_RCONTAINER = 4;
-	static final short UPDATE_CHANGE_RCONTAINER = 5;
-
-	/**
-	 * CSSNodeUpdateQueue constructor comment.
-	 */
-	CSSModelUpdateContext() {
-		super();
-	}
-
-	/**
-	 * 
-	 */
-	void cleanupContext() {
-		fNodeList = null;
-		fDeletionTarget = null;
-		fDeletionTargetParent = null;
-		fUpdateMode = UPDATE_IDLE;
-	}
-
-	/**
-	 * 
-	 */
-	CounterImpl getCounter() {
-		ICSSNode node = getNode();
-		if (node instanceof CounterImpl) {
-			return (CounterImpl) node;
-		}
-		else {
-			CSSUtil.debugOut("CounterImpl is expected, but " + //$NON-NLS-1$
-						CSSUtil.getClassString(node));
-			ungetNode();
-			throw new DOMException(DOMException.INVALID_MODIFICATION_ERR, "");//$NON-NLS-1$
-		}
-	}
-
-	/**
-	 * 
-	 */
-	CSSCharsetRuleImpl getCSSCharsetRule() {
-		ICSSNode node = getNode();
-		if (node instanceof CSSCharsetRuleImpl) {
-			return (CSSCharsetRuleImpl) node;
-		}
-		else {
-			CSSUtil.debugOut("CSSCharsetRuleImpl is expected, but " + //$NON-NLS-1$
-						CSSUtil.getClassString(node));
-			ungetNode();
-			throw new DOMException(DOMException.INVALID_MODIFICATION_ERR, "");//$NON-NLS-1$
-		}
-	}
-
-	/**
-	 * 
-	 */
-	CSSFontFaceRuleImpl getCSSFontFaceRule() {
-		ICSSNode node = getNode();
-		if (node instanceof CSSFontFaceRuleImpl) {
-			return (CSSFontFaceRuleImpl) node;
-		}
-		else {
-			CSSUtil.debugOut("CSSFontFaceRuleImpl is expected, but " + //$NON-NLS-1$
-						CSSUtil.getClassString(node));
-			ungetNode();
-			throw new DOMException(DOMException.INVALID_MODIFICATION_ERR, "");//$NON-NLS-1$
-		}
-	}
-
-	/**
-	 * 
-	 */
-	CSSImportRuleImpl getCSSImportRule() {
-		ICSSNode node = getNode();
-		if (node instanceof CSSImportRuleImpl) {
-			return (CSSImportRuleImpl) node;
-		}
-		else {
-			CSSUtil.debugOut("CSSImportRuleImpl is expected, but " + //$NON-NLS-1$
-						CSSUtil.getClassString(node));
-			ungetNode();
-			throw new DOMException(DOMException.INVALID_MODIFICATION_ERR, "");//$NON-NLS-1$
-		}
-	}
-
-	/**
-	 * 
-	 */
-	CSSMediaRuleImpl getCSSMediaRule() {
-		ICSSNode node = getNode();
-		if (node instanceof CSSMediaRuleImpl) {
-			return (CSSMediaRuleImpl) node;
-		}
-		else {
-			CSSUtil.debugOut("CSSMediaRuleImpl is expected, but " + //$NON-NLS-1$
-						CSSUtil.getClassString(node));
-			ungetNode();
-			throw new DOMException(DOMException.INVALID_MODIFICATION_ERR, "");//$NON-NLS-1$
-		}
-	}
-
-	/**
-	 * 
-	 */
-	CSSPageRuleImpl getCSSPageRule() {
-		ICSSNode node = getNode();
-		if (node instanceof CSSPageRuleImpl) {
-			return (CSSPageRuleImpl) node;
-		}
-		else {
-			CSSUtil.debugOut("CSSPageRuleImpl is expected, but " + //$NON-NLS-1$
-						CSSUtil.getClassString(node));
-			ungetNode();
-			throw new DOMException(DOMException.INVALID_MODIFICATION_ERR, "");//$NON-NLS-1$
-		}
-	}
-
-	/**
-	 * 
-	 */
-	CSSPrimitiveValueImpl getCSSPrimitiveValue(short type) {
-		ICSSNode node = getNode();
-		if (node instanceof CSSPrimitiveValueImpl) {
-			short nodeType = ((CSSPrimitiveValueImpl) node).getPrimitiveType();
-			if (nodeType == type || ((nodeType == CSSPrimitiveValue.CSS_NUMBER || nodeType == ICSSPrimitiveValue.CSS_INTEGER) && (type == CSSPrimitiveValue.CSS_NUMBER || type == ICSSPrimitiveValue.CSS_INTEGER))) {
-				return (CSSPrimitiveValueImpl) node;
-			}
-		}
-
-		if (node instanceof CSSPrimitiveValueImpl) {
-			CSSPrimitiveValueImpl value = (CSSPrimitiveValueImpl) node;
-			CSSUtil.debugOut("CSSPrimitiveValueImpl [" + type + //$NON-NLS-1$
-						"] is expected, but type is [" + //$NON-NLS-1$
-						value.getPrimitiveType() + "]: \"" + value.generateSource() + "\"");//$NON-NLS-2$//$NON-NLS-1$
-		}
-		else {
-			CSSUtil.debugOut("CSSPrimitiveValueImpl(" + type + //$NON-NLS-1$
-						") is expected, but " + //$NON-NLS-1$
-						CSSUtil.getClassString(node));
-		}
-
-		ungetNode();
-		throw new DOMException(DOMException.INVALID_MODIFICATION_ERR, "");//$NON-NLS-1$
-	}
-
-	/**
-	 * 
-	 */
-	CSSPrimitiveValueImpl getCSSPrimitiveValueAny() {
-		ICSSNode node = getNode();
-		if (node instanceof CSSPrimitiveValueImpl) {
-			return (CSSPrimitiveValueImpl) node;
-		}
-		else {
-			CSSUtil.debugOut("CSSPrimitiveValueImpl is expected, but " + //$NON-NLS-1$
-						CSSUtil.getClassString(node));
-			ungetNode();
-			throw new DOMException(DOMException.INVALID_MODIFICATION_ERR, "");//$NON-NLS-1$
-		}
-	}
-
-	/**
-	 * 
-	 */
-	CSSStyleDeclItemImpl getCSSStyleDeclItem(String propertyName) {
-		ICSSNode node = getNode();
-		if (node instanceof CSSStyleDeclItemImpl && ((CSSStyleDeclItemImpl) node).getPropertyName().equalsIgnoreCase(propertyName)) {
-			return (CSSStyleDeclItemImpl) node;
-		}
-		else {
-			CSSUtil.debugOut("CSSStyleDeclItemImpl(" + propertyName + //$NON-NLS-1$
-						") is expected, but " + CSSUtil.getClassString(node));//$NON-NLS-1$
-			ungetNode();
-			throw new DOMException(DOMException.INVALID_MODIFICATION_ERR, "");//$NON-NLS-1$
-		}
-	}
-
-	/**
-	 * 
-	 */
-	CSSStyleRuleImpl getCSSStyleRule() {
-		ICSSNode node = getNode();
-		if (node instanceof CSSStyleRuleImpl) {
-			return (CSSStyleRuleImpl) node;
-		}
-		else {
-			CSSUtil.debugOut("CSSStyleRuleImpl is expected, but " + //$NON-NLS-1$
-						CSSUtil.getClassString(node));
-			ungetNode();
-			throw new DOMException(DOMException.INVALID_MODIFICATION_ERR, "");//$NON-NLS-1$
-		}
-	}
-
-	/**
-	 * @return org.eclipse.wst.css.core.model.interfaces.ICSSNode
-	 */
-	ICSSNode getDeletionTarget() {
-		return fDeletionTarget;
-	}
-
-	/**
-	 * @return org.eclipse.wst.css.core.model.interfaces.ICSSNode
-	 */
-	ICSSNode getDeletionTargetParent() {
-		return fDeletionTargetParent;
-	}
-
-	/**
-	 * 
-	 */
-	private ICSSNode getNode() {
-		ICSSNode node = null;
-		if (fNodeList != null && 0 < fNodeList.size()) {
-			node = (ICSSNode) fNodeList.removeFirst();
-		}
-		fLastNode = node;
-		return node;
-	}
-
-	/**
-	 * 
-	 */
-	int getNodeCount() {
-		if (fNodeList != null) {
-			return fNodeList.size();
-		}
-		else {
-			return -1;
-		}
-	}
-
-	/**
-	 * 
-	 */
-	// ICSSNode getParentNode() {
-	// return fParentNode;
-	// }
-	/**
-	 * 
-	 */
-	RectImpl getRect() {
-		ICSSNode node = getNode();
-		if (node instanceof RectImpl) {
-			return (RectImpl) node;
-		}
-		else {
-			CSSUtil.debugOut("RectImpl is expected, but " + //$NON-NLS-1$
-						CSSUtil.getClassString(node));
-			ungetNode();
-			throw new DOMException(DOMException.INVALID_MODIFICATION_ERR, "");//$NON-NLS-1$
-		}
-	}
-
-	/**
-	 * 
-	 */
-	RGBColorImpl getRGBColor() {
-		ICSSNode node = getNode();
-		if (node instanceof RGBColorImpl) {
-			return (RGBColorImpl) node;
-		}
-		else {
-			CSSUtil.debugOut("RGBColorImpl is expected, but " + //$NON-NLS-1$
-						CSSUtil.getClassString(node));
-			ungetNode();
-			throw new DOMException(DOMException.INVALID_MODIFICATION_ERR, "");//$NON-NLS-1$
-		}
-	}
-
-	/**
-	 * @return short
-	 */
-	short getUpdateMode() {
-		return fUpdateMode;
-	}
-
-	/**
-	 * 
-	 */
-	boolean isActive() {
-		return (fNodeList != null);
-	}
-
-	/**
-	 * 
-	 */
-	void setupContext(short updateMode, ICSSNode parentNode, ICSSNode targetNode) {
-		fUpdateMode = updateMode;
-
-		ICSSNode traverseRoot;
-		if (updateMode == UPDATE_REMOVE_RCONTAINER || updateMode == UPDATE_INSERT_RCONTAINER || updateMode == UPDATE_CHANGE_RCONTAINER) {
-			traverseRoot = parentNode;
-			while (traverseRoot instanceof CSSRegionContainer) {
-				traverseRoot = traverseRoot.getParentNode();
-			}
-		}
-		else {
-			traverseRoot = targetNode;
-		}
-
-		if (updateMode == UPDATE_REMOVE_RCONTAINER || updateMode == UPDATE_INSERT_RCONTAINER || // region
-																								// insert
-																								// =>
-																								// replace
-																								// flat
-																								// node
-					updateMode == UPDATE_CHANGE_RCONTAINER || updateMode == UPDATE_REMOVE_FNCONTAINER) {
-			fDeletionTarget = traverseRoot;
-			if (fDeletionTarget == targetNode) {
-				fDeletionTargetParent = parentNode;
-			}
-			else {
-				fDeletionTargetParent = fDeletionTarget.getParentNode();
-			}
-		}
-		else {
-			fDeletionTarget = null;
-			fDeletionTargetParent = null;
-		}
-
-		if (updateMode == UPDATE_INSERT_RCONTAINER || updateMode == UPDATE_INSERT_FNCONTAINER || updateMode == UPDATE_REMOVE_RCONTAINER || // region
-																																			// remove
-																																			// =>
-																																			// re-insert
-																																			// flat
-																																			// node
-					updateMode == UPDATE_CHANGE_RCONTAINER) {
-			CSSNodeUpdateTraverser traverser = new CSSNodeUpdateTraverser();
-			traverser.apply(traverseRoot);
-			fNodeList = traverser.getNodeList();
-		}
-		else {
-			fNodeList = null;
-		}
-	}
-
-	/**
-	 * 
-	 */
-	private void ungetNode() {
-		if (fNodeList != null && fLastNode != null) {
-			fNodeList.addFirst(fLastNode);
-		}
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/document/CSSModelUpdater.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/document/CSSModelUpdater.java
deleted file mode 100644
index cbd8058..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/document/CSSModelUpdater.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.wst.css.core.internal.document;
-
-
-
-import org.eclipse.wst.css.core.internal.formatter.AttrChangeContext;
-import org.eclipse.wst.css.core.internal.formatter.CSSSourceFormatterFactory;
-import org.eclipse.wst.css.core.internal.formatter.CSSSourceGenerator;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSAttr;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSNode;
-import org.eclipse.wst.css.core.internal.util.CSSUtil;
-import org.eclipse.wst.sse.core.internal.provisional.INodeNotifier;
-import org.eclipse.wst.sse.core.internal.provisional.events.NoChangeEvent;
-import org.eclipse.wst.sse.core.internal.provisional.events.StructuredDocumentEvent;
-import org.eclipse.wst.sse.core.internal.provisional.text.IStructuredDocument;
-import org.eclipse.wst.sse.core.internal.text.BasicStructuredDocument;
-import org.w3c.dom.DOMException;
-
-
-/**
- * 
- */
-class CSSModelUpdater {
-
-	private CSSModelImpl fModel = null;
-	private CSSModelParser fParser = null;
-
-	/**
-	 * CSSModelUpdater constructor comment.
-	 */
-	CSSModelUpdater() {
-		super();
-	}
-
-	/**
-	 * 
-	 */
-	CSSModelUpdater(CSSModelImpl model) {
-		super();
-		fModel = model;
-	}
-
-	/**
-	 * @param parentNode
-	 *            org.eclipse.wst.css.core.model.CSSNodeImpl
-	 * @param node
-	 *            org.eclipse.wst.css.core.model.CSSNodeImpl
-	 */
-	private void attrInserted(CSSNodeImpl parentNode, CSSAttrImpl attr) {
-		CSSSourceGenerator formatter = CSSSourceFormatterFactory.getInstance().getSourceFormatter(parentNode);
-
-		if (formatter == null) {
-			CSSUtil.debugOut("Cannot get format adapter : " + parentNode.getClass().toString());//$NON-NLS-1$
-			return;
-		}
-
-		short updateMode = CSSModelUpdateContext.UPDATE_INSERT_RCONTAINER;
-		fParser.setupUpdateContext(updateMode, parentNode, attr);
-
-		// get formatted info
-		AttrChangeContext region = new AttrChangeContext();
-		String text = new String(formatter.formatAttrChanged(parentNode, attr, true, region));
-
-		// set text
-		StructuredDocumentEvent result = insertText(region.start, region.end - region.start, text);
-
-		int nRemains = fParser.cleanupUpdateContext();
-
-		if (0 < nRemains && !(result instanceof NoChangeEvent)) {
-			throw new DOMException(DOMException.INVALID_MODIFICATION_ERR, "");//$NON-NLS-1$		
-		}
-	}
-
-	/**
-	 * @param parentNode
-	 *            org.eclipse.wst.css.core.model.CSSNodeImpl
-	 * @param node
-	 *            org.eclipse.wst.css.core.model.CSSNodeImpl
-	 */
-	private void attrRemoved(CSSNodeImpl parentNode, CSSAttrImpl attr) {
-		CSSSourceGenerator formatter = CSSSourceFormatterFactory.getInstance().getSourceFormatter(parentNode);
-
-		if (formatter == null) {
-			CSSUtil.debugOut("Cannot get format adapter : " + parentNode.getClass().toString());//$NON-NLS-1$
-			return;
-		}
-
-		short updateMode = CSSModelUpdateContext.UPDATE_REMOVE_RCONTAINER;
-		fParser.setupUpdateContext(updateMode, parentNode, attr);
-
-		// get formatted info
-		AttrChangeContext region = new AttrChangeContext();
-		String text = new String(formatter.formatAttrChanged(parentNode, attr, false, region));
-
-		// set text
-		StructuredDocumentEvent result = insertText(region.start, region.end - region.start, text);
-
-		int nRemains = fParser.cleanupUpdateContext();
-
-		if (0 < nRemains && !(result instanceof NoChangeEvent)) {
-			throw new DOMException(DOMException.INVALID_MODIFICATION_ERR, "");//$NON-NLS-1$		
-		}
-	}
-
-	/**
-	 * 
-	 */
-	void attrReplaced(CSSNodeImpl parentNode, CSSNodeImpl newAttr, CSSNodeImpl oldAttr) {
-		if (parentNode == null) {
-			return;
-		}
-
-		if (oldAttr != null) {
-			attrRemoved(parentNode, (CSSAttrImpl) oldAttr);
-		}
-
-		if (newAttr != null) {
-			attrInserted(parentNode, (CSSAttrImpl) newAttr);
-		}
-	}
-
-	/**
-	 * 
-	 */
-	private void childInserted(CSSNodeImpl parentNode, CSSNodeImpl node) {
-		short updateMode = CSSModelUpdateContext.UPDATE_IDLE;
-
-		if (node instanceof CSSStructuredDocumentRegionContainer) {
-			updateMode = CSSModelUpdateContext.UPDATE_INSERT_FNCONTAINER;
-		}
-		else if (node instanceof CSSRegionContainer) {
-			updateMode = CSSModelUpdateContext.UPDATE_INSERT_RCONTAINER;
-		}
-		else {
-			CSSUtil.debugOut("What's this node? : " + node.getClass().toString());//$NON-NLS-1$
-			return;
-		}
-
-		fParser.setupUpdateContext(updateMode, parentNode, node);
-
-		StructuredDocumentEvent result = defaultInserted(parentNode, node);
-
-		int nRemains = fParser.cleanupUpdateContext();
-
-		if (0 < nRemains && !(result instanceof NoChangeEvent)) {
-			throw new DOMException(DOMException.INVALID_MODIFICATION_ERR, "");//$NON-NLS-1$		
-		}
-	}
-
-	/**
-	 * 
-	 */
-	private void childRemoved(CSSNodeImpl parentNode, CSSNodeImpl node) {
-		short updateMode = CSSModelUpdateContext.UPDATE_IDLE;
-
-		if (node instanceof CSSStructuredDocumentRegionContainer) {
-			updateMode = CSSModelUpdateContext.UPDATE_REMOVE_FNCONTAINER;
-		}
-		else if (node instanceof CSSRegionContainer) {
-			updateMode = CSSModelUpdateContext.UPDATE_REMOVE_RCONTAINER;
-		}
-		else {
-			CSSUtil.debugOut("What's this node? : " + node.getClass().toString());//$NON-NLS-1$
-			return;
-		}
-
-		fParser.setupUpdateContext(updateMode, parentNode, node);
-
-		CSSNodeImpl prev = getOldPrevious(parentNode, node);
-		CSSNodeImpl next = getOldNext(parentNode, node);
-		int insertPos = -1, endPos = -1;
-		String source = "";//$NON-NLS-1$
-		if (prev != null) {
-			insertPos = prev.getEndOffset();
-		}
-		else {
-			insertPos = node.getStartOffset();
-			insertPos -= nearestSpaceLengthBefore(parentNode, insertPos);
-		}
-		if (next != null) {
-			endPos = next.getStartOffset();
-		}
-		else {
-			endPos = node.getEndOffset();
-			endPos += nearestSpaceLengthAfter(parentNode, endPos);
-		}
-		source = getSpaceBefore(parentNode, next, node);
-		StructuredDocumentEvent result;
-		if (source.length() > 0) {
-			result = insertText(insertPos, endPos - insertPos, source);
-		}
-		else {
-			result = removeText(insertPos, endPos - insertPos);
-		}
-
-		int nRemains = fParser.cleanupUpdateContext();
-
-		if (0 < nRemains && !(result instanceof NoChangeEvent)) {
-			throw new DOMException(DOMException.INVALID_MODIFICATION_ERR, "");//$NON-NLS-1$		
-		}
-
-		/*
-		 * int removeStart = -1; int removeEnd = -1; if (node instanceof
-		 * CSSStructuredDocumentRegionContainer) {
-		 * CSSStructuredDocumentRegionContainer container =
-		 * (CSSStructuredDocumentRegionContainer)node;
-		 * IStructuredDocumentRegion firstNode =
-		 * container.getFirstStructuredDocumentRegion();
-		 * IStructuredDocumentRegion lastNode =
-		 * container.getLastStructuredDocumentRegion(); if (firstNode != null &&
-		 * lastNode != null) { removeStart = firstNode.getStart(); removeEnd =
-		 * lastNode.getEnd(); } } else if (node instanceof CSSRegionContainer) {
-		 * CSSRegionContainer container = (CSSRegionContainer)node;
-		 * ITextRegion firstRegion = container.getFirstRegion(); ITextRegion
-		 * lastRegion = container.getLastRegion(); if (firstRegion != null &&
-		 * lastRegion != null) { removeStart = firstRegion.getStartOffset();
-		 * removeEnd = lastRegion.getEndOffset(); } } if (0 <= removeStart &&
-		 * 0 <= removeEnd) { removeText(removeStart, removeEnd - removeStart +
-		 * 1); }
-		 */
-	}
-
-	/**
-	 * 
-	 */
-	void childReplaced(CSSNodeImpl parentNode, CSSNodeImpl newChild, CSSNodeImpl oldChild) {
-		if (parentNode == null) {
-			return;
-		}
-
-		if (oldChild != null) {
-			childRemoved(parentNode, oldChild);
-		}
-
-		if (newChild != null) {
-			childInserted(parentNode, newChild);
-		}
-	}
-
-	/**
-	 * 
-	 */
-	private StructuredDocumentEvent defaultInserted(CSSNodeImpl parentNode, CSSNodeImpl node) {
-		int insertPos = -1;
-		ICSSNode sibling;
-		String preSpace = "", postSpace = "";//$NON-NLS-2$//$NON-NLS-1$
-		int length = 0;
-
-		if (insertPos < 0) {
-			if ((sibling = node.getPreviousSibling()) != null) {
-				// after previous child
-				insertPos = getTextEnd(sibling);
-			}
-		}
-
-		if (insertPos < 0) {
-			if ((sibling = node.getNextSibling()) != null) {
-				// before next child
-				insertPos = getTextStart(sibling);
-			}
-		}
-
-		if (insertPos < 0) {
-			// position of parent
-			insertPos = getChildInsertPos(parentNode);
-		}
-
-		if (insertPos < 0) {
-			// firsttime
-			insertPos = 0;
-		}
-
-		// format previous spaces
-		length = nearestSpaceLengthBefore(parentNode, insertPos);
-		insertPos -= length;
-		preSpace = getSpaceBefore(parentNode, node, null);
-		// format post spaces
-		length += nearestSpaceLengthAfter(parentNode, insertPos + length);
-		postSpace = getSpaceBefore(parentNode, node.getNextSibling(), null);
-
-		// set text
-		String text = preSpace + node.generateSource().trim() + postSpace;
-		return insertText(insertPos, length, text);
-	}
-
-	/**
-	 * @return int
-	 * @param node
-	 *            org.eclipse.wst.css.core.model.CSSNodeImpl
-	 */
-	private int getChildInsertPos(CSSNodeImpl node) {
-		CSSSourceGenerator formatter = CSSSourceFormatterFactory.getInstance().getSourceFormatter(node);
-		if (formatter != null)
-			return formatter.getChildInsertPos(node);
-		else
-			return node.getEndOffset();
-	}
-
-	/**
-	 * @return org.eclipse.wst.css.core.model.CSSNodeImpl
-	 * @param parentNode
-	 *            org.eclipse.wst.css.core.model.CSSNodeImpl
-	 * @param node
-	 *            org.eclipse.wst.css.core.model.CSSNodeImpl
-	 */
-	private CSSNodeImpl getOldNext(CSSNodeImpl parentNode, CSSNodeImpl node) {
-		CSSNodeImpl child = (CSSNodeImpl) parentNode.getLastChild();
-		CSSNodeImpl ret = null;
-		while (child != null) {
-			if (node.getEndOffset() < child.getEndOffset())
-				ret = child;
-			else
-				break;
-			child = (CSSNodeImpl) child.getPreviousSibling();
-		}
-		return ret;
-	}
-
-	/**
-	 * @return org.eclipse.wst.css.core.model.CSSNodeImpl
-	 * @param parentNode
-	 *            org.eclipse.wst.css.core.model.CSSNodeImpl
-	 * @param node
-	 *            org.eclipse.wst.css.core.model.CSSNodeImpl
-	 */
-	private CSSNodeImpl getOldPrevious(CSSNodeImpl parentNode, CSSNodeImpl node) {
-		CSSNodeImpl child = (CSSNodeImpl) parentNode.getFirstChild();
-		CSSNodeImpl ret = null;
-		while (child != null) {
-			if (child.getStartOffset() < node.getStartOffset())
-				ret = child;
-			else
-				break;
-			child = (CSSNodeImpl) child.getNextSibling();
-		}
-		return ret;
-	}
-
-	/**
-	 * @return java.lang.String
-	 * @param parentNode
-	 *            org.eclipse.wst.css.core.model.CSSNodeImpl
-	 * @param node
-	 *            org.eclipse.wst.css.core.model.CSSNodeImpl
-	 */
-	private String getSpaceBefore(ICSSNode parentNode, ICSSNode node, ICSSNode toRemove) {
-		CSSSourceGenerator formatter = CSSSourceFormatterFactory.getInstance().getSourceFormatter((INodeNotifier) parentNode);
-
-		if (formatter != null) {
-			org.eclipse.jface.text.IRegion exceptFor = null;
-			if (toRemove != null) {
-				CSSNodeImpl remove = (CSSNodeImpl) toRemove;
-				exceptFor = new org.eclipse.jface.text.Region(remove.getStartOffset(), remove.getEndOffset() - remove.getStartOffset());
-			}
-			return formatter.formatBefore(parentNode, node, exceptFor).toString();
-		}
-		else
-			return "";//$NON-NLS-1$
-	}
-
-	/**
-	 * 
-	 */
-	private int getTextEnd(ICSSNode node) {
-		int end = -1;
-		if (node != null) {
-			if (node instanceof CSSStructuredDocumentRegionContainer) {
-				end = ((CSSStructuredDocumentRegionContainer) node).getEndOffset();
-			}
-			else if (node instanceof CSSRegionContainer) {
-				end = ((CSSRegionContainer) node).getEndOffset();
-			}
-		}
-		return end;
-	}
-
-	/**
-	 * 
-	 */
-	private int getTextStart(ICSSNode node) {
-		int start = -1;
-		if (node != null) {
-			if (node instanceof CSSStructuredDocumentRegionContainer) {
-				start = ((CSSStructuredDocumentRegionContainer) node).getStartOffset();
-			}
-			else if (node instanceof CSSRegionContainer) {
-				start = ((CSSRegionContainer) node).getStartOffset();
-			}
-		}
-		return start;
-	}
-
-	/**
-	 * 
-	 */
-	private StructuredDocumentEvent insertText(int start, int oldLength, String text) {
-		StructuredDocumentEvent result = null;
-		BasicStructuredDocument structuredDocument = (BasicStructuredDocument) fModel.getStructuredDocument();
-		if (structuredDocument != null) {
-			if (text != null && 0 < oldLength && start + oldLength <= structuredDocument.getLength()) {
-				// minimize text change
-				String delText = structuredDocument.get(start, oldLength);
-				int newLength = text.length();
-				int shorterLen = Math.min(oldLength, newLength);
-				int stMatchLen;
-				for (stMatchLen = 0; stMatchLen < shorterLen && text.charAt(stMatchLen) == delText.charAt(stMatchLen); stMatchLen++) {
-					// 
-				}
-				if (0 < stMatchLen && stMatchLen < shorterLen && text.charAt(stMatchLen - 1) == 0x000d && (text.charAt(stMatchLen) == 0x000a || delText.charAt(stMatchLen) == 0x000a)) {
-					// must not divide 0d->0a sequence
-					stMatchLen--;
-				}
-				if (stMatchLen == shorterLen) {
-					if (oldLength < newLength) { // just insert
-						oldLength = 0;
-						start += stMatchLen;
-						text = text.substring(stMatchLen);
-					}
-					else if (newLength < oldLength) { // just remove
-						oldLength -= stMatchLen;
-						start += stMatchLen;
-						text = null;
-					}
-					else { // nothing to do
-						oldLength = 0;
-						text = null;
-					}
-				}
-				else {
-					int edMatchLen;
-					for (edMatchLen = 0; stMatchLen + edMatchLen < shorterLen && text.charAt(newLength - edMatchLen - 1) == delText.charAt(oldLength - edMatchLen - 1); edMatchLen++) {
-						//
-					}
-					if (0 < edMatchLen && text.charAt(newLength - edMatchLen) == 0x000a && ((edMatchLen < newLength && text.charAt(newLength - edMatchLen - 1) == 0x000d) || (edMatchLen < oldLength && delText.charAt(oldLength - edMatchLen - 1) == 0x000d))) {
-						// must not divide 0d->0a sequence
-						edMatchLen--;
-					}
-					oldLength -= stMatchLen + edMatchLen;
-					start += stMatchLen;
-					if (stMatchLen + edMatchLen < newLength) {
-						text = text.substring(stMatchLen, newLength - edMatchLen);
-					}
-					else {
-						text = null;
-					}
-				}
-			}
-			if (0 < oldLength || text != null) {
-				// String delText = structuredDocument.get(start, oldLength);
-				result = structuredDocument.replaceText(fModel, start, oldLength, text);
-			}
-		}
-		return result;
-	}
-
-	/**
-	 * @return int
-	 * @param insertPos
-	 *            int
-	 */
-	private int nearestSpaceLengthAfter(CSSNodeImpl node, int insertPos) {
-		CSSSourceGenerator formatter = CSSSourceFormatterFactory.getInstance().getSourceFormatter(node);
-		if (formatter != null) {
-			return formatter.getLengthToReformatAfter(node, insertPos);
-		}
-		else
-			return 0;
-	}
-
-	/**
-	 * @return int
-	 * @param insertPos
-	 *            int
-	 */
-	private int nearestSpaceLengthBefore(CSSNodeImpl node, int insertPos) {
-		CSSSourceGenerator formatter = CSSSourceFormatterFactory.getInstance().getSourceFormatter(node);
-		if (formatter != null) {
-			return formatter.getLengthToReformatBefore(node, insertPos);
-		}
-		else
-			return 0;
-	}
-
-	/**
-	 * 
-	 */
-	private StructuredDocumentEvent removeText(int start, int length) {
-		StructuredDocumentEvent result = null;
-		IStructuredDocument structuredDocument = fModel.getStructuredDocument();
-		if (structuredDocument != null) {
-			result = structuredDocument.replaceText(fModel, start, length, new String(""));//$NON-NLS-1$
-		}
-		return result;
-	}
-
-	/**
-	 * 
-	 */
-	void setParser(CSSModelParser parser) {
-		fParser = parser;
-	}
-
-	/**
-	 * 
-	 */
-	void valueChanged(CSSNodeImpl node, String oldValue) {
-		if (!(node instanceof CSSRegionContainer)) {
-			CSSUtil.debugOut("Too Bad.." + //$NON-NLS-1$
-						((node == null) ? "null" : node.getClass().toString()));//$NON-NLS-1$
-			return;
-		}
-
-		int start = node.getStartOffset();
-
-		if (node.getNodeType() == ICSSNode.ATTR_NODE) {
-			ICSSAttr attr = (ICSSAttr) node;
-			CSSSourceGenerator formatter = CSSSourceFormatterFactory.getInstance().getSourceFormatter((INodeNotifier) attr.getOwnerCSSNode());
-			if (formatter != null)
-				start = formatter.getAttrInsertPos(attr.getOwnerCSSNode(), attr.getName());
-		}
-
-		int oldLength = (oldValue == null) ? 0 : oldValue.length();
-		// flash old IStructuredDocumentRegion/ITextRegion
-		if (node instanceof CSSStructuredDocumentRegionContainer) {
-			((CSSStructuredDocumentRegionContainer) node).setFirstStructuredDocumentRegion(null);
-			((CSSStructuredDocumentRegionContainer) node).setLastStructuredDocumentRegion(null);
-		}
-		else if (node instanceof CSSRegionContainer) {
-			((CSSRegionContainer) node).setRangeRegion(null, null, null);
-		}
-		// generate new source
-		String newValue = node.generateSource();
-
-		ICSSNode parent;
-		if (node.getNodeType() == ICSSNode.ATTR_NODE) {
-			parent = ((ICSSAttr) node).getOwnerCSSNode();
-		}
-		else {
-			parent = node.getParentNode();
-		}
-
-		fParser.setupUpdateContext(CSSModelUpdateContext.UPDATE_CHANGE_RCONTAINER, parent, node);
-
-		StructuredDocumentEvent result = insertText(start, oldLength, newValue);
-
-		int nRemains = fParser.cleanupUpdateContext();
-
-		if (0 < nRemains && !(result instanceof NoChangeEvent)) {
-			throw new DOMException(DOMException.INVALID_MODIFICATION_ERR, "");//$NON-NLS-1$		
-		}
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/document/CSSModelUtil.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/document/CSSModelUtil.java
deleted file mode 100644
index 8d4e5d0..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/document/CSSModelUtil.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.core.internal.document;
-
-import java.util.Iterator;
-import java.util.Vector;
-
-import org.eclipse.osgi.util.NLS;
-import org.eclipse.wst.css.core.internal.CSSCoreMessages;
-import org.eclipse.wst.css.core.internal.parserz.CSSRegionContexts;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSAttr;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSNode;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSNodeList;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSRuleContainer;
-import org.eclipse.wst.css.core.internal.util.CSSUtil;
-import org.eclipse.wst.sse.core.internal.provisional.text.IStructuredDocument;
-import org.eclipse.wst.sse.core.internal.provisional.text.IStructuredDocumentRegion;
-import org.eclipse.wst.sse.core.internal.provisional.text.ITextRegion;
-
-/**
- * 
- */
-class CSSModelUtil {
-
-	/**
-	 * 
-	 */
-	static boolean canContainBrace(ICSSNode node) {
-		return (node != null && (node instanceof ICSSRuleContainer || node instanceof CSSRuleDeclContainer)) ? true : false;
-	}
-
-	/**
-	 * @param parent
-	 *            org.eclipse.wst.css.core.model.interfaces.ICSSNode
-	 */
-	static void cleanupContainer(ICSSNode parent) {
-		if (parent == null) {
-			return;
-		}
-		for (ICSSNode child = parent.getFirstChild(); child != null; child = child.getNextSibling()) {
-			cleanupContainer(child);
-		}
-		if (parent instanceof CSSStructuredDocumentRegionContainer) {
-			((CSSStructuredDocumentRegionContainer) parent).setRangeStructuredDocumentRegion(null, null);
-		}
-		else if (parent instanceof CSSRegionContainer) {
-			((CSSRegionContainer) parent).setRangeRegion(null, null, null);
-		}
-	}
-
-	static boolean diagnoseNode(ICSSNode parent, IStructuredDocument structuredDocument) {
-		// check this
-		Vector errors = new Vector();
-		if (parent instanceof CSSStructuredDocumentRegionContainer) {
-			CSSStructuredDocumentRegionContainer node = (CSSStructuredDocumentRegionContainer) parent;
-			String nodeText = CSSUtil.getClassString(node) + ": ";//$NON-NLS-1$
-			IStructuredDocumentRegion flatNode = node.getFirstStructuredDocumentRegion();
-			if (flatNode == null && (!(node instanceof CSSStyleDeclarationImpl || node instanceof CSSStyleSheetImpl) || node.getFirstChild() != null)) {
-				errors.add(NLS.bind(CSSCoreMessages._1concat_ERROR_, (new Object[]{nodeText}))); //$NON-NLS-1$ = "{0}first flat node is null."
-			}
-			else if (flatNode != null) {
-				IStructuredDocumentRegion modelNode = structuredDocument.getRegionAtCharacterOffset(flatNode.getStart());
-				if (flatNode != modelNode) {
-					errors.add(NLS.bind(CSSCoreMessages._2concat_ERROR_, (new Object[]{nodeText}))); //$NON-NLS-1$ = "{0}first flat node is not in model."
-				}
-			}
-			flatNode = node.getLastStructuredDocumentRegion();
-			if (flatNode == null && (!(node instanceof CSSStyleDeclarationImpl || node instanceof CSSStyleSheetImpl) || node.getFirstChild() != null)) {
-				errors.add(NLS.bind(CSSCoreMessages._3concat_ERROR_, (new Object[]{nodeText}))); //$NON-NLS-1$ = "{0}last flat node is null."
-			}
-			else if (flatNode != null) {
-				IStructuredDocumentRegion modelNode = structuredDocument.getRegionAtCharacterOffset(flatNode.getStart());
-				if (flatNode != modelNode) {
-					errors.add(NLS.bind(CSSCoreMessages._4concat_ERROR_, (new Object[]{nodeText}))); //$NON-NLS-1$ = "{0}last flat node is not in model."
-				}
-			}
-		}
-		else if (parent instanceof CSSRegionContainer) {
-			CSSRegionContainer node = (CSSRegionContainer) parent;
-			String nodeText = CSSUtil.getClassString(node) + ": ";//$NON-NLS-1$
-			ITextRegion region = node.getFirstRegion();
-			IStructuredDocumentRegion parentRegion = node.getDocumentRegion();
-			if (region == null && (!(node instanceof MediaListImpl) || node.getFirstChild() != null)) {
-				errors.add(NLS.bind(CSSCoreMessages._25concat_ERROR_, (new Object[]{nodeText}))); //$NON-NLS-1$ = "{0}first region is null."
-			}
-			else if (region != null) {
-				int offset = parentRegion.getStartOffset(region);
-				IStructuredDocumentRegion modelNode = structuredDocument.getRegionAtCharacterOffset(offset);
-				ITextRegion modelRegion = modelNode.getRegionAtCharacterOffset(offset);
-				if (region != modelRegion) {
-					errors.add(NLS.bind(CSSCoreMessages._26concat_ERROR_, (new Object[]{nodeText}))); //$NON-NLS-1$ = "{0}first region is not in model."
-				}
-			}
-			region = node.getLastRegion();
-			if (region == null && (!(node instanceof MediaListImpl) || node.getFirstChild() != null)) {
-				errors.add(NLS.bind(CSSCoreMessages._27concat_ERROR_, (new Object[]{nodeText}))); //$NON-NLS-1$ = "{0}last region is null."
-			}
-			else if (region != null) {
-				int offset = parentRegion.getStartOffset(region);
-				IStructuredDocumentRegion modelNode = structuredDocument.getRegionAtCharacterOffset(offset);
-				ITextRegion modelRegion = modelNode.getRegionAtCharacterOffset(offset);
-				if (region != modelRegion) {
-					errors.add(NLS.bind(CSSCoreMessages._28concat_ERROR_, (new Object[]{nodeText}))); //$NON-NLS-1$ = "{0}last region is not in model."
-				}
-			}
-		}
-
-		ICSSNodeList attrs = parent.getAttributes();
-		int nAttrs = attrs.getLength();
-		for (int i = 0; i < nAttrs; i++) {
-			ICSSAttr attr = (ICSSAttr) attrs.item(i);
-			CSSRegionContainer node = (CSSRegionContainer) attr;
-			String nodeText = CSSUtil.getClassString(node) + "(" + attr.getName() + "): ";//$NON-NLS-2$//$NON-NLS-1$
-			ITextRegion region = node.getFirstRegion();
-			IStructuredDocumentRegion parentRegion = node.getDocumentRegion();
-			if (region == null && 0 < attr.getValue().length()) {
-				errors.add(NLS.bind(CSSCoreMessages._5concat_ERROR_, (new Object[]{nodeText}))); //$NON-NLS-1$ = "{0}first region is null."
-			}
-			else if (region != null) {
-				int offset = parentRegion.getStartOffset(region);
-				IStructuredDocumentRegion modelNode = structuredDocument.getRegionAtCharacterOffset(offset);
-				ITextRegion modelRegion = modelNode.getRegionAtCharacterOffset(offset);
-				if (region != modelRegion) {
-					errors.add(NLS.bind(CSSCoreMessages._6concat_ERROR_, (new Object[]{nodeText}))); //$NON-NLS-1$ = "{0}first region is not in model."
-				}
-			}
-			region = node.getLastRegion();
-			if (region == null && 0 < attr.getValue().length()) {
-				errors.add(NLS.bind(CSSCoreMessages._7concat_ERROR_, (new Object[]{nodeText}))); //$NON-NLS-1$ = "{0}last region is null."
-			}
-			else if (region != null) {
-				int offset = parentRegion.getStartOffset(region);
-				IStructuredDocumentRegion modelNode = structuredDocument.getRegionAtCharacterOffset(offset);
-				ITextRegion modelRegion = modelNode.getRegionAtCharacterOffset(offset);
-				if (region != modelRegion) {
-					errors.add(NLS.bind(CSSCoreMessages._8concat_ERROR_, (new Object[]{nodeText}))); //$NON-NLS-1$ = "{0}last region is not in model."
-				}
-			}
-		}
-
-		if (!errors.isEmpty()) {
-			Iterator i = errors.iterator();
-			while (i.hasNext()) {
-				CSSUtil.debugOut((String) i.next());
-			}
-			return false;
-		}
-		else {
-			return true;
-		}
-	}
-
-	/**
-	 * @return boolean
-	 * @param node
-	 *            org.eclipse.wst.css.core.model.interfaces.ICSSNode
-	 */
-	static boolean diagnoseTree(ICSSNode parent, IStructuredDocument structuredDocument) {
-		if (parent == null) {
-			return false;
-		}
-		// check children
-		for (ICSSNode child = parent.getFirstChild(); child != null; child = child.getNextSibling()) {
-			diagnoseTree(child, structuredDocument);
-		}
-
-		diagnoseNode(parent, structuredDocument);
-
-		return true;
-	}
-
-	/**
-	 * If needed, modify last flat node
-	 */
-	static void expandStructuredDocumentRegionContainer(CSSStructuredDocumentRegionContainer target, IStructuredDocumentRegion flatNode) {
-		if (target == null || flatNode == null) {
-			return;
-		}
-
-		IStructuredDocumentRegion lastNode = target.getLastStructuredDocumentRegion();
-		if (lastNode == flatNode) {
-			return;
-		}
-		if (lastNode == null || lastNode.getStart() < flatNode.getStart()) {
-			target.setLastStructuredDocumentRegion(flatNode);
-		}
-	}
-
-	/*
-	 * 
-	 */
-	static ICSSNode findBraceContainer(ICSSNode node) {
-		for (ICSSNode i = node; i != null; i = i.getParentNode()) {
-			if (CSSModelUtil.canContainBrace(i)) {
-				return i;
-			}
-		}
-		return null;
-	}
-
-	/**
-	 * 
-	 */
-	static int getDepth(ICSSNode node) {
-		int depth = -1;
-		while (node != null) {
-			depth++;
-			node = node.getParentNode();
-		}
-		return depth;
-	}
-
-	/**
-	 * 
-	 */
-	static boolean isBraceClosed(ICSSNode node) {
-		boolean bClosed = true;
-		if (!(node instanceof CSSStructuredDocumentRegionContainer)) {
-			return bClosed;
-		}
-
-		IStructuredDocumentRegion first = ((CSSStructuredDocumentRegionContainer) node).getFirstStructuredDocumentRegion();
-		IStructuredDocumentRegion last = ((CSSStructuredDocumentRegionContainer) node).getLastStructuredDocumentRegion();
-		if (first == null || last == null) {
-			return bClosed;
-		}
-		if (last.getStart() < first.getStart()) {
-			return bClosed;
-		}
-
-		IStructuredDocumentRegion flatNode = first;
-		int nOpen = 0;
-		int nClose = 0;
-		do {
-			String type = CSSUtil.getStructuredDocumentRegionType(flatNode);
-			if (type == CSSRegionContexts.CSS_LBRACE) {
-				nOpen++;
-			}
-			else if (type == CSSRegionContexts.CSS_RBRACE) {
-				nClose++;
-			}
-			flatNode = flatNode.getNext();
-		}
-		while (flatNode != null && flatNode != last);
-
-		if ((nOpen == 0 && nClose == 0) || nClose < nOpen) {
-			bClosed = false;
-		}
-
-		return bClosed;
-	}
-
-	/**
-	 * only for insertion..
-	 */
-	static boolean isInterruption(CSSStructuredDocumentRegionContainer target, IStructuredDocumentRegion flatNode) {
-		if (target == null || flatNode == null) {
-			return false;
-		}
-		int start = flatNode.getStart();
-		IStructuredDocumentRegion firstNode = target.getFirstStructuredDocumentRegion();
-		IStructuredDocumentRegion lastNode = target.getLastStructuredDocumentRegion();
-		if (firstNode != null && firstNode.getStart() < start && lastNode != null && start < lastNode.getStart()) {
-			return true;
-		}
-		return false;
-	}
-
-	/**
-	 * 
-	 */
-	static boolean isParentOf(ICSSNode parent, ICSSNode child) {
-		if (parent == null || child == null) {
-			return false;
-		}
-
-		for (ICSSNode node = child; node != null; node = node.getParentNode()) {
-			if (parent == node) {
-				return true;
-			}
-		}
-
-		return false;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/document/CSSNamedNodeMapImpl.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/document/CSSNamedNodeMapImpl.java
deleted file mode 100644
index 8ad512a..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/document/CSSNamedNodeMapImpl.java
+++ /dev/null
@@ -1,48 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this 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.core.internal.document;
-
-
-
-import java.util.Iterator;
-
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSNamedNodeMap;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSNode;
-
-
-/**
- * 
- */
-public class CSSNamedNodeMapImpl extends CSSNodeListImpl implements ICSSNamedNodeMap {
-
-	/**
-	 * CSSNamedNodeMapImpl constructor comment.
-	 */
-	CSSNamedNodeMapImpl() {
-		super();
-	}
-
-	/**
-	 * @return org.eclipse.wst.css.core.model.interfaces.ICSSNode
-	 * @param name
-	 *            java.lang.String
-	 */
-	public ICSSNode getNamedItem(String name) {
-		Iterator it = nodes.iterator();
-		while (it.hasNext()) {
-			Object obj = it.next();
-			if (obj instanceof CSSAttrImpl && ((CSSAttrImpl) obj).getName().compareToIgnoreCase(name) == 0) {
-				return (ICSSNode) obj;
-			}
-		}
-		return null;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/document/CSSNodeImpl.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/document/CSSNodeImpl.java
deleted file mode 100644
index 8f6f9f7..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/document/CSSNodeImpl.java
+++ /dev/null
@@ -1,453 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this 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.core.internal.document;
-
-
-
-import java.util.Iterator;
-
-import org.eclipse.wst.css.core.internal.formatter.CSSSourceFormatterFactory;
-import org.eclipse.wst.css.core.internal.formatter.CSSSourceGenerator;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSDocument;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSModel;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSNamedNodeMap;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSNode;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSNodeList;
-import org.eclipse.wst.css.core.internal.util.ImportRuleCollector;
-import org.eclipse.wst.sse.core.internal.model.FactoryRegistry;
-import org.eclipse.wst.sse.core.internal.provisional.AbstractNotifier;
-import org.eclipse.wst.sse.core.internal.provisional.IndexedRegion;
-import org.w3c.dom.DOMException;
-
-
-/**
- * 
- */
-abstract class CSSNodeImpl extends AbstractNotifier implements ICSSNode, IndexedRegion {
-
-	private CSSDocumentImpl fOwnerDocument = null;
-	private CSSNodeImpl fParentNode = null;
-	private CSSNodeImpl fNextSibling = null;
-	private CSSNodeImpl fPreviousSibling = null;
-	private CSSNodeImpl fFirstChild = null;
-	private CSSNodeImpl fLastChild = null;
-	protected CSSNamedNodeMapImpl fAttrs = null;
-
-	/**
-	 * CSSNodeImpl constructor comment.
-	 */
-	CSSNodeImpl() {
-		super();
-	}
-
-	CSSNodeImpl(CSSNodeImpl that) {
-		if (that != null) {
-			this.fOwnerDocument = that.fOwnerDocument;
-			if (that.fAttrs != null) {
-				int nAttrs = that.fAttrs.getLength();
-				for (int i = 0; i < nAttrs; i++) {
-					CSSAttrImpl attr = (CSSAttrImpl) that.fAttrs.item(i);
-					setAttribute(attr.getName(), attr.getValue());
-				}
-			}
-		}
-	}
-
-	protected CSSNodeImpl appendChild(CSSNodeImpl newChild) throws org.w3c.dom.DOMException {
-		return insertBefore(newChild, null);
-	}
-
-	void cloneChildNodes(ICSSNode newParent, boolean deep) {
-		if (newParent == null || newParent == this)
-			return;
-
-		CSSNodeImpl container = (CSSNodeImpl) newParent;
-		container.removeChildNodes();
-
-		for (ICSSNode child = getFirstChild(); child != null; child = child.getNextSibling()) {
-			CSSNodeImpl cloned = (CSSNodeImpl) child.cloneNode(deep);
-			if (cloned != null)
-				container.appendChild(cloned);
-		}
-	}
-
-	/**
-	 * @return boolean
-	 * @param offset
-	 *            int
-	 */
-	public boolean contains(int offset) {
-		return (getStartOffset() <= offset && offset < getEndOffset());
-	}
-
-	/**
-	 * @return java.lang.String
-	 */
-	String generateSource() {
-		CSSSourceGenerator formatter = CSSSourceFormatterFactory.getInstance().getSourceFormatter(this);
-		return formatter.format(this).toString();
-	}
-
-	/**
-	 * @return java.lang.String
-	 * @param name
-	 *            java.lang.String
-	 */
-	String getAttribute(String name) {
-		CSSAttrImpl attr = getAttributeNode(name);
-		if (attr != null)
-			return attr.getValue();
-		return null;
-	}
-
-	protected CSSAttrImpl getAttributeNode(String name) {
-		if (fAttrs == null)
-			return null;
-
-		int nAttrs = fAttrs.getLength();
-		for (int i = 0; i < nAttrs; i++) {
-			CSSAttrImpl attr = (CSSAttrImpl) fAttrs.item(i);
-			if (attr.matchName(name))
-				return attr;
-		}
-		return null;
-	}
-
-	/**
-	 * @return org.eclipse.wst.css.core.model.interfaces.ICSSNamedNodeMap
-	 */
-	public ICSSNamedNodeMap getAttributes() {
-		if (fAttrs == null)
-			fAttrs = new CSSNamedNodeMapImpl();
-		return fAttrs;
-	}
-
-	public ICSSNodeList getChildNodes() {
-		CSSNodeListImpl list = new CSSNodeListImpl();
-		for (ICSSNode node = getFirstChild(); node != null; node = node.getNextSibling()) {
-			list.appendNode(node);
-		}
-		return list;
-	}
-
-	ICSSNode getCommonAncestor(ICSSNode node) {
-		if (node == null)
-			return null;
-
-		for (ICSSNode na = node; na != null; na = na.getParentNode()) {
-			for (ICSSNode ta = this; ta != null; ta = ta.getParentNode()) {
-				if (ta == na)
-					return ta;
-			}
-		}
-
-		return null; // not found
-	}
-
-	CSSDocumentImpl getContainerDocument() {
-		for (ICSSNode node = this; node != null; node = node.getParentNode()) {
-			if (node instanceof CSSDocumentImpl) {
-				CSSDocumentImpl doc = (CSSDocumentImpl) node;
-				if (doc.isDocument())
-					return doc;
-			}
-		}
-		return null;
-	}
-
-	CSSNodeImpl getContainerNode(int offset) {
-		if (!contains(offset))
-			return null;
-
-		for (ICSSNode child = getFirstChild(); child != null; child = child.getNextSibling()) {
-			ICSSNode found = ((CSSNodeImpl) child).getContainerNode(offset);
-			if (found != null)
-				return (CSSNodeImpl) found;
-		}
-
-		return this;
-	}
-
-	/**
-	 */
-	public FactoryRegistry getFactoryRegistry() {
-		ICSSModel model = getOwnerDocument().getModel();
-		if (model != null) {
-			FactoryRegistry reg = model.getFactoryRegistry();
-			if (reg != null)
-				return reg;
-		}
-		return null;
-	}
-
-	public ICSSNode getFirstChild() {
-		return this.fFirstChild;
-	}
-
-	public ICSSNode getLastChild() {
-		return this.fLastChild;
-	}
-
-	public ICSSNode getNextSibling() {
-		return this.fNextSibling;
-	}
-
-	ICSSNode getNodeAt(int offset) {
-		// the same as getContainerNode()
-		return getContainerNode(offset);
-	}
-
-	public ICSSDocument getOwnerDocument() {
-		return this.fOwnerDocument;
-	}
-
-	public ICSSNode getParentNode() {
-		return this.fParentNode;
-	}
-
-	public ICSSNode getPreviousSibling() {
-		return this.fPreviousSibling;
-	}
-
-	ICSSNode getRootNode() {
-		CSSNodeImpl parent = (CSSNodeImpl) getParentNode();
-		if (parent == null)
-			return this;
-		return parent.getRootNode();
-	}
-
-	/**
-	 * @return boolean
-	 */
-	public boolean hasChildNodes() {
-		return (this.fFirstChild != null);
-	}
-
-	/**
-	 * @return boolean
-	 */
-	public boolean hasProperties() {
-		return false;
-	}
-
-	protected CSSNodeImpl insertBefore(CSSNodeImpl newChild, CSSNodeImpl refChild) throws org.w3c.dom.DOMException {
-		if (newChild == null)
-			return null;
-
-		CSSNodeImpl child = newChild;
-		CSSNodeImpl next = refChild;
-		CSSNodeImpl prev = null;
-		if (next == null) {
-			prev = this.fLastChild;
-			this.fLastChild = child;
-		}
-		else {
-			prev = (CSSNodeImpl) next.getPreviousSibling();
-			next.setPreviousSibling(child);
-		}
-
-		if (prev == null)
-			this.fFirstChild = child;
-		else
-			prev.setNextSibling(child);
-		child.setPreviousSibling(prev);
-		child.setNextSibling(next);
-		child.setParentNode(this);
-
-		notifyChildReplaced(child, null);
-
-		return newChild;
-	}
-
-	protected void notifyAttrReplaced(CSSNodeImpl newAttr, CSSNodeImpl oldAttr) {
-		// for model
-		ICSSDocument doc = getContainerDocument();
-		if (doc == null)
-			return;
-		CSSModelImpl model = (CSSModelImpl) doc.getModel();
-		if (model == null)
-			return;
-		model.attrReplaced(this, newAttr, oldAttr);
-
-		// for adapters
-		int type = CHANGE;
-		if (newAttr == null)
-			type = REMOVE;
-		else if (oldAttr == null)
-			type = ADD;
-		notify(type, oldAttr, oldAttr, newAttr, getStartOffset());
-	}
-
-	protected void notifyChildReplaced(CSSNodeImpl newChild, CSSNodeImpl oldChild) {
-		// for model
-		ICSSDocument doc = getContainerDocument();
-		if (doc == null)
-			return;
-		CSSModelImpl model = (CSSModelImpl) doc.getModel();
-		if (model == null)
-			return;
-		model.childReplaced(this, newChild, oldChild);
-
-		// for adapters
-		int type = CHANGE;
-		if (newChild == null)
-			type = REMOVE;
-		else if (oldChild == null)
-			type = ADD;
-		notify(type, oldChild, oldChild, newChild, getStartOffset());
-	}
-
-	void removeAttributeNode(CSSNodeImpl attr) {
-		// find
-		int nAttrs = fAttrs.getLength();
-		for (int i = 0; i < nAttrs; i++) {
-			if (fAttrs.item(i) == attr) {
-				fAttrs.removeNode(i);
-				notifyAttrReplaced(null, attr);
-				return;
-			}
-		}
-	}
-
-	protected CSSNodeImpl removeChild(CSSNodeImpl oldChild) throws org.w3c.dom.DOMException {
-		if (oldChild == null)
-			return null;
-		if (oldChild.getParentNode() != this)
-			return null;
-
-		// close import rules
-		ImportRuleCollector trav = new ImportRuleCollector();
-		trav.apply(oldChild);
-		Iterator it = trav.getRules().iterator();
-		while (it.hasNext()) {
-			((CSSImportRuleImpl) it.next()).closeStyleSheet();
-		}
-
-		CSSNodeImpl child = oldChild;
-		CSSNodeImpl prev = (CSSNodeImpl) child.getPreviousSibling();
-		CSSNodeImpl next = (CSSNodeImpl) child.getNextSibling();
-
-		if (prev == null)
-			this.fFirstChild = next;
-		else
-			prev.setNextSibling(next);
-
-		if (next == null)
-			this.fLastChild = prev;
-		else
-			next.setPreviousSibling(prev);
-
-		child.setPreviousSibling(null);
-		child.setNextSibling(null);
-		child.setParentNode(null);
-
-		notifyChildReplaced(null, child);
-
-		return child;
-	}
-
-	/**
-	 * 
-	 */
-	void removeChildNodes() {
-		ICSSNode nextChild = null;
-		for (ICSSNode child = getFirstChild(); child != null; child = nextChild) {
-			nextChild = child.getNextSibling();
-			removeChild((CSSNodeImpl) child);
-		}
-	}
-
-	protected CSSNodeImpl replaceChild(CSSNodeImpl newChild, CSSNodeImpl oldChild) throws org.w3c.dom.DOMException {
-		if (oldChild == null)
-			return newChild;
-		if (newChild != null)
-			insertBefore(newChild, oldChild);
-		return removeChild(oldChild);
-	}
-
-	/**
-	 * @param name
-	 *            java.lang.String
-	 * @param value
-	 *            java.lang.String
-	 */
-	void setAttribute(String name, String value) {
-		if (name == null)
-			return;
-
-		CSSAttrImpl attr = getAttributeNode(name);
-		if (attr != null) {
-			String oldValue = attr.getValue();
-			if (value != null && value.equals(oldValue))
-				return;
-			if (value == null) {
-				if (oldValue != null) {
-					removeAttributeNode(attr);
-				}
-				return;
-			}
-		}
-		else {
-			if (value == null)
-				return;
-			if (fAttrs == null)
-				fAttrs = new CSSNamedNodeMapImpl();
-			CSSDocumentImpl doc = (CSSDocumentImpl) getOwnerDocument();
-			if (doc == null)
-				return;
-			attr = (CSSAttrImpl) doc.createCSSAttr(name);
-			attr.setOwnerCSSNode(this);
-			fAttrs.appendNode(attr);
-			notifyAttrReplaced(attr, null);
-		}
-		attr.setValue(value);
-	}
-
-	/**
-	 * @param cssText
-	 *            java.lang.String
-	 */
-	public void setCssText(String cssText) {
-		// TODO : call flat model parser and replace myself with new three!!
-		throw new DOMException(DOMException.INVALID_MODIFICATION_ERR, "");//$NON-NLS-1$
-	}
-
-	private void setNextSibling(ICSSNode nextSibling) {
-		this.fNextSibling = (CSSNodeImpl) nextSibling;
-	}
-
-	void setOwnerDocument(ICSSDocument ownerDocument) {
-		this.fOwnerDocument = (CSSDocumentImpl) ownerDocument;
-	}
-
-	private void setParentNode(ICSSNode parentNode) {
-		this.fParentNode = (CSSNodeImpl) parentNode;
-	}
-
-	private void setPreviousSibling(ICSSNode previousSibling) {
-		this.fPreviousSibling = (CSSNodeImpl) previousSibling;
-	}
-
-	public int getLength() {
-		int result = -1;
-		int start = getStartOffset();
-		if (start >= 0) {
-			int end = getEndOffset();
-			if (end >= 0) {
-				result = end - start;
-				if (result < -1) {
-					result = -1;
-				}
-			}
-		}
-		return result;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/document/CSSNodeListImpl.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/document/CSSNodeListImpl.java
deleted file mode 100644
index dd1c410..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/document/CSSNodeListImpl.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.css.core.internal.document;
-
-
-
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSNode;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSNodeList;
-
-class CSSNodeListImpl extends AbstractCSSNodeList implements ICSSNodeList {
-
-	CSSNodeListImpl() {
-		super();
-	}
-
-	public ICSSNode item(int index) {
-		return itemImpl(index);
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/document/CSSPageRuleImpl.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/document/CSSPageRuleImpl.java
deleted file mode 100644
index c23190c..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/document/CSSPageRuleImpl.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.wst.css.core.internal.document;
-
-
-
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSNode;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSPageRule;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSSelectorList;
-
-
-/**
- * 
- */
-class CSSPageRuleImpl extends CSSRuleDeclContainer implements ICSSPageRule {
-
-	ICSSSelectorList fSelectorList = new CSSSelectorListImpl(null);
-
-	/**
-	 * 
-	 */
-	CSSPageRuleImpl() {
-		super();
-	}
-
-	CSSPageRuleImpl(CSSPageRuleImpl that) {
-		super(that);
-	}
-
-	public ICSSNode cloneNode(boolean deep) {
-		CSSPageRuleImpl cloned = new CSSPageRuleImpl(this);
-
-		if (deep)
-			cloneChildNodes(cloned, deep);
-
-		return cloned;
-	}
-
-	/**
-	 * @return java.lang.String
-	 */
-	String extractPreString() {
-		StringBuffer preStr = new StringBuffer("@page ");//$NON-NLS-1$
-		preStr.append(getSelectorText());
-
-		return preStr.toString();
-	}
-
-	/**
-	 * @return short
-	 */
-	public short getNodeType() {
-		return PAGERULE_NODE;
-	}
-
-	public ICSSSelectorList getSelectors() {
-		return fSelectorList;
-	}
-
-	/**
-	 * The parsable textual representation of the page selector for the rule.
-	 * 
-	 * @exception org.w3c.dom.DOMException
-	 *                SYNTAX_ERR: Raised if the specified CSS string value has
-	 *                a syntax error and is unparsable. <br>
-	 *                NO_MODIFICATION_ALLOWED_ERR: Raised if this rule is
-	 *                readonly.
-	 */
-	public String getSelectorText() {
-		return getAttribute(SELECTOR);
-	}
-
-	/**
-	 * The type of the rule, as defined above. The expectation is that
-	 * binding-specific casting methods can be used to cast down from an
-	 * instance of the <code>CSSRule</code> interface to the specific
-	 * derived interface implied by the <code>type</code>.
-	 */
-	public short getType() {
-		return PAGE_RULE;
-	}
-
-	/**
-	 * 
-	 */
-	public void setSelectorText(String selectorText) throws org.w3c.dom.DOMException {
-		setAttribute(SELECTOR, selectorText);
-		fSelectorList = new CSSSelectorListImpl(selectorText);
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/document/CSSPrimitiveContainer.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/document/CSSPrimitiveContainer.java
deleted file mode 100644
index af89f7f..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/document/CSSPrimitiveContainer.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.wst.css.core.internal.document;
-
-
-
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSDocument;
-
-/**
- * 
- */
-abstract class CSSPrimitiveContainer extends CSSPrimitiveValueImpl {
-
-	CSSPrimitiveContainer(CSSPrimitiveContainer that) {
-		super(that);
-	}
-
-	CSSPrimitiveContainer(short primitiveType) {
-		super(primitiveType);
-	}
-
-	protected abstract void initPrimitives();
-
-	void setOwnerDocument(ICSSDocument ownerDocument) {
-		super.setOwnerDocument(ownerDocument);
-
-		initPrimitives();
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/document/CSSPrimitiveValueImpl.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/document/CSSPrimitiveValueImpl.java
deleted file mode 100644
index 1c2ca80..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/document/CSSPrimitiveValueImpl.java
+++ /dev/null
@@ -1,362 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this 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.core.internal.document;
-
-
-
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSDocument;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSNode;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSPrimitiveValue;
-import org.w3c.dom.DOMException;
-import org.w3c.dom.css.Counter;
-import org.w3c.dom.css.RGBColor;
-import org.w3c.dom.css.Rect;
-
-
-/**
- * 
- */
-class CSSPrimitiveValueImpl extends CSSRegionContainer implements ICSSPrimitiveValue {
-
-	protected short fPrimitiveType = CSS_UNKNOWN;
-	private float fFloatValue = 0.0f;
-	private String fStringValue = null;
-
-	CSSPrimitiveValueImpl(CSSPrimitiveValueImpl that) {
-		super(that);
-
-		this.fPrimitiveType = that.fPrimitiveType;
-		this.fFloatValue = that.fFloatValue;
-		this.fStringValue = that.fStringValue;
-	}
-
-	CSSPrimitiveValueImpl(short primitiveType) {
-		super();
-		fPrimitiveType = primitiveType;
-	}
-
-	public ICSSNode cloneNode(boolean deep) {
-		CSSPrimitiveValueImpl cloned = new CSSPrimitiveValueImpl(this);
-
-		return cloned;
-	}
-
-	/**
-	 * This method is used to get the Counter value. If this CSS value doesn't
-	 * contain a counter value, a <code>DOMException</code> is raised.
-	 * Modification to the corresponding style property can be achieved using
-	 * the <code>Counter</code> interface.
-	 * 
-	 * @return The Counter value.
-	 * @exception DOMException
-	 *                INVALID_ACCESS_ERR: Raised if the CSS value doesn't
-	 *                contain a Counter value (e.g. this is not
-	 *                <code>CSS_COUNTER</code>).
-	 */
-	public Counter getCounterValue() throws DOMException {
-		throw new DOMException(DOMException.INVALID_ACCESS_ERR, "");//$NON-NLS-1$
-	}
-
-	/**
-	 * @return java.lang.String
-	 */
-	public java.lang.String getCSSValueText() {
-		return getCssText();
-	}
-
-	/**
-	 * A code defining the type of the value as defined above.
-	 */
-	public short getCssValueType() {
-		if (getPrimitiveType() == CSS_INHERIT_PRIMITIVE) {
-			return CSS_INHERIT;
-		}
-		else {
-			return CSS_PRIMITIVE_VALUE;
-		}
-	}
-
-	/**
-	 * This method is used to get a float value in a specified unit. If this
-	 * CSS value doesn't contain a float value or can't be converted into the
-	 * specified unit, a <code>DOMException</code> is raised.
-	 * 
-	 * @param unitType
-	 *            A unit code to get the float value. The unit code can only
-	 *            be a float unit type (i.e. <code>CSS_NUMBER</code>,
-	 *            <code>CSS_PERCENTAGE</code>,<code>CSS_EMS</code>,
-	 *            <code>CSS_EXS</code>,<code>CSS_PX</code>,
-	 *            <code>CSS_CM</code>,<code>CSS_MM</code>,
-	 *            <code>CSS_IN</code>,<code>CSS_PT</code>,
-	 *            <code>CSS_PC</code>,<code>CSS_DEG</code>,
-	 *            <code>CSS_RAD</code>,<code>CSS_GRAD</code>,
-	 *            <code>CSS_MS</code>,<code>CSS_S</code>,
-	 *            <code>CSS_HZ</code>,<code>CSS_KHZ</code>,
-	 *            <code>CSS_DIMENSION</code>).
-	 * @return The float value in the specified unit.
-	 * @exception DOMException
-	 *                INVALID_ACCESS_ERR: Raised if the CSS value doesn't
-	 *                contain a float value or if the float value can't be
-	 *                converted into the specified unit.
-	 */
-	public float getFloatValue(short unitType) throws DOMException {
-		switch (fPrimitiveType) {
-			case CSS_NUMBER :
-			case CSS_PERCENTAGE :
-			case CSS_EMS :
-			case CSS_EXS :
-			case CSS_PX :
-			case CSS_CM :
-			case CSS_MM :
-			case CSS_IN :
-			case CSS_PT :
-			case CSS_PC :
-			case CSS_DEG :
-			case CSS_RAD :
-			case CSS_GRAD :
-			case CSS_MS :
-			case CSS_S :
-			case CSS_HZ :
-			case CSS_KHZ :
-			case CSS_DIMENSION :
-			case CSS_INTEGER :
-			case CSS_HASH :
-				return fFloatValue;
-			default :
-				throw new DOMException(DOMException.INVALID_ACCESS_ERR, "");//$NON-NLS-1$
-		}
-	}
-
-	/**
-	 * Insert the method's description here. Creation date: (2001/01/17
-	 * 12:12:18)
-	 * 
-	 * @return short
-	 */
-	public short getNodeType() {
-		return PRIMITIVEVALUE_NODE;
-	}
-
-	/**
-	 * The type of the value as defined by the constants specified above.
-	 */
-	public short getPrimitiveType() {
-		return fPrimitiveType;
-	}
-
-	/**
-	 * This method is used to get the Rect value. If this CSS value doesn't
-	 * contain a rect value, a <code>DOMException</code> is raised.
-	 * Modification to the corresponding style property can be achieved using
-	 * the <code>Rect</code> interface.
-	 * 
-	 * @return The Rect value.
-	 * @exception DOMException
-	 *                INVALID_ACCESS_ERR: Raised if the CSS value doesn't
-	 *                contain a Rect value. (e.g. this is not
-	 *                <code>CSS_RECT</code>).
-	 */
-	public Rect getRectValue() throws DOMException {
-		throw new DOMException(DOMException.INVALID_ACCESS_ERR, "");//$NON-NLS-1$
-	}
-
-	/**
-	 * This method is used to get the RGB color. If this CSS value doesn't
-	 * contain a RGB color value, a <code>DOMException</code> is raised.
-	 * Modification to the corresponding style property can be achieved using
-	 * the <code>RGBColor</code> interface.
-	 * 
-	 * @return the RGB color value.
-	 * @exception DOMException
-	 *                INVALID_ACCESS_ERR: Raised if the attached property
-	 *                can't return a RGB color value (e.g. this is not
-	 *                <code>CSS_RGBCOLOR</code>).
-	 */
-	public RGBColor getRGBColorValue() throws DOMException {
-		throw new DOMException(DOMException.INVALID_ACCESS_ERR, "");//$NON-NLS-1$
-	}
-
-	/**
-	 * This method is used to get the string value. If the CSS value doesn't
-	 * contain a string value, a <code>DOMException</code> is raised. Some
-	 * properties (like 'font-family' or 'voice-family') convert a whitespace
-	 * separated list of idents to a string.
-	 * 
-	 * @return The string value in the current unit. The current
-	 *         <code>primitiveType</code> can only be a string unit type
-	 *         (i.e. <code>CSS_STRING</code>,<code>CSS_URI</code>,
-	 *         <code>CSS_IDENT</code> and <code>CSS_ATTR</code>).
-	 * @exception DOMException
-	 *                INVALID_ACCESS_ERR: Raised if the CSS value doesn't
-	 *                contain a string value.
-	 */
-	public String getStringValue() throws DOMException {
-		switch (fPrimitiveType) {
-			case CSS_STRING :
-			case CSS_URI :
-			case CSS_IDENT :
-			case CSS_ATTR :
-			case CSS_URANGE :
-			case CSS_FORMAT :
-			case CSS_LOCAL :
-			case CSS_HASH :
-			case CSS_COMMA :
-			case CSS_SLASH :
-			case CSS_INHERIT_PRIMITIVE :
-				return fStringValue;
-			default :
-				throw new DOMException(DOMException.INVALID_ACCESS_ERR, "");//$NON-NLS-1$
-		}
-	}
-
-	/**
-	 * 
-	 */
-	protected void notifyValueChanged(String oldValue) {
-		// for model
-		ICSSDocument doc = getContainerDocument();
-		if (doc == null)
-			return;
-		CSSModelImpl model = (CSSModelImpl) doc.getModel();
-		if (model == null)
-			return;
-		model.valueChanged(this, oldValue);
-
-		// for adapters
-		notify(CHANGE, new Short(fPrimitiveType), null, null, getStartOffset());
-	}
-
-	/**
-	 * A method to set the float value with a specified unit. If the property
-	 * attached with this value can not accept the specified unit or the float
-	 * value, the value will be unchanged and a <code>DOMException</code>
-	 * will be raised.
-	 * 
-	 * @param unitType
-	 *            A unit code as defined above. The unit code can only be a
-	 *            float unit type (i.e. <code>CSS_NUMBER</code>,
-	 *            <code>CSS_PERCENTAGE</code>,<code>CSS_EMS</code>,
-	 *            <code>CSS_EXS</code>,<code>CSS_PX</code>,
-	 *            <code>CSS_CM</code>,<code>CSS_MM</code>,
-	 *            <code>CSS_IN</code>,<code>CSS_PT</code>,
-	 *            <code>CSS_PC</code>,<code>CSS_DEG</code>,
-	 *            <code>CSS_RAD</code>,<code>CSS_GRAD</code>,
-	 *            <code>CSS_MS</code>,<code>CSS_S</code>,
-	 *            <code>CSS_HZ</code>,<code>CSS_KHZ</code>,
-	 *            <code>CSS_DIMENSION</code>).
-	 * @param floatValue
-	 *            The new float value.
-	 * @exception DOMException
-	 *                INVALID_ACCESS_ERR: Raised if the attached property
-	 *                doesn't support the float value or the unit type. <br>
-	 *                NO_MODIFICATION_ALLOWED_ERR: Raised if this property is
-	 *                readonly.
-	 */
-	public void setFloatValue(short unitType, float floatValue) throws DOMException {
-		switch (unitType) {
-			case CSS_NUMBER :
-			case CSS_PERCENTAGE :
-			case CSS_EMS :
-			case CSS_EXS :
-			case CSS_PX :
-			case CSS_CM :
-			case CSS_MM :
-			case CSS_IN :
-			case CSS_PT :
-			case CSS_PC :
-			case CSS_DEG :
-			case CSS_RAD :
-			case CSS_GRAD :
-			case CSS_MS :
-			case CSS_S :
-			case CSS_HZ :
-			case CSS_KHZ :
-			case CSS_DIMENSION :
-			case CSS_INTEGER :
-				String oldValue = getCSSValueText();
-				fPrimitiveType = unitType;
-				fFloatValue = floatValue;
-				notifyValueChanged(oldValue);
-				break;
-			default :
-				throw new DOMException(DOMException.INVALID_ACCESS_ERR, "");//$NON-NLS-1$
-		}
-	}
-
-	/**
-	 * A method to set the string value with the specified unit. If the
-	 * property attached to this value can't accept the specified unit or the
-	 * string value, the value will be unchanged and a
-	 * <code>DOMException</code> will be raised.
-	 * 
-	 * @param stringType
-	 *            A string code as defined above. The string code can only be
-	 *            a string unit type (i.e. <code>CSS_STRING</code>,
-	 *            <code>CSS_URI</code>,<code>CSS_IDENT</code>, and
-	 *            <code>CSS_ATTR</code>).
-	 * @param stringValue
-	 *            The new string value.
-	 * @exception DOMException
-	 *                INVALID_ACCESS_ERR: Raised if the CSS value doesn't
-	 *                contain a string value or if the string value can't be
-	 *                converted into the specified unit. <br>
-	 *                NO_MODIFICATION_ALLOWED_ERR: Raised if this property is
-	 *                readonly.
-	 */
-	public void setStringValue(short stringType, String stringValue) throws DOMException {
-		switch (stringType) {
-			case CSS_STRING :
-			case CSS_URI :
-			case CSS_IDENT :
-			case CSS_ATTR :
-			case CSS_URANGE :
-			case CSS_FORMAT :
-			case CSS_LOCAL :
-			case CSS_HASH :
-			case CSS_COMMA :
-			case CSS_SLASH :
-			case CSS_INHERIT_PRIMITIVE :
-				String oldValue = getCSSValueText();
-				fPrimitiveType = stringType;
-				fStringValue = stringValue;
-				notifyValueChanged(oldValue);
-				break;
-			default :
-				throw new DOMException(DOMException.INVALID_ACCESS_ERR, "");//$NON-NLS-1$
-		}
-	}
-
-	/**
-	 * Insert the method's description here. Creation date: (2001/01/24
-	 * 15:06:25)
-	 * 
-	 * @param floatValue
-	 *            float
-	 * @exception org.w3c.dom.DOMException
-	 *                The exception description.
-	 */
-	public void setValue(float floatValue) throws org.w3c.dom.DOMException {
-		setFloatValue(getPrimitiveType(), floatValue);
-	}
-
-	/**
-	 * Insert the method's description here. Creation date: (2001/01/24
-	 * 15:06:25)
-	 * 
-	 * @param stringValue
-	 *            java.lang.String
-	 * @exception org.w3c.dom.DOMException
-	 *                The exception description.
-	 */
-	public void setValue(java.lang.String stringValue) throws org.w3c.dom.DOMException {
-		setStringValue(getPrimitiveType(), stringValue);
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/document/CSSRegionContainer.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/document/CSSRegionContainer.java
deleted file mode 100644
index 34256e7..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/document/CSSRegionContainer.java
+++ /dev/null
@@ -1,203 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this 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.core.internal.document;
-
-
-
-import org.eclipse.wst.sse.core.internal.provisional.text.IStructuredDocumentRegion;
-import org.eclipse.wst.sse.core.internal.provisional.text.ITextRegion;
-import org.eclipse.wst.sse.core.internal.provisional.text.ITextRegionList;
-
-/**
- * 
- */
-abstract class CSSRegionContainer extends CSSNodeImpl {
-
-	private ITextRegion fFirstRegion = null;
-	private ITextRegion fLastRegion = null;
-	private IStructuredDocumentRegion fParentRegion = null;
-
-	/**
-	 * CSSRegionContainer constructor comment.
-	 */
-	CSSRegionContainer() {
-		super();
-	}
-
-	CSSRegionContainer(CSSRegionContainer that) {
-		super(that);
-	}
-
-	/**
-	 * @return java.lang.String
-	 */
-	public String getCssText() {
-		if (fFirstRegion == null || fLastRegion == null)
-			return generateSource();
-
-		ITextRegionList regions = fParentRegion.getRegions();
-		StringBuffer source = new StringBuffer();
-		boolean bIn = false;
-		for (int i = 0; i < regions.size(); i++) {
-			ITextRegion current = regions.get(i);
-			if (bIn) {
-				source.append(fParentRegion.getText(current));
-				if (current == fLastRegion)
-					break;
-			}
-			else {
-				if (current == fFirstRegion) {
-					bIn = true;
-					source.append(fParentRegion.getText(current));
-					if (current == fLastRegion)
-						break;
-				}
-			}
-		}
-
-		return source.toString();
-	}
-
-	/**
-	 * @return int
-	 */
-	public int getEndOffset() {
-		int result = -1;
-		ITextRegion region = getLastRegion();
-		if (!(region == null || fParentRegion == null)) {
-			result = fParentRegion.getEndOffset(region);
-		}
-		return result;
-	}
-
-	IStructuredDocumentRegion getDocumentRegion() {
-		return fParentRegion;
-	}
-
-	ITextRegion getFirstRegion() {
-		return fFirstRegion;
-	}
-
-	ITextRegion getLastRegion() {
-		return fLastRegion;
-	}
-
-	ITextRegion getRegion(int index) {
-		if (getFirstRegion() == null)
-			return null;
-		ITextRegionList regions = fParentRegion.getRegions();
-
-		for (int i = 0; i < regions.size(); i++) {
-			if (regions.get(i) == getFirstRegion()) {
-				if (i + index < regions.size()) {
-					ITextRegion target = regions.get(i + index);
-					if (target.getStart() <= getLastRegion().getStart())
-						return target;
-				}
-				return null;
-			}
-		}
-		return null;
-	}
-
-	/**
-	 * @return int
-	 */
-	int getRegionCount() {
-		validateRange();
-
-		if (getFirstRegion() == null)
-			return 0;
-		if (getFirstRegion() == getLastRegion())
-			return 1;
-		ITextRegionList regions = fParentRegion.getRegions();
-
-		int j = 0;
-		for (int i = 0; i < regions.size(); i++) {
-			ITextRegion current = regions.get(i);
-			if (j != 0 || current == getFirstRegion())
-				j++;
-			if (current == getLastRegion())
-				break;
-		}
-		return j;
-	}
-
-	/**
-	 * @return int
-	 */
-	public int getStartOffset() {
-		int result = -1;
-		ITextRegion region = getFirstRegion();
-		if (!(region == null || fParentRegion == null)) {
-			result = fParentRegion.getStartOffset(region);
-		}
-		return result;
-	}
-
-
-
-	/**
-	 * @deprecated
-	 */
-	ITextRegion setFirstRegion(ITextRegion region) {
-		this.fFirstRegion = region;
-		return region;
-	}
-
-	/**
-	 * @deprecated
-	 */
-	ITextRegion setLastRegion(ITextRegion lastRegion) {
-		this.fLastRegion = lastRegion;
-		return lastRegion;
-	}
-
-	void setRangeRegion(IStructuredDocumentRegion parentRegion, ITextRegion firstRegion, ITextRegion lastRegion) {
-		this.fParentRegion = parentRegion;
-		this.fFirstRegion = firstRegion;
-		this.fLastRegion = lastRegion;
-
-		if (firstRegion == null && lastRegion == null) {
-			setFirstRegion(null);
-			setLastRegion(null);
-		}
-		else { // range validation
-			validateRange();
-		}
-	}
-
-	/**
-	 * @return boolean
-	 */
-	private boolean validateRange() {
-		boolean bModified = false;
-
-		if (this.fFirstRegion != null || this.fLastRegion != null) {
-			if (this.fFirstRegion == null) {
-				this.fFirstRegion = this.fLastRegion;
-				bModified = true;
-			}
-			else if (this.fLastRegion == null) {
-				this.fLastRegion = this.fFirstRegion;
-				bModified = true;
-			}
-			else if (this.fFirstRegion.getStart() > this.fLastRegion.getStart()) {
-				// need to swap first for last
-				ITextRegion reg = fFirstRegion;
-				fFirstRegion = fLastRegion;
-				fLastRegion = reg;
-				bModified = true;
-			}
-		}
-		return bModified;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/document/CSSRuleDeclContainer.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/document/CSSRuleDeclContainer.java
deleted file mode 100644
index ab4914b..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/document/CSSRuleDeclContainer.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.css.core.internal.document;
-
-
-
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSNode;
-import org.w3c.dom.css.CSSStyleDeclaration;
-
-
-/**
- * 
- */
-abstract class CSSRuleDeclContainer extends CSSRuleImpl {
-
-	/**
-	 * CSSRuleDeclContainer constructor comment.
-	 */
-	CSSRuleDeclContainer() {
-		super();
-	}
-
-	/**
-	 * CSSRuleDeclContainer constructor comment.
-	 * 
-	 */
-	CSSRuleDeclContainer(CSSRuleDeclContainer that) {
-		super(that);
-	}
-
-	/**
-	 * @return java.lang.String
-	 */
-	abstract String extractPreString();
-
-	/**
-	 * @return org.w3c.dom.css.CSSStyleDeclaration
-	 */
-	public CSSStyleDeclaration getStyle() {
-
-		for (ICSSNode node = getFirstChild(); node != null; node = node.getNextSibling()) {
-			if (node instanceof CSSStyleDeclaration)
-				return (CSSStyleDeclaration) node;
-		}
-
-		return null;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/document/CSSRuleImpl.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/document/CSSRuleImpl.java
deleted file mode 100644
index fd7d337..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/document/CSSRuleImpl.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.wst.css.core.internal.document;
-
-
-
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSNode;
-import org.w3c.dom.css.CSSRule;
-import org.w3c.dom.css.CSSStyleSheet;
-
-
-/**
- * 
- */
-abstract class CSSRuleImpl extends CSSStructuredDocumentRegionContainer implements CSSRule {
-
-	/**
-	 * 
-	 */
-	CSSRuleImpl() {
-		super();
-	}
-
-	CSSRuleImpl(CSSRuleImpl that) {
-		super(that);
-	}
-
-	/**
-	 * If this rule is contained inside another rule (e.g. a style rule inside
-	 * an
-	 * 
-	 * @media block), this is the containing rule. If this rule is not nested
-	 *        inside any other rules, this returns <code>null</code>.
-	 */
-	public CSSRule getParentRule() {
-		ICSSNode rule = getParentNode();
-
-		// parent rule is used only if parent is media rule
-		if (rule instanceof CSSMediaRuleImpl)
-			return (CSSRule) rule;
-
-		return null;
-	}
-
-	/**
-	 * The style sheet that contains this rule.
-	 */
-	public CSSStyleSheet getParentStyleSheet() {
-		ICSSNode parent = getParentNode();
-		while (parent != null) {
-			if (parent instanceof CSSStyleSheetImpl)
-				return (CSSStyleSheet) parent;
-			parent = parent.getParentNode();
-		}
-		return null;
-	}
-
-	/**
-	 * The type of the rule, as defined above. The expectation is that
-	 * binding-specific casting methods can be used to cast down from an
-	 * instance of the <code>CSSRule</code> interface to the specific
-	 * derived interface implied by the <code>type</code>.
-	 */
-	public abstract short getType();
-
-	/**
-	 * @return boolean
-	 */
-	public boolean hasProperties() {
-		return true;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/document/CSSRuleListImpl.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/document/CSSRuleListImpl.java
deleted file mode 100644
index 51f15a4..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/document/CSSRuleListImpl.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.core.internal.document;
-
-
-
-import org.w3c.dom.css.CSSRule;
-import org.w3c.dom.css.CSSRuleList;
-
-/**
- * 
- */
-public class CSSRuleListImpl extends AbstractCSSNodeList implements CSSRuleList {
-
-	/**
-	 * 
-	 */
-	CSSRuleListImpl() {
-		super();
-	}
-
-	/**
-	 * Used to retrieve a CSS rule by ordinal index. The order in this
-	 * collection represents the order of the rules in the CSS style sheet. If
-	 * index is greater than or equal to the number of rules in the list, this
-	 * returns <code>null</code>.
-	 * 
-	 * @param indexIndex
-	 *            into the collection
-	 * @return The style rule at the <code>index</code> position in the
-	 *         <code>CSSRuleList</code>, or <code>null</code> if that is
-	 *         not a valid index.
-	 */
-	public CSSRule item(int index) {
-		return (CSSRule) itemImpl(index);
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/document/CSSSelector.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/document/CSSSelector.java
deleted file mode 100644
index 031a046..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/document/CSSSelector.java
+++ /dev/null
@@ -1,422 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this 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.core.internal.document;
-
-
-
-import java.util.ArrayList;
-import java.util.Iterator;
-import java.util.List;
-import java.util.StringTokenizer;
-
-import org.eclipse.wst.css.core.internal.provisional.adapters.IStyleSelectorAdapter;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSSelector;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSSelectorCombinator;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSSelectorItem;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSSimpleSelector;
-import org.eclipse.wst.sse.core.internal.provisional.INodeNotifier;
-import org.eclipse.wst.xml.core.internal.provisional.NameValidator;
-import org.w3c.dom.Element;
-import org.w3c.dom.Node;
-
-
-/**
- * 
- */
-class CSSSelector implements ICSSSelector {
-
-	private int fSpecificity = -1;
-	private String fCachedString = null;
-	private List fTokens = null;
-	private List fItems = null;
-	private List fParseErrors = null;
-	private List fNameErrors = null;
-
-	CSSSelector(List tokens) {
-		fTokens = new ArrayList(tokens);
-	}
-
-	/**
-	 * @return boolean
-	 * @param obj
-	 *            java.lang.Object
-	 */
-	public boolean equals(Object obj) {
-		if (this == obj)
-			return true;
-
-		if (obj == null || this.getClass() != obj.getClass())
-			return false;
-
-		CSSSelector foreign = (CSSSelector) obj;
-
-		// if (fSpecificity != foreign.fSpecificity) return false;
-
-		if (getLength() != foreign.getLength())
-			return false;
-
-		for (int i = 0; i < getLength(); i++) {
-			if (!getItem(i).equals(foreign.getItem(i)))
-				return false;
-		}
-
-		return true;
-	}
-
-	public ICSSSelectorItem getItem(int index) {
-		if (fItems == null) {
-			fItems = parseSelector(fTokens);
-		}
-		if (fItems != null && 0 <= index && index < fItems.size()) {
-			return (ICSSSelectorItem) fItems.get(index);
-		}
-		else {
-			return null;
-		}
-	}
-
-	/**
-	 * @return java.util.Iterator
-	 */
-	public Iterator getIterator() {
-		if (fItems == null) {
-			fItems = parseSelector(fTokens);
-		}
-		return (fItems != null) ? fItems.iterator() : null;
-	}
-
-	/**
-	 * @return int
-	 */
-	public int getLength() {
-		if (fItems == null) {
-			fItems = parseSelector(fTokens);
-		}
-		return (fItems != null) ? fItems.size() : 0;
-	}
-
-	/**
-	 * @return org.w3c.dom.Element
-	 */
-	private Element getParentElement(Element element) {
-		try {
-			element = (Element) element.getParentNode();
-		}
-		catch (Exception ex) {
-			// cast error or null pointer ...
-			element = null;
-		}
-		return element;
-	}
-
-	/**
-	 * @return org.w3c.dom.Element
-	 */
-	private Element getPreviousElement(Element element) {
-		Element p = null;
-		for (Node node = element.getPreviousSibling(); node != null; node = node.getPreviousSibling()) {
-			if (node.getNodeType() == Node.ELEMENT_NODE) {
-				p = (Element) node;
-				break;
-			}
-		}
-		return p;
-	}
-
-	/**
-	 * Calculate a selector's specificity a = the number of ID attributes in
-	 * the selector b = the number of other attributes and pseudo-classes in
-	 * the selector c = the number of element names in the selector (ignore
-	 * pseudo-elements) Concatenating the three numbers a-b-c (in a number
-	 * system with a large base) gives the specificity.
-	 * 
-	 * @return int
-	 */
-	public int getSpecificity() {
-		if (fSpecificity < 0) {
-			int nIDs = 0;
-			int nAttributes = 0;
-			int nElements = 0;
-			Iterator i = getIterator();
-			while (i.hasNext()) {
-				ICSSSelectorItem item = (ICSSSelectorItem) i.next();
-				if (item instanceof CSSSimpleSelector) {
-					CSSSimpleSelector selector = (CSSSimpleSelector) item;
-					nIDs += selector.getNumOfIDs();
-					nAttributes += selector.getNumOfAttributes();
-					nAttributes += selector.getNumOfClasses();
-					nAttributes += selector.getNumOfPseudoNames();
-					if (!selector.isUniversal()) {
-						nElements++;
-					}
-				}
-			}
-			fSpecificity = nIDs * 10000 + nAttributes * 100 + nElements;
-		}
-
-		return fSpecificity;
-	}
-
-	/**
-	 * @return java.lang.String
-	 */
-	public String getString() {
-		if (fCachedString == null) {
-			StringBuffer buf = new StringBuffer();
-			Iterator i = getIterator();
-			while (i.hasNext()) {
-				ICSSSelectorItem item = (ICSSSelectorItem) i.next();
-				if (item instanceof CSSSelectorCombinator) {
-					// If item is DESCENDANT combinator, it is just single
-					// space.
-					// Then, you dont have to append string..
-					if (((CSSSelectorCombinator) item).getCombinatorType() != ICSSSelectorCombinator.DESCENDANT) {
-						buf.append(" ");//$NON-NLS-1$
-						buf.append(item.getString());
-					}
-					buf.append(" ");//$NON-NLS-1$
-				}
-				else {
-					buf.append(item.getString());
-				}
-			}
-			fCachedString = buf.toString();
-		}
-
-		return fCachedString;
-	}
-
-	/**
-	 * @return boolean
-	 * @param element
-	 *            org.w3c.dom.Element
-	 */
-	public boolean match(org.w3c.dom.Element element, java.lang.String pseudoName) {
-		Element target = element;
-		char combinatorType = ICSSSelectorCombinator.UNKNOWN;
-		Element chunkStartElement = null; // for CHILD and ADJACENT
-											// combinator
-		int chunkStartItem = -1; // for CHILD and ADJACENT combinator
-		int numItems = getLength();
-		for (int iItem = numItems - 1; iItem >= 0; iItem--) {
-			// Check Selector Items
-			ICSSSelectorItem item = getItem(iItem);
-			if (item instanceof ICSSSimpleSelector) {
-				// Simple Selector
-				if (target == null)
-					return false;
-				if (!matchExactly((ICSSSimpleSelector) item, target, pseudoName)) {
-					switch (combinatorType) {
-						case ICSSSelectorCombinator.DESCENDANT :
-							do {
-								target = getParentElement(target);
-								if (target == null)
-									return false;
-							}
-							while (!matchExactly((ICSSSimpleSelector) item, target, pseudoName));
-							break;
-						case ICSSSelectorCombinator.CHILD :
-						case ICSSSelectorCombinator.ADJACENT :
-							if (chunkStartElement != null && chunkStartElement != element) {
-								// previous conbinator must be DESCENDENT.
-								// goto parent
-								target = getParentElement(chunkStartElement);
-								iItem = chunkStartItem + 1;
-								chunkStartElement = null;
-								chunkStartItem = -1;
-								break;
-							}
-						default :
-							// other combinators are not supported yet.
-							return false;
-					}
-				}
-			}
-			else if (item instanceof ICSSSelectorCombinator) {
-				// Combinator ( "+", ">", " ", ...)
-				if (iItem == numItems - 1)
-					return false; // last item is combinator
-
-				ICSSSelectorCombinator sc = (ICSSSelectorCombinator) item;
-				combinatorType = sc.getCombinatorType();
-				switch (combinatorType) {
-					case ICSSSelectorCombinator.DESCENDANT :
-						target = getParentElement(target);
-						break;
-					case ICSSSelectorCombinator.CHILD :
-					case ICSSSelectorCombinator.ADJACENT :
-						if (chunkStartElement == null) {
-							chunkStartElement = target;
-							chunkStartItem = iItem + 1; // safe because this
-														// is not a last item.
-						}
-						if (combinatorType == ICSSSelectorCombinator.CHILD) {
-							target = getParentElement(target);
-						}
-						else {
-							target = getPreviousElement(target);
-						}
-						break;
-				}
-			}
-			else {
-				// what is this item ???
-				return false;
-			}
-		}
-		// OK this selector maches the element.
-		return true;
-
-	}
-
-	/**
-	 * @return boolean
-	 */
-	private boolean matchExactly(ICSSSimpleSelector selector, Element element, String pseudoName) {
-		IStyleSelectorAdapter adapter = (IStyleSelectorAdapter) ((INodeNotifier) element).getAdapterFor(IStyleSelectorAdapter.class);
-		if (adapter != null) {
-			return adapter.match(selector, element, pseudoName);
-		}
-
-		if (element == null)
-			return false;
-		int i;
-		String key;
-
-		// TODO: PseudoName
-
-		// check tag name
-		if (!selector.isUniversal() && !element.getNodeName().equals(selector.getName()))
-			return false;
-
-		// check id
-		i = selector.getNumOfIDs();
-		if (i > 0) {
-			if (i > 1)
-				return false;
-			key = element.getAttribute("id");//$NON-NLS-1$
-			if (key == null)
-				return false;
-			if (!selector.getID(0).equals(key))
-				return false;
-		}
-
-		// check class
-		i = selector.getNumOfClasses();
-		if (i > 0) {
-			key = element.getAttribute("class");//$NON-NLS-1$
-			if (key == null)
-				return false;
-			StringTokenizer tokenizer = new StringTokenizer(key);
-			for (i = i - 1; i >= 0; i--) {
-				boolean ok = false;
-				while (tokenizer.hasMoreTokens()) {
-					if (selector.getClass(i).equals(tokenizer.nextToken())) {
-						ok = true;
-						break;
-					}
-				}
-				if (!ok)
-					return false;
-			}
-		}
-
-		// check attributes
-		for (i = selector.getNumOfAttributes() - 1; i >= 0; i--) {
-			StringTokenizer tokenizer = new StringTokenizer(selector.getAttribute(i), "=~| \t\r\n\f");//$NON-NLS-1$
-			int countTokens = tokenizer.countTokens();
-			if (countTokens > 0) {
-				String attrValue = element.getAttribute(tokenizer.nextToken());
-				if (attrValue == null)
-					return false;
-				if (countTokens > 1) {
-					String token = tokenizer.nextToken("= \t\r\n\f");//$NON-NLS-1$
-					StringTokenizer attrValueTokenizer = null;
-					if (token.equals("~")) {//$NON-NLS-1$
-						attrValueTokenizer = new StringTokenizer(attrValue);
-					}
-					else if (token.equals("|")) {//$NON-NLS-1$
-						attrValueTokenizer = new StringTokenizer(attrValue, "-");//$NON-NLS-1$
-					}
-					if (attrValueTokenizer != null) {
-						if (tokenizer.hasMoreTokens()) {
-							token = tokenizer.nextToken();
-							boolean ok = false;
-							while (attrValueTokenizer.hasMoreTokens()) {
-								if (token.equals(attrValueTokenizer.nextToken())) {
-									ok = true;
-									break;
-								}
-							}
-							if (!ok)
-								return false;
-						}
-					}
-					else {
-						if (!attrValue.equals(token))
-							return false;
-					}
-				}
-			}
-		}
-
-		return true;
-	}
-
-	private List parseSelector(List tokens) {
-		CSSSelectorParser parser = new CSSSelectorParser(tokens);
-		List selector = parser.getSelector();
-		Iterator i = parser.getErrors();
-		fParseErrors = new ArrayList();
-		while (i.hasNext()) {
-			fParseErrors.add(i.next());
-		}
-		return selector;
-	}
-
-	public Iterator getErrors() {
-		if (fNameErrors == null) {
-			fNameErrors = new ArrayList();
-			Iterator iItem = getIterator();
-			while (iItem.hasNext()) {
-				ICSSSelectorItem item = (ICSSSelectorItem) iItem.next();
-				if (item instanceof ICSSSimpleSelector) {
-					if (!((ICSSSimpleSelector) item).isUniversal()) {
-						String name = ((ICSSSimpleSelector) item).getName();
-						if (!NameValidator.isValid(name)) {
-							fNameErrors.add(item);
-						}
-					}
-				}
-			}
-		}
-		List errors = new ArrayList(fParseErrors);
-		errors.addAll(fNameErrors);
-		return errors.iterator();
-	}
-
-	public String toString() {
-		return getString();
-	}
-
-	/**
-	 * @see ICSSSelector#getErrorCount()
-	 */
-	public int getErrorCount() {
-		int nErrors = 0;
-		Iterator i = getErrors();
-		while (i.hasNext()) {
-			nErrors++;
-			i.next();
-		}
-		return nErrors;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/document/CSSSelectorCombinator.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/document/CSSSelectorCombinator.java
deleted file mode 100644
index 5df2594..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/document/CSSSelectorCombinator.java
+++ /dev/null
@@ -1,76 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this 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.core.internal.document;
-
-
-
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSSelectorCombinator;
-
-/**
- * 
- */
-class CSSSelectorCombinator extends CSSSelectorItem implements ICSSSelectorCombinator {
-
-	char fType = ICSSSelectorCombinator.UNKNOWN;
-
-	/**
-	 * CSSSelectorCombinator constructor comment.
-	 */
-	public CSSSelectorCombinator(char type) {
-		super();
-		setCombinatorType(type);
-	}
-
-	/**
-	 * @return boolean
-	 * @param obj
-	 *            java.lang.Object
-	 */
-	public boolean equals(Object obj) {
-		if (this == obj)
-			return true;
-
-		if (obj == null || this.getClass() != obj.getClass())
-			return false;
-
-		CSSSelectorCombinator foreign = (CSSSelectorCombinator) obj;
-
-		return (getCombinatorType() == foreign.getCombinatorType());
-
-	}
-
-	/**
-	 * @return int
-	 */
-	public char getCombinatorType() {
-		return fType;
-	}
-
-	/**
-	 * @return int
-	 */
-	public int getItemType() {
-		return COMBINATOR;
-	}
-
-	/**
-	 * @return java.lang.String
-	 */
-	public String getString() {
-		StringBuffer buf = new StringBuffer();
-		buf.append(fType);
-		return buf.toString();
-	}
-
-	void setCombinatorType(char type) {
-		fType = type;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/document/CSSSelectorItem.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/document/CSSSelectorItem.java
deleted file mode 100644
index 1134bcc..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/document/CSSSelectorItem.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.core.internal.document;
-
-
-
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSSelectorItem;
-
-/**
- * 
- */
-abstract class CSSSelectorItem implements ICSSSelectorItem {
-
-	/**
-	 * CSSSelectorItem constructor comment.
-	 */
-	public CSSSelectorItem() {
-		super();
-	}
-
-	/**
-	 * @return int
-	 */
-	public int getItemType() {
-		return 0;
-	}
-
-	/**
-	 * @return java.lang.String
-	 */
-	public String getString() {
-		return null;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/document/CSSSelectorListImpl.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/document/CSSSelectorListImpl.java
deleted file mode 100644
index de4a0bc..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/document/CSSSelectorListImpl.java
+++ /dev/null
@@ -1,207 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this 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.core.internal.document;
-
-
-
-import java.util.ArrayList;
-import java.util.Iterator;
-import java.util.List;
-
-import org.eclipse.wst.css.core.internal.parserz.CSSRegionContexts;
-import org.eclipse.wst.css.core.internal.parserz.CSSTextParser;
-import org.eclipse.wst.css.core.internal.parserz.CSSTextToken;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSSelector;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSSelectorList;
-import org.w3c.dom.Element;
-
-
-/**
- * 
- */
-public class CSSSelectorListImpl implements ICSSSelectorList {
-
-	private String fText = null;
-	private String fCachedString = null; // normalized string
-	private List fSelectors = null;
-
-	public CSSSelectorListImpl(String cssText) {
-		super();
-		fText = cssText;
-		parseSelectorText();
-	}
-
-	/**
-	 * @return boolean
-	 * @param obj
-	 *            java.lang.Object
-	 */
-	public boolean equals(Object obj) {
-		if (this == obj)
-			return true;
-
-		if (obj == null || this.getClass() != obj.getClass())
-			return false;
-
-		CSSSelectorListImpl foreign = (CSSSelectorListImpl) obj;
-
-		if (getLength() != foreign.getLength())
-			return false;
-
-		for (int i = 0; i < getLength(); i++) {
-			if (!getSelector(i).equals(foreign.getSelector(i)))
-				return false;
-		}
-
-		return true;
-	}
-
-	/**
-	 * @return java.util.Iterator
-	 */
-	public Iterator getIterator() {
-		return getSelectors().iterator();
-	}
-
-	/**
-	 * @return int
-	 */
-	public int getLength() {
-		return getSelectors().size();
-	}
-
-	public ICSSSelector getSelector(int index) {
-		List selectors = getSelectors();
-		if (0 <= index && index < selectors.size()) {
-			return (ICSSSelector) selectors.get(index);
-		}
-		else {
-			return null;
-		}
-	}
-
-	private List getSelectors() {
-		if (fSelectors == null) {
-			parseSelectorText();
-		}
-		return fSelectors;
-	}
-
-	/**
-	 * @return java.lang.String
-	 */
-	public String getString() {
-		if (fCachedString == null) {
-			StringBuffer buf = new StringBuffer();
-			boolean bFirst = true;
-			// groups is list of comma-separated selectors
-			Iterator i = getSelectors().iterator();
-			while (i.hasNext()) {
-				if (!bFirst) {
-					buf.append(", ");//$NON-NLS-1$
-				}
-				ICSSSelector item = (ICSSSelector) i.next();
-				buf.append(item.getString());
-				bFirst = false;
-			}
-			fCachedString = buf.toString();
-		}
-		return fCachedString;
-	}
-
-	/**
-	 * @return boolean
-	 * @param element
-	 *            org.w3c.dom.Element
-	 */
-	public boolean match(Element element, String pseudoName) {
-		int nSelectors = getLength();
-		selectorListLoop : for (int iSelector = 0; iSelector < nSelectors; iSelector++) {
-			// Check each Selector Lists
-			ICSSSelector selector = getSelector(iSelector);
-			if (selector.match(element, pseudoName))
-				return true;
-		}
-		return false;
-	}
-
-	/**
-	 * 
-	 */
-	private void parseSelectorText() {
-		fSelectors = new ArrayList();
-		if (fText == null) {
-			return;
-		}
-
-		CSSTextParser parser = new CSSTextParser(CSSTextParser.MODE_STYLESHEET, fText);
-		CSSTextToken[] tokens = parser.getTokens();
-		if (tokens.length <= 0) {
-			return;
-		}
-
-		List tokenGroup = new ArrayList();
-		for (int i = 0; i < tokens.length; i++) {
-			CSSTextToken token = tokens[i];
-			if (token.kind == CSSRegionContexts.CSS_SELECTOR_SEPARATOR && 0 < tokenGroup.size()) {
-				ICSSSelector selector = new CSSSelector(tokenGroup);
-				if (selector != null) {
-					fSelectors.add(selector);
-				}
-				tokenGroup.clear();
-			}
-			else {
-				tokenGroup.add(tokens[i]);
-			}
-		}
-		if (0 < tokenGroup.size()) {
-			ICSSSelector selector = new CSSSelector(tokenGroup);
-			if (selector != null) {
-				fSelectors.add(selector);
-			}
-		}
-	}
-
-	/**
-	 * 
-	 */
-	public String toString() {
-		return getString();
-	}
-
-	/**
-	 * 
-	 */
-	public Iterator getErrors() {
-		List errors = new ArrayList();
-		Iterator iSelector = getSelectors().iterator();
-		while (iSelector.hasNext()) {
-			Iterator iError = ((ICSSSelector) iSelector.next()).getErrors();
-			while (iError.hasNext()) {
-				errors.add(iError.next());
-			}
-		}
-		return errors.iterator();
-	}
-
-	/**
-	 * 
-	 */
-	public int getErrorCount() {
-		int nErrors = 0;
-		Iterator i = getErrors();
-		while (i.hasNext()) {
-			nErrors++;
-			i.next();
-		}
-		return nErrors;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/document/CSSSelectorParser.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/document/CSSSelectorParser.java
deleted file mode 100644
index 7f00342..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/document/CSSSelectorParser.java
+++ /dev/null
@@ -1,335 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this 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.core.internal.document;
-
-import java.util.ArrayList;
-import java.util.Collections;
-import java.util.Iterator;
-import java.util.List;
-
-import org.eclipse.wst.css.core.internal.parserz.CSSRegionContexts;
-import org.eclipse.wst.css.core.internal.parserz.CSSTextToken;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSSelectorCombinator;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSSelectorItem;
-
-
-/**
- * 
- */
-public class CSSSelectorParser {
-
-	private final static int IDLE = 0;
-	private final static int ATTRIBUTE = 1;
-	private final static int SIMPLE = 2;
-
-	private List fTokens = null;
-	private List fItems = null;
-	private List fErrors = null;
-
-	/**
-	 * 
-	 */
-	CSSSelectorParser(List tokens) {
-		super();
-		fTokens = new ArrayList(tokens);
-	}
-
-	/**
-	 * 
-	 */
-	List getSelector() {
-		if (fItems == null) {
-			parseSelector();
-		}
-		return fItems;
-	}
-
-	/**
-	 * 
-	 */
-	private void parseSelector() {
-		fItems = new ArrayList();
-
-		List attrBuf = null;
-		CSSSimpleSelector item = null;
-
-		int status = IDLE;
-		Iterator i = fTokens.iterator();
-		while (i.hasNext()) {
-			CSSTextToken token = (CSSTextToken) i.next();
-			if (token == null || token.kind == CSSRegionContexts.CSS_S || token.kind == CSSRegionContexts.CSS_COMMENT) {
-				continue;
-			}
-			switch (status) {
-				case IDLE :
-					if (isTag(token)) {
-						item = createSimple();
-						appendTag(item, token);
-						status = SIMPLE;
-					}
-					else if (isID(token)) {
-						item = createSimple();
-						appendID(item, token);
-						status = SIMPLE;
-					}
-					else if (isClass(token)) {
-						item = createSimple();
-						appendClass(item, token);
-						status = SIMPLE;
-					}
-					else if (isPseudo(token)) {
-						item = createSimple();
-						appendPseudo(item, token);
-						status = SIMPLE;
-					}
-					else if (isAttributeBegin(token)) {
-						item = createSimple();
-						status = ATTRIBUTE;
-					}
-					else {
-						addError(token);
-					}
-					break;
-				case SIMPLE :
-					if (isID(token)) {
-						appendID(item, token);
-					}
-					else if (isClass(token)) {
-						appendClass(item, token);
-					}
-					else if (isPseudo(token)) {
-						appendPseudo(item, token);
-					}
-					else if (isAttributeBegin(token)) {
-						status = ATTRIBUTE;
-					}
-					else if (isCombinator(token)) { // combinator
-						closeItem(item);
-						closeItem(createCombinator(token));
-						status = IDLE;
-					}
-					else {
-						addError(token);
-					}
-					break;
-				case ATTRIBUTE :
-					if (isAttributeEnd(token)) {
-						appendAttribute(item, attrBuf);
-						attrBuf = null;
-						status = SIMPLE;
-					}
-					else {
-						if (attrBuf == null) {
-							attrBuf = new ArrayList();
-						}
-						attrBuf.add(token);
-						if (!isAttributeContent(token)) {
-							addError(token);
-						}
-					}
-					break;
-				default :
-					break;
-			}
-		}
-
-		closeItem(item);
-	}
-
-	/**
-	 * @param token
-	 * @return
-	 */
-	private boolean isAttributeContent(CSSTextToken token) {
-		String type = token.kind;
-		return (type == CSSRegionContexts.CSS_SELECTOR_ATTRIBUTE_NAME || type == CSSRegionContexts.CSS_SELECTOR_ATTRIBUTE_OPERATOR || type == CSSRegionContexts.CSS_SELECTOR_ATTRIBUTE_VALUE);
-	}
-
-	/**
-	 * @param token
-	 * @return
-	 */
-	private boolean isAttributeEnd(CSSTextToken token) {
-		String type = token.kind;
-		return (type == CSSRegionContexts.CSS_SELECTOR_ATTRIBUTE_END);
-	}
-
-	/**
-	 * @param token
-	 * @return
-	 */
-	private boolean isAttributeBegin(CSSTextToken token) {
-		String type = token.kind;
-		return (type == CSSRegionContexts.CSS_SELECTOR_ATTRIBUTE_START);
-	}
-
-	/**
-	 * @param token
-	 * @return
-	 */
-	private boolean isCombinator(CSSTextToken token) {
-		String type = token.kind;
-		return (type == CSSRegionContexts.CSS_SELECTOR_COMBINATOR);
-	}
-
-	/**
-	 * @param token
-	 * @return
-	 */
-	private boolean isPseudo(CSSTextToken token) {
-		String type = token.kind;
-		return (type == CSSRegionContexts.CSS_SELECTOR_PSEUDO);
-	}
-
-	/**
-	 * @param token
-	 * @return
-	 */
-	private boolean isClass(CSSTextToken token) {
-		String type = token.kind;
-		return (type == CSSRegionContexts.CSS_SELECTOR_CLASS);
-	}
-
-	/**
-	 * @param token
-	 * @return
-	 */
-	private boolean isID(CSSTextToken token) {
-		String type = token.kind;
-		return (type == CSSRegionContexts.CSS_SELECTOR_ID);
-	}
-
-	/**
-	 * @param token
-	 * @return
-	 */
-	private boolean isTag(CSSTextToken token) {
-		String type = token.kind;
-		return (type == CSSRegionContexts.CSS_SELECTOR_ELEMENT_NAME || type == CSSRegionContexts.CSS_SELECTOR_UNIVERSAL || type == CSSRegionContexts.CSS_UNKNOWN);
-	}
-
-	private CSSSimpleSelector createSimple() {
-		return new CSSSimpleSelector();
-	}
-
-	/**
-	 * if " " or "+" or ">" appeared, close simpleselector and add new
-	 * combinator
-	 */
-	private CSSSelectorCombinator createCombinator(CSSTextToken token) {
-		char type = 0;
-
-		String str = token.image;
-		if (str.trim().length() == 0) { // space
-			type = ICSSSelectorCombinator.DESCENDANT;
-		}
-		else if (str.equals("+")) { //$NON-NLS-1$
-			type = ICSSSelectorCombinator.ADJACENT;
-		}
-		else if (str.equals(">")) { //$NON-NLS-1$
-			type = ICSSSelectorCombinator.CHILD;
-		}
-
-		if (0 < type) {
-			return new CSSSelectorCombinator(type);
-		}
-		else {
-			return null;
-		}
-	}
-
-	/**
-	 * 
-	 */
-	private void closeItem(ICSSSelectorItem item) {
-		if (item != null) {
-			fItems.add(item);
-		}
-	}
-
-	private void appendTag(CSSSimpleSelector item, CSSTextToken token) {
-		item.setName(token.image);
-		if (token.kind == CSSRegionContexts.CSS_UNKNOWN) {
-			addError(token);
-		}
-	}
-
-	/**
-	 * if "#xxxx" appeared, add ID to current selector
-	 */
-	private void appendID(CSSSimpleSelector item, CSSTextToken token) {
-		String text = token.toString();
-		String idContent = text.substring(1, text.length());
-		item.addID(idContent);
-	}
-
-	/**
-	 * if ".xxxx" appeared, add Class to current selector
-	 */
-	private void appendClass(CSSSimpleSelector item, CSSTextToken token) {
-		String text = token.toString();
-		String classContent = text.substring(1, text.length());
-		item.addClass(classContent);
-		if (Character.isDigit(classContent.charAt(0))) {
-			addError(token);
-		}
-	}
-
-	/**
-	 * if ":xxxx" appeared, add Pseudo(element/class) to current selector
-	 */
-	private void appendPseudo(CSSSimpleSelector item, CSSTextToken token) {
-		String text = token.toString();
-		String pseudoContent = text.substring(1, text.length());
-		item.addPseudoName(pseudoContent);
-	}
-
-	/**
-	 * 
-	 */
-	private void appendAttribute(CSSSimpleSelector item, List tokens) {
-		StringBuffer buf = new StringBuffer();
-
-		CSSTextToken token;
-		Iterator i = tokens.iterator();
-		while (i.hasNext()) {
-			token = (CSSTextToken) i.next();
-			buf.append(token.image);
-		}
-
-		item.addAttribute(buf.toString());
-	}
-
-	/**
-	 * 
-	 */
-	List getSelectorTags() {
-		List tagList = new ArrayList();
-		return tagList;
-	}
-
-	/**
-	 * 
-	 */
-	private void addError(CSSTextToken token) {
-		if (fErrors == null) {
-			fErrors = new ArrayList();
-		}
-		fErrors.add(token);
-	}
-
-	/**
-	 * 
-	 */
-	Iterator getErrors() {
-		return (fErrors == null) ? Collections.EMPTY_LIST.iterator() : fErrors.iterator();
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/document/CSSSimpleSelector.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/document/CSSSimpleSelector.java
deleted file mode 100644
index 9f76ea3..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/document/CSSSimpleSelector.java
+++ /dev/null
@@ -1,281 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this 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.core.internal.document;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSSimpleSelector;
-
-
-/**
- * 
- */
-class CSSSimpleSelector extends CSSSelectorItem implements ICSSSimpleSelector {
-
-	private String fName = null;
-	private String fCachedString = null;
-	private StringBuffer fStringBuf = null;
-	private List fPseudoName = null;
-	private List fAttribute = null;
-	private List fClass = null;
-	private List fID = null;
-
-	/**
-	 * CSSSimpleSelector constructor comment.
-	 */
-	public CSSSimpleSelector() {
-		super();
-	}
-
-	/**
-	 * 
-	 */
-	void addAttribute(String attribute) {
-		if (fAttribute == null) {
-			fAttribute = new ArrayList();
-		}
-		fAttribute.add(attribute);
-		addToBuf("[");//$NON-NLS-1$
-		addToBuf(attribute);
-		addToBuf("]");//$NON-NLS-1$
-		fCachedString = null;
-	}
-
-	/**
-	 * 
-	 */
-	void addClass(String cls) {
-		if (fClass == null) {
-			fClass = new ArrayList();
-		}
-		fClass.add(cls);
-		addToBuf(".");//$NON-NLS-1$
-		addToBuf(cls);
-		fCachedString = null;
-	}
-
-	/**
-	 * 
-	 */
-	void addID(String id) {
-		if (fID == null) {
-			fID = new ArrayList();
-		}
-		fID.add(id);
-		addToBuf("#");//$NON-NLS-1$
-		addToBuf(id);
-		fCachedString = null;
-	}
-
-	/**
-	 * 
-	 */
-	void addPseudoName(String cls) {
-		if (fPseudoName == null) {
-			fPseudoName = new ArrayList();
-		}
-		fPseudoName.add(cls);
-		addToBuf(":");//$NON-NLS-1$
-		addToBuf(cls);
-		fCachedString = null;
-	}
-
-	/**
-	 * 
-	 */
-	private void addToBuf(String str) {
-		if (fStringBuf == null) {
-			fStringBuf = new StringBuffer();
-		}
-		fStringBuf.append(str);
-	}
-
-	/**
-	 * @return boolean
-	 * @param obj
-	 *            java.lang.Object
-	 */
-	public boolean equals(Object obj) {
-		if (this == obj)
-			return true;
-
-		if (obj == null || this.getClass() != obj.getClass())
-			return false;
-
-		CSSSimpleSelector foreign = (CSSSimpleSelector) obj;
-
-		if (getName().compareToIgnoreCase(foreign.getName()) != 0)
-			return false;
-
-		int i;
-
-		// compare pseudo-classes / pseudo-elements
-		if (getNumOfPseudoNames() != foreign.getNumOfPseudoNames())
-			return false;
-		for (i = 0; i < getNumOfPseudoNames(); i++) {
-			if (getPseudoName(i).compareToIgnoreCase(foreign.getPseudoName(i)) != 0)
-				return false;
-		}
-
-		// compare classes
-		if (getNumOfClasses() != foreign.getNumOfClasses())
-			return false;
-		for (i = 0; i < getNumOfClasses(); i++) {
-			if (getClass(i).compareToIgnoreCase(foreign.getClass(i)) != 0)
-				return false;
-		}
-
-		// compare IDs
-		if (getNumOfIDs() != foreign.getNumOfIDs())
-			return false;
-		for (i = 0; i < getNumOfIDs(); i++) {
-			if (getID(i).compareToIgnoreCase(foreign.getID(i)) != 0)
-				return false;
-		}
-
-		// compare Attributes
-		if (getNumOfAttributes() != foreign.getNumOfAttributes())
-			return false;
-		for (i = 0; i < getNumOfAttributes(); i++) {
-			if (getAttribute(i).compareToIgnoreCase(foreign.getAttribute(i)) != 0)
-				return false;
-		}
-		return true;
-	}
-
-	/**
-	 * @return java.lang.String
-	 * @param index
-	 *            int
-	 */
-	public String getAttribute(int index) {
-		if (fAttribute != null && 0 <= index && index < fAttribute.size()) {
-			return (String) fAttribute.get(index);
-		}
-		else {
-			return "";//$NON-NLS-1$
-		}
-	}
-
-	/**
-	 * @return java.lang.String
-	 * @param index
-	 *            int
-	 */
-	public String getClass(int index) {
-		if (fClass != null && 0 <= index && index < fClass.size()) {
-			return (String) fClass.get(index);
-		}
-		else {
-			return "";//$NON-NLS-1$
-		}
-	}
-
-	/**
-	 * @return java.lang.String
-	 * @param index
-	 *            int
-	 */
-	public String getID(int index) {
-		if (fID != null && 0 <= index && index < fID.size()) {
-			return (String) fID.get(index);
-		}
-		else {
-			return "";//$NON-NLS-1$
-		}
-	}
-
-	/**
-	 * @return int
-	 */
-	public int getItemType() {
-		return SIMPLE;
-	}
-
-	/**
-	 * @return java.lang.String
-	 */
-	public String getName() {
-		return (fName != null) ? fName : "";//$NON-NLS-1$
-	}
-
-	/**
-	 * @return boolean
-	 */
-	public int getNumOfAttributes() {
-		return (fAttribute != null) ? fAttribute.size() : 0;
-	}
-
-	/**
-	 * @return boolean
-	 */
-	public int getNumOfClasses() {
-		return (fClass != null) ? fClass.size() : 0;
-	}
-
-	/**
-	 * @return boolean
-	 */
-	public int getNumOfIDs() {
-		return (fID != null) ? fID.size() : 0;
-	}
-
-	/**
-	 * @return boolean
-	 */
-	public int getNumOfPseudoNames() {
-		return (fPseudoName != null) ? fPseudoName.size() : 0;
-	}
-
-	/**
-	 * @return java.lang.String
-	 * @param index
-	 *            int
-	 */
-	public String getPseudoName(int index) {
-		if (fPseudoName != null && 0 <= index && index < fPseudoName.size()) {
-			return (String) fPseudoName.get(index);
-		}
-		else {
-			return "";//$NON-NLS-1$
-		}
-	}
-
-	/**
-	 * @return java.lang.String
-	 */
-	public String getString() {
-		if (fCachedString == null) {
-			StringBuffer buf = new StringBuffer(getName());
-			if (fStringBuf != null) {
-				buf.append(fStringBuf.toString());
-			}
-			fCachedString = buf.toString();
-		}
-		return fCachedString;
-	}
-
-	/**
-	 * @return boolean
-	 */
-	public boolean isUniversal() {
-		return (fName == null || fName.equals("*"));//$NON-NLS-1$
-	}
-
-	/**
-	 * 
-	 */
-	void setName(String name) {
-		fName = name;
-		fCachedString = null;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/document/CSSStructuredDocumentRegionContainer.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/document/CSSStructuredDocumentRegionContainer.java
deleted file mode 100644
index 2f16772..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/document/CSSStructuredDocumentRegionContainer.java
+++ /dev/null
@@ -1,226 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this 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.core.internal.document;
-
-
-
-import org.eclipse.wst.sse.core.internal.provisional.text.IStructuredDocumentRegion;
-
-/**
- * 
- */
-abstract class CSSStructuredDocumentRegionContainer extends CSSNodeImpl {
-
-	private IStructuredDocumentRegion firstStructuredDocumentRegion = null;
-	private IStructuredDocumentRegion lastStructuredDocumentRegion = null;
-
-	/**
-	 * CSSContainer constructor comment.
-	 */
-	CSSStructuredDocumentRegionContainer() {
-		super();
-	}
-
-	CSSStructuredDocumentRegionContainer(CSSStructuredDocumentRegionContainer that) {
-		super(that);
-	}
-
-	/**
-	 * @return java.lang.String
-	 */
-	public String getCssText() {
-		if (getFirstStructuredDocumentRegion() == null)
-			return generateSource();
-
-		StringBuffer str = new StringBuffer(getFirstStructuredDocumentRegion().getText());
-		IStructuredDocumentRegion node = getFirstStructuredDocumentRegion();
-
-		while (node != getLastStructuredDocumentRegion()) {
-			node = node.getNext();
-			str.append(node.getText());
-		}
-
-		return str.toString();
-	}
-
-	/**
-	 * @return int
-	 */
-	public int getEndOffset() {
-		IStructuredDocumentRegion flatNode = getLastStructuredDocumentRegion();
-		if (flatNode != null)
-			return flatNode.getEnd();
-		return -1;
-	}
-
-	IStructuredDocumentRegion getFirstStructuredDocumentRegion() {
-		return firstStructuredDocumentRegion;
-	}
-
-	IStructuredDocumentRegion getStructuredDocumentRegion(int index) {
-		IStructuredDocumentRegion node = firstStructuredDocumentRegion;
-		for (int i = index; i > 0; i--) {
-			if (node == null)
-				return null;
-			node = node.getNext();
-		}
-		return node;
-	}
-
-	/**
-	 * @return int
-	 */
-	int getStructuredDocumentRegionCount() {
-		if (firstStructuredDocumentRegion == null)
-			return 0;
-
-		IStructuredDocumentRegion node = firstStructuredDocumentRegion;
-		int i = 0;
-		for (; node != null; i++)
-			node = node.getNext();
-		return i;
-	}
-
-	IStructuredDocumentRegion getLastStructuredDocumentRegion() {
-		return lastStructuredDocumentRegion;
-	}
-
-	/**
-	 * @return int
-	 */
-	public int getStartOffset() {
-		IStructuredDocumentRegion flatNode = getFirstStructuredDocumentRegion();
-		if (flatNode != null)
-			return flatNode.getStart();
-		return -1;
-	}
-
-	boolean includeRangeStructuredDocumentRegion(IStructuredDocumentRegion first, IStructuredDocumentRegion last) {
-		boolean bModified = false;
-
-		// validate range of parameters
-		if (first != null && last != null) {
-			if (first.getStart() > last.getStart()) {
-				IStructuredDocumentRegion node = first;
-				first = last;
-				last = node;
-			}
-		}
-
-		// validate mine
-		boolean b = validateRange();
-		bModified = b || bModified;
-
-		if (first != null) {
-			if (getFirstStructuredDocumentRegion() == null || getFirstStructuredDocumentRegion().getStart() > first.getStart()) {
-				setFirstStructuredDocumentRegion(first);
-				bModified = true;
-			}
-		}
-
-		if (last != null) {
-			if (getLastStructuredDocumentRegion() == null || getLastStructuredDocumentRegion().getStart() < last.getStart()) {
-				setLastStructuredDocumentRegion(last);
-				bModified = true;
-			}
-		}
-
-		// re-validate
-		if (bModified)
-			validateRange();
-
-		return bModified;
-	}
-
-	/**
-	 * 
-	 */
-	boolean propagateRangeStructuredDocumentRegion() {
-		boolean bModified = false;
-
-		CSSStructuredDocumentRegionContainer parent = (CSSStructuredDocumentRegionContainer) getParentNode();
-		if (parent == null)
-			return bModified;
-
-		boolean b = parent.includeRangeStructuredDocumentRegion(getFirstStructuredDocumentRegion(), getLastStructuredDocumentRegion());
-		bModified = b || bModified;
-
-		if (b)
-			parent.propagateRangeStructuredDocumentRegion();
-		// else need not update range of ancestors
-
-		return bModified;
-	}
-
-	/**
-	 * @param cssText
-	 *            java.lang.String
-	 */
-	public void setCssText(String cssText) {
-		if (firstStructuredDocumentRegion != null) {
-			getOwnerDocument().getModel().getStructuredDocument().replaceText(this, getStartOffset(), getEndOffset() - getStartOffset(), cssText);
-		}
-		else
-			super.setCssText(cssText);
-	}
-
-	IStructuredDocumentRegion setFirstStructuredDocumentRegion(IStructuredDocumentRegion node) {
-		firstStructuredDocumentRegion = node;
-		return node;
-	}
-
-	IStructuredDocumentRegion setLastStructuredDocumentRegion(IStructuredDocumentRegion node) {
-		lastStructuredDocumentRegion = node;
-		return node;
-	}
-
-	void setRangeStructuredDocumentRegion(IStructuredDocumentRegion firstNode, IStructuredDocumentRegion lastNode) {
-		if (firstNode != null)
-			setFirstStructuredDocumentRegion(firstNode);
-		if (lastNode != null)
-			setLastStructuredDocumentRegion(lastNode);
-
-		if (firstNode == null && lastNode == null) {
-			setFirstStructuredDocumentRegion(null);
-			setLastStructuredDocumentRegion(null);
-		}
-		else { // range validation
-			validateRange();
-		}
-	}
-
-	/**
-	 * @return boolean
-	 */
-	private boolean validateRange() {
-		boolean bModified = false;
-
-		if (firstStructuredDocumentRegion != null || lastStructuredDocumentRegion != null) {
-			if (this.firstStructuredDocumentRegion == null) {
-				this.firstStructuredDocumentRegion = this.lastStructuredDocumentRegion;
-				bModified = true;
-			}
-			else if (this.lastStructuredDocumentRegion == null) {
-				this.lastStructuredDocumentRegion = this.firstStructuredDocumentRegion;
-				bModified = true;
-			}
-			else if (this.firstStructuredDocumentRegion.getStart() > this.lastStructuredDocumentRegion.getStart()) {
-				// need to swap first for last
-				IStructuredDocumentRegion node = firstStructuredDocumentRegion;
-				firstStructuredDocumentRegion = lastStructuredDocumentRegion;
-				lastStructuredDocumentRegion = node;
-				bModified = true;
-			}
-		}
-
-		return bModified;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/document/CSSStyleDeclItemImpl.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/document/CSSStyleDeclItemImpl.java
deleted file mode 100644
index 49afd33..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/document/CSSStyleDeclItemImpl.java
+++ /dev/null
@@ -1,255 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this 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.core.internal.document;
-
-
-
-import org.eclipse.wst.css.core.internal.encoding.CSSDocumentLoader;
-import org.eclipse.wst.css.core.internal.formatter.CSSSourceFormatterFactory;
-import org.eclipse.wst.css.core.internal.formatter.CSSSourceGenerator;
-import org.eclipse.wst.css.core.internal.formatter.StyleDeclItemFormatter;
-import org.eclipse.wst.css.core.internal.parser.CSSSourceParser;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSNode;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSPrimitiveValue;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSStyleDeclItem;
-import org.eclipse.wst.sse.core.internal.document.IDocumentLoader;
-import org.eclipse.wst.sse.core.internal.provisional.IndexedRegion;
-import org.eclipse.wst.sse.core.internal.provisional.text.IStructuredDocument;
-import org.eclipse.wst.sse.core.internal.provisional.text.IStructuredDocumentRegion;
-import org.w3c.dom.DOMException;
-import org.w3c.dom.css.CSSValue;
-
-
-/**
- * 
- */
-class CSSStyleDeclItemImpl extends CSSStructuredDocumentRegionContainer implements ICSSStyleDeclItem {
-
-	private java.lang.String fPropertyName;
-
-	/**
-	 * CSSStyleDeclItemImpl constructor comment.
-	 * 
-	 */
-	CSSStyleDeclItemImpl(CSSStyleDeclItemImpl that) {
-		super(that);
-		this.fPropertyName = that.fPropertyName;
-	}
-
-	/**
-	 * CSSStyleDeclItemImpl constructor comment.
-	 */
-	CSSStyleDeclItemImpl(String propertyName) {
-		super();
-		this.fPropertyName = propertyName;
-	}
-
-	/**
-	 * @return org.w3c.dom.css.CSSPrimitiveValue
-	 * @param value
-	 *            org.w3c.dom.css.CSSPrimitiveValue
-	 */
-	public ICSSPrimitiveValue appendValue(ICSSPrimitiveValue value) throws DOMException {
-		return insertValueBefore(value, null);
-	}
-
-	/**
-	 * @param deep
-	 *            boolean
-	 */
-	public ICSSNode cloneNode(boolean deep) {
-		CSSStyleDeclItemImpl cloned = new CSSStyleDeclItemImpl(this);
-
-		if (deep)
-			cloneChildNodes(cloned, deep);
-
-		return cloned;
-	}
-
-	/**
-	 * @return java.lang.String
-	 */
-	String generateValueSource() {
-		CSSSourceGenerator formatter = CSSSourceFormatterFactory.getInstance().getSourceFormatter(this);
-		if (formatter != null && formatter instanceof StyleDeclItemFormatter)
-			return ((StyleDeclItemFormatter) formatter).formatValue(this).toString();
-		else
-			return "";//$NON-NLS-1$
-	}
-
-	/**
-	 * @return org.w3c.dom.css.CSSValue
-	 */
-	public CSSValue getCSSValue() {
-		int nValue = getLength();
-		if (nValue <= 0)
-			return null;
-		else if (nValue == 1)
-			return item(0);
-		else
-			return this;
-	}
-
-	/**
-	 * @return java.lang.String
-	 */
-	public java.lang.String getCSSValueText() {
-		if (getFirstChild() == null)
-			return "";//$NON-NLS-1$
-		// check whether children has flatnodes
-		ICSSNode child = getFirstChild();
-		while (child != null) {
-			if (((IndexedRegion) child).getEndOffset() <= 0)
-				return generateValueSource();
-			child = child.getNextSibling();
-		}
-
-		IStructuredDocumentRegion node = getFirstStructuredDocumentRegion();
-		int start = ((IndexedRegion) getFirstChild()).getStartOffset() - node.getStartOffset();
-		int end = ((IndexedRegion) getLastChild()).getEndOffset() - node.getStartOffset();
-		return node.getText().substring(start, end);
-	}
-
-	/**
-	 * @return short
-	 */
-	public short getCssValueType() {
-		return CSS_VALUE_LIST;
-	}
-
-	/**
-	 * @return int
-	 */
-	public int getLength() {
-		int i = 0;
-		for (ICSSNode node = getFirstChild(); node != null; node = node.getNextSibling()) {
-			if (node instanceof CSSPrimitiveValueImpl)
-				i++;
-		}
-		return i;
-	}
-
-	/**
-	 * @return short
-	 */
-	public short getNodeType() {
-		return STYLEDECLITEM_NODE;
-	}
-
-	/**
-	 * @return java.lang.String
-	 */
-	public java.lang.String getPriority() {
-		return getAttribute(IMPORTANT);
-	}
-
-	/**
-	 * @return java.lang.String
-	 */
-	public String getPropertyName() {
-		return fPropertyName.trim().toLowerCase();
-	}
-
-	/**
-	 * @return org.w3c.dom.css.CSSPrimitiveValue
-	 * @param newValue
-	 *            org.w3c.dom.css.CSSPrimitiveValue
-	 * @param refValue
-	 *            org.w3c.dom.css.CSSPrimitiveValue
-	 */
-	ICSSPrimitiveValue insertValueBefore(ICSSPrimitiveValue newValue, ICSSPrimitiveValue refValue) {
-		ICSSNode node = insertBefore((CSSNodeImpl) newValue, (CSSNodeImpl) refValue);
-		return (ICSSPrimitiveValue) node;
-	}
-
-	/**
-	 * @return org.w3c.dom.css.CSSValue
-	 * @param index
-	 *            int
-	 */
-	public CSSValue item(int index) {
-		int i = 0;
-		for (ICSSNode node = getFirstChild(); node != null; node = node.getNextSibling()) {
-			if (node instanceof CSSPrimitiveValueImpl) {
-				if (i++ == index)
-					return (CSSValue) node;
-			}
-		}
-		return null;
-	}
-
-	/**
-	 * @return org.w3c.dom.css.CSSPrimitiveValue
-	 * @param value
-	 *            org.w3c.dom.css.CSSPrimitiveValue
-	 */
-	public ICSSPrimitiveValue removeValue(ICSSPrimitiveValue value) throws DOMException {
-		ICSSNode node = removeChild((CSSNodeImpl) value);
-		return (ICSSPrimitiveValue) node;
-	}
-
-	/**
-	 * @return org.w3c.dom.css.CSSPrimitiveValue
-	 * @param newValue
-	 *            org.w3c.dom.css.CSSPrimitiveValue
-	 * @param oldValue
-	 *            org.w3c.dom.css.CSSPrimitiveValue
-	 */
-	public ICSSPrimitiveValue replaceValue(ICSSPrimitiveValue newValue, ICSSPrimitiveValue oldValue) throws DOMException {
-		if (oldValue == null)
-			return newValue;
-		if (newValue != null)
-			insertValueBefore(newValue, oldValue);
-		return removeValue(oldValue);
-	}
-
-	/**
-	 * @param value
-	 *            java.lang.String
-	 * @exception org.w3c.dom.DOMException
-	 *                The exception description.
-	 */
-	public void setCssValueText(String value) throws DOMException {
-		ICSSNode child = getFirstChild();
-		while (child != null) {
-			ICSSNode next = child.getNextSibling();
-			if (child instanceof ICSSPrimitiveValue) {
-				removeChild((CSSNodeImpl) child);
-			}
-			child = next;
-		}
-
-		// use temporary document
-		IDocumentLoader loader = new CSSDocumentLoader();
-		IStructuredDocument structuredDocument = (IStructuredDocument) loader.createNewStructuredDocument();
-		((CSSSourceParser) structuredDocument.getParser()).setParserMode(CSSSourceParser.MODE_DECLARATION_VALUE);
-		structuredDocument.set(value);
-		IStructuredDocumentRegion node = structuredDocument.getFirstStructuredDocumentRegion();
-		if (node == null) {
-			return;
-		}
-		if (node.getNext() != null) {
-			throw new DOMException(DOMException.INVALID_MODIFICATION_ERR, "");//$NON-NLS-1$
-		}
-
-		CSSDeclarationItemParser itemParser = new CSSDeclarationItemParser(getOwnerDocument());
-		itemParser.setStructuredDocumentTemporary(true);
-		itemParser.setupValues(this, node, node.getRegions());
-	}
-
-	/**
-	 * @param newPriority
-	 *            java.lang.String
-	 */
-	public void setPriority(java.lang.String newPriority) throws DOMException {
-		setAttribute(IMPORTANT, newPriority);
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/document/CSSStyleDeclarationFactoryContext.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/document/CSSStyleDeclarationFactoryContext.java
deleted file mode 100644
index 3d6142f..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/document/CSSStyleDeclarationFactoryContext.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.wst.css.core.internal.document;
-
-
-
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSDocument;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSNode;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSStyleDeclaration;
-
-public abstract class CSSStyleDeclarationFactoryContext {
-
-	protected ICSSDocument fOwnerDocument = null;
-
-	/**
-	 * 
-	 */
-	protected void cloneChildNodes(ICSSNode src, ICSSNode dest) {
-		if (fOwnerDocument == null) {
-			return;
-		}
-		if (!(dest instanceof CSSNodeImpl)) {
-			return;
-		}
-
-		CSSNodeImpl container = (CSSNodeImpl) dest;
-		container.removeChildNodes();
-
-		for (ICSSNode child = src.getFirstChild(); child != null; child = child.getNextSibling()) {
-			if (child instanceof CSSStyleDeclItemImpl) {
-				// extract shorthand property ..
-				// --> Temp
-				ICSSNode cloned = child.cloneNode(false);
-				if (cloned instanceof CSSNodeImpl) {
-					((CSSNodeImpl) cloned).setOwnerDocument(fOwnerDocument);
-					container.appendChild((CSSNodeImpl) cloned);
-					cloneChildNodes(child, cloned);
-				}
-				// <-- Temp
-			}
-			else {
-				ICSSNode cloned = child.cloneNode(false);
-				if (cloned instanceof CSSNodeImpl) {
-					((CSSNodeImpl) cloned).setOwnerDocument(fOwnerDocument);
-					container.appendChild((CSSNodeImpl) cloned);
-					cloneChildNodes(child, cloned);
-				}
-			}
-		}
-	}
-
-	/**
-	 * @return org.eclipse.wst.css.core.model.interfaces.ICSSStyleDeclaration
-	 */
-	public ICSSStyleDeclaration createStyleDeclaration() {
-		CSSStyleDeclarationImpl decl = new CSSStyleDeclarationImpl(true);
-		decl.setOwnerDocument(decl);
-		return decl;
-	}
-
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/document/CSSStyleDeclarationImpl.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/document/CSSStyleDeclarationImpl.java
deleted file mode 100644
index 8ca7f10..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/document/CSSStyleDeclarationImpl.java
+++ /dev/null
@@ -1,272 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this 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.core.internal.document;
-
-
-
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSNode;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSStyleDeclItem;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSStyleDeclaration;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSValue;
-import org.w3c.dom.DOMException;
-import org.w3c.dom.css.CSSRule;
-import org.w3c.dom.css.CSSValue;
-
-
-/**
- * 
- */
-class CSSStyleDeclarationImpl extends CSSDocumentImpl implements ICSSStyleDeclaration {
-
-	private boolean fIsDocument;
-
-	CSSStyleDeclarationImpl(CSSStyleDeclarationImpl that) {
-		super(that);
-		this.fIsDocument = that.fIsDocument;
-		if (fIsDocument) {
-			setOwnerDocument(this);
-		}
-	}
-
-	CSSStyleDeclarationImpl(boolean isDocument) {
-		super();
-		fIsDocument = isDocument;
-		if (fIsDocument) {
-			setOwnerDocument(this);
-		}
-	}
-
-	public ICSSNode cloneNode(boolean deep) {
-		CSSStyleDeclarationImpl cloned = new CSSStyleDeclarationImpl(this);
-
-		if (deep)
-			cloneChildNodes(cloned, deep);
-
-		return cloned;
-	}
-
-	public ICSSStyleDeclItem getDeclItemNode(String propertyName) {
-		ICSSNode node = getLastChild();
-		propertyName = propertyName.trim();
-		while (node != null) {
-			if (node instanceof CSSStyleDeclItemImpl) {
-				ICSSStyleDeclItem item = (ICSSStyleDeclItem) node;
-				if (propertyName.compareToIgnoreCase(item.getPropertyName().trim()) == 0)
-					return item;
-			}
-			node = node.getPreviousSibling();
-		}
-		return null;
-	}
-
-	/**
-	 * @return int
-	 */
-	public int getLength() {
-		int i = 0;
-		ICSSNode node = getFirstChild();
-		while (node != null) {
-			if (node instanceof CSSStyleDeclItemImpl)
-				i++;
-			node = node.getNextSibling();
-		}
-		return i;
-	}
-
-	/**
-	 * @return short
-	 */
-	public short getNodeType() {
-		return STYLEDECLARATION_NODE;
-	}
-
-	/**
-	 * The CSS rule that contains this declaration block or <code>null</code>
-	 * if this <code>CSSStyleDeclaration</code> is not attached to a
-	 * <code>CSSRule</code>.
-	 */
-	public CSSRule getParentRule() {
-		ICSSNode parent = getParentNode();
-		if (parent instanceof CSSRule)
-			return (CSSRule) parent;
-		return null;
-	}
-
-	/**
-	 * Used to retrieve the object representation of the value of a CSS
-	 * property if it has been explicitly set within this declaration block.
-	 * This method returns <code>null</code> if the property is a shorthand
-	 * property. Shorthand property values can only be accessed and modified
-	 * as strings, using the <code>getPropertyValue</code> and
-	 * <code>setProperty</code> methods.
-	 * 
-	 * @param propertyName
-	 *            The name of the CSS property. See the CSS property index.
-	 * @return Returns the value of the property if it has been explicitly set
-	 *         for this declaration block. Returns <code>null</code> if the
-	 *         property has not been set.
-	 */
-	public CSSValue getPropertyCSSValue(String propertyName) {
-		ICSSStyleDeclItem item = getDeclItemNode(propertyName);
-		if (item != null)
-			return item.getCSSValue();
-		return null;
-	}
-
-	/**
-	 * Used to retrieve the priority of a CSS property (e.g. the
-	 * <code>"important"</code> qualifier) if the property has been
-	 * explicitly set in this declaration block.
-	 * 
-	 * @param propertyName
-	 *            The name of the CSS property. See the CSS property index.
-	 * @return A string representing the priority (e.g.
-	 *         <code>"important"</code>) if one exists. The empty string if
-	 *         none exists.
-	 */
-	public String getPropertyPriority(String propertyName) {
-		ICSSStyleDeclItem item = getDeclItemNode(propertyName);
-		if (item != null)
-			return item.getPriority();
-		return null;
-	}
-
-	/**
-	 * Used to retrieve the value of a CSS property if it has been explicitly
-	 * set within this declaration block.
-	 * 
-	 * @param propertyName
-	 *            The name of the CSS property. See the CSS property index.
-	 * @return Returns the value of the property if it has been explicitly set
-	 *         for this declaration block. Returns the empty string if the
-	 *         property has not been set.
-	 */
-	public String getPropertyValue(String propertyName) {
-		CSSValue value = getPropertyCSSValue(propertyName);
-		if (value != null)
-			return ((ICSSValue) value).getCSSValueText();
-		return null;
-	}
-
-	/**
-	 * @return boolean
-	 */
-	public boolean isDocument() {
-		return fIsDocument;
-	}
-
-	/**
-	 * Used to retrieve the properties that have been explicitly set in this
-	 * declaration block. The order of the properties retrieved using this
-	 * method does not have to be the order in which they were set. This
-	 * method can be used to iterate over all properties in this declaration
-	 * block.
-	 * 
-	 * @param index
-	 *            Index of the property name to retrieve.
-	 * @return The name of the property at this ordinal position. The empty
-	 *         string if no property exists at this position.
-	 */
-	public String item(int index) {
-		if (index < 0)
-			return null;
-
-		int i = 0;
-		ICSSNode node = getFirstChild();
-		while (node != null) {
-			if (node instanceof CSSStyleDeclItemImpl) {
-				if (i != index)
-					i++;
-				else {
-					CSSStyleDeclItemImpl item = (CSSStyleDeclItemImpl) node;
-					return item.getPropertyName();
-				}
-			}
-			node = node.getNextSibling();
-		}
-		return null;
-	}
-
-	public ICSSStyleDeclItem removeDeclItemNode(ICSSStyleDeclItem oldDecl) throws DOMException {
-		return (ICSSStyleDeclItem) removeChild((CSSNodeImpl) oldDecl);
-	}
-
-	/**
-	 * Used to remove a CSS property if it has been explicitly set within this
-	 * declaration block.
-	 * 
-	 * @param propertyName
-	 *            The name of the CSS property. See the CSS property index.
-	 * @return Returns the value of the property if it has been explicitly set
-	 *         for this declaration block. Returns the empty string if the
-	 *         property has not been set or the property name does not
-	 *         correspond to a known CSS property.
-	 * @exception DOMException
-	 *                NO_MODIFICATION_ALLOWED_ERR: Raised if this declaration
-	 *                is readonly or the property is readonly.
-	 */
-	public String removeProperty(String propertyName) throws DOMException {
-		ICSSStyleDeclItem item = getDeclItemNode(propertyName);
-		if (item != null) {
-			removeChild((CSSNodeImpl) item);
-			return item.getCssText();
-		}
-		return null;
-	}
-
-	public ICSSStyleDeclItem setDeclItemNode(ICSSStyleDeclItem newDecl) throws DOMException {
-		if (newDecl == null)
-			return null;
-
-		ICSSStyleDeclItem item = getDeclItemNode(newDecl.getPropertyName());
-		if (item != null)
-			return (ICSSStyleDeclItem) replaceChild((CSSNodeImpl) newDecl, (CSSNodeImpl) item);
-		else
-			return (ICSSStyleDeclItem) appendChild((CSSNodeImpl) newDecl);
-	}
-
-	/**
-	 * Used to set a property value and priority within this declaration
-	 * block.
-	 * 
-	 * @param propertyName
-	 *            The name of the CSS property. See the CSS property index.
-	 * @param value
-	 *            The new value of the property.
-	 * @param priority
-	 *            The new priority of the property (e.g.
-	 *            <code>"important"</code>).
-	 * @exception DOMException
-	 *                SYNTAX_ERR: Raised if the specified value has a syntax
-	 *                error and is unparsable. <br>
-	 *                NO_MODIFICATION_ALLOWED_ERR: Raised if this declaration
-	 *                is readonly or the property is readonly.
-	 */
-	public void setProperty(String propertyName, String value, String priority) throws DOMException {
-		if (propertyName.equals("")) //$NON-NLS-1$
-			throw new DOMException(DOMException.NO_MODIFICATION_ALLOWED_ERR, ""); //$NON-NLS-1$
-
-		// You can use this only if CSSValue.setCssText() is implemented
-		CSSStyleDeclItemImpl item = (CSSStyleDeclItemImpl) getDeclItemNode(propertyName);
-		if (item == null) {
-			item = (CSSStyleDeclItemImpl) getOwnerDocument().createCSSStyleDeclItem(propertyName);
-			appendChild(item);
-		}
-
-		// ICSSNode next = item.getNextSibling();
-		// removeChild(item);
-
-		item.setCssValueText(value);
-		item.setPriority(priority);
-
-		// insertBefore(item, (CSSNodeImpl)next);
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/document/CSSStyleRuleImpl.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/document/CSSStyleRuleImpl.java
deleted file mode 100644
index 16add17..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/document/CSSStyleRuleImpl.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.wst.css.core.internal.document;
-
-
-
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSNode;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSSelectorList;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSStyleRule;
-import org.w3c.dom.DOMException;
-
-
-/**
- * 
- */
-class CSSStyleRuleImpl extends CSSRuleDeclContainer implements ICSSStyleRule {
-
-	ICSSSelectorList fSelectorList = new CSSSelectorListImpl(null);
-
-	/**
-	 * 
-	 */
-	CSSStyleRuleImpl() {
-		super();
-	}
-
-	CSSStyleRuleImpl(CSSStyleRuleImpl that) {
-		super(that);
-	}
-
-	public ICSSNode cloneNode(boolean deep) {
-		CSSStyleRuleImpl cloned = new CSSStyleRuleImpl(this);
-
-		if (deep)
-			cloneChildNodes(cloned, deep);
-
-		return cloned;
-	}
-
-	/**
-	 * @return java.lang.String
-	 */
-	String extractPreString() {
-		return getSelectorText();
-	}
-
-	/**
-	 * @return short
-	 */
-	public short getNodeType() {
-		return STYLERULE_NODE;
-	}
-
-	public ICSSSelectorList getSelectors() {
-		return fSelectorList;
-	}
-
-	/**
-	 * The textual representation of the selector for the rule set. The
-	 * implementation may have stripped out insignificant whitespace while
-	 * parsing the selector.
-	 * 
-	 * @exception DOMException
-	 *                SYNTAX_ERR: Raised if the specified CSS string value has
-	 *                a syntax error and is unparsable. <br>
-	 *                NO_MODIFICATION_ALLOWED_ERR: Raised if this rule is
-	 *                readonly.
-	 */
-	public String getSelectorText() {
-		return getAttribute(SELECTOR);
-	}
-
-	/**
-	 * The type of the rule, as defined above. The expectation is that
-	 * binding-specific casting methods can be used to cast down from an
-	 * instance of the <code>CSSRule</code> interface to the specific
-	 * derived interface implied by the <code>type</code>.
-	 */
-	public short getType() {
-		return STYLE_RULE;
-	}
-
-	/**
-	 * 
-	 */
-	public void setSelectorText(String selectorText) throws DOMException {
-		setAttribute(SELECTOR, selectorText);
-		fSelectorList = new CSSSelectorListImpl(selectorText);
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/document/CSSStyleSheetImpl.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/document/CSSStyleSheetImpl.java
deleted file mode 100644
index 50a2520..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/document/CSSStyleSheetImpl.java
+++ /dev/null
@@ -1,611 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this 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.core.internal.document;
-
-import java.util.Iterator;
-import java.util.List;
-import java.util.Vector;
-
-import org.eclipse.wst.css.core.internal.CSSCoreMessages;
-import org.eclipse.wst.css.core.internal.encoding.CSSDocumentLoader;
-import org.eclipse.wst.css.core.internal.provisional.adapters.IStyleSheetAdapter;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSCharsetRule;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSImportRule;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSMediaRule;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSModel;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSNode;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSPageRule;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSStyleDeclaration;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSStyleRule;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSStyleSheet;
-import org.eclipse.wst.css.core.internal.util.ImportRuleCollector;
-import org.eclipse.wst.sse.core.internal.provisional.text.IStructuredDocument;
-import org.eclipse.wst.sse.core.internal.util.Assert;
-import org.w3c.dom.DOMException;
-import org.w3c.dom.Document;
-import org.w3c.dom.Element;
-import org.w3c.dom.Node;
-import org.w3c.dom.NodeList;
-import org.w3c.dom.css.CSSFontFaceRule;
-import org.w3c.dom.css.CSSRule;
-import org.w3c.dom.css.CSSRuleList;
-import org.w3c.dom.css.CSSUnknownRule;
-import org.w3c.dom.stylesheets.MediaList;
-import org.w3c.dom.stylesheets.StyleSheet;
-import org.w3c.dom.stylesheets.StyleSheetList;
-
-/**
- * 
- */
-class CSSStyleSheetImpl extends CSSDocumentImpl implements ICSSStyleSheet {
-
-
-	class InternalNodeList implements NodeList {
-
-		Vector nodes = new Vector();
-
-		public int getLength() {
-			if (nodes == null)
-				return 0;
-			else
-				return nodes.size();
-		}
-
-		public Node item(int i) {
-			if (nodes == null)
-				return null;
-			if (i < 0 || nodes.size() <= i)
-				return null;
-			return (Node) nodes.get(i);
-		}
-	}
-
-	class InternalStyleSheetList extends AbstractCSSNodeList implements StyleSheetList {
-
-		public ICSSNode appendNode(ICSSNode node) {
-			if (nodes == null || !nodes.contains(node))
-				return super.appendNode(node);
-			else
-				return node;
-		}
-
-		public StyleSheet item(int i) {
-			return (StyleSheet) itemImpl(i);
-		}
-	}
-
-	private boolean fDisabled = false;
-
-	/**
-	 * 
-	 */
-	CSSStyleSheetImpl() {
-		super();
-		setOwnerDocument(this);
-	}
-
-	CSSStyleSheetImpl(CSSStyleSheetImpl that) {
-		super(that);
-		setOwnerDocument(this);
-	}
-
-	/**
-	 * @return org.w3c.dom.css.CSSRule
-	 * @param rule
-	 *            org.w3c.dom.css.CSSRule
-	 * @exception org.w3c.dom.DOMException
-	 *                The exception description.
-	 */
-	public org.w3c.dom.css.CSSRule appendRule(org.w3c.dom.css.CSSRule rule) throws org.w3c.dom.DOMException {
-		if (rule == null)
-			return null;
-
-		CSSRule ret = (CSSRule) appendChild((CSSNodeImpl) rule);
-		return ret;
-	}
-
-	public ICSSNode cloneNode(boolean deep) {
-		CSSStyleSheetImpl cloned = new CSSStyleSheetImpl(this);
-
-		if (deep)
-			cloneChildNodes(cloned, deep);
-
-		return cloned;
-	}
-
-	/**
-	 * @return org.w3c.dom.css.CSSCharsetRule
-	 */
-	public ICSSCharsetRule createCSSCharsetRule() {
-		CSSCharsetRuleImpl rule = new CSSCharsetRuleImpl();
-		rule.setOwnerDocument(this);
-		return rule;
-	}
-
-	/**
-	 * @return org.w3c.dom.css.CSSFontFaceRule
-	 */
-	public CSSFontFaceRule createCSSFontFaceRule() {
-		CSSFontFaceRuleImpl rule = new CSSFontFaceRuleImpl();
-		CSSStyleDeclarationImpl style = (CSSStyleDeclarationImpl) createCSSStyleDeclaration();
-
-		rule.appendChild(style);
-		rule.setOwnerDocument(this);
-
-		return rule;
-	}
-
-	/**
-	 * @return org.w3c.dom.css.CSSImportRule
-	 */
-	public ICSSImportRule createCSSImportRule() {
-		CSSImportRuleImpl rule = new CSSImportRuleImpl();
-		MediaListImpl media = (MediaListImpl) createMediaList();
-
-		rule.appendChild(media);
-		rule.setOwnerDocument(this);
-
-		return rule;
-	}
-
-	/**
-	 * @return org.w3c.dom.css.ICSSMediaRule
-	 */
-	public ICSSMediaRule createCSSMediaRule() {
-		CSSMediaRuleImpl rule = new CSSMediaRuleImpl();
-		MediaListImpl media = (MediaListImpl) createMediaList();
-
-		rule.insertBefore(media, (CSSNodeImpl) rule.getFirstChild()); // media
-																		// must
-																		// be
-																		// the
-																		// top
-																		// of
-																		// children
-																		// list
-		rule.setOwnerDocument(this);
-
-		return rule;
-	}
-
-	/**
-	 * @return org.w3c.dom.css.CSSPageRule
-	 */
-	public ICSSPageRule createCSSPageRule() {
-		CSSPageRuleImpl rule = new CSSPageRuleImpl();
-		CSSStyleDeclarationImpl style = (CSSStyleDeclarationImpl) createCSSStyleDeclaration();
-
-		rule.appendChild(style);
-		rule.setOwnerDocument(this);
-
-		return rule;
-	}
-
-	/**
-	 * @return org.w3c.dom.css.CSSRule
-	 * @param rule
-	 *            java.lang.String
-	 */
-	public CSSRule createCSSRule(String rule) {
-		CSSDocumentLoader loader = new CSSDocumentLoader();
-		IStructuredDocument structuredDocument = (IStructuredDocument) loader.createNewStructuredDocument();
-		structuredDocument.set(rule);
-
-		CSSModelParser modelParser = new CSSModelParser((CSSDocumentImpl) getOwnerDocument());
-		return modelParser.createCSSRule(structuredDocument.getRegionList());
-	}
-
-	/**
-	 * @return org.w3c.dom.css.CSSStyleDeclaration
-	 */
-	public ICSSStyleDeclaration createCSSStyleDeclaration() {
-		CSSStyleDeclarationImpl decl = new CSSStyleDeclarationImpl(false);
-		decl.setOwnerDocument(this);
-
-		return decl;
-	}
-
-	/**
-	 * @return org.w3c.dom.css.CSSStyleRule
-	 */
-	public ICSSStyleRule createCSSStyleRule() {
-		CSSStyleRuleImpl rule = new CSSStyleRuleImpl();
-		CSSStyleDeclarationImpl style = (CSSStyleDeclarationImpl) createCSSStyleDeclaration();
-
-		rule.appendChild(style);
-		rule.setOwnerDocument(this);
-
-		return rule;
-	}
-
-	/**
-	 * @return org.w3c.dom.css.CSSUnknownRule
-	 */
-	public CSSUnknownRule createCSSUnknownRule() {
-		CSSUnknownRuleImpl rule = new CSSUnknownRuleImpl();
-		rule.setOwnerDocument(this);
-
-		return rule;
-	}
-
-	/**
-	 * @return org.w3c.dom.stylesheets.MediaList
-	 */
-	public MediaList createMediaList() {
-		MediaListImpl media = new MediaListImpl();
-		media.setOwnerDocument(this);
-
-		return media;
-	}
-
-	/**
-	 * Used to delete a rule from the style sheet.
-	 * 
-	 * @param index
-	 *            The index within the style sheet's rule list of the rule to
-	 *            remove.
-	 * @exception DOMException
-	 *                INDEX_SIZE_ERR: Raised if the specified index does not
-	 *                correspond to a rule in the style sheet's rule list.
-	 *                <br>
-	 *                NO_MODIFICATION_ALLOWED_ERR: Raised if this style sheet
-	 *                is readonly.
-	 */
-	public void deleteRule(int index) throws DOMException {
-		CSSNodeImpl node = getIndexedRule(index);
-		if (node != null)
-			removeChild(node);
-	}
-
-	/**
-	 * The list of all CSS rules contained within the style sheet. This
-	 * includes both rule sets and at-rules.
-	 */
-	public CSSRuleList getCssRules() {
-		CSSRuleListImpl list = new CSSRuleListImpl();
-
-		for (ICSSNode node = getFirstChild(); node != null; node = node.getNextSibling()) {
-			if (node instanceof CSSRule) {
-				list.appendNode(node);
-			}
-		}
-
-		return list;
-	}
-
-	/**
-	 * <code>false</code> if the style sheet is applied to the document.
-	 * <code>true</code> if it is not. Modifying this attribute may cause a
-	 * new resolution of style for the document. A stylesheet only applies if
-	 * both an appropriate medium definition is present and the disabled
-	 * attribute is false. So, if the media doesn't apply to the current user
-	 * agent, the <code>disabled</code> attribute is ignored.
-	 */
-	public boolean getDisabled() {
-		return fDisabled;
-	}
-
-	/**
-	 * If the style sheet is a linked style sheet, the value of its attribute
-	 * is its location. For inline style sheets, the value of this attribute
-	 * is <code>null</code>. See the href attribute definition for the
-	 * <code>LINK</code> element in HTML 4.0, and the href pseudo-attribute
-	 * for the XML style sheet processing instruction.
-	 */
-	public String getHref() {
-		ICSSModel model = getModel();
-		if (model != null && model.getStyleSheetType() == ICSSModel.EXTERNAL) {
-			return model.getBaseLocation();
-			/*
-			 * Object id = model.getId(); if (id != null) { if (id instanceof
-			 * IResource) { // TODO: need to check whether this is correct or
-			 * not, later. return ((IResource)id).getFullPath().toString(); }
-			 * return id.toString(); }
-			 */}
-		return null;
-	}
-
-	CSSRuleImpl getIndexedRule(int index) {
-		if (index < 0)
-			return null;
-
-		int i = 0;
-		for (ICSSNode node = getFirstChild(); node != null; node = node.getNextSibling()) {
-			if (node instanceof CSSRule) {
-				if (i++ == index)
-					return (CSSRuleImpl) node;
-			}
-		}
-		return null;
-	}
-
-	/**
-	 * The intended destination media for style information. The media is
-	 * often specified in the <code>ownerNode</code>. If no media has been
-	 * specified, the <code>MediaList</code> will be empty. See the media
-	 * attribute definition for the <code>LINK</code> element in HTML 4.0,
-	 * and the media pseudo-attribute for the XML style sheet processing
-	 * instruction . Modifying the media list may cause a change to the
-	 * attribute <code>disabled</code>.
-	 */
-	public MediaList getMedia() {
-		return null;
-	}
-
-	/**
-	 * @return short
-	 */
-	public short getNodeType() {
-		return STYLESHEET_NODE;
-	}
-
-	/**
-	 * The node that associates this style sheet with the document. For HTML,
-	 * this may be the corresponding <code>LINK</code> or <code>STYLE</code>
-	 * element. For XML, it may be the linking processing instruction. For
-	 * style sheets that are included by other style sheets, the value of this
-	 * attribute is <code>null</code>.
-	 */
-	public Node getOwnerNode() {
-		// for <LINK> tag or <STYLE> tag
-		ICSSModel model = getModel();
-		if (model != null)
-			return model.getOwnerDOMNode();
-		return null;
-	}
-
-	/**
-	 * @return org.w3c.dom.NodeList
-	 */
-	public org.w3c.dom.NodeList getOwnerNodes() {
-		List list = (getModel().getStyleListeners() != null) ? new Vector(getModel().getStyleListeners()) : null;
-		if (list == null)
-			return null;
-		InternalNodeList nodes = new InternalNodeList();
-		Iterator it = list.iterator();
-		while (it.hasNext()) {
-			Object obj = it.next();
-			if (obj instanceof IStyleSheetAdapter) {
-				nodes.nodes.add(((IStyleSheetAdapter) obj).getElement());
-			}
-		}
-		if (nodes.getLength() > 0)
-			return nodes;
-		else
-			return null;
-	}
-
-	/**
-	 * @return org.w3c.dom.NodeList
-	 * @param doc
-	 *            org.w3c.dom.Document
-	 */
-	public NodeList getOwnerNodes(Document doc) {
-		List list = (getModel().getStyleListeners() != null) ? new Vector(getModel().getStyleListeners()) : null;
-		if (list == null)
-			return null;
-		InternalNodeList nodes = new InternalNodeList();
-		Iterator it = list.iterator();
-		while (it.hasNext()) {
-			Object obj = it.next();
-			if (obj instanceof IStyleSheetAdapter) {
-				Element ele = ((IStyleSheetAdapter) obj).getElement();
-				if (ele.getOwnerDocument() == doc)
-					nodes.nodes.add(ele);
-			}
-		}
-		if (nodes.getLength() > 0)
-			return nodes;
-		else
-			return null;
-	}
-
-	/**
-	 * If this style sheet comes from an <code>@import</code> rule, the <code>ownerRule</code> attribute will
-	 *         contain the <code>CSSImportRule</code>. In that case, the
-	 *         <code>ownerNode</code> attribute in the
-	 *         <code>StyleSheet</code> interface will be <code>null</code>.
-	 *         If the style sheet comes from an element or a processing
-	 *         instruction, the <code>ownerRule</code> attribute will be
-	 *         <code>null</code> and the <code>ownerNode</code> attribute
-	 *         will contain the <code>Node</code>.
-	 */
-	public CSSRule getOwnerRule() {
-		Assert.isTrue(false, CSSCoreMessages.You_cannot_use_CSSStyleShe_UI_); //$NON-NLS-1$ = "You cannot use CSSStyleSheet.getOwnerRule() because of many referencers of this rule\nPlease use getOnwerRules()"
-		// for @import
-		return null;
-	}
-
-	/**
-	 * @return org.w3c.dom.css.CSSRuleList
-	 */
-	public org.w3c.dom.css.CSSRuleList getOwnerRules() {
-		StyleSheetList list = getParentStyleSheets();
-		if (list == null)
-			return null;
-		CSSRuleListImpl ruleList = new CSSRuleListImpl();
-		for (int i = 0; i < list.getLength(); i++) {
-			ImportRuleCollector trav = new ImportRuleCollector(this);
-			trav.apply((ICSSStyleSheet) list.item(i));
-			ruleList.nodes.addAll(trav.getRules());
-		}
-		return ruleList;
-	}
-
-	/**
-	 * For style sheet languages that support the concept of style sheet
-	 * inclusion, this attribute represents the including style sheet, if one
-	 * exists. If the style sheet is a top-level style sheet, or the style
-	 * sheet language does not support inclusion, the value of this attribute
-	 * is <code>null</code>.
-	 */
-	public StyleSheet getParentStyleSheet() {
-		CSSRule owner = getOwnerRule();
-		if (owner != null)
-			return owner.getParentStyleSheet();
-		return null;
-	}
-
-	/**
-	 * @return org.w3c.dom.stylesheets.StyleSheetList
-	 */
-	public org.w3c.dom.stylesheets.StyleSheetList getParentStyleSheets() {
-		List list = (getModel().getStyleListeners() != null) ? new Vector(getModel().getStyleListeners()) : null;
-		if (list == null)
-			return null;
-		InternalStyleSheetList sheets = new InternalStyleSheetList();
-		Iterator it = list.iterator();
-		while (it.hasNext()) {
-			Object obj = it.next();
-			if (obj instanceof ICSSModel) {
-				sheets.appendNode(((ICSSModel) obj).getDocument());
-			}
-		}
-		if (sheets.getLength() > 0)
-			return sheets;
-		else
-			return null;
-	}
-
-	/**
-	 * The advisory title. The title is often specified in the
-	 * <code>ownerNode</code>. See the title attribute definition for the
-	 * <code>LINK</code> element in HTML 4.0, and the title pseudo-attribute
-	 * for the XML style sheet processing instruction.
-	 */
-	public String getTitle() {
-		Node node = getOwnerNode();
-		if (node instanceof Element) {
-			return ((Element) node).getAttribute("TITLE");//$NON-NLS-1$
-		}
-		return null;
-	}
-
-	/**
-	 * This specifies the style sheet language for this style sheet. The style
-	 * sheet language is specified as a content type (e.g. "text/css"). The
-	 * content type is often specified in the <code>ownerNode</code>. Also
-	 * see the type attribute definition for the <code>LINK</code> element
-	 * in HTML 4.0, and the type pseudo-attribute for the XML style sheet
-	 * processing instruction.
-	 */
-	public String getType() {
-		Node node = getOwnerNode();
-		if (node instanceof Element) {
-			return ((Element) node).getAttribute("TYPE");//$NON-NLS-1$
-		}
-		return null;
-	}
-
-	/**
-	 * Used to insert a new rule into the style sheet. The new rule now
-	 * becomes part of the cascade.
-	 * 
-	 * @param rule
-	 *            The parsable text representing the rule. For rule sets this
-	 *            contains both the selector and the style declaration. For
-	 *            at-rules, this specifies both the at-identifier and the rule
-	 *            content.
-	 * @param index
-	 *            The index within the style sheet's rule list of the rule
-	 *            before which to insert the specified rule. If the specified
-	 *            index is equal to the length of the style sheet's rule
-	 *            collection, the rule will be added to the end of the style
-	 *            sheet.
-	 * @return The index within the style sheet's rule collection of the newly
-	 *         inserted rule.
-	 * @exception DOMException
-	 *                HIERARCHY_REQUEST_ERR: Raised if the rule cannot be
-	 *                inserted at the specified index e.g. if an
-	 *                <code>@import</code> rule is inserted after a standard rule set or other
-	 *         at-rule. <br>
-	 *         INDEX_SIZE_ERR: Raised if the specified index is not a valid
-	 *         insertion point. <br>
-	 *         NO_MODIFICATION_ALLOWED_ERR: Raised if this style sheet is
-	 *         readonly. <br>
-	 *         SYNTAX_ERR: Raised if the specified rule has a syntax error and
-	 *         is unparsable.
-	 */
-	public int insertRule(String rule, int index) throws DOMException {
-		int length = getCssRules().getLength();
-		if (index < 0 || length < index)
-			throw new DOMException(DOMException.INDEX_SIZE_ERR, "");//$NON-NLS-1$
-
-		IStructuredDocument doc = getModel().getStructuredDocument();
-		CSSRuleImpl refRule = (length != index) ? getIndexedRule(index) : null;
-		int offset = (refRule != null) ? refRule.getStartOffset() : doc.getLength();
-		doc.replaceText(this, offset, 0, rule);
-
-		// insertBefore((CSSNodeImpl) createCSSRule(rule),refRule);
-		return index;
-	}
-
-	/**
-	 * @return org.w3c.dom.css.CSSRule
-	 * @param newRule
-	 *            org.w3c.dom.css.CSSRule
-	 * @param refRule
-	 *            org.w3c.dom.css.CSSRule
-	 */
-	public org.w3c.dom.css.CSSRule insertRuleBefore(org.w3c.dom.css.CSSRule newRule, org.w3c.dom.css.CSSRule refRule) throws org.w3c.dom.DOMException {
-		if (newRule == null && refRule == null)
-			return null;
-
-		CSSRule ret = (CSSRule) insertBefore((CSSNodeImpl) newRule, (CSSNodeImpl) refRule);
-		return ret;
-	}
-
-	/**
-	 * @return boolean
-	 */
-	public boolean isDocument() {
-		return true;
-	}
-
-	/**
-	 * @return org.w3c.dom.css.CSSRule
-	 * @param rule
-	 *            org.w3c.dom.css.CSSRule
-	 * @exception org.w3c.dom.DOMException
-	 *                The exception description.
-	 */
-	public org.w3c.dom.css.CSSRule removeRule(org.w3c.dom.css.CSSRule rule) throws org.w3c.dom.DOMException {
-		if (rule == null)
-			return null;
-
-		CSSRule ret = (CSSRule) removeChild((CSSNodeImpl) rule);
-		return ret;
-	}
-
-	/**
-	 * @return org.w3c.dom.css.CSSRule
-	 * @param newChild
-	 *            org.w3c.dom.css.CSSRule
-	 * @param oldChild
-	 *            org.w3c.dom.css.CSSRule
-	 * @exception org.w3c.dom.DOMException
-	 *                The exception description.
-	 */
-	public org.w3c.dom.css.CSSRule replaceRule(org.w3c.dom.css.CSSRule newRule, org.w3c.dom.css.CSSRule oldRule) throws org.w3c.dom.DOMException {
-		if (newRule == null && oldRule == null)
-			return null;
-
-		CSSRule ret = (CSSRule) replaceChild((CSSNodeImpl) newRule, (CSSNodeImpl) oldRule);
-		return ret;
-	}
-
-	/**
-	 * setDisabled method comment.
-	 */
-	public void setDisabled(boolean disabled) {
-		this.fDisabled = disabled;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/document/CSSUnknownRuleImpl.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/document/CSSUnknownRuleImpl.java
deleted file mode 100644
index b68da6b..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/document/CSSUnknownRuleImpl.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.css.core.internal.document;
-
-
-
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSNode;
-import org.w3c.dom.css.CSSUnknownRule;
-
-
-/**
- * 
- */
-class CSSUnknownRuleImpl extends CSSRuleImpl implements CSSUnknownRule {
-
-	// TODO: This field is never read
-	String fCssText = null;
-
-	/**
-	 * 
-	 */
-	CSSUnknownRuleImpl() {
-		super();
-	}
-
-	CSSUnknownRuleImpl(CSSUnknownRuleImpl that) {
-		super(that);
-	}
-
-	public ICSSNode cloneNode(boolean deep) {
-		CSSUnknownRuleImpl cloned = new CSSUnknownRuleImpl(this);
-
-		return cloned;
-	}
-
-	/**
-	 * @return short
-	 */
-	public short getNodeType() {
-		return UNKNOWNRULE_NODE;
-	}
-
-	/**
-	 * The type of the rule, as defined above. The expectation is that
-	 * binding-specific casting methods can be used to cast down from an
-	 * instance of the <code>CSSRule</code> interface to the specific
-	 * derived interface implied by the <code>type</code>.
-	 */
-	public short getType() {
-		return UNKNOWN_RULE;
-	}
-
-	/**
-	 * @param cssText
-	 *            java.lang.String
-	 */
-	public void setCssText(String cssText) {
-		this.fCssText = cssText;
-
-		super.setCssText(cssText);
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/document/CounterImpl.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/document/CounterImpl.java
deleted file mode 100644
index 106ae66..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/document/CounterImpl.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.core.internal.document;
-
-
-
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSNode;
-import org.eclipse.wst.css.core.internal.provisional.document.ICounter;
-import org.w3c.dom.DOMException;
-import org.w3c.dom.css.Counter;
-
-
-/**
- * 
- */
-class CounterImpl extends CSSPrimitiveContainer implements ICounter {
-
-	/**
-	 * 
-	 */
-	CounterImpl() {
-		super(CSS_COUNTER);
-	}
-
-	CounterImpl(CounterImpl that) {
-		super(that);
-	}
-
-	/**
-	 * @return org.eclipse.wst.css.core.model.interfaces.ICSSNode
-	 * @param deep
-	 *            boolean
-	 */
-	public ICSSNode cloneNode(boolean deep) {
-		CounterImpl cloned = new CounterImpl(this);
-
-		if (deep)
-			cloneChildNodes(cloned, deep);
-
-		return cloned;
-	}
-
-	/**
-	 * This method is used to get the Counter value. If this CSS value doesn't
-	 * contain a counter value, a <code>DOMException</code> is raised.
-	 * Modification to the corresponding style property can be achieved using
-	 * the <code>Counter</code> interface.
-	 * 
-	 * @return The Counter value.
-	 * @exception DOMException
-	 *                INVALID_ACCESS_ERR: Raised if the CSS value doesn't
-	 *                contain a Counter value (e.g. this is not
-	 *                <code>CSS_COUNTER</code>).
-	 */
-	public Counter getCounterValue() throws DOMException {
-		return this;
-	}
-
-	/**
-	 * This attribute is used for the identifier of the counter.
-	 */
-	public String getIdentifier() {
-		return getAttribute(IDENTIFIER);
-	}
-
-	/**
-	 * This attribute is used for the style of the list.
-	 */
-	public String getListStyle() {
-		return getAttribute(LISTSTYLE);
-	}
-
-	/**
-	 * This attribute is used for the separator of the nested counters.
-	 */
-	public String getSeparator() {
-		return getAttribute(SEPARATOR);
-	}
-
-	/**
-	 * 
-	 */
-	protected void initPrimitives() {
-		return;
-	}
-
-	/**
-	 * @param identifier
-	 *            java.lang.String
-	 * @exception org.w3c.dom.DOMException
-	 *                The exception description.
-	 */
-	public void setIdentifier(String identifier) throws DOMException {
-		setAttribute(IDENTIFIER, identifier);
-	}
-
-	/**
-	 * @param listStyle
-	 *            java.lang.String
-	 * @exception org.w3c.dom.DOMException
-	 *                The exception description.
-	 */
-	public void setListStyle(String listStyle) throws DOMException {
-		setAttribute(LISTSTYLE, listStyle);
-	}
-
-	/**
-	 * @param Separator
-	 *            java.lang.String
-	 * @exception org.w3c.dom.DOMException
-	 *                The exception description.
-	 */
-	public void setSeparator(String Separator) throws org.w3c.dom.DOMException {
-		setAttribute(SEPARATOR, Separator);
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/document/DOMCSSImpl.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/document/DOMCSSImpl.java
deleted file mode 100644
index d428a5a..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/document/DOMCSSImpl.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.css.core.internal.document;
-
-
-
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSStyleDeclaration;
-import org.w3c.dom.css.CSSStyleSheet;
-
-
-/**
- * 
- */
-public class DOMCSSImpl {
-
-	/**
-	 * DOMCSSImpl constructor comment.
-	 */
-	public DOMCSSImpl() {
-		super();
-	}
-
-	public static ICSSStyleDeclaration createCSSStyleDeclaration() throws org.w3c.dom.DOMException {
-		CSSStyleDeclarationImpl document = new CSSStyleDeclarationImpl(true);
-
-		return document;
-	}
-
-	/**
-	 * @return org.w3c.dom.css.CSSStyleSheet
-	 * @param title
-	 *            java.lang.String
-	 * @param media
-	 *            java.lang.String
-	 * @exception org.w3c.dom.DOMException
-	 *                The exception description.
-	 */
-	public static CSSStyleSheet createCSSStyleSheet(String title, String media) throws org.w3c.dom.DOMException {
-		return new CSSStyleSheetImpl();
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/document/MediaListImpl.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/document/MediaListImpl.java
deleted file mode 100644
index d5ffb6b..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/document/MediaListImpl.java
+++ /dev/null
@@ -1,155 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this 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.core.internal.document;
-
-
-
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSNode;
-import org.w3c.dom.DOMException;
-import org.w3c.dom.stylesheets.MediaList;
-
-
-/**
- * 
- */
-class MediaListImpl extends CSSRegionContainer implements MediaList {
-
-	int mediumCounter;
-
-	/**
-	 * MediaListImpl constructor comment.
-	 */
-	MediaListImpl() {
-		super();
-	}
-
-	/**
-	 * MediaListImpl constructor comment.
-	 */
-	MediaListImpl(MediaListImpl that) {
-		super(that);
-	}
-
-	/**
-	 * Adds the medium <code>newMedium</code> to the end of the list. If the
-	 * <code>newMedium</code> is already used, it is first removed.
-	 * 
-	 * @param newMediumThe
-	 *            new medium to add.
-	 * @exception DOMException
-	 *                INVALID_CHARACTER_ERR: If the medium contains characters
-	 *                that are invalid in the underlying style language. <br>
-	 *                NO_MODIFICATION_ALLOWED_ERR: Raised if this list is
-	 *                readonly.
-	 */
-	public void appendMedium(String newMedium) throws DOMException {
-		if (newMedium == null)
-			return;
-
-		CSSNodeListImpl m = getMedia();
-		for (int i = 0; i != m.getLength(); i++) {
-			if (newMedium.equals(item(i)))
-				return;
-		}
-
-		setAttribute("medium" + Integer.toString(mediumCounter++), newMedium);//$NON-NLS-1$
-	}
-
-	public ICSSNode cloneNode(boolean deep) {
-		MediaListImpl cloned = new MediaListImpl(this);
-		return cloned;
-	}
-
-	/**
-	 * Deletes the medium indicated by <code>oldMedium</code> from the list.
-	 * 
-	 * @param oldMediumThe
-	 *            medium to delete in the media list.
-	 * @exception DOMException
-	 *                NO_MODIFICATION_ALLOWED_ERR: Raised if this list is
-	 *                readonly. <br>
-	 *                NOT_FOUND_ERR: Raised if <code>oldMedium</code> is not
-	 *                in the list.
-	 */
-	public void deleteMedium(String oldMedium) throws DOMException {
-		for (int i = 0; i != getLength(); i++) {
-			if (oldMedium.equals(item(i))) {
-				removeAttributeNode((CSSAttrImpl) fAttrs.item(i));
-			}
-		}
-	}
-
-	/**
-	 * The number of media in the list. The range of valid media is
-	 * <code>0</code> to <code>length-1</code> inclusive.
-	 */
-	public int getLength() {
-		return getMedia().getLength();
-	}
-
-	/**
-	 * @return CSSNodeListImpl
-	 */
-	CSSNodeListImpl getMedia() {
-		if (fAttrs == null)
-			fAttrs = new CSSNamedNodeMapImpl();
-		return fAttrs;
-	}
-
-	/**
-	 * The parsable textual representation of the media list. This is a
-	 * comma-separated list of media.
-	 * 
-	 * @exception DOMException
-	 *                SYNTAX_ERR: Raised if the specified string value has a
-	 *                syntax error and is unparsable. <br>
-	 *                NO_MODIFICATION_ALLOWED_ERR: Raised if this media list
-	 *                is readonly.
-	 */
-	public String getMediaText() {
-		return getCssText();
-	}
-
-	/**
-	 * Insert the method's description here. Creation date: (2001/01/17
-	 * 18:50:29)
-	 * 
-	 * @return short
-	 */
-	public short getNodeType() {
-		return MEDIALIST_NODE;
-	}
-
-	/**
-	 * Returns the <code>index</code> th in the list. If <code>index</code>
-	 * is greater than or equal to the number of media in the list, this
-	 * returns <code>null</code>.
-	 * 
-	 * @param index
-	 *            Index into the collection.
-	 * @return The medium at the <code>index</code> th position in the
-	 *         <code>MediaList</code>, or <code>null</code> if that is
-	 *         not a valid index.
-	 */
-	public String item(int index) {
-		if (index < 0 || getLength() <= index)
-			return null;
-
-		return ((CSSAttrImpl) getMedia().item(index)).getValue();
-	}
-
-	/**
-	 * setMediaText method comment.
-	 */
-	public void setMediaText(String mediaText) throws DOMException {
-		setCssText(mediaText);
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/document/RGBColorImpl.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/document/RGBColorImpl.java
deleted file mode 100644
index 87d4b84..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/document/RGBColorImpl.java
+++ /dev/null
@@ -1,104 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this 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.core.internal.document;
-
-
-
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSNode;
-import org.w3c.dom.css.CSSPrimitiveValue;
-import org.w3c.dom.css.RGBColor;
-
-
-/**
- * 
- */
-class RGBColorImpl extends CSSPrimitiveContainer implements RGBColor {
-
-	private CSSPrimitiveValueImpl fRed;
-	private CSSPrimitiveValueImpl fGreen;
-	private CSSPrimitiveValueImpl fBlue;
-
-	/**
-	 * 
-	 */
-	RGBColorImpl() {
-		super(CSS_RGBCOLOR);
-	}
-
-	RGBColorImpl(RGBColorImpl that) {
-		super(that);
-
-		fRed = new CSSPrimitiveValueImpl(that.fRed);
-		appendChild(fRed);
-
-		fGreen = new CSSPrimitiveValueImpl(that.fGreen);
-		appendChild(fGreen);
-
-		fBlue = new CSSPrimitiveValueImpl(that.fBlue);
-		appendChild(fBlue);
-	}
-
-	/**
-	 * @return org.eclipse.wst.css.core.model.interfaces.ICSSNode
-	 * @param deep
-	 *            boolean
-	 */
-	public ICSSNode cloneNode(boolean deep) {
-		RGBColorImpl cloned = new RGBColorImpl(this);
-
-		return cloned;
-	}
-
-	/**
-	 * This attribute is used for the blue value of the RGB color.
-	 */
-	public CSSPrimitiveValue getBlue() {
-		return fBlue;
-	}
-
-	/**
-	 * This attribute is used for the green value of the RGB color.
-	 */
-	public CSSPrimitiveValue getGreen() {
-		return fGreen;
-	}
-
-	/**
-	 * This attribute is used for the red value of the RGB color.
-	 */
-	public CSSPrimitiveValue getRed() {
-		return fRed;
-	}
-
-	/**
-	 * @return org.w3c.dom.css.RGBColor
-	 * @exception org.w3c.dom.DOMException
-	 *                The exception description.
-	 */
-	public RGBColor getRGBColorValue() throws org.w3c.dom.DOMException {
-		return this;
-	}
-
-	/**
-	 * 
-	 */
-	protected void initPrimitives() {
-
-		fRed = (CSSPrimitiveValueImpl) getOwnerDocument().createCSSPrimitiveValue(CSS_NUMBER);
-		appendChild(fRed);
-
-		fGreen = (CSSPrimitiveValueImpl) getOwnerDocument().createCSSPrimitiveValue(CSS_NUMBER);
-		appendChild(fGreen);
-
-		fBlue = (CSSPrimitiveValueImpl) getOwnerDocument().createCSSPrimitiveValue(CSS_NUMBER);
-		appendChild(fBlue);
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/document/RectImpl.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/document/RectImpl.java
deleted file mode 100644
index afcc2d9..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/document/RectImpl.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.wst.css.core.internal.document;
-
-
-
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSNode;
-import org.w3c.dom.css.CSSPrimitiveValue;
-import org.w3c.dom.css.Rect;
-
-
-/**
- * 
- */
-class RectImpl extends CSSPrimitiveContainer implements Rect {
-
-	private CSSPrimitiveValueImpl fTop;
-	private CSSPrimitiveValueImpl fRight;
-	private CSSPrimitiveValueImpl fBottom;
-	private CSSPrimitiveValueImpl fLeft;
-
-	/**
-	 * 
-	 */
-	RectImpl() {
-		super(CSS_RECT);
-	}
-
-	RectImpl(RectImpl that) {
-		super(that);
-
-		fTop = new CSSPrimitiveValueImpl(that.fTop);
-		appendChild(fTop);
-
-		fRight = new CSSPrimitiveValueImpl(that.fRight);
-		appendChild(fRight);
-
-		fBottom = new CSSPrimitiveValueImpl(that.fBottom);
-		appendChild(fBottom);
-
-		fLeft = new CSSPrimitiveValueImpl(that.fLeft);
-		appendChild(fLeft);
-	}
-
-	/**
-	 * @return org.eclipse.wst.css.core.model.interfaces.ICSSNode
-	 * @param deep
-	 *            boolean
-	 */
-	public ICSSNode cloneNode(boolean deep) {
-		RectImpl cloned = new RectImpl(this);
-
-		return cloned;
-	}
-
-	/**
-	 * This attribute is used for the bottom of the rect.
-	 */
-	public CSSPrimitiveValue getBottom() {
-		return fBottom;
-	}
-
-	/**
-	 * This attribute is used for the left of the rect.
-	 */
-	public CSSPrimitiveValue getLeft() {
-		return fLeft;
-	}
-
-	/**
-	 * @return org.w3c.dom.css.Rect
-	 * @exception org.w3c.dom.DOMException
-	 *                The exception description.
-	 */
-	public Rect getRectValue() throws org.w3c.dom.DOMException {
-		return this;
-	}
-
-	/**
-	 * This attribute is used for the right of the rect.
-	 */
-	public CSSPrimitiveValue getRight() {
-		return fRight;
-	}
-
-	/**
-	 * This attribute is used for the top of the rect.
-	 */
-	public CSSPrimitiveValue getTop() {
-		return fTop;
-	}
-
-	/**
-	 * 
-	 */
-	protected void initPrimitives() {
-
-		fTop = (CSSPrimitiveValueImpl) getOwnerDocument().createCSSPrimitiveValue(CSS_NUMBER);
-		appendChild(fTop);
-
-		fRight = (CSSPrimitiveValueImpl) getOwnerDocument().createCSSPrimitiveValue(CSS_NUMBER);
-		appendChild(fRight);
-
-		fBottom = (CSSPrimitiveValueImpl) getOwnerDocument().createCSSPrimitiveValue(CSS_NUMBER);
-		appendChild(fBottom);
-
-		fLeft = (CSSPrimitiveValueImpl) getOwnerDocument().createCSSPrimitiveValue(CSS_NUMBER);
-		appendChild(fLeft);
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/document/StyleSheetListImpl.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/document/StyleSheetListImpl.java
deleted file mode 100644
index fea1bfc..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/document/StyleSheetListImpl.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.wst.css.core.internal.document;
-
-
-
-import org.w3c.dom.stylesheets.StyleSheet;
-import org.w3c.dom.stylesheets.StyleSheetList;
-
-/**
- * 
- */
-class StyleSheetListImpl extends AbstractCSSNodeList implements StyleSheetList {
-
-	/**
-	 * StyleSheetListImpl constructor comment.
-	 */
-	StyleSheetListImpl() {
-		super();
-	}
-
-	/**
-	 * Used to retrieve a style sheet by ordinal index. If index is greater
-	 * than or equal to the number of style sheets in the list, this returns
-	 * <code>null</code>.
-	 * 
-	 * @param indexIndex
-	 *            into the collection
-	 * @return The style sheet at the <code>index</code> position in the
-	 *         <code>StyleSheetList</code>, or <code>null</code> if that
-	 *         is not a valid index.
-	 */
-	public StyleSheet item(int index) {
-		return (StyleSheet) itemImpl(index);
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/encoding/CSSDocumentCharsetDetector.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/encoding/CSSDocumentCharsetDetector.java
deleted file mode 100644
index 62034c5..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/encoding/CSSDocumentCharsetDetector.java
+++ /dev/null
@@ -1,126 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this 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.core.internal.encoding;
-
-import java.util.Iterator;
-
-import org.eclipse.jface.text.IDocument;
-import org.eclipse.wst.css.core.internal.contenttype.CSSResourceEncodingDetector;
-import org.eclipse.wst.css.core.internal.parserz.CSSRegionContexts;
-import org.eclipse.wst.sse.core.internal.document.DocumentReader;
-import org.eclipse.wst.sse.core.internal.document.IDocumentCharsetDetector;
-import org.eclipse.wst.sse.core.internal.provisional.text.IStructuredDocument;
-import org.eclipse.wst.sse.core.internal.provisional.text.IStructuredDocumentRegion;
-import org.eclipse.wst.sse.core.internal.provisional.text.IStructuredDocumentRegionList;
-import org.eclipse.wst.sse.core.internal.provisional.text.ITextRegion;
-import org.eclipse.wst.sse.core.internal.provisional.text.ITextRegionList;
-import org.eclipse.wst.sse.core.internal.util.StringUtils;
-
-
-public class CSSDocumentCharsetDetector extends CSSResourceEncodingDetector implements IDocumentCharsetDetector {
-
-	public String getEncodingName(IStructuredDocument structuredDocument) {
-		String result = null;
-		// if the document is empty, then there will be no nodes,
-		// so no need to continue.
-		IStructuredDocumentRegionList nodes = structuredDocument.getRegionList();
-		if (nodes.getLength() > 0) {
-			IStructuredDocumentRegion node = null;
-			// skip any initial whitespace
-			// Note that @charset "encodingname";
-			// must appear at very beginning of document,
-			// to be valid.
-			// May have to test with "damaged" files (e.g.
-			// beginning EOLs, etc., to verify this works
-			// as expected.
-			for (int i = 0; i < nodes.getLength(); i++) {
-				node = nodes.item(i);
-				if (getType(node) != CSSRegionContexts.CSS_S) {
-					break;
-				}
-			}
-			Iterator regions = node.getRegions().iterator();
-			ITextRegion region = getNextRegionOfType(CSSRegionContexts.CSS_CHARSET, regions);
-			if (region != null) {
-				ITextRegion valueRegion = getNextRegionOfType(CSSRegionContexts.CSS_STRING, regions);
-				if (valueRegion == null) {
-					// if didn't find the region, its probably due to ill
-					// formed input, such as
-					// @charset "ISO-8859-6;
-					// so we'll try again for "unknown" region.
-					// If that fails, we'll give up?
-					regions = node.getRegions().iterator();
-					region = getNextRegionOfType(CSSRegionContexts.CSS_CHARSET, regions);
-					if (region != null) {
-						valueRegion = getNextRegionOfType(CSSRegionContexts.CSS_UNKNOWN, regions);
-						if (valueRegion != null) {
-							result = node.getText(valueRegion);
-						}
-					}
-				}
-				else {
-					result = node.getText(valueRegion);
-				}
-				result = StringUtils.stripNonLetterDigits(result);
-			}
-		}
-		return result;
-	}
-
-	public String getEncodingName(IDocument document) {
-		String enc = null;
-		if (document instanceof IStructuredDocument) {
-			enc = getEncodingName((IStructuredDocument) document);
-		}
-		else {
-			// TODO Important: need to implement some "raw" parser for
-			// IDocument level
-		}
-		return enc;
-	}
-
-	private String getType(IStructuredDocumentRegion node) {
-		if (node == null)
-			return null;
-		ITextRegionList regions = node.getRegions();
-		if (regions == null || regions.size() == 0)
-			return null;
-		ITextRegion region = regions.get(0);
-		String result = region.getType();
-		return result;
-	}
-
-	private ITextRegion getNextRegionOfType(String type, Iterator regions) {
-		if (type == null)
-			return null;
-		if (regions == null)
-			return null;
-		ITextRegion result = null;
-		while (regions.hasNext()) {
-			ITextRegion region = (ITextRegion) regions.next();
-			if (region.getType() == type) {
-				result = region;
-				break;
-			}
-		}
-		return result;
-	}
-
-	/**
-	 * 
-	 */
-
-	public void set(IDocument document) {
-		set(new DocumentReader(document, 0));
-
-	}
-
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/encoding/CSSDocumentLoader.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/encoding/CSSDocumentLoader.java
deleted file mode 100644
index 20c49e1..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/encoding/CSSDocumentLoader.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.wst.css.core.internal.encoding;
-
-
-import org.eclipse.jface.text.IDocumentPartitioner;
-import org.eclipse.wst.css.core.internal.contenttype.EncodingGuesser;
-import org.eclipse.wst.css.core.internal.parser.CSSSourceParser;
-import org.eclipse.wst.css.core.internal.provisional.contenttype.ContentTypeIdForCSS;
-import org.eclipse.wst.css.core.internal.text.CSSStructuredDocumentReParser;
-import org.eclipse.wst.css.core.internal.text.StructuredTextPartitionerForCSS;
-import org.eclipse.wst.sse.core.internal.document.AbstractDocumentLoader;
-import org.eclipse.wst.sse.core.internal.document.IDocumentCharsetDetector;
-import org.eclipse.wst.sse.core.internal.document.IDocumentLoader;
-import org.eclipse.wst.sse.core.internal.document.StructuredDocumentFactory;
-import org.eclipse.wst.sse.core.internal.encoding.ContentTypeEncodingPreferences;
-import org.eclipse.wst.sse.core.internal.ltk.parser.RegionParser;
-import org.eclipse.wst.sse.core.internal.provisional.document.IEncodedDocument;
-import org.eclipse.wst.sse.core.internal.provisional.text.IStructuredDocument;
-import org.eclipse.wst.sse.core.internal.text.BasicStructuredDocument;
-
-
-public class CSSDocumentLoader extends AbstractDocumentLoader {
-	private final static String CSS_ID = ContentTypeIdForCSS.ContentTypeID_CSS;
-	private IDocumentCharsetDetector documentEncodingDetector;
-
-
-	public CSSDocumentLoader() {
-		super();
-	}
-
-	protected String getEncodingNameByGuess(byte[] string, int length) {
-		String ianaEnc = null;
-		ianaEnc = EncodingGuesser.guessEncoding(string, length);
-		return ianaEnc;
-	}
-
-	/**
-	 * Default encoding. For CSS there is no spec'd default.
-	 */
-	protected String getSpecDefaultEncoding() {
-		return null;
-	}
-
-	protected IEncodedDocument newEncodedDocument() {
-		// DMW: I copied this from CSSModelImple ...
-		// but am not sure its right
-		IStructuredDocument structuredDocument = StructuredDocumentFactory.getNewStructuredDocumentInstance(getParser());
-		CSSStructuredDocumentReParser reParser = new CSSStructuredDocumentReParser();
-		reParser.setStructuredDocument(structuredDocument);
-		((BasicStructuredDocument) structuredDocument).setReParser(reParser);
-		return structuredDocument;
-	}
-
-	public RegionParser getParser() {
-		// return new CSSRegionParser();
-		return new CSSSourceParser();
-	}
-
-	protected String getPreferredNewLineDelimiter() {
-		return ContentTypeEncodingPreferences.getPreferredNewLineDelimiter(CSS_ID);
-	}
-
-	public IDocumentCharsetDetector getDocumentEncodingDetector() {
-		if (documentEncodingDetector == null) {
-			documentEncodingDetector = new CSSDocumentCharsetDetector();
-		}
-		return documentEncodingDetector;
-	}
-
-	public IDocumentPartitioner getDefaultDocumentPartitioner() {
-		return new StructuredTextPartitionerForCSS();
-	}
-
-	public IDocumentLoader newInstance() {
-		return new CSSDocumentLoader();
-	}
-
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/event/ICSSStyleListener.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/event/ICSSStyleListener.java
deleted file mode 100644
index d44e94b..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/event/ICSSStyleListener.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.css.core.internal.event;
-
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSModel;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSSelector;
-
-
-
-/**
- * 
- */
-public interface ICSSStyleListener {
-
-	/**
-	 * 
-	 */
-	void styleChanged(ICSSModel srcModel, ICSSSelector[] removed, ICSSSelector[] added, String media);
-
-	/**
-	 * 
-	 */
-	void styleUpdate(ICSSModel srcModel);
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/event/ICSSStyleNotifier.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/event/ICSSStyleNotifier.java
deleted file mode 100644
index 98655af..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/event/ICSSStyleNotifier.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.core.internal.event;
-
-
-
-import java.util.List;
-
-/**
- * 
- */
-public interface ICSSStyleNotifier extends ICSSStyleListener {
-
-	/**
-	 * 
-	 */
-	void addStyleListener(ICSSStyleListener listener);
-
-	/**
-	 * 
-	 */
-	List getStyleListeners();
-
-	/**
-	 */
-	boolean isRecording();
-
-	/**
-	 * 
-	 */
-	void removeStyleListener(ICSSStyleListener listener);
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/eventimpl/CSSEmbededStyleNotifyAdapter.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/eventimpl/CSSEmbededStyleNotifyAdapter.java
deleted file mode 100644
index 7bbc27b..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/eventimpl/CSSEmbededStyleNotifyAdapter.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.core.internal.eventimpl;
-
-
-
-import org.eclipse.wst.css.core.internal.event.ICSSStyleListener;
-import org.eclipse.wst.css.core.internal.provisional.adapters.IStyleSheetAdapter;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSModel;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSSelector;
-import org.eclipse.wst.sse.core.internal.provisional.INodeAdapter;
-import org.eclipse.wst.xml.core.internal.provisional.document.IDOMNode;
-
-
-public class CSSEmbededStyleNotifyAdapter extends CSSStyleNotifyAdapter {
-
-	/**
-	 * CSSEmbeddedStyleNotifyAdapter constructor comment.
-	 * 
-	 * @param model
-	 *            org.eclipse.wst.css.core.model.interfaces.ICSSModel
-	 */
-	public CSSEmbededStyleNotifyAdapter(ICSSModel model) {
-		super(model);
-	}
-
-	/**
-	 * 
-	 */
-	public void styleChanged(ICSSModel srcModel, ICSSSelector[] removed, ICSSSelector[] added, String media) {
-		IDOMNode node = (IDOMNode) model.getOwnerDOMNode();
-		if (node != null)
-			return;
-		INodeAdapter adapter = node.getAdapterFor(IStyleSheetAdapter.class);
-		if (adapter instanceof ICSSStyleListener) {
-			((ICSSStyleListener) adapter).styleChanged(srcModel, removed, added, media);
-		}
-	}
-
-	/**
-	 * 
-	 */
-	public void styleUpdate(ICSSModel srcModel) {
-		IDOMNode node = (IDOMNode) model.getOwnerDOMNode();
-		if (node != null)
-			return;
-		INodeAdapter adapter = node.getAdapterFor(IStyleSheetAdapter.class);
-		if (adapter instanceof ICSSStyleListener) {
-			((ICSSStyleListener) adapter).styleUpdate(srcModel);
-		}
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/eventimpl/CSSStyleEventDeliverer.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/eventimpl/CSSStyleEventDeliverer.java
deleted file mode 100644
index 432b9db..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/eventimpl/CSSStyleEventDeliverer.java
+++ /dev/null
@@ -1,155 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this 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.core.internal.eventimpl;
-
-
-
-import java.util.Vector;
-
-import org.eclipse.wst.css.core.internal.event.ICSSStyleListener;
-import org.eclipse.wst.css.core.internal.event.ICSSStyleNotifier;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSModel;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSSelector;
-
-
-/**
- * 
- */
-public class CSSStyleEventDeliverer {
-
-	private Vector fVisited = new Vector();
-	private ICSSModel fSrcModel;
-	private ICSSSelector[] fRemoved;
-	private ICSSSelector[] fAdded;
-	private String fMedia;
-
-	/**
-	 * 
-	 */
-	public CSSStyleEventDeliverer() {
-		super();
-	}
-
-	/**
-	 * 
-	 */
-	public void fire(ICSSModel srcModel, ICSSSelector[] removed, ICSSSelector[] added, String media) {
-		if (srcModel == null || srcModel.getStyleListeners() == null)
-			return;
-
-		this.fSrcModel = srcModel;
-		this.fRemoved = removed;
-		this.fAdded = added;
-		this.fMedia = media;
-
-		// prohibit delivering to srcModel
-		fVisited.clear();
-		fVisited.add(srcModel);
-		Object[] listeners = srcModel.getStyleListeners().toArray();
-		for (int i = 0; i < listeners.length; i++) {
-			visit((ICSSStyleListener) listeners[i]);
-		}
-	}
-
-	/**
-	 * 
-	 */
-	public void fireTo(ICSSStyleListener listener, ICSSModel srcModel, ICSSSelector[] removed, ICSSSelector[] added, String media) {
-		this.fSrcModel = srcModel;
-		this.fRemoved = removed;
-		this.fAdded = added;
-		this.fMedia = media;
-
-		// prohibit delivering to srcModel
-		fVisited.clear();
-		// visited.add(srcModel); : because looping problem
-		visit(listener);
-	}
-
-	/**
-	 * 
-	 */
-	public void fireUpdate(ICSSModel srcModel) {
-		if (srcModel == null || srcModel.getStyleListeners() == null)
-			return;
-
-		this.fSrcModel = srcModel;
-
-		// prohibit delivering to srcModel
-		fVisited.clear();
-		fVisited.add(srcModel);
-		Object[] listeners = srcModel.getStyleListeners().toArray();
-		for (int i = 0; i < listeners.length; i++) {
-			visitUpdate((ICSSStyleListener) listeners[i]);
-		}
-	}
-
-	/**
-	 * 
-	 */
-	public void fireUpdateTo(ICSSStyleListener listener, ICSSModel srcModel) {
-		if (srcModel == null || srcModel.getStyleListeners() == null)
-			return;
-
-		this.fSrcModel = srcModel;
-
-		// prohibit delivering to srcModel
-		fVisited.clear();
-		// visited.add(srcModel);
-		visitUpdate(listener);
-	}
-
-	/**
-	 * 
-	 */
-	protected void visit(ICSSStyleListener listener) {
-		if (listener == null || fVisited.contains(listener))
-			return;
-
-		// fire event to listener
-		listener.styleChanged(fSrcModel, fRemoved, fAdded, fMedia);
-		fVisited.add(listener);
-
-		// traverse notifier
-		if (listener instanceof ICSSStyleNotifier) {
-			ICSSStyleNotifier notifier = (ICSSStyleNotifier) listener;
-			if (notifier.getStyleListeners() != null) {
-				Object[] listeners = notifier.getStyleListeners().toArray();
-				for (int i = 0; i < listeners.length; i++) {
-					visit((ICSSStyleListener) listeners[i]);
-				}
-			}
-		}
-	}
-
-	/**
-	 * 
-	 */
-	protected void visitUpdate(ICSSStyleListener listener) {
-		if (listener == null || fVisited.contains(listener))
-			return;
-
-		// fire event to listener
-		listener.styleUpdate(fSrcModel);
-		fVisited.add(listener);
-
-		// traverse notifier
-		if (listener instanceof ICSSStyleNotifier) {
-			ICSSStyleNotifier notifier = (ICSSStyleNotifier) listener;
-			if (notifier.getStyleListeners() != null) {
-				Object[] listeners = notifier.getStyleListeners().toArray();
-				for (int i = 0; i < listeners.length; i++) {
-					visitUpdate((ICSSStyleListener) listeners[i]);
-				}
-			}
-		}
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/eventimpl/CSSStyleNotifyAdapter.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/eventimpl/CSSStyleNotifyAdapter.java
deleted file mode 100644
index 85c4e44..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/eventimpl/CSSStyleNotifyAdapter.java
+++ /dev/null
@@ -1,174 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this 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.core.internal.eventimpl;
-
-
-
-import java.util.Iterator;
-import java.util.Vector;
-
-import org.eclipse.wst.css.core.internal.event.ICSSStyleListener;
-import org.eclipse.wst.css.core.internal.event.ICSSStyleNotifier;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSModel;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSSelector;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSStyleSheet;
-import org.eclipse.wst.css.core.internal.util.ImportedCollector;
-import org.eclipse.wst.css.core.internal.util.SelectorsCollector;
-
-
-/**
- * 
- */
-public class CSSStyleNotifyAdapter implements ICSSStyleNotifier {
-
-	protected java.util.Vector listeners;
-	protected final org.eclipse.wst.css.core.internal.provisional.document.ICSSModel model;
-	protected boolean recording = false;
-
-	/**
-	 * 
-	 */
-	public CSSStyleNotifyAdapter(ICSSModel model) {
-		super();
-		this.model = model;
-	}
-
-	/**
-	 * 
-	 */
-	public void addStyleListener(ICSSStyleListener listener) {
-		if (listener == null)
-			return;
-
-		if (listeners == null)
-			listeners = new Vector();
-		if (!listeners.contains(listener)) {
-
-			// send new selectors event to listener
-			ImportedCollector trav = new ImportedCollector();
-			trav.apply(model.getDocument());
-			Iterator it = trav.getExternals().iterator();
-			while (it.hasNext()) {
-				ICSSStyleSheet sheet = (ICSSStyleSheet) it.next();
-				// collect selectors
-				SelectorsCollector selTrav = new SelectorsCollector();
-				selTrav.apply(sheet);
-				int nSel = selTrav.getSelectors().size();
-				ICSSSelector[] added = new ICSSSelector[nSel];
-				for (int i = 0; i < nSel; i++)
-					added[i] = (ICSSSelector) selTrav.getSelectors().get(i);
-
-				// fire event
-				CSSStyleEventDeliverer deliverer = new CSSStyleEventDeliverer();
-				deliverer.fireTo(listener, sheet.getModel(), null, added, null/*
-																				 * media
-																				 * will
-																				 * be
-																				 * implemented
-																				 * in
-																				 * the
-																				 * future
-																				 */);
-			}
-
-			// add listener
-			listeners.add(listener);
-		}
-	}
-
-	/**
-	 * 
-	 */
-	public void beginRecording() {
-		recording = true;
-	}
-
-	/**
-	 * 
-	 */
-	public void endRecording() {
-		recording = false;
-	}
-
-	/**
-	 * 
-	 */
-	public void fire(ICSSSelector[] removed, ICSSSelector[] added, String media) {
-		// send selector changed event
-		CSSStyleEventDeliverer deliv = new CSSStyleEventDeliverer();
-		deliv.fire(model, removed, added, null);
-
-	}
-
-	/**
-	 * 
-	 */
-	public java.util.List getStyleListeners() {
-		return listeners;
-	}
-
-	/**
-	 */
-	public boolean isRecording() {
-		return recording;
-	}
-
-	/**
-	 * 
-	 */
-	public void removeStyleListener(ICSSStyleListener listener) {
-		if (listener == null)
-			return;
-
-		if (listeners.contains(listener)) {
-			listeners.remove(listener);
-
-			// send old selectors event to listener
-			ImportedCollector trav = new ImportedCollector();
-			trav.apply(model.getDocument());
-			Iterator it = trav.getExternals().iterator();
-			while (it.hasNext()) {
-				ICSSStyleSheet sheet = (ICSSStyleSheet) it.next();
-				// collect selectors
-				SelectorsCollector selTrav = new SelectorsCollector();
-				selTrav.apply(sheet);
-				int nSel = selTrav.getSelectors().size();
-				ICSSSelector[] removed = new ICSSSelector[nSel];
-				for (int i = 0; i < nSel; i++)
-					removed[i] = (ICSSSelector) selTrav.getSelectors().get(i);
-
-				// fire event
-				CSSStyleEventDeliverer deliverer = new CSSStyleEventDeliverer();
-				deliverer.fireTo(listener, sheet.getModel(), removed, null, null/*
-																				 * media
-																				 * will
-																				 * be
-																				 * implemented
-																				 * in
-																				 * the
-																				 * future
-																				 */);
-			}
-		}
-	}
-
-	/**
-	 * 
-	 */
-	public void styleChanged(org.eclipse.wst.css.core.internal.provisional.document.ICSSModel srcModel, org.eclipse.wst.css.core.internal.provisional.document.ICSSSelector[] removed, org.eclipse.wst.css.core.internal.provisional.document.ICSSSelector[] added, java.lang.String media) {
-	}
-
-	/**
-	 * 
-	 */
-	public void styleUpdate(org.eclipse.wst.css.core.internal.provisional.document.ICSSModel srcModel) {
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/format/CSSSourceFormatter.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/format/CSSSourceFormatter.java
deleted file mode 100644
index 37fe679..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/format/CSSSourceFormatter.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.css.core.internal.format;
-
-
-
-import org.eclipse.jface.text.IRegion;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSNode;
-import org.eclipse.wst.sse.core.internal.provisional.INodeAdapter;
-
-
-/**
- * @deprecated
- */
-public interface CSSSourceFormatter extends INodeAdapter {
-
-	/**
-	 * 
-	 */
-	StringBuffer cleanup(ICSSNode node);
-
-	/**
-	 * 
-	 * @return java.lang.StringBuffer
-	 * @param node
-	 *            org.eclipse.wst.css.core.model.interfaces.ICSSNode
-	 * @param region
-	 *            org.eclipse.jface.text.IRegion
-	 */
-	StringBuffer cleanup(ICSSNode node, IRegion region);
-
-	/**
-	 * 
-	 */
-	StringBuffer format(ICSSNode node);
-
-	/**
-	 * 
-	 */
-	StringBuffer format(ICSSNode node, IRegion region);
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/format/FormatProcessorCSS.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/format/FormatProcessorCSS.java
deleted file mode 100644
index cbba6da..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/format/FormatProcessorCSS.java
+++ /dev/null
@@ -1,88 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this 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.core.internal.format;
-
-import java.util.List;
-
-import org.eclipse.wst.css.core.internal.formatter.CSSFormatUtil;
-import org.eclipse.wst.css.core.internal.formatter.CSSSourceFormatter;
-import org.eclipse.wst.css.core.internal.formatter.CSSSourceFormatterFactory;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSDocument;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSModel;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSNode;
-import org.eclipse.wst.sse.core.internal.format.AbstractStructuredFormatProcessor;
-import org.eclipse.wst.sse.core.internal.format.IStructuredFormatPreferences;
-import org.eclipse.wst.sse.core.internal.format.IStructuredFormatter;
-import org.eclipse.wst.sse.core.internal.provisional.INodeNotifier;
-import org.eclipse.wst.sse.core.internal.provisional.IStructuredModel;
-import org.eclipse.wst.sse.core.internal.provisional.IndexedRegion;
-import org.eclipse.wst.xml.core.internal.provisional.document.IDOMModel;
-import org.w3c.dom.Node;
-
-
-public class FormatProcessorCSS extends AbstractStructuredFormatProcessor {
-
-
-	protected String getFileExtension() {
-		return "css"; //$NON-NLS-1$
-	}
-
-	public void formatModel(IStructuredModel structuredModel) {
-		int start = 0;
-		int length = structuredModel.getStructuredDocument().getLength();
-
-		formatModel(structuredModel, start, length);
-	}
-
-	public void formatModel(IStructuredModel structuredModel, int start, int length) {
-		CSSFormatUtil formatUtil = CSSFormatUtil.getInstance();
-		if (structuredModel instanceof ICSSModel) {
-			ICSSDocument doc = ((ICSSModel) structuredModel).getDocument();
-			CSSSourceFormatter formatter = CSSSourceFormatterFactory.getInstance().getSourceFormatter((INodeNotifier) doc);
-			StringBuffer buf = formatter.format(doc);
-			if (buf != null) {
-				int startOffset = ((IndexedRegion) doc).getStartOffset();
-				int endOffset = ((IndexedRegion) doc).getEndOffset();
-				formatUtil.replaceSource(doc.getModel(), startOffset, endOffset - startOffset, buf.toString());
-			}
-		}
-		else if (structuredModel instanceof IDOMModel) {
-			List cssnodes = formatUtil.collectCSSNodes(structuredModel, start, length);
-			if (cssnodes != null && !cssnodes.isEmpty()) {
-				ICSSModel model = null;
-				for (int i = 0; i < cssnodes.size(); i++) {
-					ICSSNode node = (ICSSNode) cssnodes.get(i);
-					CSSSourceFormatter formatter = CSSSourceFormatterFactory.getInstance().getSourceFormatter((INodeNotifier) node);
-					StringBuffer buf = formatter.format(node);
-					if (buf != null) {
-						int startOffset = ((IndexedRegion) node).getStartOffset();
-						int endOffset = ((IndexedRegion) node).getEndOffset();
-						if (model == null) {
-							model = node.getOwnerDocument().getModel();
-						}
-						formatUtil.replaceSource(model, startOffset, endOffset - startOffset, buf.toString());
-					}
-				}
-			}
-		}
-	}
-
-	public IStructuredFormatPreferences getFormatPreferences() {
-		return null;
-	}
-
-	protected IStructuredFormatter getFormatter(Node node) {
-		return null;
-	}
-
-	protected void refreshFormatPreferences() {
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/formatter/AbstractCSSSourceFormatter.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/formatter/AbstractCSSSourceFormatter.java
deleted file mode 100644
index ba40786..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/formatter/AbstractCSSSourceFormatter.java
+++ /dev/null
@@ -1,958 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this 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.core.internal.formatter;
-
-import java.util.ArrayList;
-import java.util.Iterator;
-
-import org.eclipse.core.runtime.Preferences;
-import org.eclipse.jface.text.DefaultLineTracker;
-import org.eclipse.jface.text.IRegion;
-import org.eclipse.jface.text.TextUtilities;
-import org.eclipse.wst.css.core.internal.CSSCorePlugin;
-import org.eclipse.wst.css.core.internal.cleanup.CSSCleanupStrategy;
-import org.eclipse.wst.css.core.internal.cleanup.CSSCleanupStrategyImpl;
-import org.eclipse.wst.css.core.internal.parserz.CSSRegionContexts;
-import org.eclipse.wst.css.core.internal.preferences.CSSCorePreferenceNames;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSAttr;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSDocument;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSModel;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSNode;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSStyleDeclItem;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSStyleDeclaration;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSStyleSheet;
-import org.eclipse.wst.css.core.internal.util.CSSLinkConverter;
-import org.eclipse.wst.css.core.internal.util.CSSUtil;
-import org.eclipse.wst.css.core.internal.util.RegionIterator;
-import org.eclipse.wst.sse.core.internal.provisional.INodeNotifier;
-import org.eclipse.wst.sse.core.internal.provisional.IndexedRegion;
-import org.eclipse.wst.sse.core.internal.provisional.text.IStructuredDocument;
-import org.eclipse.wst.sse.core.internal.provisional.text.IStructuredDocumentRegion;
-import org.eclipse.wst.sse.core.internal.provisional.text.ITextRegion;
-import org.eclipse.wst.sse.core.internal.provisional.text.ITextRegionList;
-import org.eclipse.wst.sse.core.internal.util.Assert;
-
-/**
- * 
- */
-public abstract class AbstractCSSSourceFormatter implements CSSSourceGenerator {
-
-	protected final static short GENERATE = 0;
-	protected final static short FORMAT = 1;
-	protected final static short CLEANUP = 2;
-	protected static short strategy;
-
-	/**
-	 * 
-	 */
-	AbstractCSSSourceFormatter() {
-		super();
-	}
-
-	/**
-	 * 
-	 */
-	protected void appendDelimBefore(ICSSNode node, CompoundRegion toAppend, StringBuffer source) {
-		if (node == null || source == null)
-			return;
-		if (isCleanup() && !getCleanupStrategy(node).isFormatSource())
-			return; // for not formatting case on cleanup action
-		String delim = getLineDelimiter(node);
-
-		boolean needIndent = !(node instanceof ICSSStyleSheet);
-		if (toAppend == null) {
-			source.append(delim);
-			source.append(getIndent(node));
-			if (needIndent)
-				source.append(getIndentString());
-		} else {
-			String type = toAppend.getType();
-			if (type == CSSRegionContexts.CSS_COMMENT) {
-				RegionIterator it = new RegionIterator(toAppend.getDocumentRegion(), toAppend.getTextRegion());
-				it.prev();
-				ITextRegion prev = it.prev();
-				if (prev == null || (prev.getType() == CSSRegionContexts.CSS_S && TextUtilities.indexOf(DefaultLineTracker.DELIMITERS, it.getStructuredDocumentRegion().getText(prev), 0)[0] >= 0)) {
-					source.append(delim);
-					source.append(getIndent(node));
-					if (needIndent)
-						source.append(getIndentString());
-				} else {
-					appendSpaceBefore(node, toAppend.getText(), source);
-				}
-			} else if (type == CSSRegionContexts.CSS_DELIMITER || type == CSSRegionContexts.CSS_DECLARATION_DELIMITER) {
-				RegionIterator it = new RegionIterator(toAppend.getDocumentRegion(), toAppend.getTextRegion());
-				it.prev();
-				ITextRegion prev = it.prev();
-
-				Preferences preferences = CSSCorePlugin.getDefault().getPluginPreferences();
-
-				if (prev.getType() == CSSRegionContexts.CSS_S && TextUtilities.indexOf(DefaultLineTracker.DELIMITERS, it.getStructuredDocumentRegion().getText(prev), 0)[0] >= 0) {
-					source.append(delim);
-					source.append(getIndent(node));
-					if (needIndent)
-						source.append(getIndentString());
-				} else if (preferences.getInt(CSSCorePreferenceNames.LINE_WIDTH) > 0 && (!preferences.getBoolean(CSSCorePreferenceNames.WRAPPING_PROHIBIT_WRAP_ON_ATTR) || node.getOwnerDocument().getNodeType() != ICSSNode.STYLEDECLARATION_NODE)) {
-					int length = getLastLineLength(node, source);
-					int append = 1;
-					if (length + append > preferences.getInt(CSSCorePreferenceNames.LINE_WIDTH)) {
-						source.append(getLineDelimiter(node));
-						source.append(getIndent(node));
-						if (needIndent)
-							source.append(getIndentString());
-					}
-				}
-			} else if (type == CSSRegionContexts.CSS_RBRACE || type == CSSRegionContexts.CSS_LBRACE) {
-				source.append(delim);
-				source.append(getIndent(node));
-			} else {
-				source.append(delim);
-				source.append(getIndent(node));
-				if (needIndent)
-					source.append(getIndentString());
-			}
-		}
-	}
-
-	/**
-	 * 
-	 */
-	protected void appendSpaceBefore(ICSSNode node, CompoundRegion toAppend, StringBuffer source) {
-		if (node == null || toAppend == null || source == null)
-			return;
-		if (isCleanup() && !getCleanupStrategy(node).isFormatSource())
-			return; // for not formatting case on cleanup action
-		String type = toAppend.getType();
-
-		Preferences preferences = CSSCorePlugin.getDefault().getPluginPreferences();
-
-		boolean needIndent = !(node instanceof ICSSStyleSheet);
-		if (type == CSSRegionContexts.CSS_COMMENT) {
-			// check whether previous region is 'S' and has CR-LF
-			String delim = getLineDelimiter(node);
-			RegionIterator it = new RegionIterator(toAppend.getDocumentRegion(), toAppend.getTextRegion());
-			it.prev();
-			ITextRegion prev = it.prev();
-			if (prev.getType() == CSSRegionContexts.CSS_S && TextUtilities.indexOf(DefaultLineTracker.DELIMITERS, it.getStructuredDocumentRegion().getText(prev), 0)[0] >= 0) {
-				source.append(delim);
-				source.append(getIndent(node));
-				if (needIndent)
-					source.append(getIndentString());
-			} else {
-				appendSpaceBefore(node, toAppend.getText(), source);
-			}
-		} else if (type == CSSRegionContexts.CSS_LBRACE && preferences.getBoolean(CSSCorePreferenceNames.WRAPPING_NEWLINE_ON_OPEN_BRACE)) {
-			String delim = getLineDelimiter(node);
-			source.append(delim);
-			source.append(getIndent(node));
-			// } else if (type == CSSRegionContexts.CSS_CURLY_BRACE_CLOSE) {
-			// } else if (type == CSSRegionContexts.CSS_INCLUDES || type ==
-			// CSSRegionContexts.CSS_DASHMATCH) {
-		} else if (type == CSSRegionContexts.CSS_DECLARATION_SEPARATOR && node instanceof ICSSStyleDeclItem) {
-			int n = preferences.getInt(CSSCorePreferenceNames.FORMAT_PROP_PRE_DELIM);
-			if (preferences.getInt(CSSCorePreferenceNames.LINE_WIDTH) > 0 && (!preferences.getBoolean(CSSCorePreferenceNames.WRAPPING_PROHIBIT_WRAP_ON_ATTR) || node.getOwnerDocument().getNodeType() != ICSSNode.STYLEDECLARATION_NODE)) {
-				int length = getLastLineLength(node, source);
-				int append = 1;
-				if (length + n + append > preferences.getInt(CSSCorePreferenceNames.LINE_WIDTH)) {
-					source.append(getLineDelimiter(node));
-					source.append(getIndent(node));
-					if (needIndent)
-						source.append(getIndentString());
-					n = 0; // no space is necessary
-				}
-			}
-			// no delimiter case
-			while (n-- > 0)
-				source.append(" ");//$NON-NLS-1$
-		} else if (type == CSSRegionContexts.CSS_DECLARATION_DELIMITER || type == CSSRegionContexts.CSS_DECLARATION_VALUE_OPERATOR || type == CSSRegionContexts.CSS_DECLARATION_VALUE_PARENTHESIS_CLOSE) {
-			if (preferences.getInt(CSSCorePreferenceNames.LINE_WIDTH) > 0 && (!preferences.getBoolean(CSSCorePreferenceNames.WRAPPING_PROHIBIT_WRAP_ON_ATTR) || node.getOwnerDocument().getNodeType() != ICSSNode.STYLEDECLARATION_NODE)) {
-				int length = getLastLineLength(node, source);
-				int append = 1;
-				if (length + append > preferences.getInt(CSSCorePreferenceNames.LINE_WIDTH)) {
-					source.append(getLineDelimiter(node));
-					source.append(getIndent(node));
-					if (needIndent)
-						source.append(getIndentString());
-				}
-			}
-		} else
-			appendSpaceBefore(node, toAppend.getText(), source);
-	}
-
-	/**
-	 * 
-	 */
-	protected void appendSpaceBefore(ICSSNode node, String toAppend, StringBuffer source) {
-		if (node == null || source == null)
-			return;
-		if (isCleanup() && !getCleanupStrategy(node).isFormatSource())
-			return; // for not formatting case on cleanup action
-
-		Preferences preferences = CSSCorePlugin.getDefault().getPluginPreferences();
-		if (toAppend != null && toAppend.startsWith("{") && preferences.getBoolean(CSSCorePreferenceNames.WRAPPING_NEWLINE_ON_OPEN_BRACE)) {//$NON-NLS-1$
-			source.append(getLineDelimiter(node));
-			source.append(getIndent(node));
-			return;
-		} else if (/* ! mgr.isOnePropertyPerLine() && */preferences.getInt(CSSCorePreferenceNames.LINE_WIDTH) > 0 && (!preferences.getBoolean(CSSCorePreferenceNames.WRAPPING_PROHIBIT_WRAP_ON_ATTR) || node.getOwnerDocument().getNodeType() != ICSSNode.STYLEDECLARATION_NODE)) {
-			int n = getLastLineLength(node, source);
-			int append = (toAppend != null) ? TextUtilities.indexOf(DefaultLineTracker.DELIMITERS, toAppend, 0)[0] : 0;
-			if (toAppend != null)
-				append = (append < 0) ? toAppend.length() : append;
-			if (n + append + 1 > preferences.getInt(CSSCorePreferenceNames.LINE_WIDTH)) {
-				source.append(getLineDelimiter(node));
-				source.append(getIndent(node));
-				source.append(getIndentString());
-				return;
-			}
-		}
-		source.append(" ");//$NON-NLS-1$
-	}
-
-	/**
-	 * 
-	 */
-	public final StringBuffer cleanup(ICSSNode node) {
-		short oldStrategy = strategy;
-		strategy = CLEANUP;
-		StringBuffer source = formatProc(node);
-		strategy = oldStrategy;
-
-		return source;
-	}
-
-	/**
-	 * 
-	 */
-	public final StringBuffer cleanup(ICSSNode node, IRegion region) {
-		short oldStrategy = strategy;
-		strategy = CLEANUP;
-		StringBuffer source = formatProc(node, region);
-		strategy = oldStrategy;
-
-		return source;
-	}
-
-	/**
-	 * 
-	 */
-	protected String decoratedIdentRegion(CompoundRegion region, CSSCleanupStrategy stgy) {
-		if (isFormat())
-			return region.getText();
-
-		String text = region.getText();
-		if (region.getType() == CSSRegionContexts.CSS_STRING || region.getType() == CSSRegionContexts.CSS_URI)
-			return decoratedRegion(region, 0, stgy);
-
-		if (isCleanup()) {
-			if (stgy.getIdentCase() == CSSCleanupStrategy.ASIS || region.getType() == CSSRegionContexts.CSS_COMMENT)
-				return text;
-			else if (stgy.getIdentCase() == CSSCleanupStrategy.UPPER)
-				return text.toUpperCase();
-			else
-				return text.toLowerCase();
-		}
-
-		Preferences preferences = CSSCorePlugin.getDefault().getPluginPreferences();
-		if (region.getType() == CSSRegionContexts.CSS_COMMENT)
-			return text;
-		else if (preferences.getInt(CSSCorePreferenceNames.CASE_IDENTIFIER) == CSSCorePreferenceNames.UPPER)
-			return text.toUpperCase();
-		else
-			return text.toLowerCase();
-	}
-
-	/**
-	 * 
-	 */
-	protected String decoratedPropNameRegion(CompoundRegion region, CSSCleanupStrategy stgy) {
-		if (isFormat())
-			return region.getText();
-
-		String text = region.getText();
-		if (region.getType() == CSSRegionContexts.CSS_STRING || region.getType() == CSSRegionContexts.CSS_URI)
-			return decoratedRegion(region, 1, stgy);
-		if (isCleanup()) {
-			if (stgy.getPropNameCase() == CSSCleanupStrategy.ASIS || region.getType() != CSSRegionContexts.CSS_DECLARATION_PROPERTY)
-				return text;
-			else if (stgy.getPropNameCase() == CSSCleanupStrategy.UPPER)
-				return text.toUpperCase();
-			else
-				return text.toLowerCase();
-		}
-		Preferences preferences = CSSCorePlugin.getDefault().getPluginPreferences();
-
-		if (region.getType() != CSSRegionContexts.CSS_DECLARATION_PROPERTY)
-			return text;
-		else if (preferences.getInt(CSSCorePreferenceNames.CASE_PROPERTY_NAME) == CSSCorePreferenceNames.UPPER)
-			return text.toUpperCase();
-		else
-			return text.toLowerCase();
-	}
-
-	/**
-	 * 
-	 */
-	protected String decoratedPropValueRegion(CompoundRegion region, CSSCleanupStrategy stgy) {
-		if (isFormat())
-			return region.getText();
-
-		String text = region.getText();
-		String type = region.getType();
-		if (type == CSSRegionContexts.CSS_STRING || type == CSSRegionContexts.CSS_URI)
-			return decoratedRegion(region, 2, stgy);
-		if (isCleanup()) {
-			if (stgy.getPropValueCase() != CSSCleanupStrategy.ASIS) {
-				if (type == CSSRegionContexts.CSS_COMMENT) {
-				} else {
-					if (stgy.getPropValueCase() == CSSCleanupStrategy.UPPER)
-						text = text.toUpperCase();
-					else
-						text = text.toLowerCase();
-				}
-			}
-		}
-		return text;
-	}
-
-	/**
-	 * 
-	 */
-	protected String decoratedRegion(CompoundRegion region, int type, CSSCleanupStrategy stgy) {
-		if (isFormat())
-			return region.getText();
-
-		Preferences preferences = CSSCorePlugin.getDefault().getPluginPreferences();
-		String text = region.getText();
-		if (region.getType() == CSSRegionContexts.CSS_URI) {
-			String uri = CSSLinkConverter.stripFunc(text);
-
-			boolean prefIsUpper = preferences.getInt(CSSCorePreferenceNames.CASE_IDENTIFIER) == CSSCorePreferenceNames.UPPER;
-			boolean upper = (type == 0) ? prefIsUpper : ((type == 1) ? preferences.getInt(CSSCorePreferenceNames.CASE_PROPERTY_NAME) == CSSCorePreferenceNames.UPPER : preferences.getInt(CSSCorePreferenceNames.CASE_PROPERTY_VALUE) == CSSCorePreferenceNames.UPPER);
-			String func = text.substring(0, 4);
-			if (isCleanup()) {
-				upper = ((type == 0) ? stgy.getIdentCase() : ((type == 1) ? stgy.getPropNameCase() : stgy.getPropValueCase())) == CSSCleanupStrategy.UPPER;
-				func = ((type == 0) ? stgy.getIdentCase() : ((type == 1) ? stgy.getPropNameCase() : stgy.getPropValueCase())) == CSSCleanupStrategy.ASIS ? text.substring(0, 4) : (upper ? "URL(" : "url(");//$NON-NLS-2$//$NON-NLS-1$
-			}
-			if ((!isCleanup() && preferences.getBoolean(CSSCorePreferenceNames.FORMAT_QUOTE_IN_URI)) || (isCleanup() && stgy.isQuoteValues())) {
-				String quote = preferences.getString(CSSCorePreferenceNames.FORMAT_QUOTE);
-				quote = CSSUtil.detectQuote(uri, quote);
-				text = func + quote + uri + quote + ")";//$NON-NLS-1$
-			} else if (isCleanup() && !stgy.isQuoteValues()) {
-				text = func + CSSLinkConverter.removeFunc(text) + ")";//$NON-NLS-1$
-			} else {
-				text = func + uri + ")";//$NON-NLS-1$
-			}
-		} else if (region.getType() == CSSRegionContexts.CSS_STRING && (!isCleanup() || stgy.isQuoteValues())) {
-			String quote = preferences.getString(CSSCorePreferenceNames.FORMAT_QUOTE);
-			// begginning
-			if (!text.startsWith(quote)) {
-				if (text.startsWith("\"") || text.startsWith("\'")) //$NON-NLS-1$ //$NON-NLS-2$
-					text = quote + text.substring(1);
-				else
-					text = quote + text;
-			}
-			// ending
-			if (!text.endsWith(quote)) {
-				if (text.endsWith("\"") || text.endsWith("\'")) //$NON-NLS-1$ //$NON-NLS-2$
-					text = text.substring(0, text.length() - 1) + quote;
-				else
-					text = text + quote;
-			}
-		}
-		return text;
-	}
-
-	/**
-	 * 
-	 */
-	public final StringBuffer format(ICSSNode node) {
-		short oldStrategy = strategy;
-		strategy = FORMAT;
-		StringBuffer source = formatProc(node);
-		strategy = oldStrategy;
-
-		return source;
-	}
-
-	/**
-	 * 
-	 */
-	public final StringBuffer format(ICSSNode node, IRegion region) {
-		short oldStrategy = strategy;
-		strategy = FORMAT;
-		StringBuffer source = formatProc(node, region);
-		strategy = oldStrategy;
-
-		return source;
-	}
-
-	/**
-	 * 
-	 */
-	public StringBuffer formatAttrChanged(ICSSNode node, ICSSAttr attr, boolean insert, AttrChangeContext context) {
-		return new StringBuffer(insert && (attr != null) ? attr.getValue() : "");//$NON-NLS-1$
-	}
-
-	/**
-	 * Generate or format source between children('child' and its previous
-	 * sibling) and append to string buffer
-	 */
-	abstract protected void formatBefore(ICSSNode node, ICSSNode child, String toAppend, StringBuffer source, IRegion exceptFor);
-
-	/**
-	 * Generate or format source between children('child' and its previous
-	 * sibling) and append to string buffer
-	 */
-	public final StringBuffer formatBefore(ICSSNode node, ICSSNode child, IRegion exceptFor) {
-		Assert.isTrue(child == null || child.getParentNode() == node);
-		StringBuffer buf = new StringBuffer();
-		formatBefore(node, child, /* (child != null) ? (child.getCssText()) : */"", buf, exceptFor);//$NON-NLS-1$
-		return buf;
-	}
-
-	/**
-	 * Generate or format source between children('child' and its previous
-	 * sibling) and append to string buffer
-	 */
-	protected abstract void formatBefore(ICSSNode node, ICSSNode child, IRegion region, String toAppend, StringBuffer source);
-
-	/**
-	 * 
-	 */
-	protected final void formatChildren(ICSSNode node, StringBuffer source) {
-		ICSSNode child = node.getFirstChild();
-		boolean first = true;
-		while (child != null) {
-			// append child
-			CSSSourceFormatter formatter = (CSSSourceFormatter) ((INodeNotifier) child).getAdapterFor(CSSSourceFormatter.class);
-			if (formatter == null) {
-				formatter = CSSSourceFormatterFactory.getInstance().getSourceFormatter((INodeNotifier) child);
-			}
-			StringBuffer childSource = ((AbstractCSSSourceFormatter) formatter).formatProc(child);
-			if (!first) {
-				formatBefore(node, child, new String(childSource), source, null);
-			}
-			source.append(childSource);
-			// append between children
-			child = child.getNextSibling();
-			first = false;
-		}
-	}
-
-	/**
-	 * 
-	 */
-	protected final void formatChildren(ICSSNode node, IRegion region, StringBuffer source) {
-		ICSSNode child = node.getFirstChild();
-		int start = region.getOffset();
-		int end = region.getOffset() + region.getLength();
-		boolean first = true;
-		while (child != null) {
-			int curEnd = ((IndexedRegion) child).getEndOffset();
-			StringBuffer childSource = null;
-			boolean toFinish = false;
-			if (start < curEnd) {
-				int curStart = ((IndexedRegion) child).getStartOffset();
-				if (curStart < end) {
-					// append child
-					CSSSourceFormatter formatter = (CSSSourceFormatter) ((INodeNotifier) child).getAdapterFor(CSSSourceFormatter.class);
-					if (formatter == null) {
-						formatter = CSSSourceFormatterFactory.getInstance().getSourceFormatter((INodeNotifier) child);
-					}
-					if (includes(region, curStart, curEnd))
-						childSource = ((AbstractCSSSourceFormatter) formatter).formatProc(child);
-					else
-						childSource = ((AbstractCSSSourceFormatter) formatter).formatProc(child, overlappedRegion(region, curStart, curEnd));
-				} else
-					toFinish = true;
-			}
-			// append between children
-			if (!first) {
-				curEnd = ((IndexedRegion) child).getStartOffset(); // change
-				// only
-				// start
-				if (start < curEnd) {
-					int curStart = ((IndexedRegion) child.getPreviousSibling()).getEndOffset();
-					if (curStart < end) {
-						String toAppend = (childSource != null) ? new String(childSource) : "";//$NON-NLS-1$
-						if (includes(region, curStart, curEnd))
-							formatBefore(node, child, toAppend, source, null);
-						else
-							formatBefore(node, child, overlappedRegion(region, curStart, curEnd), toAppend, source);
-					}
-				}
-			}
-			if (childSource != null) {
-				source.append(childSource);
-			}
-			first = false;
-			if (toFinish)
-				break;
-			child = child.getNextSibling();
-		}
-	}
-
-	/**
-	 * Generate or format source after the last child and append to string
-	 * buffer
-	 */
-	protected abstract void formatPost(ICSSNode node, StringBuffer source);
-
-	/**
-	 * Generate or format source after the last child and append to string
-	 * buffer
-	 */
-	protected abstract void formatPost(ICSSNode node, IRegion region, StringBuffer source);
-
-	/**
-	 * Generate or format source before the first child and append to string
-	 * buffer
-	 */
-	protected abstract void formatPre(ICSSNode node, StringBuffer source);
-
-	/**
-	 * Generate or format source before the first child and append to string
-	 * buffer
-	 */
-	abstract protected void formatPre(ICSSNode node, IRegion region, StringBuffer source);
-
-	/**
-	 * 
-	 * @return java.lang.StringBuffer
-	 * @param node
-	 *            org.eclipse.wst.css.core.model.interfaces.ICSSNode
-	 */
-	protected final StringBuffer formatProc(ICSSNode node) {
-		StringBuffer source = new StringBuffer();
-		formatPre(node, source);
-		formatChildren(node, source);
-		formatPost(node, source);
-		return source;
-	}
-
-	/**
-	 * 
-	 * @return java.lang.StringBuffer
-	 * @param node
-	 *            org.eclipse.wst.css.core.model.interfaces.ICSSNode
-	 * @param region
-	 *            org.eclipse.jface.text.IRegion
-	 */
-	protected final StringBuffer formatProc(ICSSNode node, IRegion region) {
-		StringBuffer source = new StringBuffer();
-		int curStart = ((IndexedRegion) node).getStartOffset();
-		int curEnd = ((IndexedRegion) node).getEndOffset();
-		if (node.getChildNodes().getLength() > 0) {
-			curEnd = ((IndexedRegion) node.getFirstChild()).getStartOffset();
-			if (overlaps(region, curStart, curEnd)) {
-				if (includes(region, curStart, curEnd))
-					formatPre(node, source);
-				else
-					formatPre(node, overlappedRegion(region, curStart, curEnd), source);
-			}
-			curStart = curEnd;
-			curEnd = ((IndexedRegion) node.getLastChild()).getEndOffset();
-			if (overlaps(region, curStart, curEnd)) {
-				if (includes(region, curStart, curEnd))
-					formatChildren(node, source);
-				else
-					formatChildren(node, overlappedRegion(region, curStart, curEnd), source);
-			}
-			curStart = curEnd;
-			curEnd = ((IndexedRegion) node).getEndOffset();
-			if (overlaps(region, curStart, curEnd)) {
-				if (includes(region, curStart, curEnd))
-					formatPost(node, source);
-				else
-					formatPost(node, overlappedRegion(region, curStart, curEnd), source);
-			}
-		} else {
-			curEnd = getChildInsertPos(node);
-			if (overlaps(region, curStart, curEnd)) {
-				if (includes(region, curStart, curEnd))
-					formatPre(node, source);
-				else
-					formatPre(node, overlappedRegion(region, curStart, curEnd), source);
-			}
-			curStart = curEnd;
-			curEnd = ((IndexedRegion) node).getEndOffset();
-			if (overlaps(region, curStart, curEnd)) {
-				if (includes(region, curStart, curEnd))
-					formatPost(node, source);
-				else
-					formatPost(node, overlappedRegion(region, curStart, curEnd), source);
-			}
-		}
-		return source;
-	}
-
-	/**
-	 * 
-	 */
-	public int getAttrInsertPos(ICSSNode node, String attrName) {
-		return -1;
-	}
-
-	/**
-	 * Insert the method's description here.
-	 * 
-	 * @return org.eclipse.wst.css.core.internal.cleanup.CSSCleanupStrategy
-	 * @param node
-	 *            org.eclipse.wst.css.core.model.interfaces.ICSSNode
-	 */
-	protected CSSCleanupStrategy getCleanupStrategy(ICSSNode node) {
-		CSSCleanupStrategy currentStrategy = CSSCleanupStrategyImpl.getInstance();
-		ICSSDocument doc = node.getOwnerDocument();
-		if (doc == null)
-			return currentStrategy;
-		ICSSModel model = doc.getModel();
-		if (model == null)
-			return currentStrategy;
-		if (model.getStyleSheetType() != ICSSModel.EXTERNAL) {
-			// TODO - TRANSITION Nakamori-san, or Kit, how can we move to
-			// "HTML" plugin?
-			// can we subclass?
-			// currentStrategy = CSSInHTMLCleanupStrategyImpl.getInstance();
-		}
-		return currentStrategy;
-	}
-
-	/**
-	 * 
-	 */
-	protected String getIndent(ICSSNode node) {
-		if (node == null)
-			return "";//$NON-NLS-1$
-		ICSSNode parent = node.getParentNode();
-		if (node instanceof ICSSAttr)
-			parent = ((ICSSAttr) node).getOwnerCSSNode();
-		if (parent == null)
-			return "";//$NON-NLS-1$
-		if (node instanceof org.w3c.dom.css.CSSStyleDeclaration)
-			parent = parent.getParentNode();
-		if (parent == null)
-			return "";//$NON-NLS-1$
-
-		String parentIndent = getIndent(parent);
-		if (parent instanceof org.w3c.dom.css.CSSRule)
-			return parentIndent + getIndentString();
-		if (node.getParentNode() instanceof ICSSStyleDeclaration)
-			return parentIndent + getIndentString();
-		return parentIndent;
-	}
-
-	/**
-	 * 
-	 */
-	protected int getLastLineLength(ICSSNode node, StringBuffer source) {
-		if (node == null || source == null)
-			return 0;
-		String delim = getLineDelimiter(node);
-		String str = new String(source);
-		int n = str.lastIndexOf(delim);
-		if (n < 0)
-			return str.length();
-
-		return str.length() - n - delim.length();
-	}
-
-	/**
-	 * 
-	 * @return int
-	 * @param node
-	 *            org.eclipse.wst.css.core.model.interfaces.ICSSNode
-	 * @param insertPos
-	 *            int
-	 */
-	public int getLengthToReformatAfter(ICSSNode node, int insertPos) {
-		if (node == null)
-			return 0;
-		IndexedRegion nnode = (IndexedRegion) node;
-		if (insertPos < 0 || !nnode.contains(insertPos))
-			return 0;
-
-		IStructuredDocumentRegion flatNode = node.getOwnerDocument().getModel().getStructuredDocument().getRegionAtCharacterOffset(insertPos);
-		if (flatNode == null)
-			return 0;
-		ITextRegion region = flatNode.getRegionAtCharacterOffset(insertPos);
-		if (region == null)
-			return 0;
-		RegionIterator it = new RegionIterator(flatNode, region);
-		boolean found = false;
-		while (it.hasNext()) {
-			region = it.next();
-			// if (region.getType() != CSSRegionContexts.CSS_S &&
-			// region.getType() != CSSRegionContexts.CSS_DELIMITER &&
-			// region.getType() !=
-			// CSSRegionContexts.CSS_DECLARATION_DELIMITER) {
-			if (region.getType() != CSSRegionContexts.CSS_S) {
-				found = true;
-				break;
-			}
-		}
-		int pos = (found ? it.getStructuredDocumentRegion().getStartOffset(region) : it.getStructuredDocumentRegion().getTextEndOffset(region)) - insertPos;
-		return (pos >= 0) ? pos : 0;
-	}
-
-	/**
-	 * 
-	 * @return int
-	 * @param node
-	 *            org.eclipse.wst.css.core.model.interfaces.ICSSNode
-	 * @param insertPos
-	 *            int
-	 */
-	public int getLengthToReformatBefore(ICSSNode node, int insertPos) {
-		if (node == null)
-			return 0;
-		IndexedRegion nnode = (IndexedRegion) node;
-		if (insertPos <= 0 || !nnode.contains(insertPos - 1))
-			return 0;
-
-		IStructuredDocumentRegion flatNode = node.getOwnerDocument().getModel().getStructuredDocument().getRegionAtCharacterOffset(insertPos - 1);
-		if (flatNode == null)
-			return 0;
-		ITextRegion region = flatNode.getRegionAtCharacterOffset(insertPos - 1);
-		if (region == null)
-			return 0;
-		RegionIterator it = new RegionIterator(flatNode, region);
-		boolean found = false;
-		while (it.hasPrev()) {
-			region = it.prev();
-			// if (region.getType() != CSSRegionContexts.CSS_S &&
-			// region.getType() != CSSRegionContexts.CSS_DELIMITER &&
-			// region.getType() !=
-			// CSSRegionContexts.CSS_DECLARATION_DELIMITER) {
-			if (region.getType() != CSSRegionContexts.CSS_S) {
-				found = true;
-				break;
-			}
-		}
-		int pos = insertPos - (found ? it.getStructuredDocumentRegion().getTextEndOffset(region) : it.getStructuredDocumentRegion().getStartOffset(region));
-		// flatNode = it.getStructuredDocumentRegion();
-		// if (found) {
-		// if (region.getLength() != region.getTextLength()) {
-		// pos = insertPos - flatNode.getTextEndOffset(region);
-		// } else {
-		// pos = insertPos - flatNode.getEndOffset(region);
-		// }
-		// } else {
-		// pos = insertPos - flatNode.getStartOffset(region);
-		// }
-		return (pos >= 0) ? pos : 0;
-	}
-
-	/**
-	 * 
-	 */
-	String getLineDelimiter(ICSSNode node) {
-		ICSSModel model = (node != null) ? node.getOwnerDocument().getModel() : null;
-		return (model != null) ? model.getStructuredDocument().getLineDelimiter() : "\n"; //$NON-NLS-1$
-
-		// TODO : check whether to use model.getLineDelimiter() or
-		// model.getStructuredDocument().getLineDelimiter()
-	}
-
-	/**
-	 * 
-	 */
-	protected CompoundRegion[] getOutsideRegions(IStructuredDocument model, IRegion reg) {
-		CompoundRegion[] ret = new CompoundRegion[2];
-		RegionIterator it = new RegionIterator(model, reg.getOffset());
-		it.prev();
-		if (it.hasPrev()) {
-			ITextRegion textRegion = it.prev();
-			IStructuredDocumentRegion documentRegion = it.getStructuredDocumentRegion();
-			ret[0] = new CompoundRegion(documentRegion, textRegion);
-		} else {
-			ret[0] = null;
-		}
-		it.reset(model, reg.getOffset() + reg.getLength());
-		if (it.hasNext()) {
-			ITextRegion textRegion = it.next();
-			IStructuredDocumentRegion documentRegion = it.getStructuredDocumentRegion();
-			ret[1] = new CompoundRegion(documentRegion, textRegion);
-		} else {
-			ret[1] = null;
-		}
-		return ret;
-	}
-
-	/**
-	 */
-	protected CSSSourceGenerator getParentFormatter(ICSSNode node) {
-		ICSSNode parent = node.getParentNode();
-		if (parent != null) {
-			CSSSourceGenerator formatter = (CSSSourceGenerator) ((INodeNotifier) parent).getAdapterFor(CSSSourceFormatter.class);
-			if (formatter == null) {
-				formatter = CSSSourceFormatterFactory.getInstance().getSourceFormatter((INodeNotifier) parent);
-			}
-			return formatter;
-		}
-		return null;
-	}
-
-	/**
-	 * 
-	 */
-	protected CompoundRegion[] getRegions(IStructuredDocument model, IRegion reg, IRegion exceptFor, String pickupType) {
-		int start = reg.getOffset();
-		int end = reg.getOffset() + reg.getLength();
-		int startE = (exceptFor != null) ? exceptFor.getOffset() : -1;
-		int endE = (exceptFor != null) ? exceptFor.getOffset() + exceptFor.getLength() : 0;
-
-		ArrayList list = new ArrayList();
-		IStructuredDocumentRegion flatNode = model.getRegionAtCharacterOffset(start);
-		boolean pickuped = false;
-		while (flatNode != null && flatNode.getStartOffset() < end) {
-			ITextRegionList regionList = flatNode.getRegions();
-			Iterator it = regionList.iterator();
-			while (it.hasNext()) {
-				ITextRegion region = (ITextRegion) it.next();
-				if (flatNode.getStartOffset(region) < start)
-					continue;
-				if (end <= flatNode.getStartOffset(region))
-					break;
-				if (startE >= 0 && startE <= flatNode.getStartOffset(region) && flatNode.getEndOffset(region) <= endE)
-					continue;
-				if (region.getType() == CSSRegionContexts.CSS_COMMENT || region.getType() == CSSRegionContexts.CSS_CDC || region.getType() == CSSRegionContexts.CSS_CDO)
-					list.add(new CompoundRegion(flatNode, region));
-				else if (!pickuped && region.getType() == pickupType) {
-					list.add(new CompoundRegion(flatNode, region));
-					pickuped = true;
-				}
-			}
-			flatNode = flatNode.getNext();
-		}
-		if (list.size() > 0) {
-			CompoundRegion[] regions = new CompoundRegion[list.size()];
-			list.toArray(regions);
-			return regions;
-		}
-		return new CompoundRegion[0];
-	}
-
-	/**
-	 * 
-	 */
-	protected CompoundRegion[] getRegionsWithoutWhiteSpaces(IStructuredDocument model, IRegion reg, CSSCleanupStrategy stgy) {
-		int start = reg.getOffset();
-		int end = reg.getOffset() + reg.getLength() - 1;
-		ArrayList list = new ArrayList();
-		IStructuredDocumentRegion flatNode = model.getRegionAtCharacterOffset(start);
-		while (flatNode != null && flatNode.getStartOffset() <= end) {
-			ITextRegionList regionList = flatNode.getRegions();
-			Iterator it = regionList.iterator();
-			while (it.hasNext()) {
-				ITextRegion region = (ITextRegion) it.next();
-				if (flatNode.getStartOffset(region) < start)
-					continue;
-				if (end < flatNode.getStartOffset(region))
-					break;
-				if (region.getType() != CSSRegionContexts.CSS_S || (isCleanup() && !stgy.isFormatSource())) // for
-					// not
-					// formatting
-					// case
-					// on
-					// cleanup
-					// action
-					list.add(new CompoundRegion(flatNode, region));
-			}
-			flatNode = flatNode.getNext();
-		}
-		if (list.size() > 0) {
-			CompoundRegion[] regions = new CompoundRegion[list.size()];
-			list.toArray(regions);
-			return regions;
-		}
-		return new CompoundRegion[0];
-	}
-
-	/**
-	 * 
-	 */
-	public static boolean includes(IRegion region, int start, int end) {
-		if (region == null)
-			return false;
-
-		return (region.getOffset() <= start) && (end <= region.getOffset() + region.getLength());
-	}
-
-	/**
-	 * 
-	 * @return boolean
-	 */
-	protected static boolean isCleanup() {
-		return strategy == CLEANUP;
-	}
-
-	/**
-	 * 
-	 * @return boolean
-	 */
-	protected static boolean isFormat() {
-		return strategy == FORMAT;
-	}
-
-	/**
-	 * 
-	 */
-	protected boolean isIncludesPreEnd(ICSSNode node, IRegion region) {
-		return (node.getFirstChild() != null && ((IndexedRegion) node.getFirstChild()).getStartOffset() == (region.getOffset() + region.getLength()));
-	}
-
-	/**
-	 * 
-	 */
-	static protected boolean needS(CompoundRegion region) {
-		return (region != null && region.getType() != CSSRegionContexts.CSS_S);
-	}
-
-	/**
-	 * 
-	 */
-	public static IRegion overlappedRegion(IRegion region, int start, int end) {
-		if (overlaps(region, start, end)) {
-			int offset = (region.getOffset() <= start) ? start : region.getOffset();
-			int length = ((end <= region.getOffset() + region.getLength()) ? end : region.getOffset() + region.getLength()) - offset;
-			return new FormatRegion(offset, length);
-		}
-		return null;
-	}
-
-	/**
-	 * 
-	 */
-	public static boolean overlaps(IRegion region, int start, int end) {
-		if (region == null)
-			return false;
-
-		return (start < region.getOffset() + region.getLength()) && (region.getOffset() < end);
-	}
-
-	private String getIndentString() {
-		String indent = ""; //$NON-NLS-1$
-
-		Preferences preferences = CSSCorePlugin.getDefault().getPluginPreferences();
-		if (preferences != null) {
-			String indentChar = " "; //$NON-NLS-1$
-			String indentCharPref = preferences.getString(CSSCorePreferenceNames.INDENTATION_CHAR);
-			if (CSSCorePreferenceNames.TAB.equals(indentCharPref)) {
-				indentChar = "\t"; //$NON-NLS-1$
-			}
-			int indentationWidth = preferences.getInt(CSSCorePreferenceNames.INDENTATION_SIZE);
-
-			for (int i = 0; i < indentationWidth; i++) {
-				indent += indentChar;
-			}
-		}
-		return indent;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/formatter/AttrChangeContext.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/formatter/AttrChangeContext.java
deleted file mode 100644
index 924a73e..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/formatter/AttrChangeContext.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.css.core.internal.formatter;
-
-
-
-/**
- * 
- */
-public class AttrChangeContext {
-
-	public int start, end;
-
-	/**
-	 * 
-	 */
-	public AttrChangeContext() {
-		super();
-		start = end = 0;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/formatter/AttrFormatter.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/formatter/AttrFormatter.java
deleted file mode 100644
index 6401d41..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/formatter/AttrFormatter.java
+++ /dev/null
@@ -1,168 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this 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.core.internal.formatter;
-
-
-
-import org.eclipse.core.runtime.Preferences;
-import org.eclipse.jface.text.IRegion;
-import org.eclipse.wst.css.core.internal.CSSCorePlugin;
-import org.eclipse.wst.css.core.internal.cleanup.CSSCleanupStrategy;
-import org.eclipse.wst.css.core.internal.preferences.CSSCorePreferenceNames;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSAttr;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSCharsetRule;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSImportRule;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSNode;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSPageRule;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSStyleDeclItem;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSStyleRule;
-import org.eclipse.wst.css.core.internal.util.CSSUtil;
-import org.eclipse.wst.sse.core.internal.provisional.IndexedRegion;
-import org.eclipse.wst.sse.core.internal.provisional.text.IStructuredDocument;
-
-
-/**
- * 
- */
-public class AttrFormatter extends DefaultCSSSourceFormatter {
-
-	private static AttrFormatter instance;
-
-	/**
-	 * 
-	 */
-	AttrFormatter() {
-		super();
-	}
-
-	/**
-	 * 
-	 */
-	protected void formatPre(ICSSNode node, StringBuffer source) {
-		ICSSAttr attr = (ICSSAttr) node;
-		CSSCleanupStrategy stgy = getCleanupStrategy(node);
-
-		int end = ((IndexedRegion) node).getEndOffset();
-		if (end > 0) { // format source
-			int start = ((IndexedRegion) node).getStartOffset();
-			IStructuredDocument structuredDocument = node.getOwnerDocument().getModel().getStructuredDocument();
-			CompoundRegion[] regions = getRegionsWithoutWhiteSpaces(structuredDocument, new FormatRegion(start, end - start), stgy);
-
-			if (attr.getName().equals(ICSSStyleRule.SELECTOR) || attr.getName().equals(ICSSPageRule.SELECTOR)) {
-				for (int i = 0; i < regions.length; i++) {
-					if (i != 0)
-						appendSpaceBetween(node, regions[i - 1], regions[i], source);
-					source.append(decoratedRegion(regions[i], 0, stgy));
-				}
-			}
-			else if (attr.getName().equals(ICSSImportRule.HREF)) {
-				for (int i = 0; i < regions.length; i++) {
-					if (i != 0)
-						appendSpaceBefore(node, regions[i], source);
-					source.append(decoratedPropValueRegion(regions[i], stgy));
-				}
-			}
-			else if (attr.getName().equals(ICSSCharsetRule.ENCODING)) {
-				for (int i = 0; i < regions.length; i++) {
-					if (i != 0)
-						appendSpaceBefore(node, regions[i], source);
-					source.append(decoratedIdentRegion(regions[i], stgy));
-				}
-			}
-			else if (attr.getName().equals(ICSSStyleDeclItem.IMPORTANT)) {
-				for (int i = 0; i < regions.length; i++) {
-					if (i != 0)
-						appendSpaceBefore(node, regions[i], source);
-					source.append(decoratedPropValueRegion(regions[i], stgy));
-				}
-			}
-			else if (attr.getName() == null || attr.getName().length() == 0) {
-				for (int i = 0; i < regions.length; i++) {
-					if (i != 0)
-						appendSpaceBefore(node, regions[i], source);
-					source.append(decoratedIdentRegion(regions[i], stgy));
-				}
-			}
-			else {
-				// counter attributes
-				for (int i = 0; i < regions.length; i++) {
-					if (i != 0)
-						appendSpaceBefore(node, regions[i], source);
-					source.append(decoratedPropValueRegion(regions[i], stgy));
-				}
-			}
-		}
-		else { // generate source
-			Preferences preferences = CSSCorePlugin.getDefault().getPluginPreferences();
-			
-			String value = attr.getValue();
-			if (value == null)
-				value = "";//$NON-NLS-1$
-			if (attr.getName().equals(ICSSStyleRule.SELECTOR) || attr.getName().equals(ICSSPageRule.SELECTOR)) {
-			}
-			else if (attr.getName().equals(ICSSImportRule.HREF)) {
-				String uri = org.eclipse.wst.css.core.internal.util.CSSLinkConverter.stripFunc(value);
-				String func = preferences.getInt(CSSCorePreferenceNames.CASE_PROPERTY_VALUE) == CSSCorePreferenceNames.UPPER ? "URL(" : "url(";//$NON-NLS-2$//$NON-NLS-1$
-				if (preferences.getBoolean(CSSCorePreferenceNames.FORMAT_QUOTE_IN_URI)) {
-					String quote = preferences.getString(CSSCorePreferenceNames.FORMAT_QUOTE);
-					quote = CSSUtil.detectQuote(uri, quote);
-					value = func + quote + uri + quote + ")";//$NON-NLS-1$
-				}
-				else {
-					value = func + uri + ")";//$NON-NLS-1$
-				}
-			}
-			else if (attr.getName().equals(ICSSCharsetRule.ENCODING)) {
-				String quote = preferences.getString(CSSCorePreferenceNames.FORMAT_QUOTE);
-				if (!value.startsWith("\"") && !value.startsWith("\'"))//$NON-NLS-2$//$NON-NLS-1$
-					value = quote + value;
-				if (!value.endsWith("\"") && !value.endsWith("\'"))//$NON-NLS-2$//$NON-NLS-1$
-					value = value + quote;
-			}
-			else if (attr.getName().equals(ICSSStyleDeclItem.IMPORTANT)) {
-				if (preferences.getInt(CSSCorePreferenceNames.CASE_PROPERTY_VALUE) == CSSCorePreferenceNames.UPPER)
-					value = value.toUpperCase();
-				else
-					value = value.toLowerCase();
-			}
-			else if (attr.getName() == null || attr.getName().length() == 0) {
-				if (CSSCorePlugin.getDefault().getPluginPreferences().getInt(CSSCorePreferenceNames.CASE_IDENTIFIER) == CSSCorePreferenceNames.UPPER)
-					value = value.toUpperCase();
-				else
-					value = value.toLowerCase();
-			}
-			else {
-				if (preferences.getInt(CSSCorePreferenceNames.CASE_PROPERTY_VALUE) == CSSCorePreferenceNames.UPPER)
-					value = value.toUpperCase();
-				else
-					value = value.toLowerCase();
-			}
-			source.append(value);
-		}
-	}
-
-	/**
-	 * 
-	 */
-	protected void formatPre(ICSSNode node, IRegion region, StringBuffer source) {
-		formatPre(node, source);
-	}
-
-	/**
-	 * 
-	 */
-	public synchronized static AttrFormatter getInstance() {
-		if (instance == null) {
-			instance = new AttrFormatter();
-		}
-		return instance;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/formatter/CSSFormatUtil.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/formatter/CSSFormatUtil.java
deleted file mode 100644
index 4d2dc00..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/formatter/CSSFormatUtil.java
+++ /dev/null
@@ -1,165 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this 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.core.internal.formatter;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import org.eclipse.wst.css.core.internal.provisional.adapters.ICSSModelAdapter;
-import org.eclipse.wst.css.core.internal.provisional.adapters.IStyleDeclarationAdapter;
-import org.eclipse.wst.css.core.internal.provisional.adapters.IStyleSheetAdapter;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSModel;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSNode;
-import org.eclipse.wst.sse.core.internal.provisional.IStructuredModel;
-import org.eclipse.wst.sse.core.internal.provisional.IndexedRegion;
-import org.eclipse.wst.sse.core.internal.provisional.text.IStructuredDocument;
-import org.eclipse.wst.xml.core.internal.provisional.document.IDOMModel;
-import org.eclipse.wst.xml.core.internal.provisional.document.IDOMNode;
-import org.w3c.dom.Node;
-import org.w3c.dom.Text;
-
-
-public class CSSFormatUtil {
-	public List collectCSSNodes(IStructuredModel model, int start, int length) {
-		List nodes = new ArrayList();
-
-		IndexedRegion startNode = model.getIndexedRegion(start);
-		IndexedRegion endNode = model.getIndexedRegion(start + length - 1);
-
-		if (startNode == null || endNode == null) {
-			return nodes;
-		}
-
-		if (model instanceof ICSSModel && startNode instanceof ICSSNode && endNode instanceof ICSSNode) {
-			// CSS model
-			ICSSNode ca = getCommonAncestor((ICSSNode) startNode, (ICSSNode) endNode);
-			if (ca != null) {
-				for (ICSSNode node = ca.getFirstChild(); node != null && start + length < ((IndexedRegion) node).getStartOffset(); node = node.getNextSibling()) {
-					if (start < ((IndexedRegion) node).getEndOffset()) {
-						nodes.add(node);
-					}
-				}
-			}
-		}
-		else if (model instanceof IDOMModel && startNode instanceof IDOMNode && endNode instanceof IDOMNode) {
-			if (startNode instanceof Text) {
-				startNode = (IndexedRegion) ((Text) startNode).getParentNode();
-			}
-			if (endNode instanceof Text) {
-				endNode = (IndexedRegion) ((Text) endNode).getParentNode();
-			}
-			// HTML model, maybe
-			IDOMNode ca = (IDOMNode) getCommonAncestor((Node) startNode, (Node) endNode);
-			findCSS(nodes, ca);
-		}
-
-		return nodes;
-	}
-
-	/**
-	 * getCommonAncestor method
-	 * 
-	 * @return org.w3c.dom.Node
-	 * @param node
-	 *            org.w3c.dom.Node
-	 */
-	private Node getCommonAncestor(Node node1, Node node2) {
-		if (node1 == null || node2 == null)
-			return null;
-
-		for (Node na = node2; na != null; na = na.getParentNode()) {
-			for (Node ta = node1; ta != null; ta = ta.getParentNode()) {
-				if (ta == na)
-					return ta;
-			}
-		}
-		return null; // not found
-	}
-
-	private void findCSS(List cssNodes, IDOMNode node) {
-		ICSSModelAdapter adapter;
-		adapter = (ICSSModelAdapter) node.getAdapterFor(IStyleSheetAdapter.class);
-		if (adapter != null) {
-			ICSSModel model = adapter.getModel();
-			if (model != null && model.getStyleSheetType() == ICSSModel.EMBEDDED) {
-				cssNodes.add(model.getDocument());
-			}
-		}
-		else {
-			adapter = (ICSSModelAdapter) node.getAdapterFor(IStyleDeclarationAdapter.class);
-			if (adapter != null) {
-				ICSSModel model = adapter.getModel();
-				if (model != null && model.getStyleSheetType() == ICSSModel.INLINE) {
-					cssNodes.add(model.getDocument());
-				}
-			}
-		}
-
-		for (IDOMNode child = (IDOMNode) node.getFirstChild(); child != null; child = (IDOMNode) child.getNextSibling()) {
-			findCSS(cssNodes, child);
-		}
-	}
-
-	private ICSSNode getCommonAncestor(ICSSNode nodeA, ICSSNode nodeB) {
-		if (nodeA == null || nodeB == null) {
-			return null;
-		}
-
-		for (ICSSNode na = nodeA; na != null; na = na.getParentNode()) {
-			for (ICSSNode ta = nodeB; ta != null; ta = ta.getParentNode()) {
-				if (ta == na) {
-					return ta;
-				}
-			}
-		}
-
-		return null; // not found
-	}
-
-	/**
-	 */
-	public void replaceSource(IStructuredModel model, int offset, int length, String source) {
-		if (model == null)
-			return;
-		IStructuredDocument structuredDocument = model.getStructuredDocument();
-		if (structuredDocument == null)
-			return;
-		if (offset >= 0 && length >= 0 && offset + length <= structuredDocument.getLength()) {
-			if (structuredDocument.containsReadOnly(offset, length))
-				return;
-			if (source == null)
-				source = new String();
-			// We use 'structuredDocument' as the requester object just so
-			// this and the other
-			// format-related 'repalceText' (in replaceSource) can use the
-			// same requester.
-			// Otherwise, if requester is not identical,
-			// the undo group gets "broken" into multiple pieces based
-			// on the requesters being different. Technically, any unique,
-			// common
-			// requester object would work.
-			structuredDocument.replaceText(structuredDocument, offset, length, source);
-		}
-	}
-
-	public synchronized static CSSFormatUtil getInstance() {
-		if (fInstance == null) {
-			fInstance = new CSSFormatUtil();
-		}
-		return fInstance;
-	}
-
-	private CSSFormatUtil() {
-		super();
-	}
-
-	private static CSSFormatUtil fInstance;
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/formatter/CSSSourceFormatter.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/formatter/CSSSourceFormatter.java
deleted file mode 100644
index 4a9af06..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/formatter/CSSSourceFormatter.java
+++ /dev/null
@@ -1,48 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this 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.core.internal.formatter;
-
-
-
-import org.eclipse.jface.text.IRegion;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSNode;
-
-
-/**
- * 
- */
-public interface CSSSourceFormatter {
-
-	/**
-	 * 
-	 */
-	StringBuffer cleanup(ICSSNode node);
-
-	/**
-	 * 
-	 * @return java.lang.StringBuffer
-	 * @param node
-	 *            org.eclipse.wst.css.core.model.interfaces.ICSSNode
-	 * @param region
-	 *            org.eclipse.jface.text.IRegion
-	 */
-	StringBuffer cleanup(ICSSNode node, IRegion region);
-
-	/**
-	 * 
-	 */
-	StringBuffer format(ICSSNode node);
-
-	/**
-	 * 
-	 */
-	StringBuffer format(ICSSNode node, IRegion region);
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/formatter/CSSSourceFormatterFactory.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/formatter/CSSSourceFormatterFactory.java
deleted file mode 100644
index e3bf596..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/formatter/CSSSourceFormatterFactory.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.wst.css.core.internal.formatter;
-
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSNode;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSPrimitiveValue;
-import org.eclipse.wst.sse.core.internal.provisional.INodeNotifier;
-
-
-/**
- * 
- */
-public class CSSSourceFormatterFactory {
-	/**
-	 * 
-	 */
-	private CSSSourceFormatterFactory() {
-		super();
-	}
-
-	/**
-	 * 
-	 */
-	public CSSSourceGenerator getSourceFormatter(INodeNotifier target) {
-		ICSSNode node = (ICSSNode) target;
-		short type = node.getNodeType();
-		switch (type) {
-			case ICSSNode.CHARSETRULE_NODE :
-				return CharsetRuleFormatter.getInstance();
-			case ICSSNode.FONTFACERULE_NODE :
-				return FontFaceRuleFormatter.getInstance();
-			case ICSSNode.IMPORTRULE_NODE :
-				return ImportRuleFormatter.getInstance();
-			case ICSSNode.MEDIALIST_NODE :
-				return MediaListFormatter.getInstance();
-			case ICSSNode.MEDIARULE_NODE :
-				return MediaRuleFormatter.getInstance();
-			case ICSSNode.PRIMITIVEVALUE_NODE :
-				ICSSPrimitiveValue value = (ICSSPrimitiveValue) node;
-				if (value.getPrimitiveType() == org.w3c.dom.css.CSSPrimitiveValue.CSS_COUNTER)
-					return CounterFormatter.getInstance();
-				else if (value.getPrimitiveType() == org.w3c.dom.css.CSSPrimitiveValue.CSS_RECT)
-					return RectFormatter.getInstance();
-				else if (value.getPrimitiveType() == org.w3c.dom.css.CSSPrimitiveValue.CSS_RGBCOLOR)
-					return RGBFormatter.getInstance();
-				else
-					return PrimitiveValueFormatter.getInstance();
-			case ICSSNode.PAGERULE_NODE :
-				return PageRuleFormatter.getInstance();
-			case ICSSNode.STYLEDECLARATION_NODE :
-				return StyleDeclarationFormatter.getInstance();
-			case ICSSNode.STYLEDECLITEM_NODE :
-				return StyleDeclItemFormatter.getInstance();
-			case ICSSNode.STYLERULE_NODE :
-				return StyleRuleFormatter.getInstance();
-			case ICSSNode.STYLESHEET_NODE :
-				return StyleSheetFormatter.getInstance();
-			case ICSSNode.ATTR_NODE :
-				return AttrFormatter.getInstance();
-			default :
-				return UnknownRuleFormatter.getInstance();
-		}
-	}
-
-	public synchronized static CSSSourceFormatterFactory getInstance() {
-		if (fInstance == null) {
-			fInstance = new CSSSourceFormatterFactory();
-		}
-		return fInstance;
-	}
-
-	private static CSSSourceFormatterFactory fInstance;
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/formatter/CSSSourceGenerator.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/formatter/CSSSourceGenerator.java
deleted file mode 100644
index edfe8cb..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/formatter/CSSSourceGenerator.java
+++ /dev/null
@@ -1,61 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this 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.core.internal.formatter;
-
-
-
-import org.eclipse.jface.text.IRegion;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSAttr;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSNode;
-
-
-public interface CSSSourceGenerator extends CSSSourceFormatter {
-
-	/**
-	 * 
-	 */
-	StringBuffer formatAttrChanged(ICSSNode node, ICSSAttr attr, boolean insert, AttrChangeContext region);
-
-	/**
-	 * 
-	 */
-	StringBuffer formatBefore(ICSSNode node, ICSSNode child, IRegion exceptFor);
-
-	/**
-	 * 
-	 */
-	int getAttrInsertPos(ICSSNode node, String attrName);
-
-	/**
-	 * 
-	 */
-	int getChildInsertPos(ICSSNode node);
-
-	/**
-	 * 
-	 * @return int
-	 * @param node
-	 *            org.eclipse.wst.css.core.model.interfaces.ICSSNode
-	 * @param insertPos
-	 *            int
-	 */
-	int getLengthToReformatAfter(ICSSNode node, int insertPos);
-
-	/**
-	 * 
-	 * @return int
-	 * @param node
-	 *            org.eclipse.wst.css.core.model.interfaces.ICSSNode
-	 * @param insertPos
-	 *            int
-	 */
-	int getLengthToReformatBefore(ICSSNode node, int insertPos);
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/formatter/CharsetRuleFormatter.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/formatter/CharsetRuleFormatter.java
deleted file mode 100644
index 7190fc9..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/formatter/CharsetRuleFormatter.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.core.internal.formatter;
-
-
-
-import org.eclipse.core.runtime.Preferences;
-import org.eclipse.jface.text.IRegion;
-import org.eclipse.wst.css.core.internal.CSSCorePlugin;
-import org.eclipse.wst.css.core.internal.cleanup.CSSCleanupStrategy;
-import org.eclipse.wst.css.core.internal.parserz.CSSRegionContexts;
-import org.eclipse.wst.css.core.internal.preferences.CSSCorePreferenceNames;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSAttr;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSCharsetRule;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSNode;
-import org.eclipse.wst.css.core.internal.util.CSSUtil;
-import org.eclipse.wst.css.core.internal.util.RegionIterator;
-import org.eclipse.wst.sse.core.internal.provisional.IndexedRegion;
-import org.eclipse.wst.sse.core.internal.provisional.text.IStructuredDocument;
-import org.eclipse.wst.sse.core.internal.provisional.text.IStructuredDocumentRegion;
-import org.eclipse.wst.sse.core.internal.provisional.text.ITextRegion;
-
-
-/**
- * 
- */
-public class CharsetRuleFormatter extends DefaultCSSSourceFormatter {
-
-	public final static java.lang.String CHARSET = "@charset";//$NON-NLS-1$
-	private static CharsetRuleFormatter instance;
-
-	/**
-	 * 
-	 */
-	CharsetRuleFormatter() {
-		super();
-	}
-
-	/**
-	 * 
-	 */
-	public StringBuffer formatAttrChanged(ICSSNode node, ICSSAttr attr, boolean insert, AttrChangeContext context) {
-		StringBuffer buf = new StringBuffer();
-		if (node == null || attr == null)
-			return buf;
-
-		if (!ICSSCharsetRule.ENCODING.equalsIgnoreCase(attr.getName()))
-			return buf;
-
-		// get region to replace
-		if (context != null && ((IndexedRegion) node).getEndOffset() > 0) {
-			if (attr != null && ((IndexedRegion) attr).getEndOffset() > 0) {
-				IStructuredDocumentRegion flatNode = node.getOwnerDocument().getModel().getStructuredDocument().getRegionAtCharacterOffset(((IndexedRegion) attr).getStartOffset());
-				ITextRegion region = flatNode.getRegionAtCharacterOffset(((IndexedRegion) attr).getStartOffset());
-				RegionIterator it = new RegionIterator(flatNode, region);
-				it.prev();
-				if (it.hasPrev()) {
-					ITextRegion prev = it.prev();
-					if (prev.getType() == CSSRegionContexts.CSS_S)
-						context.start = it.getStructuredDocumentRegion().getStartOffset(prev);
-					else
-						context.start = it.getStructuredDocumentRegion().getStartOffset(region);
-				} else
-					context.start = it.getStructuredDocumentRegion().getStartOffset(region);
-				context.end = it.getStructuredDocumentRegion().getEndOffset(region);
-			} else {
-				IStructuredDocumentRegion flatNode = node.getOwnerDocument().getModel().getStructuredDocument().getRegionAtCharacterOffset(((IndexedRegion) node).getEndOffset() - 1);
-				ITextRegion region = flatNode.getRegionAtCharacterOffset(((IndexedRegion) node).getEndOffset() - 1);
-				if (region.getType() == CSSRegionContexts.CSS_S) {
-					context.start = flatNode.getStartOffset(region);
-					context.end = flatNode.getStartOffset(region);
-				} else {
-					context.start = flatNode.getEndOffset() + 1;
-					context.end = flatNode.getEndOffset();
-				}
-			}
-		}
-		// generate text
-		if (insert) {
-			appendSpaceBefore(node, attr.getValue(), buf);
-			buf.append(attr.getValue());
-		}
-		return buf;
-	}
-
-	/**
-	 * 
-	 */
-	protected void formatPre(ICSSNode node, StringBuffer source) {
-		int end = ((IndexedRegion) node).getEndOffset();
-		if (end > 0) { // format source
-			int start = ((IndexedRegion) node).getStartOffset();
-			formatPre(node, new FormatRegion(start, end - start), source);
-		} else { // generate source
-			Preferences preferences = CSSCorePlugin.getDefault().getPluginPreferences();
-
-			String quote = preferences.getString(CSSCorePreferenceNames.FORMAT_QUOTE);
-			String str = CHARSET;
-			if (preferences.getInt(CSSCorePreferenceNames.CASE_IDENTIFIER) == CSSCorePreferenceNames.UPPER)
-				str = CHARSET.toUpperCase();
-			source.append(str);
-			String enc = ((ICSSCharsetRule) node).getEncoding();
-			quote = CSSUtil.detectQuote(enc, quote);
-			str = quote + ((enc != null) ? enc : "") + quote + ";";//$NON-NLS-1$ //$NON-NLS-2$
-			appendSpaceBefore(node, str, source);
-			source.append(str);
-		}
-	}
-
-	/**
-	 * 
-	 */
-	protected void formatPre(ICSSNode node, IRegion region, StringBuffer source) {
-		IStructuredDocument structuredDocument = node.getOwnerDocument().getModel().getStructuredDocument();
-		CSSCleanupStrategy stgy = getCleanupStrategy(node);
-
-		CompoundRegion[] regions = getRegionsWithoutWhiteSpaces(structuredDocument, region, stgy);
-		CompoundRegion[] outside = getOutsideRegions(structuredDocument, region);
-		for (int i = 0; i < regions.length; i++) {
-			if ((i != 0 || needS(outside[0])) && !regions[i].getType().equals(CSSRegionContexts.CSS_DELIMITER))
-				appendSpaceBefore(node, regions[i], source);
-			source.append(decoratedIdentRegion(regions[i], stgy));
-		}
-		if (needS(outside[1]) && !isIncludesPreEnd(node, region))
-			appendSpaceBefore(node, outside[1], source);
-	}
-
-	/**
-	 * 
-	 */
-	public int getAttrInsertPos(ICSSNode node, String attrName) {
-		if (node == null || attrName == null || attrName.length() == 0)
-			return -1;
-		CSSCleanupStrategy stgy = getCleanupStrategy(node);
-
-		if (!ICSSCharsetRule.ENCODING.equalsIgnoreCase(attrName))
-			return -1;
-
-		ICSSAttr attr = (ICSSAttr) node.getAttributes().getNamedItem(ICSSCharsetRule.ENCODING);
-		if (attr != null && ((IndexedRegion) attr).getEndOffset() > 0)
-			return ((IndexedRegion) attr).getStartOffset();
-		IndexedRegion iNode = (IndexedRegion) node;
-		if (iNode.getEndOffset() <= 0)
-			return -1;
-
-		CompoundRegion regions[] = getRegionsWithoutWhiteSpaces(node.getOwnerDocument().getModel().getStructuredDocument(), new FormatRegion(iNode.getStartOffset(), iNode.getEndOffset() - iNode.getStartOffset()), stgy);
-		for (int i = regions.length - 1; i >= 0; i--) {
-			if (regions[i].getType() != CSSRegionContexts.CSS_COMMENT)
-				return regions[i].getStartOffset();
-		}
-		return iNode.getEndOffset();
-	}
-
-	/**
-	 * 
-	 */
-	public int getChildInsertPos(ICSSNode node) {
-		int n = ((IndexedRegion) node).getEndOffset();
-		if (n > 0) {
-			IStructuredDocumentRegion flatNode = node.getOwnerDocument().getModel().getStructuredDocument().getRegionAtCharacterOffset(n - 1);
-			if (flatNode.getRegionAtCharacterOffset(n - 1).getType() == CSSRegionContexts.CSS_DELIMITER)
-				return n - 1;
-			return n;
-		}
-		return -1;
-	}
-
-	/**
-	 * 
-	 */
-	public synchronized static CharsetRuleFormatter getInstance() {
-		if (instance == null)
-			instance = new CharsetRuleFormatter();
-		return instance;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/formatter/CompoundRegion.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/formatter/CompoundRegion.java
deleted file mode 100644
index 9b3c8ff..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/formatter/CompoundRegion.java
+++ /dev/null
@@ -1,52 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this 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.core.internal.formatter;
-
-import org.eclipse.wst.sse.core.internal.provisional.text.IStructuredDocumentRegion;
-import org.eclipse.wst.sse.core.internal.provisional.text.ITextRegion;
-
-class CompoundRegion {
-
-	CompoundRegion(IStructuredDocumentRegion documentRegion, ITextRegion textRegion) {
-		super();
-		this.fDocumentRegion = documentRegion;
-		this.fTextRegion = textRegion;
-	}
-
-	IStructuredDocumentRegion getDocumentRegion() {
-		return fDocumentRegion;
-	}
-
-	ITextRegion getTextRegion() {
-		return fTextRegion;
-	}
-
-	String getType() {
-		return fTextRegion.getType();
-	}
-
-	String getText() {
-		return fDocumentRegion.getText(fTextRegion);
-	}
-
-	int getStartOffset() {
-		return fDocumentRegion.getStartOffset(fTextRegion);
-	}
-
-	int getEndOffset() {
-		return fDocumentRegion.getEndOffset(fTextRegion);
-	}
-
-
-	private IStructuredDocumentRegion fDocumentRegion;
-	private ITextRegion fTextRegion;
-
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/formatter/CounterFormatter.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/formatter/CounterFormatter.java
deleted file mode 100644
index 331dd1b..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/formatter/CounterFormatter.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.core.internal.formatter;
-
-
-
-import org.eclipse.core.runtime.Preferences;
-import org.eclipse.jface.text.IRegion;
-import org.eclipse.wst.css.core.internal.CSSCorePlugin;
-import org.eclipse.wst.css.core.internal.cleanup.CSSCleanupStrategy;
-import org.eclipse.wst.css.core.internal.parserz.CSSRegionContexts;
-import org.eclipse.wst.css.core.internal.preferences.CSSCorePreferenceNames;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSAttr;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSNode;
-import org.eclipse.wst.css.core.internal.provisional.document.ICounter;
-import org.eclipse.wst.css.core.internal.util.CSSUtil;
-import org.eclipse.wst.css.core.internal.util.RegionIterator;
-import org.eclipse.wst.sse.core.internal.provisional.IndexedRegion;
-import org.eclipse.wst.sse.core.internal.provisional.text.IStructuredDocument;
-import org.eclipse.wst.sse.core.internal.provisional.text.IStructuredDocumentRegion;
-import org.eclipse.wst.sse.core.internal.provisional.text.ITextRegion;
-
-
-/**
- * 
- */
-public class CounterFormatter extends DefaultCSSSourceFormatter {
-
-	private static CounterFormatter instance;
-
-	/**
-	 * 
-	 */
-	CounterFormatter() {
-		super();
-	}
-
-	/**
-	 * 
-	 */
-	public StringBuffer formatAttrChanged(ICSSNode node, ICSSAttr attr, boolean insert, AttrChangeContext context) {
-		Preferences preferences = CSSCorePlugin.getDefault().getPluginPreferences();
-		
-		StringBuffer source = new StringBuffer();
-		if (node == null || attr == null)
-			return source;
-
-		if (!ICounter.IDENTIFIER.equalsIgnoreCase(attr.getName()) && !ICounter.LISTSTYLE.equalsIgnoreCase(attr.getName()) && !ICounter.SEPARATOR.equalsIgnoreCase(attr.getName()))
-			return source;
-
-		// get region to replace
-		IndexedRegion iNode = (IndexedRegion) node;
-		context.start = iNode.getStartOffset();
-		context.end = iNode.getEndOffset();
-
-		ICounter counter = (ICounter) node;
-		String quote = preferences.getString(CSSCorePreferenceNames.FORMAT_QUOTE);
-		String sep = counter.getSeparator();
-		String ident = counter.getIdentifier();
-		String style = counter.getListStyle();
-
-		if (ICounter.IDENTIFIER.equalsIgnoreCase(attr.getName())) {
-			if (insert)
-				ident = attr.getValue();
-			else
-				ident = "";//$NON-NLS-1$
-		}
-		else if (ICounter.LISTSTYLE.equalsIgnoreCase(attr.getName())) {
-			if (insert)
-				style = attr.getValue();
-			else
-				style = null;
-		}
-		else if (ICounter.SEPARATOR.equalsIgnoreCase(attr.getName())) {
-			if (insert)
-				sep = attr.getValue();
-			else
-				sep = null;
-		}
-
-		quote = CSSUtil.detectQuote(sep, quote);
-		sep = (sep == null || sep.length() == 0) ? null : (quote + sep + quote);
-
-		String func = (sep == null || sep.length() == 0) ? "counter(" : "counters(";//$NON-NLS-2$//$NON-NLS-1$
-		if (preferences.getInt(CSSCorePreferenceNames.CASE_PROPERTY_VALUE) == CSSCorePreferenceNames.UPPER) {
-			ident = ident.toUpperCase();
-			style = style.toUpperCase();
-			func = func.toUpperCase();
-		}
-		else {
-			ident = ident.toLowerCase();
-			style = style.toLowerCase();
-		}
-		if (sep == null || sep.length() == 0) {
-			source.append(func);
-			appendSpaceBefore(node, ident, source);
-			source.append(ident);
-		}
-		else {
-			source.append(func);
-			appendSpaceBefore(node, ident, source);
-			source.append(ident);
-			source.append(",");//$NON-NLS-1$
-			appendSpaceBefore(node, sep, source);
-			source.append(sep);
-		}
-
-		if (style != null && style.length() != 0) {
-			source.append(",");//$NON-NLS-1$
-			appendSpaceBefore(node, style, source);
-		}
-		source.append(")");//$NON-NLS-1$
-
-		/*
-		 * IStructuredDocument structuredDocument =
-		 * node.getOwnerDocument().getModel().getStructuredDocument();
-		 * ITextRegion[] regions =
-		 * getRegionsWithoutWhiteSpaces(structuredDocument, new
-		 * FormatRegion(context.start, context.end - context.start + 1)); int
-		 * commas[2]; int numComma = 0; for(int j = 0; j <regions.length; j++) {
-		 * if (regions[j].getType() == CSSRegionContexts.COMMA) {
-		 * commas[numComma++] = j; if (numComma > 1) break; } }
-		 * 
-		 * if (ICounter.IDENTIFIER.equalsIgnoreCase(attr.getName())) { } else
-		 * if (ICounter.LISTSTYLE.equalsIgnoreCase(attr.getName())) { } else
-		 * if (ICounter.SEPARATOR.equalsIgnoreCase(attr.getName())) { boolean
-		 * skipSpace = false; String func = insert ? "counters(" : "counter(";
-		 * if (mgr.isPropValueUpperCase()) func = func.toUpperCase();
-		 * 
-		 * for(int i=0; i <regions.length; i++) { if (regions[i].getType() ==
-		 * CSSRegionContexts.CSS_DECLARATION_VALUE_FUNCTION)
-		 * source.append(func); else { if (numComma == 2 && commas[1] < i) {
-		 *  } else if (numComma == 1 && commas[0] < i && insert) {
-		 *  } else if (numComma == 1 && commas[0] < i && ! insert) { } else if
-		 * (numComma == 0 && insert && regions[i].getType ==
-		 * CSSRegionContexts.PARENTHESIS_CLOSE) { source.append(",");
-		 * appendSpaceBefore(node,attr.getValue(),source);
-		 * source.append(attr.getValue()); }
-		 * 
-		 * if (i != 0 && !skipSpace)
-		 * appendSpaceBefore(node,regions[i],source);
-		 * source.append(decoratedPropValueRegion(regions[i])); } skipSpace =
-		 * false;
-		 * 
-		 * if (regions[i].getType() ==
-		 * CSSRegionContexts.CSS_DECLARATION_VALUE_FUNCTION) skipSpace = true; } }
-		 */
-		return source;
-	}
-
-	/**
-	 * 
-	 */
-	protected void formatPre(ICSSNode node, StringBuffer source) {
-		int start = ((IndexedRegion) node).getStartOffset();
-		int end = ((IndexedRegion) node).getEndOffset();
-
-		Preferences preferences = CSSCorePlugin.getDefault().getPluginPreferences();
-		CSSCleanupStrategy stgy = getCleanupStrategy(node);
-
-		if (end > 0) { // format source
-			IStructuredDocument structuredDocument = node.getOwnerDocument().getModel().getStructuredDocument();
-			CompoundRegion[] regions = getRegionsWithoutWhiteSpaces(structuredDocument, new FormatRegion(start, end - start), stgy);
-			boolean skipSpace = false;
-			for (int i = 0; i < regions.length; i++) {
-				if (i != 0 && !skipSpace)
-					appendSpaceBefore(node, regions[i], source);
-				skipSpace = false;
-				source.append(decoratedPropValueRegion(regions[i], stgy));
-				if (regions[i].getType() == CSSRegionContexts.CSS_DECLARATION_VALUE_FUNCTION)
-					skipSpace = true;
-			}
-		}
-		else { // generate source
-			ICounter counter = (ICounter) node;
-			String quote = preferences.getString(CSSCorePreferenceNames.FORMAT_QUOTE);
-			String separator = counter.getSeparator();
-			quote = CSSUtil.detectQuote(separator, quote);
-			String sep = (separator == null || separator.length() == 0) ? null : (quote + separator + quote);
-			String ident = counter.getIdentifier();
-			String style = counter.getListStyle();
-			String func = (sep == null || sep.length() == 0) ? "counter(" : "counters(";//$NON-NLS-2$//$NON-NLS-1$
-			// normalize
-			if (ident == null)
-				ident = "";//$NON-NLS-1$
-			if (style == null)
-				style = "";//$NON-NLS-1$
-
-			if (preferences.getInt(CSSCorePreferenceNames.CASE_PROPERTY_VALUE) == CSSCorePreferenceNames.UPPER) {
-				ident = ident.toUpperCase();
-				style = style.toUpperCase();
-				func = func.toUpperCase();
-			}
-			else {
-				ident = ident.toLowerCase();
-				style = style.toLowerCase();
-			}
-			if (sep == null || sep.length() == 0) {
-				source.append(func);
-				appendSpaceBefore(node, ident, source);
-				source.append(ident);
-			}
-			else {
-				source.append(func);
-				appendSpaceBefore(node, ident, source);
-				source.append(ident);
-				source.append(",");//$NON-NLS-1$
-				appendSpaceBefore(node, sep, source);
-				source.append(sep);
-			}
-
-			if (style != null && style.length() != 0) {
-				source.append(",");//$NON-NLS-1$
-				appendSpaceBefore(node, style, source);
-			}
-			source.append(")");//$NON-NLS-1$
-		}
-	}
-
-	/**
-	 * 
-	 */
-	protected void formatPre(ICSSNode node, IRegion region, StringBuffer source) {
-		IStructuredDocument structuredDocument = node.getOwnerDocument().getModel().getStructuredDocument();
-		CSSCleanupStrategy stgy = getCleanupStrategy(node);
-
-		CompoundRegion[] regions = getRegionsWithoutWhiteSpaces(structuredDocument, region, stgy);
-		CompoundRegion[] outside = getOutsideRegions(structuredDocument, region);
-		for (int i = 0; i < regions.length; i++) {
-			if (i != 0 || needS(outside[0]))
-				appendSpaceBefore(node, regions[i], source);
-			source.append(decoratedPropValueRegion(regions[i], stgy));
-		}
-		if (needS(outside[1]) && !isIncludesPreEnd(node, region))
-			appendSpaceBefore(node, outside[1], source);
-	}
-
-	/**
-	 * 
-	 */
-	public int getAttrInsertPos(ICSSNode node, String attrName) {
-		if (node == null || attrName == null || attrName.length() == 0)
-			return -1;
-
-		IndexedRegion iNode = (IndexedRegion) node;
-		if (ICounter.IDENTIFIER.equalsIgnoreCase(attrName)) {
-			ICSSAttr attr = (ICSSAttr) node.getAttributes().getNamedItem(ICounter.IDENTIFIER);
-			if (attr != null && ((IndexedRegion) attr).getEndOffset() > 0)
-				return ((IndexedRegion) attr).getStartOffset();
-			if (iNode.getEndOffset() <= 0)
-				return -1;
-
-			IStructuredDocumentRegion flatNode = node.getOwnerDocument().getModel().getStructuredDocument().getRegionAtCharacterOffset(iNode.getEndOffset() - 1);
-			RegionIterator it = new RegionIterator(flatNode, flatNode.getRegionAtCharacterOffset(iNode.getEndOffset() - 1));
-			while (it.hasPrev()) {
-				ITextRegion region = it.prev();
-				if (region.getType() == CSSRegionContexts.CSS_DECLARATION_VALUE_FUNCTION)
-					return it.getStructuredDocumentRegion().getEndOffset(region);
-			}
-			return ((IndexedRegion) node).getEndOffset();
-		}
-		else if (ICounter.LISTSTYLE.equalsIgnoreCase(attrName)) {
-			ICSSAttr attr = (ICSSAttr) node.getAttributes().getNamedItem(ICounter.LISTSTYLE);
-			if (attr != null && ((IndexedRegion) attr).getEndOffset() > 0)
-				return ((IndexedRegion) attr).getStartOffset();
-
-			IStructuredDocumentRegion flatNode = node.getOwnerDocument().getModel().getStructuredDocument().getRegionAtCharacterOffset(iNode.getEndOffset() - 1);
-			RegionIterator it = new RegionIterator(flatNode, flatNode.getRegionAtCharacterOffset(iNode.getEndOffset() - 1));
-			while (it.hasPrev()) {
-				ITextRegion region = it.prev();
-				if (region.getType() == CSSRegionContexts.CSS_DECLARATION_VALUE_OPERATOR)
-					return it.getStructuredDocumentRegion().getEndOffset(region);
-				else if (region.getType() == CSSRegionContexts.CSS_DECLARATION_VALUE_FUNCTION)
-					return it.getStructuredDocumentRegion().getEndOffset(region);
-			}
-			return ((IndexedRegion) node).getEndOffset();
-		}
-		else if (ICounter.SEPARATOR.equalsIgnoreCase(attrName)) {
-			ICSSAttr attr = (ICSSAttr) node.getAttributes().getNamedItem(ICounter.SEPARATOR);
-			if (attr != null && ((IndexedRegion) attr).getEndOffset() > 0)
-				return ((IndexedRegion) attr).getStartOffset();
-
-			IStructuredDocumentRegion flatNode = node.getOwnerDocument().getModel().getStructuredDocument().getRegionAtCharacterOffset(iNode.getEndOffset() - 1);
-			RegionIterator it = new RegionIterator(flatNode, flatNode.getRegionAtCharacterOffset(iNode.getEndOffset() - 1));
-			boolean hasComma = false;
-			while (it.hasPrev()) {
-				ITextRegion region = it.prev();
-				if (region.getType() == CSSRegionContexts.CSS_DECLARATION_VALUE_OPERATOR) {
-					if (!hasComma)
-						hasComma = true;
-					else
-						return it.getStructuredDocumentRegion().getEndOffset(region);
-				}
-				else if (region.getType() == CSSRegionContexts.CSS_DECLARATION_VALUE_FUNCTION)
-					return it.getStructuredDocumentRegion().getEndOffset(region);
-			}
-			return ((IndexedRegion) node).getEndOffset();
-		}
-		else
-			return -1;
-	}
-
-	/**
-	 * 
-	 */
-	public synchronized static CounterFormatter getInstance() {
-		if (instance == null)
-			instance = new CounterFormatter();
-		return instance;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/formatter/DeclContainerFormatter.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/formatter/DeclContainerFormatter.java
deleted file mode 100644
index 7fff44b..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/formatter/DeclContainerFormatter.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.css.core.internal.formatter;
-
-
-
-import org.eclipse.jface.text.IRegion;
-import org.eclipse.wst.css.core.internal.cleanup.CSSCleanupStrategy;
-import org.eclipse.wst.css.core.internal.parserz.CSSRegionContexts;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSNode;
-import org.eclipse.wst.sse.core.internal.provisional.IndexedRegion;
-import org.eclipse.wst.sse.core.internal.provisional.text.IStructuredDocument;
-import org.eclipse.wst.sse.core.internal.provisional.text.IStructuredDocumentRegion;
-
-
-/**
- * 
- */
-public class DeclContainerFormatter extends DefaultCSSSourceFormatter {
-
-	/**
-	 * 
-	 */
-	DeclContainerFormatter() {
-		super();
-	}
-
-	/**
-	 * 
-	 * @return java.lang.String
-	 */
-	protected String decoratedSelectorRegion(CompoundRegion region, CompoundRegion prevRegion, CSSCleanupStrategy stgy) {
-		String text = region.getText();
-		if (isFormat())
-			return text;
-
-		String type = region.getType();
-		if (type == CSSRegionContexts.CSS_SELECTOR_ATTRIBUTE_NAME || type == CSSRegionContexts.CSS_SELECTOR_ATTRIBUTE_VALUE || type == CSSRegionContexts.CSS_SELECTOR_CLASS || type == CSSRegionContexts.CSS_SELECTOR_ELEMENT_NAME || type == CSSRegionContexts.CSS_SELECTOR_ID || type == CSSRegionContexts.CSS_SELECTOR_PSEUDO) {
-			short selCase = stgy.getSelectorTagCase();
-			if (selCase == org.eclipse.wst.css.core.internal.cleanup.CSSCleanupStrategy.UPPER) {
-				return text.toUpperCase();
-			}
-			else if (selCase == org.eclipse.wst.css.core.internal.cleanup.CSSCleanupStrategy.LOWER) {
-				return text.toLowerCase();
-			}
-			return text;
-		}
-
-		return decoratedRegion(region, 0, stgy);
-	}
-
-	/**
-	 * 
-	 */
-	protected void formatPost(ICSSNode node, StringBuffer source) {
-		CSSCleanupStrategy stgy = getCleanupStrategy(node);
-
-		int end = ((IndexedRegion) node).getEndOffset();
-		int start = (node.getLastChild() != null && ((IndexedRegion) node.getLastChild()).getEndOffset() > 0) ? ((IndexedRegion) node.getLastChild()).getEndOffset() : getChildInsertPos(node);
-		if (end > 0 && start < end) { // format source
-			IStructuredDocument structuredDocument = node.getOwnerDocument().getModel().getStructuredDocument();
-			CompoundRegion[] regions = getRegionsWithoutWhiteSpaces(structuredDocument, new FormatRegion(start, end - start), stgy);
-			for (int i = 0; i < regions.length; i++) {
-				appendDelimBefore(node, regions[i], source);
-				source.append(decoratedRegion(regions[i], 0, stgy));
-			}
-		}
-		else { // generate source
-			String delim = getLineDelimiter(node);
-			source.append(delim);
-			source.append(getIndent(node));
-			source.append("}");//$NON-NLS-1$
-		}
-	}
-
-	/**
-	 * 
-	 */
-	protected void formatPost(ICSSNode node, IRegion region, StringBuffer source) {
-		CSSCleanupStrategy stgy = getCleanupStrategy(node);
-
-		IStructuredDocument structuredDocument = node.getOwnerDocument().getModel().getStructuredDocument();
-		CompoundRegion[] regions = getRegionsWithoutWhiteSpaces(structuredDocument, region, stgy);
-		CompoundRegion[] outside = getOutsideRegions(structuredDocument, region);
-		for (int i = 0; i < regions.length; i++) {
-			if (i != 0 || needS(outside[0]))
-				appendDelimBefore(node, regions[i], source);
-			source.append(decoratedRegion(regions[i], 0, stgy));
-		}
-	}
-
-	/**
-	 * 
-	 */
-	public int getChildInsertPos(ICSSNode node) {
-		int n = ((IndexedRegion) node).getEndOffset();
-		if (n > 0) {
-			IStructuredDocumentRegion flatNode = node.getOwnerDocument().getModel().getStructuredDocument().getRegionAtCharacterOffset(n - 1);
-			if (flatNode.getRegionAtCharacterOffset(n - 1).getType() == CSSRegionContexts.CSS_RBRACE)
-				return n - 1;
-			else
-				return n;
-		}
-		return -1;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/formatter/DefaultCSSSourceFormatter.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/formatter/DefaultCSSSourceFormatter.java
deleted file mode 100644
index c1aed20..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/formatter/DefaultCSSSourceFormatter.java
+++ /dev/null
@@ -1,126 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this 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.core.internal.formatter;
-
-
-
-import org.eclipse.jface.text.IRegion;
-import org.eclipse.wst.css.core.internal.parser.CSSRegionUtil;
-import org.eclipse.wst.css.core.internal.parserz.CSSRegionContexts;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSNode;
-import org.eclipse.wst.sse.core.internal.provisional.IndexedRegion;
-
-
-/**
- * 
- */
-public class DefaultCSSSourceFormatter extends AbstractCSSSourceFormatter {
-
-	/**
-	 * 
-	 */
-	DefaultCSSSourceFormatter() {
-		super();
-	}
-
-	/**
-	 * 
-	 */
-	protected void appendSpaceBetween(ICSSNode node, CompoundRegion prev, CompoundRegion next, StringBuffer source) {
-		if (isCleanup() && !getCleanupStrategy(node).isFormatSource())
-			return; // for not formatting case on cleanup action
-
-		// in selector
-		String prevType = prev.getType();
-		String nextType = next.getType();
-		if (CSSRegionUtil.isSelectorBegginingType(prevType) && CSSRegionUtil.isSelectorBegginingType(nextType)) {
-			// https://bugs.eclipse.org/bugs/show_bug.cgi?id=73990
-			// Formatting CSS file splits element.class into element . class
-			if ((prevType == CSSRegionContexts.CSS_SELECTOR_ELEMENT_NAME && (nextType == CSSRegionContexts.CSS_SELECTOR_CLASS || nextType == CSSRegionContexts.CSS_SELECTOR_ID)) || ((prevType == CSSRegionContexts.CSS_SELECTOR_ELEMENT_NAME || prevType == CSSRegionContexts.CSS_SELECTOR_CLASS) && nextType == CSSRegionContexts.CSS_SELECTOR_PSEUDO)) {
-				// Individually, SELECTOR_ELEMENT_NAME, SELECTOR_CLASS, and SELECTOR_ID can all be beginning types.
-				// But, we should not insert a space in between when SELECTOR_ELEMENT_NAME is followed by SELECTOR_CLASS, or when
-				// SELECTOR_ELEMENT_NAME is followed by SELECTOR_ID.
-				// For example: H1.pastoral and H1#z98y
-				//
-				// Also, space is now not inserted in between when SELECTOR_ELEMENT_NAME is followed by SELECTOR_PSEUDO, or when
-				// SELECTOR_CLASS is followed by SELECTOR_PSEUDO.
-				// For example: P:first-letter and A.external:visited
-			}
-			else
-				appendSpaceBefore(node, next, source);
-			return;
-		}
-
-		if (prevType == CSSRegionContexts.CSS_PAGE || prevType == CSSRegionContexts.CSS_CHARSET || prevType == CSSRegionContexts.CSS_ATKEYWORD || prevType == CSSRegionContexts.CSS_FONT_FACE || prevType == CSSRegionContexts.CSS_IMPORT || prevType == CSSRegionContexts.CSS_MEDIA) {
-			appendSpaceBefore(node, next, source);
-			return;
-		}
-
-		if (prevType == CSSRegionContexts.CSS_UNKNOWN && nextType != CSSRegionContexts.CSS_COMMENT) {
-			if (prev.getEndOffset() != next.getStartOffset()) { // not
-																// sequential
-				appendSpaceBefore(node, next, source);
-			}
-			return;
-		}
-
-		if (prevType == CSSRegionContexts.CSS_DECLARATION_VALUE_OPERATOR || prevType == CSSRegionContexts.CSS_COMMENT || nextType == CSSRegionContexts.CSS_COMMENT || nextType == CSSRegionContexts.CSS_LBRACE || nextType == CSSRegionContexts.CSS_UNKNOWN) {
-			appendSpaceBefore(node, next, source);
-			return;
-		}
-	}
-
-	/**
-	 * 
-	 */
-	protected void formatBefore(ICSSNode node, ICSSNode child, String toAppend, StringBuffer source, IRegion exceptFor) {
-	}
-
-	/**
-	 * 
-	 */
-	protected void formatBefore(ICSSNode node, ICSSNode child, IRegion region, String toAppend, StringBuffer source) {
-	}
-
-	/**
-	 * 
-	 */
-	protected void formatPost(ICSSNode node, StringBuffer source) {
-	}
-
-	/**
-	 * 
-	 */
-	protected void formatPost(ICSSNode node, IRegion region, StringBuffer source) {
-	}
-
-	/**
-	 * 
-	 */
-	protected void formatPre(ICSSNode node, StringBuffer source) {
-	}
-
-	/**
-	 * 
-	 */
-	protected void formatPre(ICSSNode node, IRegion region, StringBuffer source) {
-	}
-
-	/**
-	 * 
-	 */
-	public int getChildInsertPos(ICSSNode node) {
-		int n = ((IndexedRegion) node).getEndOffset();
-		if (n > 0)
-			return n;
-		return -1;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/formatter/FontFaceRuleFormatter.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/formatter/FontFaceRuleFormatter.java
deleted file mode 100644
index 65a67d3..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/formatter/FontFaceRuleFormatter.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.css.core.internal.formatter;
-
-
-
-import org.eclipse.jface.text.IRegion;
-import org.eclipse.wst.css.core.internal.CSSCorePlugin;
-import org.eclipse.wst.css.core.internal.cleanup.CSSCleanupStrategy;
-import org.eclipse.wst.css.core.internal.preferences.CSSCorePreferenceNames;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSNode;
-import org.eclipse.wst.sse.core.internal.provisional.IndexedRegion;
-import org.eclipse.wst.sse.core.internal.provisional.text.IStructuredDocument;
-
-
-/**
- * 
- */
-public class FontFaceRuleFormatter extends DeclContainerFormatter {
-
-	public final static java.lang.String FONT_FACE = "@font-face";//$NON-NLS-1$
-	private static FontFaceRuleFormatter instance;
-
-	/**
-	 * 
-	 */
-	FontFaceRuleFormatter() {
-		super();
-	}
-
-	/**
-	 * 
-	 */
-	protected void formatPre(org.eclipse.wst.css.core.internal.provisional.document.ICSSNode node, StringBuffer source) {
-		CSSCleanupStrategy stgy = getCleanupStrategy(node);
-
-		int start = ((IndexedRegion) node).getStartOffset();
-		int end = (node.getFirstChild() != null && ((IndexedRegion) node.getFirstChild()).getEndOffset() > 0) ? ((IndexedRegion) node.getFirstChild()).getStartOffset() : getChildInsertPos(node);
-		if (end > 0) {
-			IStructuredDocument structuredDocument = node.getOwnerDocument().getModel().getStructuredDocument();
-			CompoundRegion[] regions = getRegionsWithoutWhiteSpaces(structuredDocument, new FormatRegion(start, end - start), stgy);
-			for (int i = 0; i < regions.length; i++) {
-				if (i != 0)
-					appendSpaceBefore(node, regions[i], source);
-				source.append(decoratedIdentRegion(regions[i], stgy));
-			}
-		}
-		else {
-			String str = FONT_FACE;
-			if (CSSCorePlugin.getDefault().getPluginPreferences().getInt(CSSCorePreferenceNames.CASE_IDENTIFIER) == CSSCorePreferenceNames.UPPER)
-				str = FONT_FACE.toUpperCase();
-			source.append(str);
-			appendSpaceBefore(node, "{", source);//$NON-NLS-1$
-			source.append("{");//$NON-NLS-1$
-		}
-		appendDelimBefore(node, null, source);
-	}
-
-	/**
-	 * 
-	 */
-	protected void formatPre(ICSSNode node, IRegion region, StringBuffer source) {
-		CSSCleanupStrategy stgy = getCleanupStrategy(node);
-
-		IStructuredDocument structuredDocument = node.getOwnerDocument().getModel().getStructuredDocument();
-		CompoundRegion[] regions = getRegionsWithoutWhiteSpaces(structuredDocument, region, stgy);
-		CompoundRegion[] outside = getOutsideRegions(structuredDocument, region);
-		for (int i = 0; i < regions.length; i++) {
-			if (i != 0 || needS(outside[0]))
-				appendSpaceBefore(node, regions[i], source);
-			source.append(decoratedIdentRegion(regions[i], stgy));
-		}
-		if (needS(outside[1])) {
-			if (isIncludesPreEnd(node, region))
-				appendDelimBefore(node, null, source);
-			else
-				appendSpaceBefore(node, outside[1], source);
-		}
-	}
-
-	/**
-	 * 
-	 */
-	public synchronized static FontFaceRuleFormatter getInstance() {
-		if (instance == null)
-			instance = new FontFaceRuleFormatter();
-		return instance;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/formatter/FormatRegion.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/formatter/FormatRegion.java
deleted file mode 100644
index ff0c9d3..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/formatter/FormatRegion.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.wst.css.core.internal.formatter;
-
-
-
-import org.eclipse.jface.text.IRegion;
-
-/**
- * 
- */
-class FormatRegion implements IRegion {
-
-	private int fOffset, fLength;
-
-	/**
-	 * 
-	 */
-	FormatRegion(int offset, int length) {
-		super();
-		set(offset, length);
-	}
-
-	/**
-	 * Returns the length of the region.
-	 * 
-	 * @return the length of the region
-	 */
-	public int getLength() {
-		return fLength;
-	}
-
-	/**
-	 * Returns the offset of the region.
-	 * 
-	 * @return the offset of the region
-	 */
-	public int getOffset() {
-		return fOffset;
-	}
-
-	/**
-	 * 
-	 */
-	void set(int offset, int length) {
-		this.fOffset = offset;
-		this.fLength = length;
-	}
-
-	/**
-	 * 
-	 */
-	void setLength(int newLength) {
-		fLength = newLength;
-	}
-
-	/**
-	 * 
-	 */
-	void setOffset(int newOffset) {
-		fOffset = newOffset;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/formatter/FunctionFormatter.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/formatter/FunctionFormatter.java
deleted file mode 100644
index 29499ba..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/formatter/FunctionFormatter.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.core.internal.formatter;
-
-
-
-import org.eclipse.jface.text.IRegion;
-import org.eclipse.wst.css.core.internal.CSSCorePlugin;
-import org.eclipse.wst.css.core.internal.cleanup.CSSCleanupStrategy;
-import org.eclipse.wst.css.core.internal.parserz.CSSRegionContexts;
-import org.eclipse.wst.css.core.internal.preferences.CSSCorePreferenceNames;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSNode;
-import org.eclipse.wst.sse.core.internal.provisional.IndexedRegion;
-import org.eclipse.wst.sse.core.internal.provisional.text.IStructuredDocument;
-import org.eclipse.wst.sse.core.internal.provisional.text.IStructuredDocumentRegion;
-
-
-/**
- * 
- */
-abstract public class FunctionFormatter extends AbstractCSSSourceFormatter {
-
-	/**
-	 * 
-	 */
-	FunctionFormatter() {
-		super();
-	}
-
-	/**
-	 * 
-	 */
-	protected void formatBefore(ICSSNode node, ICSSNode child, String toAppend, StringBuffer source, IRegion exceptFor) {
-		ICSSNode prev = (child != null) ? child.getPreviousSibling() : node.getLastChild();
-		int start = (prev != null) ? ((IndexedRegion) prev).getEndOffset() : 0;
-		int end = (child != null) ? ((IndexedRegion) child).getStartOffset() : 0;
-		if (start > 0 && start < end) { // format source
-			CSSCleanupStrategy stgy = getCleanupStrategy(node);
-
-			IStructuredDocument structuredDocument = node.getOwnerDocument().getModel().getStructuredDocument();
-			// get meaning regions
-			CompoundRegion[] regions = null;
-			if (exceptFor == null)
-				regions = getRegionsWithoutWhiteSpaces(structuredDocument, new FormatRegion(start, end - start), stgy);
-			else {
-				String pickupType = CSSRegionContexts.CSS_DECLARATION_VALUE_OPERATOR;
-				if (prev == null || child == null)
-					pickupType = null;
-				regions = getRegions(structuredDocument, new FormatRegion(start, end - start), exceptFor, pickupType);
-			}
-			// extract source
-			for (int i = 0; i < regions.length; i++) {
-				appendSpaceBefore(node, regions[i], source);
-				source.append(decoratedRegion(regions[i], 2, stgy));
-			}
-		} else if (prev != null && child != null) { // generate source between
-			// parameters
-			source.append(",");//$NON-NLS-1$
-		}
-		appendSpaceBefore(node, toAppend, source);
-	}
-
-	/**
-	 * 
-	 */
-	protected void formatBefore(ICSSNode node, ICSSNode child, IRegion region, String toAppend, StringBuffer source) {
-		CSSCleanupStrategy stgy = getCleanupStrategy(node);
-
-		IStructuredDocument structuredDocument = node.getOwnerDocument().getModel().getStructuredDocument();
-		CompoundRegion[] regions = getRegionsWithoutWhiteSpaces(structuredDocument, region, stgy);
-		CompoundRegion[] outside = getOutsideRegions(structuredDocument, region);
-		for (int i = 0; i < regions.length; i++) {
-			if (i != 0 || needS(outside[0]))
-				appendSpaceBefore(node, regions[i], source);
-			source.append(decoratedRegion(regions[i], 2, stgy));
-		}
-	}
-
-	/**
-	 * 
-	 */
-	protected void formatPost(org.eclipse.wst.css.core.internal.provisional.document.ICSSNode node, java.lang.StringBuffer source) {
-		CSSCleanupStrategy stgy = getCleanupStrategy(node);
-
-		int end = ((IndexedRegion) node).getEndOffset();
-		int start = (node.getLastChild() != null && ((IndexedRegion) node.getLastChild()).getEndOffset() > 0) ? ((IndexedRegion) node.getLastChild()).getEndOffset() : getChildInsertPos(node);
-		if (end > 0 && start < end) { // format source
-			IStructuredDocument structuredDocument = node.getOwnerDocument().getModel().getStructuredDocument();
-			CompoundRegion[] regions = getRegionsWithoutWhiteSpaces(structuredDocument, new FormatRegion(start, end - start), stgy);
-			for (int i = 0; i < regions.length; i++) {
-				appendSpaceBefore(node, regions[i], source);
-				source.append(decoratedRegion(regions[i], 2, stgy));
-			}
-		} else { // generate source
-			source.append(")");//$NON-NLS-1$
-		}
-	}
-
-	/**
-	 * 
-	 */
-	protected void formatPost(ICSSNode node, IRegion region, StringBuffer source) {
-		CSSCleanupStrategy stgy = getCleanupStrategy(node);
-
-		IStructuredDocument structuredDocument = node.getOwnerDocument().getModel().getStructuredDocument();
-		CompoundRegion[] regions = getRegionsWithoutWhiteSpaces(structuredDocument, region, stgy);
-		CompoundRegion[] outside = getOutsideRegions(structuredDocument, region);
-		for (int i = 0; i < regions.length; i++) {
-			if (i != 0 || needS(outside[0]))
-				appendSpaceBefore(node, regions[i], source);
-			source.append(decoratedRegion(regions[i], 2, stgy));
-		}
-	}
-
-	/**
-	 * 
-	 */
-	protected void formatPre(ICSSNode node, StringBuffer source) {
-		int start = ((IndexedRegion) node).getStartOffset();
-		int end = (node.getFirstChild() != null && ((IndexedRegion) node.getFirstChild()).getEndOffset() > 0) ? ((IndexedRegion) node.getFirstChild()).getStartOffset() : getChildInsertPos(node);
-
-		if (end > 0) { // format source
-			CSSCleanupStrategy stgy = getCleanupStrategy(node);
-
-			IStructuredDocument structuredDocument = node.getOwnerDocument().getModel().getStructuredDocument();
-			CompoundRegion[] regions = getRegionsWithoutWhiteSpaces(structuredDocument, new FormatRegion(start, end - start), stgy);
-			for (int i = 0; i < regions.length; i++) {
-				if (i != 0)
-					appendSpaceBefore(node, regions[i], source);
-				source.append(decoratedPropValueRegion(regions[i], stgy));
-			}
-		} else { // generate source
-			String func = getFunc();
-			if (CSSCorePlugin.getDefault().getPluginPreferences().getInt(CSSCorePreferenceNames.CASE_PROPERTY_VALUE) == CSSCorePreferenceNames.UPPER)
-				func = func.toUpperCase();
-			source.append(func);
-		}
-	}
-
-	/**
-	 * 
-	 */
-	protected void formatPre(ICSSNode node, IRegion region, StringBuffer source) {
-		CSSCleanupStrategy stgy = getCleanupStrategy(node);
-
-		IStructuredDocument structuredDocument = node.getOwnerDocument().getModel().getStructuredDocument();
-		CompoundRegion[] regions = getRegionsWithoutWhiteSpaces(structuredDocument, region, stgy);
-		CompoundRegion[] outside = getOutsideRegions(structuredDocument, region);
-		for (int i = 0; i < regions.length; i++) {
-			if (i != 0 || needS(outside[0]))
-				appendSpaceBefore(node, regions[i], source);
-			source.append(decoratedPropValueRegion(regions[i], stgy));
-		}
-		if (needS(outside[1]) && !isIncludesPreEnd(node, region))
-			appendSpaceBefore(node, outside[1], source);
-	}
-
-	/**
-	 * 
-	 */
-	public int getChildInsertPos(ICSSNode node) {
-		int n = ((IndexedRegion) node).getEndOffset();
-		if (n > 0) {
-			IStructuredDocumentRegion flatNode = node.getOwnerDocument().getModel().getStructuredDocument().getRegionAtCharacterOffset(n - 1);
-			if (flatNode.getRegionAtCharacterOffset(n - 1).getType() == CSSRegionContexts.CSS_DECLARATION_VALUE_PARENTHESIS_CLOSE)
-				return n - 1;
-			return n;
-		}
-		return -1;
-	}
-
-	/**
-	 * 
-	 */
-	protected abstract String getFunc();
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/formatter/ImportRuleFormatter.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/formatter/ImportRuleFormatter.java
deleted file mode 100644
index d5d3ef7..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/formatter/ImportRuleFormatter.java
+++ /dev/null
@@ -1,339 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this 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.core.internal.formatter;
-
-
-
-import org.eclipse.core.runtime.Preferences;
-import org.eclipse.jface.text.IRegion;
-import org.eclipse.wst.css.core.internal.CSSCorePlugin;
-import org.eclipse.wst.css.core.internal.cleanup.CSSCleanupStrategy;
-import org.eclipse.wst.css.core.internal.parserz.CSSRegionContexts;
-import org.eclipse.wst.css.core.internal.preferences.CSSCorePreferenceNames;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSAttr;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSImportRule;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSNode;
-import org.eclipse.wst.css.core.internal.util.CSSUtil;
-import org.eclipse.wst.css.core.internal.util.RegionIterator;
-import org.eclipse.wst.sse.core.internal.provisional.IndexedRegion;
-import org.eclipse.wst.sse.core.internal.provisional.text.IStructuredDocument;
-import org.eclipse.wst.sse.core.internal.provisional.text.IStructuredDocumentRegion;
-import org.eclipse.wst.sse.core.internal.provisional.text.ITextRegion;
-
-
-/**
- * 
- */
-public class ImportRuleFormatter extends AbstractCSSSourceFormatter {
-
-	public final static java.lang.String IMPORT = "@import";//$NON-NLS-1$
-	private static ImportRuleFormatter instance;
-
-	/**
-	 * 
-	 */
-	ImportRuleFormatter() {
-		super();
-	}
-
-	/**
-	 * 
-	 */
-	public StringBuffer formatAttrChanged(ICSSNode node, ICSSAttr attr, boolean insert, AttrChangeContext context) {
-		StringBuffer buf = new StringBuffer();
-		if (node == null || attr == null)
-			return buf;
-
-		if (!ICSSImportRule.HREF.equalsIgnoreCase(attr.getName()))
-			return buf;
-
-		// get region to replace
-		if (context != null && ((IndexedRegion) node).getEndOffset() > 0) {
-			if (attr != null && ((IndexedRegion) attr).getEndOffset() > 0) {
-				IStructuredDocumentRegion flatNode = node.getOwnerDocument().getModel().getStructuredDocument().getRegionAtCharacterOffset(((IndexedRegion) attr).getStartOffset());
-				ITextRegion region = flatNode.getRegionAtCharacterOffset(((IndexedRegion) attr).getStartOffset());
-				RegionIterator it = new RegionIterator(flatNode, region);
-				it.prev();
-				if (it.hasPrev()) {
-					ITextRegion prev = it.prev();
-					if (prev.getType() == CSSRegionContexts.CSS_S)
-						context.start = it.getStructuredDocumentRegion().getStartOffset(prev);
-					else
-						context.start = it.getStructuredDocumentRegion().getStartOffset(region);
-					it.next();
-				} else
-					context.start = it.getStructuredDocumentRegion().getStartOffset(region);
-				it.next();
-				it.next();
-				if (it.hasNext()) {
-					ITextRegion next = it.next();
-					if (next.getType() == CSSRegionContexts.CSS_S)
-						context.end = it.getStructuredDocumentRegion().getEndOffset(next);
-					else
-						context.end = it.getStructuredDocumentRegion().getEndOffset(region);
-				} else
-					context.end = it.getStructuredDocumentRegion().getEndOffset(region);
-			} else {
-				ICSSNode child = node.getFirstChild();
-				IStructuredDocumentRegion flatNode = null;
-				ITextRegion region = null;
-				if (child == null) {
-					flatNode = node.getOwnerDocument().getModel().getStructuredDocument().getRegionAtCharacterOffset(((IndexedRegion) node).getEndOffset() - 1);
-					region = flatNode.getRegionAtCharacterOffset(((IndexedRegion) node).getEndOffset() - 1);
-				} else {
-					flatNode = node.getOwnerDocument().getModel().getStructuredDocument().getRegionAtCharacterOffset(((IndexedRegion) child).getStartOffset() - 1);
-					region = flatNode.getRegionAtCharacterOffset(((IndexedRegion) child).getStartOffset() - 1);
-				}
-				if (region.getType() == CSSRegionContexts.CSS_S) {
-					context.start = flatNode.getStartOffset(region);
-					context.end = flatNode.getEndOffset(region);
-				} else {
-					context.start = flatNode.getEndOffset();
-					context.end = flatNode.getEndOffset();
-				}
-			}
-		}
-		// generate text
-		if (insert && attr.getValue() != null && attr.getValue().length() > 0) {
-			appendSpaceBefore(node, attr.getValue(), buf);
-			buf.append(attr.getValue());
-			appendSpaceBefore(node, "", buf);//$NON-NLS-1$
-		}
-		return buf;
-	}
-
-	/**
-	 * 
-	 */
-	protected void formatBefore(ICSSNode node, ICSSNode child, String toAppend, StringBuffer source, IRegion exceptFor) {
-		// for media-type
-		ICSSNode prev = (child != null) ? child.getPreviousSibling() : node.getLastChild();
-		int start = (prev != null) ? ((IndexedRegion) prev).getEndOffset() : 0;
-		int end = (child != null) ? ((IndexedRegion) child).getStartOffset() : 0;
-		if (start > 0 && start < end) { // format source
-			CSSCleanupStrategy stgy = getCleanupStrategy(node);
-
-			IStructuredDocument structuredDocument = node.getOwnerDocument().getModel().getStructuredDocument();
-			// get meaning regions
-			CompoundRegion[] regions = null;
-			if (exceptFor == null)
-				regions = getRegionsWithoutWhiteSpaces(structuredDocument, new FormatRegion(start, end - start), stgy);
-			else {
-				String pickupType = CSSRegionContexts.CSS_MEDIA_SEPARATOR;
-				if (prev == null || child == null)
-					pickupType = null;
-				regions = getRegions(structuredDocument, new FormatRegion(start, end - start), exceptFor, pickupType);
-			}
-			// extract source
-			for (int i = 0; i < regions.length; i++) {
-				appendSpaceBefore(node, regions[i], source);
-				source.append(decoratedRegion(regions[i], 0, stgy)); // must
-				// be
-				// comments
-			}
-			appendSpaceBefore(node, toAppend, source);
-		} else if (prev != null && child != null) { // generate source : ????
-			source.append(",");//$NON-NLS-1$
-			appendSpaceBefore(node, toAppend, source);
-		} else if (child != null) { // generate source : between 'url()' and
-			// media types
-			appendSpaceBefore(node, toAppend, source);
-		}
-	}
-
-	/**
-	 * 
-	 */
-	protected void formatBefore(ICSSNode node, ICSSNode child, IRegion region, String toAppend, StringBuffer source) {
-		CSSCleanupStrategy stgy = getCleanupStrategy(node);
-
-		IStructuredDocument structuredDocument = node.getOwnerDocument().getModel().getStructuredDocument();
-		CompoundRegion[] regions = getRegionsWithoutWhiteSpaces(structuredDocument, region, stgy);
-		CompoundRegion[] outside = getOutsideRegions(structuredDocument, region);
-		for (int i = 0; i < regions.length; i++) {
-			if (i != 0 || needS(outside[0]))
-				appendSpaceBefore(node, regions[i], source);
-			source.append(decoratedRegion(regions[i], 0, stgy)); // must be
-			// comments
-		}
-		if (needS(outside[1])) {
-			if (((IndexedRegion) child).getStartOffset() == region.getOffset() + region.getLength())
-				appendSpaceBefore(node, toAppend, source);
-			else
-				appendSpaceBefore(node, outside[1], source);
-		}
-	}
-
-	/**
-	 * 
-	 */
-	protected void formatPost(ICSSNode node, StringBuffer source) {
-		CSSCleanupStrategy stgy = getCleanupStrategy(node);
-
-		int end = ((IndexedRegion) node).getEndOffset();
-		int start = (node.getLastChild() != null && ((IndexedRegion) node.getLastChild()).getEndOffset() > 0) ? ((IndexedRegion) node.getLastChild()).getEndOffset() : getChildInsertPos(node);
-		if (end > 0 && start < end) {
-			IStructuredDocument structuredDocument = node.getOwnerDocument().getModel().getStructuredDocument();
-			CompoundRegion[] regions = getRegionsWithoutWhiteSpaces(structuredDocument, new FormatRegion(start, end - start), stgy);
-			for (int i = 0; i < regions.length; i++) {
-				appendDelimBefore(node, regions[i], source);
-				source.append(decoratedRegion(regions[i], 0, stgy));
-			}
-		} else {
-			source.append(";"); //$NON-NLS-1$
-		}
-	}
-
-	/**
-	 * 
-	 */
-	protected void formatPost(ICSSNode node, IRegion region, StringBuffer source) {
-		CSSCleanupStrategy stgy = getCleanupStrategy(node);
-
-		IStructuredDocument structuredDocument = node.getOwnerDocument().getModel().getStructuredDocument();
-		CompoundRegion[] regions = getRegionsWithoutWhiteSpaces(structuredDocument, region, stgy);
-		CompoundRegion[] outside = getOutsideRegions(structuredDocument, region);
-		for (int i = 0; i < regions.length; i++) {
-			if ((i != 0 || needS(outside[0])) && !regions[i].getType().equals(CSSRegionContexts.CSS_DELIMITER))
-				appendDelimBefore(node, regions[i], source);
-			source.append(decoratedRegion(regions[i], 0, stgy));
-		}
-	}
-
-	/**
-	 * 
-	 */
-	protected void formatPre(ICSSNode node, StringBuffer source) {
-		int start = ((IndexedRegion) node).getStartOffset();
-		int end = (node.getFirstChild() != null && ((IndexedRegion) node.getFirstChild()).getEndOffset() > 0) ? ((IndexedRegion) node.getFirstChild()).getStartOffset() : getChildInsertPos(node);
-
-		if (end > 0) { // format source
-			CSSCleanupStrategy stgy = getCleanupStrategy(node);
-
-			IStructuredDocument structuredDocument = node.getOwnerDocument().getModel().getStructuredDocument();
-			CompoundRegion[] regions = getRegionsWithoutWhiteSpaces(structuredDocument, new FormatRegion(start, end - start), stgy);
-			for (int i = 0; i < regions.length; i++) {
-				String str = regions[i].getText();
-				if (regions[i].getType() == CSSRegionContexts.CSS_IMPORT)
-					str = decoratedIdentRegion(regions[i], stgy);
-				else
-					str = decoratedPropValueRegion(regions[i], stgy);
-				if (i != 0)
-					appendSpaceBefore(node, regions[i], source);
-				source.append(str);
-			}
-		} else { // generate source
-			Preferences preferences = CSSCorePlugin.getDefault().getPluginPreferences();
-
-			String str = IMPORT;
-			if (preferences.getInt(CSSCorePreferenceNames.CASE_IDENTIFIER) == CSSCorePreferenceNames.UPPER)
-				str = IMPORT.toUpperCase();
-			String quote = preferences.getString(CSSCorePreferenceNames.FORMAT_QUOTE);
-			source.append(str);
-			str = "url(";//$NON-NLS-1$
-			if (preferences.getInt(CSSCorePreferenceNames.CASE_PROPERTY_VALUE) == CSSCorePreferenceNames.UPPER)
-				str = str.toUpperCase();
-			String href = ((ICSSImportRule) node).getHref();
-			quote = CSSUtil.detectQuote(href, quote);
-			str = str + quote + href + quote + ")";//$NON-NLS-1$
-			appendSpaceBefore(node, str, source);
-			source.append(str);
-		}
-		ICSSNode child = node.getFirstChild();
-		if (child != null && (child instanceof org.w3c.dom.stylesheets.MediaList) && ((org.w3c.dom.stylesheets.MediaList) child).getLength() > 0) {
-			appendSpaceBefore(node, "", source);//$NON-NLS-1$
-		}
-	}
-
-	/**
-	 * 
-	 */
-	protected void formatPre(ICSSNode node, IRegion region, StringBuffer source) {
-		CSSCleanupStrategy stgy = getCleanupStrategy(node);
-
-		IStructuredDocument structuredDocument = node.getOwnerDocument().getModel().getStructuredDocument();
-		CompoundRegion[] regions = getRegionsWithoutWhiteSpaces(structuredDocument, region, stgy);
-		CompoundRegion[] outside = getOutsideRegions(structuredDocument, region);
-		for (int i = 0; i < regions.length; i++) {
-			String str = regions[i].getText();
-			if (regions[i].getType() == CSSRegionContexts.CSS_IMPORT)
-				str = decoratedIdentRegion(regions[i], stgy);
-			else
-				str = decoratedPropValueRegion(regions[i], stgy);
-			if (i != 0 || needS(outside[0]))
-				appendSpaceBefore(node, regions[i], source);
-			source.append(str);
-		}
-		if (needS(outside[1]) && !isIncludesPreEnd(node, region))
-			appendSpaceBefore(node, outside[1], source);
-	}
-
-	/**
-	 * 
-	 */
-	public int getAttrInsertPos(ICSSNode node, String attrName) {
-		if (node == null || attrName == null || attrName.length() == 0)
-			return -1;
-
-		if (!ICSSImportRule.HREF.equalsIgnoreCase(attrName))
-			return -1;
-
-		ICSSAttr attr = (ICSSAttr) node.getAttributes().getNamedItem(ICSSImportRule.HREF);
-		if (attr != null && ((IndexedRegion) attr).getEndOffset() > 0)
-			return ((IndexedRegion) attr).getStartOffset();
-		IndexedRegion iNode = (IndexedRegion) node;
-		if (iNode.getEndOffset() <= 0)
-			return -1;
-
-		FormatRegion formatRegion = null;
-		ICSSNode child = node.getFirstChild();
-		if (child != null && ((IndexedRegion) child).getEndOffset() > 0)
-			formatRegion = new FormatRegion(iNode.getStartOffset(), ((IndexedRegion) child).getStartOffset() - iNode.getStartOffset());
-		else
-			formatRegion = new FormatRegion(iNode.getStartOffset(), iNode.getEndOffset() - iNode.getStartOffset());
-		CompoundRegion regions[] = getRegionsWithoutWhiteSpaces(node.getOwnerDocument().getModel().getStructuredDocument(), formatRegion, getCleanupStrategy(node));
-
-		boolean atrule = false;
-		for (int i = 0; i < regions.length; i++) {
-			if (regions[i].getType() == CSSRegionContexts.CSS_IMPORT) {
-				atrule = true;
-				continue;
-			} else if (!atrule)
-				continue;
-			if (regions[i].getType() != CSSRegionContexts.CSS_COMMENT)
-				return regions[i].getStartOffset();
-		}
-		return (child != null && ((IndexedRegion) child).getEndOffset() > 0) ? ((IndexedRegion) child).getStartOffset() : iNode.getEndOffset();
-	}
-
-	/**
-	 * 
-	 */
-	public int getChildInsertPos(ICSSNode node) {
-		int n = ((IndexedRegion) node).getEndOffset();
-		if (n > 0) {
-			IStructuredDocumentRegion flatNode = node.getOwnerDocument().getModel().getStructuredDocument().getRegionAtCharacterOffset(n - 1);
-			if (flatNode.getRegionAtCharacterOffset(n - 1).getType() == CSSRegionContexts.CSS_DELIMITER)
-				return n - 1;
-			return n;
-		}
-		return -1;
-	}
-
-	/**
-	 * 
-	 */
-	public synchronized static ImportRuleFormatter getInstance() {
-		if (instance == null)
-			instance = new ImportRuleFormatter();
-		return instance;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/formatter/MediaListFormatter.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/formatter/MediaListFormatter.java
deleted file mode 100644
index fa526f2..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/formatter/MediaListFormatter.java
+++ /dev/null
@@ -1,211 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this 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.core.internal.formatter;
-
-
-
-import org.eclipse.jface.text.IRegion;
-import org.eclipse.wst.css.core.internal.CSSCorePlugin;
-import org.eclipse.wst.css.core.internal.cleanup.CSSCleanupStrategy;
-import org.eclipse.wst.css.core.internal.parserz.CSSRegionContexts;
-import org.eclipse.wst.css.core.internal.preferences.CSSCorePreferenceNames;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSAttr;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSNode;
-import org.eclipse.wst.css.core.internal.util.RegionIterator;
-import org.eclipse.wst.sse.core.internal.provisional.IndexedRegion;
-import org.eclipse.wst.sse.core.internal.provisional.text.IStructuredDocument;
-import org.eclipse.wst.sse.core.internal.provisional.text.IStructuredDocumentRegion;
-import org.eclipse.wst.sse.core.internal.provisional.text.ITextRegion;
-import org.w3c.dom.stylesheets.MediaList;
-
-
-/**
- * 
- */
-public class MediaListFormatter extends DefaultCSSSourceFormatter {
-
-	private static MediaListFormatter instance;
-
-	/**
-	 * 
-	 */
-	MediaListFormatter() {
-		super();
-	}
-
-	/**
-	 * 
-	 */
-	public StringBuffer formatAttrChanged(ICSSNode node, ICSSAttr attr, boolean insert, AttrChangeContext context) {
-		StringBuffer buf = new StringBuffer();
-		if (node == null || attr == null)
-			return buf;
-
-		boolean first = false, last = false;
-		// get region to replace
-		if (context != null && ((IndexedRegion) node).getEndOffset() > 0) {
-			if (attr != null && ((IndexedRegion) attr).getEndOffset() > 0) {
-				IStructuredDocumentRegion flatNode = node.getOwnerDocument().getModel().getStructuredDocument().getRegionAtCharacterOffset(((IndexedRegion) attr).getStartOffset());
-				ITextRegion region = flatNode.getRegionAtCharacterOffset(((IndexedRegion) attr).getStartOffset());
-				RegionIterator it = new RegionIterator(flatNode, region);
-				it.prev();
-				context.start = it.getStructuredDocumentRegion().getStartOffset(region);
-				while (it.hasPrev()) {
-					ITextRegion prev = it.prev();
-					if (prev.getType() == CSSRegionContexts.CSS_S || prev.getType() == CSSRegionContexts.CSS_MEDIA_SEPARATOR || prev.getType() == CSSRegionContexts.CSS_COMMENT)
-						context.start = it.getStructuredDocumentRegion().getStartOffset(prev);
-					else
-						break;
-				}
-				if (context.start < ((IndexedRegion) node).getStartOffset()) {
-					context.start = ((IndexedRegion) node).getStartOffset();
-					first = true;
-
-				}
-				it.reset(flatNode, region);
-				context.end = it.getStructuredDocumentRegion().getEndOffset(region);
-				while (it.hasNext()) {
-					ITextRegion next = it.next();
-					if (next.getType() == CSSRegionContexts.CSS_S || next.getType() == CSSRegionContexts.CSS_MEDIA_SEPARATOR || next.getType() == CSSRegionContexts.CSS_COMMENT)
-						context.end = it.getStructuredDocumentRegion().getEndOffset(next);
-					else
-						break;
-				}
-				if (((IndexedRegion) node).getEndOffset() < context.end) {
-					context.end = ((IndexedRegion) node).getEndOffset();
-					last = true;
-				}
-			} else {
-				last = true;
-				IStructuredDocumentRegion flatNode = node.getOwnerDocument().getModel().getStructuredDocument().getRegionAtCharacterOffset(((IndexedRegion) node).getEndOffset() - 1);
-				ITextRegion region = flatNode.getRegionAtCharacterOffset(((IndexedRegion) node).getEndOffset() - 1);
-				RegionIterator it = new RegionIterator(flatNode, region);
-				context.start = it.getStructuredDocumentRegion().getEndOffset(region);
-				context.end = it.getStructuredDocumentRegion().getEndOffset(region);
-				while (it.hasPrev()) {
-					ITextRegion prev = it.prev();
-					if (prev.getType() == CSSRegionContexts.CSS_S || prev.getType() == CSSRegionContexts.CSS_MEDIA_SEPARATOR || prev.getType() == CSSRegionContexts.CSS_COMMENT)
-						context.start = it.getStructuredDocumentRegion().getStartOffset(prev);
-					else
-						break;
-				}
-				if (context.start < ((IndexedRegion) node).getStartOffset()) {
-					context.start = ((IndexedRegion) node).getStartOffset();
-					first = true;
-				}
-			}
-		}
-		// generate text
-		if (insert && attr.getValue() != null && attr.getValue().length() > 0) {
-			if (!first)
-				buf.append(","); //$NON-NLS-1$
-			appendSpaceBefore(node, attr.getValue(), buf);
-			buf.append(attr.getValue());
-			if (!last) {
-				buf.append(","); //$NON-NLS-1$
-				appendSpaceBefore(node, "", buf); //$NON-NLS-1$
-			}
-		} else if (!first && !last) {
-			buf.append(","); //$NON-NLS-1$
-			appendSpaceBefore(node, "", buf); //$NON-NLS-1$
-		}
-		return buf;
-	}
-
-	/**
-	 * 
-	 */
-	protected void formatPre(ICSSNode node, StringBuffer source) {
-		CSSCleanupStrategy stgy = getCleanupStrategy(node);
-
-		int start = ((IndexedRegion) node).getStartOffset();
-		int end = ((IndexedRegion) node).getEndOffset();
-
-		if (end > 0) { // format source
-			IStructuredDocument structuredDocument = node.getOwnerDocument().getModel().getStructuredDocument();
-			CompoundRegion[] regions = getRegionsWithoutWhiteSpaces(structuredDocument, new FormatRegion(start, end - start), stgy);
-			for (int i = 0; i < regions.length; i++) {
-				if (i != 0)
-					appendSpaceBefore(node, regions[i], source);
-				source.append(decoratedIdentRegion(regions[i], stgy));
-			}
-		} else { // generate source
-			MediaList list = (MediaList) node;
-			int n = list.getLength();
-			for (int i = 0; i < n; i++) {
-				String medium = list.item(i);
-				if (CSSCorePlugin.getDefault().getPluginPreferences().getInt(CSSCorePreferenceNames.CASE_IDENTIFIER) == CSSCorePreferenceNames.UPPER)
-					medium = medium.toUpperCase();
-				else
-					medium = medium.toLowerCase();
-
-				if (i != 0) {
-					source.append(","); //$NON-NLS-1$
-					appendSpaceBefore(node, medium, source);
-				}
-				source.append(medium);
-			}
-		}
-	}
-
-	/**
-	 * 
-	 */
-	protected void formatPre(ICSSNode node, IRegion region, StringBuffer source) {
-		CSSCleanupStrategy stgy = getCleanupStrategy(node);
-
-		IStructuredDocument structuredDocument = node.getOwnerDocument().getModel().getStructuredDocument();
-		CompoundRegion[] regions = getRegionsWithoutWhiteSpaces(structuredDocument, region, stgy);
-		CompoundRegion[] outside = getOutsideRegions(structuredDocument, region);
-		for (int i = 0; i < regions.length; i++) {
-			if (i != 0 || needS(outside[0]))
-				appendSpaceBefore(node, regions[i], source);
-			source.append(decoratedIdentRegion(regions[i], stgy));
-		}
-		if (needS(outside[1]) && !isIncludesPreEnd(node, region))
-			appendSpaceBefore(node, outside[1], source);
-	}
-
-	/**
-	 * 
-	 */
-	public int getAttrInsertPos(ICSSNode node, String attrName) {
-		if (node == null || attrName == null || attrName.length() == 0)
-			return -1;
-
-		ICSSAttr attr = (ICSSAttr) node.getAttributes().getNamedItem(attrName);
-
-		if (attr != null && ((IndexedRegion) attr).getEndOffset() > 0)
-			return ((IndexedRegion) attr).getStartOffset();
-		IndexedRegion iNode = (IndexedRegion) node;
-		if (iNode.getEndOffset() <= 0)
-			return -1;
-
-		/*
-		 * ITextRegion regions[] =
-		 * getRegionsWithoutWhiteSpaces(node.getOwnerDocument().getModel().getStructuredDocument(),
-		 * new FormatRegion(iNode.getStartOffset(), iNode.getEndOffset() -
-		 * iNode.getStartOffset() + 1)); for(int i=regions.length - 1; i >= 0;
-		 * i--) { if (regions[i].getType() == CSSRegionContexts.IMPORTANT_SYM)
-		 * return regions[i].getStartOffset(); }
-		 */
-		return iNode.getEndOffset();
-	}
-
-	/**
-	 * 
-	 */
-	public synchronized static MediaListFormatter getInstance() {
-		if (instance == null)
-			instance = new MediaListFormatter();
-		return instance;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/formatter/MediaRuleFormatter.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/formatter/MediaRuleFormatter.java
deleted file mode 100644
index b752532..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/formatter/MediaRuleFormatter.java
+++ /dev/null
@@ -1,383 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this 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.core.internal.formatter;
-
-
-
-import org.eclipse.jface.text.IRegion;
-import org.eclipse.wst.css.core.internal.CSSCorePlugin;
-import org.eclipse.wst.css.core.internal.cleanup.CSSCleanupStrategy;
-import org.eclipse.wst.css.core.internal.parserz.CSSRegionContexts;
-import org.eclipse.wst.css.core.internal.preferences.CSSCorePreferenceNames;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSNode;
-import org.eclipse.wst.css.core.internal.util.RegionIterator;
-import org.eclipse.wst.sse.core.internal.provisional.IndexedRegion;
-import org.eclipse.wst.sse.core.internal.provisional.text.IStructuredDocument;
-import org.eclipse.wst.sse.core.internal.provisional.text.IStructuredDocumentRegion;
-import org.eclipse.wst.sse.core.internal.provisional.text.ITextRegion;
-
-
-/**
- * 
- */
-public class MediaRuleFormatter extends AbstractCSSSourceFormatter {
-
-	public final static java.lang.String MEDIA = "@media";//$NON-NLS-1$
-	private static MediaRuleFormatter instance;
-
-	/**
-	 * 
-	 */
-	MediaRuleFormatter() {
-		super();
-	}
-
-	/**
-	 * 
-	 */
-	protected void formatBefore(ICSSNode node, ICSSNode child, String toAppend, StringBuffer source, IRegion exceptFor) {
-		ICSSNode prev = (child != null) ? child.getPreviousSibling() : node.getLastChild();
-		int start = (prev != null) ? ((IndexedRegion) prev).getEndOffset() : 0;
-		int end = (child != null) ? ((IndexedRegion) child).getStartOffset() : 0;
-		if (start > 0 && start < end) { // source formatting
-			CSSCleanupStrategy stgy = getCleanupStrategy(node);
-
-			IStructuredDocument structuredDocument = node.getOwnerDocument().getModel().getStructuredDocument();
-			// get meaning regions
-			CompoundRegion[] regions = null;
-			if (exceptFor == null)
-				regions = getRegionsWithoutWhiteSpaces(structuredDocument, new FormatRegion(start, end - start), stgy);
-			else {
-				String pickupType = null;
-				if ((prev != null && prev.getNodeType() == ICSSNode.MEDIALIST_NODE) || (prev == null && (child == null || child.getNodeType() != ICSSNode.MEDIALIST_NODE))) {
-					pickupType = CSSRegionContexts.CSS_LBRACE;
-				}
-				regions = getRegions(structuredDocument, new FormatRegion(start, end - start), exceptFor, pickupType);
-			}
-			// extract source
-			if (child != null && child.getNodeType() == ICSSNode.MEDIALIST_NODE) { // between
-				// "@media"
-				// and
-				// mediatype
-				for (int i = 0; i < regions.length; i++) {
-					appendSpaceBefore(node, regions[i], source);
-					source.append(decoratedRegion(regions[i], 0, stgy)); // must
-					// be
-					// comments
-				}
-				appendSpaceBefore(node, toAppend, source);
-			} else if (child != null && (child.getPreviousSibling() == null || child.getPreviousSibling().getNodeType() == ICSSNode.MEDIALIST_NODE)) { // between
-				// mediatype
-				// and
-				// the
-				// first
-				// style
-				// rule
-				for (int i = 0; i < regions.length; i++) {
-					appendSpaceBefore(node, regions[i], source);
-					source.append(decoratedRegion(regions[i], 0, stgy)); // must
-					// be
-					// comments
-				}
-				appendDelimBefore(node, null, source);
-			} else { // between styles
-				for (int i = 0; i < regions.length; i++) {
-					appendDelimBefore(node, regions[i], source);
-					source.append(decoratedRegion(regions[i], 0, stgy)); // must
-					// be
-					// comments
-				}
-				appendDelimBefore(node, null, source);
-			}
-		} else { // source generation
-			if (child == null && prev != null && prev.getNodeType() != ICSSNode.MEDIALIST_NODE) { // after
-				// the
-				// last
-				// style
-				// rule
-				appendDelimBefore(node.getParentNode(), null, source);
-			} else if (child != null && child.getNodeType() == ICSSNode.MEDIALIST_NODE) { // between
-				// "@media"
-				// and
-				// mediatype
-				appendSpaceBefore(node, toAppend, source);
-			} else if (prev != null && prev.getNodeType() == ICSSNode.MEDIALIST_NODE) { // between
-				// mediatype
-				// and
-				// the
-				// first
-				// style
-				// rule
-				appendSpaceBefore(node, "{", source);//$NON-NLS-1$
-				source.append("{");//$NON-NLS-1$
-				if (child != null)
-					appendDelimBefore(node, null, source);
-				else
-					appendDelimBefore(node.getParentNode(), null, source);
-			} else { // normal case
-				appendDelimBefore(node, null, source);
-			}
-		}
-
-	}
-
-	/**
-	 * 
-	 */
-	protected void formatBefore(ICSSNode node, ICSSNode child, IRegion region, String toAppend, StringBuffer source) {
-		CSSCleanupStrategy stgy = getCleanupStrategy(node);
-
-		IStructuredDocument structuredDocument = node.getOwnerDocument().getModel().getStructuredDocument();
-		CompoundRegion[] regions = getRegionsWithoutWhiteSpaces(structuredDocument, region, stgy);
-		CompoundRegion[] outside = getOutsideRegions(structuredDocument, region);
-		if (child != null && child.getNodeType() == ICSSNode.MEDIALIST_NODE) { // between
-			// "@media"
-			// and
-			// mediatype
-			for (int i = 0; i < regions.length; i++) {
-				if (i != 0 || needS(outside[0]))
-					appendSpaceBefore(node, regions[i], source);
-				source.append(decoratedRegion(regions[i], 0, stgy)); // must
-				// be
-				// comments
-			}
-			if (needS(outside[1]) && ((IndexedRegion) child).getStartOffset() == region.getOffset() + region.getLength()) {
-				appendSpaceBefore(node, toAppend, source);
-			}
-		} else if (child != null && (child.getPreviousSibling() == null || child.getPreviousSibling().getNodeType() == ICSSNode.MEDIALIST_NODE)) { // between
-			// mediatype
-			// and
-			// the
-			// first
-			// style
-			// rule
-			for (int i = 0; i < regions.length; i++) {
-				if (i != 0 || needS(outside[0]))
-					appendSpaceBefore(node, regions[i], source);
-				source.append(decoratedRegion(regions[i], 0, stgy)); // must
-				// be
-				// comments
-			}
-			if (needS(outside[1]) && ((IndexedRegion) child).getStartOffset() == region.getOffset() + region.getLength()) {
-				appendDelimBefore(node, null, source);
-			}
-		} else { // between styles
-			for (int i = 0; i < regions.length; i++) {
-				if (i != 0 || needS(outside[0]))
-					appendDelimBefore(node, regions[i], source);
-				source.append(decoratedRegion(regions[i], 0, stgy)); // must
-				// be
-				// comments
-			}
-			if (needS(outside[1]) && ((IndexedRegion) child).getStartOffset() == region.getOffset() + region.getLength()) {
-				appendDelimBefore(node, null, source);
-			}
-		}
-	}
-
-	/**
-	 * 
-	 */
-	protected void formatPost(ICSSNode node, StringBuffer source) {
-		int end = ((IndexedRegion) node).getEndOffset();
-		int start = (node.getLastChild() != null && ((IndexedRegion) node.getLastChild()).getEndOffset() > 0) ? ((IndexedRegion) node.getLastChild()).getEndOffset() : getChildInsertPos(node);
-		if (end > 0 && start < end) { // source formatting
-			CSSCleanupStrategy stgy = getCleanupStrategy(node);
-
-			IStructuredDocument structuredDocument = node.getOwnerDocument().getModel().getStructuredDocument();
-			CompoundRegion[] regions = getRegionsWithoutWhiteSpaces(structuredDocument, new FormatRegion(start, end - start), stgy);
-			if (node.getLastChild() == null || node.getLastChild().getNodeType() != ICSSNode.MEDIALIST_NODE) {
-				for (int i = 0; i < regions.length; i++) {
-					appendDelimBefore(node, regions[i], source);
-					source.append(decoratedRegion(regions[i], 0, stgy));
-				}
-			} else {
-				boolean bInCurlyBrace = false;
-				for (int i = 0; i < regions.length; i++) {
-					if (!bInCurlyBrace)
-						appendSpaceBefore(node, regions[i], source);
-					else
-						appendDelimBefore(node, regions[i], source);
-					source.append(decoratedRegion(regions[i], 0, stgy));
-					if (regions[i].getType() == CSSRegionContexts.CSS_LBRACE)
-						bInCurlyBrace = true;
-				}
-			}
-		} else { // source generation
-			String delim = getLineDelimiter(node);
-			if (node.getLastChild() != null && node.getLastChild().getNodeType() == ICSSNode.MEDIALIST_NODE) {
-				appendSpaceBefore(node, "{", source);//$NON-NLS-1$
-				source.append("{");//$NON-NLS-1$
-			}
-
-			source.append(delim);
-			source.append(getIndent(node));
-			source.append("}");//$NON-NLS-1$
-		}
-	}
-
-	/**
-	 * 
-	 */
-	protected void formatPost(ICSSNode node, IRegion region, StringBuffer source) {
-		CSSCleanupStrategy stgy = getCleanupStrategy(node);
-
-		IStructuredDocument structuredDocument = node.getOwnerDocument().getModel().getStructuredDocument();
-		CompoundRegion[] regions = getRegionsWithoutWhiteSpaces(structuredDocument, region, stgy);
-		CompoundRegion[] outside = getOutsideRegions(structuredDocument, region);
-		for (int i = 0; i < regions.length; i++) {
-			if (i != 0 || needS(outside[0]))
-				appendDelimBefore(node, regions[i], source);
-			source.append(decoratedRegion(regions[i], 0, stgy));
-		}
-	}
-
-	/**
-	 * 
-	 */
-	protected void formatPre(ICSSNode node, StringBuffer source) {
-		int start = ((IndexedRegion) node).getStartOffset();
-		int end = (node.getFirstChild() != null && ((IndexedRegion) node.getFirstChild()).getEndOffset() > 0) ? ((IndexedRegion) node.getFirstChild()).getStartOffset() : getChildInsertPos(node);
-
-		if (end > 0) { // source formatting
-			CSSCleanupStrategy stgy = getCleanupStrategy(node);
-
-			IStructuredDocument structuredDocument = node.getOwnerDocument().getModel().getStructuredDocument();
-			CompoundRegion[] regions = getRegionsWithoutWhiteSpaces(structuredDocument, new FormatRegion(start, end - start), stgy);
-			for (int i = 0; i < regions.length; i++) {
-				if (i != 0)
-					appendSpaceBefore(node, regions[i], source);
-				source.append(decoratedIdentRegion(regions[i], stgy));
-			}
-		} else { // source generation
-			String str = MEDIA;
-			if (CSSCorePlugin.getDefault().getPluginPreferences().getInt(CSSCorePreferenceNames.CASE_IDENTIFIER) == CSSCorePreferenceNames.UPPER)
-				str = MEDIA.toUpperCase();
-			source.append(str);
-		}
-		ICSSNode child = node.getFirstChild();
-		if (child != null && (child instanceof org.w3c.dom.stylesheets.MediaList) && ((org.w3c.dom.stylesheets.MediaList) child).getLength() > 0) {
-			appendSpaceBefore(node, "", source);//$NON-NLS-1$
-		}
-	}
-
-	/**
-	 * 
-	 */
-	protected void formatPre(ICSSNode node, IRegion region, StringBuffer source) {
-		CSSCleanupStrategy stgy = getCleanupStrategy(node);
-
-		IStructuredDocument structuredDocument = node.getOwnerDocument().getModel().getStructuredDocument();
-		CompoundRegion[] regions = getRegionsWithoutWhiteSpaces(structuredDocument, region, stgy);
-		CompoundRegion[] outside = getOutsideRegions(structuredDocument, region);
-		for (int i = 0; i < regions.length; i++) {
-			if (i != 0 || needS(outside[0]))
-				appendSpaceBefore(node, regions[i], source);
-			source.append(decoratedIdentRegion(regions[i], stgy));
-		}
-		if (needS(outside[1]) && !isIncludesPreEnd(node, region))
-			appendSpaceBefore(node, outside[1], source);
-	}
-
-	/**
-	 * 
-	 */
-	public int getChildInsertPos(ICSSNode node) {
-		int n = ((IndexedRegion) node).getEndOffset();
-		if (n > 0) {
-			IStructuredDocumentRegion flatNode = node.getOwnerDocument().getModel().getStructuredDocument().getRegionAtCharacterOffset(n - 1);
-			if (flatNode.getRegionAtCharacterOffset(n - 1).getType() == CSSRegionContexts.CSS_LBRACE)
-				return n - 1;
-			return n;
-		}
-		return -1;
-	}
-
-	/**
-	 * 
-	 */
-	public synchronized static MediaRuleFormatter getInstance() {
-		if (instance == null)
-			instance = new MediaRuleFormatter();
-		return instance;
-	}
-
-	/**
-	 * 
-	 * @return int
-	 * @param node
-	 *            org.eclipse.wst.css.core.model.interfaces.ICSSNode
-	 * @param insertPos
-	 *            int
-	 */
-	public int getLengthToReformatAfter(ICSSNode node, int insertPos) {
-		if (node == null)
-			return 0;
-		IndexedRegion nnode = (IndexedRegion) node;
-		if (insertPos <= 0 || !nnode.contains(insertPos - 1))
-			return 0;
-
-		if (node.getFirstChild().getNextSibling() == node.getLastChild()) { // inserted
-			// first
-			// style
-			// rule
-			IStructuredDocumentRegion flatNode = node.getOwnerDocument().getModel().getStructuredDocument().getRegionAtCharacterOffset(insertPos);
-			if (flatNode == null)
-				return 0;
-			ITextRegion region = flatNode.getRegionAtCharacterOffset(insertPos);
-			if (region == null)
-				return 0;
-			RegionIterator it = new RegionIterator(flatNode, region);
-			while (it.hasNext()) {
-				region = it.next();
-				if (region.getType() == CSSRegionContexts.CSS_LBRACE)
-					break;
-				if (nnode.getEndOffset() <= it.getStructuredDocumentRegion().getEndOffset(region))
-					break;
-			}
-			int pos = it.getStructuredDocumentRegion().getStartOffset(region) - insertPos;
-			return (pos >= 0) ? pos : 0;
-
-		}
-		return super.getLengthToReformatAfter(node, insertPos);
-	}
-
-	/**
-	 * 
-	 * @return int
-	 * @param node
-	 *            org.eclipse.wst.css.core.model.interfaces.ICSSNode
-	 * @param insertPos
-	 *            int
-	 */
-	public int getLengthToReformatBefore(ICSSNode node, int insertPos) {
-		if (node == null)
-			return 0;
-		IndexedRegion nnode = (IndexedRegion) node;
-		if (insertPos <= 0 || !nnode.contains(insertPos - 1))
-			return 0;
-
-		if (node.getFirstChild().getNextSibling() == node.getLastChild()) { // inserted
-			// first
-			// style
-			// rule
-			int pos = ((IndexedRegion) node.getFirstChild()).getEndOffset();
-			if (pos <= 0)
-				pos = ((IndexedRegion) node).getStartOffset() + 6 /*
-																	 * length
-																	 * of
-																	 * "@media"
-																	 */;
-			return insertPos - pos;
-		}
-		return super.getLengthToReformatBefore(node, insertPos);
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/formatter/PageRuleFormatter.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/formatter/PageRuleFormatter.java
deleted file mode 100644
index 63de94e..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/formatter/PageRuleFormatter.java
+++ /dev/null
@@ -1,194 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this 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.core.internal.formatter;
-
-
-
-import org.eclipse.jface.text.IRegion;
-import org.eclipse.wst.css.core.internal.CSSCorePlugin;
-import org.eclipse.wst.css.core.internal.cleanup.CSSCleanupStrategy;
-import org.eclipse.wst.css.core.internal.parserz.CSSRegionContexts;
-import org.eclipse.wst.css.core.internal.preferences.CSSCorePreferenceNames;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSAttr;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSNode;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSPageRule;
-import org.eclipse.wst.css.core.internal.util.RegionIterator;
-import org.eclipse.wst.sse.core.internal.provisional.IndexedRegion;
-import org.eclipse.wst.sse.core.internal.provisional.text.IStructuredDocument;
-import org.eclipse.wst.sse.core.internal.provisional.text.IStructuredDocumentRegion;
-import org.eclipse.wst.sse.core.internal.provisional.text.ITextRegion;
-
-
-/**
- * 
- */
-public class PageRuleFormatter extends DeclContainerFormatter {
-
-	public final static java.lang.String PAGE = "@page";//$NON-NLS-1$
-	private static PageRuleFormatter instance;
-
-	/**
-	 * 
-	 */
-	PageRuleFormatter() {
-		super();
-	}
-
-	/**
-	 * 
-	 */
-	public StringBuffer formatAttrChanged(ICSSNode node, ICSSAttr attr, boolean insert, AttrChangeContext context) {
-		StringBuffer buf = new StringBuffer();
-		if (node == null || attr == null)
-			return buf;
-
-		if (!ICSSPageRule.SELECTOR.equalsIgnoreCase(attr.getName()))
-			return buf;
-
-		// get region to replace
-		if (context != null && ((IndexedRegion) node).getEndOffset() > 0) {
-			if (attr != null && ((IndexedRegion) attr).getEndOffset() > 0) {
-				IStructuredDocumentRegion flatNode = node.getOwnerDocument().getModel().getStructuredDocument().getRegionAtCharacterOffset(((IndexedRegion) attr).getEndOffset() - 1);
-				ITextRegion region = flatNode.getRegionAtCharacterOffset(((IndexedRegion) attr).getEndOffset() - 1);
-				RegionIterator it = new RegionIterator(flatNode, region);
-				it.next();
-				if (it.hasNext()) {
-					ITextRegion next = it.next();
-					if (next.getType() == CSSRegionContexts.CSS_S)
-						context.end = it.getStructuredDocumentRegion().getEndOffset(next);
-					else
-						context.end = it.getStructuredDocumentRegion().getEndOffset(region);
-				}
-				else
-					context.end = it.getStructuredDocumentRegion().getEndOffset(region);
-				context.start = it.getStructuredDocumentRegion().getStartOffset(region);
-			}
-			else {
-				int pos = getAttrInsertPos(node, attr.getName());
-				context.start = pos;
-				context.end = pos;
-				/*
-				 * IStructuredDocumentRegion flatNode =
-				 * node.getOwnerDocument().getModel().getStructuredDocument().getNodeAtCharacterOffset(((IndexedRegion)node).getStartOffset());
-				 * ITextRegion region =
-				 * flatNode.getRegionAtCharacterOffset(((IndexedRegion)node).getStartOffset());
-				 * if (region.getType() == CSSRegionContexts.S) {
-				 * context.start = region.getStartOffset(); context.end =
-				 * region.getEndOffset(); } else { context.start =
-				 * flatNode.getEndOffset() + 1; context.end =
-				 * flatNode.getEndOffset(); }
-				 */}
-		}
-		// generate text
-		if (insert) {
-			String val = attr.getValue();
-			if (val != null && val.length() > 0) {
-				buf.append(val);
-				appendSpaceBefore(node, "", buf);//$NON-NLS-1$
-			}
-		}
-		return buf;
-	}
-
-	/**
-	 * 
-	 */
-	protected void formatPre(ICSSNode node, StringBuffer source) {
-		CSSCleanupStrategy stgy = getCleanupStrategy(node);
-
-		int start = ((IndexedRegion) node).getStartOffset();
-		int end = (node.getFirstChild() != null && ((IndexedRegion) node.getFirstChild()).getEndOffset() > 0) ? ((IndexedRegion) node.getFirstChild()).getStartOffset() : getChildInsertPos(node);
-
-		if (end > 0) { // format source
-			IStructuredDocument structuredDocument = node.getOwnerDocument().getModel().getStructuredDocument();
-			CompoundRegion[] regions = getRegionsWithoutWhiteSpaces(structuredDocument, new FormatRegion(start, end - start), stgy);
-			for (int i = 0; i < regions.length; i++) {
-				if (i != 0)
-					appendSpaceBetween(node, regions[i - 1], regions[i], source);
-				source.append(decoratedIdentRegion(regions[i], stgy));
-			}
-		}
-		else { // generate source
-			String str = PAGE;
-			if (CSSCorePlugin.getDefault().getPluginPreferences().getInt(CSSCorePreferenceNames.CASE_IDENTIFIER) == CSSCorePreferenceNames.UPPER)
-				str = PAGE.toUpperCase();
-			source.append(str);
-			str = ((ICSSPageRule) node).getSelectorText();
-			if (str != null && str.length() > 0) {
-				appendSpaceBefore(node, str, source);
-				source.append(str);
-			}
-			appendSpaceBefore(node, "{", source);//$NON-NLS-1$
-			source.append("{");//$NON-NLS-1$
-		}
-		appendDelimBefore(node, null, source);
-	}
-
-	/**
-	 * 
-	 */
-	protected void formatPre(ICSSNode node, IRegion region, StringBuffer source) {
-		CSSCleanupStrategy stgy = getCleanupStrategy(node);
-
-		IStructuredDocument structuredDocument = node.getOwnerDocument().getModel().getStructuredDocument();
-		CompoundRegion[] regions = getRegionsWithoutWhiteSpaces(structuredDocument, region, stgy);
-		CompoundRegion[] outside = getOutsideRegions(structuredDocument, region);
-		for (int i = 0; i < regions.length; i++) {
-			if (i != 0 || needS(outside[0]))
-				appendSpaceBetween(node, (i == 0) ? outside[0] : regions[i - 1], regions[i], source);
-			source.append(decoratedIdentRegion(regions[i], stgy));
-		}
-		if (needS(outside[1])) {
-			if (isIncludesPreEnd(node, region))
-				appendDelimBefore(node, null, source);
-			else
-				appendSpaceBetween(node, regions[regions.length - 1], outside[1], source);
-		}
-	}
-
-	/**
-	 * 
-	 */
-	public int getAttrInsertPos(ICSSNode node, String attrName) {
-		if (node == null || attrName == null || attrName.length() == 0)
-			return -1;
-
-		if (!ICSSPageRule.SELECTOR.equalsIgnoreCase(attrName))
-			return -1;
-
-		ICSSAttr attr = (ICSSAttr) node.getAttributes().getNamedItem(ICSSPageRule.SELECTOR);
-		if (attr != null && ((IndexedRegion) attr).getEndOffset() > 0)
-			return ((IndexedRegion) attr).getStartOffset();
-		else if (((IndexedRegion) node).getEndOffset() > 0) {
-			IStructuredDocumentRegion flatNode = node.getOwnerDocument().getModel().getStructuredDocument().getRegionAtCharacterOffset(((IndexedRegion) node).getStartOffset());
-			ITextRegion region = flatNode.getRegionAtCharacterOffset(((IndexedRegion) node).getStartOffset());
-			RegionIterator it = new RegionIterator(flatNode, region);
-			while (it.hasNext()) {
-				region = it.next();
-				if (region.getType() == CSSRegionContexts.CSS_LBRACE) {
-					return it.getStructuredDocumentRegion().getStartOffset(region);
-				}
-				if (it.getStructuredDocumentRegion().getEndOffset(region) >= ((IndexedRegion) node).getEndOffset())
-					break;
-			}
-		}
-		return ((IndexedRegion) node).getStartOffset();
-	}
-
-	/**
-	 * 
-	 */
-	public synchronized static PageRuleFormatter getInstance() {
-		if (instance == null)
-			instance = new PageRuleFormatter();
-		return instance;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/formatter/PrimitiveValueFormatter.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/formatter/PrimitiveValueFormatter.java
deleted file mode 100644
index 1855e9d..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/formatter/PrimitiveValueFormatter.java
+++ /dev/null
@@ -1,273 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this 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.core.internal.formatter;
-
-
-
-import org.eclipse.core.runtime.Preferences;
-import org.eclipse.jface.text.IRegion;
-import org.eclipse.wst.css.core.internal.CSSCorePlugin;
-import org.eclipse.wst.css.core.internal.cleanup.CSSCleanupStrategy;
-import org.eclipse.wst.css.core.internal.contentmodel.PropCMProperty;
-import org.eclipse.wst.css.core.internal.parserz.CSSRegionContexts;
-import org.eclipse.wst.css.core.internal.preferences.CSSCorePreferenceNames;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSNode;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSPrimitiveValue;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSStyleDeclItem;
-import org.eclipse.wst.css.core.internal.util.CSSUtil;
-import org.eclipse.wst.sse.core.internal.provisional.IndexedRegion;
-import org.eclipse.wst.sse.core.internal.provisional.text.IStructuredDocument;
-import org.w3c.dom.css.CSSPrimitiveValue;
-
-
-/**
- * 
- */
-public class PrimitiveValueFormatter extends DefaultCSSSourceFormatter {
-
-	private static PrimitiveValueFormatter instance;
-
-	/**
-	 * 
-	 */
-	PrimitiveValueFormatter() {
-		super();
-	}
-
-	/**
-	 * 
-	 */
-	protected void formatPre(ICSSNode node, StringBuffer source) {
-		int start = ((IndexedRegion) node).getStartOffset();
-		int end = ((IndexedRegion) node).getEndOffset();
-		Preferences preferences = CSSCorePlugin.getDefault().getPluginPreferences();
-		CSSCleanupStrategy stgy = getCleanupStrategy(node);
-
-		if (end > 0) { // format source
-			IStructuredDocument structuredDocument = node.getOwnerDocument().getModel().getStructuredDocument();
-			CompoundRegion[] regions = getRegionsWithoutWhiteSpaces(structuredDocument, new FormatRegion(start, end - start), stgy);
-			boolean appendQuote = regions.length > 1 && node.getParentNode() instanceof ICSSStyleDeclItem && isCleanup() && getCleanupStrategy(node).isQuoteValues() && (((ICSSStyleDeclItem) node.getParentNode()).getPropertyName().equals(PropCMProperty.P_FONT) || ((ICSSStyleDeclItem) node.getParentNode()).getPropertyName().equals(PropCMProperty.P_FONT_FAMILY) || ((ICSSStyleDeclItem) node.getParentNode()).getPropertyName().equals(PropCMProperty.P_VOICE_FAMILY));
-			String quote = preferences.getString(CSSCorePreferenceNames.FORMAT_QUOTE);
-
-			StringBuffer strBuf = new StringBuffer();
-			boolean skipSpace = false;
-			for (int i = 0; i < regions.length; i++) {
-				if (i != 0 && !skipSpace)
-					appendSpaceBefore(node, regions[i], strBuf);
-				skipSpace = false;
-				strBuf.append(decoratedPropValueRegion(regions[i], stgy));
-				if (regions[i].getType() == CSSRegionContexts.CSS_DECLARATION_VALUE_FUNCTION)
-					skipSpace = true;
-			}
-
-			if (appendQuote) {
-				source.append(quote);
-				String str = strBuf.toString();
-				str = str.replace('\'', ' ');
-				str = str.replace('\"', ' ');
-				str = str.trim();
-				source.append(str);
-				source.append(quote);
-			}
-			else {
-				source.append(strBuf);
-			}
-		}
-		else { // generate source
-			ICSSPrimitiveValue value = (ICSSPrimitiveValue) node;
-			short type = value.getPrimitiveType();
-			String quote = preferences.getString(CSSCorePreferenceNames.FORMAT_QUOTE);
-
-			String str = null;
-			switch (type) {
-				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 :
-					if (value.getFloatValue(type) == ((int) value.getFloatValue(type))) {
-						str = Integer.toString((int) value.getFloatValue(type));
-					}
-					else {
-						str = Float.toString(value.getFloatValue(type));
-					}
-					break;
-				case CSSPrimitiveValue.CSS_IDENT :
-				case ICSSPrimitiveValue.CSS_HASH :
-				case ICSSPrimitiveValue.CSS_INHERIT_PRIMITIVE :
-					str = value.getStringValue();
-					if (str != null) {
-						if (preferences.getInt(CSSCorePreferenceNames.CASE_PROPERTY_VALUE) == CSSCorePreferenceNames.UPPER)
-							str = str.toUpperCase();
-						else
-							str.toLowerCase();
-					}
-					break;
-				case CSSPrimitiveValue.CSS_STRING :
-				case CSSPrimitiveValue.CSS_URI :
-				case CSSPrimitiveValue.CSS_ATTR :
-				case ICSSPrimitiveValue.CSS_URANGE :
-				case ICSSPrimitiveValue.CSS_FORMAT :
-				case ICSSPrimitiveValue.CSS_LOCAL :
-				case ICSSPrimitiveValue.CSS_COMMA :
-				case ICSSPrimitiveValue.CSS_SLASH :
-					str = value.getStringValue();
-			}
-
-			String preStr = null, postStr = null;
-			switch (type) {
-				case CSSPrimitiveValue.CSS_ATTR :
-					preStr = "attr(";//$NON-NLS-1$
-					postStr = ")";//$NON-NLS-1$
-					break;
-				case CSSPrimitiveValue.CSS_CM :
-					postStr = "cm";//$NON-NLS-1$
-					break;
-				// case ICSSPrimitiveValue.CSS_COUNTER:
-				case CSSPrimitiveValue.CSS_DEG :
-					postStr = "deg";//$NON-NLS-1$
-					break;
-				case CSSPrimitiveValue.CSS_EMS :
-					postStr = "em";//$NON-NLS-1$
-					break;
-				case CSSPrimitiveValue.CSS_EXS :
-					postStr = "ex";//$NON-NLS-1$
-					break;
-				case CSSPrimitiveValue.CSS_GRAD :
-					postStr = "grad";//$NON-NLS-1$
-					break;
-				case CSSPrimitiveValue.CSS_HZ :
-					postStr = "Hz";//$NON-NLS-1$
-					break;
-				case CSSPrimitiveValue.CSS_IN :
-					postStr = "in";//$NON-NLS-1$
-					break;
-				case CSSPrimitiveValue.CSS_KHZ :
-					postStr = "kHz";//$NON-NLS-1$
-					break;
-				case CSSPrimitiveValue.CSS_MM :
-					postStr = "mm";//$NON-NLS-1$
-					break;
-				case CSSPrimitiveValue.CSS_MS :
-					postStr = "ms";//$NON-NLS-1$
-					break;
-				case CSSPrimitiveValue.CSS_PC :
-					postStr = "pc";//$NON-NLS-1$
-					break;
-				case CSSPrimitiveValue.CSS_PERCENTAGE :
-					postStr = "%";//$NON-NLS-1$
-					break;
-				case CSSPrimitiveValue.CSS_PT :
-					postStr = "pt";//$NON-NLS-1$
-					break;
-				case CSSPrimitiveValue.CSS_PX :
-					postStr = "px";//$NON-NLS-1$
-					break;
-				case CSSPrimitiveValue.CSS_RAD :
-					postStr = "rad";//$NON-NLS-1$
-					break;
-				// case ICSSPrimitiveValue.CSS_RECT:
-				// case ICSSPrimitiveValue.CSS_RGBCOLOR:
-				case CSSPrimitiveValue.CSS_S :
-					postStr = "s";//$NON-NLS-1$
-					break;
-				case CSSPrimitiveValue.CSS_STRING :
-					quote = CSSUtil.detectQuote(str, quote);
-					preStr = quote;
-					postStr = quote;
-					break;
-				case CSSPrimitiveValue.CSS_URI :
-					quote = CSSUtil.detectQuote(str, quote);
-					preStr = "url(" + quote;//$NON-NLS-1$
-					postStr = quote + ")";//$NON-NLS-1$
-					break;
-				// the followings are original primitive values
-				case CSSPrimitiveValue.CSS_IDENT :
-				case CSSPrimitiveValue.CSS_UNKNOWN :
-				// use str
-				case ICSSPrimitiveValue.CSS_INTEGER :
-				case ICSSPrimitiveValue.CSS_HASH :
-				case ICSSPrimitiveValue.CSS_SLASH :
-				case ICSSPrimitiveValue.CSS_COMMA :
-				case CSSPrimitiveValue.CSS_DIMENSION :
-				case CSSPrimitiveValue.CSS_NUMBER :
-				case ICSSPrimitiveValue.CSS_INHERIT_PRIMITIVE :
-					break;
-				case ICSSPrimitiveValue.CSS_URANGE :
-					preStr = "U+";//$NON-NLS-1$
-					break;
-				case ICSSPrimitiveValue.CSS_FORMAT :
-					quote = CSSUtil.detectQuote(str, quote);
-					preStr = "format(" + quote;//$NON-NLS-1$
-					postStr = quote + ")";//$NON-NLS-1$
-					break;
-				case ICSSPrimitiveValue.CSS_LOCAL :
-					quote = CSSUtil.detectQuote(str, quote);
-					preStr = "local(" + quote;//$NON-NLS-1$
-					postStr = quote + ")";//$NON-NLS-1$
-					break;
-			}
-			if (preferences.getInt(CSSCorePreferenceNames.CASE_PROPERTY_VALUE) == CSSCorePreferenceNames.UPPER) {
-				if (preStr != null)
-					preStr = preStr.toUpperCase();
-				if (postStr != null)
-					postStr = postStr.toUpperCase();
-			}
-			if (preStr != null)
-				source.append(preStr);
-			if (str != null)
-				source.append(str);
-			if (postStr != null)
-				source.append(postStr);
-		}
-	}
-
-	/**
-	 * 
-	 */
-	protected void formatPre(ICSSNode node, IRegion region, StringBuffer source) {
-		CSSCleanupStrategy stgy = getCleanupStrategy(node);
-
-		IStructuredDocument structuredDocument = node.getOwnerDocument().getModel().getStructuredDocument();
-		CompoundRegion[] regions = getRegionsWithoutWhiteSpaces(structuredDocument, region, stgy);
-		CompoundRegion[] outside = getOutsideRegions(structuredDocument, region);
-		for (int i = 0; i < regions.length; i++) {
-			if (i != 0 || needS(outside[0]))
-				appendSpaceBefore(node, regions[i], source);
-			source.append(decoratedPropValueRegion(regions[i], stgy));
-		}
-		if (needS(outside[1]) && !isIncludesPreEnd(node, region))
-			appendSpaceBefore(node, outside[1], source);
-	}
-
-	/**
-	 * 
-	 */
-	public synchronized static PrimitiveValueFormatter getInstance() {
-		if (instance == null)
-			instance = new PrimitiveValueFormatter();
-		return instance;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/formatter/RGBFormatter.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/formatter/RGBFormatter.java
deleted file mode 100644
index a6909db..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/formatter/RGBFormatter.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.wst.css.core.internal.formatter;
-
-
-
-/**
- * 
- */
-public class RGBFormatter extends FunctionFormatter {
-
-	private static RGBFormatter instance;
-
-	/**
-	 * 
-	 */
-	RGBFormatter() {
-		super();
-	}
-
-	/**
-	 * 
-	 */
-	protected String getFunc() {
-		return "rgb(";//$NON-NLS-1$
-	}
-
-	/**
-	 * 
-	 */
-	public synchronized static RGBFormatter getInstance() {
-		if (instance == null)
-			instance = new RGBFormatter();
-		return instance;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/formatter/RectFormatter.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/formatter/RectFormatter.java
deleted file mode 100644
index f3ec832..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/formatter/RectFormatter.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.wst.css.core.internal.formatter;
-
-
-
-/**
- * 
- */
-public class RectFormatter extends FunctionFormatter {
-
-	private static RectFormatter instance;
-
-	/**
-	 * 
-	 */
-	RectFormatter() {
-		super();
-	}
-
-	/**
-	 * 
-	 */
-	protected String getFunc() {
-		return "rect(";//$NON-NLS-1$
-	}
-
-	/**
-	 * 
-	 */
-	public synchronized static RectFormatter getInstance() {
-		if (instance == null)
-			instance = new RectFormatter();
-		return instance;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/formatter/StyleDeclItemFormatter.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/formatter/StyleDeclItemFormatter.java
deleted file mode 100644
index 5d62b29..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/formatter/StyleDeclItemFormatter.java
+++ /dev/null
@@ -1,399 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this 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.core.internal.formatter;
-
-
-
-import org.eclipse.core.runtime.Preferences;
-import org.eclipse.jface.text.IRegion;
-import org.eclipse.wst.css.core.internal.CSSCorePlugin;
-import org.eclipse.wst.css.core.internal.cleanup.CSSCleanupStrategy;
-import org.eclipse.wst.css.core.internal.parserz.CSSRegionContexts;
-import org.eclipse.wst.css.core.internal.preferences.CSSCorePreferenceNames;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSAttr;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSNode;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSPrimitiveValue;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSStyleDeclItem;
-import org.eclipse.wst.css.core.internal.util.RegionIterator;
-import org.eclipse.wst.sse.core.internal.provisional.IndexedRegion;
-import org.eclipse.wst.sse.core.internal.provisional.text.IStructuredDocument;
-import org.eclipse.wst.sse.core.internal.provisional.text.IStructuredDocumentRegion;
-import org.eclipse.wst.sse.core.internal.provisional.text.ITextRegion;
-
-
-/**
- * 
- */
-public class StyleDeclItemFormatter extends DefaultCSSSourceFormatter {
-
-	private static StyleDeclItemFormatter instance;
-
-	/**
-	 * 
-	 */
-	StyleDeclItemFormatter() {
-		super();
-	}
-
-	/**
-	 * 
-	 */
-	private void appendAfterColonSpace(ICSSNode node, StringBuffer source) {
-		Preferences preferences = CSSCorePlugin.getDefault().getPluginPreferences();
-		int n = preferences.getInt(CSSCorePreferenceNames.FORMAT_PROP_POST_DELIM);
-
-		if (preferences.getInt(CSSCorePreferenceNames.LINE_WIDTH) > 0 && (!preferences.getBoolean(CSSCorePreferenceNames.WRAPPING_PROHIBIT_WRAP_ON_ATTR) || node.getOwnerDocument().getNodeType() != ICSSNode.STYLEDECLARATION_NODE)) {
-			int length = getLastLineLength(node, source);
-			int append = getFirstChildRegionLength(node);
-			if (length + n + append > preferences.getInt(CSSCorePreferenceNames.LINE_WIDTH)) {
-				source.append(getLineDelimiter(node));
-				source.append(getIndent(node));
-				source.append(getIndentString());
-				n = 0; // no space is necessary
-			}
-		}
-		// no delimiter case
-		while (n-- > 0)
-			source.append(" ");//$NON-NLS-1$
-	}
-
-	/**
-	 * 
-	 */
-	private int getFirstChildRegionLength(ICSSNode node) {
-		ICSSNode firstChild = node.getFirstChild();
-		if (firstChild == null)
-			return 1;
-		int start = ((IndexedRegion) firstChild).getStartOffset();
-		RegionIterator itr = new RegionIterator(node.getOwnerDocument().getModel().getStructuredDocument(), start);
-		while (itr.hasNext()) {
-			ITextRegion reg = itr.next();
-			if (reg != null && reg.getType() != CSSRegionContexts.CSS_S)
-				return reg.getTextLength();
-		}
-		return 1;
-	}
-
-	/**
-	 * 
-	 */
-	public StringBuffer formatAttrChanged(ICSSNode node, ICSSAttr attr, boolean insert, AttrChangeContext context) {
-		StringBuffer buf = new StringBuffer();
-		if (node == null || attr == null)
-			return buf;
-
-		if (!ICSSStyleDeclItem.IMPORTANT.equalsIgnoreCase(attr.getName()))
-			return buf;
-
-		// get region to replace
-		if (context != null && ((IndexedRegion) node).getEndOffset() > 0) {
-			if (attr != null && ((IndexedRegion) attr).getEndOffset() > 0) {
-				IStructuredDocumentRegion flatNode = node.getOwnerDocument().getModel().getStructuredDocument().getRegionAtCharacterOffset(((IndexedRegion) attr).getStartOffset());
-				ITextRegion region = flatNode.getRegionAtCharacterOffset(((IndexedRegion) attr).getStartOffset());
-				RegionIterator it = new RegionIterator(flatNode, region);
-				it.prev();
-				if (it.hasPrev()) {
-					ITextRegion prev = it.prev();
-					if (prev.getType() == CSSRegionContexts.CSS_S)
-						context.start = it.getStructuredDocumentRegion().getStartOffset(prev);
-					else
-						context.start = it.getStructuredDocumentRegion().getStartOffset(region);
-				} else
-					context.start = it.getStructuredDocumentRegion().getStartOffset(region);
-				context.end = it.getStructuredDocumentRegion().getEndOffset(region);
-			} else {
-				IStructuredDocumentRegion flatNode = node.getOwnerDocument().getModel().getStructuredDocument().getRegionAtCharacterOffset(((IndexedRegion) node).getEndOffset() - 1);
-				ITextRegion region = flatNode.getRegionAtCharacterOffset(((IndexedRegion) node).getEndOffset() - 1);
-				if (region.getType() == CSSRegionContexts.CSS_S) {
-					context.start = flatNode.getStartOffset(region);
-					context.end = flatNode.getEndOffset(region);
-				} else {
-					context.start = flatNode.getEndOffset();
-					context.end = flatNode.getEndOffset();
-				}
-			}
-		}
-		// generate text
-		if (insert && attr.getValue() != null && attr.getValue().length() > 0) {
-			appendSpaceBefore(node, attr.getValue(), buf);
-			buf.append(attr.getValue());
-		}
-		return buf;
-	}
-
-	/**
-	 * 
-	 */
-	protected void formatBefore(ICSSNode node, ICSSNode child, String toAppend, StringBuffer source, IRegion exceptFor) {
-		ICSSNode prev = (child != null) ? child.getPreviousSibling() : node.getLastChild();
-		int start = (prev != null) ? ((IndexedRegion) prev).getEndOffset() : 0;
-		int end = (child != null) ? ((IndexedRegion) child).getStartOffset() : 0;
-		if (start > 0 && start < end) {
-			CSSCleanupStrategy stgy = getCleanupStrategy(node);
-
-			IStructuredDocument structuredDocument = node.getOwnerDocument().getModel().getStructuredDocument();
-			// get meaning regions
-			CompoundRegion[] regions = null;
-			if (exceptFor == null)
-				regions = getRegionsWithoutWhiteSpaces(structuredDocument, new FormatRegion(start, end - start), stgy);
-			else {
-				regions = getRegions(structuredDocument, new FormatRegion(start, end - start), exceptFor, null);
-			}
-			// generate source
-			for (int i = 0; i < regions.length; i++) {
-				appendSpaceBefore(node, regions[i], source);
-				source.append(decoratedRegion(regions[i], 2, stgy)); // must
-				// be
-				// comments
-			}
-		}
-		if (child != null && child instanceof ICSSPrimitiveValue) {
-			if (((ICSSPrimitiveValue) child).getPrimitiveType() == ICSSPrimitiveValue.CSS_COMMA)
-				toAppend = ",";//$NON-NLS-1$
-			else if (((ICSSPrimitiveValue) child).getPrimitiveType() == ICSSPrimitiveValue.CSS_SLASH)
-				toAppend = "/";//$NON-NLS-1$
-		}
-		if (child != null && toAppend != null && !toAppend.equals(",") && !toAppend.equals("/")) //$NON-NLS-1$ //$NON-NLS-2$
-			appendSpaceBefore(node, toAppend, source);
-	}
-
-	/**
-	 * 
-	 */
-	protected void formatBefore(ICSSNode node, ICSSNode child, IRegion region, String toAppend, StringBuffer source) {
-		CSSCleanupStrategy stgy = getCleanupStrategy(node);
-
-		IStructuredDocument structuredDocument = node.getOwnerDocument().getModel().getStructuredDocument();
-		CompoundRegion[] regions = getRegionsWithoutWhiteSpaces(structuredDocument, region, stgy);
-		CompoundRegion[] outside = getOutsideRegions(structuredDocument, region);
-		for (int i = 0; i < regions.length; i++) {
-			if (i != 0 || needS(outside[0]))
-				appendSpaceBefore(node, regions[i], source);
-			source.append(decoratedRegion(regions[i], 2, stgy)); // must be
-			// comments
-		}
-		if (needS(outside[1])) {
-			if (((IndexedRegion) child).getStartOffset() == region.getOffset() + region.getLength()) {
-				if (toAppend != "," && toAppend != "/") //$NON-NLS-1$ //$NON-NLS-2$
-					appendSpaceBefore(node, toAppend, source);
-			}
-		}
-	}
-
-	/**
-	 * 
-	 */
-	protected void formatPost(ICSSNode node, StringBuffer source) {
-		CSSCleanupStrategy stgy = getCleanupStrategy(node);
-
-		int end = ((IndexedRegion) node).getEndOffset();
-		int start = (node.getLastChild() != null && ((IndexedRegion) node.getLastChild()).getEndOffset() > 0) ? ((IndexedRegion) node.getLastChild()).getEndOffset() : getChildInsertPos(node);
-		if (end > 0 && start < end) { // format source
-			IStructuredDocument structuredDocument = node.getOwnerDocument().getModel().getStructuredDocument();
-			CompoundRegion[] regions = getRegionsWithoutWhiteSpaces(structuredDocument, new FormatRegion(start, end - start), stgy);
-			for (int i = 0; i < regions.length; i++) {
-				appendSpaceBefore(node, regions[i], source);
-				source.append(decoratedIdentRegion(regions[i], stgy));
-			}
-		} else { // generate source
-			// append "!important"
-			String priority = ((ICSSStyleDeclItem) node).getPriority();
-			if (priority != null && priority.length() > 0) {
-				appendSpaceBefore(node, priority, source);
-				source.append(priority);
-			}
-		}
-	}
-
-	/**
-	 * 
-	 */
-	protected void formatPost(ICSSNode node, IRegion region, StringBuffer source) {
-		CSSCleanupStrategy stgy = getCleanupStrategy(node);
-
-		IStructuredDocument structuredDocument = node.getOwnerDocument().getModel().getStructuredDocument();
-		CompoundRegion[] regions = getRegionsWithoutWhiteSpaces(structuredDocument, region, stgy);
-		CompoundRegion[] outside = getOutsideRegions(structuredDocument, region);
-		for (int i = 0; i < regions.length; i++) {
-			if (i != 0 || needS(outside[0]))
-				appendSpaceBefore(node, regions[i], source);
-			source.append(decoratedIdentRegion(regions[i], stgy));
-		}
-	}
-
-	/**
-	 * 
-	 */
-	protected void formatPre(ICSSNode node, StringBuffer source) {
-		int start = ((IndexedRegion) node).getStartOffset();
-		int end = (node.getFirstChild() != null && ((IndexedRegion) node.getFirstChild()).getEndOffset() > 0) ? ((IndexedRegion) node.getFirstChild()).getStartOffset() : getChildInsertPos(node);
-		Preferences preferences = CSSCorePlugin.getDefault().getPluginPreferences();
-		if (end > 0) { // format source
-			CSSCleanupStrategy stgy = getCleanupStrategy(node);
-
-			IStructuredDocument structuredDocument = node.getOwnerDocument().getModel().getStructuredDocument();
-			CompoundRegion[] regions = getRegionsWithoutWhiteSpaces(structuredDocument, new FormatRegion(start, end - start), stgy);
-			for (int i = 0; i < regions.length; i++) {
-				if (i != 0)
-					appendSpaceBefore(node, regions[i], source);
-				source.append(decoratedPropNameRegion(regions[i], stgy));
-			}
-		} else { // generatoe source
-			ICSSStyleDeclItem item = (ICSSStyleDeclItem) node;
-			if (preferences.getInt(CSSCorePreferenceNames.CASE_PROPERTY_NAME) == CSSCorePreferenceNames.UPPER)
-				source.append(item.getPropertyName().toUpperCase());
-			else
-				source.append(item.getPropertyName());
-
-			int k = preferences.getInt(CSSCorePreferenceNames.FORMAT_PROP_PRE_DELIM);
-			if (preferences.getInt(CSSCorePreferenceNames.LINE_WIDTH) > 0 && (!preferences.getBoolean(CSSCorePreferenceNames.WRAPPING_PROHIBIT_WRAP_ON_ATTR) || node.getOwnerDocument().getNodeType() != ICSSNode.STYLEDECLARATION_NODE)) {
-				int length = getLastLineLength(node, source);
-				int append = 1;
-				if (length + k + append > preferences.getInt(CSSCorePreferenceNames.LINE_WIDTH)) {
-					source.append(getLineDelimiter(node));
-					source.append(getIndent(node));
-					source.append(getIndentString());
-					k = 0; // no space is necessary
-				}
-			}
-			// no delimiter case
-			while (k-- > 0)
-				source.append(" ");//$NON-NLS-1$
-			source.append(":");//$NON-NLS-1$
-		}
-		if (!isCleanup() || getCleanupStrategy(node).isFormatSource()) {
-			appendAfterColonSpace(node, source);
-		}
-	}
-
-	/**
-	 * 
-	 */
-	protected void formatPre(ICSSNode node, IRegion region, StringBuffer source) {
-		CSSCleanupStrategy stgy = getCleanupStrategy(node);
-
-		IStructuredDocument structuredDocument = node.getOwnerDocument().getModel().getStructuredDocument();
-		CompoundRegion[] regions = getRegionsWithoutWhiteSpaces(structuredDocument, region, stgy);
-		CompoundRegion[] outside = getOutsideRegions(structuredDocument, region);
-		for (int i = 0; i < regions.length; i++) {
-			if (i != 0 || needS(outside[0]))
-				appendSpaceBefore(node, regions[i], source);
-			source.append(decoratedPropNameRegion(regions[i], stgy));
-		}
-		if (needS(outside[1])) {
-			if (isIncludesPreEnd(node, region) && (!isCleanup() || getCleanupStrategy(node).isFormatSource())) {
-				appendAfterColonSpace(node, source);
-			} else
-				appendSpaceBefore(node, outside[1], source);
-		}
-	}
-
-	/**
-	 * 
-	 */
-	public StringBuffer formatValue(ICSSNode node) {
-		StringBuffer source = new StringBuffer();
-		formatChildren(node, source);
-
-		return source;
-	}
-
-	/**
-	 * 
-	 */
-	public int getAttrInsertPos(ICSSNode node, String attrName) {
-		if (node == null || attrName == null || attrName.length() == 0)
-			return -1;
-
-		if (!ICSSStyleDeclItem.IMPORTANT.equalsIgnoreCase(attrName))
-			return -1;
-
-		ICSSAttr attr = (ICSSAttr) node.getAttributes().getNamedItem(ICSSStyleDeclItem.IMPORTANT);
-		if (attr != null && ((IndexedRegion) attr).getEndOffset() > 0)
-			return ((IndexedRegion) attr).getStartOffset();
-		IndexedRegion iNode = (IndexedRegion) node;
-		if (iNode.getEndOffset() <= 0)
-			return -1;
-
-		CompoundRegion regions[] = getRegionsWithoutWhiteSpaces(node.getOwnerDocument().getModel().getStructuredDocument(), new FormatRegion(iNode.getStartOffset(), iNode.getEndOffset() - iNode.getStartOffset()), getCleanupStrategy(node));
-		for (int i = regions.length - 1; i >= 0; i--) {
-			if (regions[i].getType() == CSSRegionContexts.CSS_DECLARATION_VALUE_IMPORTANT)
-				return regions[i].getStartOffset();
-		}
-		return iNode.getEndOffset();
-	}
-
-	/**
-	 * 
-	 */
-	public int getChildInsertPos(ICSSNode node) {
-		int n = ((IndexedRegion) node).getEndOffset();
-		if (n < 0) {
-			return -1;
-		}
-		IStructuredDocumentRegion flatNode = node.getOwnerDocument().getModel().getStructuredDocument().getRegionAtCharacterOffset(n - 1);
-		if (flatNode != null && flatNode.getType() == CSSRegionContexts.CSS_DECLARATION_DELIMITER) {
-			n -= flatNode.getLength();
-		}
-		if (n > 0) {
-			String important = ((ICSSStyleDeclItem) node).getPriority();
-			if (important != null && important.length() > 0) {
-				// find before "!important" position
-				flatNode = node.getOwnerDocument().getModel().getStructuredDocument().getRegionAtCharacterOffset(n - 1);
-				RegionIterator it = new RegionIterator(flatNode, flatNode.getRegionAtCharacterOffset(n - 1));
-				while (it.hasPrev()) {
-					ITextRegion region = it.prev();
-					if (it.getStructuredDocumentRegion() != flatNode)
-						break;
-					if (region.getType() == CSSRegionContexts.CSS_DECLARATION_VALUE_IMPORTANT)
-						return it.getStructuredDocumentRegion().getStartOffset(region);
-				}
-			}
-			// skip last space
-			flatNode = node.getOwnerDocument().getModel().getStructuredDocument().getRegionAtCharacterOffset(n - 1);
-			ITextRegion region = flatNode.getRegionAtCharacterOffset(n - 1);
-			if (region != null) {
-				n -= region.getLength() - region.getTextLength();
-			}
-
-			return n;
-		}
-		return -1;
-	}
-
-	/**
-	 * 
-	 */
-	public synchronized static StyleDeclItemFormatter getInstance() {
-		if (instance == null)
-			instance = new StyleDeclItemFormatter();
-		return instance;
-	}
-
-	private String getIndentString() {
-		String indent = ""; //$NON-NLS-1$
-
-		Preferences preferences = CSSCorePlugin.getDefault().getPluginPreferences();
-		if (preferences != null) {
-			String indentChar = " "; //$NON-NLS-1$
-			String indentCharPref = preferences.getString(CSSCorePreferenceNames.INDENTATION_CHAR);
-			if (CSSCorePreferenceNames.TAB.equals(indentCharPref)) {
-				indentChar = "\t"; //$NON-NLS-1$
-			}
-			int indentationWidth = preferences.getInt(CSSCorePreferenceNames.INDENTATION_SIZE);
-
-			for (int i = 0; i < indentationWidth; i++) {
-				indent += indentChar;
-			}
-		}
-		return indent;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/formatter/StyleDeclarationFormatter.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/formatter/StyleDeclarationFormatter.java
deleted file mode 100644
index ad06635..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/formatter/StyleDeclarationFormatter.java
+++ /dev/null
@@ -1,249 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this 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.core.internal.formatter;
-
-
-
-import org.eclipse.core.runtime.Preferences;
-import org.eclipse.jface.text.IRegion;
-import org.eclipse.wst.css.core.internal.CSSCorePlugin;
-import org.eclipse.wst.css.core.internal.cleanup.CSSCleanupStrategy;
-import org.eclipse.wst.css.core.internal.parserz.CSSRegionContexts;
-import org.eclipse.wst.css.core.internal.preferences.CSSCorePreferenceNames;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSNode;
-import org.eclipse.wst.sse.core.internal.provisional.IndexedRegion;
-import org.eclipse.wst.sse.core.internal.provisional.text.IStructuredDocument;
-import org.eclipse.wst.sse.core.internal.provisional.text.IStructuredDocumentRegion;
-import org.eclipse.wst.sse.core.internal.provisional.text.ITextRegion;
-
-
-/**
- * 
- */
-public class StyleDeclarationFormatter extends DefaultCSSSourceFormatter {
-
-	private static StyleDeclarationFormatter instance;
-
-	/**
-	 * 
-	 */
-	StyleDeclarationFormatter() {
-		super();
-	}
-
-	/**
-	 * 
-	 */
-	protected void formatBefore(ICSSNode node, ICSSNode child, String toAppend, StringBuffer source, IRegion exceptFor) {
-		CSSCleanupStrategy stgy = getCleanupStrategy(node);
-
-		ICSSNode prev = (child != null) ? child.getPreviousSibling() : node.getLastChild();
-		int start = (prev != null) ? ((IndexedRegion) prev).getEndOffset() : 0;
-		int end = (child != null) ? ((IndexedRegion) child).getStartOffset() : 0;
-
-		// check no child
-		if (child == null && prev == null)
-			return;
-
-		if (start > 0 && start < end) { // format source
-			IStructuredDocument structuredDocument = node.getOwnerDocument().getModel().getStructuredDocument();
-			// get meaning regions
-			CompoundRegion[] regions = null;
-			if (exceptFor == null)
-				regions = getRegionsWithoutWhiteSpaces(structuredDocument, new FormatRegion(start, end - start), stgy);
-			else {
-				String pickupType = CSSRegionContexts.CSS_DECLARATION_DELIMITER;
-				if (prev == null || child == null)
-					pickupType = null;
-				regions = getRegions(structuredDocument, new FormatRegion(start, end - start), exceptFor, pickupType);
-			}
-			// extract source
-			for (int i = 0; i < regions.length; i++) {
-				appendSpaceBefore(node, regions[i], source);
-				source.append(decoratedRegion(regions[i], 0, stgy)); // must
-				// be
-				// comments
-			}
-		} else if (prev != null && child != null) { // generate source :
-			// between two
-			// declarations
-			source.append(";");//$NON-NLS-1$
-		} else if (prev == null) { // generate source : before the first
-			// declaration
-			org.eclipse.wst.css.core.internal.util.RegionIterator it = null;
-			if (end > 0) {
-				IStructuredDocument structuredDocument = node.getOwnerDocument().getModel().getStructuredDocument();
-				it = new org.eclipse.wst.css.core.internal.util.RegionIterator(structuredDocument, end - 1);
-			} else {
-				int pos = getChildInsertPos(node);
-				if (pos >= 0) {
-					IStructuredDocument structuredDocument = node.getOwnerDocument().getModel().getStructuredDocument();
-					it = new org.eclipse.wst.css.core.internal.util.RegionIterator(structuredDocument, pos - 1);
-				}
-			}
-			if (it != null) {
-				int limit = ((IndexedRegion) ((node.getParentNode() != null) ? node.getParentNode() : node)).getStartOffset();
-				while (it.hasPrev()) {
-					ITextRegion curReg = it.prev();
-					if (curReg.getType() == CSSRegionContexts.CSS_LBRACE || curReg.getType() == CSSRegionContexts.CSS_DECLARATION_DELIMITER)
-						break;
-					if (curReg.getType() != CSSRegionContexts.CSS_S && curReg.getType() != CSSRegionContexts.CSS_COMMENT) {
-						source.append(";");//$NON-NLS-1$
-						break;
-					}
-					if (it.getStructuredDocumentRegion().getStartOffset(curReg) <= limit)
-						break;
-				}
-			}
-		} else if (child == null) { // generate source : after the last
-			// declaration
-			org.eclipse.wst.css.core.internal.util.RegionIterator it = null;
-			if (start > 0) {
-				IStructuredDocument structuredDocument = node.getOwnerDocument().getModel().getStructuredDocument();
-				it = new org.eclipse.wst.css.core.internal.util.RegionIterator(structuredDocument, start);
-			} else {
-				int pos = getChildInsertPos(node);
-				if (pos >= 0) {
-					IStructuredDocument structuredDocument = node.getOwnerDocument().getModel().getStructuredDocument();
-					it = new org.eclipse.wst.css.core.internal.util.RegionIterator(structuredDocument, pos);
-				}
-			}
-			if (it != null) {
-				int limit = ((IndexedRegion) ((node.getParentNode() != null) ? node.getParentNode() : node)).getEndOffset();
-				while (it.hasNext()) {
-					ITextRegion curReg = it.next();
-					if (curReg.getType() == CSSRegionContexts.CSS_RBRACE || curReg.getType() == CSSRegionContexts.CSS_DECLARATION_DELIMITER)
-						break;
-					if (curReg.getType() != CSSRegionContexts.CSS_S && curReg.getType() != CSSRegionContexts.CSS_COMMENT) {
-						source.append(";");//$NON-NLS-1$
-						break;
-					}
-					if (limit <= it.getStructuredDocumentRegion().getEndOffset(curReg))
-						break;
-				}
-			}
-		}
-		if (child == null) {
-			if (((IndexedRegion) node).getEndOffset() <= 0) {
-				// get next region
-				int pos = getChildInsertPos(node);
-				CompoundRegion toAppendRegion = null;
-				if (pos >= 0) {
-					IStructuredDocument structuredDocument = node.getOwnerDocument().getModel().getStructuredDocument();
-					IStructuredDocumentRegion flatNode = structuredDocument.getRegionAtCharacterOffset(pos);
-					toAppendRegion = new CompoundRegion(flatNode, flatNode.getRegionAtCharacterOffset(pos));
-				}
-				appendDelimBefore(node.getParentNode(), toAppendRegion, source);
-			}
-		} else if ((prev != null || ((IndexedRegion) node).getEndOffset() <= 0)) {
-			Preferences preferences = CSSCorePlugin.getDefault().getPluginPreferences();
-
-			if (preferences.getBoolean(CSSCorePreferenceNames.WRAPPING_ONE_PER_LINE) && (node.getOwnerDocument() != node || !preferences.getBoolean(CSSCorePreferenceNames.WRAPPING_PROHIBIT_WRAP_ON_ATTR)))
-				appendDelimBefore(node, null, source);
-			else if (prev != null || node.getOwnerDocument() != node)
-				appendSpaceBefore(node, toAppend, source);
-		}
-	}
-
-	/**
-	 * 
-	 */
-	protected void formatBefore(ICSSNode node, ICSSNode child, IRegion region, String toAppend, StringBuffer source) {
-		CSSCleanupStrategy stgy = getCleanupStrategy(node);
-
-		IStructuredDocument structuredDocument = node.getOwnerDocument().getModel().getStructuredDocument();
-		CompoundRegion[] regions = getRegionsWithoutWhiteSpaces(structuredDocument, region, stgy);
-		CompoundRegion[] outside = getOutsideRegions(structuredDocument, region);
-
-		for (int i = 0; i < regions.length; i++) {
-			if (i != 0 || needS(outside[0]))
-				appendSpaceBefore(node, regions[i], source);
-			source.append(decoratedRegion(regions[i], 0, stgy)); // must be
-			// comments
-		}
-		Preferences preferences = CSSCorePlugin.getDefault().getPluginPreferences();
-		if (needS(outside[1])) {
-			if (((IndexedRegion) child).getStartOffset() == region.getOffset() + region.getLength() && preferences.getBoolean(CSSCorePreferenceNames.WRAPPING_ONE_PER_LINE) && (node.getOwnerDocument() != node || !preferences.getBoolean(CSSCorePreferenceNames.WRAPPING_PROHIBIT_WRAP_ON_ATTR))) {
-				appendDelimBefore(node, null, source);
-			} else
-				appendSpaceBefore(node, toAppend, source);
-		}
-	}
-
-	/**
-	 * Insert the method's description here.
-	 */
-	public int getChildInsertPos(ICSSNode node) {
-		if (node == null)
-			return -1;
-		int pos = super.getChildInsertPos(node);
-		if (pos < 0) {
-			CSSSourceGenerator formatter = getParentFormatter(node);
-			return (formatter != null) ? formatter.getChildInsertPos(node.getParentNode()) : -1;
-		}
-		return pos;
-	}
-
-	/**
-	 * 
-	 */
-	public synchronized static StyleDeclarationFormatter getInstance() {
-		if (instance == null)
-			instance = new StyleDeclarationFormatter();
-		return instance;
-	}
-
-	/**
-	 * 
-	 * @return int
-	 * @param node
-	 *            org.eclipse.wst.css.core.model.interfaces.ICSSNode
-	 * @param insertPos
-	 *            int
-	 */
-	public int getLengthToReformatAfter(ICSSNode node, int insertPos) {
-		if (node == null)
-			return 0;
-		IndexedRegion nnode = (IndexedRegion) node;
-		if (insertPos < 0 || !nnode.contains(insertPos)) {
-			if (node.getParentNode() != null && nnode.getEndOffset() <= 0) {
-				CSSSourceGenerator pntFormatter = getParentFormatter(node);
-				if (pntFormatter != null)
-					return pntFormatter.getLengthToReformatAfter(node.getParentNode(), insertPos);
-			}
-			return 0;
-		}
-		return super.getLengthToReformatAfter(node, insertPos);
-	}
-
-	/**
-	 * 
-	 * @return int
-	 * @param node
-	 *            org.eclipse.wst.css.core.model.interfaces.ICSSNode
-	 * @param insertPos
-	 *            int
-	 */
-	public int getLengthToReformatBefore(ICSSNode node, int insertPos) {
-		if (node == null)
-			return 0;
-		IndexedRegion nnode = (IndexedRegion) node;
-		if (insertPos <= 0 || !nnode.contains(insertPos - 1)) {
-			if (node.getParentNode() != null && nnode.getEndOffset() <= 0) {
-				CSSSourceGenerator pntFormatter = getParentFormatter(node);
-				if (pntFormatter != null)
-					return pntFormatter.getLengthToReformatBefore(node.getParentNode(), insertPos);
-			}
-			return 0;
-		}
-		return super.getLengthToReformatBefore(node, insertPos);
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/formatter/StyleRuleFormatter.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/formatter/StyleRuleFormatter.java
deleted file mode 100644
index ce9356d..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/formatter/StyleRuleFormatter.java
+++ /dev/null
@@ -1,166 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this 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.core.internal.formatter;
-
-
-
-import org.eclipse.jface.text.IRegion;
-import org.eclipse.wst.css.core.internal.cleanup.CSSCleanupStrategy;
-import org.eclipse.wst.css.core.internal.parserz.CSSRegionContexts;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSAttr;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSNode;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSStyleRule;
-import org.eclipse.wst.css.core.internal.util.RegionIterator;
-import org.eclipse.wst.sse.core.internal.provisional.IndexedRegion;
-import org.eclipse.wst.sse.core.internal.provisional.text.IStructuredDocument;
-import org.eclipse.wst.sse.core.internal.provisional.text.IStructuredDocumentRegion;
-import org.eclipse.wst.sse.core.internal.provisional.text.ITextRegion;
-
-
-/**
- * 
- */
-public class StyleRuleFormatter extends DeclContainerFormatter {
-
-	private static StyleRuleFormatter instance;
-
-	/**
-	 * 
-	 */
-	StyleRuleFormatter() {
-		super();
-	}
-
-	/**
-	 * 
-	 */
-	public StringBuffer formatAttrChanged(ICSSNode node, ICSSAttr attr, boolean insert, AttrChangeContext context) {
-		StringBuffer buf = new StringBuffer();
-		if (node == null || attr == null)
-			return buf;
-
-		if (!ICSSStyleRule.SELECTOR.equalsIgnoreCase(attr.getName()))
-			return buf;
-
-		// get region to replace
-		if (context != null && ((IndexedRegion) node).getEndOffset() > 0) {
-			if (attr != null && ((IndexedRegion) attr).getEndOffset() > 0) {
-				IStructuredDocumentRegion flatNode = node.getOwnerDocument().getModel().getStructuredDocument().getRegionAtCharacterOffset(((IndexedRegion) attr).getEndOffset() - 1);
-				ITextRegion region = flatNode.getRegionAtCharacterOffset(((IndexedRegion) attr).getEndOffset() - 1);
-				RegionIterator it = new RegionIterator(flatNode, region);
-				it.next();
-				if (it.hasNext()) {
-					ITextRegion next = it.next();
-					if (next.getType() == CSSRegionContexts.CSS_S)
-						context.end = it.getStructuredDocumentRegion().getEndOffset(next);
-					else
-						context.end = it.getStructuredDocumentRegion().getEndOffset(region);
-				}
-				else
-					context.end = it.getStructuredDocumentRegion().getEndOffset(region);
-				context.start = it.getStructuredDocumentRegion().getStartOffset(region);
-			}
-			else {
-				IStructuredDocumentRegion flatNode = node.getOwnerDocument().getModel().getStructuredDocument().getRegionAtCharacterOffset(((IndexedRegion) node).getStartOffset());
-				ITextRegion region = flatNode.getRegionAtCharacterOffset(((IndexedRegion) node).getStartOffset());
-				if (region.getType() == CSSRegionContexts.CSS_S) {
-					context.start = flatNode.getStartOffset(region);
-					context.end = flatNode.getEndOffset(region);
-				}
-				else {
-					context.start = flatNode.getEndOffset();
-					context.end = flatNode.getEndOffset();
-				}
-			}
-		}
-		// generate text
-		if (insert) {
-			buf.append(attr.getValue());
-			appendSpaceBefore(node, "", buf);//$NON-NLS-1$
-		}
-		return buf;
-	}
-
-	/**
-	 * 
-	 */
-	protected void formatPre(ICSSNode node, StringBuffer source) {
-		CSSCleanupStrategy stgy = getCleanupStrategy(node);
-
-		int start = ((IndexedRegion) node).getStartOffset();
-		int end = (node.getFirstChild() != null && ((IndexedRegion) node.getFirstChild()).getEndOffset() > 0) ? ((IndexedRegion) node.getFirstChild()).getStartOffset() : getChildInsertPos(node);
-		if (end > 0) { // format source
-			IStructuredDocument structuredDocument = node.getOwnerDocument().getModel().getStructuredDocument();
-			CompoundRegion[] regions = getRegionsWithoutWhiteSpaces(structuredDocument, new FormatRegion(start, end - start), stgy);
-			for (int i = 0; i < regions.length; i++) {
-				if (i != 0)
-					appendSpaceBetween(node, regions[i - 1], regions[i], source);
-				source.append(decoratedSelectorRegion(regions[i], (i != 0) ? regions[i - 1] : null, stgy));
-			}
-		}
-		else { // generate source
-			String str = ((ICSSStyleRule) node).getSelectorText();
-			// appendSpaceBefore(node,str,source);
-			source.append(str);
-			appendSpaceBefore(node, "{", source);//$NON-NLS-1$
-			source.append("{");//$NON-NLS-1$
-		}
-		appendDelimBefore(node, null, source);
-	}
-
-	/**
-	 * 
-	 */
-	protected void formatPre(ICSSNode node, IRegion region, StringBuffer source) {
-		CSSCleanupStrategy stgy = getCleanupStrategy(node);
-
-		IStructuredDocument structuredDocument = node.getOwnerDocument().getModel().getStructuredDocument();
-		CompoundRegion[] regions = getRegionsWithoutWhiteSpaces(structuredDocument, region, stgy);
-		CompoundRegion[] outside = getOutsideRegions(structuredDocument, region);
-		for (int i = 0; i < regions.length; i++) {
-			if (i != 0 || needS(outside[0]))
-				appendSpaceBetween(node, (i == 0) ? outside[0] : regions[i - 1], regions[i], source);
-			source.append(decoratedSelectorRegion(regions[i], (i != 0) ? regions[i - 1] : null, stgy));
-		}
-		if (needS(outside[1])) {
-			if (isIncludesPreEnd(node, region))
-				appendDelimBefore(node, null, source);
-			else
-				appendSpaceBetween(node, regions[regions.length - 1], outside[1], source);
-		}
-	}
-
-	/**
-	 * 
-	 */
-	public int getAttrInsertPos(ICSSNode node, String attrName) {
-		if (node == null || attrName == null || attrName.length() == 0)
-			return -1;
-
-		if (!ICSSStyleRule.SELECTOR.equalsIgnoreCase(attrName))
-			return -1;
-
-		ICSSAttr attr = (ICSSAttr) node.getAttributes().getNamedItem(ICSSStyleRule.SELECTOR);
-		if (attr != null && ((IndexedRegion) attr).getEndOffset() > 0)
-			return ((IndexedRegion) attr).getStartOffset();
-		else
-			return ((IndexedRegion) node).getStartOffset();
-	}
-
-	/**
-	 * 
-	 */
-	public synchronized static StyleRuleFormatter getInstance() {
-		if (instance == null)
-			instance = new StyleRuleFormatter();
-		return instance;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/formatter/StyleSheetFormatter.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/formatter/StyleSheetFormatter.java
deleted file mode 100644
index 5bc1984..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/formatter/StyleSheetFormatter.java
+++ /dev/null
@@ -1,260 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this 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.core.internal.formatter;
-
-
-
-import org.eclipse.jface.text.IRegion;
-import org.eclipse.wst.css.core.internal.cleanup.CSSCleanupStrategy;
-import org.eclipse.wst.css.core.internal.parserz.CSSRegionContexts;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSModel;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSNode;
-import org.eclipse.wst.css.core.internal.util.RegionIterator;
-import org.eclipse.wst.sse.core.internal.provisional.IndexedRegion;
-import org.eclipse.wst.sse.core.internal.provisional.text.IStructuredDocument;
-import org.eclipse.wst.sse.core.internal.provisional.text.IStructuredDocumentRegion;
-import org.eclipse.wst.sse.core.internal.provisional.text.ITextRegion;
-
-
-/**
- * 
- */
-public class StyleSheetFormatter extends AbstractCSSSourceFormatter {
-
-	private static StyleSheetFormatter instance;
-
-	/**
-	 * 
-	 */
-	StyleSheetFormatter() {
-		super();
-	}
-
-	/**
-	 * 
-	 */
-	protected void formatBefore(ICSSNode node, ICSSNode child, String toAppend, StringBuffer source, IRegion exceptFor) {
-		String delim = getLineDelimiter(node);
-		ICSSNode prev = (child != null) ? child.getPreviousSibling() : node.getLastChild();
-		if (prev == null && child == null)
-			return;
-		int start = (prev != null) ? ((IndexedRegion) prev).getEndOffset() : 0;
-		int end = (child != null) ? ((IndexedRegion) child).getStartOffset() : 0;
-		if (start > 0 && start < end) {
-			CSSCleanupStrategy stgy = getCleanupStrategy(node);
-
-			IStructuredDocument structuredDocument = node.getOwnerDocument().getModel().getStructuredDocument();
-			// get meaning regions
-			CompoundRegion[] regions = null;
-			if (exceptFor == null)
-				regions = getRegionsWithoutWhiteSpaces(structuredDocument, new FormatRegion(start, end - start), stgy);
-			else {
-				String pickupType = CSSRegionContexts.CSS_DELIMITER;
-				if (prev == null)
-					pickupType = null;
-				regions = getRegions(structuredDocument, new FormatRegion(start, end - start), exceptFor, pickupType);
-			}
-			// generate source
-			if (prev != null) {
-				appendDelimBefore(node, (regions.length > 0) ? regions[0] : null, source);
-			}
-			for (int i = 0; i < regions.length; i++) {
-				appendDelimBefore(node, regions[i], source);
-				source.append(decoratedRegion(regions[i], 0, stgy)); // must
-																		// be
-																		// comments
-																		// or
-																		// semi_colon
-				if (regions[i].getType() == CSSRegionContexts.CSS_DELIMITER) {
-					// append delim after
-					appendDelimBefore(node, null, source);
-				}
-			}
-			if (prev != null)
-				appendDelimBefore(node, null, source);
-		}
-		else if (prev != null && child != null) { // source generation :
-													// between two rules
-			source.append(delim);
-			source.append(delim);
-		}
-		else if (((IndexedRegion) node).getEndOffset() > 0) {
-			if (prev == null) { // source formatting : before the first rule
-				ICSSNode next = child.getNextSibling();
-				int pos = getChildInsertPos(node);
-				if (next != null && ((IndexedRegion) next).getEndOffset() > 0)
-					pos = ((IndexedRegion) next).getStartOffset();
-				if (pos != 0) {
-					IStructuredDocument structuredDocument = node.getOwnerDocument().getModel().getStructuredDocument();
-					CompoundRegion[] prevRegions = getRegions(structuredDocument, new FormatRegion(0, pos), null, null);
-					if (prevRegions != null && prevRegions.length > 0)
-						appendDelimBefore(node, null, source);
-				}
-			}
-			else if (child == null) { // source formatting : after the last
-										// rule
-				if (start > 0 && start <= ((IndexedRegion) node).getEndOffset()) {
-					appendDelimBefore(node, null, source);
-				}
-				else if (start <= 0) {
-					int pos = getChildInsertPos(node);
-					if (pos < ((IndexedRegion) node).getEndOffset()) {
-						appendDelimBefore(node, null, source);
-					}
-				}
-			}
-		}
-	}
-
-	/**
-	 * 
-	 */
-	protected void formatBefore(ICSSNode node, ICSSNode child, IRegion region, String toAppend, StringBuffer source) {
-		CSSCleanupStrategy stgy = getCleanupStrategy(node);
-
-		IStructuredDocument structuredDocument = node.getOwnerDocument().getModel().getStructuredDocument();
-		CompoundRegion[] regions = getRegionsWithoutWhiteSpaces(structuredDocument, region, stgy);
-		CompoundRegion[] outside = getOutsideRegions(structuredDocument, region);
-		for (int i = 0; i < regions.length; i++) {
-			if (i != 0 || needS(outside[0]))
-				appendDelimBefore(node, regions[i], source);
-			source.append(decoratedRegion(regions[i], 0, stgy)); // must be
-																	// comments
-		}
-		if (needS(outside[1])) {
-			if (((IndexedRegion) child).getStartOffset() == region.getOffset() + region.getLength())
-				appendDelimBefore(node, null, source);
-		}
-	}
-
-	/**
-	 * 
-	 */
-	protected void formatPost(ICSSNode node, StringBuffer source) {
-		int end = ((IndexedRegion) node).getEndOffset();
-		int start = (node.getLastChild() != null && ((IndexedRegion) node.getLastChild()).getEndOffset() > 0) ? ((IndexedRegion) node.getLastChild()).getEndOffset() : getChildInsertPos(node);
-		if (end > 0 && start < end) {
-			CSSCleanupStrategy stgy = getCleanupStrategy(node);
-
-			IStructuredDocument structuredDocument = node.getOwnerDocument().getModel().getStructuredDocument();
-			CompoundRegion[] regions = getRegionsWithoutWhiteSpaces(structuredDocument, new FormatRegion(start, end - start), stgy);
-			for (int i = 0; i < regions.length; i++) {
-				appendDelimBefore(node, regions[i], source);
-				source.append(decoratedRegion(regions[i], 0, stgy));
-			}
-			if ((regions != null && regions.length > 0 && regions[regions.length - 1].getType() == CSSRegionContexts.CSS_CDC) || node.getOwnerDocument().getModel().getStyleSheetType() == ICSSModel.EMBEDDED)
-				appendDelimBefore(node, null, source);
-		}
-		else { // source generation
-			if (node.getOwnerDocument().getModel() != null && node.getOwnerDocument().getModel().getStyleSheetType() == ICSSModel.EMBEDDED)
-				appendDelimBefore(node, null, source);
-			return; // nothing
-		}
-	}
-
-	/**
-	 * 
-	 */
-	protected void formatPost(ICSSNode node, IRegion region, StringBuffer source) {
-		CSSCleanupStrategy stgy = getCleanupStrategy(node);
-
-		IStructuredDocument structuredDocument = node.getOwnerDocument().getModel().getStructuredDocument();
-		CompoundRegion[] regions = getRegionsWithoutWhiteSpaces(structuredDocument, region, stgy);
-		CompoundRegion[] outside = getOutsideRegions(structuredDocument, region);
-		for (int i = 0; i < regions.length; i++) {
-			if (i != 0 || needS(outside[0]))
-				appendDelimBefore(node, regions[i], source);
-			source.append(decoratedRegion(regions[i], 0, stgy));
-		}
-	}
-
-	/**
-	 * 
-	 */
-	protected void formatPre(org.eclipse.wst.css.core.internal.provisional.document.ICSSNode node, java.lang.StringBuffer source) {
-		int start = ((IndexedRegion) node).getStartOffset();
-		int end = (node.getFirstChild() != null && ((IndexedRegion) node.getFirstChild()).getEndOffset() > 0) ? ((IndexedRegion) node.getFirstChild()).getStartOffset() : getChildInsertPos(node);
-		if (end > 0) {
-			CSSCleanupStrategy stgy = getCleanupStrategy(node);
-
-			IStructuredDocument structuredDocument = node.getOwnerDocument().getModel().getStructuredDocument();
-			CompoundRegion[] regions = getRegionsWithoutWhiteSpaces(structuredDocument, new FormatRegion(start, end - start), stgy);
-			for (int i = 0; i < regions.length; i++) {
-				if (i != 0 || regions[i].getType() == CSSRegionContexts.CSS_CDO || node.getOwnerDocument().getModel().getStyleSheetType() == ICSSModel.EMBEDDED)
-					appendDelimBefore(node, regions[i], source);
-				source.append(decoratedRegion(regions[i], 0, stgy));
-			}
-			if (node.getLastChild() != null && (source.length() > 0 || node.getOwnerDocument().getModel().getStyleSheetType() == ICSSModel.EMBEDDED)) {
-				appendDelimBefore(node, null, source);
-			}
-		}
-		else if (node.getOwnerDocument().getModel() != null && node.getOwnerDocument().getModel().getStyleSheetType() == ICSSModel.EMBEDDED) {
-			appendDelimBefore(node, null, source);
-			// source.append("<!--");
-			// appendDelimBefore(node,null, source);
-		}
-		else
-			return; // nothing
-	}
-
-	/**
-	 * 
-	 */
-	protected void formatPre(ICSSNode node, IRegion region, java.lang.StringBuffer source) {
-		CSSCleanupStrategy stgy = getCleanupStrategy(node);
-
-		IStructuredDocument structuredDocument = node.getOwnerDocument().getModel().getStructuredDocument();
-		CompoundRegion[] regions = getRegionsWithoutWhiteSpaces(structuredDocument, region, stgy);
-		CompoundRegion[] outside = getOutsideRegions(structuredDocument, region);
-		for (int i = 0; i < regions.length; i++) {
-			if (i != 0 || needS(outside[0]) || regions[i].getType() == CSSRegionContexts.CSS_CDO || node.getOwnerDocument().getModel().getStyleSheetType() == ICSSModel.EMBEDDED)
-				appendDelimBefore(node, regions[i], source);
-			source.append(decoratedRegion(regions[i], 0, stgy));
-		}
-		if (needS(outside[1])) {
-			if (isIncludesPreEnd(node, region)) {
-				if (source.length() > 0 || node.getOwnerDocument().getModel().getStyleSheetType() == ICSSModel.EMBEDDED) {
-					String delim = getLineDelimiter(node);
-					source.append(delim);
-				}
-			}
-		}
-	}
-
-	/**
-	 * 
-	 */
-	public int getChildInsertPos(ICSSNode node) {
-		int n = ((IndexedRegion) node).getEndOffset();
-		if (n > 0) {
-			IStructuredDocument structuredDocument = node.getOwnerDocument().getModel().getStructuredDocument();
-			IStructuredDocumentRegion flatNode = structuredDocument.getRegionAtCharacterOffset(n - 1);
-			ITextRegion region = flatNode.getRegionAtCharacterOffset(n - 1);
-			RegionIterator it = new RegionIterator(flatNode, region);
-			while (it.hasPrev()) {
-				ITextRegion reg = it.prev();
-				if (reg.getType() == CSSRegionContexts.CSS_CDC)
-					return it.getStructuredDocumentRegion().getStartOffset(reg);
-			}
-			return n;
-		}
-		return -1;
-	}
-
-	/**
-	 * 
-	 */
-	public synchronized static StyleSheetFormatter getInstance() {
-		if (instance == null)
-			instance = new StyleSheetFormatter();
-		return instance;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/formatter/UnknownRuleFormatter.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/formatter/UnknownRuleFormatter.java
deleted file mode 100644
index 406a408..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/formatter/UnknownRuleFormatter.java
+++ /dev/null
@@ -1,86 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this 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.core.internal.formatter;
-
-
-
-import org.eclipse.jface.text.IRegion;
-import org.eclipse.wst.css.core.internal.cleanup.CSSCleanupStrategy;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSNode;
-import org.eclipse.wst.sse.core.internal.provisional.IndexedRegion;
-import org.eclipse.wst.sse.core.internal.provisional.text.IStructuredDocument;
-import org.w3c.dom.css.CSSUnknownRule;
-
-
-/**
- * 
- */
-public class UnknownRuleFormatter extends DefaultCSSSourceFormatter {
-
-	private static UnknownRuleFormatter instance;
-
-	/**
-	 * 
-	 */
-	UnknownRuleFormatter() {
-		super();
-	}
-
-	/**
-	 * 
-	 */
-	protected void formatPre(ICSSNode node, StringBuffer source) {
-		CSSCleanupStrategy stgy = getCleanupStrategy(node);
-
-		int start = ((IndexedRegion) node).getStartOffset();
-		int end = ((IndexedRegion) node).getEndOffset();
-		if (end > 0) { // format source
-			IStructuredDocument structuredDocument = node.getOwnerDocument().getModel().getStructuredDocument();
-			CompoundRegion[] regions = getRegionsWithoutWhiteSpaces(structuredDocument, new FormatRegion(start, end - start), stgy);
-			for (int i = 0; i < regions.length; i++) {
-				if (i != 0)
-					appendSpaceBefore(node, regions[i], source);
-				source.append(decoratedPropValueRegion(regions[i], stgy));
-			}
-		}
-		else { // generate source
-			CSSUnknownRule rule = (CSSUnknownRule) node;
-			source.append(rule.getCssText());
-		}
-	}
-
-	/**
-	 * 
-	 */
-	protected void formatPre(ICSSNode node, IRegion region, StringBuffer source) {
-		CSSCleanupStrategy stgy = getCleanupStrategy(node);
-
-		IStructuredDocument structuredDocument = node.getOwnerDocument().getModel().getStructuredDocument();
-		CompoundRegion[] regions = getRegionsWithoutWhiteSpaces(structuredDocument, region, stgy);
-		CompoundRegion[] outside = getOutsideRegions(structuredDocument, region);
-		for (int i = 0; i < regions.length; i++) {
-			if (i != 0 || needS(outside[0]))
-				appendSpaceBefore(node, regions[i], source);
-			source.append(decoratedPropValueRegion(regions[i], stgy));
-		}
-		if (needS(outside[1]) && !isIncludesPreEnd(node, region))
-			appendSpaceBefore(node, outside[1], source);
-	}
-
-	/**
-	 * 
-	 */
-	public synchronized static UnknownRuleFormatter getInstance() {
-		if (instance == null)
-			instance = new UnknownRuleFormatter();
-		return instance;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodel/CSSMMCategory.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodel/CSSMMCategory.java
deleted file mode 100644
index 6bcd400..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodel/CSSMMCategory.java
+++ /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
- *******************************************************************************/
-package org.eclipse.wst.css.core.internal.metamodel;
-
-public interface CSSMMCategory extends CSSMMNode {
-
-	String getCaption();
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodel/CSSMMCharsetRule.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodel/CSSMMCharsetRule.java
deleted file mode 100644
index d97fcdc..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodel/CSSMMCharsetRule.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.css.core.internal.metamodel;
-
-
-
-public interface CSSMMCharsetRule extends CSSMMNode {
-
-
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodel/CSSMMContainer.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodel/CSSMMContainer.java
deleted file mode 100644
index 0b83713..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodel/CSSMMContainer.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.css.core.internal.metamodel;
-
-
-
-public interface CSSMMContainer extends CSSMMNode {
-
-
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodel/CSSMMDescriptor.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodel/CSSMMDescriptor.java
deleted file mode 100644
index 14ba720..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodel/CSSMMDescriptor.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.wst.css.core.internal.metamodel;
-
-
-
-import java.util.Iterator;
-
-public interface CSSMMDescriptor extends CSSMMNode {
-
-	Iterator getValues();
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodel/CSSMMFontFaceRule.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodel/CSSMMFontFaceRule.java
deleted file mode 100644
index fe45dc2..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodel/CSSMMFontFaceRule.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.css.core.internal.metamodel;
-
-
-
-public interface CSSMMFontFaceRule extends CSSMMNode {
-
-
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodel/CSSMMFunction.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodel/CSSMMFunction.java
deleted file mode 100644
index 22df25d..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodel/CSSMMFunction.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.css.core.internal.metamodel;
-
-
-
-public interface CSSMMFunction extends CSSMMNode {
-
-	String getFunctionString();
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodel/CSSMMImportRule.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodel/CSSMMImportRule.java
deleted file mode 100644
index 77fd164..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodel/CSSMMImportRule.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.css.core.internal.metamodel;
-
-
-
-public interface CSSMMImportRule extends CSSMMNode {
-
-
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodel/CSSMMKeyword.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodel/CSSMMKeyword.java
deleted file mode 100644
index 5b45b32..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodel/CSSMMKeyword.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.css.core.internal.metamodel;
-
-
-
-public interface CSSMMKeyword extends CSSMMNode {
-
-	String getKeywordString();
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodel/CSSMMMediaRule.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodel/CSSMMMediaRule.java
deleted file mode 100644
index b80aa21..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodel/CSSMMMediaRule.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.css.core.internal.metamodel;
-
-
-
-public interface CSSMMMediaRule extends CSSMMNode {
-
-
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodel/CSSMMNode.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodel/CSSMMNode.java
deleted file mode 100644
index d9ae2ea..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodel/CSSMMNode.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.core.internal.metamodel;
-
-
-
-import java.util.Iterator;
-
-public interface CSSMMNode {
-	String getType();
-
-	String getName();
-
-	String getDescription();
-
-	String getAttribute(String name);
-
-	Iterator getChildNodes();
-
-	Iterator getDescendants();
-
-
-	static final String _PREFIX = "CSSMM."; //$NON-NLS-1$
-	static final String TYPE_KEYWORD = _PREFIX + "Keyword"; //$NON-NLS-1$
-	static final String TYPE_UNIT = _PREFIX + "Unit"; //$NON-NLS-1$
-	static final String TYPE_FUNCTION = _PREFIX + "Function"; //$NON-NLS-1$
-	static final String TYPE_STRING = _PREFIX + "String"; //$NON-NLS-1$
-	static final String TYPE_STYLE_SHEET = _PREFIX + "StyleSheet"; //$NON-NLS-1$
-	static final String TYPE_PROPERTY = _PREFIX + "Property"; //$NON-NLS-1$
-	static final String TYPE_DESCRIPTOR = _PREFIX + "Descriptor"; //$NON-NLS-1$
-	static final String TYPE_CONTAINER = _PREFIX + "Container"; //$NON-NLS-1$
-	static final String TYPE_NUMBER = _PREFIX + "Number"; //$NON-NLS-1$
-	static final String TYPE_SEPARATOR = _PREFIX + "Separator"; //$NON-NLS-1$
-	static final String TYPE_CHARSET_RULE = _PREFIX + "CharsetRule"; //$NON-NLS-1$
-	static final String TYPE_IMPORT_RULE = _PREFIX + "ImportRule"; //$NON-NLS-1$
-	static final String TYPE_STYLE_RULE = _PREFIX + "StyleRule"; //$NON-NLS-1$
-	static final String TYPE_MEDIA_RULE = _PREFIX + "MediaRule"; //$NON-NLS-1$
-	static final String TYPE_PAGE_RULE = _PREFIX + "PageRule"; //$NON-NLS-1$
-	static final String TYPE_FONT_FACE_RULE = _PREFIX + "FontFaceRule"; //$NON-NLS-1$
-	static final String TYPE_CATEGORY = _PREFIX + "Category"; //$NON-NLS-1$
-	static final String TYPE_META_MODEL = _PREFIX + "MetaModel"; //$NON-NLS-1$
-	static final String TYPE_SELECTOR = _PREFIX + "Selector"; //$NON-NLS-1$	
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodel/CSSMMNumber.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodel/CSSMMNumber.java
deleted file mode 100644
index 2ea1b27..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodel/CSSMMNumber.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.css.core.internal.metamodel;
-
-
-
-public interface CSSMMNumber extends CSSMMNode {
-
-
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodel/CSSMMPageRule.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodel/CSSMMPageRule.java
deleted file mode 100644
index 04f99e9..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodel/CSSMMPageRule.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.css.core.internal.metamodel;
-
-
-
-public interface CSSMMPageRule extends CSSMMNode {
-
-
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodel/CSSMMProperty.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodel/CSSMMProperty.java
deleted file mode 100644
index ec41462..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodel/CSSMMProperty.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.css.core.internal.metamodel;
-
-
-
-import java.util.Iterator;
-
-public interface CSSMMProperty extends CSSMMNode {
-
-	String getCategoryName();
-
-	Iterator getValues();
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodel/CSSMMSelector.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodel/CSSMMSelector.java
deleted file mode 100644
index d17ac19..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodel/CSSMMSelector.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.css.core.internal.metamodel;
-
-public interface CSSMMSelector extends CSSMMNode {
-	String getSelectorType();
-
-	String getSelectorString();
-
-
-	static final String TYPE_EXPRESSION = "Expression"; //$NON-NLS-1$
-	static final String TYPE_PSEUDO_CLASS = "PseudoClass"; //$NON-NLS-1$
-	static final String TYPE_PSEUDO_ELEMENT = "PseudoElement"; //$NON-NLS-1$
-
-	// embedded expression type
-	static final String EXPRESSION_DESCENDANT = "descendant"; //$NON-NLS-1$
-	static final String EXPRESSION_CHILD = "child"; //$NON-NLS-1$
-	static final String EXPRESSION_ADJACENT = "adjacent"; //$NON-NLS-1$
-	static final String EXPRESSION_UNIVERSAL = "universal"; //$NON-NLS-1$
-	static final String EXPRESSION_ATTRIBUTE = "attribute"; //$NON-NLS-1$
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodel/CSSMMString.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodel/CSSMMString.java
deleted file mode 100644
index c9ddf8d..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodel/CSSMMString.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.wst.css.core.internal.metamodel;
-
-
-
-public interface CSSMMString extends CSSMMNode {
-
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodel/CSSMMStyleRule.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodel/CSSMMStyleRule.java
deleted file mode 100644
index 80414fa..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodel/CSSMMStyleRule.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.css.core.internal.metamodel;
-
-
-
-public interface CSSMMStyleRule extends CSSMMNode {
-
-
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodel/CSSMMStyleSheet.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodel/CSSMMStyleSheet.java
deleted file mode 100644
index 40dc67b..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodel/CSSMMStyleSheet.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.css.core.internal.metamodel;
-
-
-
-public interface CSSMMStyleSheet extends CSSMMNode {
-
-
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodel/CSSMMUnit.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodel/CSSMMUnit.java
deleted file mode 100644
index 52910c6..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodel/CSSMMUnit.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.css.core.internal.metamodel;
-
-
-
-public interface CSSMMUnit extends CSSMMNode {
-
-	String getUnitString();
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodel/CSSMetaModel.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodel/CSSMetaModel.java
deleted file mode 100644
index f80c260..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodel/CSSMetaModel.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.wst.css.core.internal.metamodel;
-
-
-
-import java.util.Iterator;
-
-public interface CSSMetaModel extends CSSMMNode {
-
-	// public interface CSSMetaModel {
-	CSSMMStyleSheet getStyleSheet();
-
-	/*
-	 * Shortcut to access property node
-	 */
-	// Iterator getProperties();
-	// Iterator getDescriptors();
-	// CSSMMProperty getProperty(String propertyName);
-	/*
-	 * access to category information
-	 */
-	Iterator getCategories();
-
-	/*
-	 * Utilities
-	 */
-	// Iterator collectNodesByType(String type);
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodel/CSSProfile.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodel/CSSProfile.java
deleted file mode 100644
index 1d5fb89..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodel/CSSProfile.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.core.internal.metamodel;
-
-
-
-import java.net.URL;
-
-
-public interface CSSProfile {
-
-	String getProfileID();
-
-	String getProfileName();
-
-	URL getProfileURL();
-
-	CSSMetaModel getMetaModel();
-
-	boolean isDefault();
-
-	String getOwnerPluginID();
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodel/CSSProfileRegistry.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodel/CSSProfileRegistry.java
deleted file mode 100644
index 122b4cb..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodel/CSSProfileRegistry.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.wst.css.core.internal.metamodel;
-
-
-
-import java.util.Collections;
-import java.util.HashMap;
-import java.util.Iterator;
-import java.util.Map;
-
-import org.eclipse.wst.css.core.internal.metamodelimpl.RegistryReader;
-
-
-
-public class CSSProfileRegistry {
-	public synchronized static CSSProfileRegistry getInstance() {
-		if (fInstance == null) {
-			fInstance = new CSSProfileRegistry();
-		}
-		return fInstance;
-	}
-
-	public Iterator getProfiles() {
-		return Collections.unmodifiableCollection(fProfiles.values()).iterator();
-	}
-
-	public CSSProfile getProfile(String profileID) {
-		return (CSSProfile) fProfiles.get(profileID);
-	}
-
-	public CSSProfile getDefaultProfile() {
-		Iterator i = getProfiles();
-		while (i.hasNext()) {
-			CSSProfile profile = (CSSProfile) i.next();
-			if (profile.isDefault()) {
-				return profile;
-			}
-		}
-		return null;
-	}
-
-	/**
-	 * Constructor for CSSProfileRegistry.
-	 */
-	private CSSProfileRegistry() {
-		super();
-		fProfiles = new HashMap();
-		Iterator i = new RegistryReader().enumProfiles();
-		while (i.hasNext()) {
-			Object profile = i.next();
-			if (profile instanceof CSSProfile) {
-				fProfiles.put(((CSSProfile) profile).getProfileID(), profile);
-			}
-		}
-	}
-
-
-	private static CSSProfileRegistry fInstance = null;
-	private Map fProfiles = null;
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodel/util/CSSFunctionID.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodel/util/CSSFunctionID.java
deleted file mode 100644
index 8fd67b3..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodel/util/CSSFunctionID.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.css.core.internal.metamodel.util;
-
-public interface CSSFunctionID {
-
-	final static String F_ATTR = "attr"; //$NON-NLS-1$
-	final static String F_COUNTER = "counter"; //$NON-NLS-1$
-	final static String F_RGB = "rgb"; //$NON-NLS-1$
-	final static String F_RECT = "rect"; //$NON-NLS-1$
-	final static String F_URI = "uri"; //$NON-NLS-1$
-	final static String F_FORMAT = "format"; //$NON-NLS-1$
-	final static String F_LOCAL = "local"; //$NON-NLS-1$
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodel/util/CSSKeywordID.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodel/util/CSSKeywordID.java
deleted file mode 100644
index 856b36d..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodel/util/CSSKeywordID.java
+++ /dev/null
@@ -1,261 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this 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.core.internal.metamodel.util;
-
-public interface CSSKeywordID {
-
-	final static String K_100 = "100"; //$NON-NLS-1$
-	final static String K_200 = "200"; //$NON-NLS-1$
-	final static String K_300 = "300"; //$NON-NLS-1$
-	final static String K_400 = "400"; //$NON-NLS-1$
-	final static String K_500 = "500"; //$NON-NLS-1$
-	final static String K_600 = "600"; //$NON-NLS-1$
-	final static String K_700 = "700"; //$NON-NLS-1$
-	final static String K_800 = "800"; //$NON-NLS-1$
-	final static String K_900 = "900"; //$NON-NLS-1$
-	final static String K_ABOVE = "above"; //$NON-NLS-1$
-	final static String K_ABSOLUTE = "absolute"; //$NON-NLS-1$
-	final static String K_ACTIVEBORDER = "ActiveBorder"; //$NON-NLS-1$
-	final static String K_ACTIVECAPTION = "ActiveCaption"; //$NON-NLS-1$
-	final static String K_ALL = "all"; //$NON-NLS-1$
-	final static String K_ALWAYS = "always"; //$NON-NLS-1$
-	final static String K_APPWORKSPACE = "AppWorkspace"; //$NON-NLS-1$
-	final static String K_AQUA = "aqua"; //$NON-NLS-1$
-	final static String K_ARMENIAN = "armenian"; //$NON-NLS-1$
-	final static String K_AUTO = "auto"; //$NON-NLS-1$
-	final static String K_AVOID = "avoid"; //$NON-NLS-1$
-	final static String K_BACKGROUND = "Background"; //$NON-NLS-1$
-	final static String K_BASELINE = "baseline"; //$NON-NLS-1$
-	final static String K_BEHIND = "behind"; //$NON-NLS-1$
-	final static String K_BELOW = "below"; //$NON-NLS-1$
-	final static String K_BIDI_OVERRIDE = "bidi-override"; //$NON-NLS-1$
-	final static String K_BLACK = "black"; //$NON-NLS-1$
-	final static String K_BLINK = "blink"; //$NON-NLS-1$
-	final static String K_BLOCK = "block"; //$NON-NLS-1$
-	final static String K_BLUE = "blue"; //$NON-NLS-1$
-	final static String K_BOLD = "bold"; //$NON-NLS-1$
-	final static String K_BOLDER = "bolder"; //$NON-NLS-1$
-	final static String K_BOTH = "both"; //$NON-NLS-1$
-	final static String K_BOTTOM = "bottom"; //$NON-NLS-1$
-	final static String K_BUTTONFACE = "ButtonFace"; //$NON-NLS-1$
-	final static String K_BUTTONHIGHLIGHT = "ButtonHighlight"; //$NON-NLS-1$
-	final static String K_BUTTONSHADOW = "ButtonShadow"; //$NON-NLS-1$
-	final static String K_BUTTONTEXT = "ButtonText"; //$NON-NLS-1$
-	final static String K_CAPITALIZE = "capitalize"; //$NON-NLS-1$
-	final static String K_CAPTION = "caption"; //$NON-NLS-1$
-	final static String K_CAPTIONTEXT = "CaptionText"; //$NON-NLS-1$
-	final static String K_CENTER = "center"; //$NON-NLS-1$
-	final static String K_CENTER_LEFT = "center-left"; //$NON-NLS-1$
-	final static String K_CENTER_RIGHT = "center-right"; //$NON-NLS-1$
-	final static String K_CHILD = "child"; //$NON-NLS-1$
-	final static String K_CIRCLE = "circle"; //$NON-NLS-1$
-	final static String K_CJK_IDEOGRAPHIC = "cjk-ideographic"; //$NON-NLS-1$
-	final static String K_CLOSE_QUOTE = "close-quote"; //$NON-NLS-1$
-	final static String K_CODE = "code"; //$NON-NLS-1$
-	final static String K_CONDENSED = "condensed"; //$NON-NLS-1$
-	final static String K_COLLAPSE = "collapse"; //$NON-NLS-1$
-	final static String K_COMPACT = "compact"; //$NON-NLS-1$
-	final static String K_CONTINUOUS = "continuous"; //$NON-NLS-1$
-	final static String K_CROP = "crop"; //$NON-NLS-1$
-	final static String K_CROSS = "cross"; //$NON-NLS-1$
-	final static String K_CROSSHAIR = "crosshair"; //$NON-NLS-1$
-	final static String K_CURSIVE = "cursive"; //$NON-NLS-1$
-	final static String K_DASHED = "dashed"; //$NON-NLS-1$
-	final static String K_DECIMAL = "decimal"; //$NON-NLS-1$
-	final static String K_DECIMAL_LEADING_ZERO = "decimal-leading-zero"; //$NON-NLS-1$
-	final static String K_DEFAULT = "default"; //$NON-NLS-1$
-	final static String K_DIGITS = "digits"; //$NON-NLS-1$
-	final static String K_DISC = "disc"; //$NON-NLS-1$
-	final static String K_DOTTED = "dotted"; //$NON-NLS-1$
-	final static String K_DOUBLE = "double"; //$NON-NLS-1$
-	final static String K_E_RESIZE = "e-resize"; //$NON-NLS-1$
-	final static String K_EMBED = "embed"; //$NON-NLS-1$
-	final static String K_EXPANDED = "expanded"; //$NON-NLS-1$
-	final static String K_EXTRA_CONDENSED = "extra-condensed"; //$NON-NLS-1$
-	final static String K_EXTRA_EXPANDED = "extra-expanded"; //$NON-NLS-1$
-	final static String K_FANTASY = "fantasy"; //$NON-NLS-1$
-	final static String K_FAR_LEFT = "far-left"; //$NON-NLS-1$
-	final static String K_FAR_RIGHT = "far-right"; //$NON-NLS-1$
-	final static String K_FAST = "fast"; //$NON-NLS-1$
-	final static String K_FASTER = "faster"; //$NON-NLS-1$
-	final static String K_FEMALE = "female"; //$NON-NLS-1$
-	final static String K_FIXED = "fixed"; //$NON-NLS-1$
-	final static String K_FUCHSIA = "fuchsia"; //$NON-NLS-1$
-	final static String K_GEORGIAN = "georgian"; //$NON-NLS-1$
-	final static String K_GRAY = "gray"; //$NON-NLS-1$
-	final static String K_GRAYTEXT = "GrayText"; //$NON-NLS-1$
-	final static String K_GREEN = "green"; //$NON-NLS-1$
-	final static String K_GROOVE = "groove"; //$NON-NLS-1$
-	final static String K_HEBREW = "hebrew"; //$NON-NLS-1$
-	final static String K_HELP = "help"; //$NON-NLS-1$
-	final static String K_HIDDEN = "hidden"; //$NON-NLS-1$
-	final static String K_HIDE = "hide"; //$NON-NLS-1$
-	final static String K_HIGH = "high"; //$NON-NLS-1$
-	final static String K_HIGHLIGHT = "Highlight"; //$NON-NLS-1$
-	final static String K_HIGHLIGHTTEXT = "HighlightText"; //$NON-NLS-1$
-	final static String K_HIGHER = "higher"; //$NON-NLS-1$
-	final static String K_HIRAGANA = "hiragana"; //$NON-NLS-1$
-	final static String K_HIRAGANA_IROHA = "hiragana-iroha"; //$NON-NLS-1$
-	final static String K_ICON = "icon"; //$NON-NLS-1$
-	final static String K_INACTIVEBORDER = "InactiveBorder"; //$NON-NLS-1$
-	final static String K_INACTIVECAPTION = "InactiveCaption"; //$NON-NLS-1$
-	final static String K_INACTIVECAPTIONTEXT = "InactiveCaptionText"; //$NON-NLS-1$
-	final static String K_INFOBACKGROUND = "InfoBackground"; //$NON-NLS-1$
-	final static String K_INFOTEXT = "InfoText"; //$NON-NLS-1$
-	final static String K_INLINE = "inline"; //$NON-NLS-1$
-	final static String K_INLINE_TABLE = "inline-table"; //$NON-NLS-1$
-	final static String K_INSET = "inset"; //$NON-NLS-1$
-	final static String K_INSIDE = "inside"; //$NON-NLS-1$
-	final static String K_INVERT = "invert"; //$NON-NLS-1$
-	final static String K_ITALIC = "italic"; //$NON-NLS-1$
-	final static String K_JUSTIFY = "justify"; //$NON-NLS-1$
-	final static String K_KATAKANA = "katakana"; //$NON-NLS-1$
-	final static String K_KATAKANA_IROHA = "katakana-iroha"; //$NON-NLS-1$
-	final static String K_LANDSCAPE = "landscape"; //$NON-NLS-1$
-	final static String K_LARGE = "large"; //$NON-NLS-1$
-	final static String K_LARGER = "larger"; //$NON-NLS-1$
-	final static String K_LEFT = "left"; //$NON-NLS-1$
-	final static String K_LEFT_SIDE = "left-side"; //$NON-NLS-1$
-	final static String K_LEFTWARDS = "leftwards"; //$NON-NLS-1$
-	final static String K_LEVEL = "level"; //$NON-NLS-1$
-	final static String K_LIGHTER = "lighter"; //$NON-NLS-1$
-	final static String K_LIME = "lime"; //$NON-NLS-1$
-	final static String K_LINE_THROUGH = "line-through"; //$NON-NLS-1$
-	final static String K_LIST_ITEM = "list-item"; //$NON-NLS-1$
-	final static String K_LOUD = "loud"; //$NON-NLS-1$
-	final static String K_LOW = "low"; //$NON-NLS-1$
-	final static String K_LOWER = "lower"; //$NON-NLS-1$
-	final static String K_LOWER_ALPHA = "lower-alpha"; //$NON-NLS-1$
-	final static String K_LOWER_GREEK = "lower-greek"; //$NON-NLS-1$
-	final static String K_LOWER_LATIN = "lower-latin"; //$NON-NLS-1$
-	final static String K_LOWER_ROMAN = "lower-roman"; //$NON-NLS-1$
-	final static String K_LOWERCASE = "lowercase"; //$NON-NLS-1$
-	final static String K_LTR = "ltr"; //$NON-NLS-1$
-	final static String K_MALE = "male"; //$NON-NLS-1$
-	final static String K_MARKER = "marker"; //$NON-NLS-1$
-	final static String K_MAROON = "maroon"; //$NON-NLS-1$
-	final static String K_MEDIUM = "medium"; //$NON-NLS-1$
-	final static String K_MENU = "menu"; //$NON-NLS-1$
-	final static String K_MENUTEXT = "MenuText"; //$NON-NLS-1$
-	final static String K_MESSAGE_BOX = "message-box"; //$NON-NLS-1$
-	final static String K_MIDDLE = "middle"; //$NON-NLS-1$
-	final static String K_MIX = "mix"; //$NON-NLS-1$
-	final static String K_MONOSPACE = "monospace"; //$NON-NLS-1$
-	final static String K_MOVE = "move"; //$NON-NLS-1$
-	final static String K_N_RESIZE = "n-resize"; //$NON-NLS-1$
-	final static String K_NARROWER = "narrower"; //$NON-NLS-1$
-	final static String K_NAVY = "navy"; //$NON-NLS-1$
-	final static String K_NE_RESIZE = "ne-resize"; //$NON-NLS-1$
-	final static String K_NO_CLOSE_QUOTE = "no-close-quote"; //$NON-NLS-1$
-	final static String K_NO_OPEN_QUOTE = "no-open-quote"; //$NON-NLS-1$
-	final static String K_NO_REPEAT = "no-repeat"; //$NON-NLS-1$
-	final static String K_NONE = "none"; //$NON-NLS-1$
-	final static String K_NORMAL = "normal"; //$NON-NLS-1$
-	final static String K_NOWRAP = "nowrap"; //$NON-NLS-1$
-	final static String K_NW_RESIZE = "nw-resize"; //$NON-NLS-1$
-	final static String K_OBLIQUE = "oblique"; //$NON-NLS-1$
-	final static String K_OLIVE = "olive"; //$NON-NLS-1$
-	final static String K_ONCE = "once"; //$NON-NLS-1$
-	final static String K_OPEN_QUOTE = "open-quote"; //$NON-NLS-1$
-	final static String K_OUTSET = "outset"; //$NON-NLS-1$
-	final static String K_OUTSIDE = "outside"; //$NON-NLS-1$
-	final static String K_OVERLINE = "overline"; //$NON-NLS-1$
-	final static String K_POINTER = "pointer"; //$NON-NLS-1$
-	final static String K_PORTRAIT = "portrait"; //$NON-NLS-1$
-	final static String K_PRE = "pre"; //$NON-NLS-1$
-	final static String K_PURPLE = "purple"; //$NON-NLS-1$
-	final static String K_RED = "red"; //$NON-NLS-1$
-	final static String K_RELATIVE = "relative"; //$NON-NLS-1$
-	final static String K_REPEAT = "repeat"; //$NON-NLS-1$
-	final static String K_REPEAT_X = "repeat-x"; //$NON-NLS-1$
-	final static String K_REPEAT_Y = "repeat-y"; //$NON-NLS-1$
-	final static String K_RIDGE = "ridge"; //$NON-NLS-1$
-	final static String K_RIGHT = "right"; //$NON-NLS-1$
-	final static String K_RIGHT_SIDE = "right-side"; //$NON-NLS-1$
-	final static String K_RIGHTWARDS = "rightwards"; //$NON-NLS-1$
-	final static String K_RTL = "rtl"; //$NON-NLS-1$
-	final static String K_RUN_IN = "run-in"; //$NON-NLS-1$
-	final static String K_S_RESIZE = "s-resize"; //$NON-NLS-1$
-	final static String K_SANS_SERIF = "sans-serif"; //$NON-NLS-1$
-	final static String K_SCROLL = "scroll"; //$NON-NLS-1$
-	final static String K_SCROLLBAR = "Scrollbar"; //$NON-NLS-1$
-	final static String K_SE_RESIZE = "se-resize"; //$NON-NLS-1$
-	final static String K_SEMI_CONDENSED = "semi-condensed"; //$NON-NLS-1$
-	final static String K_SEMI_EXPANDED = "semi-expanded"; //$NON-NLS-1$
-	final static String K_SEPARATE = "separate"; //$NON-NLS-1$
-	final static String K_SERIF = "serif"; //$NON-NLS-1$
-	final static String K_SHOW = "show"; //$NON-NLS-1$
-	final static String K_SILENT = "silent"; //$NON-NLS-1$
-	final static String K_SILVER = "silver"; //$NON-NLS-1$
-	final static String K_SLOW = "slow"; //$NON-NLS-1$
-	final static String K_SLOWER = "slower"; //$NON-NLS-1$
-	final static String K_SMALL = "small"; //$NON-NLS-1$
-	final static String K_SMALL_CAPS = "small-caps"; //$NON-NLS-1$
-	final static String K_SMALL_CAPTION = "small-caption"; //$NON-NLS-1$
-	final static String K_SMALLER = "smaller"; //$NON-NLS-1$
-	final static String K_SOFT = "soft"; //$NON-NLS-1$
-	final static String K_SOLID = "solid"; //$NON-NLS-1$
-	final static String K_SPELL_OUT = "spell-out"; //$NON-NLS-1$
-	final static String K_SQUARE = "square"; //$NON-NLS-1$
-	final static String K_STATIC = "static"; //$NON-NLS-1$
-	final static String K_STATUS_BAR = "status-bar"; //$NON-NLS-1$
-	final static String K_SUB = "sub"; //$NON-NLS-1$
-	final static String K_SUPER = "super"; //$NON-NLS-1$
-	final static String K_SW_RESIZE = "sw-resize"; //$NON-NLS-1$
-	final static String K_TABLE = "table"; //$NON-NLS-1$
-	final static String K_TABLE_CAPTION = "table-caption"; //$NON-NLS-1$
-	final static String K_TABLE_CELL = "table-cell"; //$NON-NLS-1$
-	final static String K_TABLE_COLUMN = "table-column"; //$NON-NLS-1$
-	final static String K_TABLE_COLUMN_GROUP = "table-column-group"; //$NON-NLS-1$
-	final static String K_TABLE_FOOTER_GROUP = "table-footer-group"; //$NON-NLS-1$
-	final static String K_TABLE_HEADER_GROUP = "table-header-group"; //$NON-NLS-1$
-	final static String K_TABLE_ROW = "table-row"; //$NON-NLS-1$
-	final static String K_TABLE_ROW_GROUP = "table-row-group"; //$NON-NLS-1$
-	final static String K_TEAL = "teal"; //$NON-NLS-1$
-	final static String K_TEXT = "text"; //$NON-NLS-1$
-	final static String K_TEXT_TOP = "text-top"; //$NON-NLS-1$
-	final static String K_TEXT_BOTTOM = "text-bottom"; //$NON-NLS-1$
-	final static String K_THICK = "thick"; //$NON-NLS-1$
-	final static String K_THIN = "thin"; //$NON-NLS-1$
-	final static String K_THREEDDARKSHADOW = "ThreeDDarkShadow"; //$NON-NLS-1$
-	final static String K_THREEDFACE = "ThreeDFace"; //$NON-NLS-1$
-	final static String K_THREEDHIGHLIGHT = "ThreeDHighlight"; //$NON-NLS-1$
-	final static String K_THREEDLIGHTSHADOW = "ThreeDLightShadow"; //$NON-NLS-1$
-	final static String K_THREEDSHADOW = "ThreeDShadow"; //$NON-NLS-1$
-	final static String K_TOP = "top"; //$NON-NLS-1$
-	final static String K_TRANSPARENT = "transparent"; //$NON-NLS-1$
-	final static String K_ULTRA_CONDENSED = "ultra-condensed"; //$NON-NLS-1$
-	final static String K_ULTRA_EXPANDED = "ultra-expanded"; //$NON-NLS-1$
-	final static String K_UNDERLINE = "underline"; //$NON-NLS-1$
-	final static String K_UPPER_ALPHA = "upper-alpha"; //$NON-NLS-1$
-	final static String K_UPPER_LATIN = "upper-latin"; //$NON-NLS-1$
-	final static String K_UPPER_ROMAN = "upper-roman"; //$NON-NLS-1$
-	final static String K_UPPERCASE = "uppercase"; //$NON-NLS-1$
-	final static String K_VISIBLE = "visible"; //$NON-NLS-1$
-	final static String K_W_RESIZE = "w-resize"; //$NON-NLS-1$
-	final static String K_WAIT = "wait"; //$NON-NLS-1$
-	final static String K_WHITE = "white"; //$NON-NLS-1$
-	final static String K_WIDER = "wider"; //$NON-NLS-1$
-	final static String K_WINDOW = "Window"; //$NON-NLS-1$
-	final static String K_WINDOWFRAME = "WindowFrame"; //$NON-NLS-1$
-	final static String K_WINDOWTEXT = "WindowText"; //$NON-NLS-1$
-	final static String K_X_FAST = "x-fast"; //$NON-NLS-1$
-	final static String K_X_HIGH = "x-high"; //$NON-NLS-1$
-	final static String K_X_LARGE = "x-large"; //$NON-NLS-1$
-	final static String K_X_LOUD = "x-loud"; //$NON-NLS-1$
-	final static String K_X_LOW = "x-low"; //$NON-NLS-1$
-	final static String K_X_SLOW = "x-slow"; //$NON-NLS-1$
-	final static String K_X_SMALL = "x-small"; //$NON-NLS-1$
-	final static String K_X_SOFT = "x-soft"; //$NON-NLS-1$
-	final static String K_XX_SMALL = "xx-small"; //$NON-NLS-1$
-	final static String K_XX_LARGE = "xx-large"; //$NON-NLS-1$
-	final static String K_YELLOW = "yellow"; //$NON-NLS-1$
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodel/util/CSSMMTypeCollector.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodel/util/CSSMMTypeCollector.java
deleted file mode 100644
index c2baf78..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodel/util/CSSMMTypeCollector.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.css.core.internal.metamodel.util;
-
-import java.util.ArrayList;
-import java.util.Iterator;
-import java.util.List;
-
-import org.eclipse.wst.css.core.internal.metamodel.CSSMMNode;
-
-
-public class CSSMMTypeCollector extends CSSMetaModelTraverser {
-
-	/**
-	 * Constructor for TypeCollector.
-	 */
-	public CSSMMTypeCollector() {
-		super();
-	}
-
-	public void apply(CSSMMNode node, String type) {
-		fType = type;
-		fNodes = new ArrayList();
-		apply(node);
-	}
-
-	public void collectNestedType(boolean nested) {
-		fNested = nested;
-	}
-
-	protected short preNode(CSSMMNode node) {
-		short rc = TRAV_CONT;
-		if (node != null) {
-			if (fType == node.getType()) {
-				if (!fNodes.contains(node)) {
-					fNodes.add(node);
-				}
-				if (!fNested) {
-					rc = TRAV_PRUNE;
-				}
-			}
-		}
-		return rc;
-	}
-
-	public Iterator getNodes() {
-		return fNodes.iterator();
-	}
-
-
-	private boolean fNested = false;
-	private String fType = null;
-	List fNodes = null;
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodel/util/CSSMediaGroupID.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodel/util/CSSMediaGroupID.java
deleted file mode 100644
index b7bda54..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodel/util/CSSMediaGroupID.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.css.core.internal.metamodel.util;
-
-public interface CSSMediaGroupID {
-
-	final static String M_CONTINUOUS = "continuous"; //$NON-NLS-1$
-	final static String M_PAGED = "paged"; //$NON-NLS-1$
-
-	final static String M_VISUAL = "visual"; //$NON-NLS-1$
-	final static String M_AURAL = "aural"; //$NON-NLS-1$
-	final static String M_TACTILE = "tactile"; //$NON-NLS-1$
-
-	final static String M_GRID = "grid"; //$NON-NLS-1$
-	final static String M_BITMAP = "bitmap"; //$NON-NLS-1$
-
-	final static String M_INTERACTIVE = "interactive"; //$NON-NLS-1$
-	final static String M_STATIC = "static"; //$NON-NLS-1$
-
-	final static String M_ALL = "all"; //$NON-NLS-1$
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodel/util/CSSMetaModelFinder.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodel/util/CSSMetaModelFinder.java
deleted file mode 100644
index f07d84a..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodel/util/CSSMetaModelFinder.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.core.internal.metamodel.util;
-
-import org.eclipse.wst.css.core.internal.metamodel.CSSMetaModel;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSNode;
-import org.eclipse.wst.sse.core.internal.provisional.IStructuredModel;
-
-
-public class CSSMetaModelFinder {
-	/**
-	 * Constructor for CSSMetaModelFinder.
-	 */
-	private CSSMetaModelFinder() {
-		super();
-	}
-
-	static synchronized public CSSMetaModelFinder getInstance() {
-		if (fInstance == null) {
-			fInstance = new CSSMetaModelFinder();
-		}
-		return fInstance;
-	}
-
-	public CSSMetaModel findMetaModelFor(ICSSNode node) {
-		return CSSProfileFinder.getInstance().findProfileFor(node).getMetaModel();
-	}
-
-	public CSSMetaModel findMetaModelFor(IStructuredModel model) {
-		return CSSProfileFinder.getInstance().findProfileFor(model).getMetaModel();
-
-	}
-
-	// findMetaModelFor(Node) is not used.
-	// Even if it is used, it can be replaced with
-	// findMetaModelFor(IStructuredModel) easily
-
-	public CSSMetaModel findMetaModelFor(String baseLocation) {
-		return CSSProfileFinder.getInstance().findProfileFor(baseLocation).getMetaModel();
-	}
-
-	static private CSSMetaModelFinder fInstance = null;
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodel/util/CSSMetaModelTraverser.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodel/util/CSSMetaModelTraverser.java
deleted file mode 100644
index 05a6f48..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodel/util/CSSMetaModelTraverser.java
+++ /dev/null
@@ -1,92 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this 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.core.internal.metamodel.util;
-
-import java.util.Iterator;
-import java.util.Stack;
-
-import org.eclipse.wst.css.core.internal.metamodel.CSSMMNode;
-
-
-
-abstract public class CSSMetaModelTraverser {
-
-	/**
-	 * Constructor for Traverser.
-	 */
-	public CSSMetaModelTraverser() {
-		super();
-	}
-
-	public final void apply(CSSMMNode node) {
-		fTravStack = new Stack();
-
-		begin(node);
-		traverse(node);
-		end(node);
-	}
-
-	private final short traverse(CSSMMNode node) {
-		if (node == null) {
-			return TRAV_CONT;
-		}
-
-		fTravStack.push(node);
-
-		short rc;
-		rc = preNode(node);
-
-		if (rc == TRAV_CONT) {
-			Iterator i = node.getChildNodes();
-			while (i.hasNext()) {
-				CSSMMNode child = (CSSMMNode) i.next();
-				short rcChild = traverse(child);
-				if (rcChild == TRAV_STOP) {
-					fTravStack.pop();
-					return TRAV_STOP;
-				}
-			}
-		}
-		else if (rc == TRAV_STOP) {
-			fTravStack.pop();
-			return TRAV_STOP;
-		}
-
-		rc = postNode(node);
-
-		fTravStack.pop();
-		return (rc == TRAV_PRUNE) ? TRAV_CONT : rc;
-	}
-
-	protected void begin(CSSMMNode node) {
-
-	}
-
-	protected void end(CSSMMNode node) {
-
-	}
-
-	protected short preNode(CSSMMNode node) {
-		return TRAV_CONT;
-	}
-
-	protected short postNode(CSSMMNode node) {
-		return TRAV_CONT;
-	}
-
-
-	Stack fTravStack = null;
-
-	protected static final short TRAV_CONT = 0;
-	protected static final short TRAV_STOP = 1;
-	protected static final short TRAV_PRUNE = 2;
-
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodel/util/CSSMetaModelUtil.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodel/util/CSSMetaModelUtil.java
deleted file mode 100644
index aad0b1b..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodel/util/CSSMetaModelUtil.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.wst.css.core.internal.metamodel.util;
-
-import java.util.HashMap;
-import java.util.Iterator;
-import java.util.Map;
-
-import org.eclipse.wst.css.core.internal.metamodel.CSSMMDescriptor;
-import org.eclipse.wst.css.core.internal.metamodel.CSSMMNode;
-import org.eclipse.wst.css.core.internal.metamodel.CSSMMProperty;
-import org.eclipse.wst.css.core.internal.metamodel.CSSMetaModel;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSNode;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSStyleDeclItem;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSStyleDeclaration;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSStyleRule;
-import org.w3c.dom.css.CSSFontFaceRule;
-
-
-public class CSSMetaModelUtil {
-	public CSSMetaModelUtil(CSSMetaModel metamodel) {
-		super();
-		fMetaModel = metamodel;
-	}
-
-	public Iterator getProperties() {
-		return collectNodesByType(CSSMMNode.TYPE_PROPERTY);
-	}
-
-	public Iterator getDescriptors() {
-		return collectNodesByType(CSSMMNode.TYPE_DESCRIPTOR);
-	}
-
-	public Iterator collectNodesByType(String type) {
-		CSSMMTypeCollector collector = new CSSMMTypeCollector();
-		collector.apply(fMetaModel, type);
-		return collector.getNodes();
-	}
-
-	public CSSMMProperty getProperty(String propertyName) {
-		Iterator iProperty = getProperties();
-		while (iProperty.hasNext()) {
-			CSSMMNode node = (CSSMMNode) iProperty.next();
-			if (node.getName().equalsIgnoreCase(propertyName)) {
-				return (CSSMMProperty) node;
-			}
-		}
-		return null;
-	}
-
-	public CSSMMDescriptor getDescriptor(String descriptorName) {
-		Iterator iDescriptor = getDescriptors();
-		while (iDescriptor.hasNext()) {
-			CSSMMNode node = (CSSMMNode) iDescriptor.next();
-			if (node.getName().equalsIgnoreCase(descriptorName)) {
-				return (CSSMMDescriptor) node;
-			}
-		}
-		return null;
-	}
-
-	public CSSMMNode getMetaModelNodeFor(ICSSNode node) {
-		if (node instanceof ICSSStyleDeclaration) {
-			node = node.getParentNode();
-		}
-		if (node instanceof ICSSStyleDeclItem) {
-			ICSSNode parent = node.getParentNode();
-			if (parent != null) {
-				parent = parent.getParentNode();
-			}
-			if (parent instanceof ICSSStyleRule) {
-				return getProperty(((ICSSStyleDeclItem) node).getPropertyName());
-			}
-			else if (parent instanceof CSSFontFaceRule) {
-				return getDescriptor(((ICSSStyleDeclItem) node).getPropertyName());
-			}
-		}
-		if (node == null) {
-			return null;
-		}
-
-		if (fTypeMap == null) {
-			fTypeMap = new HashMap();
-			fTypeMap.put(new Short(ICSSNode.STYLERULE_NODE), CSSMMNode.TYPE_STYLE_RULE);
-			fTypeMap.put(new Short(ICSSNode.FONTFACERULE_NODE), CSSMMNode.TYPE_FONT_FACE_RULE);
-			fTypeMap.put(new Short(ICSSNode.PAGERULE_NODE), CSSMMNode.TYPE_PAGE_RULE);
-		}
-
-		String nodeType = (String) fTypeMap.get(new Short(node.getNodeType()));
-		if (nodeType == null) {
-			return null;
-		}
-
-		Iterator iNodes = collectNodesByType(nodeType);
-		if (iNodes.hasNext()) {
-			CSSMMNode targetNode = (CSSMMNode) iNodes.next();
-			if (!iNodes.hasNext()) { // it's only one
-				return targetNode;
-			}
-		}
-
-		return null;
-	}
-
-	public CSSMetaModel getMetaModel() {
-		return fMetaModel;
-	}
-
-
-	private CSSMetaModel fMetaModel = null;
-	private Map fTypeMap = null;
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodel/util/CSSNumberID.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodel/util/CSSNumberID.java
deleted file mode 100644
index 4b367ab..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodel/util/CSSNumberID.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.css.core.internal.metamodel.util;
-
-public interface CSSNumberID {
-
-	final static java.lang.String N_ANGLE = "angle";//$NON-NLS-1$
-	final static java.lang.String N_FREQUENCY = "frequency";//$NON-NLS-1$
-	final static java.lang.String N_INTEGER = "integer";//$NON-NLS-1$
-	final static java.lang.String N_LENGTH = "length";//$NON-NLS-1$
-	final static java.lang.String N_PERCENTAGE = "percentage";//$NON-NLS-1$
-	final static java.lang.String N_TIME = "time";//$NON-NLS-1$
-	final static java.lang.String N_HASH = "hash"; //$NON-NLS-1$
-	final static java.lang.String N_NUM = "number";//$NON-NLS-1$
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodel/util/CSSProfileFinder.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodel/util/CSSProfileFinder.java
deleted file mode 100644
index 1dd2e3a..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodel/util/CSSProfileFinder.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.wst.css.core.internal.metamodel.util;
-
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.resources.IResource;
-import org.eclipse.core.resources.ResourcesPlugin;
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.core.runtime.Path;
-import org.eclipse.wst.css.core.internal.metamodel.CSSProfile;
-import org.eclipse.wst.css.core.internal.metamodel.CSSProfileRegistry;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSDocument;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSModel;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSNode;
-import org.eclipse.wst.sse.core.internal.provisional.IStructuredModel;
-import org.eclipse.wst.sse.ui.internal.provisional.contentproperties.ContentSettingsCreator;
-import org.eclipse.wst.sse.ui.internal.provisional.contentproperties.IContentSettings;
-
-
-public class CSSProfileFinder {
-
-	final static private String CSS_PROFILE = "css-profile"; //$NON-NLS-1$
-
-	/**
-	 * Constructor for CSSProfileFinder.
-	 */
-	private CSSProfileFinder() {
-		super();
-	}
-
-	static synchronized public CSSProfileFinder getInstance() {
-		if (fInstance == null) {
-			fInstance = new CSSProfileFinder();
-		}
-		return fInstance;
-	}
-
-	public CSSProfile findProfileFor(ICSSNode node) {
-		ICSSModel model = null;
-		if (node != null) {
-			ICSSDocument doc = node.getOwnerDocument();
-			if (doc != null) {
-				model = doc.getModel();
-			}
-		}
-		return findProfileFor(model);
-	}
-
-	public CSSProfile findProfileFor(IStructuredModel model) {
-		String baseLocation = null;
-		if (model instanceof ICSSModel) {
-			Object modelType = ((ICSSModel) model).getStyleSheetType();
-			if (modelType == ICSSModel.EXTERNAL) {
-				baseLocation = model.getBaseLocation();
-			}
-			else if (modelType == ICSSModel.EMBEDDED || modelType == ICSSModel.INLINE) {
-				baseLocation = model.getBaseLocation(); // may be null
-			}
-		}
-		else if (model != null) {
-			baseLocation = model.getBaseLocation();
-		}
-		return findProfileFor(baseLocation);
-	}
-
-	public CSSProfile findProfileFor(String baseLocation) {
-		CSSProfileRegistry reg = CSSProfileRegistry.getInstance();
-		CSSProfile profile = null;
-
-		if (baseLocation != null) {
-			IContentSettings cs = ContentSettingsCreator.create();
-			IPath path = new Path(baseLocation);
-			IResource resource = ResourcesPlugin.getWorkspace().getRoot().getFileForLocation(path);
-			if (resource == null && path.segmentCount() > 1)
-				resource = ResourcesPlugin.getWorkspace().getRoot().getFile(path);
-			if (resource != null) {
-				IProject project = resource.getProject();
-				// at first, initialized with project settings
-				if (project != null) {
-					String profileID = cs.getProperty(project, CSS_PROFILE);
-					if (profileID != null && 0 < profileID.length()) {
-						profile = reg.getProfile(profileID);
-					}
-				}
-				// if resource settings exist, overwrite with project settings
-				String profileID = cs.getProperty(resource, CSS_PROFILE);
-				if (profileID != null && 0 < profileID.length()) {
-					profile = reg.getProfile(profileID);
-				}
-			}
-		}
-
-		return (profile != null) ? profile : reg.getDefaultProfile();
-	}
-
-	static private CSSProfileFinder fInstance = null;
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodel/util/CSSPropertyID.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodel/util/CSSPropertyID.java
deleted file mode 100644
index 5f66cdb..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodel/util/CSSPropertyID.java
+++ /dev/null
@@ -1,137 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this 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.core.internal.metamodel.util;
-
-public interface CSSPropertyID {
-
-	final static String P_AZIMUTH = "azimuth"; //$NON-NLS-1$
-	final static String P_BG = "background"; //$NON-NLS-1$
-	final static String P_BG_ATTACHMENT = "background-attachment"; //$NON-NLS-1$
-	final static String P_BG_COLOR = "background-color"; //$NON-NLS-1$
-	final static String P_BG_IMAGE = "background-image"; //$NON-NLS-1$
-	final static String P_BG_POSITION = "background-position"; //$NON-NLS-1$
-	final static String P_BG_REPEAT = "background-repeat"; //$NON-NLS-1$
-	final static String P_BORDER = "border"; //$NON-NLS-1$
-	final static String P_BORDER_COLLAPSE = "border-collapse"; //$NON-NLS-1$
-	final static String P_BORDER_COLOR = "border-color"; //$NON-NLS-1$
-	final static String P_BORDER_SPACING = "border-spacing"; //$NON-NLS-1$
-	final static String P_BORDER_STYLE = "border-style"; //$NON-NLS-1$
-	final static String P_BORDER_TOP = "border-top"; //$NON-NLS-1$
-	final static String P_BORDER_RIGHT = "border-right"; //$NON-NLS-1$
-	final static String P_BORDER_BOTTOM = "border-bottom"; //$NON-NLS-1$
-	final static String P_BORDER_LEFT = "border-left"; //$NON-NLS-1$
-	final static String P_BORDER_TOP_COLOR = "border-top-color"; //$NON-NLS-1$
-	final static String P_BORDER_RIGHT_COLOR = "border-right-color"; //$NON-NLS-1$
-	final static String P_BORDER_BOTTOM_COLOR = "border-bottom-color"; //$NON-NLS-1$
-	final static String P_BORDER_LEFT_COLOR = "border-left-color"; //$NON-NLS-1$
-	final static String P_BORDER_TOP_STYLE = "border-top-style"; //$NON-NLS-1$
-	final static String P_BORDER_RIGHT_STYLE = "border-right-style"; //$NON-NLS-1$
-	final static String P_BORDER_BOTTOM_STYLE = "border-bottom-style"; //$NON-NLS-1$
-	final static String P_BORDER_LEFT_STYLE = "border-left-style"; //$NON-NLS-1$
-	final static String P_BORDER_TOP_WIDTH = "border-top-width"; //$NON-NLS-1$
-	final static String P_BORDER_RIGHT_WIDTH = "border-right-width"; //$NON-NLS-1$
-	final static String P_BORDER_BOTTOM_WIDTH = "border-bottom-width"; //$NON-NLS-1$
-	final static String P_BORDER_LEFT_WIDTH = "border-left-width"; //$NON-NLS-1$
-	final static String P_BORDER_WIDTH = "border-width"; //$NON-NLS-1$
-	final static String P_BOTTOM = "bottom"; //$NON-NLS-1$
-	final static String P_CAPTION_SIDE = "caption-side"; //$NON-NLS-1$
-	final static String P_CLEAR = "clear"; //$NON-NLS-1$
-	final static String P_CLIP = "clip"; //$NON-NLS-1$
-	final static String P_COLOR = "color"; //$NON-NLS-1$
-	final static String P_CONTENT = "content"; //$NON-NLS-1$
-	final static String P_COUNTER_INCREMENT = "counter-increment"; //$NON-NLS-1$
-	final static String P_COUNTER_RESET = "counter-reset"; //$NON-NLS-1$
-	final static String P_CUE = "cue"; //$NON-NLS-1$
-	final static String P_CUE_AFTER = "cue-after"; //$NON-NLS-1$
-	final static String P_CUE_BEFORE = "cue-before"; //$NON-NLS-1$
-	final static String P_CURSOR = "cursor"; //$NON-NLS-1$
-	final static String P_DIRECTION = "direction"; //$NON-NLS-1$
-	final static String P_DISPLAY = "display"; //$NON-NLS-1$
-	final static String P_ELEVATION = "elevation"; //$NON-NLS-1$
-	final static String P_EMPTY_CELLS = "empty-cells"; //$NON-NLS-1$
-	final static String P_FLOAT = "float"; //$NON-NLS-1$
-	final static String P_FONT = "font"; //$NON-NLS-1$
-	final static String P_FONT_FAMILY = "font-family"; //$NON-NLS-1$
-	final static String P_FONT_SIZE = "font-size"; //$NON-NLS-1$
-	final static String P_FONT_SIZE_ADJUST = "font-size-adjust"; //$NON-NLS-1$
-	final static String P_FONT_STRETCH = "font-stretch"; //$NON-NLS-1$
-	final static String P_FONT_STYLE = "font-style"; //$NON-NLS-1$
-	final static String P_FONT_VARIANT = "font-variant"; //$NON-NLS-1$
-	final static String P_FONT_WEIGHT = "font-weight"; //$NON-NLS-1$
-	final static String P_HEIGHT = "height"; //$NON-NLS-1$
-	final static String P_LEFT = "left"; //$NON-NLS-1$
-	final static String P_LETTER_SPACING = "letter-spacing"; //$NON-NLS-1$
-	final static String P_LINE_HEIGHT = "line-height"; //$NON-NLS-1$
-	final static String P_LIST_STYLE = "list-style"; //$NON-NLS-1$
-	final static String P_LIST_STYLE_IMAGE = "list-style-image"; //$NON-NLS-1$
-	final static String P_LIST_STYLE_POSITION = "list-style-position"; //$NON-NLS-1$
-	final static String P_LIST_STYLE_TYPE = "list-style-type"; //$NON-NLS-1$
-	final static String P_MARGIN = "margin"; //$NON-NLS-1$
-	final static String P_MARGIN_TOP = "margin-top"; //$NON-NLS-1$
-	final static String P_MARGIN_RIGHT = "margin-right"; //$NON-NLS-1$
-	final static String P_MARGIN_BOTTOM = "margin-bottom"; //$NON-NLS-1$
-	final static String P_MARGIN_LEFT = "margin-left"; //$NON-NLS-1$
-	final static String P_MARKER_OFFSET = "marker-offset"; //$NON-NLS-1$
-	final static String P_MARKS = "marks"; //$NON-NLS-1$
-	final static String P_MAX_HEIGHT = "max-height"; //$NON-NLS-1$
-	final static String P_MAX_WIDTH = "max-width"; //$NON-NLS-1$
-	final static String P_MIN_HEIGHT = "min-height"; //$NON-NLS-1$
-	final static String P_MIN_WIDTH = "min-width"; //$NON-NLS-1$
-	final static String P_ORPHANS = "orphans"; //$NON-NLS-1$
-	final static String P_OUTLINE = "outline"; //$NON-NLS-1$
-	final static String P_OUTLINE_COLOR = "outline-color"; //$NON-NLS-1$
-	final static String P_OUTLINE_STYLE = "outline-style"; //$NON-NLS-1$
-	final static String P_OUTLINE_WIDTH = "outline-width"; //$NON-NLS-1$
-	final static String P_OVERFLOW = "overflow"; //$NON-NLS-1$
-	final static String P_PADDING = "padding"; //$NON-NLS-1$
-	final static String P_PADDING_TOP = "padding-top"; //$NON-NLS-1$
-	final static String P_PADDING_RIGHT = "padding-right"; //$NON-NLS-1$
-	final static String P_PADDING_BOTTOM = "padding-bottom"; //$NON-NLS-1$
-	final static String P_PADDING_LEFT = "padding-left"; //$NON-NLS-1$
-	final static String P_PAGE = "page"; //$NON-NLS-1$
-	final static String P_PAGE_BREAK_AFTER = "page-break-after"; //$NON-NLS-1$
-	final static String P_PAGE_BREAK_BEFORE = "page-break-before"; //$NON-NLS-1$
-	final static String P_PAGE_BREAK_INSIDE = "page-break-inside"; //$NON-NLS-1$
-	final static String P_PAUSE = "pause"; //$NON-NLS-1$
-	final static String P_PAUSE_AFTER = "pause-after"; //$NON-NLS-1$
-	final static String P_PAUSE_BEFORE = "pause-before"; //$NON-NLS-1$
-	final static String P_PITCH = "pitch"; //$NON-NLS-1$
-	final static String P_PITCH_RANGE = "pitch-range"; //$NON-NLS-1$
-	final static String P_PLAY_DURING = "play-during"; //$NON-NLS-1$
-	final static String P_POSITION = "position"; //$NON-NLS-1$
-	final static String P_QUOTES = "quotes"; //$NON-NLS-1$
-	final static String P_RICHNESS = "richness"; //$NON-NLS-1$
-	final static String P_RIGHT = "right"; //$NON-NLS-1$
-	final static String P_SIZE = "size"; //$NON-NLS-1$
-	final static String P_SPEAK = "speak"; //$NON-NLS-1$
-	final static String P_SPEAK_HEADER = "speak-header"; //$NON-NLS-1$
-	final static String P_SPEAK_NUMERAL = "speak-numeral"; //$NON-NLS-1$
-	final static String P_SPEAK_PUNCTUATION = "speak-punctuation"; //$NON-NLS-1$
-	final static String P_SPEECH_RATE = "speech-rate"; //$NON-NLS-1$
-	final static String P_STRESS = "stress"; //$NON-NLS-1$
-	final static String P_TABLE_LAYOUT = "table-layout"; //$NON-NLS-1$
-	final static String P_TEXT_ALIGN = "text-align"; //$NON-NLS-1$
-	final static String P_TEXT_DECORATION = "text-decoration"; //$NON-NLS-1$
-	final static String P_TEXT_INDENT = "text-indent"; //$NON-NLS-1$
-	final static String P_TEXT_SHADOW = "text-shadow"; //$NON-NLS-1$
-	final static String P_TEXT_TRANSFORM = "text-transform"; //$NON-NLS-1$
-	final static String P_TOP = "top"; //$NON-NLS-1$
-	final static String P_UNICODE_BIDI = "unicode-bidi"; //$NON-NLS-1$
-	final static String P_VERTICAL_ALIGN = "vertical-align"; //$NON-NLS-1$
-	final static String P_VISIBILITY = "visibility"; //$NON-NLS-1$
-	final static String P_VOICE_FAMILY = "voice-family"; //$NON-NLS-1$
-	final static String P_VOLUME = "volume"; //$NON-NLS-1$
-	final static String P_WHITE_SPACE = "white-space"; //$NON-NLS-1$
-	final static String P_WIDOWS = "widows"; //$NON-NLS-1$
-	final static String P_WIDTH = "width"; //$NON-NLS-1$
-	final static String P_WORD_SPACING = "word-spacing"; //$NON-NLS-1$
-	final static String P_Z_INDEX = "z-index"; //$NON-NLS-1$
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodel/util/CSSStringID.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodel/util/CSSStringID.java
deleted file mode 100644
index c625191..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodel/util/CSSStringID.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.css.core.internal.metamodel.util;
-
-public interface CSSStringID {
-
-	final static String S_ANY = "any"; //$NON-NLS-1$
-	final static String S_COUNTER_IDENTIFIER = "counter-identifier"; //$NON-NLS-1$
-	final static String S_FAMILY_NAME = "family-name"; //$NON-NLS-1$
-	final static String S_FONT_FACE_NAME = "font-face-name"; //$NON-NLS-1$
-	final static String S_PAGE_IDENTIFIER = "page-identifier"; //$NON-NLS-1$
-	final static String S_SPECIFIC_VOICE = "specific-voice"; //$NON-NLS-1$
-	final static String S_URANGE = "urange"; //$NON-NLS-1$
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodel/util/CSSUnitID.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodel/util/CSSUnitID.java
deleted file mode 100644
index ce2b5f1..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodel/util/CSSUnitID.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.core.internal.metamodel.util;
-
-public interface CSSUnitID {
-
-	final static String U_CM = "cm";//$NON-NLS-1$
-	final static String U_DEG = "deg";//$NON-NLS-1$
-	final static String U_EMS = "em";//$NON-NLS-1$
-	final static String U_EXS = "ex";//$NON-NLS-1$
-	final static String U_GRAD = "grad";//$NON-NLS-1$
-	final static String U_HASH = "#";//$NON-NLS-1$
-	final static String U_HZ = "Hz";//$NON-NLS-1$
-	final static String U_IN = "in";//$NON-NLS-1$
-	// final static String U_INTEGER = "INTEGER";//$NON-NLS-1$
-	final static String U_KHZ = "kHz";//$NON-NLS-1$
-	final static String U_MM = "mm";//$NON-NLS-1$
-	final static String U_MS = "ms";//$NON-NLS-1$
-	// final static String U_NUMBER = "NUMBER";//$NON-NLS-1$
-	final static String U_PC = "pc";//$NON-NLS-1$
-	final static String U_PERCENTAGE = "%";//$NON-NLS-1$
-	final static String U_PT = "pt";//$NON-NLS-1$
-	final static String U_PX = "px";//$NON-NLS-1$
-	final static String U_RAD = "rad";//$NON-NLS-1$
-	final static String U_S = "s";//$NON-NLS-1$
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodelimpl/CSSMMCategoryImpl.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodelimpl/CSSMMCategoryImpl.java
deleted file mode 100644
index c841a62..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodelimpl/CSSMMCategoryImpl.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.css.core.internal.metamodelimpl;
-
-import org.eclipse.wst.css.core.internal.metamodel.CSSMMCategory;
-import org.eclipse.wst.css.core.internal.metamodel.CSSMMNode;
-
-class CSSMMCategoryImpl extends CSSMMNodeImpl implements CSSMMCategory {
-
-	public CSSMMCategoryImpl() {
-		super();
-	}
-
-	public String getType() {
-		return TYPE_CATEGORY;
-	}
-
-	public String getName() {
-		String name = getAttribute(ATTR_NAME);
-		if (name != null) {
-			return name.toLowerCase();
-		}
-		else {
-			return null;
-		}
-	}
-
-	/*
-	 * @see CSSMMNodeImpl#canContain(CSSMMNode)
-	 */
-	boolean canContain(CSSMMNode child) {
-		return false;
-	}
-
-	public String getCaption() {
-		return fCaption;
-	}
-
-	void setCaption(String caption) {
-		fCaption = caption;
-	}
-
-	/*
-	 * @see CSSMMNodeImpl#getError()
-	 */
-	short getError() {
-		if (getName() == null) {
-			return MetaModelErrors.ERROR_NOT_DEFINED;
-		}
-		else if (getCaption() == null) {
-			return MetaModelErrors.ERROR_NO_CHILD;
-		}
-		else {
-			return MetaModelErrors.NO_ERROR;
-		}
-	}
-
-	/*
-	 * @see Object#toString()
-	 */
-	public String toString() {
-		return getCaption();
-	}
-
-
-	private String fCaption = null;
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodelimpl/CSSMMCharsetRuleImpl.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodelimpl/CSSMMCharsetRuleImpl.java
deleted file mode 100644
index 007deb6..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodelimpl/CSSMMCharsetRuleImpl.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.core.internal.metamodelimpl;
-
-import org.eclipse.wst.css.core.internal.metamodel.CSSMMCharsetRule;
-import org.eclipse.wst.css.core.internal.metamodel.CSSMMNode;
-
-class CSSMMCharsetRuleImpl extends CSSMMNodeImpl implements CSSMMCharsetRule {
-
-
-	public CSSMMCharsetRuleImpl() {
-		super();
-	}
-
-	public String getType() {
-		return TYPE_CHARSET_RULE;
-	}
-
-	public String getName() {
-		return NAME_NOT_AVAILABLE;
-	}
-
-	/*
-	 * @see CSSMMNodeImpl#canContain(CSSMMNode)
-	 */
-	boolean canContain(CSSMMNode child) {
-		return false;
-	}
-
-	/*
-	 * @see CSSMMNodeImpl#getError()
-	 */
-	short getError() {
-		return MetaModelErrors.NO_ERROR;
-	}
-
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodelimpl/CSSMMContainerImpl.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodelimpl/CSSMMContainerImpl.java
deleted file mode 100644
index 5e4c581..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodelimpl/CSSMMContainerImpl.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.css.core.internal.metamodelimpl;
-
-import org.eclipse.wst.css.core.internal.metamodel.CSSMMContainer;
-import org.eclipse.wst.css.core.internal.metamodel.CSSMMNode;
-
-class CSSMMContainerImpl extends CSSMMNodeImpl implements CSSMMContainer {
-
-
-	public CSSMMContainerImpl() {
-		super();
-	}
-
-	public String getType() {
-		return TYPE_CONTAINER;
-	}
-
-	public String getName() {
-		String name = getAttribute(ATTR_NAME);
-		if (name != null) {
-			return name.toLowerCase();
-		}
-		else {
-			return null;
-		}
-	}
-
-	/*
-	 * @see CSSMMNodeImpl#canContain(CSSMMNode)
-	 */
-	boolean canContain(CSSMMNode child) {
-		if (child == null) {
-			return false;
-		}
-		String type = child.getType();
-		return (type == TYPE_NUMBER || type == TYPE_KEYWORD || type == TYPE_FUNCTION || type == TYPE_CONTAINER);
-	}
-
-	/*
-	 * @see CSSMMNodeImpl#getError()
-	 */
-	short getError() {
-		if (getName() == null) {
-			return MetaModelErrors.ERROR_NOT_DEFINED;
-		}
-		else if (getChildCount() == 0) {
-			return MetaModelErrors.ERROR_NO_CHILD;
-		}
-		else {
-			return MetaModelErrors.NO_ERROR;
-		}
-	}
-
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodelimpl/CSSMMDescriptorImpl.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodelimpl/CSSMMDescriptorImpl.java
deleted file mode 100644
index 7026c24..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodelimpl/CSSMMDescriptorImpl.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.css.core.internal.metamodelimpl;
-
-import java.util.Iterator;
-
-import org.eclipse.wst.css.core.internal.metamodel.CSSMMDescriptor;
-import org.eclipse.wst.css.core.internal.metamodel.CSSMMNode;
-
-
-class CSSMMDescriptorImpl extends CSSMMNodeImpl implements CSSMMDescriptor {
-
-
-	public CSSMMDescriptorImpl() {
-		super();
-	}
-
-	public String getType() {
-		return TYPE_DESCRIPTOR;
-	}
-
-	public String getName() {
-		String name = getAttribute(ATTR_NAME);
-		if (name != null) {
-			return name.toLowerCase();
-		}
-		else {
-			return null;
-		}
-	}
-
-	/*
-	 * @see CSSMMNodeImpl#canContain(CSSMMNode)
-	 */
-	boolean canContain(CSSMMNode child) {
-		if (child == null) {
-			return false;
-		}
-		String type = child.getType();
-		return (type == TYPE_NUMBER || type == TYPE_KEYWORD || type == TYPE_FUNCTION || type == TYPE_CONTAINER || type == TYPE_STRING || type == TYPE_SEPARATOR);
-	}
-
-	/*
-	 * @see CSSMMNodeImpl#getError()
-	 */
-	short getError() {
-		if (getName() == null) {
-			return MetaModelErrors.ERROR_NOT_DEFINED;
-		}
-		else if (getChildCount() == 0) {
-			return MetaModelErrors.ERROR_NO_CHILD;
-		}
-		else {
-			return MetaModelErrors.NO_ERROR;
-		}
-	}
-
-	/*
-	 * @see CSSMMDescriptor#getValues()
-	 */
-	public Iterator getValues() {
-		ValueCollector collector = new ValueCollector();
-		collector.apply(this);
-		return collector.getNodes();
-	}
-
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodelimpl/CSSMMFontFaceRuleImpl.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodelimpl/CSSMMFontFaceRuleImpl.java
deleted file mode 100644
index c8d561e..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodelimpl/CSSMMFontFaceRuleImpl.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.core.internal.metamodelimpl;
-
-import org.eclipse.wst.css.core.internal.metamodel.CSSMMFontFaceRule;
-import org.eclipse.wst.css.core.internal.metamodel.CSSMMNode;
-
-class CSSMMFontFaceRuleImpl extends CSSMMNodeImpl implements CSSMMFontFaceRule {
-
-
-	public CSSMMFontFaceRuleImpl() {
-		super();
-	}
-
-	public String getType() {
-		return TYPE_FONT_FACE_RULE;
-	}
-
-	public String getName() {
-		return NAME_NOT_AVAILABLE;
-	}
-
-	/*
-	 * @see CSSMMNodeImpl#canContain(CSSMMNode)
-	 */
-	boolean canContain(CSSMMNode child) {
-		return (child != null && child.getType() == TYPE_DESCRIPTOR);
-	}
-
-	/*
-	 * @see CSSMMNodeImpl#getError()
-	 */
-	short getError() {
-		return MetaModelErrors.NO_ERROR;
-	}
-
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodelimpl/CSSMMFunctionImpl.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodelimpl/CSSMMFunctionImpl.java
deleted file mode 100644
index a26b099..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodelimpl/CSSMMFunctionImpl.java
+++ /dev/null
@@ -1,96 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this 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.core.internal.metamodelimpl;
-
-import org.eclipse.wst.css.core.internal.metamodel.CSSMMFunction;
-import org.eclipse.wst.css.core.internal.metamodel.CSSMMNode;
-
-class CSSMMFunctionImpl extends CSSMMNodeImpl implements CSSMMFunction {
-
-	public CSSMMFunctionImpl() {
-		super();
-	}
-
-	public String getType() {
-		return TYPE_FUNCTION;
-	}
-
-	public String getName() {
-		String name = getAttribute(ATTR_NAME);
-		if (name != null) {
-			return name.toLowerCase();
-		}
-		else {
-			return null;
-		}
-	}
-
-	public String getFunctionString() {
-		return fValue;
-	}
-
-	/*
-	 * @see CSSMMNodeImpl#canContain(CSSMMNode)
-	 */
-	boolean canContain(CSSMMNode child) {
-		return false;
-	}
-
-	/*
-	 * @see CSSMMNodeImpl#postSetAttribute()
-	 */
-	// void postSetAttribute() throws BadInitializationException {
-	// super.postSetAttribute();
-	// String name = getName();
-	// if (name == null) { throw new BadInitializationException(); }
-	//
-	// List list = new ArrayList();
-	// list.add(CSSFunctionID.F_ATTR);
-	// list.add(CSSFunctionID.F_COUNTER);
-	// list.add(CSSFunctionID.F_RGB);
-	// list.add(CSSFunctionID.F_RECT);
-	// list.add(CSSFunctionID.F_URI);
-	// list.add(CSSFunctionID.F_FORMAT);
-	// list.add(CSSFunctionID.F_LOCAL);
-	//
-	// if (! list.contains(name.toLowerCase())) {
-	// throw new BadInitializationException();
-	// }
-	// }
-	/*
-	 * @see Object#toString()
-	 */
-	public String toString() {
-		return getFunctionString();
-	}
-
-	void setFunctionString(String value) {
-		fValue = value;
-	}
-
-	/*
-	 * @see CSSMMNodeImpl#getError()
-	 */
-	short getError() {
-		if (getName() == null) {
-			return MetaModelErrors.ERROR_NOT_DEFINED;
-		}
-		else if (getFunctionString() == null) {
-			return MetaModelErrors.ERROR_NO_CHILD;
-		}
-		else {
-			return MetaModelErrors.NO_ERROR;
-		}
-	}
-
-
-	private String fValue = null;
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodelimpl/CSSMMImportRuleImpl.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodelimpl/CSSMMImportRuleImpl.java
deleted file mode 100644
index 582ea8b..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodelimpl/CSSMMImportRuleImpl.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.wst.css.core.internal.metamodelimpl;
-
-import org.eclipse.wst.css.core.internal.metamodel.CSSMMImportRule;
-import org.eclipse.wst.css.core.internal.metamodel.CSSMMNode;
-
-class CSSMMImportRuleImpl extends CSSMMNodeImpl implements CSSMMImportRule {
-
-
-	public CSSMMImportRuleImpl() {
-		super();
-	}
-
-	public String getType() {
-		return TYPE_IMPORT_RULE;
-	}
-
-	public String getName() {
-		return NAME_NOT_AVAILABLE;
-	}
-
-	/*
-	 * @see CSSMMNodeImpl#canContain(CSSMMNode)
-	 */
-	boolean canContain(CSSMMNode child) {
-		return false;
-	}
-
-	/*
-	 * @see CSSMMNodeImpl#getError()
-	 */
-	short getError() {
-		return MetaModelErrors.NO_ERROR;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodelimpl/CSSMMKeywordImpl.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodelimpl/CSSMMKeywordImpl.java
deleted file mode 100644
index b46042e..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodelimpl/CSSMMKeywordImpl.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.css.core.internal.metamodelimpl;
-
-import org.eclipse.wst.css.core.internal.metamodel.CSSMMKeyword;
-import org.eclipse.wst.css.core.internal.metamodel.CSSMMNode;
-
-class CSSMMKeywordImpl extends CSSMMNodeImpl implements CSSMMKeyword {
-
-	public CSSMMKeywordImpl() {
-		super();
-	}
-
-	public String getType() {
-		return TYPE_KEYWORD;
-	}
-
-	public String getName() {
-		String name = getAttribute(ATTR_NAME);
-		if (name != null) {
-			return name.toLowerCase();
-		}
-		else {
-			return null;
-		}
-	}
-
-	/*
-	 * @see CSSMMNodeImpl#canContain(CSSMMNode)
-	 */
-	boolean canContain(CSSMMNode child) {
-		return false;
-	}
-
-	/*
-	 * @see CSSMMKeyword#getKeywordString()
-	 */
-	public String getKeywordString() {
-		return fValue;
-	}
-
-	/*
-	 * @see Object#toString()
-	 */
-	public String toString() {
-		return getKeywordString();
-	}
-
-	void setKeywordString(String value) {
-		fValue = value;
-	}
-
-	short getError() {
-		if (getName() == null) {
-			return MetaModelErrors.ERROR_NOT_DEFINED;
-		}
-		else if (getKeywordString() == null) {
-			return MetaModelErrors.ERROR_NO_CHILD;
-		}
-		else {
-			return MetaModelErrors.NO_ERROR;
-		}
-	}
-
-
-	private String fValue = null;
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodelimpl/CSSMMMediaRuleImpl.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodelimpl/CSSMMMediaRuleImpl.java
deleted file mode 100644
index 92dec7d..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodelimpl/CSSMMMediaRuleImpl.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.wst.css.core.internal.metamodelimpl;
-
-import org.eclipse.wst.css.core.internal.metamodel.CSSMMMediaRule;
-import org.eclipse.wst.css.core.internal.metamodel.CSSMMNode;
-
-class CSSMMMediaRuleImpl extends CSSMMNodeImpl implements CSSMMMediaRule {
-
-
-	public CSSMMMediaRuleImpl() {
-		super();
-	}
-
-	public String getType() {
-		return TYPE_MEDIA_RULE;
-	}
-
-	public String getName() {
-		return NAME_NOT_AVAILABLE;
-	}
-
-	/*
-	 * @see CSSMMNodeImpl#canContain(CSSMMNode)
-	 */
-	boolean canContain(CSSMMNode child) {
-		return false;
-	}
-
-	short getError() {
-		return MetaModelErrors.NO_ERROR;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodelimpl/CSSMMNodeImpl.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodelimpl/CSSMMNodeImpl.java
deleted file mode 100644
index fb144d3..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodelimpl/CSSMMNodeImpl.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.wst.css.core.internal.metamodelimpl;
-
-import java.util.ArrayList;
-import java.util.Collections;
-import java.util.HashMap;
-import java.util.Iterator;
-import java.util.List;
-import java.util.Map;
-
-import org.eclipse.wst.css.core.internal.metamodel.CSSMMNode;
-
-
-abstract class CSSMMNodeImpl implements CSSMMNode {
-
-	public CSSMMNodeImpl() {
-		super();
-	}
-
-	public abstract String getType();
-
-	public String getDescription() {
-		return fDescription;
-	}
-
-	public String getAttribute(String name) {
-		if (fAttributes == null) {
-			return null;
-		}
-		return (String) fAttributes.get(name);
-	}
-
-	public Iterator getChildNodes() {
-		if (fChildNodes == null) {
-			return Collections.EMPTY_LIST.iterator();
-		}
-		else {
-			return Collections.unmodifiableCollection(fChildNodes).iterator();
-		}
-	}
-
-	public Iterator getDescendants() {
-		List descendants = new ArrayList();
-		Iterator iChild = getChildNodes();
-		while (iChild.hasNext()) {
-			CSSMMNode child = (CSSMMNode) iChild.next();
-			Iterator iDescendant = child.getDescendants();
-			if (iDescendant.hasNext()) {
-				while (iDescendant.hasNext()) {
-					CSSMMNode descendant = (CSSMMNode) iDescendant.next();
-					if (!descendants.contains(descendant)) {
-						descendants.add(descendant);
-					}
-				}
-			}
-			else {
-				if (!descendants.contains(child)) {
-					descendants.add(child);
-				}
-			}
-		}
-		return Collections.unmodifiableCollection(descendants).iterator();
-	}
-
-	void appendChild(CSSMMNode child) {
-		if (child == null) {
-			return;
-		}
-		if (fChildNodes == null) {
-			fChildNodes = new ArrayList();
-		}
-		if (!fChildNodes.contains(child)) {
-			fChildNodes.add(child);
-			((CSSMMNodeImpl) child).fRefCount++;
-		}
-	}
-
-	void removeChild(CSSMMNode child) {
-		if (child == null || fChildNodes == null) {
-			return;
-		}
-		Iterator i = fChildNodes.iterator();
-		while (i.hasNext()) {
-			if (i.next() == child) {
-				i.remove();
-				((CSSMMNodeImpl) child).fRefCount--;
-				return;
-			}
-		}
-	}
-
-	void removeAllChildNodes() {
-		if (fChildNodes == null) {
-			return;
-		}
-		Iterator i = fChildNodes.iterator();
-		while (i.hasNext()) {
-			((CSSMMNodeImpl) i.next()).fRefCount--;
-		}
-		fChildNodes.clear();
-	}
-
-	abstract boolean canContain(CSSMMNode child);
-
-	void initializeAttribute(Map attributes) throws IllegalArgumentException {
-		if (fAttributes == null) {
-			fAttributes = new HashMap();
-		}
-		fAttributes.putAll(attributes);
-		postSetAttribute();
-	}
-
-	void setDescription(String description) {
-		fDescription = description;
-	}
-
-	void postSetAttribute() throws IllegalArgumentException {
-		// default : nop
-	}
-
-	abstract short getError();
-
-	int getChildCount() {
-		return (fChildNodes != null) ? fChildNodes.size() : 0;
-	}
-
-	int getReferenceCount() {
-		return fRefCount;
-	}
-
-
-	private List fChildNodes = null;
-	private String fDescription = null;
-	private Map fAttributes = null;
-	private int fRefCount = 0; // for error check
-
-	static final String ATTR_NAME = "name"; //$NON-NLS-1$
-	static final String NAME_NOT_AVAILABLE = ""; //$NON-NLS-1$
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodelimpl/CSSMMNumberImpl.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodelimpl/CSSMMNumberImpl.java
deleted file mode 100644
index 0f2a9d8..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodelimpl/CSSMMNumberImpl.java
+++ /dev/null
@@ -1,52 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this 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.core.internal.metamodelimpl;
-
-import org.eclipse.wst.css.core.internal.metamodel.CSSMMNode;
-import org.eclipse.wst.css.core.internal.metamodel.CSSMMNumber;
-
-class CSSMMNumberImpl extends CSSMMNodeImpl implements CSSMMNumber {
-
-
-	public CSSMMNumberImpl() {
-		super();
-	}
-
-	public String getType() {
-		return TYPE_NUMBER;
-	}
-
-	public String getName() {
-		String name = getAttribute(ATTR_NAME);
-		if (name != null) {
-			return name.toLowerCase();
-		}
-		else {
-			return null;
-		}
-	}
-
-	/*
-	 * @see CSSMMNodeImpl#canContain(CSSMMNode)
-	 */
-	boolean canContain(CSSMMNode child) {
-		return (child != null && child.getType() == TYPE_UNIT);
-	}
-
-	short getError() {
-		if (getName() == null) {
-			return MetaModelErrors.ERROR_NOT_DEFINED;
-		}
-		else {
-			return MetaModelErrors.NO_ERROR;
-		}
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodelimpl/CSSMMPageRuleImpl.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodelimpl/CSSMMPageRuleImpl.java
deleted file mode 100644
index d793562..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodelimpl/CSSMMPageRuleImpl.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.css.core.internal.metamodelimpl;
-
-import org.eclipse.wst.css.core.internal.metamodel.CSSMMNode;
-import org.eclipse.wst.css.core.internal.metamodel.CSSMMPageRule;
-
-class CSSMMPageRuleImpl extends CSSMMNodeImpl implements CSSMMPageRule {
-
-
-	public CSSMMPageRuleImpl() {
-		super();
-	}
-
-	public String getType() {
-		return TYPE_PAGE_RULE;
-	}
-
-	public String getName() {
-		return NAME_NOT_AVAILABLE;
-	}
-
-	/*
-	 * @see CSSMMNodeImpl#canContain(CSSMMNode)
-	 */
-	boolean canContain(CSSMMNode child) {
-		if (child == null) {
-			return false;
-		}
-		String type = child.getType();
-		return (type == TYPE_PROPERTY || type == TYPE_SELECTOR);
-	}
-
-	short getError() {
-		if (getChildCount() == 0) {
-			return MetaModelErrors.ERROR_NO_CHILD;
-		}
-		else {
-			return MetaModelErrors.NO_ERROR;
-		}
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodelimpl/CSSMMPropertyImpl.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodelimpl/CSSMMPropertyImpl.java
deleted file mode 100644
index 739098b..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodelimpl/CSSMMPropertyImpl.java
+++ /dev/null
@@ -1,76 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this 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.core.internal.metamodelimpl;
-
-import java.util.Iterator;
-
-import org.eclipse.wst.css.core.internal.metamodel.CSSMMNode;
-import org.eclipse.wst.css.core.internal.metamodel.CSSMMProperty;
-
-
-class CSSMMPropertyImpl extends CSSMMNodeImpl implements CSSMMProperty {
-	public CSSMMPropertyImpl() {
-		super();
-	}
-
-	public String getType() {
-		return TYPE_PROPERTY;
-	}
-
-	public String getName() {
-		String name = getAttribute(ATTR_NAME);
-		if (name != null) {
-			return name.toLowerCase();
-		}
-		else {
-			return null;
-		}
-	}
-
-	/*
-	 * @see CSSMMNodeImpl#canContain(CSSMMNode)
-	 */
-	boolean canContain(CSSMMNode child) {
-		if (child == null) {
-			return false;
-		}
-		String type = child.getType();
-		return (type == TYPE_NUMBER || type == TYPE_KEYWORD || type == TYPE_FUNCTION || type == TYPE_CONTAINER || type == TYPE_STRING || type == TYPE_SEPARATOR || type == TYPE_PROPERTY);
-	}
-
-	/*
-	 * @see CSSMMProperty#getCategoryName()
-	 */
-	public String getCategoryName() {
-		return getAttribute(ATTR_CATEGORY);
-	}
-
-	public Iterator getValues() {
-		ValueCollector collector = new ValueCollector();
-		collector.apply(this);
-		return collector.getNodes();
-	}
-
-	short getError() {
-		if (getName() == null) {
-			return MetaModelErrors.ERROR_NOT_DEFINED;
-		}
-		else if (getChildCount() == 0) {
-			return MetaModelErrors.ERROR_NO_CHILD;
-		}
-		else {
-			return MetaModelErrors.NO_ERROR;
-		}
-	}
-
-
-	static final String ATTR_CATEGORY = "category"; //$NON-NLS-1$
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodelimpl/CSSMMPseudoClassImpl.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodelimpl/CSSMMPseudoClassImpl.java
deleted file mode 100644
index b0cab9a..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodelimpl/CSSMMPseudoClassImpl.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.core.internal.metamodelimpl;
-
-class CSSMMPseudoClassImpl extends CSSMMSelectorImpl {
-
-
-	/**
-	 * Constructor for CSSMMPseudoClassImpl.
-	 */
-	public CSSMMPseudoClassImpl() {
-		super();
-	}
-
-	/*
-	 * @see CSSMMSelector#getSelectorType()
-	 */
-	public String getSelectorType() {
-		return TYPE_PSEUDO_CLASS;
-	}
-
-	void setSelectorString(String value) {
-		fValue = ":" + value; //$NON-NLS-1$		
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodelimpl/CSSMMPseudoElementImpl.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodelimpl/CSSMMPseudoElementImpl.java
deleted file mode 100644
index 71e9065..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodelimpl/CSSMMPseudoElementImpl.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.core.internal.metamodelimpl;
-
-public class CSSMMPseudoElementImpl extends CSSMMSelectorImpl {
-
-
-	/**
-	 * Constructor for CSSMMPseudoElementImpl.
-	 */
-	public CSSMMPseudoElementImpl() {
-		super();
-	}
-
-	/*
-	 * @see CSSMMSelector#getSelectorType()
-	 */
-	public String getSelectorType() {
-		return TYPE_PSEUDO_ELEMENT;
-	}
-
-	void setSelectorString(String value) {
-		fValue = ":" + value; //$NON-NLS-1$
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodelimpl/CSSMMSelectorExpressionImpl.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodelimpl/CSSMMSelectorExpressionImpl.java
deleted file mode 100644
index e58be60..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodelimpl/CSSMMSelectorExpressionImpl.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.css.core.internal.metamodelimpl;
-
-import java.util.HashMap;
-import java.util.Map;
-
-
-class CSSMMSelectorExpressionImpl extends CSSMMSelectorImpl {
-
-	public CSSMMSelectorExpressionImpl() {
-		super();
-	}
-
-	/*
-	 * @see CSSMMSelector#getSelectorType()
-	 */
-	public String getSelectorType() {
-		return TYPE_EXPRESSION;
-	}
-
-	void postSetAttribute() throws IllegalArgumentException {
-		super.postSetAttribute();
-		String name = getName();
-		if (name == null) {
-			throw new IllegalArgumentException();
-		}
-
-		Map map = new HashMap();
-		map.put(EXPRESSION_ADJACENT.toLowerCase(), "+"); //$NON-NLS-1$
-		map.put(EXPRESSION_ATTRIBUTE.toLowerCase(), "[]"); //$NON-NLS-1$
-		map.put(EXPRESSION_CHILD.toLowerCase(), ">"); //$NON-NLS-1$
-		map.put(EXPRESSION_DESCENDANT.toLowerCase(), "' '"); //$NON-NLS-1$
-		map.put(EXPRESSION_UNIVERSAL.toLowerCase(), "*"); //$NON-NLS-1$
-
-		fValue = (String) map.get(name.toLowerCase());
-		if (fValue == null) {
-			throw new IllegalArgumentException();
-		}
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodelimpl/CSSMMSelectorImpl.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodelimpl/CSSMMSelectorImpl.java
deleted file mode 100644
index c7a82cf..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodelimpl/CSSMMSelectorImpl.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.wst.css.core.internal.metamodelimpl;
-
-import org.eclipse.wst.css.core.internal.metamodel.CSSMMNode;
-import org.eclipse.wst.css.core.internal.metamodel.CSSMMSelector;
-
-
-abstract class CSSMMSelectorImpl extends CSSMMNodeImpl implements CSSMMSelector {
-
-	/**
-	 * Constructor for CSSMMSelectorImpl.
-	 */
-	public CSSMMSelectorImpl() {
-		super();
-	}
-
-	/*
-	 * @see CSSMMNode#getName()
-	 */
-	public String getName() {
-		String name = getAttribute(ATTR_NAME);
-		if (name != null) {
-			return name.toLowerCase();
-		}
-		else {
-			return null;
-		}
-	}
-
-	/*
-	 * @see CSSMMNode#getType()
-	 */
-	public String getType() {
-		return TYPE_SELECTOR;
-	}
-
-	/*
-	 * @see CSSMMNodeImpl#canContain(CSSMMNode)
-	 */
-	boolean canContain(CSSMMNode child) {
-		return false;
-	}
-
-	/*
-	 * @see CSSMMNodeImpl#getError()
-	 */
-	short getError() {
-		if (getName() == null) {
-			return MetaModelErrors.ERROR_NOT_DEFINED;
-		}
-		else {
-			return MetaModelErrors.NO_ERROR;
-		}
-	}
-
-	/*
-	 * @see CSSMMSelector#getSelectorString()
-	 */
-	public String getSelectorString() {
-		return fValue;
-	}
-
-	/*
-	 * @see Object#toString()
-	 */
-	public String toString() {
-		return getSelectorString();
-	}
-
-
-	protected String fValue = null;
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodelimpl/CSSMMStringImpl.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodelimpl/CSSMMStringImpl.java
deleted file mode 100644
index 143759a..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodelimpl/CSSMMStringImpl.java
+++ /dev/null
@@ -1,86 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this 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.core.internal.metamodelimpl;
-
-import org.eclipse.wst.css.core.internal.metamodel.CSSMMNode;
-import org.eclipse.wst.css.core.internal.metamodel.CSSMMString;
-
-class CSSMMStringImpl extends CSSMMNodeImpl implements CSSMMString {
-
-
-	public CSSMMStringImpl() {
-		super();
-	}
-
-	public String getType() {
-		return TYPE_STRING;
-	}
-
-	public String getName() {
-		String name = getAttribute(ATTR_NAME);
-		if (name != null) {
-			return name.toLowerCase();
-		}
-		else {
-			return null;
-		}
-	}
-
-	/*
-	 * @see CSSMMNodeImpl#canContain(CSSMMNode)
-	 */
-	boolean canContain(CSSMMNode child) {
-		return false;
-	}
-
-	short getError() {
-		if (getName() == null) {
-			return MetaModelErrors.ERROR_NOT_DEFINED;
-		}
-		else {
-			return MetaModelErrors.NO_ERROR;
-		}
-	}
-	/*
-	 * @see CSSMMNodeImpl#postSetAttribute()
-	 */
-	// void postSetAttribute() throws BadInitializationException {
-	// super.postSetAttribute();
-	// String name = getName();
-	// if (name == null) { throw new BadInitializationException(); }
-	//
-	// Map map = new HashMap();
-	// map.put(CSSStringID.S_ANY.toLowerCase(), "<any>"); //$NON-NLS-1$
-	// map.put(CSSStringID.S_COUNTER_IDENTIFIER.toLowerCase(), "<counter>");
-	// //$NON-NLS-1$
-	// map.put(CSSStringID.S_FAMILY_NAME.toLowerCase(), "<family-name>");
-	// //$NON-NLS-1$
-	// map.put(CSSStringID.S_FONT_FACE_NAME.toLowerCase(),
-	// "<font-face-name>"); //$NON-NLS-1$
-	// map.put(CSSStringID.S_PAGE_IDENTIFIER.toLowerCase(),
-	// "<page-identifier>"); //$NON-NLS-1$
-	// map.put(CSSStringID.S_SPECIFIC_VOICE.toLowerCase(),
-	// "<specific-voice>"); //$NON-NLS-1$
-	// map.put(CSSStringID.S_URANGE.toLowerCase(), "<urange>"); //$NON-NLS-1$
-	//
-	// fValue = (String)map.get(name.toLowerCase());
-	// if (fValue == null) { throw new BadInitializationException(); }
-	// }
-	//
-	// /*
-	// * @see Object#toString()
-	// */
-	// public String toString() {
-	// return fValue;
-	// }
-	//
-	// private String fValue = null;
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodelimpl/CSSMMStyleRuleImpl.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodelimpl/CSSMMStyleRuleImpl.java
deleted file mode 100644
index 706cff6..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodelimpl/CSSMMStyleRuleImpl.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.css.core.internal.metamodelimpl;
-
-import org.eclipse.wst.css.core.internal.metamodel.CSSMMNode;
-import org.eclipse.wst.css.core.internal.metamodel.CSSMMStyleRule;
-
-class CSSMMStyleRuleImpl extends CSSMMNodeImpl implements CSSMMStyleRule {
-
-
-	public CSSMMStyleRuleImpl() {
-		super();
-	}
-
-	public String getType() {
-		return TYPE_STYLE_RULE;
-	}
-
-	public String getName() {
-		return NAME_NOT_AVAILABLE;
-	}
-
-	/*
-	 * @see CSSMMNodeImpl#canContain(CSSMMNode)
-	 */
-	boolean canContain(CSSMMNode child) {
-		if (child == null) {
-			return false;
-		}
-		String type = child.getType();
-		return (type == TYPE_PROPERTY || type == TYPE_SELECTOR);
-	}
-
-	short getError() {
-		if (getChildCount() == 0) {
-			return MetaModelErrors.ERROR_NO_CHILD;
-		}
-		else {
-			return MetaModelErrors.NO_ERROR;
-		}
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodelimpl/CSSMMStyleSheetImpl.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodelimpl/CSSMMStyleSheetImpl.java
deleted file mode 100644
index a9de98a..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodelimpl/CSSMMStyleSheetImpl.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.css.core.internal.metamodelimpl;
-
-import org.eclipse.wst.css.core.internal.metamodel.CSSMMNode;
-import org.eclipse.wst.css.core.internal.metamodel.CSSMMStyleSheet;
-
-class CSSMMStyleSheetImpl extends CSSMMNodeImpl implements CSSMMStyleSheet {
-
-
-	public CSSMMStyleSheetImpl() {
-		super();
-	}
-
-	public String getType() {
-		return TYPE_STYLE_SHEET;
-	}
-
-	public String getName() {
-		return NAME_NOT_AVAILABLE;
-	}
-
-	/*
-	 * @see CSSMMNodeImpl#canContain(CSSMMNode)
-	 */
-	boolean canContain(CSSMMNode child) {
-		if (child == null) {
-			return false;
-		}
-		String type = child.getType();
-		return (type == TYPE_CHARSET_RULE || type == TYPE_IMPORT_RULE || type == TYPE_PAGE_RULE || type == TYPE_MEDIA_RULE || type == TYPE_FONT_FACE_RULE || type == TYPE_STYLE_RULE);
-	}
-
-	short getError() {
-		if (getChildCount() == 0) {
-			return MetaModelErrors.ERROR_NO_CHILD;
-		}
-		else {
-			return MetaModelErrors.NO_ERROR;
-		}
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodelimpl/CSSMMUnitImpl.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodelimpl/CSSMMUnitImpl.java
deleted file mode 100644
index 74f3f3e..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodelimpl/CSSMMUnitImpl.java
+++ /dev/null
@@ -1,108 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this 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.core.internal.metamodelimpl;
-
-import org.eclipse.wst.css.core.internal.metamodel.CSSMMNode;
-import org.eclipse.wst.css.core.internal.metamodel.CSSMMUnit;
-
-/**
- * CSSMMUnit : embedded type
- */
-class CSSMMUnitImpl extends CSSMMNodeImpl implements CSSMMUnit {
-
-	public CSSMMUnitImpl() {
-		super();
-	}
-
-	public String getType() {
-		return TYPE_UNIT;
-	}
-
-	public String getName() {
-		String name = getAttribute(ATTR_NAME);
-		if (name != null) {
-			return name.toLowerCase();
-		}
-		else {
-			return null;
-		}
-	}
-
-	/*
-	 * @see CSSMMUnit#getUnitString()
-	 */
-	public String getUnitString() {
-		return fValue;
-	}
-
-	/*
-	 * @see CSSMMNodeImpl#canContain(CSSMMNode)
-	 */
-	boolean canContain(CSSMMNode child) {
-		return false;
-	}
-
-	/*
-	 * @see CSSMMNodeImpl#postSetAttribute()
-	 */
-	// void postSetAttribute() throws BadInitializationException {
-	// super.postSetAttribute();
-	// String name = getName();
-	// if (name == null) { throw new BadInitializationException(); }
-	// Map map = new HashMap();
-	// map.put(CSSUnitID.U_CM.toLowerCase(), "cm");//$NON-NLS-1$
-	// map.put(CSSUnitID.U_DEG.toLowerCase(), "deg");//$NON-NLS-1$
-	// map.put(CSSUnitID.U_EMS.toLowerCase(), "em");//$NON-NLS-1$
-	// map.put(CSSUnitID.U_EXS.toLowerCase(), "ex");//$NON-NLS-1$
-	// map.put(CSSUnitID.U_GRAD.toLowerCase(), "grad");//$NON-NLS-1$
-	// map.put(CSSUnitID.U_HASH.toLowerCase(), "#");//$NON-NLS-1$
-	// map.put(CSSUnitID.U_HZ.toLowerCase(), "Hz");//$NON-NLS-1$
-	// map.put(CSSUnitID.U_IN.toLowerCase(), "in");//$NON-NLS-1$
-	// // map.put(CSSUnitID.U_INTEGER.toLowerCase(),
-	// "(integer)");//$NON-NLS-1$
-	// map.put(CSSUnitID.U_KHZ.toLowerCase(), "kHz");//$NON-NLS-1$
-	// map.put(CSSUnitID.U_MM.toLowerCase(), "mm");//$NON-NLS-1$
-	// map.put(CSSUnitID.U_MS.toLowerCase(), "ms");//$NON-NLS-1$
-	// // map.put(CSSUnitID.U_NUMBER.toLowerCase(), "(number)");//$NON-NLS-1$
-	// map.put(CSSUnitID.U_PC.toLowerCase(), "pc");//$NON-NLS-1$
-	// map.put(CSSUnitID.U_PERCENTAGE.toLowerCase(), "%");//$NON-NLS-1$
-	// map.put(CSSUnitID.U_PT.toLowerCase(), "pt");//$NON-NLS-1$
-	// map.put(CSSUnitID.U_PX.toLowerCase(), "px");//$NON-NLS-1$
-	// map.put(CSSUnitID.U_RAD.toLowerCase(), "rad");//$NON-NLS-1$
-	// map.put(CSSUnitID.U_S.toLowerCase(), "s");//$NON-NLS-1$
-	// fValue = (String)map.get(name.toLowerCase());
-	// if (fValue == null) { throw new BadInitializationException(); }
-	// }
-	/*
-	 * @see Object#toString()
-	 */
-	public String toString() {
-		return getUnitString();
-	}
-
-	void setUnitString(String value) {
-		fValue = value;
-	}
-
-	short getError() {
-		if (getName() == null) {
-			return MetaModelErrors.ERROR_NOT_DEFINED;
-		}
-		else if (getUnitString() == null) {
-			return MetaModelErrors.ERROR_NO_CHILD;
-		}
-		else {
-			return MetaModelErrors.NO_ERROR;
-		}
-	}
-
-	private String fValue = null;
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodelimpl/CSSMetaModelImpl.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodelimpl/CSSMetaModelImpl.java
deleted file mode 100644
index 85725d4..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodelimpl/CSSMetaModelImpl.java
+++ /dev/null
@@ -1,95 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this 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.core.internal.metamodelimpl;
-
-import java.util.ArrayList;
-import java.util.Iterator;
-import java.util.List;
-
-import org.eclipse.wst.css.core.internal.metamodel.CSSMMNode;
-import org.eclipse.wst.css.core.internal.metamodel.CSSMMStyleSheet;
-import org.eclipse.wst.css.core.internal.metamodel.CSSMetaModel;
-
-
-class CSSMetaModelImpl extends CSSMMNodeImpl implements CSSMetaModel {
-	// class CSSMetaModelImpl implements CSSMetaModel {
-	public CSSMetaModelImpl() {
-		super();
-		fNodePool = new NodePool();
-	}
-
-	public String getType() {
-		return TYPE_META_MODEL;
-	}
-
-	public String getName() {
-		return NAME_NOT_AVAILABLE;
-	}
-
-	/*
-	 * @see CSSMMNodeImpl#canContain(CSSMMNode)
-	 */
-	boolean canContain(CSSMMNode child) {
-		if (child == null) {
-			return false;
-		}
-		String type = child.getType();
-		return (type == TYPE_STYLE_SHEET || type == TYPE_CATEGORY);
-	}
-
-	public CSSMMStyleSheet getStyleSheet() {
-		Iterator i = getChildNodes();
-		while (i.hasNext()) {
-			CSSMMNode node = (CSSMMNode) i.next();
-			if (node.getType() == TYPE_STYLE_SHEET) {
-				return (CSSMMStyleSheet) node;
-			}
-		}
-		return null;
-		// return fStyleSheet;
-	}
-
-	public Iterator getCategories() {
-		List categories = new ArrayList();
-		Iterator i = getChildNodes();
-		while (i.hasNext()) {
-			CSSMMNode node = (CSSMMNode) i.next();
-			if (node.getType() == TYPE_CATEGORY) {
-				categories.add(node);
-			}
-		}
-		return categories.iterator();
-	}
-
-	void loadCompleted() {
-		fNodePool = null;
-	}
-
-	// List fCategories = null;
-	/*
-	 * @see CSSMMNodeImpl#isValid()
-	 */
-	short getError() {
-		if (getStyleSheet() != null) {
-			return MetaModelErrors.ERROR_NO_CHILD;
-		}
-		else {
-			return MetaModelErrors.NO_ERROR;
-		}
-	}
-
-	NodePool getNodePool() {
-		return fNodePool;
-	}
-
-
-	private NodePool fNodePool = null;
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodelimpl/CSSProfileImpl.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodelimpl/CSSProfileImpl.java
deleted file mode 100644
index ab81cd7..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodelimpl/CSSProfileImpl.java
+++ /dev/null
@@ -1,158 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this 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.core.internal.metamodelimpl;
-
-
-
-import java.io.IOException;
-import java.io.InputStream;
-import java.net.MalformedURLException;
-import java.net.URL;
-import java.net.URLClassLoader;
-import java.util.Locale;
-import java.util.MissingResourceException;
-import java.util.ResourceBundle;
-
-import org.eclipse.core.runtime.Platform;
-import org.eclipse.wst.css.core.internal.Logger;
-import org.eclipse.wst.css.core.internal.metamodel.CSSMetaModel;
-import org.eclipse.wst.css.core.internal.metamodel.CSSProfile;
-import org.osgi.framework.Bundle;
-
-
-
-class CSSProfileImpl implements CSSProfile {
-
-	/**
-	 * Constructor for CSSMetaModelProfileInfoImpl.
-	 */
-	private CSSProfileImpl() {
-		super();
-	}
-
-	/**
-	 * Constructor for CSSMetaModelProfileInfoImpl.
-	 */
-	public CSSProfileImpl(String id, URL url) {
-		super();
-		fID = id;
-		fURL = url;
-	}
-
-	/*
-	 * @see CSSMetaModelProfileInfo#getProfileID()
-	 */
-	public String getProfileID() {
-		return fID;
-	}
-
-	/*
-	 * @see CSSMetaModelProfileInfo#getProfileName()
-	 */
-	public String getProfileName() {
-		return (fName == null) ? fID : fName;
-	}
-
-	public CSSMetaModel getMetaModel() {
-		if (fMetaModel == null) {
-			try {
-				InputStream input = getProfileURL().openStream();
-				ProfileLoader loader = new ProfileLoader(getResourceBundle(), getLogging());
-				fMetaModel = loader.loadProfile(input);
-			}
-			catch (IOException e) {
-				Logger.logException("Cannot open stream for profile", e); //$NON-NLS-1$
-			}
-		}
-		return fMetaModel;
-	}
-
-	private ResourceBundle getResourceBundle() {
-		ClassLoader targetLoader = null;
-		String pluginID = getOwnerPluginID();
-		if (pluginID != null) {
-			Bundle bundle = Platform.getBundle(pluginID);
-			if (bundle != null) {
-				targetLoader = bundle.getClass().getClassLoader();
-			}
-		}
-		if (targetLoader == null) {
-			targetLoader = this.getClass().getClassLoader();
-		}
-
-		String profileURLString = getProfileURL().toString();
-		int lastSlashPos = profileURLString.lastIndexOf('/');
-		if (1 < lastSlashPos) {
-			String profileURLBase = profileURLString.substring(0, lastSlashPos + 1);
-			try {
-				URL[] urls = new URL[]{new URL(profileURLBase)};
-				targetLoader = URLClassLoader.newInstance(urls, targetLoader);
-			}
-			catch (MalformedURLException e) {
-			}
-		}
-
-		try {
-			return ResourceBundle.getBundle("cssprofile", //$NON-NLS-1$
-						Locale.getDefault(), targetLoader);
-		}
-		catch (MissingResourceException e) {
-			return null;
-		}
-	}
-
-	/*
-	 * @see CSSMetaModelProfileInfo#getProfileURL()
-	 */
-	public URL getProfileURL() {
-		return fURL;
-	}
-
-	void setProfileName(String name) {
-		fName = name;
-	}
-
-	public boolean isDefault() {
-		return fDefault;
-	}
-
-	void setDefault(boolean isDefault) {
-		fDefault = isDefault;
-	}
-
-	public String getOwnerPluginID() {
-		return fOwnerPluginID;
-	}
-
-	void setOwnerPluginID(String pluginID) {
-		fOwnerPluginID = pluginID;
-	}
-
-	/**
-	 * hidden option : logging
-	 */
-	void setLogging(boolean logging) {
-		fLogging = logging;
-	}
-
-	boolean getLogging() {
-		return fLogging;
-	}
-
-
-	String fID = null;
-	String fName = null;
-	URL fURL = null;
-	CSSMetaModel fMetaModel = null;
-	String fOwnerPluginID = null;
-	boolean fDefault = false;
-	boolean fLogging = false;
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodelimpl/CSSProfileTest.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodelimpl/CSSProfileTest.java
deleted file mode 100644
index 6711596..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodelimpl/CSSProfileTest.java
+++ /dev/null
@@ -1,73 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this 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.core.internal.metamodelimpl;
-
-import java.net.MalformedURLException;
-import java.net.URL;
-
-import org.eclipse.wst.css.core.internal.Logger;
-import org.eclipse.wst.css.core.internal.metamodel.CSSMMNode;
-import org.eclipse.wst.css.core.internal.metamodel.CSSMetaModel;
-import org.eclipse.wst.css.core.internal.metamodel.CSSProfile;
-
-
-class CSSProfileTest {
-
-
-	/**
-	 * Test use only
-	 */
-	public static void main(String[] args) {
-		if (args.length == 0)
-			return;
-		CSSMetaModel metamodel = null;
-		try {
-			CSSProfile profile = new CSSProfileImpl("test", new URL(args[0])); //$NON-NLS-1$
-			metamodel = profile.getMetaModel();
-		}
-		catch (MalformedURLException e) {
-			Logger.logException(e);
-		}
-		if (metamodel == null) {
-			return;
-		}
-		/*
-		 * CSSMMTypeCollector collector = new CSSMMTypeCollector();
-		 * collector.apply(metamodel, CSSMMNode.TYPE_PROPERTY); Iterator
-		 * iProperty = collector.getNodes(); while (iProperty.hasNext()) {
-		 * CSSMMNode node = (CSSMMNode)iProperty.next();
-		 * System.out.println("Property " + node.getName() + " can contain:");
-		 * //$NON-NLS-2$ //$NON-NLS-1$ Iterator iValue =
-		 * node.getDescendants(); while (iValue.hasNext()) {
-		 * debugOut((CSSMMNode)iValue.next(), 0, false); } }
-		 */
-		debugOut(metamodel, 0, true);
-	}
-
-	static void debugOut(CSSMMNode node, int depth, boolean recursive) {
-		String type = node.getType();
-		for (int i = 0; i < depth; i++) {
-			System.out.print("\t"); //$NON-NLS-1$
-		}
-		System.out.print("[ " + node.getName() + "(" + type + ") ]"); //$NON-NLS-3$ //$NON-NLS-2$ //$NON-NLS-1$
-		if (type == CSSMMNode.TYPE_UNIT || type == CSSMMNode.TYPE_KEYWORD || type == CSSMMNode.TYPE_FUNCTION || type == CSSMMNode.TYPE_SELECTOR) {
-			System.out.print(" -> " + node.toString()); //$NON-NLS-1$
-		}
-		System.out.println();
-
-		if (recursive) {
-			java.util.Iterator iNode = node.getChildNodes();
-			while (iNode.hasNext()) {
-				debugOut((CSSMMNode) iNode.next(), depth + 1, true);
-			}
-		}
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodelimpl/MetaModelErrors.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodelimpl/MetaModelErrors.java
deleted file mode 100644
index 968c58e..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodelimpl/MetaModelErrors.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.css.core.internal.metamodelimpl;
-
-interface MetaModelErrors {
-
-	static final short NO_ERROR = 0;
-
-	// MASK
-	static final short MASK_WARNING = 0x1000;
-	static final short MASK_ERROR = 0x2000;
-
-	// ERROR
-	static final short ERROR_NOT_DEFINED = MASK_ERROR + 0x01;
-	static final short ERROR_INVALID_NAME = MASK_ERROR + 0x04;
-	static final short ERROR_INVAILD_CHILD = MASK_ERROR + 0x02;
-	static final short ERROR_NO_CHILD = MASK_ERROR + 0x08;
-	// static final short ERROR_NO_ESSENTIAL_CHILD = MASK_ERROR + 0x10
-
-	// WARNING
-	static final short WARNING_HAS_NO_CHILD = MASK_WARNING + 0x01;
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodelimpl/NodePool.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodelimpl/NodePool.java
deleted file mode 100644
index 7d5dd2f..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodelimpl/NodePool.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.core.internal.metamodelimpl;
-
-import java.util.ArrayList;
-import java.util.HashMap;
-import java.util.Iterator;
-import java.util.List;
-import java.util.Map;
-
-import org.eclipse.wst.css.core.internal.Logger;
-
-
-
-class NodePool {
-
-	NodePool() {
-		super();
-		initializeClassNameTable();
-	}
-
-	CSSMMNodeImpl getNode(String tagName, String nodeName) {
-		if (nodeName != null) {
-			nodeName = nodeName.toLowerCase();
-		}
-		String className = (String) classNames.get(tagName);
-		if (className == null) {
-			return null;
-		}
-		Map nodes = (Map) nodeRegistry.get(className);
-		if (nodes == null) {
-			nodes = new HashMap();
-			nodeRegistry.put(className, nodes);
-		}
-		CSSMMNodeImpl node = (CSSMMNodeImpl) nodes.get(nodeName);
-		if (node == null) {
-			node = createNewNode(className);
-			nodes.put(nodeName, node);
-		}
-		return node;
-	}
-
-	private CSSMMNodeImpl createNewNode(String className) {
-		CSSMMNodeImpl node = null;
-		if (className != null) {
-			className = getPackageName() + "." + className; //$NON-NLS-1$
-			try {
-				node = (CSSMMNodeImpl) Class.forName(className).newInstance();
-			}
-			catch (IllegalAccessException e) {
-				Logger.logException(e);
-			}
-			catch (InstantiationException e) {
-				Logger.logException(e);
-			}
-			catch (ClassNotFoundException e) {
-				Logger.logException(e);
-			}
-		}
-		// System.out.println(className + " is Created");
-		return node;
-	}
-
-	/**
-	 * Error check function: find nodes that are not referred by any node
-	 */
-	Iterator getStrayNodes() {
-		List strayNodes = new ArrayList();
-		Iterator iMap = nodeRegistry.values().iterator();
-		while (iMap.hasNext()) {
-			Map nodes = (Map) iMap.next();
-			Iterator iNode = nodes.values().iterator();
-			while (iNode.hasNext()) {
-				CSSMMNodeImpl node = (CSSMMNodeImpl) iNode.next();
-				if (node.getReferenceCount() == 0) {
-					strayNodes.add(node);
-				}
-			}
-		}
-		return strayNodes.iterator();
-	}
-
-	// This class must not be inner class :)
-	private String getPackageName() {
-		if (fPackageName == null) {
-			String className = getClass().getName();
-			int pos = className.lastIndexOf('.');
-			if (0 < pos) {
-				fPackageName = className.substring(0, pos);
-			}
-			else {
-				fPackageName = ""; //$NON-NLS-1$
-			}
-		}
-		return fPackageName;
-	}
-
-	void initializeClassNameTable() {
-		classNames.put(ProfileKeywords.STYLESHEET_DEF, CLASS_STYLE_SHEET);
-		classNames.put(ProfileKeywords.CHARSET_RULE_DEF, CLASS_CHARSET_RULE);
-		classNames.put(ProfileKeywords.CHARSET_RULE, CLASS_CHARSET_RULE);
-		classNames.put(ProfileKeywords.FONTFACE_RULE_DEF, CLASS_FONT_FACE_RULE);
-		classNames.put(ProfileKeywords.FONTFACE_RULE, CLASS_FONT_FACE_RULE);
-		classNames.put(ProfileKeywords.IMPORT_RULE_DEF, CLASS_IMPORT_RULE);
-		classNames.put(ProfileKeywords.IMPORT_RULE, CLASS_IMPORT_RULE);
-		classNames.put(ProfileKeywords.MEDIA_RULE_DEF, CLASS_MEDIA_RULE);
-		classNames.put(ProfileKeywords.MEDIA_RULE, CLASS_MEDIA_RULE);
-		classNames.put(ProfileKeywords.PAGE_RULE_DEF, CLASS_PAGE_RULE);
-		classNames.put(ProfileKeywords.PAGE_RULE, CLASS_PAGE_RULE);
-		classNames.put(ProfileKeywords.STYLE_RULE_DEF, CLASS_STYLE_RULE);
-		classNames.put(ProfileKeywords.STYLE_RULE, CLASS_STYLE_RULE);
-		classNames.put(ProfileKeywords.PROPERTY_DEF, CLASS_PROPERTY);
-		classNames.put(ProfileKeywords.PROPERTY, CLASS_PROPERTY);
-		classNames.put(ProfileKeywords.DESCRIPTOR_DEF, CLASS_DESCRIPTOR);
-		classNames.put(ProfileKeywords.DESCRIPTOR, CLASS_DESCRIPTOR);
-		classNames.put(ProfileKeywords.CONTAINER_DEF, CLASS_CONTAINER);
-		classNames.put(ProfileKeywords.CONTAINER, CLASS_CONTAINER);
-		classNames.put(ProfileKeywords.NUMBER_DEF, CLASS_NUMBER);
-		classNames.put(ProfileKeywords.NUMBER, CLASS_NUMBER);
-		classNames.put(ProfileKeywords.KEYWORD_DEF, CLASS_KEYWORD);
-		classNames.put(ProfileKeywords.KEYWORD, CLASS_KEYWORD);
-		classNames.put(ProfileKeywords.UNIT, CLASS_UNIT);
-		classNames.put(ProfileKeywords.UNIT_DEF, CLASS_UNIT);
-		classNames.put(ProfileKeywords.FUNCTION, CLASS_FUNCTION);
-		classNames.put(ProfileKeywords.FUNCTION_DEF, CLASS_FUNCTION);
-		classNames.put(ProfileKeywords.SELECTOR_EXPRESSION, CLASS_SELECTOR_EXPRESSION);
-		classNames.put(ProfileKeywords.PSEUDO_ELEMENT, CLASS_PSEUDO_ELEMENT);
-		classNames.put(ProfileKeywords.PSEUDO_ELEMENT_DEF, CLASS_PSEUDO_ELEMENT);
-		classNames.put(ProfileKeywords.PSEUDO_CLASS, CLASS_PSEUDO_CLASS);
-		classNames.put(ProfileKeywords.PSEUDO_CLASS_DEF, CLASS_PSEUDO_CLASS);
-		classNames.put(ProfileKeywords.STRING, CLASS_STRING);
-		classNames.put(ProfileKeywords.CATEGORY_DEF, CLASS_CATEGORY);
-	}
-
-
-	private String fPackageName;
-	/*
-	 * Conversion Tables nodeRegistry : class name -> hash of node instances
-	 * classNames : Profile Tag name -> java class name
-	 */
-	private Map nodeRegistry = new HashMap();
-	private Map classNames = new HashMap();
-
-	private final static String CLASS_STYLE_SHEET = "CSSMMStyleSheetImpl"; //$NON-NLS-1$
-	private final static String CLASS_CHARSET_RULE = "CSSMMCharsetRuleImpl"; //$NON-NLS-1$
-	private final static String CLASS_FONT_FACE_RULE = "CSSMMFontFaceRuleImpl"; //$NON-NLS-1$
-	private final static String CLASS_IMPORT_RULE = "CSSMMImportRuleImpl"; //$NON-NLS-1$
-	private final static String CLASS_MEDIA_RULE = "CSSMMMediaRuleImpl"; //$NON-NLS-1$
-	private final static String CLASS_PAGE_RULE = "CSSMMPageRuleImpl"; //$NON-NLS-1$
-	private final static String CLASS_STYLE_RULE = "CSSMMStyleRuleImpl"; //$NON-NLS-1$
-	private final static String CLASS_PROPERTY = "CSSMMPropertyImpl"; //$NON-NLS-1$
-	private final static String CLASS_DESCRIPTOR = "CSSMMDescriptorImpl"; //$NON-NLS-1$
-	private final static String CLASS_CONTAINER = "CSSMMContainerImpl"; //$NON-NLS-1$
-	private final static String CLASS_NUMBER = "CSSMMNumberImpl"; //$NON-NLS-1$
-	private final static String CLASS_KEYWORD = "CSSMMKeywordImpl"; //$NON-NLS-1$
-	private final static String CLASS_UNIT = "CSSMMUnitImpl"; //$NON-NLS-1$
-	private final static String CLASS_FUNCTION = "CSSMMFunctionImpl"; //$NON-NLS-1$
-	private final static String CLASS_STRING = "CSSMMStringImpl"; //$NON-NLS-1$
-	private final static String CLASS_CATEGORY = "CSSMMCategoryImpl"; //$NON-NLS-1$
-	private final static String CLASS_SELECTOR_EXPRESSION = "CSSMMSelectorExpressionImpl"; //$NON-NLS-1$
-	private final static String CLASS_PSEUDO_CLASS = "CSSMMPseudoClassImpl"; //$NON-NLS-1$
-	private final static String CLASS_PSEUDO_ELEMENT = "CSSMMPseudoElementImpl"; //$NON-NLS-1$
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodelimpl/ProfileHandler.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodelimpl/ProfileHandler.java
deleted file mode 100644
index c2b90bd..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodelimpl/ProfileHandler.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.core.internal.metamodelimpl;
-
-import java.io.IOException;
-import java.net.MalformedURLException;
-import java.net.URL;
-import java.util.ArrayList;
-import java.util.HashMap;
-import java.util.Iterator;
-import java.util.Map;
-import java.util.ResourceBundle;
-import java.util.Stack;
-
-import org.eclipse.wst.css.core.internal.Logger;
-import org.eclipse.wst.css.core.internal.metamodel.CSSMMNode;
-import org.eclipse.wst.css.core.internal.metamodel.CSSMMSelector;
-import org.eclipse.wst.css.core.internal.metamodel.CSSProfile;
-import org.eclipse.wst.css.core.internal.metamodel.CSSProfileRegistry;
-import org.xml.sax.Attributes;
-import org.xml.sax.SAXException;
-import org.xml.sax.helpers.DefaultHandler;
-
-
-class ProfileHandler extends DefaultHandler {
-
-	public ProfileHandler(CSSMetaModelImpl metamodel, ResourceBundle resourceBundle, boolean logging) {
-		super();
-		fMetaModel = metamodel;
-		fNodePool = metamodel.getNodePool();
-		fResourceBundle = resourceBundle;
-		fLogging = logging;
-	}
-
-	public ProfileHandler(CSSMetaModelImpl metamodel, ResourceBundle resourceBundle) {
-		super();
-		fMetaModel = metamodel;
-		fNodePool = metamodel.getNodePool();
-		fResourceBundle = resourceBundle;
-		fLogging = false;
-	}
-
-	private String getResourceString(String key) {
-		if (key.equals("%")) { //$NON-NLS-1$
-			return key;
-		}
-		if (!key.startsWith("%")) { //$NON-NLS-1$
-			return key;
-		}
-		if (key.startsWith("%%")) { //$NON-NLS-1$
-			return key.substring(1);
-		}
-
-		if (fResourceBundle != null) {
-			return fResourceBundle.getString(key.substring(1));
-		}
-		else {
-			return key;
-		}
-	}
-
-	public void startDocument() throws SAXException {
-		// System.out.println("startDocument");
-		// fNodeStack.push(metamodel);
-		// fCurrentNode = null;
-	}
-
-	public void endDocument() throws SAXException {
-		new ErrorCorrector().doCorrect(fMetaModel);
-		if (fLogging) {
-			Iterator i = fNodePool.getStrayNodes();
-			while (i.hasNext()) {
-				CSSMMNode node = (CSSMMNode) i.next();
-				String str = "[CSSProfile Warning] " + node.getName(); //$NON-NLS-1$
-				str += "(" + node.getType() + ") is not referred by any node."; //$NON-NLS-1$ //$NON-NLS-2$
-				Logger.log(Logger.WARNING, str);
-				// System.out.println(str);
-			}
-		}
-	}
-
-	public void startElement(String uri, String localName, String qName, Attributes attributes) throws SAXException {
-		TagNode tagNode = null;
-		CSSMMNodeImpl parentNode = null;
-		if (0 < fNodeStack.size()) {
-			tagNode = (TagNode) fNodeStack.peek();
-			parentNode = tagNode.node;
-		}
-
-		CSSMMNodeImpl node = null;
-		if (qName.equals(ProfileKeywords.PROFILE_IMPORT)) { // import
-			String profileName = attributes.getValue(ATTR_NAME_REFERENCE);
-			importProfile(profileName);
-		}
-		else if (isDefinition(qName)) { // node creation
-			String nodeName = attributes.getValue(ATTR_NAME_DEFINITION);
-			node = fNodePool.getNode(qName, nodeName);
-			if (node != null) {
-				String overwrite = attributes.getValue(ATTR_OVERWRITE);
-				if (overwrite == null || overwrite.equals(ATTR_VALUE_OVERWRITE_FALSE)) {
-					node.removeAllChildNodes();
-				}
-				Map attrMap = new HashMap();
-				for (int i = 0; i < attributes.getLength(); i++) {
-					attrMap.put(attributes.getQName(i), attributes.getValue(i));
-				}
-				try {
-					node.initializeAttribute(attrMap);
-				}
-				catch (IllegalArgumentException e) {
-					Logger.logException(e);
-				}
-			}
-		}
-		else if (node == null) { // node reference
-			String nodeName = attributes.getValue(ATTR_NAME_REFERENCE);
-			node = fNodePool.getNode(qName, nodeName);
-		}
-
-		if (node != null) {
-			if (parentNode != null && parentNode.canContain(node)) {
-				String enabled = attributes.getValue(ATTR_ENABLED);
-				if (enabled != null && enabled.equals(ATTR_VALUE_ENABLED_FALSE)) {
-					parentNode.removeChild(node);
-				}
-				else {
-					parentNode.appendChild(node);
-				}
-			}
-			else if (node.getType() == CSSMMNode.TYPE_STYLE_SHEET || node.getType() == CSSMMNode.TYPE_CATEGORY) {
-				fMetaModel.appendChild(node);
-			}
-			else {
-				if (fLogging && parentNode != null) {
-					Logger.log(Logger.ERROR, parentNode.getType() + " cannot contain " + //$NON-NLS-1$
-								node.getType() + " (" + qName + ")"); //$NON-NLS-2$//$NON-NLS-1$
-				}
-			}
-		}
-
-		fNodeStack.push(new TagNode(qName, (node != null) ? node : parentNode));
-	}
-
-	public void endElement(String uri, String localName, String qName) throws SAXException {
-		fNodeStack.pop();
-	}
-
-	public void characters(char[] ch, int start, int length) throws SAXException {
-		TagNode tagNode = (TagNode) fNodeStack.peek();
-		String tagName = tagNode.tag;
-		if (tagName.equals(ProfileKeywords.KEYWORD_VALUE) || tagName.equals(ProfileKeywords.UNIT_VALUE) || tagName.equals(ProfileKeywords.FUNCTION_VALUE) || tagName.equals(ProfileKeywords.SELECTOR_VALUE) || tagName.equals(ProfileKeywords.DESCRIPTION) || tagName.equals(ProfileKeywords.CAPTION)) {
-			StringBuffer buf = new StringBuffer(length);
-			for (int i = 0; i < length; i++) {
-				buf.append(ch[start + i]);
-			}
-			String value = getResourceString(buf.toString().trim());
-			CSSMMNodeImpl node = tagNode.node;
-			if (node != null) {
-				if (node.getType() == CSSMMNode.TYPE_KEYWORD && tagName.equals(ProfileKeywords.KEYWORD_VALUE)) {
-					((CSSMMKeywordImpl) node).setKeywordString(value);
-				}
-				else if (node.getType() == CSSMMNode.TYPE_UNIT && tagName.equals(ProfileKeywords.UNIT_VALUE)) {
-					((CSSMMUnitImpl) node).setUnitString(value);
-				}
-				else if (node.getType() == CSSMMNode.TYPE_FUNCTION && tagName.equals(ProfileKeywords.FUNCTION_VALUE)) {
-					((CSSMMFunctionImpl) node).setFunctionString(value);
-				}
-				else if (node.getType() == CSSMMNode.TYPE_SELECTOR && ((CSSMMSelector) node).getSelectorType() == CSSMMSelector.TYPE_PSEUDO_ELEMENT) {
-					((CSSMMPseudoElementImpl) node).setSelectorString(value);
-				}
-				else if (node.getType() == CSSMMNode.TYPE_SELECTOR && ((CSSMMSelector) node).getSelectorType() == CSSMMSelector.TYPE_PSEUDO_CLASS) {
-					((CSSMMPseudoClassImpl) node).setSelectorString(value);
-				}
-				else if (node.getType() == CSSMMNode.TYPE_CATEGORY && tagName.equals(ProfileKeywords.CAPTION)) {
-					((CSSMMCategoryImpl) node).setCaption(value);
-				}
-				else if (tagName.equals(ProfileKeywords.DESCRIPTION)) {
-					node.setDescription(value);
-				}
-			}
-		}
-	}
-
-	private boolean isDefinition(String tagName) {
-		return (tagName.equals(ProfileKeywords.STYLESHEET_DEF) || tagName.equals(ProfileKeywords.CHARSET_RULE_DEF) || tagName.equals(ProfileKeywords.IMPORT_RULE_DEF) || tagName.equals(ProfileKeywords.PAGE_RULE_DEF) || tagName.equals(ProfileKeywords.MEDIA_RULE_DEF) || tagName.equals(ProfileKeywords.FONTFACE_RULE_DEF) || tagName.equals(ProfileKeywords.STYLE_RULE_DEF) || tagName.equals(ProfileKeywords.KEYWORD_DEF) || tagName.equals(ProfileKeywords.NUMBER_DEF) || tagName.equals(ProfileKeywords.PROPERTY_DEF) || tagName.equals(ProfileKeywords.DESCRIPTOR_DEF) || tagName.equals(ProfileKeywords.CONTAINER_DEF) || tagName.equals(ProfileKeywords.UNIT_DEF) || tagName.equals(ProfileKeywords.FUNCTION_DEF) || tagName.equals(ProfileKeywords.STRING) || tagName.equals(ProfileKeywords.CATEGORY_DEF) || tagName.equals(ProfileKeywords.PSEUDO_CLASS_DEF) || tagName.equals(ProfileKeywords.PSEUDO_ELEMENT_DEF) || tagName.equals(ProfileKeywords.SELECTOR_EXPRESSION) || tagName.equals(ProfileKeywords.SEPARATOR));
-	}
-
-	private void importProfile(String profileName) {
-		URL profileURL = null;
-		CSSProfileRegistry reg = CSSProfileRegistry.getInstance();
-		CSSProfile profile = reg.getProfile(profileName);
-		if (profile != null) {
-			// first: find URL by ID
-			profileURL = profile.getProfileURL();
-		}
-		else {
-			// second: find URL by filename of profile URL
-			Iterator i = reg.getProfiles();
-			while (i.hasNext()) {
-				profile = (CSSProfile) i.next();
-				URL url = profile.getProfileURL();
-				if (url.getFile().endsWith(profileName)) {
-					profileURL = url;
-					break;
-				}
-			}
-		}
-		if (profileURL == null) {
-			// final: it may be url itself
-			try {
-				profileURL = new URL(profileName);
-			}
-			catch (MalformedURLException e) {
-				Logger.logException(e);
-			}
-		}
-		if (profileURL != null) {
-			try {
-				ProfileLoader.loadProfile(fMetaModel, profileURL.openStream(), fResourceBundle, fLogging);
-			}
-			catch (IOException e) {
-				Logger.logException("Cannot open stream for profile", //$NON-NLS-1$
-							e);
-			}
-		}
-	}
-
-	class TagNode {
-
-		String tag = null;
-		CSSMMNodeImpl node = null;
-
-		TagNode(String tag, CSSMMNodeImpl node) {
-			this.tag = tag;
-			this.node = node;
-		}
-	}
-
-	class ErrorCorrector {
-
-		void doCorrect(CSSMMNodeImpl node) {
-			Iterator i = node.getChildNodes();
-			ArrayList errorNodes = new ArrayList();
-			while (i.hasNext()) {
-				CSSMMNodeImpl child = (CSSMMNodeImpl) i.next();
-				doCorrect(child);
-				short error = child.getError();
-				if (error != MetaModelErrors.NO_ERROR) {
-					// node.removeChild(child);
-					errorNodes.add(child);
-
-					String str = "[CSSProfile Error] " + node.getName(); //$NON-NLS-1$
-					str += "(" + node.getType() + ") contains error node: "; //$NON-NLS-1$ //$NON-NLS-2$
-					str += child.getName() + "(" + child.getType() + ")"; //$NON-NLS-1$ //$NON-NLS-2$
-					str += " - error code = " + error; //$NON-NLS-1$
-					if (fLogging) {
-						Logger.log(Logger.ERROR, str);
-						// System.out.println(str);
-					}
-				}
-			}
-			int errorSize = errorNodes.size();
-			if (errorSize > 0) {
-				for (int j = 0; j < errorSize; j++) {
-					CSSMMNodeImpl errorNode = (CSSMMNodeImpl) errorNodes.get(j);
-					node.removeChild(errorNode);
-				}
-			}
-		}
-	}
-
-
-	private CSSMetaModelImpl fMetaModel = null;
-	private NodePool fNodePool = null;
-	private Stack fNodeStack = new Stack();
-	boolean fLogging = false;
-	private ResourceBundle fResourceBundle = null;
-
-	private final static String ATTR_NAME_DEFINITION = "name"; //$NON-NLS-1$
-	private final static String ATTR_NAME_REFERENCE = "name"; //$NON-NLS-1$
-	private final static String ATTR_OVERWRITE = "overwrite"; //$NON-NLS-1$
-	private final static String ATTR_ENABLED = "enabled"; //$NON-NLS-1$
-	private final static String ATTR_VALUE_OVERWRITE_FALSE = "false"; //$NON-NLS-1$
-	private final static String ATTR_VALUE_ENABLED_FALSE = "false"; //$NON-NLS-1$
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodelimpl/ProfileKeywords.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodelimpl/ProfileKeywords.java
deleted file mode 100644
index 468315b..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodelimpl/ProfileKeywords.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.css.core.internal.metamodelimpl;
-
-interface ProfileKeywords {
-
-	final static String CSS_PROFILE = "css-profile"; //$NON-NLS-1$
-	final static String PROFILE_IMPORT = "profile-import"; //$NON-NLS-1$
-	final static String STYLESHEET_DEF = "stylesheet-def"; //$NON-NLS-1$
-	final static String CHARSET_RULE = "charset-rule"; //$NON-NLS-1$
-	final static String IMPORT_RULE = "import-rule"; //$NON-NLS-1$
-	final static String PAGE_RULE = "page-rule"; //$NON-NLS-1$
-	final static String MEDIA_RULE = "media-rule"; //$NON-NLS-1$
-	final static String FONTFACE_RULE = "fontface-rule"; //$NON-NLS-1$
-	final static String STYLE_RULE = "style-rule"; //$NON-NLS-1$
-	final static String CHARSET_RULE_DEF = "charset-rule-def"; //$NON-NLS-1$
-	final static String IMPORT_RULE_DEF = "import-rule-def"; //$NON-NLS-1$
-	final static String PAGE_RULE_DEF = "page-rule-def"; //$NON-NLS-1$
-	final static String MEDIA_RULE_DEF = "media-rule-def"; //$NON-NLS-1$
-	final static String FONTFACE_RULE_DEF = "fontface-rule-def"; //$NON-NLS-1$
-	final static String STYLE_RULE_DEF = "style-rule-def"; //$NON-NLS-1$
-	final static String FUNCTION_DEF = "function-def"; //$NON-NLS-1$
-	final static String FUNCTION_VALUE = "function-value"; //$NON-NLS-1$
-	final static String KEYWORD_DEF = "keyword-def"; //$NON-NLS-1$
-	final static String KEYWORD_VALUE = "keyword-value"; //$NON-NLS-1$
-	final static String DESCRIPTION = "description"; //$NON-NLS-1$
-	final static String NUMBER_DEF = "number-def"; //$NON-NLS-1$
-	final static String UNIT = "unit"; //$NON-NLS-1$
-	final static String UNIT_DEF = "unit-def"; //$NON-NLS-1$
-	final static String UNIT_VALUE = "unit-value"; //$NON-NLS-1$
-	final static String CONTAINER_DEF = "container-def"; //$NON-NLS-1$
-	final static String CATEGORY_DEF = "category-def"; //$NON-NLS-1$
-	final static String CAPTION = "caption"; //$NON-NLS-1$
-	final static String PROPERTY_DEF = "property-def"; //$NON-NLS-1$
-	final static String DESCRIPTOR_DEF = "descriptor-def"; //$NON-NLS-1$
-	final static String SELECTOR_EXPRESSION = "selector-expression"; //$NON-NLS-1$
-	final static String PSEUDO_CLASS = "pseudo-class"; //$NON-NLS-1$
-	final static String PSEUDO_ELEMENT = "pseudo-element"; //$NON-NLS-1$
-	final static String PSEUDO_CLASS_DEF = "pseudo-class-def"; //$NON-NLS-1$
-	final static String PSEUDO_ELEMENT_DEF = "pseudo-element-def"; //$NON-NLS-1$
-	final static String SELECTOR_VALUE = "selector-value"; //$NON-NLS-1$
-	final static String NUMBER = "number"; //$NON-NLS-1$
-	final static String KEYWORD = "keyword"; //$NON-NLS-1$
-	final static String FUNCTION = "function"; //$NON-NLS-1$
-	final static String CONTAINER = "container"; //$NON-NLS-1$
-	final static String STRING = "string"; //$NON-NLS-1$
-	final static String SEPARATOR = "separator"; //$NON-NLS-1$
-	final static String PROPERTY = "property"; //$NON-NLS-1$
-	final static String DESCRIPTOR = "descriptor"; //$NON-NLS-1$
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodelimpl/ProfileLoader.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodelimpl/ProfileLoader.java
deleted file mode 100644
index 18262e1..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodelimpl/ProfileLoader.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.wst.css.core.internal.metamodelimpl;
-
-
-
-import java.io.IOException;
-import java.io.InputStream;
-import java.util.ResourceBundle;
-
-import org.eclipse.wst.css.core.internal.Logger;
-import org.eclipse.wst.css.core.internal.metamodel.CSSMetaModel;
-import org.xml.sax.InputSource;
-import org.xml.sax.SAXException;
-import org.xml.sax.XMLReader;
-
-
-
-class ProfileLoader {
-
-
-	/**
-	 * Constructor for ProfileLoader.
-	 */
-	private ProfileLoader() {
-		super();
-	}
-
-	ProfileLoader(ResourceBundle resourceBundle, boolean logging) {
-		super();
-		fResourceBundle = resourceBundle;
-		fLogging = logging;
-	}
-
-	static void loadProfile(CSSMetaModelImpl metamodel, InputStream input, ResourceBundle resourceBundle, boolean logging) {
-		try {
-			XMLReader xmlReader = XMLReaderUtil.createXMLReader(PARSER_NAME);
-			// XMLReaderFactory.createXMLReader(PARSER_NAME);
-			xmlReader.setContentHandler(new ProfileHandler(metamodel, resourceBundle, logging));
-			xmlReader.parse(new InputSource(input));
-		}
-		catch (IOException e) {
-			Logger.logException(e);
-		}
-		catch (SAXException e) {
-			Logger.logException(e);
-		}
-	}
-
-	CSSMetaModel loadProfile(InputStream input) {
-		if (fMetaModel == null) {
-			fMetaModel = new CSSMetaModelImpl();
-		}
-		loadProfile(fMetaModel, input, fResourceBundle, fLogging);
-		fMetaModel.loadCompleted();
-		return fMetaModel;
-	}
-
-
-	CSSMetaModelImpl fMetaModel = null;
-	private final static String PARSER_NAME = "org.apache.xerces.parsers.SAXParser"; //$NON-NLS-1$
-	private ResourceBundle fResourceBundle = null;
-	private boolean fLogging = false;
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodelimpl/RegistryReader.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodelimpl/RegistryReader.java
deleted file mode 100644
index c328e2c..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodelimpl/RegistryReader.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.core.internal.metamodelimpl;
-
-
-
-import java.net.URL;
-import java.util.HashSet;
-import java.util.Iterator;
-import java.util.Set;
-
-import org.eclipse.core.runtime.IConfigurationElement;
-import org.eclipse.core.runtime.IExtensionPoint;
-import org.eclipse.core.runtime.IExtensionRegistry;
-import org.eclipse.core.runtime.Path;
-import org.eclipse.core.runtime.Platform;
-import org.eclipse.wst.css.core.internal.Logger;
-import org.eclipse.wst.css.core.internal.metamodel.CSSProfile;
-import org.osgi.framework.Bundle;
-
-
-
-public class RegistryReader {
-
-	//
-	private String PLUGIN_ID = "org.eclipse.wst.sse.core"; //$NON-NLS-1$
-	private String EXTENSION_POINT_ID = "cssprofile"; //$NON-NLS-1$
-	private String TAG_NAME = "profile"; //$NON-NLS-1$
-	private String ATT_ID = "id"; //$NON-NLS-1$
-	private String ATT_NAME = "name"; //$NON-NLS-1$
-	private String ATT_URI = "uri"; //$NON-NLS-1$
-	private String ATT_DEFAULT = "default"; //$NON-NLS-1$
-	private String ATT_LOGGING = "logging"; // Hidden Option //$NON-NLS-1$
-
-	/**
-	 * Constructor for CSSMetaModelRegistryReader.
-	 */
-	public RegistryReader() {
-		super();
-	}
-
-	/**
-	 * 
-	 */
-	protected CSSProfile readElement(IConfigurationElement element) {
-		CSSProfileImpl info = null;
-		if (element.getName().equals(TAG_NAME)) {
-			String strID = element.getAttribute(ATT_ID);
-			String strNAME = element.getAttribute(ATT_NAME);
-			String strURI = element.getAttribute(ATT_URI);
-
-			if (strID != null || strURI != null) {
-				Bundle bundle = null;
-				String pluginId = element.getDeclaringExtension().getNamespace();
-				bundle = Platform.getBundle(pluginId);
-				if (bundle != null) {
-					Path path = new Path(strURI);
-					URL url = Platform.find(bundle, path);
-					if (url != null) {
-						try {
-							url = Platform.asLocalURL(url);
-							info = new CSSProfileImpl(strID, url);
-							info.setProfileName(strNAME);
-							info.setDefault((element.getAttribute(ATT_DEFAULT) != null));
-							info.setLogging((element.getAttribute(ATT_LOGGING) != null));
-							info.setOwnerPluginID(pluginId);
-						}
-						catch (java.io.IOException e) {
-							// through
-						}
-					}
-				}
-			}
-
-			if (info == null) {
-				Logger.log(Logger.ERROR, "Error reading CSS Profile: " + strID); //$NON-NLS-1$
-			}
-		}
-		return info;
-	}
-
-	/**
-	 * We simply require an 'add' method, of what ever it is we are to read
-	 * into
-	 */
-	public Iterator enumProfiles() {
-		Set set = new HashSet();
-		IExtensionRegistry registry = Platform.getExtensionRegistry();
-		IExtensionPoint point = registry.getExtensionPoint(PLUGIN_ID, EXTENSION_POINT_ID);
-		if (point != null) {
-			IConfigurationElement[] elements = point.getConfigurationElements();
-			for (int i = 0; i < elements.length; i++) {
-				CSSProfile info = readElement(elements[i]);
-				// null can be returned if there's an error reading the
-				// element
-				if (info != null) {
-					set.add(info);
-				}
-			}
-		}
-		return set.iterator();
-	}
-
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodelimpl/ValueCollector.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodelimpl/ValueCollector.java
deleted file mode 100644
index b42dead..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodelimpl/ValueCollector.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.css.core.internal.metamodelimpl;
-
-import java.util.ArrayList;
-import java.util.Iterator;
-import java.util.List;
-
-import org.eclipse.wst.css.core.internal.metamodel.CSSMMNode;
-import org.eclipse.wst.css.core.internal.metamodel.util.CSSMetaModelTraverser;
-
-
-
-class ValueCollector extends CSSMetaModelTraverser {
-	public void begin(CSSMMNode node) {
-		fNodes = new ArrayList();
-	}
-
-	protected short preNode(CSSMMNode node) {
-		short rc = TRAV_CONT;
-		if (node != null) {
-			String type = node.getType();
-			if (type == CSSMMNode.TYPE_PROPERTY || type == CSSMMNode.TYPE_DESCRIPTOR || type == CSSMMNode.TYPE_CONTAINER) {
-				rc = TRAV_CONT;
-			}
-			else {
-				if (!fNodes.contains(node)) {
-					fNodes.add(node);
-					rc = TRAV_PRUNE;
-				}
-			}
-		}
-		return rc;
-	}
-
-	public Iterator getNodes() {
-		return fNodes.iterator();
-	}
-
-
-	private List fNodes = null;
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodelimpl/XMLReaderUtil.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodelimpl/XMLReaderUtil.java
deleted file mode 100644
index 2e894cd..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodelimpl/XMLReaderUtil.java
+++ /dev/null
@@ -1,38 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this 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.core.internal.metamodelimpl;
-
-
-
-import javax.xml.parsers.FactoryConfigurationError;
-import javax.xml.parsers.ParserConfigurationException;
-import javax.xml.parsers.SAXParserFactory;
-
-import org.eclipse.wst.css.core.internal.Logger;
-import org.xml.sax.SAXException;
-import org.xml.sax.XMLReader;
-
-
-class XMLReaderUtil {
-
-	static public XMLReader createXMLReader(String className) throws SAXException {
-		try {
-			return SAXParserFactory.newInstance().newSAXParser().getXMLReader();
-		}
-		catch (ParserConfigurationException e) {
-			Logger.logException(e);
-		}
-		catch (FactoryConfigurationError e) {
-			Logger.logException(e);
-		}
-		return null;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/modelhandler/CSSModelLoader.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/modelhandler/CSSModelLoader.java
deleted file mode 100644
index 644e7d7..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/modelhandler/CSSModelLoader.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.wst.css.core.internal.modelhandler;
-
-
-import org.eclipse.wst.css.core.internal.document.CSSModelImpl;
-import org.eclipse.wst.css.core.internal.encoding.CSSDocumentLoader;
-import org.eclipse.wst.sse.core.internal.document.IDocumentLoader;
-import org.eclipse.wst.sse.core.internal.model.AbstractModelLoader;
-import org.eclipse.wst.sse.core.internal.provisional.IModelLoader;
-import org.eclipse.wst.sse.core.internal.provisional.IStructuredModel;
-
-
-/**
- * 
- */
-public class CSSModelLoader extends AbstractModelLoader {
-	/**
-	 * CSSLoader constructor comment.
-	 */
-	public CSSModelLoader() {
-		super();
-	}
-
-	/*
-	 * @see IModelLoader#newModel()
-	 */
-	public IStructuredModel newModel() {
-		IStructuredModel model = new CSSModelImpl();
-		// now done in create
-		// model.setStructuredDocument(createNewStructuredDocument());
-		// model.setFactoryRegistry(defaultFactoryRegistry());
-		return model;
-	}
-
-	public IModelLoader newInstance() {
-		return new CSSModelLoader();
-	}
-
-	public IDocumentLoader getDocumentLoader() {
-		if (documentLoaderInstance == null) {
-			documentLoaderInstance = new CSSDocumentLoader();
-		}
-		return documentLoaderInstance;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/modelhandler/ModelHandlerForCSS.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/modelhandler/ModelHandlerForCSS.java
deleted file mode 100644
index 222d816..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/modelhandler/ModelHandlerForCSS.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.css.core.internal.modelhandler;
-
-import org.eclipse.wst.css.core.internal.encoding.CSSDocumentCharsetDetector;
-import org.eclipse.wst.css.core.internal.encoding.CSSDocumentLoader;
-import org.eclipse.wst.sse.core.internal.document.IDocumentCharsetDetector;
-import org.eclipse.wst.sse.core.internal.document.IDocumentLoader;
-import org.eclipse.wst.sse.core.internal.ltk.modelhandler.AbstractModelHandler;
-import org.eclipse.wst.sse.core.internal.ltk.modelhandler.IModelHandler;
-import org.eclipse.wst.sse.core.internal.provisional.IModelLoader;
-
-
-public class ModelHandlerForCSS 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.wst.css.core.csssource"; //$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.css.core.modelhandler"; //$NON-NLS-1$
-
-	public ModelHandlerForCSS() {
-		super();
-		setId(ModelHandlerID);
-		setAssociatedContentTypeId(AssociatedContentTypeID);
-	}
-
-	public IDocumentCharsetDetector getEncodingDetector() {
-		return new CSSDocumentCharsetDetector();
-	}
-
-	public IDocumentLoader getDocumentLoader() {
-		return new CSSDocumentLoader();
-	}
-
-	/*
-	 * @see ContentTypeDescription#getModelLoader()
-	 */
-	public IModelLoader getModelLoader() {
-		return new CSSModelLoader();
-	}
-
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/parser/CSSRegionUtil.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/parser/CSSRegionUtil.java
deleted file mode 100644
index f9ca54f..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/parser/CSSRegionUtil.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.core.internal.parser;
-
-import org.eclipse.wst.css.core.internal.parserz.CSSRegionContexts;
-
-
-public class CSSRegionUtil {
-
-	/**
-	 */
-	public static boolean isDeclarationValueType(String type) {
-		return (type == CSSRegionContexts.CSS_DECLARATION_VALUE_DIMENSION || type == CSSRegionContexts.CSS_DECLARATION_VALUE_FUNCTION || type == CSSRegionContexts.CSS_DECLARATION_VALUE_HASH || type == CSSRegionContexts.CSS_DECLARATION_VALUE_IDENT || type == CSSRegionContexts.CSS_DECLARATION_VALUE_IMPORTANT || type == CSSRegionContexts.CSS_DECLARATION_VALUE_NUMBER || type == CSSRegionContexts.CSS_DECLARATION_VALUE_OPERATOR || type == CSSRegionContexts.CSS_DECLARATION_VALUE_PARENTHESIS_CLOSE || type == CSSRegionContexts.CSS_DECLARATION_VALUE_PERCENTAGE || type == CSSRegionContexts.CSS_DECLARATION_VALUE_S || type == CSSRegionContexts.CSS_DECLARATION_VALUE_STRING || type == CSSRegionContexts.CSS_DECLARATION_VALUE_UNICODE_RANGE || type == CSSRegionContexts.CSS_DECLARATION_VALUE_URI);
-	}
-
-	/**
-	 * these type can be beggining of selector
-	 */
-	public static boolean isSelectorBegginingType(String type) {
-		return (type == CSSRegionContexts.CSS_SELECTOR_ELEMENT_NAME || type == CSSRegionContexts.CSS_SELECTOR_UNIVERSAL || type == CSSRegionContexts.CSS_SELECTOR_PSEUDO || type == CSSRegionContexts.CSS_SELECTOR_CLASS || type == CSSRegionContexts.CSS_SELECTOR_ID || type == CSSRegionContexts.CSS_SELECTOR_ATTRIBUTE_START);
-	}
-
-
-	/**
-	 * 
-	 * @param type
-	 * @return
-	 */
-	public static boolean isDeclarationType(String type) {
-		return (type == CSSRegionContexts.CSS_DECLARATION_PROPERTY || type == CSSRegionContexts.CSS_DECLARATION_SEPARATOR || isDeclarationValueType(type) || type == CSSRegionContexts.CSS_DECLARATION_DELIMITER);
-	}
-
-	/**
-	 * These types consist selector region
-	 * 
-	 * @param type
-	 * @return
-	 */
-	public static boolean isSelectorType(String type) {
-		return (type == CSSRegionContexts.CSS_SELECTOR_ATTRIBUTE_END || type == CSSRegionContexts.CSS_SELECTOR_ATTRIBUTE_NAME || type == CSSRegionContexts.CSS_SELECTOR_ATTRIBUTE_OPERATOR || type == CSSRegionContexts.CSS_SELECTOR_ATTRIBUTE_START || type == CSSRegionContexts.CSS_SELECTOR_ATTRIBUTE_VALUE || type == CSSRegionContexts.CSS_SELECTOR_CLASS || type == CSSRegionContexts.CSS_SELECTOR_COMBINATOR || type == CSSRegionContexts.CSS_SELECTOR_ELEMENT_NAME || type == CSSRegionContexts.CSS_SELECTOR_ID || type == CSSRegionContexts.CSS_SELECTOR_PSEUDO || type == CSSRegionContexts.CSS_SELECTOR_SEPARATOR || type == CSSRegionContexts.CSS_SELECTOR_UNIVERSAL);
-	}
-
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/parser/CSSSourceParser.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/parser/CSSSourceParser.java
deleted file mode 100644
index c4dfa05..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/parser/CSSSourceParser.java
+++ /dev/null
@@ -1,249 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this 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.core.internal.parser;
-
-import java.io.Reader;
-import java.io.StringReader;
-import java.util.ArrayList;
-import java.util.List;
-
-import org.eclipse.wst.css.core.internal.Logger;
-import org.eclipse.wst.css.core.internal.parserz.CSSRegionContexts;
-import org.eclipse.wst.sse.core.internal.ltk.parser.RegionParser;
-import org.eclipse.wst.sse.core.internal.provisional.text.IStructuredDocumentRegion;
-import org.eclipse.wst.sse.core.internal.provisional.text.ITextRegion;
-import org.eclipse.wst.sse.core.internal.provisional.text.ITextRegionList;
-import org.eclipse.wst.sse.core.internal.util.Debug;
-
-
-public class CSSSourceParser implements RegionParser {
-	public static final int MODE_STYLESHEET = 0;
-	public static final int MODE_DECLARATION = 1;
-	public static final int MODE_DECLARATION_VALUE = 2;
-
-	private long fStartTime;
-	private long fStopTime;
-	private CSSTokenizer fTokenizer;
-
-	public void setParserMode(int mode) {
-		int initialState;
-		int bufsize;
-		switch (mode) {
-			case MODE_STYLESHEET :
-				initialState = CSSTokenizer.YYINITIAL;
-				bufsize = CSSTokenizer.BUFFER_SIZE_NORMAL;
-				break;
-			case MODE_DECLARATION :
-				initialState = CSSTokenizer.ST_DECLARATION;
-				bufsize = CSSTokenizer.BUFFER_SIZE_NORMAL;
-				break;
-			case MODE_DECLARATION_VALUE :
-				initialState = CSSTokenizer.ST_DECLARATION_PRE_VALUE;
-				bufsize = CSSTokenizer.BUFFER_SIZE_SMALL;
-				break;
-			default :
-				return;
-		}
-		if (0 < initialState) {
-			CSSTokenizer tokenizer = getTokenizer();
-			tokenizer.setInitialState(initialState);
-			tokenizer.setInitialBufferSize(bufsize);
-		}
-	}
-
-	public IStructuredDocumentRegion getDocumentRegions() {
-		IStructuredDocumentRegion headnode = null;
-		if (headnode == null) {
-			if (Debug.perfTest) {
-				fStartTime = System.currentTimeMillis();
-			}
-			headnode = parseNodes();
-			if (Debug.perfTest) {
-				fStopTime = System.currentTimeMillis();
-				System.out.println(" -- creating nodes of IStructuredDocument -- "); //$NON-NLS-1$
-				System.out.println(" Time parse and init all regions: " + (fStopTime - fStartTime) + " (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;
-	}
-
-	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;
-	}
-
-	public void reset(Reader reader) {
-		primReset();
-		getTokenizer().reset(reader, 0);
-	}
-
-	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);
-	}
-
-	public RegionParser newInstance() {
-		return new CSSSourceParser();
-	}
-
-	private 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;
-		String currentRegionType = null;
-
-		while ((region = getNextRegion()) != null) {
-			type = region.getType();
-			if (mustBeStart(type, currentRegionType) && currentNode != null) {
-				currentNode.setEnded(true);
-			}
-
-			if ((currentNode != null && currentNode.isEnded()) || currentNode == null) {
-				if (currentNode != null && !currentNode.isEnded()) {
-					currentNode.setEnded(true);
-				}
-				lastNode = currentNode;
-				currentNode = createStructuredDocumentRegion(type);
-				currentRegionType = 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());
-
-			if (mustBeEnd(type)) {
-				currentNode.setEnded(true);
-			}
-
-			if (headNode == null && currentNode != null) {
-				headNode = currentNode;
-			}
-		}
-
-		if (currentNode != null && !currentNode.isEnded()) {
-			currentNode.setEnded(true);
-		}
-
-		primReset();
-		return headNode;
-	}
-
-	private IStructuredDocumentRegion createStructuredDocumentRegion(String type) {
-		return CSSStructuredDocumentRegionFactory.createRegion(type);
-	}
-
-	private boolean mustBeStart(String type, String docRegionType) {
-		return ((type == CSSRegionContexts.CSS_DELIMITER || type == CSSRegionContexts.CSS_LBRACE || type == CSSRegionContexts.CSS_RBRACE || type == CSSRegionContexts.CSS_IMPORT || type == CSSRegionContexts.CSS_PAGE || type == CSSRegionContexts.CSS_MEDIA || type == CSSRegionContexts.CSS_FONT_FACE || type == CSSRegionContexts.CSS_CHARSET || type == CSSRegionContexts.CSS_ATKEYWORD || type == CSSRegionContexts.CSS_DECLARATION_PROPERTY || type == CSSRegionContexts.CSS_DECLARATION_DELIMITER) || (docRegionType == CSSRegionContexts.CSS_DECLARATION_PROPERTY && type == CSSRegionContexts.CSS_S) || (!CSSRegionUtil.isSelectorBegginingType(docRegionType) && (type == CSSRegionContexts.CSS_SELECTOR_ELEMENT_NAME || type == CSSRegionContexts.CSS_SELECTOR_UNIVERSAL || type == CSSRegionContexts.CSS_SELECTOR_PSEUDO || type == CSSRegionContexts.CSS_SELECTOR_CLASS || type == CSSRegionContexts.CSS_SELECTOR_ID || type == CSSRegionContexts.CSS_SELECTOR_ATTRIBUTE_START)));
-	}
-
-	private boolean mustBeEnd(String type) {
-		return (type == CSSRegionContexts.CSS_DELIMITER || type == CSSRegionContexts.CSS_LBRACE || type == CSSRegionContexts.CSS_RBRACE || type == CSSRegionContexts.CSS_DECLARATION_DELIMITER);
-	}
-
-	private 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;
-	}
-
-	private void primReset() {
-
-		getTokenizer().reset(new char[0]);
-	}
-
-	private CSSTokenizer getTokenizer() {
-		if (fTokenizer == null) {
-			fTokenizer = new CSSTokenizer();
-		}
-		return fTokenizer;
-	}
-
-
-	/**
-	 * This is a simple utility to count nodes. Used only for debug
-	 * statements.
-	 */
-	private int _countNodes(IStructuredDocumentRegion nodes) {
-		int result = 0;
-		IStructuredDocumentRegion countNode = nodes;
-		while (countNode != null) {
-			result++;
-			countNode = countNode.getNext();
-		}
-		return result;
-	}
-
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/parser/CSSStructuredDocumentRegionFactory.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/parser/CSSStructuredDocumentRegionFactory.java
deleted file mode 100644
index 7e7a240..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/parser/CSSStructuredDocumentRegionFactory.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.css.core.internal.parser;
-
-import org.eclipse.wst.sse.core.internal.provisional.text.IStructuredDocumentRegion;
-import org.eclipse.wst.sse.core.internal.text.BasicStructuredDocumentRegion;
-
-public class CSSStructuredDocumentRegionFactory {
-	public static IStructuredDocumentRegion createRegion(String type) {
-		IStructuredDocumentRegion instance = null;
-		if (type != null) {
-			instance = new BasicStructuredDocumentRegion();
-		}
-		else {
-
-		}
-		return instance;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/parser/CSSTokenizer.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/parser/CSSTokenizer.java
deleted file mode 100644
index 8929283..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/parser/CSSTokenizer.java
+++ /dev/null
@@ -1,1221 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.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 04/10/01 22:53 */
-
-/*nlsXXX*/
-package org.eclipse.wst.css.core.internal.parser;
-
-import java.io.CharArrayReader;
-import java.io.IOException;
-import java.util.ArrayList;
-import java.util.List;
-
-import org.eclipse.wst.css.core.internal.parser.regions.CSSTextRegionFactory;
-import org.eclipse.wst.css.core.internal.parserz.CSSRegionContexts;
-import org.eclipse.wst.css.core.internal.parserz.CSSTextToken;
-import org.eclipse.wst.sse.core.internal.provisional.text.ITextRegion;
-
-
-
-/**
- * This class is a scanner generated by <a
- * href="http://www.informatik.tu-muenchen.de/~kleing/jflex/">JFlex </a> 1.2.2
- */
-public class CSSTokenizer implements CSSRegionContexts {
-
-	/** this character denotes the end of file */
-	final public static int YYEOF = -1;
-
-	/** lexical states */
-	final public static int ST_SELECTOR_ATTRIBUTE_NAME = 11;
-	final public static int ST_IMPORT_DELIMITER = 5;
-	final public static int ST_DECLARATION_PRE_VALUE = 17;
-	final public static int ST_SELECTOR = 0;
-	final public static int ST_CHARSET_DELIMITER = 2;
-	final public static int ST_DECLARATION_VALUE = 18;
-	final public static int ST_PAGE_PSEUDO_PAGE = 8;
-	final public static int ST_IMPORT_URI = 3;
-	final public static int ST_SELECTOR_ATTRIBUTE_END = 14;
-	final public static int ST_SELECTOR_ATTRIBUTE_OPERATOR = 12;
-	final public static int ST_DECLARATION = 15;
-	final public static int ST_PAGE_DELIMITER = 9;
-	final public static int ST_SELECTOR_ATTRIBUTE_VALUE = 13;
-	final public static int ST_MEDIA_MEDIUM = 6;
-	final public static int ST_CHARSET_NAME = 1;
-	final public static int ST_IMPORT_MEDIUM = 4;
-	final public static int ST_DECLARATION_SEPARATOR = 16;
-	final public static int ST_FONT_FACE_DELIMITER = 9;
-	final public static int ST_MEDIA_DELIMITER = 7;
-	final public static int ST_SELECTOR_MODIFIER = 10;
-	final public static int YYINITIAL = 0;
-
-	/**
-	 * Translates characters to character classes
-	 */
-	final private static String yycmap_packed = "\11\0\1\11\1\17\1\0\1\4\1\20\22\0\1\6\1\31\1\10" + "\1\22\1\16\1\72\1\16\1\5\1\26\1\12\1\35\1\14\1\55" + "\1\13\1\15\1\34\12\1\1\62\1\50\1\30\1\67\1\32\1\21" + "\1\36\1\43\1\27\1\40\1\57\1\46\1\64\1\61\1\41\1\51" + "\2\2\1\25\1\52\1\65\1\54\1\53\1\2\1\24\1\44\1\47" + "\1\23\5\2\1\66\1\3\1\71\1\16\1\2\1\16\1\42\1\7" + "\1\37\1\56\1\45\1\63\1\61\1\41\1\51\2\2\1\25\1\52" + "\1\65\1\54\1\53\1\2\1\24\1\44\1\47\1\23\5\2\1\60" + "\1\70\1\33\1\70\1\0\uff80\2";
-
-	/**
-	 * 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, 59, 118, 177, 236, 295, 354, 413, 472, 531, 590, 649, 708, 767, 826, 885, 944, 1003, 1062, 1121, 1180, 1239, 1298, 1357, 1416, 1475, 1534, 1121, 1593, 1121, 1652, 1711, 1121, 1770, 1829, 1888, 1121, 1947, 2006, 2065, 2124, 2183, 2242, 1121, 2301, 2360, 2419, 1121, 1121, 2478, 2537, 2596, 1121, 2655, 2714, 1121, 1121, 2773, 2832, 2891, 1121, 2950, 1121, 3009, 3068, 3127, 3186, 3245, 3304, 3363, 3422, 1121, 1121, 3481, 3540, 3599, 3658, 3717, 1121, 3776, 3835, 3894, 3953, 4012, 4071, 1593, 1121, 4130, 1239, 4189, 4248, 1416, 4307, 1475, 4366, 4425, 4484, 4543, 4602, 4661, 4720, 4779, 4838, 4897, 1770, 4956, 1121, 1829, 5015, 5074, 1947, 5133, 1121, 2006, 5192, 5251, 2183, 5310, 5369, 2360, 5428, 5487, 2537, 5546, 5605, 1121, 2714, 2832, 5664, 5723, 3068, 5782, 3127, 5841, 1121, 3186, 5900, 5959, 3363, 6018, 6077, 6136, 6195, 3894, 1121, 3599, 1121, 6254, 3658, 6313, 1121, 3717, 6372, 6431, 6490, 6549, 3953, 6608, 6667, 6726, 4071, 6785,
-				1121, 4130, 6844, 1121, 6903, 6962, 7021, 7080, 7139, 7198, 7257, 7316, 7375, 7434, 7493, 7552, 1770, 7611, 7670, 1829, 7729, 7788, 1947, 7847, 7906, 2006, 7965, 8024, 8083, 8142, 8201, 8260, 8319, 8378, 3127, 8437, 8496, 3186, 8555, 8614, 8673, 8732, 8791, 3658, 8850, 8909, 3717, 8968, 9027, 9086, 9145, 9204, 9263, 9322, 9381, 1121, 1121, 9440, 9499, 9558, 9617, 9676, 9735, 9794, 9853, 9912, 9971, 10030, 10089, 10148, 10207, 10266, 10325, 10384, 10443, 10502, 10561, 10620, 10679, 10738, 10797, 10856, 10915, 10974, 11033, 11092, 11151, 11210, 11269, 11328, 11387, 11446, 11505, 1121, 11564, 11623, 1121, 11682, 11741, 11800, 11859, 11918, 11977, 12036, 12095, 12154, 12213, 1121, 12272, 12331, 12390, 12449, 12508, 12567, 12626, 12685, 12744, 12803, 12862, 12921, 12980, 13039, 13098, 13157, 13216, 11092, 13275, 13334, 1121, 13393, 13452, 13511, 13570, 13629, 13688, 1121, 13747, 13806, 13865, 13924, 13983, 14042, 14101, 14160, 14219, 12036, 14278, 14337, 14396, 14455,
-				14514, 14573, 14632, 14691, 14750, 14809, 14868, 14927, 14986, 15045, 15104, 15163, 15222, 15281, 15340, 13157, 15399, 15458, 15517, 15576, 15635, 15694, 15753, 1121, 15812, 15871, 15930, 15989, 16048, 16107, 16166, 16225, 16284, 16343, 16402, 16461, 16520, 16579, 16638, 16697, 16756, 16815, 16874, 16933, 16992, 17051, 17110, 17169, 17228, 17287, 17346, 17405, 17464, 17523, 17582, 17641, 17700, 17759, 17818, 17877, 17936, 17995, 18054, 1121, 18113, 18172, 18231, 18290, 18349, 18408, 18467, 18526, 18585, 12154, 18644, 12213, 18703, 18762, 18821, 18880, 18939, 18998, 19057, 19116, 19175, 19234, 13275, 19293, 13334, 19352, 19411, 19470, 19529, 19588, 19647, 19706, 19765, 19824, 19883, 19942, 1121, 20001, 20060, 20119, 20178, 1121, 20237, 20296, 20355, 1121, 20414, 20473, 20532, 20591, 20650, 20709, 20768, 20827, 20886, 20945};
-
-	/**
-	 * The packed transition table of the DFA
-	 */
-	final private static String yy_packed = "\2\24\1\25\1\26\1\27\1\24\1\27\1\25\1\24" + "\1\27\1\24\1\30\1\24\1\31\1\24\2\27\1\24" + "\1\32\3\25\1\24\1\25\1\33\2\24\1\34\1\35" + "\1\36\1\37\11\25\1\24\4\25\1\24\2\25\1\24" + "\1\25\1\40\3\25\1\41\10\24\1\27\1\42\1\27" + "\1\24\1\43\1\27\1\24\1\44\3\24\2\27\7\24" + "\1\33\2\24\1\34\1\35\1\24\1\37\40\24\1\27" + "\1\24\1\27\2\24\1\27\1\24\1\44\3\24\2\27" + "\7\24\1\33\2\24\1\34\1\35\1\24\1\37\11\24" + "\1\45\26\24\1\27\1\46\1\27\1\24\1\47\1\27" + "\1\24\1\44\3\24\2\27\2\24\1\50\4\24\1\33" + "\2\24\1\34\1\35\1\24\1\37\11\24\1\45\24\24" + "\1\51\1\52\1\27\1\24\1\27\1\51\1\24\1\27" + "\1\24\1\53\3\24\2\27\2\24\3\51\1\24\1\51" + "\1\33\2\24\1\34\1\35\1\24\1\37\11\51\1\45" + "\4\51\1\24\2\51\1\24\1\51\1\24\3\51\11\24" + "\1\27\1\24\1\27\2\24\1\27\1\24\1\44\3\24" + "\2\27\7\24\1\33\2\24\1\34\1\35\1\24\1\37" + "\11\24\1\45\4\24\1\54\17\24\1\55\1\56\1\27" + "\1\24\1\27\1\55\1\24\1\27\1\24\1\57\3\24" + "\2\27\2\24\3\55\1\24\1\55\1\33\2\24\1\34"
-				+ "\1\35\1\24\1\37\11\55\1\24\4\55\1\24\2\55" + "\1\24\1\55\1\24\3\55\11\24\1\27\1\24\1\27" + "\2\24\1\27\1\24\1\44\3\24\2\27\7\24\1\33" + "\2\24\1\34\1\35\1\24\1\37\16\24\1\60\2\24" + "\1\61\14\24\1\62\1\63\1\27\1\24\1\27\1\62" + "\1\24\1\27\1\24\1\64\3\24\2\27\2\24\3\62" + "\1\24\1\62\1\33\2\24\1\34\1\35\1\24\1\37" + "\11\62\1\24\4\62\1\24\2\62\1\65\1\62\1\66" + "\3\62\11\24\1\27\1\24\1\27\2\24\1\27\1\24" + "\1\44\3\24\2\27\7\24\1\33\2\24\1\34\1\35" + "\1\24\1\37\21\24\1\65\16\24\1\67\1\24\1\67" + "\2\24\1\67\1\24\1\44\1\70\1\31\1\24\2\67" + "\1\24\1\32\5\24\1\33\1\24\1\70\1\34\1\35" + "\1\36\1\37\16\24\1\71\2\24\1\65\1\24\1\40" + "\3\24\1\41\6\24\1\72\1\73\1\27\1\24\1\27" + "\1\72\1\24\1\27\1\24\1\74\3\24\2\27\2\24" + "\3\72\1\24\1\72\1\33\2\24\1\34\1\35\1\24" + "\1\37\11\72\1\24\4\72\1\24\2\72\1\24\1\72" + "\1\24\3\72\11\24\1\27\1\24\1\27\2\24\1\27" + "\1\24\1\44\3\24\2\27\7\24\1\33\2\24\1\34" + "\1\35\1\24\1\37\30\24\1\75\1\76\1\77\3\24"
-				+ "\1\100\1\101\1\27\1\102\1\27\1\100\1\103\1\27" + "\1\24\1\104\3\24\2\27\2\24\3\100\1\24\1\100" + "\1\33\2\24\1\34\1\35\1\24\1\37\11\100\1\24" + "\4\100\1\24\2\100\1\24\1\100\1\24\3\100\11\24" + "\1\27\1\24\1\27\2\24\1\27\1\24\1\44\3\24" + "\2\27\7\24\1\33\2\24\1\34\1\35\1\24\1\37" + "\32\24\1\77\3\24\1\105\1\106\1\27\1\24\1\27" + "\1\105\1\24\1\27\1\24\1\107\3\24\2\27\2\24" + "\3\105\1\24\1\105\1\33\2\24\1\34\1\35\1\24" + "\1\37\11\105\1\110\4\105\1\24\2\105\1\24\1\105" + "\1\24\3\105\11\24\1\27\1\24\1\27\2\24\1\27" + "\1\24\1\44\3\24\2\27\7\24\1\33\2\24\1\34" + "\1\35\1\24\1\37\11\24\1\110\11\24\1\111\11\24" + "\1\112\1\113\1\114\1\27\1\115\1\27\1\113\1\116" + "\1\27\1\117\1\120\1\121\1\122\1\24\2\27\1\24" + "\1\123\1\124\2\113\1\24\1\113\1\33\1\125\1\24" + "\1\34\1\126\1\24\1\37\11\113\1\110\4\113\1\127" + "\2\113\1\24\1\113\1\24\3\113\6\24\1\112\1\113" + "\1\114\1\130\1\115\1\130\1\113\1\116\1\130\1\117" + "\1\120\1\121\1\122\1\24\2\130\1\24\1\123\1\124"
-				+ "\2\113\1\24\1\113\1\33\1\125\1\24\1\34\1\126" + "\1\24\1\37\11\113\1\110\4\113\1\127\2\113\1\24" + "\1\113\1\24\3\113\5\24\74\0\2\25\1\131\3\0" + "\1\25\3\0\1\25\7\0\3\25\1\0\1\25\7\0" + "\11\25\1\0\4\25\1\0\2\25\1\0\1\25\1\0" + "\3\25\6\0\1\132\2\25\1\0\2\25\1\132\1\25" + "\1\0\5\25\2\0\16\25\1\132\2\25\1\132\2\25" + "\1\132\10\25\1\132\4\25\1\132\7\25\4\0\1\27" + "\1\0\1\27\2\0\1\27\5\0\2\27\53\0\2\25" + "\1\131\3\0\1\25\3\0\1\133\7\0\3\25\1\0" + "\1\25\7\0\11\25\1\0\4\25\1\0\2\25\1\0" + "\1\25\1\0\3\25\6\0\2\134\1\135\3\0\1\134" + "\3\0\1\134\7\0\3\134\1\0\1\134\7\0\11\134" + "\1\0\4\134\1\0\2\134\1\0\1\134\1\0\3\134" + "\6\0\2\136\1\137\3\0\1\136\3\0\1\136\7\0" + "\3\136\1\0\1\136\7\0\11\136\1\0\4\136\1\0" + "\2\136\1\0\1\136\1\0\3\136\36\0\1\140\76\0" + "\1\141\74\0\2\142\10\0\1\143\1\144\1\145\7\0" + "\2\146\10\0\1\147\1\150\3\0\1\147\3\0\1\147" + "\7\0\3\147\1\0\1\147\7\0\11\147\1\0\4\147" + "\1\0\2\147\1\0\1\147\1\0\3\147\6\0\2\151"
-				+ "\1\152\1\0\1\153\11\151\2\0\52\151\1\0\2\154" + "\1\155\1\0\3\154\1\153\6\154\2\0\52\154\13\0" + "\1\156\60\0\2\157\1\160\1\0\1\161\11\157\2\0" + "\52\157\1\0\2\162\1\163\1\0\3\162\1\161\6\162" + "\2\0\52\162\24\0\1\164\47\0\2\51\1\165\3\0" + "\1\51\3\0\1\51\7\0\3\51\1\0\1\51\7\0" + "\11\51\1\0\4\51\1\0\2\51\1\0\1\51\1\0" + "\3\51\6\0\1\166\2\51\1\0\2\51\1\166\1\51" + "\1\0\5\51\2\0\16\51\1\166\2\51\1\166\2\51" + "\1\166\10\51\1\166\4\51\1\166\7\51\1\0\2\51" + "\1\165\3\0\1\51\3\0\1\167\7\0\3\51\1\0" + "\1\51\7\0\11\51\1\0\4\51\1\0\2\51\1\0" + "\1\51\1\0\3\51\6\0\2\55\1\170\3\0\1\55" + "\3\0\1\55\7\0\3\55\1\0\1\55\7\0\11\55" + "\1\0\4\55\1\0\2\55\1\0\1\55\1\0\3\55" + "\6\0\1\171\2\55\1\0\2\55\1\171\1\55\1\0" + "\5\55\2\0\16\55\1\171\2\55\1\171\2\55\1\171" + "\10\55\1\171\4\55\1\171\7\55\1\0\2\55\1\170" + "\3\0\1\55\3\0\1\172\7\0\3\55\1\0\1\55" + "\7\0\11\55\1\0\4\55\1\0\2\55\1\0\1\55" + "\1\0\3\55\6\0\2\62\1\173\3\0\1\62\3\0"
-				+ "\1\62\7\0\3\62\1\0\1\62\7\0\11\62\1\0" + "\4\62\1\0\2\62\1\0\1\62\1\0\3\62\6\0" + "\1\174\2\62\1\0\2\62\1\174\1\62\1\0\5\62" + "\2\0\16\62\1\174\2\62\1\174\2\62\1\174\10\62" + "\1\174\4\62\1\174\7\62\1\0\2\62\1\173\3\0" + "\1\62\3\0\1\175\7\0\3\62\1\0\1\62\7\0" + "\11\62\1\0\4\62\1\0\2\62\1\0\1\62\1\0" + "\3\62\7\0\1\62\1\173\3\0\1\62\3\0\1\62" + "\7\0\3\62\1\0\1\62\7\0\11\62\1\0\4\62" + "\1\0\2\62\1\0\1\62\1\0\3\62\5\0\4\176" + "\1\177\1\176\1\177\2\176\1\177\2\176\1\0\2\176" + "\2\177\11\176\1\0\25\176\1\0\12\176\1\0\2\72" + "\1\200\3\0\1\72\3\0\1\72\7\0\3\72\1\0" + "\1\72\7\0\11\72\1\0\4\72\1\0\2\72\1\0" + "\1\72\1\0\3\72\6\0\1\201\2\72\1\0\2\72" + "\1\201\1\72\1\0\5\72\2\0\16\72\1\201\2\72" + "\1\201\2\72\1\201\10\72\1\201\4\72\1\201\7\72" + "\1\0\2\72\1\200\3\0\1\72\3\0\1\202\7\0" + "\3\72\1\0\1\72\7\0\11\72\1\0\4\72\1\0" + "\2\72\1\0\1\72\1\0\3\72\74\0\1\75\4\0" + "\2\100\1\203\3\0\1\100\3\0\1\100\7\0\3\100" + "\1\0\1\100\7\0\11\100\1\0\4\100\1\0\2\100"
-				+ "\1\0\1\100\1\0\3\100\6\0\1\204\2\100\1\0" + "\2\100\1\204\1\100\1\0\5\100\2\0\16\100\1\204" + "\2\100\1\204\2\100\1\204\10\100\1\204\4\100\1\204" + "\7\100\1\0\2\205\1\206\1\0\1\207\11\205\2\0" + "\52\205\1\0\2\210\1\211\1\0\3\210\1\207\6\210" + "\2\0\52\210\1\0\2\100\1\203\3\0\1\100\3\0" + "\1\212\7\0\3\100\1\0\1\100\7\0\11\100\1\0" + "\4\100\1\0\2\100\1\0\1\100\1\0\3\100\6\0" + "\2\105\1\213\3\0\1\105\3\0\1\105\7\0\3\105" + "\1\0\1\105\7\0\11\105\1\0\4\105\1\0\2\105" + "\1\0\1\105\1\0\3\105\6\0\1\214\2\105\1\0" + "\2\105\1\214\1\105\1\0\5\105\2\0\16\105\1\214" + "\2\105\1\214\2\105\1\214\10\105\1\214\4\105\1\214" + "\7\105\1\0\2\105\1\213\3\0\1\105\3\0\1\215" + "\7\0\3\105\1\0\1\105\7\0\11\105\1\0\4\105" + "\1\0\2\105\1\0\1\105\1\0\3\105\6\0\1\112" + "\1\216\1\217\3\0\1\216\3\0\1\216\1\0\1\220" + "\5\0\3\216\1\0\1\216\7\0\11\216\1\0\4\216" + "\1\0\2\216\1\0\1\216\1\0\3\216\4\0\1\221" + "\1\0\2\113\1\222\3\0\1\113\3\0\1\113\7\0"
-				+ "\3\113\1\223\1\113\7\0\11\113\1\0\4\113\1\0" + "\2\113\1\0\1\113\1\0\3\113\6\0\1\224\2\113" + "\1\0\2\113\1\224\1\113\1\0\5\113\2\0\16\113" + "\1\224\2\113\1\224\2\113\1\224\10\113\1\224\4\113" + "\1\224\7\113\1\0\2\225\1\226\1\0\1\227\11\225" + "\2\0\52\225\1\0\2\230\1\231\1\0\3\230\1\227" + "\6\230\2\0\52\230\1\0\1\232\1\113\1\222\3\0" + "\1\113\3\0\1\233\1\0\1\220\5\0\3\113\1\223" + "\1\113\7\0\11\113\1\0\4\113\1\0\2\113\1\0" + "\1\113\1\0\3\113\6\0\1\112\13\0\1\220\56\0" + "\1\234\72\0\2\235\1\236\3\0\1\235\3\0\1\235" + "\7\0\3\235\1\0\1\235\7\0\11\235\1\0\4\235" + "\1\0\2\235\1\0\1\235\1\0\3\235\6\0\2\113" + "\1\222\3\0\1\113\3\0\1\113\1\237\6\0\1\113" + "\1\240\1\113\1\223\1\113\7\0\11\113\1\0\4\113" + "\1\0\2\113\1\0\1\113\1\0\3\113\11\0\1\241" + "\1\0\1\241\2\0\1\241\5\0\2\241\30\0\1\242" + "\21\0\4\243\1\244\1\243\1\244\2\243\1\244\5\243" + "\2\244\12\243\1\0\14\243\1\0\22\243\1\0\1\245" + "\1\25\1\131\1\25\1\0\1\25\1\245\1\0\1\25"
-				+ "\1\0\1\25\3\0\2\25\2\0\3\25\1\0\1\25" + "\7\0\1\245\2\25\1\245\2\25\1\245\2\25\1\0" + "\4\25\1\0\1\245\1\25\1\0\1\25\1\0\1\245" + "\2\25\6\0\2\25\1\131\3\0\1\25\3\0\1\25" + "\7\0\3\25\1\0\1\25\2\0\1\246\4\0\11\25" + "\1\0\4\25\1\0\2\25\1\0\1\25\1\0\3\25" + "\6\0\1\247\2\134\1\0\2\134\1\247\1\134\1\0" + "\5\134\2\0\16\134\1\247\2\134\1\247\2\134\1\247" + "\10\134\1\247\4\134\1\247\7\134\1\0\1\250\2\136" + "\1\0\2\136\1\250\1\136\1\0\5\136\2\0\16\136" + "\1\250\2\136\1\250\2\136\1\250\10\136\1\250\4\136" + "\1\250\7\136\13\0\1\251\57\0\35\141\1\252\35\141" + "\41\0\1\253\103\0\1\254\65\0\2\255\66\0\2\256" + "\103\0\1\257\17\0\2\147\1\150\3\0\1\147\3\0" + "\1\147\7\0\3\147\1\260\1\147\7\0\11\147\1\0" + "\4\147\1\0\2\147\1\0\1\147\1\0\3\147\6\0" + "\1\261\2\147\1\0\2\147\1\261\1\147\1\0\5\147" + "\2\0\16\147\1\261\2\147\1\261\2\147\1\261\10\147" + "\1\261\4\147\1\261\7\147\1\0\1\262\1\151\1\152" + "\1\151\1\263\1\151\1\262\10\151\1\264\16\151\1\262"
-				+ "\2\151\1\262\2\151\1\262\10\151\1\262\4\151\1\262" + "\7\151\1\0\1\265\1\154\1\155\3\154\1\265\1\266" + "\7\154\1\267\16\154\1\265\2\154\1\265\2\154\1\265" + "\10\154\1\265\4\154\1\265\7\154\32\0\1\246\41\0" + "\1\270\1\157\1\160\1\157\1\271\1\157\1\270\10\157" + "\1\272\16\157\1\270\2\157\1\270\2\157\1\270\10\157" + "\1\270\4\157\1\270\7\157\1\0\1\273\1\162\1\163" + "\3\162\1\273\1\274\7\162\1\275\16\162\1\273\2\162" + "\1\273\2\162\1\273\10\162\1\273\4\162\1\273\7\162" + "\25\0\1\276\46\0\1\277\1\51\1\165\1\51\1\0" + "\1\51\1\277\1\0\1\51\1\0\1\51\3\0\2\51" + "\2\0\3\51\1\0\1\51\7\0\1\277\2\51\1\277" + "\2\51\1\277\2\51\1\0\4\51\1\0\1\277\1\51" + "\1\0\1\51\1\0\1\277\2\51\6\0\2\51\1\165" + "\3\0\1\51\3\0\1\51\7\0\3\51\1\0\1\51" + "\2\0\1\246\4\0\11\51\1\0\4\51\1\0\2\51" + "\1\0\1\51\1\0\3\51\6\0\1\300\1\55\1\170" + "\1\55\1\0\1\55\1\300\1\0\1\55\1\0\1\55" + "\3\0\2\55\2\0\3\55\1\0\1\55\7\0\1\300" + "\2\55\1\300\2\55\1\300\2\55\1\0\4\55\1\0"
-				+ "\1\300\1\55\1\0\1\55\1\0\1\300\2\55\6\0" + "\2\55\1\170\3\0\1\55\3\0\1\55\7\0\3\55" + "\1\0\1\55\2\0\1\246\4\0\11\55\1\0\4\55" + "\1\0\2\55\1\0\1\55\1\0\3\55\6\0\1\301" + "\1\62\1\173\1\62\1\0\1\62\1\301\1\0\1\62" + "\1\0\1\62\3\0\2\62\2\0\3\62\1\0\1\62" + "\7\0\1\301\2\62\1\301\2\62\1\301\2\62\1\0" + "\4\62\1\0\1\301\1\62\1\0\1\62\1\0\1\301" + "\2\62\6\0\2\62\1\173\3\0\1\62\3\0\1\62" + "\7\0\3\62\1\0\1\62\2\0\1\246\4\0\11\62" + "\1\0\4\62\1\0\2\62\1\0\1\62\1\0\3\62" + "\6\0\1\302\1\72\1\200\1\72\1\0\1\72\1\302" + "\1\0\1\72\1\0\1\72\3\0\2\72\2\0\3\72" + "\1\0\1\72\7\0\1\302\2\72\1\302\2\72\1\302" + "\2\72\1\0\4\72\1\0\1\302\1\72\1\0\1\72" + "\1\0\1\302\2\72\6\0\2\72\1\200\3\0\1\72" + "\3\0\1\72\7\0\3\72\1\0\1\72\2\0\1\246" + "\4\0\11\72\1\0\4\72\1\0\2\72\1\0\1\72" + "\1\0\3\72\6\0\1\303\1\100\1\203\1\100\1\0" + "\1\100\1\303\1\0\1\100\1\0\1\100\3\0\2\100" + "\2\0\3\100\1\0\1\100\7\0\1\303\2\100\1\303" + "\2\100\1\303\2\100\1\0\4\100\1\0\1\303\1\100"
-				+ "\1\0\1\100\1\0\1\303\2\100\6\0\1\304\1\205" + "\1\206\1\205\1\305\1\205\1\304\10\205\1\306\16\205" + "\1\304\2\205\1\304\2\205\1\304\10\205\1\304\4\205" + "\1\304\7\205\1\0\1\307\1\210\1\211\3\210\1\307" + "\1\310\7\210\1\311\16\210\1\307\2\210\1\307\2\210" + "\1\307\10\210\1\307\4\210\1\307\7\210\1\0\2\100" + "\1\203\3\0\1\100\3\0\1\100\7\0\3\100\1\0" + "\1\100\2\0\1\246\4\0\11\100\1\0\4\100\1\0" + "\2\100\1\0\1\100\1\0\3\100\6\0\1\312\1\105" + "\1\213\1\105\1\0\1\105\1\312\1\0\1\105\1\0" + "\1\105\3\0\2\105\2\0\3\105\1\0\1\105\7\0" + "\1\312\2\105\1\312\2\105\1\312\2\105\1\0\4\105" + "\1\0\1\312\1\105\1\0\1\105\1\0\1\312\2\105" + "\6\0\2\105\1\213\3\0\1\105\3\0\1\105\7\0" + "\3\105\1\0\1\105\2\0\1\246\4\0\11\105\1\0" + "\4\105\1\0\2\105\1\0\1\105\1\0\3\105\6\0" + "\2\216\1\217\3\0\1\216\3\0\1\216\7\0\3\216" + "\1\0\1\216\7\0\11\216\1\0\4\216\1\0\2\216" + "\1\0\1\216\1\0\3\216\6\0\1\313\2\216\1\0" + "\2\216\1\313\1\216\1\0\5\216\2\0\16\216\1\313"
-				+ "\2\216\1\313\2\216\1\313\10\216\1\313\4\216\1\313" + "\7\216\1\0\1\314\1\113\1\222\1\113\1\0\1\113" + "\1\314\1\0\1\113\1\0\1\113\3\0\2\113\2\0" + "\3\113\1\223\1\113\7\0\1\314\2\113\1\314\2\113" + "\1\314\2\113\1\0\4\113\1\0\1\314\1\113\1\0" + "\1\113\1\0\1\314\2\113\6\0\1\315\1\225\1\226" + "\1\225\1\316\1\225\1\315\10\225\1\317\16\225\1\315" + "\2\225\1\315\2\225\1\315\10\225\1\315\4\225\1\315" + "\7\225\1\0\1\320\1\230\1\231\3\230\1\320\1\321" + "\7\230\1\322\16\230\1\320\2\230\1\320\2\230\1\320" + "\10\230\1\320\4\230\1\320\7\230\1\0\1\232\1\113" + "\1\222\3\0\1\113\3\0\1\113\1\0\1\220\5\0" + "\3\113\1\223\1\113\7\0\11\113\1\0\4\113\1\0" + "\2\113\1\0\1\113\1\0\3\113\4\0\1\221\1\0" + "\2\113\1\222\3\0\1\113\3\0\1\113\7\0\3\113" + "\1\223\1\113\2\0\1\246\4\0\11\113\1\0\4\113" + "\1\0\2\113\1\0\1\113\1\0\3\113\6\0\1\234" + "\1\216\1\217\3\0\1\216\3\0\1\216\7\0\3\216" + "\1\0\1\216\7\0\11\216\1\0\4\216\1\0\2\216" + "\1\0\1\216\1\0\3\216\4\0\1\221\1\0\1\323"
-				+ "\2\235\1\0\2\235\1\323\1\235\1\0\5\235\2\0" + "\16\235\1\323\2\235\1\323\2\235\1\323\10\235\1\323" + "\4\235\1\323\7\235\1\0\1\324\5\0\1\324\11\0" + "\1\324\5\0\1\324\7\0\2\324\1\0\2\324\1\0" + "\2\324\7\0\2\324\3\0\2\324\7\0\2\113\1\222" + "\3\0\1\113\3\0\1\113\7\0\2\113\1\325\1\223" + "\1\113\7\0\11\113\1\0\4\113\1\0\2\113\1\0" + "\1\113\1\0\3\113\57\0\1\326\21\0\1\327\1\25" + "\1\131\1\25\1\0\1\25\1\327\1\0\1\25\1\0" + "\1\25\3\0\2\25\2\0\3\25\1\0\1\25\7\0" + "\1\327\2\25\1\327\2\25\1\327\2\25\1\0\4\25" + "\1\0\1\327\1\25\1\0\1\25\1\0\1\327\2\25" + "\6\0\1\330\1\134\1\135\1\134\1\0\1\134\1\330" + "\1\0\1\134\1\0\1\134\3\0\2\134\2\0\3\134" + "\1\0\1\134\7\0\1\330\2\134\1\330\2\134\1\330" + "\2\134\1\0\4\134\1\0\1\330\1\134\1\0\1\134" + "\1\0\1\330\2\134\6\0\1\331\1\136\1\137\1\136" + "\1\0\1\136\1\331\1\0\1\136\1\0\1\136\3\0" + "\2\136\2\0\3\136\1\0\1\136\7\0\1\331\2\136" + "\1\331\2\136\1\331\2\136\1\0\4\136\1\0\1\331"
-				+ "\1\136\1\0\1\136\1\0\1\331\2\136\20\0\1\332" + "\57\0\34\141\1\333\1\252\35\141\42\0\2\334\102\0" + "\1\335\75\0\2\336\74\0\1\337\76\0\1\340\7\0" + "\1\341\1\342\1\260\1\0\1\260\1\341\1\0\1\260" + "\1\0\1\341\3\0\2\260\2\0\3\341\1\0\1\341" + "\7\0\11\341\1\0\4\341\1\0\2\341\1\0\1\341" + "\1\0\3\341\6\0\1\343\1\147\1\150\1\147\1\0" + "\1\147\1\343\1\0\1\147\1\0\1\147\3\0\2\147" + "\2\0\3\147\1\260\1\147\7\0\1\343\2\147\1\343" + "\2\147\1\343\2\147\1\0\4\147\1\0\1\343\1\147" + "\1\0\1\147\1\0\1\343\2\147\6\0\1\344\1\151" + "\1\152\1\151\1\153\1\151\1\344\27\151\1\344\2\151" + "\1\344\2\151\1\344\10\151\1\344\4\151\1\344\7\151" + "\1\0\2\151\1\152\1\0\1\153\12\151\1\0\52\151" + "\1\0\1\345\1\154\1\155\3\154\1\345\1\153\26\154" + "\1\345\2\154\1\345\2\154\1\345\10\154\1\345\4\154" + "\1\345\7\154\1\0\2\154\1\155\1\0\3\154\1\153" + "\7\154\1\0\52\154\1\0\1\346\1\157\1\160\1\157" + "\1\161\1\157\1\346\27\157\1\346\2\157\1\346\2\157"
-				+ "\1\346\10\157\1\346\4\157\1\346\7\157\1\0\2\157" + "\1\160\1\0\1\161\12\157\1\0\52\157\1\0\1\347" + "\1\162\1\163\3\162\1\347\1\161\26\162\1\347\2\162" + "\1\347\2\162\1\347\10\162\1\347\4\162\1\347\7\162" + "\1\0\2\162\1\163\1\0\3\162\1\161\7\162\1\0" + "\52\162\26\0\1\350\45\0\1\351\1\51\1\165\1\51" + "\1\0\1\51\1\351\1\0\1\51\1\0\1\51\3\0" + "\2\51\2\0\3\51\1\0\1\51\7\0\1\351\2\51" + "\1\351\2\51\1\351\2\51\1\0\4\51\1\0\1\351" + "\1\51\1\0\1\51\1\0\1\351\2\51\6\0\1\352" + "\1\55\1\170\1\55\1\0\1\55\1\352\1\0\1\55" + "\1\0\1\55\3\0\2\55\2\0\3\55\1\0\1\55" + "\7\0\1\352\2\55\1\352\2\55\1\352\2\55\1\0" + "\4\55\1\0\1\352\1\55\1\0\1\55\1\0\1\352" + "\2\55\6\0\1\353\1\62\1\173\1\62\1\0\1\62" + "\1\353\1\0\1\62\1\0\1\62\3\0\2\62\2\0" + "\3\62\1\0\1\62\7\0\1\353\2\62\1\353\2\62" + "\1\353\2\62\1\0\4\62\1\0\1\353\1\62\1\0" + "\1\62\1\0\1\353\2\62\6\0\1\354\1\72\1\200" + "\1\72\1\0\1\72\1\354\1\0\1\72\1\0\1\72" + "\3\0\2\72\2\0\3\72\1\0\1\72\7\0\1\354"
-				+ "\2\72\1\354\2\72\1\354\2\72\1\0\4\72\1\0" + "\1\354\1\72\1\0\1\72\1\0\1\354\2\72\6\0" + "\1\355\1\100\1\203\1\100\1\0\1\100\1\355\1\0" + "\1\100\1\0\1\100\3\0\2\100\2\0\3\100\1\0" + "\1\100\7\0\1\355\2\100\1\355\2\100\1\355\2\100" + "\1\0\4\100\1\0\1\355\1\100\1\0\1\100\1\0" + "\1\355\2\100\6\0\1\356\1\205\1\206\1\205\1\207" + "\1\205\1\356\27\205\1\356\2\205\1\356\2\205\1\356" + "\10\205\1\356\4\205\1\356\7\205\1\0\2\205\1\206" + "\1\0\1\207\12\205\1\0\52\205\1\0\1\357\1\210" + "\1\211\3\210\1\357\1\207\26\210\1\357\2\210\1\357" + "\2\210\1\357\10\210\1\357\4\210\1\357\7\210\1\0" + "\2\210\1\211\1\0\3\210\1\207\7\210\1\0\52\210" + "\1\0\1\360\1\105\1\213\1\105\1\0\1\105\1\360" + "\1\0\1\105\1\0\1\105\3\0\2\105\2\0\3\105" + "\1\0\1\105\7\0\1\360\2\105\1\360\2\105\1\360" + "\2\105\1\0\4\105\1\0\1\360\1\105\1\0\1\105" + "\1\0\1\360\2\105\6\0\1\361\1\216\1\217\1\216" + "\1\0\1\216\1\361\1\0\1\216\1\0\1\216\3\0" + "\2\216\2\0\3\216\1\0\1\216\7\0\1\361\2\216"
-				+ "\1\361\2\216\1\361\2\216\1\0\4\216\1\0\1\361" + "\1\216\1\0\1\216\1\0\1\361\2\216\6\0\1\362" + "\1\113\1\222\1\113\1\0\1\113\1\362\1\0\1\113" + "\1\0\1\113\3\0\2\113\2\0\3\113\1\223\1\113" + "\7\0\1\362\2\113\1\362\2\113\1\362\2\113\1\0" + "\4\113\1\0\1\362\1\113\1\0\1\113\1\0\1\362" + "\2\113\6\0\1\363\1\225\1\226\1\225\1\227\1\225" + "\1\363\27\225\1\363\2\225\1\363\2\225\1\363\10\225" + "\1\363\4\225\1\363\7\225\1\0\2\225\1\226\1\0" + "\1\227\12\225\1\0\52\225\1\0\1\364\1\230\1\231" + "\3\230\1\364\1\227\26\230\1\364\2\230\1\364\2\230" + "\1\364\10\230\1\364\4\230\1\364\7\230\1\0\2\230" + "\1\231\1\0\3\230\1\227\7\230\1\0\52\230\1\0" + "\1\365\1\235\1\236\1\235\1\0\1\235\1\365\1\0" + "\1\235\1\0\1\235\3\0\2\235\2\0\3\235\1\0" + "\1\235\7\0\1\365\2\235\1\365\2\235\1\365\2\235" + "\1\0\4\235\1\0\1\365\1\235\1\0\1\235\1\0" + "\1\365\2\235\6\0\1\366\5\0\1\366\3\0\1\367" + "\5\0\1\366\5\0\1\366\7\0\2\366\1\0\2\366" + "\1\0\2\366\7\0\2\366\3\0\2\366\7\0\2\113"
-				+ "\1\222\3\0\1\113\3\0\1\113\7\0\3\113\1\370" + "\1\113\7\0\11\113\1\0\4\113\1\0\2\113\1\0" + "\1\113\1\0\3\113\60\0\1\371\20\0\1\372\1\25" + "\1\131\1\25\1\0\1\25\1\372\1\0\1\25\1\0" + "\1\25\3\0\2\25\2\0\3\25\1\0\1\25\7\0" + "\1\372\2\25\1\372\2\25\1\372\2\25\1\0\4\25" + "\1\0\1\372\1\25\1\0\1\25\1\0\1\372\2\25" + "\6\0\1\373\1\134\1\135\1\134\1\0\1\134\1\373" + "\1\0\1\134\1\0\1\134\3\0\2\134\2\0\3\134" + "\1\0\1\134\7\0\1\373\2\134\1\373\2\134\1\373" + "\2\134\1\0\4\134\1\0\1\373\1\134\1\0\1\134" + "\1\0\1\373\2\134\6\0\1\374\1\136\1\137\1\136" + "\1\0\1\136\1\374\1\0\1\136\1\0\1\136\3\0" + "\2\136\2\0\3\136\1\0\1\136\7\0\1\374\2\136" + "\1\374\2\136\1\374\2\136\1\0\4\136\1\0\1\374" + "\1\136\1\0\1\136\1\0\1\374\2\136\31\0\1\375" + "\122\0\1\376\67\0\1\377\66\0\2\u0100\73\0\1\u0101" + "\24\0\2\341\1\342\1\u0102\1\0\1\u0102\1\341\1\0" + "\1\u0102\1\u0103\1\341\3\0\2\u0102\2\0\3\341\1\0" + "\1\341\7\0\11\341\1\0\4\341\1\0\2\341\1\0"
-				+ "\1\341\1\0\3\341\6\0\1\u0104\2\341\1\0\2\341" + "\1\u0104\1\341\1\0\5\341\2\0\16\341\1\u0104\2\341" + "\1\u0104\2\341\1\u0104\10\341\1\u0104\4\341\1\u0104\7\341" + "\1\0\1\u0105\1\147\1\150\1\147\1\0\1\147\1\u0105" + "\1\0\1\147\1\0\1\147\3\0\2\147\2\0\3\147" + "\1\260\1\147\7\0\1\u0105\2\147\1\u0105\2\147\1\u0105" + "\2\147\1\0\4\147\1\0\1\u0105\1\147\1\0\1\147" + "\1\0\1\u0105\2\147\6\0\1\u0106\1\151\1\152\1\151" + "\1\153\1\151\1\u0106\27\151\1\u0106\2\151\1\u0106\2\151" + "\1\u0106\10\151\1\u0106\4\151\1\u0106\7\151\1\0\1\u0107" + "\1\154\1\155\3\154\1\u0107\1\153\26\154\1\u0107\2\154" + "\1\u0107\2\154\1\u0107\10\154\1\u0107\4\154\1\u0107\7\154" + "\1\0\1\u0108\1\157\1\160\1\157\1\161\1\157\1\u0108" + "\27\157\1\u0108\2\157\1\u0108\2\157\1\u0108\10\157\1\u0108" + "\4\157\1\u0108\7\157\1\0\1\u0109\1\162\1\163\3\162" + "\1\u0109\1\161\26\162\1\u0109\2\162\1\u0109\2\162\1\u0109" + "\10\162\1\u0109\4\162\1\u0109\7\162\1\0\2\u010a\1\u010b"
-				+ "\1\350\1\u010c\1\350\1\u010a\1\u010d\1\350\1\u010e\4\u010a" + "\2\350\5\u010a\1\0\44\u010a\1\0\1\u010f\1\51\1\165" + "\1\51\1\0\1\51\1\u010f\1\0\1\51\1\0\1\51" + "\3\0\2\51\2\0\3\51\1\0\1\51\7\0\1\u010f" + "\2\51\1\u010f\2\51\1\u010f\2\51\1\0\4\51\1\0" + "\1\u010f\1\51\1\0\1\51\1\0\1\u010f\2\51\6\0" + "\1\u0110\1\55\1\170\1\55\1\0\1\55\1\u0110\1\0" + "\1\55\1\0\1\55\3\0\2\55\2\0\3\55\1\0" + "\1\55\7\0\1\u0110\2\55\1\u0110\2\55\1\u0110\2\55" + "\1\0\4\55\1\0\1\u0110\1\55\1\0\1\55\1\0" + "\1\u0110\2\55\6\0\1\u0111\1\62\1\173\1\62\1\0" + "\1\62\1\u0111\1\0\1\62\1\0\1\62\3\0\2\62" + "\2\0\3\62\1\0\1\62\7\0\1\u0111\2\62\1\u0111" + "\2\62\1\u0111\2\62\1\0\4\62\1\0\1\u0111\1\62" + "\1\0\1\62\1\0\1\u0111\2\62\6\0\1\u0112\1\72" + "\1\200\1\72\1\0\1\72\1\u0112\1\0\1\72\1\0" + "\1\72\3\0\2\72\2\0\3\72\1\0\1\72\7\0" + "\1\u0112\2\72\1\u0112\2\72\1\u0112\2\72\1\0\4\72" + "\1\0\1\u0112\1\72\1\0\1\72\1\0\1\u0112\2\72" + "\6\0\1\u0113\1\100\1\203\1\100\1\0\1\100\1\u0113"
-				+ "\1\0\1\100\1\0\1\100\3\0\2\100\2\0\3\100" + "\1\0\1\100\7\0\1\u0113\2\100\1\u0113\2\100\1\u0113" + "\2\100\1\0\4\100\1\0\1\u0113\1\100\1\0\1\100" + "\1\0\1\u0113\2\100\6\0\1\u0114\1\205\1\206\1\205" + "\1\207\1\205\1\u0114\27\205\1\u0114\2\205\1\u0114\2\205" + "\1\u0114\10\205\1\u0114\4\205\1\u0114\7\205\1\0\1\u0115" + "\1\210\1\211\3\210\1\u0115\1\207\26\210\1\u0115\2\210" + "\1\u0115\2\210\1\u0115\10\210\1\u0115\4\210\1\u0115\7\210" + "\1\0\1\u0116\1\105\1\213\1\105\1\0\1\105\1\u0116" + "\1\0\1\105\1\0\1\105\3\0\2\105\2\0\3\105" + "\1\0\1\105\7\0\1\u0116\2\105\1\u0116\2\105\1\u0116" + "\2\105\1\0\4\105\1\0\1\u0116\1\105\1\0\1\105" + "\1\0\1\u0116\2\105\6\0\1\u0117\1\216\1\217\1\216" + "\1\0\1\216\1\u0117\1\0\1\216\1\0\1\216\3\0" + "\2\216\2\0\3\216\1\0\1\216\7\0\1\u0117\2\216" + "\1\u0117\2\216\1\u0117\2\216\1\0\4\216\1\0\1\u0117" + "\1\216\1\0\1\216\1\0\1\u0117\2\216\6\0\1\u0118" + "\1\113\1\222\1\113\1\0\1\113\1\u0118\1\0\1\113"
-				+ "\1\0\1\113\3\0\2\113\2\0\3\113\1\223\1\113" + "\7\0\1\u0118\2\113\1\u0118\2\113\1\u0118\2\113\1\0" + "\4\113\1\0\1\u0118\1\113\1\0\1\113\1\0\1\u0118" + "\2\113\6\0\1\u0119\1\225\1\226\1\225\1\227\1\225" + "\1\u0119\27\225\1\u0119\2\225\1\u0119\2\225\1\u0119\10\225" + "\1\u0119\4\225\1\u0119\7\225\1\0\1\u011a\1\230\1\231" + "\3\230\1\u011a\1\227\26\230\1\u011a\2\230\1\u011a\2\230" + "\1\u011a\10\230\1\u011a\4\230\1\u011a\7\230\1\0\1\u011b" + "\1\235\1\236\1\235\1\0\1\235\1\u011b\1\0\1\235" + "\1\0\1\235\3\0\2\235\2\0\3\235\1\0\1\235" + "\7\0\1\u011b\2\235\1\u011b\2\235\1\u011b\2\235\1\0" + "\4\235\1\0\1\u011b\1\235\1\0\1\235\1\0\1\u011b" + "\2\235\6\0\1\u011c\5\0\1\u011c\3\0\1\367\5\0" + "\1\u011c\5\0\1\u011c\7\0\2\u011c\1\0\2\u011c\1\0" + "\2\u011c\7\0\2\u011c\3\0\2\u011c\7\0\1\u011d\5\0" + "\1\u011d\11\0\1\u011d\5\0\1\u011d\7\0\2\u011d\1\0" + "\2\u011d\1\0\2\u011d\7\0\2\u011d\3\0\2\u011d\7\0" + "\2\u011e\1\u011f\1\u0120\1\u0121\1\u0120\1\u011e\1\u0122\1\u0120"
-				+ "\1\u0123\4\u011e\2\u0120\5\u011e\1\0\44\u011e\54\0\1\u0124" + "\17\0\1\u0125\1\25\1\131\1\25\1\0\1\25\1\u0125" + "\1\0\1\25\1\0\1\25\3\0\2\25\2\0\3\25" + "\1\0\1\25\7\0\1\u0125\2\25\1\u0125\2\25\1\u0125" + "\2\25\1\0\4\25\1\0\1\u0125\1\25\1\0\1\25" + "\1\0\1\u0125\2\25\6\0\1\u0126\1\134\1\135\1\134" + "\1\0\1\134\1\u0126\1\0\1\134\1\0\1\134\3\0" + "\2\134\2\0\3\134\1\0\1\134\7\0\1\u0126\2\134" + "\1\u0126\2\134\1\u0126\2\134\1\0\4\134\1\0\1\u0126" + "\1\134\1\0\1\134\1\0\1\u0126\2\134\6\0\1\u0127" + "\1\136\1\137\1\136\1\0\1\136\1\u0127\1\0\1\136" + "\1\0\1\136\3\0\2\136\2\0\3\136\1\0\1\136" + "\7\0\1\u0127\2\136\1\u0127\2\136\1\u0127\2\136\1\0" + "\4\136\1\0\1\u0127\1\136\1\0\1\136\1\0\1\u0127" + "\2\136\51\0\1\u0128\52\0\1\u0129\110\0\2\u012a\42\0" + "\1\u012b\63\0\1\u0102\1\0\1\u0102\2\0\1\u0102\1\u0103" + "\4\0\2\u0102\53\0\1\u012c\1\341\1\342\1\341\1\0" + "\1\341\1\u012c\1\0\1\341\1\u0103\1\341\3\0\2\341" + "\2\0\3\341\1\0\1\341\7\0\1\u012c\2\341\1\u012c"
-				+ "\2\341\1\u012c\2\341\1\0\4\341\1\0\1\u012c\1\341" + "\1\0\1\341\1\0\1\u012c\2\341\6\0\1\u012d\1\147" + "\1\150\1\147\1\0\1\147\1\u012d\1\0\1\147\1\0" + "\1\147\3\0\2\147\2\0\3\147\1\260\1\147\7\0" + "\1\u012d\2\147\1\u012d\2\147\1\u012d\2\147\1\0\4\147" + "\1\0\1\u012d\1\147\1\0\1\147\1\0\1\u012d\2\147" + "\6\0\1\u012e\1\151\1\152\1\151\1\153\1\151\1\u012e" + "\27\151\1\u012e\2\151\1\u012e\2\151\1\u012e\10\151\1\u012e" + "\4\151\1\u012e\7\151\1\0\1\u012f\1\154\1\155\3\154" + "\1\u012f\1\153\26\154\1\u012f\2\154\1\u012f\2\154\1\u012f" + "\10\154\1\u012f\4\154\1\u012f\7\154\1\0\1\u0130\1\157" + "\1\160\1\157\1\161\1\157\1\u0130\27\157\1\u0130\2\157" + "\1\u0130\2\157\1\u0130\10\157\1\u0130\4\157\1\u0130\7\157" + "\1\0\1\u0131\1\162\1\163\3\162\1\u0131\1\161\26\162" + "\1\u0131\2\162\1\u0131\2\162\1\u0131\10\162\1\u0131\4\162" + "\1\u0131\7\162\1\0\2\u010a\1\u010b\1\u0132\1\0\2\u010a" + "\1\0\1\u0132\1\u010e\4\u010a\2\u0132\5\u010a\1\0\44\u010a"
-				+ "\1\0\1\u0133\1\u010a\1\u010b\1\u0132\2\u010a\1\u0133\1\u010a" + "\1\u0132\1\u0134\4\u010a\2\u0132\16\u010a\1\u0133\2\u010a\1\u0133" + "\2\u010a\1\u0133\10\u010a\1\u0133\4\u010a\1\u0133\7\u010a\1\0" + "\2\u010c\1\u0135\1\0\1\u0132\11\u010c\2\0\52\u010c\1\0" + "\2\u010d\1\u0136\1\0\3\u010d\1\u0132\6\u010d\2\0\52\u010d" + "\1\0\1\u0137\1\51\1\165\1\51\1\0\1\51\1\u0137" + "\1\0\1\51\1\0\1\51\3\0\2\51\2\0\3\51" + "\1\0\1\51\7\0\1\u0137\2\51\1\u0137\2\51\1\u0137" + "\2\51\1\0\4\51\1\0\1\u0137\1\51\1\0\1\51" + "\1\0\1\u0137\2\51\6\0\1\u0138\1\55\1\170\1\55" + "\1\0\1\55\1\u0138\1\0\1\55\1\0\1\55\3\0" + "\2\55\2\0\3\55\1\0\1\55\7\0\1\u0138\2\55" + "\1\u0138\2\55\1\u0138\2\55\1\0\4\55\1\0\1\u0138" + "\1\55\1\0\1\55\1\0\1\u0138\2\55\6\0\1\u0139" + "\1\62\1\173\1\62\1\0\1\62\1\u0139\1\0\1\62" + "\1\0\1\62\3\0\2\62\2\0\3\62\1\0\1\62" + "\7\0\1\u0139\2\62\1\u0139\2\62\1\u0139\2\62\1\0" + "\4\62\1\0\1\u0139\1\62\1\0\1\62\1\0\1\u0139"
-				+ "\2\62\6\0\1\u013a\1\72\1\200\1\72\1\0\1\72" + "\1\u013a\1\0\1\72\1\0\1\72\3\0\2\72\2\0" + "\3\72\1\0\1\72\7\0\1\u013a\2\72\1\u013a\2\72" + "\1\u013a\2\72\1\0\4\72\1\0\1\u013a\1\72\1\0" + "\1\72\1\0\1\u013a\2\72\6\0\1\u013b\1\100\1\203" + "\1\100\1\0\1\100\1\u013b\1\0\1\100\1\0\1\100" + "\3\0\2\100\2\0\3\100\1\0\1\100\7\0\1\u013b" + "\2\100\1\u013b\2\100\1\u013b\2\100\1\0\4\100\1\0" + "\1\u013b\1\100\1\0\1\100\1\0\1\u013b\2\100\6\0" + "\1\u013c\1\205\1\206\1\205\1\207\1\205\1\u013c\27\205" + "\1\u013c\2\205\1\u013c\2\205\1\u013c\10\205\1\u013c\4\205" + "\1\u013c\7\205\1\0\1\u013d\1\210\1\211\3\210\1\u013d" + "\1\207\26\210\1\u013d\2\210\1\u013d\2\210\1\u013d\10\210" + "\1\u013d\4\210\1\u013d\7\210\1\0\1\u013e\1\105\1\213" + "\1\105\1\0\1\105\1\u013e\1\0\1\105\1\0\1\105" + "\3\0\2\105\2\0\3\105\1\0\1\105\7\0\1\u013e" + "\2\105\1\u013e\2\105\1\u013e\2\105\1\0\4\105\1\0" + "\1\u013e\1\105\1\0\1\105\1\0\1\u013e\2\105\6\0"
-				+ "\1\u013f\1\216\1\217\1\216\1\0\1\216\1\u013f\1\0" + "\1\216\1\0\1\216\3\0\2\216\2\0\3\216\1\0" + "\1\216\7\0\1\u013f\2\216\1\u013f\2\216\1\u013f\2\216" + "\1\0\4\216\1\0\1\u013f\1\216\1\0\1\216\1\0" + "\1\u013f\2\216\6\0\1\u0140\1\113\1\222\1\113\1\0" + "\1\113\1\u0140\1\0\1\113\1\0\1\113\3\0\2\113" + "\2\0\3\113\1\223\1\113\7\0\1\u0140\2\113\1\u0140" + "\2\113\1\u0140\2\113\1\0\4\113\1\0\1\u0140\1\113" + "\1\0\1\113\1\0\1\u0140\2\113\6\0\1\u0141\1\225" + "\1\226\1\225\1\227\1\225\1\u0141\27\225\1\u0141\2\225" + "\1\u0141\2\225\1\u0141\10\225\1\u0141\4\225\1\u0141\7\225" + "\1\0\1\u0142\1\230\1\231\3\230\1\u0142\1\227\26\230" + "\1\u0142\2\230\1\u0142\2\230\1\u0142\10\230\1\u0142\4\230" + "\1\u0142\7\230\1\0\1\u0143\1\235\1\236\1\235\1\0" + "\1\235\1\u0143\1\0\1\235\1\0\1\235\3\0\2\235" + "\2\0\3\235\1\0\1\235\7\0\1\u0143\2\235\1\u0143" + "\2\235\1\u0143\2\235\1\0\4\235\1\0\1\u0143\1\235" + "\1\0\1\235\1\0\1\u0143\2\235\6\0\1\u0144\5\0"
-				+ "\1\u0144\3\0\1\367\5\0\1\u0144\5\0\1\u0144\7\0" + "\2\u0144\1\0\2\u0144\1\0\2\u0144\7\0\2\u0144\3\0" + "\2\u0144\7\0\1\u0145\5\0\1\u0145\11\0\1\u0145\5\0" + "\1\u0145\7\0\2\u0145\1\0\2\u0145\1\0\2\u0145\7\0" + "\2\u0145\3\0\2\u0145\7\0\2\u011e\1\u011f\1\u0146\1\0" + "\2\u011e\1\0\1\u0146\1\u0123\4\u011e\2\u0146\5\u011e\1\0" + "\44\u011e\1\0\1\u0147\1\u011e\1\u011f\1\u0146\2\u011e\1\u0147" + "\1\u011e\1\u0146\1\u0148\4\u011e\2\u0146\16\u011e\1\u0147\2\u011e" + "\1\u0147\2\u011e\1\u0147\10\u011e\1\u0147\4\u011e\1\u0147\7\u011e" + "\1\0\2\u0121\1\u0149\1\0\1\u0146\11\u0121\2\0\52\u0121" + "\1\0\2\u0122\1\u014a\1\0\3\u0122\1\u0146\6\u0122\2\0" + "\52\u0122\24\0\1\u014b\47\0\1\u014c\1\25\1\131\1\25" + "\1\0\1\25\1\u014c\1\0\1\25\1\0\1\25\3\0" + "\2\25\2\0\3\25\1\0\1\25\7\0\1\u014c\2\25" + "\1\u014c\2\25\1\u014c\2\25\1\0\4\25\1\0\1\u014c" + "\1\25\1\0\1\25\1\0\1\u014c\2\25\6\0\1\u014d" + "\1\134\1\135\1\134\1\0\1\134\1\u014d\1\0\1\134"
-				+ "\1\0\1\134\3\0\2\134\2\0\3\134\1\0\1\134" + "\7\0\1\u014d\2\134\1\u014d\2\134\1\u014d\2\134\1\0" + "\4\134\1\0\1\u014d\1\134\1\0\1\134\1\0\1\u014d" + "\2\134\6\0\1\u014e\1\136\1\137\1\136\1\0\1\136" + "\1\u014e\1\0\1\136\1\0\1\136\3\0\2\136\2\0" + "\3\136\1\0\1\136\7\0\1\u014e\2\136\1\u014e\2\136" + "\1\u014e\2\136\1\0\4\136\1\0\1\u014e\1\136\1\0" + "\1\136\1\0\1\u014e\2\136\52\0\2\u014f\73\0\1\u0150" + "\106\0\2\u0151\7\0\1\u0152\1\341\1\342\1\341\1\0" + "\1\341\1\u0152\1\0\1\341\1\u0103\1\341\3\0\2\341" + "\2\0\3\341\1\0\1\341\7\0\1\u0152\2\341\1\u0152" + "\2\341\1\u0152\2\341\1\0\4\341\1\0\1\u0152\1\341" + "\1\0\1\341\1\0\1\u0152\2\341\6\0\1\u0153\1\147" + "\1\150\1\147\1\0\1\147\1\u0153\1\0\1\147\1\0" + "\1\147\3\0\2\147\2\0\3\147\1\260\1\147\7\0" + "\1\u0153\2\147\1\u0153\2\147\1\u0153\2\147\1\0\4\147" + "\1\0\1\u0153\1\147\1\0\1\147\1\0\1\u0153\2\147" + "\6\0\1\u0154\1\151\1\152\1\151\1\153\1\151\1\u0154"
-				+ "\27\151\1\u0154\2\151\1\u0154\2\151\1\u0154\10\151\1\u0154" + "\4\151\1\u0154\7\151\1\0\1\u0155\1\154\1\155\3\154" + "\1\u0155\1\153\26\154\1\u0155\2\154\1\u0155\2\154\1\u0155" + "\10\154\1\u0155\4\154\1\u0155\7\154\1\0\1\u0156\1\157" + "\1\160\1\157\1\161\1\157\1\u0156\27\157\1\u0156\2\157" + "\1\u0156\2\157\1\u0156\10\157\1\u0156\4\157\1\u0156\7\157" + "\1\0\1\u0157\1\162\1\163\3\162\1\u0157\1\161\26\162" + "\1\u0157\2\162\1\u0157\2\162\1\u0157\10\162\1\u0157\4\162" + "\1\u0157\7\162\4\0\1\u0132\1\0\1\u0132\2\0\1\u0132" + "\1\u010e\4\0\2\u0132\53\0\1\u0158\1\u010a\1\u010b\1\u010a" + "\1\0\1\u010a\1\u0158\1\0\1\u010a\1\u010e\13\u010a\1\0" + "\10\u010a\1\u0158\2\u010a\1\u0158\2\u010a\1\u0158\10\u010a\1\u0158" + "\4\u010a\1\u0158\7\u010a\1\0\1\u0159\1\u010c\1\u0135\1\u010c" + "\1\u015a\1\u010c\1\u0159\10\u010c\1\u015b\16\u010c\1\u0159\2\u010c" + "\1\u0159\2\u010c\1\u0159\10\u010c\1\u0159\4\u010c\1\u0159\7\u010c"
-				+ "\1\0\1\u015c\1\u010d\1\u0136\3\u010d\1\u015c\1\u015d\7\u010d" + "\1\u015e\16\u010d\1\u015c\2\u010d\1\u015c\2\u010d\1\u015c\10\u010d" + "\1\u015c\4\u010d\1\u015c\7\u010d\1\0\1\u015f\1\51\1\165" + "\1\51\1\0\1\51\1\u015f\1\0\1\51\1\0\1\51" + "\3\0\2\51\2\0\3\51\1\0\1\51\7\0\1\u015f" + "\2\51\1\u015f\2\51\1\u015f\2\51\1\0\4\51\1\0" + "\1\u015f\1\51\1\0\1\51\1\0\1\u015f\2\51\6\0" + "\1\u0160\1\55\1\170\1\55\1\0\1\55\1\u0160\1\0" + "\1\55\1\0\1\55\3\0\2\55\2\0\3\55\1\0" + "\1\55\7\0\1\u0160\2\55\1\u0160\2\55\1\u0160\2\55" + "\1\0\4\55\1\0\1\u0160\1\55\1\0\1\55\1\0" + "\1\u0160\2\55\6\0\1\u0161\1\62\1\173\1\62\1\0" + "\1\62\1\u0161\1\0\1\62\1\0\1\62\3\0\2\62" + "\2\0\3\62\1\0\1\62\7\0\1\u0161\2\62\1\u0161" + "\2\62\1\u0161\2\62\1\0\4\62\1\0\1\u0161\1\62" + "\1\0\1\62\1\0\1\u0161\2\62\6\0\1\u0162\1\72" + "\1\200\1\72\1\0\1\72\1\u0162\1\0\1\72\1\0" + "\1\72\3\0\2\72\2\0\3\72\1\0\1\72\7\0" + "\1\u0162\2\72\1\u0162\2\72\1\u0162\2\72\1\0\4\72"
-				+ "\1\0\1\u0162\1\72\1\0\1\72\1\0\1\u0162\2\72" + "\6\0\1\u0163\1\100\1\203\1\100\1\0\1\100\1\u0163" + "\1\0\1\100\1\0\1\100\3\0\2\100\2\0\3\100" + "\1\0\1\100\7\0\1\u0163\2\100\1\u0163\2\100\1\u0163" + "\2\100\1\0\4\100\1\0\1\u0163\1\100\1\0\1\100" + "\1\0\1\u0163\2\100\6\0\1\u0164\1\205\1\206\1\205" + "\1\207\1\205\1\u0164\27\205\1\u0164\2\205\1\u0164\2\205" + "\1\u0164\10\205\1\u0164\4\205\1\u0164\7\205\1\0\1\u0165" + "\1\210\1\211\3\210\1\u0165\1\207\26\210\1\u0165\2\210" + "\1\u0165\2\210\1\u0165\10\210\1\u0165\4\210\1\u0165\7\210" + "\1\0\1\u0166\1\105\1\213\1\105\1\0\1\105\1\u0166" + "\1\0\1\105\1\0\1\105\3\0\2\105\2\0\3\105" + "\1\0\1\105\7\0\1\u0166\2\105\1\u0166\2\105\1\u0166" + "\2\105\1\0\4\105\1\0\1\u0166\1\105\1\0\1\105" + "\1\0\1\u0166\2\105\6\0\1\u0167\1\216\1\217\1\216" + "\1\0\1\216\1\u0167\1\0\1\216\1\0\1\216\3\0" + "\2\216\2\0\3\216\1\0\1\216\7\0\1\u0167\2\216" + "\1\u0167\2\216\1\u0167\2\216\1\0\4\216\1\0\1\u0167"
-				+ "\1\216\1\0\1\216\1\0\1\u0167\2\216\6\0\1\u0168" + "\1\113\1\222\1\113\1\0\1\113\1\u0168\1\0\1\113" + "\1\0\1\113\3\0\2\113\2\0\3\113\1\223\1\113" + "\7\0\1\u0168\2\113\1\u0168\2\113\1\u0168\2\113\1\0" + "\4\113\1\0\1\u0168\1\113\1\0\1\113\1\0\1\u0168" + "\2\113\6\0\1\u0169\1\225\1\226\1\225\1\227\1\225" + "\1\u0169\27\225\1\u0169\2\225\1\u0169\2\225\1\u0169\10\225" + "\1\u0169\4\225\1\u0169\7\225\1\0\1\u016a\1\230\1\231" + "\3\230\1\u016a\1\227\26\230\1\u016a\2\230\1\u016a\2\230" + "\1\u016a\10\230\1\u016a\4\230\1\u016a\7\230\1\0\1\u016b" + "\1\235\1\236\1\235\1\0\1\235\1\u016b\1\0\1\235" + "\1\0\1\235\3\0\2\235\2\0\3\235\1\0\1\235" + "\7\0\1\u016b\2\235\1\u016b\2\235\1\u016b\2\235\1\0" + "\4\235\1\0\1\u016b\1\235\1\0\1\235\1\0\1\u016b" + "\2\235\6\0\1\u016c\5\0\1\u016c\3\0\1\367\5\0" + "\1\u016c\5\0\1\u016c\7\0\2\u016c\1\0\2\u016c\1\0" + "\2\u016c\7\0\2\u016c\3\0\2\u016c\7\0\1\u016d\5\0" + "\1\u016d\11\0\1\u016d\5\0\1\u016d\7\0\2\u016d\1\0"
-				+ "\2\u016d\1\0\2\u016d\7\0\2\u016d\3\0\2\u016d\12\0" + "\1\u0146\1\0\1\u0146\2\0\1\u0146\1\u0123\4\0\2\u0146" + "\53\0\1\u016e\1\u011e\1\u011f\1\u011e\1\0\1\u011e\1\u016e" + "\1\0\1\u011e\1\u0123\13\u011e\1\0\10\u011e\1\u016e\2\u011e" + "\1\u016e\2\u011e\1\u016e\10\u011e\1\u016e\4\u011e\1\u016e\7\u011e" + "\1\0\1\u016f\1\u0121\1\u0149\1\u0121\1\u0170\1\u0121\1\u016f" + "\10\u0121\1\u0171\16\u0121\1\u016f\2\u0121\1\u016f\2\u0121\1\u016f" + "\10\u0121\1\u016f\4\u0121\1\u016f\7\u0121\1\0\1\u0172\1\u0122" + "\1\u014a\3\u0122\1\u0172\1\u0173\7\u0122\1\u0174\16\u0122\1\u0172" + "\2\u0122\1\u0172\2\u0122\1\u0172\10\u0122\1\u0172\4\u0122\1\u0172" + "\7\u0122\47\0\1\u0175\24\0\2\25\1\131\1\25\1\0" + "\2\25\1\0\1\25\1\0\1\25\3\0\2\25\2\0" + "\3\25\1\0\1\25\7\0\11\25\1\0\4\25\1\0" + "\2\25\1\0\1\25\1\0\3\25\6\0\1\u0176\1\134" + "\1\135\1\134\1\0\1\134\1\u0176\1\0\1\134\1\0" + "\1\134\3\0\2\134\2\0\3\134\1\0\1\134\7\0" + "\1\u0176\2\134\1\u0176\2\134\1\u0176\2\134\1\0\4\134"
-				+ "\1\0\1\u0176\1\134\1\0\1\134\1\0\1\u0176\2\134" + "\6\0\1\u0177\1\136\1\137\1\136\1\0\1\136\1\u0177" + "\1\0\1\136\1\0\1\136\3\0\2\136\2\0\3\136" + "\1\0\1\136\7\0\1\u0177\2\136\1\u0177\2\136\1\u0177" + "\2\136\1\0\4\136\1\0\1\u0177\1\136\1\0\1\136" + "\1\0\1\u0177\2\136\54\0\1\u0178\65\0\2\u0179\30\0" + "\1\u017a\1\341\1\342\1\341\1\0\1\341\1\u017a\1\0" + "\1\341\1\u0103\1\341\3\0\2\341\2\0\3\341\1\0" + "\1\341\7\0\1\u017a\2\341\1\u017a\2\341\1\u017a\2\341" + "\1\0\4\341\1\0\1\u017a\1\341\1\0\1\341\1\0" + "\1\u017a\2\341\6\0\1\u017b\1\147\1\150\1\147\1\0" + "\1\147\1\u017b\1\0\1\147\1\0\1\147\3\0\2\147" + "\2\0\3\147\1\260\1\147\7\0\1\u017b\2\147\1\u017b" + "\2\147\1\u017b\2\147\1\0\4\147\1\0\1\u017b\1\147" + "\1\0\1\147\1\0\1\u017b\2\147\6\0\1\u017c\1\151" + "\1\152\1\151\1\153\1\151\1\u017c\27\151\1\u017c\2\151" + "\1\u017c\2\151\1\u017c\10\151\1\u017c\4\151\1\u017c\7\151" + "\1\0\1\u017d\1\154\1\155\3\154\1\u017d\1\153\26\154"
-				+ "\1\u017d\2\154\1\u017d\2\154\1\u017d\10\154\1\u017d\4\154" + "\1\u017d\7\154\1\0\1\u017e\1\157\1\160\1\157\1\161" + "\1\157\1\u017e\27\157\1\u017e\2\157\1\u017e\2\157\1\u017e" + "\10\157\1\u017e\4\157\1\u017e\7\157\1\0\1\u017f\1\162" + "\1\163\3\162\1\u017f\1\161\26\162\1\u017f\2\162\1\u017f" + "\2\162\1\u017f\10\162\1\u017f\4\162\1\u017f\7\162\1\0" + "\1\u0180\1\u010a\1\u010b\1\u010a\1\0\1\u010a\1\u0180\1\0" + "\1\u010a\1\u010e\13\u010a\1\0\10\u010a\1\u0180\2\u010a\1\u0180" + "\2\u010a\1\u0180\10\u010a\1\u0180\4\u010a\1\u0180\7\u010a\1\0" + "\1\u0181\1\u010c\1\u0135\1\u010c\1\u0132\1\u010c\1\u0181\27\u010c" + "\1\u0181\2\u010c\1\u0181\2\u010c\1\u0181\10\u010c\1\u0181\4\u010c" + "\1\u0181\7\u010c\1\0\2\u010c\1\u0135\2\u0132\1\u015a\2\u010c" + "\1\u015a\1\u0182\4\u010c\2\u0132\52\u010c\1\0\2\u010c\1\u0135" + "\1\0\1\u0132\12\u010c\1\0\52\u010c\1\0\1\u0183\1\u010d" + "\1\u0136\3\u010d\1\u0183\1\u0132\26\u010d\1\u0183\2\u010d\1\u0183"
-				+ "\2\u010d\1\u0183\10\u010d\1\u0183\4\u010d\1\u0183\7\u010d\1\0" + "\2\u010d\1\u0136\1\u0132\1\u010d\1\u015d\1\u010d\1\u0132\1\u015d" + "\1\u0184\4\u010d\2\u0132\52\u010d\1\0\2\u010d\1\u0136\1\0" + "\3\u010d\1\u0132\7\u010d\1\0\52\u010d\1\0\2\51\1\165" + "\1\51\1\0\2\51\1\0\1\51\1\0\1\51\3\0" + "\2\51\2\0\3\51\1\0\1\51\7\0\11\51\1\0" + "\4\51\1\0\2\51\1\0\1\51\1\0\3\51\6\0" + "\2\55\1\170\1\55\1\0\2\55\1\0\1\55\1\0" + "\1\55\3\0\2\55\2\0\3\55\1\0\1\55\7\0" + "\11\55\1\0\4\55\1\0\2\55\1\0\1\55\1\0" + "\3\55\6\0\2\62\1\173\1\62\1\0\2\62\1\0" + "\1\62\1\0\1\62\3\0\2\62\2\0\3\62\1\0" + "\1\62\7\0\11\62\1\0\4\62\1\0\2\62\1\0" + "\1\62\1\0\3\62\6\0\2\72\1\200\1\72\1\0" + "\2\72\1\0\1\72\1\0\1\72\3\0\2\72\2\0" + "\3\72\1\0\1\72\7\0\11\72\1\0\4\72\1\0" + "\2\72\1\0\1\72\1\0\3\72\6\0\2\100\1\203" + "\1\100\1\0\2\100\1\0\1\100\1\0\1\100\3\0" + "\2\100\2\0\3\100\1\0\1\100\7\0\11\100\1\0" + "\4\100\1\0\2\100\1\0\1\100\1\0\3\100\6\0"
-				+ "\1\u0185\1\205\1\206\1\205\1\207\1\205\1\u0185\27\205" + "\1\u0185\2\205\1\u0185\2\205\1\u0185\10\205\1\u0185\4\205" + "\1\u0185\7\205\1\0\1\u0186\1\210\1\211\3\210\1\u0186" + "\1\207\26\210\1\u0186\2\210\1\u0186\2\210\1\u0186\10\210" + "\1\u0186\4\210\1\u0186\7\210\1\0\2\105\1\213\1\105" + "\1\0\2\105\1\0\1\105\1\0\1\105\3\0\2\105" + "\2\0\3\105\1\0\1\105\7\0\11\105\1\0\4\105" + "\1\0\2\105\1\0\1\105\1\0\3\105\6\0\1\u0187" + "\1\216\1\217\1\216\1\0\1\216\1\u0187\1\0\1\216" + "\1\0\1\216\3\0\2\216\2\0\3\216\1\0\1\216" + "\7\0\1\u0187\2\216\1\u0187\2\216\1\u0187\2\216\1\0" + "\4\216\1\0\1\u0187\1\216\1\0\1\216\1\0\1\u0187" + "\2\216\6\0\2\113\1\222\1\113\1\0\2\113\1\0" + "\1\113\1\0\1\113\3\0\2\113\2\0\3\113\1\223" + "\1\113\7\0\11\113\1\0\4\113\1\0\2\113\1\0" + "\1\113\1\0\3\113\6\0\1\u0188\1\225\1\226\1\225" + "\1\227\1\225\1\u0188\27\225\1\u0188\2\225\1\u0188\2\225" + "\1\u0188\10\225\1\u0188\4\225\1\u0188\7\225\1\0\1\u0189"
-				+ "\1\230\1\231\3\230\1\u0189\1\227\26\230\1\u0189\2\230" + "\1\u0189\2\230\1\u0189\10\230\1\u0189\4\230\1\u0189\7\230" + "\1\0\1\u018a\1\235\1\236\1\235\1\0\1\235\1\u018a" + "\1\0\1\235\1\0\1\235\3\0\2\235\2\0\3\235" + "\1\0\1\235\7\0\1\u018a\2\235\1\u018a\2\235\1\u018a" + "\2\235\1\0\4\235\1\0\1\u018a\1\235\1\0\1\235" + "\1\0\1\u018a\2\235\6\0\1\u018b\5\0\1\u018b\3\0" + "\1\367\5\0\1\u018b\5\0\1\u018b\7\0\2\u018b\1\0" + "\2\u018b\1\0\2\u018b\7\0\2\u018b\3\0\2\u018b\7\0" + "\1\u018c\5\0\1\u018c\11\0\1\u018c\5\0\1\u018c\7\0" + "\2\u018c\1\0\2\u018c\1\0\2\u018c\7\0\2\u018c\3\0" + "\2\u018c\7\0\1\u018d\1\u011e\1\u011f\1\u011e\1\0\1\u011e" + "\1\u018d\1\0\1\u011e\1\u0123\13\u011e\1\0\10\u011e\1\u018d" + "\2\u011e\1\u018d\2\u011e\1\u018d\10\u011e\1\u018d\4\u011e\1\u018d" + "\7\u011e\1\0\1\u018e\1\u0121\1\u0149\1\u0121\1\u0146\1\u0121" + "\1\u018e\27\u0121\1\u018e\2\u0121\1\u018e\2\u0121\1\u018e\10\u0121" + "\1\u018e\4\u0121\1\u018e\7\u0121\1\0\2\u0121\1\u0149\2\u0146"
-				+ "\1\u0170\2\u0121\1\u0170\1\u018f\4\u0121\2\u0146\52\u0121\1\0" + "\2\u0121\1\u0149\1\0\1\u0146\12\u0121\1\0\52\u0121\1\0" + "\1\u0190\1\u0122\1\u014a\3\u0122\1\u0190\1\u0146\26\u0122\1\u0190" + "\2\u0122\1\u0190\2\u0122\1\u0190\10\u0122\1\u0190\4\u0122\1\u0190" + "\7\u0122\1\0\2\u0122\1\u014a\1\u0146\1\u0122\1\u0173\1\u0122" + "\1\u0146\1\u0173\1\u0191\4\u0122\2\u0146\52\u0122\1\0\2\u0122" + "\1\u014a\1\0\3\u0122\1\u0146\7\u0122\1\0\52\u0122\42\0" + "\2\u0192\30\0\2\134\1\135\1\134\1\0\2\134\1\0" + "\1\134\1\0\1\134\3\0\2\134\2\0\3\134\1\0" + "\1\134\7\0\11\134\1\0\4\134\1\0\2\134\1\0" + "\1\134\1\0\3\134\6\0\2\136\1\137\1\136\1\0" + "\2\136\1\0\1\136\1\0\1\136\3\0\2\136\2\0" + "\3\136\1\0\1\136\7\0\11\136\1\0\4\136\1\0" + "\2\136\1\0\1\136\1\0\3\136\44\0\2\u0193\33\0" + "\1\u0194\1\341\1\342\1\341\1\0\1\341\1\u0194\1\0" + "\1\341\1\u0103\1\341\3\0\2\341\2\0\3\341\1\0" + "\1\341\7\0\1\u0194\2\341\1\u0194\2\341\1\u0194\2\341"
-				+ "\1\0\4\341\1\0\1\u0194\1\341\1\0\1\341\1\0" + "\1\u0194\2\341\6\0\2\147\1\150\1\147\1\0\2\147" + "\1\0\1\147\1\0\1\147\3\0\2\147\2\0\3\147" + "\1\260\1\147\7\0\11\147\1\0\4\147\1\0\2\147" + "\1\0\1\147\1\0\3\147\6\0\2\151\1\152\1\151" + "\1\153\65\151\1\0\2\154\1\155\4\154\1\153\62\154" + "\1\0\2\157\1\160\1\157\1\161\65\157\1\0\2\162" + "\1\163\4\162\1\161\62\162\1\0\1\u0195\1\u010a\1\u010b" + "\1\u010a\1\0\1\u010a\1\u0195\1\0\1\u010a\1\u010e\13\u010a" + "\1\0\10\u010a\1\u0195\2\u010a\1\u0195\2\u010a\1\u0195\10\u010a" + "\1\u0195\4\u010a\1\u0195\7\u010a\1\0\1\u0196\1\u010c\1\u0135" + "\1\u010c\1\u0132\1\u010c\1\u0196\27\u010c\1\u0196\2\u010c\1\u0196" + "\2\u010c\1\u0196\10\u010c\1\u0196\4\u010c\1\u0196\7\u010c\1\0" + "\1\u0197\1\u010d\1\u0136\3\u010d\1\u0197\1\u0132\26\u010d\1\u0197" + "\2\u010d\1\u0197\2\u010d\1\u0197\10\u010d\1\u0197\4\u010d\1\u0197" + "\7\u010d\1\0\2\205\1\206\1\205\1\207\65\205\1\0" + "\2\210\1\211\4\210\1\207\62\210\1\0\2\216\1\217"
-				+ "\1\216\1\0\2\216\1\0\1\216\1\0\1\216\3\0" + "\2\216\2\0\3\216\1\0\1\216\7\0\11\216\1\0" + "\4\216\1\0\2\216\1\0\1\216\1\0\3\216\6\0" + "\2\225\1\226\1\225\1\227\65\225\1\0\2\230\1\231" + "\4\230\1\227\62\230\1\0\2\235\1\236\1\235\1\0" + "\2\235\1\0\1\235\1\0\1\235\3\0\2\235\2\0" + "\3\235\1\0\1\235\7\0\11\235\1\0\4\235\1\0" + "\2\235\1\0\1\235\1\0\3\235\20\0\1\367\60\0" + "\1\u0198\5\0\1\u0198\11\0\1\u0198\5\0\1\u0198\7\0" + "\2\u0198\1\0\2\u0198\1\0\2\u0198\7\0\2\u0198\3\0" + "\2\u0198\7\0\1\u0199\1\u011e\1\u011f\1\u011e\1\0\1\u011e" + "\1\u0199\1\0\1\u011e\1\u0123\13\u011e\1\0\10\u011e\1\u0199" + "\2\u011e\1\u0199\2\u011e\1\u0199\10\u011e\1\u0199\4\u011e\1\u0199" + "\7\u011e\1\0\1\u019a\1\u0121\1\u0149\1\u0121\1\u0146\1\u0121" + "\1\u019a\27\u0121\1\u019a\2\u0121\1\u019a\2\u0121\1\u019a\10\u0121" + "\1\u019a\4\u0121\1\u019a\7\u0121\1\0\1\u019b\1\u0122\1\u014a" + "\3\u0122\1\u019b\1\u0146\26\u0122\1\u019b\2\u0122\1\u019b\2\u0122"
-				+ "\1\u019b\10\u0122\1\u019b\4\u0122\1\u019b\7\u0122\65\0\1\u019c" + "\52\0\2\u019d\25\0\1\u019e\1\341\1\342\1\341\1\0" + "\1\341\1\u019e\1\0\1\341\1\u0103\1\341\3\0\2\341" + "\2\0\3\341\1\0\1\341\7\0\1\u019e\2\341\1\u019e" + "\2\341\1\u019e\2\341\1\0\4\341\1\0\1\u019e\1\341" + "\1\0\1\341\1\0\1\u019e\2\341\6\0\1\u019f\1\u010a" + "\1\u010b\1\u010a\1\0\1\u010a\1\u019f\1\0\1\u010a\1\u010e" + "\13\u010a\1\0\10\u010a\1\u019f\2\u010a\1\u019f\2\u010a\1\u019f" + "\10\u010a\1\u019f\4\u010a\1\u019f\7\u010a\1\0\1\u01a0\1\u010c" + "\1\u0135\1\u010c\1\u0132\1\u010c\1\u01a0\27\u010c\1\u01a0\2\u010c" + "\1\u01a0\2\u010c\1\u01a0\10\u010c\1\u01a0\4\u010c\1\u01a0\7\u010c" + "\1\0\1\u01a1\1\u010d\1\u0136\3\u010d\1\u01a1\1\u0132\26\u010d" + "\1\u01a1\2\u010d\1\u01a1\2\u010d\1\u01a1\10\u010d\1\u01a1\4\u010d" + "\1\u01a1\7\u010d\1\0\1\u01a2\5\0\1\u01a2\11\0\1\u01a2" + "\5\0\1\u01a2\7\0\2\u01a2\1\0\2\u01a2\1\0\2\u01a2" + "\7\0\2\u01a2\3\0\2\u01a2\7\0\1\u01a3\1\u011e\1\u011f"
-				+ "\1\u011e\1\0\1\u011e\1\u01a3\1\0\1\u011e\1\u0123\13\u011e" + "\1\0\10\u011e\1\u01a3\2\u011e\1\u01a3\2\u011e\1\u01a3\10\u011e" + "\1\u01a3\4\u011e\1\u01a3\7\u011e\1\0\1\u01a4\1\u0121\1\u0149" + "\1\u0121\1\u0146\1\u0121\1\u01a4\27\u0121\1\u01a4\2\u0121\1\u01a4" + "\2\u0121\1\u01a4\10\u0121\1\u01a4\4\u0121\1\u01a4\7\u0121\1\0" + "\1\u01a5\1\u0122\1\u014a\3\u0122\1\u01a5\1\u0146\26\u0122\1\u01a5" + "\2\u0122\1\u01a5\2\u0122\1\u01a5\10\u0122\1\u01a5\4\u0122\1\u01a5" + "\7\u0122\47\0\1\u01a6\24\0\2\341\1\342\1\341\1\0" + "\2\341\1\0\1\341\1\u0103\1\341\3\0\2\341\2\0" + "\3\341\1\0\1\341\7\0\11\341\1\0\4\341\1\0" + "\2\341\1\0\1\341\1\0\3\341\6\0\1\u01a7\1\u010a" + "\1\u010b\1\u010a\1\0\1\u010a\1\u01a7\1\0\1\u010a\1\u010e" + "\13\u010a\1\0\10\u010a\1\u01a7\2\u010a\1\u01a7\2\u010a\1\u01a7" + "\10\u010a\1\u01a7\4\u010a\1\u01a7\7\u010a\1\0\1\u01a8\1\u010c" + "\1\u0135\1\u010c\1\u0132\1\u010c\1\u01a8\27\u010c\1\u01a8\2\u010c"
-				+ "\1\u01a8\2\u010c\1\u01a8\10\u010c\1\u01a8\4\u010c\1\u01a8\7\u010c" + "\1\0\1\u01a9\1\u010d\1\u0136\3\u010d\1\u01a9\1\u0132\26\u010d" + "\1\u01a9\2\u010d\1\u01a9\2\u010d\1\u01a9\10\u010d\1\u01a9\4\u010d" + "\1\u01a9\7\u010d\1\0\1\u01aa\1\u011e\1\u011f\1\u011e\1\0" + "\1\u011e\1\u01aa\1\0\1\u011e\1\u0123\13\u011e\1\0\10\u011e" + "\1\u01aa\2\u011e\1\u01aa\2\u011e\1\u01aa\10\u011e\1\u01aa\4\u011e" + "\1\u01aa\7\u011e\1\0\1\u01ab\1\u0121\1\u0149\1\u0121\1\u0146" + "\1\u0121\1\u01ab\27\u0121\1\u01ab\2\u0121\1\u01ab\2\u0121\1\u01ab" + "\10\u0121\1\u01ab\4\u0121\1\u01ab\7\u0121\1\0\1\u01ac\1\u0122" + "\1\u014a\3\u0122\1\u01ac\1\u0146\26\u0122\1\u01ac\2\u0122\1\u01ac" + "\2\u0122\1\u01ac\10\u0122\1\u01ac\4\u0122\1\u01ac\7\u0122\1\0" + "\2\u010a\1\u010b\1\u010a\1\0\2\u010a\1\0\1\u010a\1\u010e" + "\13\u010a\1\0\44\u010a\1\0\1\u01ad\1\u010c\1\u0135\1\u010c" + "\1\u0132\1\u010c\1\u01ad\27\u010c\1\u01ad\2\u010c\1\u01ad\2\u010c"
-				+ "\1\u01ad\10\u010c\1\u01ad\4\u010c\1\u01ad\7\u010c\1\0\1\u01ae" + "\1\u010d\1\u0136\3\u010d\1\u01ae\1\u0132\26\u010d\1\u01ae\2\u010d" + "\1\u01ae\2\u010d\1\u01ae\10\u010d\1\u01ae\4\u010d\1\u01ae\7\u010d" + "\1\0\2\u011e\1\u011f\1\u011e\1\0\2\u011e\1\0\1\u011e" + "\1\u0123\13\u011e\1\0\44\u011e\1\0\1\u01af\1\u0121\1\u0149" + "\1\u0121\1\u0146\1\u0121\1\u01af\27\u0121\1\u01af\2\u0121\1\u01af" + "\2\u0121\1\u01af\10\u0121\1\u01af\4\u0121\1\u01af\7\u0121\1\0" + "\1\u01b0\1\u0122\1\u014a\3\u0122\1\u01b0\1\u0146\26\u0122\1\u01b0" + "\2\u0122\1\u01b0\2\u0122\1\u01b0\10\u0122\1\u01b0\4\u0122\1\u01b0" + "\7\u0122\1\0\2\u010c\1\u0135\1\u010c\1\u0132\65\u010c\1\0" + "\2\u010d\1\u0136\4\u010d\1\u0132\62\u010d\1\0\2\u0121\1\u0149" + "\1\u0121\1\u0146\65\u0121\1\0\2\u0122\1\u014a\4\u0122\1\u0146" + "\62\u0122";
-
-	/**
-	 * 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;
-//trivial hand edit to remove "not used" warning	final private static int YY_ILLEGAL_STATE = 1;
-	final private static int YY_NO_MATCH = 2;
-//	trivial hand edit to remove "not used" warning	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, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 9, 1, 1, 1, 1, 1, 1, 1, 9, 1, 9, 1, 1, 9, 1, 1, 1, 9, 1, 1, 1, 1, 1, 1, 9, 1, 1, 1, 9, 9, 1, 1, 1, 9, 1, 3, 9, 9, 1, 1, 1, 9, 1, 9, 1, 1, 1, 1, 1, 1, 1, 1, 9, 9, 1, 1, 1, 1, 1, 9, 1, 1, 1, 1, 1, 1, 1, 9, 3, 0, 1, 1, 1, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 9, 0, 0, 0, 0, 0, 9, 0, 0, 0, 0, 1, 1, 0, 1, 1, 0, 1, 1, 13, 7, 0, 1, 1, 0, 1, 0, 0, 9, 0, 0, 1, 0, 1, 1, 1, 0, 0, 9, 0, 9, 1, 0, 0, 9, 0, 0, 1, 1, 1, 1, 0, 0, 1, 0, 0, 13, 7, 1, 9, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 1, 0, 0, 1, 0, 0, 1, 0, 0, 1, 0, 0, 1, 1, 1, 1, 1, 0, 1, 0, 0, 1, 0, 1, 1, 1, 0, 1, 0, 0, 1, 0, 1, 1, 1, 0, 1, 1, 1, 9, 9, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 0, 0, 1, 1, 1, 0, 0, 1, 1, 0, 1, 0, 1, 1, 1, 0, 0, 0, 9, 0, 0, 9, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 9, 1, 1, 1, 1, 1, 0, 0, 1, 1, 1, 0, 0, 1, 1, 1, 0, 0, 0, 0, 0, 9, 0, 1, 1, 1, 0, 0, 9, 0, 0, 1, 0, 0, 0, 0, 0, 0, 1, 0, 0, 1, 1, 1, 1, 1, 0,
-				0, 1, 1, 1, 0, 0, 1, 1, 1, 0, 0, 1, 0, 0, 0, 1, 1, 1, 0, 9, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 0, 0, 1, 1, 1, 0, 0, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 9, 0, 0, 1, 0, 0, 0, 0, 0, 0, 1, 0, 1, 0, 0, 1, 0, 0, 1, 1, 1, 0, 0, 1, 0, 1, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 9, 0, 0, 0, 0, 9, 0, 0, 0, 9, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0};
-
-	/** 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
-	 */
-//	trivial hand edit to remove "not used" warning	private int yycolumn;
-
-	/**
-	 * yy_atBOL == true <=>the scanner is currently at the beginning of a
-	 * line
-	 */
-//	trivial hand edit to remove "not used" warning	private boolean yy_atBOL;
-
-	/** yy_atEOF == true <=>the scanner has returned a value for EOF */
-	private boolean yy_atEOF;
-
-	/* user code: */
-	private final static String UNDEFINED = "undefined";
-	private String fBufferedContext = null;
-	private int fBufferedStart;
-	// private int fBufferedTextLength;
-	private int fBufferedLength;
-	// private StringBuffer fBufferedText = null;
-	private CSSTextRegionFactory fRegionFactory = CSSTextRegionFactory.getInstance();
-	private int fInitialState = YYINITIAL;
-	public final static int BUFFER_SIZE_NORMAL = 16384;
-	public final static int BUFFER_SIZE_SMALL = 256;
-	private int fInitialBufferSize = BUFFER_SIZE_NORMAL;
-
-	public void setInitialState(int state) {
-		fInitialState = state;
-	}
-
-	public void setInitialBufferSize(int size) {
-		fInitialBufferSize = size;
-	}
-
-	/* user method */
-	public final ITextRegion getNextToken() throws IOException {
-		String context;
-		String nextTokenType;
-		boolean spaceFollows;
-		// StringBuffer text;
-		int start;
-		int textLength;
-		int length;
-		if (fBufferedContext != null) {
-			context = fBufferedContext;
-			// text = fBufferedText;
-			start = fBufferedStart;
-			textLength = length = fBufferedLength;
-
-			fBufferedContext = null;
-		}
-		else {
-			context = primGetNextToken();
-			// text = new StringBuffer(yytext());
-			start = yychar;
-			textLength = length = yylength();
-		}
-
-		if (context != null) {
-			if (context == UNDEFINED) {
-				// undef -> concatenate undef's
-				nextTokenType = primGetNextToken();
-				while (nextTokenType == UNDEFINED) {
-					// text.append(yytext());
-					textLength += yylength();
-					length = textLength;
-					nextTokenType = primGetNextToken();
-				}
-				fBufferedContext = nextTokenType;
-				// fBufferedText = new StringBuffer(yytext());
-				fBufferedStart = yychar;
-				fBufferedLength = yylength();
-			}
-			else {
-				nextTokenType = null;
-				spaceFollows = false;
-				if (CSSRegionUtil.isDeclarationValueType(context)) { // declaration
-																		// value
-																		// can
-																		// contain
-																		// VALUE_S
-					nextTokenType = primGetNextToken();
-					spaceFollows = (nextTokenType == CSS_DECLARATION_VALUE_S);
-				}
-				else if (canContainSpace(context)) {
-					nextTokenType = primGetNextToken();
-					spaceFollows = (nextTokenType == CSS_S);
-				}
-				if (nextTokenType != null) { // nextToken is retrieved
-					if (spaceFollows) {
-						// next is space -> append
-						// text.append(yytext());
-						length += yylength();
-					}
-					else {
-						// next is NOT space -> push this for next time,
-						// return itself
-						fBufferedContext = nextTokenType;
-						// fBufferedText = new StringBuffer(yytext());
-						fBufferedStart = yychar;
-						fBufferedLength = yylength();
-					}
-				}
-			}
-		}
-
-		if (context != null) {
-			if (context == UNDEFINED) {
-				context = CSS_UNKNOWN;
-			}
-			return fRegionFactory.createRegion(context, start, textLength, length);
-		}
-		else {
-			return null;
-		}
-	}
-
-	/* user method */
-	/* for standalone use */
-	public final List parseText() throws IOException {
-		List tokens = new ArrayList();
-
-		CSSTextToken token;
-		for (String kind = primGetNextToken(); kind != null; kind = primGetNextToken()) {
-			token = new CSSTextToken();
-			token.kind = kind;
-			token.start = yychar;
-			token.length = yylength();
-			token.image = yytext();
-			tokens.add(token);
-		}
-
-		return tokens;
-	}
-
-	/* user method */
-	private boolean canContainSpace(String type) {
-		if (type == CSS_DELIMITER || type == CSS_RBRACE || type == CSS_DECLARATION_DELIMITER) {
-			return false;
-		}
-		else {
-			return true;
-		}
-	}
-
-	/* user method */
-	public final int getOffset() {
-		return yychar;
-	}
-
-	/* user method */
-	public final boolean isEOF() {
-		return yy_atEOF;
-	}
-
-	/* user method */
-	public void reset(char[] charArray) {
-		reset(new CharArrayReader(charArray), 0);
-	}
-
-	/* user method */
-	public final void reset(java.io.Reader in, int newOffset) {
-		/** the input device */
-		yy_reader = in;
-
-		/** the current state of the DFA */
-		yy_state = 0;
-
-		/** the current lexical state */
-		yy_lexical_state = fInitialState; // YYINITIAL;
-
-		/**
-		 * this buffer contains the current text to be matched and is the
-		 * source of the yytext() string
-		 */
-		if (yy_buffer.length != fInitialBufferSize) {
-			yy_buffer = new char[fInitialBufferSize];
-		}
-		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;
-
-		/**
-		 * the number of characters from the last newline up to the start of
-		 * the matched text
-		 */
-//		trivial hand edit to remove "not used" warning		yycolumn = 0;
-
-		/**
-		 * yy_atBOL == true <=>the scanner is currently at the beginning of a
-		 * line
-		 */
-//		trivial hand edit to remove "not used" warning		yy_atBOL = false;
-
-		/** yy_atEOF == true <=>the scanner has returned a value for EOF */
-		yy_atEOF = false;
-
-		/* user variables */
-		// fUndefined.delete(0, fUndefined.length());
-	}
-
-	/* user method */
-	public CSSTokenizer() {
-		super();
-	}
-
-
-
-	/**
-	 * 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 CSSTokenizer(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 CSSTokenizer(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[21004];
-		int i = 0; /* index in packed string */
-		int j = 0; /* index in unpacked array */
-		while (i < 13906) {
-			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 < 170) {
-			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]);
-			e.printStackTrace();
-
-		}
-
-		// 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()!
-	 */
-//	trivial hand edit to remove "not used" warning
-//	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 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 421 : {
-					yybegin(ST_DECLARATION_VALUE);
-					return CSS_DECLARATION_VALUE_IMPORTANT;
-				}
-				case 433 :
-					break;
-				case 412 : {
-					yybegin(ST_FONT_FACE_DELIMITER);
-					return CSS_FONT_FACE;
-				}
-				case 434 :
-					break;
-				case 375 : {
-					yybegin(ST_CHARSET_NAME);
-					return CSS_CHARSET;
-				}
-				case 435 :
-					break;
-				case 335 : {
-					yybegin(ST_IMPORT_URI);
-					return CSS_IMPORT;
-				}
-				case 436 :
-					break;
-				case 297 : {
-					yybegin(ST_MEDIA_MEDIUM);
-					return CSS_MEDIA;
-				}
-				case 437 :
-					break;
-				case 290 :
-				case 327 :
-				case 398 :
-				case 400 : {
-					yybegin(ST_DECLARATION_VALUE);
-					return CSS_DECLARATION_VALUE_URI;
-				}
-				case 438 :
-					break;
-				case 269 :
-				case 307 :
-				case 385 :
-				case 387 : {
-					yybegin(ST_IMPORT_MEDIUM);
-					return CSS_URI;
-				}
-				case 439 :
-					break;
-				case 255 : {
-					yybegin(ST_PAGE_PSEUDO_PAGE);
-					return CSS_PAGE;
-				}
-				case 440 :
-					break;
-				case 218 : {
-					return CSS_COMMENT;
-				}
-				case 441 :
-					break;
-				case 217 : {
-					return CSS_CDO;
-				}
-				case 442 :
-					break;
-				case 211 :
-				case 245 :
-				case 283 :
-				case 284 :
-				case 323 :
-				case 324 :
-				case 363 :
-				case 364 :
-				case 394 :
-				case 395 :
-				case 407 :
-				case 417 : {
-					yybegin(ST_DECLARATION_VALUE);
-					return CSS_DECLARATION_VALUE_UNICODE_RANGE;
-				}
-				case 443 :
-					break;
-				case 165 : {
-					return CSS_CDC;
-				}
-				case 444 :
-					break;
-				case 162 : {
-					return CSS_DECLARATION_VALUE_S;
-				}
-				case 445 :
-					break;
-				case 156 :
-				case 210 :
-				case 244 :
-				case 282 :
-				case 322 :
-				case 362 :
-				case 393 : {
-					yybegin(ST_DECLARATION_VALUE);
-					return CSS_DECLARATION_VALUE_HASH;
-				}
-				case 446 :
-					break;
-				case 150 :
-				case 205 :
-				case 208 : {
-					yybegin(ST_DECLARATION_VALUE);
-					return CSS_DECLARATION_VALUE_STRING;
-				}
-				case 447 :
-					break;
-				case 57 :
-				case 59 :
-				case 128 :
-				case 129 :
-				case 193 :
-				case 235 :
-				case 273 :
-				case 313 :
-				case 353 : {
-					yybegin(ST_SELECTOR_ATTRIBUTE_OPERATOR);
-					return CSS_SELECTOR_ATTRIBUTE_NAME;
-				}
-				case 448 :
-					break;
-				case 56 : {
-					yybegin(ST_SELECTOR);
-					return CSS_SELECTOR_SEPARATOR;
-				}
-				case 449 :
-					break;
-				case 55 :
-				case 125 : {
-					yybegin(ST_SELECTOR);
-					return CSS_SELECTOR_COMBINATOR;
-				}
-				case 450 :
-					break;
-				case 52 : {
-					yybegin(ST_DECLARATION);
-					return CSS_LBRACE;
-				}
-				case 451 :
-					break;
-				case 49 :
-				case 51 :
-				case 123 :
-				case 124 :
-				case 192 :
-				case 234 :
-				case 272 :
-				case 312 :
-				case 352 : {
-					yybegin(ST_PAGE_DELIMITER);
-					return CSS_PAGE_SELECTOR;
-				}
-				case 452 :
-					break;
-				case 48 : {
-					yybegin(YYINITIAL);
-					return CSS_LBRACE;
-				}
-				case 453 :
-					break;
-				case 47 : {
-					yybegin(ST_MEDIA_MEDIUM);
-					return CSS_MEDIA_SEPARATOR;
-				}
-				case 454 :
-					break;
-				case 44 :
-				case 46 :
-				case 120 :
-				case 121 :
-				case 191 :
-				case 233 :
-				case 271 :
-				case 311 :
-				case 351 : {
-					yybegin(ST_MEDIA_DELIMITER);
-					return CSS_MEDIUM;
-				}
-				case 455 :
-					break;
-				case 43 : {
-					yybegin(ST_IMPORT_MEDIUM);
-					return CSS_MEDIA_SEPARATOR;
-				}
-				case 456 :
-					break;
-				case 20 :
-				case 23 :
-				case 89 :
-				case 90 :
-				case 164 :
-				case 214 :
-				case 249 :
-				case 292 :
-				case 331 : {
-					yybegin(ST_SELECTOR_MODIFIER);
-					return CSS_SELECTOR_ELEMENT_NAME;
-				}
-				case 457 :
-					break;
-				case 22 :
-				case 54 :
-				case 87 :
-				case 126 :
-				case 163 : {
-					return CSS_S;
-				}
-				case 458 :
-					break;
-				case 27 : {
-					yybegin(YYINITIAL);
-					return CSS_RBRACE;
-				}
-				case 459 :
-					break;
-				case 29 : {
-					yybegin(ST_SELECTOR_MODIFIER);
-					return CSS_SELECTOR_UNIVERSAL;
-				}
-				case 460 :
-					break;
-				case 32 : {
-					yybegin(ST_SELECTOR_ATTRIBUTE_NAME);
-					return CSS_SELECTOR_ATTRIBUTE_START;
-				}
-				case 461 :
-					break;
-				case 36 : {
-					yybegin(YYINITIAL);
-					return CSS_DELIMITER;
-				}
-				case 462 :
-					break;
-				case 40 :
-				case 42 :
-				case 117 :
-				case 118 :
-				case 190 :
-				case 232 :
-				case 270 :
-				case 310 :
-				case 350 : {
-					yybegin(ST_IMPORT_DELIMITER);
-					return CSS_MEDIUM;
-				}
-				case 463 :
-					break;
-				case 60 : {
-					yybegin(ST_SELECTOR_ATTRIBUTE_VALUE);
-					return CSS_SELECTOR_ATTRIBUTE_OPERATOR;
-				}
-				case 464 :
-					break;
-				case 62 : {
-					yybegin(ST_SELECTOR_MODIFIER);
-					return CSS_SELECTOR_ATTRIBUTE_END;
-				}
-				case 465 :
-					break;
-				case 63 :
-				case 67 :
-				case 131 :
-				case 134 :
-				case 137 :
-				case 194 :
-				case 196 :
-				case 199 :
-				case 236 :
-				case 274 :
-				case 314 :
-				case 354 : {
-					yybegin(ST_SELECTOR_ATTRIBUTE_END);
-					return CSS_SELECTOR_ATTRIBUTE_VALUE;
-				}
-				case 466 :
-					break;
-				case 68 :
-				case 70 :
-				case 139 :
-				case 140 :
-				case 201 :
-				case 239 :
-				case 277 :
-				case 317 :
-				case 357 : {
-					yybegin(ST_DECLARATION_SEPARATOR);
-					return CSS_DECLARATION_PROPERTY;
-				}
-				case 467 :
-					break;
-				case 71 : {
-					yybegin(ST_DECLARATION);
-					return CSS_DECLARATION_DELIMITER;
-				}
-				case 468 :
-					break;
-				case 72 : {
-					yybegin(ST_DECLARATION_PRE_VALUE);
-					return CSS_DECLARATION_SEPARATOR;
-				}
-				case 469 :
-					break;
-				case 73 :
-				case 155 : {
-					yybegin(ST_DECLARATION_VALUE);
-					return CSS_DECLARATION_VALUE_NUMBER;
-				}
-				case 470 :
-					break;
-				case 74 :
-				case 79 :
-				case 83 :
-				case 147 :
-				case 153 :
-				case 154 :
-				case 159 :
-				case 203 :
-				case 212 :
-				case 241 :
-				case 279 :
-				case 319 :
-				case 359 : {
-					yybegin(ST_DECLARATION_VALUE);
-					return CSS_DECLARATION_VALUE_IDENT;
-				}
-				case 471 :
-					break;
-				case 78 : {
-					yybegin(ST_DECLARATION_VALUE);
-					return CSS_DECLARATION_VALUE_PARENTHESIS_CLOSE;
-				}
-				case 472 :
-					break;
-				case 85 :
-				case 86 : {
-					yybegin(ST_DECLARATION_VALUE);
-					return CSS_DECLARATION_VALUE_OPERATOR;
-				}
-				case 473 :
-					break;
-				case 91 :
-				case 166 :
-				case 215 :
-				case 250 :
-				case 293 :
-				case 332 :
-				case 373 : {
-					yybegin(ST_SELECTOR_MODIFIER);
-					return CSS_SELECTOR_CLASS;
-				}
-				case 474 :
-					break;
-				case 93 :
-				case 167 :
-				case 216 :
-				case 251 :
-				case 294 :
-				case 333 :
-				case 374 : {
-					yybegin(ST_SELECTOR_MODIFIER);
-					return CSS_SELECTOR_ID;
-				}
-				case 475 :
-					break;
-				case 102 :
-				case 176 :
-				case 226 :
-				case 258 :
-				case 260 :
-				case 300 :
-				case 338 :
-				case 378 : {
-					yybegin(ST_SELECTOR_MODIFIER);
-					return CSS_SELECTOR_PSEUDO;
-				}
-				case 476 :
-					break;
-				case 106 :
-				case 178 :
-				case 181 : {
-					yybegin(ST_CHARSET_DELIMITER);
-					return CSS_STRING;
-				}
-				case 477 :
-					break;
-				case 112 :
-				case 184 :
-				case 187 : {
-					yybegin(ST_IMPORT_MEDIUM);
-					return CSS_STRING;
-				}
-				case 478 :
-					break;
-				case 141 :
-				case 202 :
-				case 240 :
-				case 278 :
-				case 318 :
-				case 358 :
-				case 390 : {
-					yybegin(ST_DECLARATION_VALUE);
-					return CSS_DECLARATION_VALUE_DIMENSION;
-				}
-				case 479 :
-					break;
-				case 144 : {
-					yybegin(ST_DECLARATION_VALUE);
-					return CSS_DECLARATION_VALUE_PERCENTAGE;
-				}
-				case 480 :
-					break;
-				case 146 :
-				case 247 : {
-					yybegin(ST_DECLARATION_VALUE);
-					return CSS_DECLARATION_VALUE_FUNCTION;
-				}
-				case 481 :
-					break;
-				case 19 :
-				case 21 :
-				case 24 :
-				case 25 :
-				case 26 :
-				case 28 :
-				case 30 :
-				case 31 :
-				case 33 :
-				case 34 :
-				case 35 :
-				case 37 :
-				case 38 :
-				case 39 :
-				case 41 :
-				case 45 :
-				case 50 :
-				case 53 :
-				case 58 :
-				case 61 :
-				case 64 :
-				case 65 :
-				case 66 :
-				case 69 :
-				case 75 :
-				case 76 :
-				case 77 :
-				case 80 :
-				case 81 :
-				case 82 :
-				case 84 : {
-					return UNDEFINED;
-				}
-				case 482 :
-					break;
-				default :
-					if (yy_input == YYEOF && yy_startRead == yy_currentPos) {
-						yy_atEOF = true;
-						return null;
-					}
-					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++) {
-			CSSTokenizer scanner = null;
-			try {
-				scanner = new CSSTokenizer(new java.io.FileReader(argv[i]));
-			}
-			catch (java.io.FileNotFoundException e) {
-				System.out.println("File not found : \"" + argv[i] + "\"");
-				System.exit(1);
-			}
-			catch (ArrayIndexOutOfBoundsException e) {
-				System.out.println("Usage : java CSSTokenizer <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);
-			}
-		}
-	}
-
-
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/parser/regions/CSSTextRegionFactory.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/parser/regions/CSSTextRegionFactory.java
deleted file mode 100644
index e6dcdde..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/parser/regions/CSSTextRegionFactory.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.css.core.internal.parser.regions;
-
-import org.eclipse.wst.sse.core.internal.parser.ContextRegion;
-import org.eclipse.wst.sse.core.internal.provisional.text.ITextRegion;
-
-public class CSSTextRegionFactory {
-	public synchronized static CSSTextRegionFactory getInstance() {
-		if (fInstance == null) {
-			fInstance = new CSSTextRegionFactory();
-		}
-		return fInstance;
-	}
-
-	public ITextRegion createRegion(String context, int start, int textLength, int length) {
-		ITextRegion region = null;
-		region = new ContextRegion(context, start, textLength, length);
-		return region;
-	}
-
-	private CSSTextRegionFactory() {
-		super();
-	}
-
-	private static CSSTextRegionFactory fInstance = null;
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/parserz/CSSRegionContexts.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/parserz/CSSRegionContexts.java
deleted file mode 100644
index cd3bd13..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/parserz/CSSRegionContexts.java
+++ /dev/null
@@ -1,76 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this 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.core.internal.parserz;
-
-/**
- */
-public interface CSSRegionContexts {
-	public static final String CSS_COMMENT = "COMMENT"; //$NON-NLS-1$
-	public static final String CSS_CDO = "CDO"; //$NON-NLS-1$
-	public static final String CSS_CDC = "CDC"; //$NON-NLS-1$
-	public static final String CSS_S = "S"; //$NON-NLS-1$
-
-	public static final String CSS_DELIMITER = "DELIMITER"; //$NON-NLS-1$
-	public static final String CSS_LBRACE = "LBRACE"; //$NON-NLS-1$
-	public static final String CSS_RBRACE = "RBRACE"; //$NON-NLS-1$
-
-	public static final String CSS_IMPORT = "IMPORT"; //$NON-NLS-1$
-	public static final String CSS_PAGE = "PAGE"; //$NON-NLS-1$
-	public static final String CSS_MEDIA = "MEDIA"; //$NON-NLS-1$
-	public static final String CSS_FONT_FACE = "FONT_FACE"; //$NON-NLS-1$
-	public static final String CSS_CHARSET = "CHARSET"; //$NON-NLS-1$
-	public static final String CSS_ATKEYWORD = "ATKEYWORD"; //$NON-NLS-1$
-
-	public static final String CSS_STRING = "STRING"; //$NON-NLS-1$
-	public static final String CSS_URI = "URI"; //$NON-NLS-1$
-	public static final String CSS_MEDIUM = "MEDIUM"; //$NON-NLS-1$
-	public static final String CSS_MEDIA_SEPARATOR = "MEDIA_SEPARATOR"; //$NON-NLS-1$
-
-	public static final String CSS_CHARSET_NAME = "CHARSET_NAME"; //$NON-NLS-1$
-
-	public static final String CSS_PAGE_SELECTOR = "CSS_PAGE_SELECTOR"; //$NON-NLS-1$
-
-	public static final String CSS_SELECTOR_ELEMENT_NAME = "SELECTOR_ELEMENT_NAME"; //$NON-NLS-1$
-	public static final String CSS_SELECTOR_UNIVERSAL = "SELECTOR_UNIVERSAL"; //$NON-NLS-1$
-	public static final String CSS_SELECTOR_PSEUDO = "SELECTOR_PSEUDO"; //$NON-NLS-1$
-	public static final String CSS_SELECTOR_CLASS = "SELECTOR_CLASS"; //$NON-NLS-1$
-	public static final String CSS_SELECTOR_ID = "SELECTOR_ID"; //$NON-NLS-1$
-	public static final String CSS_SELECTOR_COMBINATOR = "SELECTOR_COMBINATOR"; //$NON-NLS-1$
-	public static final String CSS_SELECTOR_SEPARATOR = "SELECTOR_SEPARATOR"; //$NON-NLS-1$
-
-	public static final String CSS_SELECTOR_ATTRIBUTE_START = "SELECTOR_ATTRIBUTE_START"; //$NON-NLS-1$
-	public static final String CSS_SELECTOR_ATTRIBUTE_END = "SELECTOR_ATTRIBUTE_END"; //$NON-NLS-1$
-	public static final String CSS_SELECTOR_ATTRIBUTE_NAME = "SELECTOR_ATTRIBUTE_NAME"; //$NON-NLS-1$
-	public static final String CSS_SELECTOR_ATTRIBUTE_VALUE = "SELECTOR_ATTRIBUTE_VALUE"; //$NON-NLS-1$
-	public static final String CSS_SELECTOR_ATTRIBUTE_OPERATOR = "SELECTOR_ATTRIBUTE_OPERATOR"; //$NON-NLS-1$
-
-	public static final String CSS_DECLARATION_PROPERTY = "DECLARATION_PROPERTY"; //$NON-NLS-1$
-	public static final String CSS_DECLARATION_SEPARATOR = "DECLARATION_SEPARATOR"; //$NON-NLS-1$
-	public static final String CSS_DECLARATION_DELIMITER = "DECLARATION_DELIMITER"; //$NON-NLS-1$
-	public static final String CSS_DECLARATION_VALUE_IDENT = "DECLARATION_VALUE_IDENT"; //$NON-NLS-1$
-	public static final String CSS_DECLARATION_VALUE_DIMENSION = "DECLARATION_VALUE_DIMENSION"; //$NON-NLS-1$
-	public static final String CSS_DECLARATION_VALUE_PERCENTAGE = "DECLARATION_VALUE_PERCENTAGE"; //$NON-NLS-1$
-	public static final String CSS_DECLARATION_VALUE_NUMBER = "DECLARATION_VALUE_NUMBER"; //$NON-NLS-1$
-	public static final String CSS_DECLARATION_VALUE_FUNCTION = "DECLARATION_VALUE_FUNCTION"; //$NON-NLS-1$
-	public static final String CSS_DECLARATION_VALUE_PARENTHESIS_CLOSE = "DECLARATION_VALUE_PARENTHESIS_CLOSE"; //$NON-NLS-1$
-	public static final String CSS_DECLARATION_VALUE_STRING = "DECLARATION_VALUE_STRING"; //$NON-NLS-1$
-	public static final String CSS_DECLARATION_VALUE_URI = "DECLARATION_VALUE_URI"; //$NON-NLS-1$
-	public static final String CSS_DECLARATION_VALUE_HASH = "DECLARATION_VALUE_HASH"; //$NON-NLS-1$
-	public static final String CSS_DECLARATION_VALUE_UNICODE_RANGE = "DECLARATION_VALUE_UNICODE_RANGE"; //$NON-NLS-1$
-	public static final String CSS_DECLARATION_VALUE_IMPORTANT = "CSS_DECLARATION_VALUE_IMPORTANT"; //$NON-NLS-1$
-	public static final String CSS_DECLARATION_VALUE_OPERATOR = "DECLARATION_VALUE_OPERATOR"; //$NON-NLS-1$
-	public static final String CSS_DECLARATION_VALUE_S = "DECLARATION_VALUE_S"; //$NON-NLS-1$
-
-	public static final String CSS_UNKNOWN = "UNKNOWN"; //$NON-NLS-1$
-
-	// For null object : CSSTokenizer never set this value
-	public static final String CSS_UNDEFINED = "UNDEFINED"; //$NON-NLS-1$
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/parserz/CSSTextParser.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/parserz/CSSTextParser.java
deleted file mode 100644
index 922c3f1..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/parserz/CSSTextParser.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.core.internal.parserz;
-
-import java.io.IOException;
-import java.io.Reader;
-import java.io.StringReader;
-import java.util.Collections;
-import java.util.List;
-
-import org.eclipse.wst.css.core.internal.parser.CSSTokenizer;
-
-
-
-public class CSSTextParser {
-	public static final int MODE_STYLESHEET = 0;
-	public static final int MODE_DECLARATION = 1;
-	public static final int MODE_DECLARATION_VALUE = 2;
-
-	public CSSTextParser(int parserMode) {
-		initializeParserMode(parserMode);
-	}
-
-	public CSSTextParser(int parserMode, Reader reader) {
-		initializeParserMode(parserMode);
-		reset(reader);
-	}
-
-	public CSSTextParser(int parserMode, String input) {
-		initializeParserMode(parserMode);
-		reset(input);
-	}
-
-	public void reset(Reader reader) {
-		getTokenizer().reset(reader, 0);
-	}
-
-	public void reset(String input) {
-		getTokenizer().reset(new StringReader(input), 0);
-	}
-
-	public CSSTextToken[] getTokens() {
-		List tokenList = getTokenList();
-		CSSTextToken[] tokens = new CSSTextToken[tokenList.size()];
-		return (CSSTextToken[]) tokenList.toArray(tokens);
-	}
-
-	public List getTokenList() {
-		List tokens;
-		try {
-			tokens = getTokenizer().parseText();
-		}
-		catch (IOException e) {
-			tokens = Collections.EMPTY_LIST;
-		}
-		return tokens;
-	}
-
-	private void initializeParserMode(int parserMode) {
-		int initialState;
-		int bufsize;
-		switch (parserMode) {
-			case MODE_STYLESHEET :
-				initialState = CSSTokenizer.YYINITIAL;
-				bufsize = CSSTokenizer.BUFFER_SIZE_NORMAL;
-				break;
-			case MODE_DECLARATION :
-				initialState = CSSTokenizer.ST_DECLARATION;
-				bufsize = CSSTokenizer.BUFFER_SIZE_NORMAL;
-				break;
-			case MODE_DECLARATION_VALUE :
-				initialState = CSSTokenizer.ST_DECLARATION_PRE_VALUE;
-				bufsize = CSSTokenizer.BUFFER_SIZE_SMALL;
-				break;
-			default :
-				return;
-		}
-		if (0 < initialState) {
-			CSSTokenizer tokenizer = getTokenizer();
-			tokenizer.setInitialState(initialState);
-			tokenizer.setInitialBufferSize(bufsize);
-		}
-	}
-
-	private CSSTokenizer getTokenizer() {
-		if (fTokenizer == null) {
-			fTokenizer = new CSSTokenizer();
-		}
-		return fTokenizer;
-	}
-
-	private CSSTokenizer fTokenizer = null;
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/parserz/CSSTextToken.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/parserz/CSSTextToken.java
deleted file mode 100644
index adcf01f..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/parserz/CSSTextToken.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.css.core.internal.parserz;
-
-
-public class CSSTextToken {
-	public String kind;
-	public String image;
-	public int start;
-	public int length;
-
-	public String toString() {
-		return (image != null) ? image : ""; //$NON-NLS-1$
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/preferences/CSSCorePreferenceInitializer.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/preferences/CSSCorePreferenceInitializer.java
deleted file mode 100644
index fc3997d..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/preferences/CSSCorePreferenceInitializer.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.css.core.internal.preferences;
-
-import org.eclipse.core.runtime.preferences.AbstractPreferenceInitializer;
-import org.eclipse.core.runtime.preferences.DefaultScope;
-import org.eclipse.core.runtime.preferences.IEclipsePreferences;
-import org.eclipse.wst.css.core.internal.CSSCorePlugin;
-import org.eclipse.wst.sse.core.internal.encoding.CommonCharsetNames;
-import org.eclipse.wst.sse.core.internal.encoding.CommonEncodingPreferenceNames;
-
-/**
- * Sets default values for CSS Core preferences
- */
-public class CSSCorePreferenceInitializer extends AbstractPreferenceInitializer {
-
-	public void initializeDefaultPreferences() {
-		IEclipsePreferences node = new DefaultScope().getNode(CSSCorePlugin.getDefault().getBundle().getSymbolicName());
-
-		// formatting preferences
-		node.putInt(CSSCorePreferenceNames.LINE_WIDTH, 72);
-		node.putBoolean(CSSCorePreferenceNames.CLEAR_ALL_BLANK_LINES, false);
-		node.put(CSSCorePreferenceNames.INDENTATION_CHAR, CSSCorePreferenceNames.TAB);
-		node.putInt(CSSCorePreferenceNames.INDENTATION_SIZE, 1);
-
-		// cleanup preferences
-		node.putBoolean(CSSCorePreferenceNames.QUOTE_ATTR_VALUES, true);
-		node.putBoolean(CSSCorePreferenceNames.FORMAT_SOURCE, true);
-
-		// code generation preferences
-		node.put(CommonEncodingPreferenceNames.INPUT_CODESET, ""); //$NON-NLS-1$
-		String defaultEnc = "UTF-8";//$NON-NLS-1$
-		String systemEnc = System.getProperty("file.encoding"); //$NON-NLS-1$
-		if (systemEnc != null) {
-			defaultEnc = CommonCharsetNames.getPreferredDefaultIanaName(systemEnc, "UTF-8");//$NON-NLS-1$
-		}
-		node.put(CommonEncodingPreferenceNames.OUTPUT_CODESET, defaultEnc);
-		node.put(CommonEncodingPreferenceNames.END_OF_LINE_CODE, ""); //$NON-NLS-1$
-		
-		// additional css core preferences
-		node.putInt(CSSCorePreferenceNames.FORMAT_PROP_PRE_DELIM, 0);
-		node.putInt(CSSCorePreferenceNames.FORMAT_PROP_POST_DELIM, 1);
-		node.put(CSSCorePreferenceNames.FORMAT_QUOTE, "\"");//$NON-NLS-1$
-		node.put(CSSCorePreferenceNames.FORMAT_BETWEEN_VALUE, " ");//$NON-NLS-1$
-		node.putBoolean(CSSCorePreferenceNames.FORMAT_QUOTE_IN_URI, true);
-		node.putBoolean(CSSCorePreferenceNames.WRAPPING_ONE_PER_LINE, true);
-		node.putBoolean(CSSCorePreferenceNames.WRAPPING_PROHIBIT_WRAP_ON_ATTR, true);
-		node.putBoolean(CSSCorePreferenceNames.WRAPPING_NEWLINE_ON_OPEN_BRACE, false);
-		node.putInt(CSSCorePreferenceNames.CASE_IDENTIFIER, CSSCorePreferenceNames.UPPER);
-		node.putInt(CSSCorePreferenceNames.CASE_PROPERTY_NAME, CSSCorePreferenceNames.LOWER);
-		node.putInt(CSSCorePreferenceNames.CASE_PROPERTY_VALUE, CSSCorePreferenceNames.LOWER);
-
-		// CSS cleanup preferences
-		node.putInt(CSSCorePreferenceNames.CLEANUP_CASE_IDENTIFIER, CSSCorePreferenceNames.ASIS);
-		node.putInt(CSSCorePreferenceNames.CLEANUP_CASE_PROPERTY_NAME, CSSCorePreferenceNames.ASIS);
-		node.putInt(CSSCorePreferenceNames.CLEANUP_CASE_PROPERTY_VALUE, CSSCorePreferenceNames.ASIS);
-		node.putInt(CSSCorePreferenceNames.CLEANUP_CASE_SELECTOR, CSSCorePreferenceNames.ASIS);
-	}
-
-}
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/preferences/CSSCorePreferenceNames.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/preferences/CSSCorePreferenceNames.java
deleted file mode 100644
index d5b39fc..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/preferences/CSSCorePreferenceNames.java
+++ /dev/null
@@ -1,134 +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.core.internal.preferences;
-
-/**
- * CSS core preference keys.
- * 
- * @since 1.0
- */
-public class CSSCorePreferenceNames {
-	private CSSCorePreferenceNames() {
-		// empty private constructor so users cannot instantiate class
-	}
-
-	public static final String CASE_IDENTIFIER = "identifierCase"; //$NON-NLS-1$
-	public static final String CASE_PROPERTY_NAME = "propNameCase"; //$NON-NLS-1$
-	public static final String CASE_PROPERTY_VALUE = "propValueCase"; //$NON-NLS-1$
-	public static final String FORMAT_BETWEEN_VALUE = "betweenValue"; //$NON-NLS-1$
-	public static final String FORMAT_PROP_POST_DELIM = "postDelim"; //$NON-NLS-1$
-	public static final String FORMAT_PROP_PRE_DELIM = "preDelim"; //$NON-NLS-1$
-	public static final String FORMAT_QUOTE = "quote"; //$NON-NLS-1$
-	public static final String FORMAT_QUOTE_IN_URI = "quoteInURI"; //$NON-NLS-1$
-	public static final String WRAPPING_NEWLINE_ON_OPEN_BRACE = "newLineOnOpenBrace"; //$NON-NLS-1$
-	public static final String WRAPPING_ONE_PER_LINE = "onePropertyPerLine"; //$NON-NLS-1$
-	public static final String WRAPPING_PROHIBIT_WRAP_ON_ATTR = "prohibitWrapOnAttr"; //$NON-NLS-1$
-
-	// CSS cleanup preference names
-	public static final String CLEANUP_CASE_IDENTIFIER = "cleanupIdentifierCase"; //$NON-NLS-1$
-	public static final String CLEANUP_CASE_PROPERTY_NAME = "cleanupPropNameCase"; //$NON-NLS-1$
-	public static final String CLEANUP_CASE_PROPERTY_VALUE = "cleanupPropValueCase"; //$NON-NLS-1$
-	public static final String CLEANUP_CASE_SELECTOR = "cleanupSelectorCase"; //$NON-NLS-1$
-
-	/**
-	 * The maximum width of a line before a line split is needed.
-	 * <p>
-	 * Value is of type <code>Integer</code>.
-	 * </p>
-	 */
-	public static final String LINE_WIDTH = "lineWidth";//$NON-NLS-1$
-
-	/**
-	 * Indicates if all blanks lines should be cleared during formatting.
-	 * Blank lines will be kept when false.
-	 * <p>
-	 * Value is of type <code>Boolean</code>.
-	 * </p>
-	 */
-	public static final String CLEAR_ALL_BLANK_LINES = "clearAllBlankLines";//$NON-NLS-1$
-
-	/**
-	 * The number of #INDENTATION_CHAR for 1 indentation.
-	 * <p>
-	 * Value is of type <code>Integer</code>.
-	 * </p>
-	 */
-	public static final String INDENTATION_SIZE = "indentationSize";//$NON-NLS-1$
-
-	/**
-	 * The character used for indentation.
-	 * <p>
-	 * Value is of type <code>String</code>.<br />
-	 * Possible values: {TAB, SPACE}
-	 * </p>
-	 */
-	public static final String INDENTATION_CHAR = "indentationChar";//$NON-NLS-1$
-
-	/**
-	 * Possible value for the preference #INDENTATION_CHAR. Indicates to use
-	 * tab character when formatting.
-	 * 
-	 * @see #SPACE
-	 * @see #INDENTATION_CHAR
-	 */
-	public static final String TAB = "tab"; //$NON-NLS-1$
-
-	/**
-	 * Possible value for the preference #INDENTATION_CHAR. Indicates to use
-	 * space character when formatting.
-	 * 
-	 * @see #TAB
-	 * @see #INDENTATION_CHAR
-	 */
-	public static final String SPACE = "space"; //$NON-NLS-1$
-
-	/**
-	 * Indicates whether or not to quote all attribute values during cleanup.
-	 * <p>
-	 * Value is of type <code>Boolean</code>.
-	 * </p>
-	 */
-	public static final String QUOTE_ATTR_VALUES = "quoteAttrValues";//$NON-NLS-1$
-
-	/**
-	 * Indicates whether or not cleanup processor should format source.
-	 * <p>
-	 * Value is of type <code>Boolean</code>.
-	 * </p>
-	 */
-	public static final String FORMAT_SOURCE = "formatSource";//$NON-NLS-1$
-
-	/**
-	 * Possible value for the case preferences Indicates to leave case as is.
-	 * 
-	 * @see #LOWER
-	 * @see #UPPER
-	 */
-	public static final int ASIS = 0;
-
-	/**
-	 * Possible value for the case preferences Indicates to make name
-	 * lowercase.
-	 * 
-	 * @see #ASIS
-	 * @see #UPPER
-	 */
-	public static final int LOWER = 1;
-
-	/**
-	 * Possible value for the case preferences Indicates to make name
-	 * uppercase.
-	 * 
-	 * @see #LOWER
-	 * @see #ASIS
-	 */
-	public static final int UPPER = 2;
-}
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/provisional/adapters/ICSSModelAdapter.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/provisional/adapters/ICSSModelAdapter.java
deleted file mode 100644
index b28ae0d..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/provisional/adapters/ICSSModelAdapter.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.css.core.internal.provisional.adapters;
-
-
-
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSModel;
-import org.eclipse.wst.sse.core.internal.provisional.INodeAdapter;
-
-
-/**
- */
-public interface ICSSModelAdapter extends INodeAdapter {
-
-	ICSSModel getModel();
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/provisional/adapters/IModelProvideAdapter.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/provisional/adapters/IModelProvideAdapter.java
deleted file mode 100644
index d22ac37..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/provisional/adapters/IModelProvideAdapter.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.css.core.internal.provisional.adapters;
-
-
-
-import org.eclipse.wst.sse.core.internal.provisional.INodeAdapter;
-import org.eclipse.wst.sse.core.internal.provisional.IStructuredModel;
-
-/**
- * 
- */
-public interface IModelProvideAdapter extends INodeAdapter {
-
-	/**
-	 * 
-	 */
-	void modelProvided(IStructuredModel newModel);
-
-	/**
-	 */
-	void modelReleased(IStructuredModel newModel);
-
-	/**
-	 */
-	void modelRemoved(IStructuredModel newModel);
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/provisional/adapters/IStyleDeclarationAdapter.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/provisional/adapters/IStyleDeclarationAdapter.java
deleted file mode 100644
index 897f1b7..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/provisional/adapters/IStyleDeclarationAdapter.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.wst.css.core.internal.provisional.adapters;
-
-
-
-import org.w3c.dom.css.CSSStyleDeclaration;
-
-
-/**
- */
-public interface IStyleDeclarationAdapter extends ICSSModelAdapter {
-
-	/**
-	 */
-	public CSSStyleDeclaration getStyle();
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/provisional/adapters/IStyleSelectorAdapter.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/provisional/adapters/IStyleSelectorAdapter.java
deleted file mode 100644
index e678359..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/provisional/adapters/IStyleSelectorAdapter.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.core.internal.provisional.adapters;
-
-
-
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSSimpleSelector;
-import org.eclipse.wst.sse.core.internal.provisional.INodeAdapter;
-import org.w3c.dom.Element;
-
-
-/**
- * 
- */
-public interface IStyleSelectorAdapter extends INodeAdapter {
-
-	/**
-	 * @return boolean
-	 * @param element
-	 *            org.w3c.dom.Element
-	 * @param pseudoName
-	 *            java.lang.String
-	 */
-	boolean match(ICSSSimpleSelector selector, Element element, String pseudoName);
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/provisional/adapters/IStyleSheetAdapter.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/provisional/adapters/IStyleSheetAdapter.java
deleted file mode 100644
index a4e8251..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/provisional/adapters/IStyleSheetAdapter.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.wst.css.core.internal.provisional.adapters;
-
-
-
-import org.w3c.dom.Element;
-import org.w3c.dom.stylesheets.StyleSheet;
-
-/**
- */
-public interface IStyleSheetAdapter extends ICSSModelAdapter {
-
-	/**
-	 * Returns HTML/XML element that is the owner of this adapter
-	 */
-	Element getElement();
-
-	/**
-	 * Returns CSS document that is related to this element
-	 */
-	public StyleSheet getSheet();
-
-	/**
-	 * This is called at the time of releasing HTML/XML model
-	 */
-	public void released();
-
-	/**
-	 * This is called at the time of removing this Element from the document
-	 */
-	public void removed();
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/provisional/adapters/IStyleSheetListAdapter.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/provisional/adapters/IStyleSheetListAdapter.java
deleted file mode 100644
index 8027744..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/provisional/adapters/IStyleSheetListAdapter.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.wst.css.core.internal.provisional.adapters;
-
-
-
-import java.util.Enumeration;
-
-import org.eclipse.wst.sse.core.internal.provisional.INodeAdapter;
-import org.w3c.dom.Element;
-import org.w3c.dom.css.CSSStyleDeclaration;
-import org.w3c.dom.stylesheets.StyleSheetList;
-
-/**
- */
-public interface IStyleSheetListAdapter extends INodeAdapter {
-
-	/**
-	 */
-	Enumeration getClasses();
-
-	/**
-	 */
-	public CSSStyleDeclaration getOverrideStyle(Element element, String pseudoName);
-
-	/**
-	 */
-	public StyleSheetList getStyleSheets();
-
-	/**
-	 */
-	public void releaseStyleSheets();
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/provisional/contenttype/ContentTypeIdForCSS.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/provisional/contenttype/ContentTypeIdForCSS.java
deleted file mode 100644
index 79622cf..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/provisional/contenttype/ContentTypeIdForCSS.java
+++ /dev/null
@@ -1,30 +0,0 @@
-package org.eclipse.wst.css.core.internal.provisional.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 ContentTypeIdForCSS {
-	/**
-	 * 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_CSS = getConstantString();
-
-	/**
-	 * Don't allow instantiation.
-	 */
-	private ContentTypeIdForCSS() {
-		super();
-	}
-	
-	static String getConstantString() {
-		return "org.eclipse.wst.css.core.csssource"; //$NON-NLS-1$
-	}
-	
-
-}
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/provisional/document/ICSSAccess.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/provisional/document/ICSSAccess.java
deleted file mode 100644
index 6d84c33..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/provisional/document/ICSSAccess.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.css.core.internal.provisional.document;
-
-
-
-import java.util.Vector;
-
-/**
- * 
- */
-public interface ICSSAccess {
-
-	/**
-	 * @return java.util.Vector
-	 */
-	Vector getClassNames();
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/provisional/document/ICSSAttr.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/provisional/document/ICSSAttr.java
deleted file mode 100644
index 611e4c1..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/provisional/document/ICSSAttr.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.core.internal.provisional.document;
-
-
-
-/**
- * 
- */
-public interface ICSSAttr extends ICSSNode {
-
-	/**
-	 * @return java.lang.String
-	 */
-	String getName();
-
-	/**
-	 * @return org.eclipse.wst.css.core.model.interfaces.ICSSNode
-	 */
-	ICSSNode getOwnerCSSNode();
-
-	/**
-	 * @return java.lang.String
-	 */
-	String getValue();
-
-	/**
-	 * @param newValue
-	 *            java.lang.String
-	 */
-	void setValue(String newValue);
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/provisional/document/ICSSCharsetRule.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/provisional/document/ICSSCharsetRule.java
deleted file mode 100644
index 8687ebf..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/provisional/document/ICSSCharsetRule.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.css.core.internal.provisional.document;
-
-
-
-import org.w3c.dom.css.CSSCharsetRule;
-
-/**
- * 
- */
-public interface ICSSCharsetRule extends ICSSNode, CSSCharsetRule {
-
-	java.lang.String ENCODING = "encoding"; //$NON-NLS-1$
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/provisional/document/ICSSDocument.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/provisional/document/ICSSDocument.java
deleted file mode 100644
index 74562b2..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/provisional/document/ICSSDocument.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.wst.css.core.internal.provisional.document;
-
-
-
-import org.w3c.dom.css.CSSFontFaceRule;
-import org.w3c.dom.css.CSSRule;
-import org.w3c.dom.css.CSSUnknownRule;
-import org.w3c.dom.stylesheets.MediaList;
-
-/**
- * 
- */
-public interface ICSSDocument extends ICSSNode {
-
-	/**
-	 * @return org.w3c.dom.css.CSSCharsetRule
-	 */
-	ICSSCharsetRule createCSSCharsetRule();
-
-	/**
-	 * @return org.w3c.dom.css.CSSFontFaceRule
-	 */
-	CSSFontFaceRule createCSSFontFaceRule();
-
-	/**
-	 * @return org.w3c.dom.css.CSSImportRule
-	 */
-	ICSSImportRule createCSSImportRule();
-
-	/**
-	 * @return org.w3c.dom.css.ICSSMediaRule
-	 */
-	ICSSMediaRule createCSSMediaRule();
-
-	/**
-	 * @return org.w3c.dom.css.CSSPageRule
-	 */
-	ICSSPageRule createCSSPageRule();
-
-	/**
-	 * @return org.w3c.dom.css.CSSPrimitiveValue
-	 */
-	ICSSPrimitiveValue createCSSPrimitiveValue(short primitiveType);
-
-	/**
-	 * @return org.w3c.dom.css.CSSRule
-	 * @param rule
-	 *            java.lang.String
-	 */
-	CSSRule createCSSRule(String rule);
-
-	/**
-	 * @return org.w3c.dom.css.CSSStyleDeclaration
-	 */
-	ICSSStyleDeclaration createCSSStyleDeclaration();
-
-	/**
-	 * @param propertyName
-	 *            java.lang.String
-	 */
-	ICSSStyleDeclItem createCSSStyleDeclItem(String propertyName);
-
-	/**
-	 * @return org.w3c.dom.css.CSSStyleRule
-	 */
-	ICSSStyleRule createCSSStyleRule();
-
-	/**
-	 * @return org.w3c.dom.css.CSSUnknownRule
-	 */
-	CSSUnknownRule createCSSUnknownRule();
-
-	/**
-	 * @return org.w3c.dom.stylesheets.MediaList
-	 */
-	MediaList createMediaList();
-
-	ICSSModel getModel();
-
-	/**
-	 * @return boolean
-	 */
-	boolean isDocument();
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/provisional/document/ICSSImportRule.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/provisional/document/ICSSImportRule.java
deleted file mode 100644
index a514aa6..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/provisional/document/ICSSImportRule.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.core.internal.provisional.document;
-
-
-
-import org.w3c.dom.css.CSSImportRule;
-
-/**
- * 
- */
-public interface ICSSImportRule extends ICSSNode, CSSImportRule {
-
-	java.lang.String HREF = "href"; //$NON-NLS-1$
-
-	/**
-	 * 
-	 */
-	void refreshStyleSheet();
-
-	/**
-	 * @param href
-	 *            java.lang.String
-	 */
-	void setHref(String href);
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/provisional/document/ICSSMediaRule.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/provisional/document/ICSSMediaRule.java
deleted file mode 100644
index aef95a1..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/provisional/document/ICSSMediaRule.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.css.core.internal.provisional.document;
-
-
-
-import org.w3c.dom.css.CSSMediaRule;
-
-/**
- * 
- */
-public interface ICSSMediaRule extends ICSSNode, ICSSRuleContainer, CSSMediaRule {
-
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/provisional/document/ICSSModel.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/provisional/document/ICSSModel.java
deleted file mode 100644
index dd57cfb..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/provisional/document/ICSSModel.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.css.core.internal.provisional.document;
-
-
-
-import org.eclipse.wst.css.core.internal.event.ICSSStyleNotifier;
-import org.eclipse.wst.sse.core.internal.provisional.IStructuredModel;
-import org.w3c.dom.Node;
-
-
-/**
- * 
- */
-public interface ICSSModel extends ICSSStyleNotifier, IStructuredModel {
-
-	public static final String EXTERNAL = "externalCSS"; //$NON-NLS-1$
-	public static final String EMBEDDED = "embeddedCSS"; //$NON-NLS-1$
-	public static final String INLINE = "inlineCSS"; //$NON-NLS-1$
-
-	ICSSDocument getDocument();
-
-	/**
-	 * @return org.w3c.dom.Node
-	 */
-	Node getOwnerDOMNode();
-
-	/**
-	 * 
-	 * @return java.lang.Object
-	 */
-	Object getStyleSheetType();
-
-	/**
-	 * cleanup -> rebuild CSS Nodes This is pre-beta fix for 178176.
-	 */
-	void refreshNodes();
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/provisional/document/ICSSNamedNodeMap.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/provisional/document/ICSSNamedNodeMap.java
deleted file mode 100644
index 86c136a..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/provisional/document/ICSSNamedNodeMap.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.css.core.internal.provisional.document;
-
-
-
-/**
- * 
- */
-public interface ICSSNamedNodeMap extends ICSSNodeList {
-
-	/**
-	 * @return org.eclipse.wst.css.core.model.interfaces.ICSSNode
-	 * @param name
-	 *            java.lang.String
-	 */
-	ICSSNode getNamedItem(String name);
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/provisional/document/ICSSNode.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/provisional/document/ICSSNode.java
deleted file mode 100644
index d2691bd..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/provisional/document/ICSSNode.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.wst.css.core.internal.provisional.document;
-
-
-
-/**
- * 
- */
-public interface ICSSNode {
-
-	short ATTR_NODE = -1;
-	short UNKNOWNRULE_NODE = 0;
-	short STYLERULE_NODE = 1;
-	short CHARSETRULE_NODE = 2;
-	short IMPORTRULE_NODE = 3;
-	short MEDIARULE_NODE = 4;
-	short FONTFACERULE_NODE = 5;
-	short PAGERULE_NODE = 6;
-	short STYLESHEET_NODE = 7;
-	short STYLEDECLARATION_NODE = 8;
-	short STYLEDECLITEM_NODE = 9;
-	short VALUELIST_NODE = 10;
-	short PRIMITIVEVALUE_NODE = 11;
-	short MEDIALIST_NODE = 12;
-	short DOCUMENTCSSSTYLE_NODE = 13;
-	short LINKSTYLE_NODE = 14;
-	short ELEMENTCSSINLINESTYLE_NODE = 15;
-
-	ICSSNode cloneNode(boolean deep);
-
-	/**
-	 * @return org.eclipse.wst.css.core.model.interfaces.ICSSNamedNodeMap
-	 */
-	ICSSNamedNodeMap getAttributes();
-
-	ICSSNodeList getChildNodes();
-
-	ICSSNode getFirstChild();
-
-	ICSSNode getLastChild();
-
-	ICSSNode getNextSibling();
-
-	/**
-	 * @return short
-	 */
-	short getNodeType();
-
-	ICSSDocument getOwnerDocument();
-
-	ICSSNode getParentNode();
-
-	ICSSNode getPreviousSibling();
-
-	/**
-	 * @return boolean
-	 */
-	boolean hasChildNodes();
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/provisional/document/ICSSNodeList.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/provisional/document/ICSSNodeList.java
deleted file mode 100644
index 8c4323d..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/provisional/document/ICSSNodeList.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.css.core.internal.provisional.document;
-
-
-
-/**
- * 
- */
-public interface ICSSNodeList {
-
-	/**
-	 * @return int
-	 */
-	int getLength();
-
-	ICSSNode item(int index);
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/provisional/document/ICSSPageRule.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/provisional/document/ICSSPageRule.java
deleted file mode 100644
index cd26879..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/provisional/document/ICSSPageRule.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.css.core.internal.provisional.document;
-
-
-
-import org.w3c.dom.css.CSSPageRule;
-
-public interface ICSSPageRule extends ICSSNode, CSSPageRule {
-
-	java.lang.String SELECTOR = "selector"; //$NON-NLS-1$
-
-	ICSSSelectorList getSelectors();
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/provisional/document/ICSSPrimitiveValue.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/provisional/document/ICSSPrimitiveValue.java
deleted file mode 100644
index f6a0eba..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/provisional/document/ICSSPrimitiveValue.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.wst.css.core.internal.provisional.document;
-
-
-
-import org.w3c.dom.css.CSSPrimitiveValue;
-
-/**
- * 
- */
-public interface ICSSPrimitiveValue extends ICSSNode, ICSSValue, CSSPrimitiveValue {
-
-	short CSS_INTEGER = 26;
-	short CSS_HASH = 27;
-	short CSS_URANGE = 28;
-	short CSS_FORMAT = 29;
-	short CSS_LOCAL = 30;
-	short CSS_SLASH = 31;
-	short CSS_COMMA = 32;
-	short CSS_INHERIT_PRIMITIVE = 33;
-
-	/**
-	 * @param floatValue
-	 *            float
-	 * @exception org.w3c.dom.DOMException
-	 *                The exception description.
-	 */
-	void setValue(float floatValue) throws org.w3c.dom.DOMException;
-
-	/**
-	 * @param stringValue
-	 *            java.lang.String
-	 * @exception org.w3c.dom.DOMException
-	 *                The exception description.
-	 */
-	void setValue(String stringValue) throws org.w3c.dom.DOMException;
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/provisional/document/ICSSRuleContainer.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/provisional/document/ICSSRuleContainer.java
deleted file mode 100644
index ddbe1db..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/provisional/document/ICSSRuleContainer.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.core.internal.provisional.document;
-
-
-
-import org.w3c.dom.DOMException;
-import org.w3c.dom.css.CSSRule;
-
-/**
- * 
- */
-public interface ICSSRuleContainer {
-
-	/**
-	 * @return org.w3c.dom.css.CSSRule
-	 * @param rule
-	 *            org.w3c.dom.css.CSSRule
-	 * @exception org.w3c.dom.DOMException
-	 *                The exception description.
-	 */
-	CSSRule appendRule(CSSRule rule) throws org.w3c.dom.DOMException;
-
-	/**
-	 * @return org.w3c.dom.css.CSSRule
-	 * @param newRule
-	 *            org.w3c.dom.css.CSSRule
-	 * @param refRule
-	 *            org.w3c.dom.css.CSSRule
-	 */
-	CSSRule insertRuleBefore(CSSRule newRule, CSSRule refRule) throws DOMException;
-
-	/**
-	 * @return org.w3c.dom.css.CSSRule
-	 * @param rule
-	 *            org.w3c.dom.css.CSSRule
-	 * @exception org.w3c.dom.DOMException
-	 *                The exception description.
-	 */
-	CSSRule removeRule(CSSRule rule) throws org.w3c.dom.DOMException;
-
-	/**
-	 * @return org.w3c.dom.css.CSSRule
-	 * @param newChild
-	 *            org.w3c.dom.css.CSSRule
-	 * @param oldChild
-	 *            org.w3c.dom.css.CSSRule
-	 * @exception org.w3c.dom.DOMException
-	 *                The exception description.
-	 */
-	CSSRule replaceRule(CSSRule newRule, CSSRule oldRule) throws org.w3c.dom.DOMException;
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/provisional/document/ICSSSelector.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/provisional/document/ICSSSelector.java
deleted file mode 100644
index 84e7bea..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/provisional/document/ICSSSelector.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.css.core.internal.provisional.document;
-
-
-
-import java.util.Iterator;
-
-import org.w3c.dom.Element;
-
-/**
- * 
- */
-public interface ICSSSelector {
-
-	ICSSSelectorItem getItem(int index);
-
-	/**
-	 * @return java.util.Iterator
-	 */
-	Iterator getIterator();
-
-	/**
-	 * @return int
-	 */
-	int getLength();
-
-	/**
-	 * @return int
-	 */
-	int getSpecificity();
-
-	/**
-	 * @return java.lang.String
-	 */
-	String getString();
-
-	/**
-	 * @return boolean
-	 * @param element
-	 *            org.w3c.dom.Element
-	 */
-	boolean match(Element element, String pseudoName);
-
-	/**
-	 * 
-	 */
-	Iterator getErrors();
-
-	/**
-	 * 
-	 */
-	int getErrorCount();
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/provisional/document/ICSSSelectorCombinator.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/provisional/document/ICSSSelectorCombinator.java
deleted file mode 100644
index f0e25a5..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/provisional/document/ICSSSelectorCombinator.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.css.core.internal.provisional.document;
-
-
-
-/**
- * 
- */
-public interface ICSSSelectorCombinator extends ICSSSelectorItem {
-
-	public static final char DESCENDANT = ' ';
-	public static final char CHILD = '>';
-	public static final char ADJACENT = '+';
-	public static final char UNKNOWN = '?'; // error case
-
-	/**
-	 * @return int
-	 */
-	char getCombinatorType();
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/provisional/document/ICSSSelectorItem.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/provisional/document/ICSSSelectorItem.java
deleted file mode 100644
index 2e3585b..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/provisional/document/ICSSSelectorItem.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.css.core.internal.provisional.document;
-
-
-
-/**
- * 
- */
-public interface ICSSSelectorItem {
-
-	public static final int SIMPLE = 1;
-	public static final int COMBINATOR = 2;
-
-	/**
-	 * @return int
-	 */
-	int getItemType();
-
-	/**
-	 * @return java.lang.String
-	 */
-	String getString();
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/provisional/document/ICSSSelectorList.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/provisional/document/ICSSSelectorList.java
deleted file mode 100644
index 1514ce8..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/provisional/document/ICSSSelectorList.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.css.core.internal.provisional.document;
-
-
-
-import java.util.Iterator;
-
-import org.w3c.dom.Element;
-
-/**
- * 
- */
-public interface ICSSSelectorList {
-
-	/**
-	 * @return java.util.Iterator
-	 */
-	Iterator getIterator();
-
-	/**
-	 * @return int
-	 */
-	int getLength();
-
-	/**
-	 * @return java.util.Vector
-	 * @param index
-	 *            int
-	 */
-	ICSSSelector getSelector(int index);
-
-	/**
-	 * @return java.lang.String
-	 */
-	String getString();
-
-	/**
-	 * 
-	 */
-	int getErrorCount();
-
-	/**
-	 * 
-	 */
-	Iterator getErrors();
-
-	/**
-	 * @return boolean
-	 * @param element
-	 *            org.w3c.dom.Element
-	 */
-	boolean match(Element element, String pseudoName);
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/provisional/document/ICSSSimpleSelector.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/provisional/document/ICSSSimpleSelector.java
deleted file mode 100644
index 74e779d..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/provisional/document/ICSSSimpleSelector.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.wst.css.core.internal.provisional.document;
-
-
-
-/**
- * 
- */
-public interface ICSSSimpleSelector extends ICSSSelectorItem {
-
-	/**
-	 * @return java.lang.String
-	 * @param index
-	 *            int
-	 */
-	String getAttribute(int index);
-
-	/**
-	 * @return java.lang.String
-	 * @param index
-	 *            int
-	 */
-	String getClass(int index);
-
-	/**
-	 * @return java.lang.String
-	 * @param index
-	 *            int
-	 */
-	String getID(int index);
-
-	/**
-	 * @return java.lang.String
-	 */
-	String getName();
-
-	/**
-	 * @return boolean
-	 */
-	int getNumOfAttributes();
-
-	/**
-	 * @return boolean
-	 */
-	int getNumOfClasses();
-
-	/**
-	 * @return boolean
-	 */
-	int getNumOfIDs();
-
-	/**
-	 * @return boolean
-	 */
-	int getNumOfPseudoNames();
-
-	/**
-	 * @return java.lang.String
-	 * @param index
-	 *            int
-	 */
-	String getPseudoName(int index);
-
-	/**
-	 * @return boolean
-	 */
-	boolean isUniversal();
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/provisional/document/ICSSStyleDeclItem.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/provisional/document/ICSSStyleDeclItem.java
deleted file mode 100644
index 5b170c4..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/provisional/document/ICSSStyleDeclItem.java
+++ /dev/null
@@ -1,73 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this 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.core.internal.provisional.document;
-
-
-
-import org.w3c.dom.css.CSSValue;
-
-/**
- * 
- */
-public interface ICSSStyleDeclItem extends ICSSNode, ICSSValueList {
-
-	java.lang.String IMPORTANT = "important"; //$NON-NLS-1$
-
-	/**
-	 * @return org.w3c.dom.css.CSSPrimitiveValue
-	 * @param value
-	 *            org.w3c.dom.css.CSSPrimitiveValue
-	 * @exception org.w3c.dom.DOMException
-	 *                The exception description.
-	 */
-	ICSSPrimitiveValue appendValue(ICSSPrimitiveValue value) throws org.w3c.dom.DOMException;
-
-	/**
-	 * @return org.w3c.dom.css.CSSValue
-	 */
-	CSSValue getCSSValue();
-
-	/**
-	 * @return java.lang.String
-	 */
-	String getPriority();
-
-	/**
-	 * @return java.lang.String
-	 */
-	String getPropertyName();
-
-	/**
-	 * @return org.w3c.dom.css.CSSPrimitiveValue
-	 * @param value
-	 *            org.w3c.dom.css.CSSPrimitiveValue
-	 * @exception org.w3c.dom.DOMException
-	 *                The exception description.
-	 */
-	ICSSPrimitiveValue removeValue(ICSSPrimitiveValue value) throws org.w3c.dom.DOMException;
-
-	/**
-	 * @return org.w3c.dom.css.CSSPrimitiveValue
-	 * @param newValue
-	 *            org.w3c.dom.css.CSSPrimitiveValue
-	 * @param oldValue
-	 *            org.w3c.dom.css.CSSPrimitiveValue
-	 * @exception org.w3c.dom.DOMException
-	 *                The exception description.
-	 */
-	ICSSPrimitiveValue replaceValue(ICSSPrimitiveValue newValue, ICSSPrimitiveValue oldValue) throws org.w3c.dom.DOMException;
-
-	/**
-	 * @param priority
-	 *            java.lang.String
-	 */
-	void setPriority(String priority);
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/provisional/document/ICSSStyleDeclaration.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/provisional/document/ICSSStyleDeclaration.java
deleted file mode 100644
index f0987f3..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/provisional/document/ICSSStyleDeclaration.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.css.core.internal.provisional.document;
-
-
-
-import org.w3c.dom.css.CSSStyleDeclaration;
-
-public interface ICSSStyleDeclaration extends ICSSDocument, CSSStyleDeclaration {
-
-	ICSSStyleDeclItem getDeclItemNode(String propertyName);
-
-	ICSSStyleDeclItem removeDeclItemNode(ICSSStyleDeclItem oldDecl) throws org.w3c.dom.DOMException;
-
-	ICSSStyleDeclItem setDeclItemNode(ICSSStyleDeclItem newDecl) throws org.w3c.dom.DOMException;
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/provisional/document/ICSSStyleRule.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/provisional/document/ICSSStyleRule.java
deleted file mode 100644
index 8d44167..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/provisional/document/ICSSStyleRule.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.css.core.internal.provisional.document;
-
-
-
-import org.w3c.dom.css.CSSStyleRule;
-
-public interface ICSSStyleRule extends ICSSNode, CSSStyleRule {
-
-	java.lang.String SELECTOR = "selector"; //$NON-NLS-1$
-
-	ICSSSelectorList getSelectors();
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/provisional/document/ICSSStyleSheet.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/provisional/document/ICSSStyleSheet.java
deleted file mode 100644
index 3686d8b..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/provisional/document/ICSSStyleSheet.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.core.internal.provisional.document;
-
-
-
-import org.w3c.dom.Document;
-import org.w3c.dom.NodeList;
-import org.w3c.dom.css.CSSRuleList;
-import org.w3c.dom.css.CSSStyleSheet;
-import org.w3c.dom.stylesheets.StyleSheetList;
-
-/**
- * 
- */
-public interface ICSSStyleSheet extends ICSSDocument, ICSSRuleContainer, CSSStyleSheet {
-
-	/**
-	 * @return org.w3c.dom.NodeList
-	 */
-	NodeList getOwnerNodes();
-
-	/**
-	 * @return org.w3c.dom.NodeList
-	 * @param doc
-	 *            org.w3c.dom.Document
-	 */
-	NodeList getOwnerNodes(Document doc);
-
-	/**
-	 * @return org.w3c.dom.css.CSSRuleList
-	 */
-	CSSRuleList getOwnerRules();
-
-	/**
-	 * @return org.w3c.dom.stylesheets.StyleSheetList
-	 */
-	StyleSheetList getParentStyleSheets();
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/provisional/document/ICSSValue.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/provisional/document/ICSSValue.java
deleted file mode 100644
index f73231d..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/provisional/document/ICSSValue.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.css.core.internal.provisional.document;
-
-
-
-import org.w3c.dom.css.CSSValue;
-
-/**
- * 
- */
-public interface ICSSValue extends CSSValue {
-
-	/**
-	 * @return java.lang.String
-	 */
-	String getCSSValueText();
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/provisional/document/ICSSValueList.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/provisional/document/ICSSValueList.java
deleted file mode 100644
index 546e452..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/provisional/document/ICSSValueList.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.css.core.internal.provisional.document;
-
-
-
-import org.w3c.dom.css.CSSValueList;
-
-/**
- * 
- */
-public interface ICSSValueList extends ICSSValue, CSSValueList {
-
-	/**
-	 * @return org.w3c.dom.css.CSSPrimitiveValue
-	 * @param value
-	 *            org.w3c.dom.css.CSSPrimitiveValue
-	 */
-	ICSSPrimitiveValue appendValue(ICSSPrimitiveValue value);
-
-	/**
-	 * @return org.w3c.dom.css.CSSPrimitiveValue
-	 * @param value
-	 *            org.w3c.dom.css.CSSPrimitiveValue
-	 */
-	ICSSPrimitiveValue removeValue(ICSSPrimitiveValue value);
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/provisional/document/ICounter.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/provisional/document/ICounter.java
deleted file mode 100644
index 4eea179..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/provisional/document/ICounter.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.css.core.internal.provisional.document;
-
-
-
-import org.w3c.dom.css.Counter;
-
-/**
- * 
- */
-public interface ICounter extends ICSSNode, Counter {
-
-	java.lang.String IDENTIFIER = "identifier"; //$NON-NLS-1$
-	java.lang.String LISTSTYLE = "liststyle"; //$NON-NLS-1$
-	java.lang.String SEPARATOR = "separator"; //$NON-NLS-1$
-
-	/**
-	 * @param identifier
-	 *            java.lang.String
-	 * @exception org.w3c.dom.DOMException
-	 *                The exception description.
-	 */
-	void setIdentifier(String identifier) throws org.w3c.dom.DOMException;
-
-	/**
-	 * @param listStyle
-	 *            java.lang.String
-	 * @exception org.w3c.dom.DOMException
-	 *                The exception description.
-	 */
-	void setListStyle(String listStyle) throws org.w3c.dom.DOMException;
-
-	/**
-	 * @param Separator
-	 *            java.lang.String
-	 * @exception org.w3c.dom.DOMException
-	 *                The exception description.
-	 */
-	void setSeparator(String separator) throws org.w3c.dom.DOMException;
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/provisional/document/IDOMImplementationCSS.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/provisional/document/IDOMImplementationCSS.java
deleted file mode 100644
index 828891f..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/provisional/document/IDOMImplementationCSS.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.css.core.internal.provisional.document;
-
-
-
-import org.w3c.dom.css.DOMImplementationCSS;
-
-/**
- * 
- */
-public interface IDOMImplementationCSS extends DOMImplementationCSS {
-
-	ICSSStyleDeclaration createCSSStyleDeclaration() throws org.w3c.dom.DOMException;
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/provisional/document/IDocumentStyle.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/provisional/document/IDocumentStyle.java
deleted file mode 100644
index 03dbeda..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/provisional/document/IDocumentStyle.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.css.core.internal.provisional.document;
-
-
-
-import org.w3c.dom.stylesheets.DocumentStyle;
-import org.w3c.dom.stylesheets.StyleSheet;
-
-/**
- * 
- */
-public interface IDocumentStyle extends DocumentStyle {
-
-	/**
-	 * @return org.w3c.dom.stylesheets.StyleSheet
-	 * @param newSheet
-	 *            org.w3c.dom.stylesheets.StyleSheet
-	 * @exception org.w3c.dom.DOMException
-	 *                The exception description.
-	 */
-	StyleSheet appendSheet(StyleSheet newSheet) throws org.w3c.dom.DOMException;
-
-	/**
-	 * @return org.w3c.dom.stylesheets.StyleSheet
-	 * @param newSheet
-	 *            org.w3c.dom.stylesheets.StyleSheet
-	 * @param refSheet
-	 *            org.w3c.dom.stylesheets.StyleSheet
-	 * @exception org.w3c.dom.DOMException
-	 *                The exception description.
-	 */
-	StyleSheet insertSheetBefore(StyleSheet newSheet, StyleSheet refSheet) throws org.w3c.dom.DOMException;
-
-	/**
-	 * @return org.w3c.dom.stylesheets.StyleSheet
-	 * @param oldSheet
-	 *            org.w3c.dom.stylesheets.StyleSheet
-	 * @exception org.w3c.dom.DOMException
-	 *                The exception description.
-	 */
-	StyleSheet removeSheet(StyleSheet oldSheet) throws org.w3c.dom.DOMException;
-
-	/**
-	 * @return org.w3c.dom.stylesheets.StyleSheet
-	 * @param newSheet
-	 *            org.w3c.dom.stylesheets.StyleSheet
-	 * @param oldSheet
-	 *            org.w3c.dom.stylesheets.StyleSheet
-	 * @exception org.w3c.dom.DOMException
-	 *                The exception description.
-	 */
-	StyleSheet replaceSheet(StyleSheet newSheet, StyleSheet oldSheet) throws org.w3c.dom.DOMException;
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/provisional/preferences/CSSPreferenceHelper.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/provisional/preferences/CSSPreferenceHelper.java
deleted file mode 100644
index 0aa3a4a..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/provisional/preferences/CSSPreferenceHelper.java
+++ /dev/null
@@ -1,229 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this 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.core.internal.provisional.preferences;
-
-import org.eclipse.core.runtime.Preferences;
-import org.eclipse.wst.css.core.internal.CSSCorePlugin;
-import org.eclipse.wst.css.core.internal.preferences.CSSCorePreferenceNames;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSModel;
-
-/**
- * @deprecated just access preferences directly
- */
-public class CSSPreferenceHelper {
-
-	/**
-	 * 
-	 */
-	public synchronized static CSSPreferenceHelper getInstance() {
-		if (fInstance == null) {
-			fInstance = new CSSPreferenceHelper();
-		}
-		return fInstance;
-	}
-
-	/**
-	 * 
-	 */
-	public String getBetweenValueString() {
-		return getPreferences().getString(CSSCorePreferenceNames.FORMAT_BETWEEN_VALUE);
-	}
-
-	/**
-	 * 
-	 */
-	public String getIndentString() {
-		String indent = ""; //$NON-NLS-1$
-		
-		Preferences preferences = getPreferences();
-		if (preferences != null) {
-			String indentChar = " "; //$NON-NLS-1$
-			String indentCharPref = preferences.getString(CSSCorePreferenceNames.INDENTATION_CHAR);
-			if (CSSCorePreferenceNames.TAB.equals(indentCharPref)) {
-				indentChar = "\t"; //$NON-NLS-1$
-			}
-			int indentationWidth = preferences.getInt(CSSCorePreferenceNames.INDENTATION_SIZE);
-	
-			for (int i = 0; i < indentationWidth; i++) {
-				indent += indentChar;
-			}
-		}
-		return indent;
-	}
-
-	/**
-	 * 
-	 */
-	public int getMaxLineWidth() {
-		Preferences prefs = getPreferences();
-		return prefs.getInt(CSSCorePreferenceNames.LINE_WIDTH);
-	}
-
-	/**
-	 * 
-	 */
-	public String getQuoteString(ICSSModel model) {
-		// nakamori_TODO css pref transition
-		return getPreferences().getString(CSSCorePreferenceNames.FORMAT_QUOTE);
-	}
-
-	/**
-	 * 
-	 */
-	public int getSpacesPostDelimiter() {
-		return getPreferences().getInt(CSSCorePreferenceNames.FORMAT_PROP_POST_DELIM);
-	}
-
-	/**
-	 * 
-	 */
-	public int getSpacesPreDelimiter() {
-		return getPreferences().getInt(CSSCorePreferenceNames.FORMAT_PROP_PRE_DELIM);
-	}
-
-	/**
-	 * 
-	 */
-	public boolean isIdentUpperCase() {
-		if (getPreferences().getInt(CSSCorePreferenceNames.CASE_IDENTIFIER) == CSSCorePreferenceNames.UPPER)
-			return true;
-		return false;
-	}
-
-	/**
-	 * 
-	 */
-	public boolean isNewLineOnOpenBrace() {
-		return getPreferences().getBoolean(CSSCorePreferenceNames.WRAPPING_NEWLINE_ON_OPEN_BRACE);
-	}
-
-	/**
-	 * 
-	 */
-	public boolean isOnePropertyPerLine() {
-		return getPreferences().getBoolean(CSSCorePreferenceNames.WRAPPING_ONE_PER_LINE);
-	}
-
-	/**
-	 * 
-	 */
-	public boolean isProhibitWrapOnAttr() {
-		return getPreferences().getBoolean(CSSCorePreferenceNames.WRAPPING_PROHIBIT_WRAP_ON_ATTR);
-	}
-
-	/**
-	 * 
-	 */
-	public boolean isPropNameUpperCase() {
-		if (getPreferences().getInt(CSSCorePreferenceNames.CASE_PROPERTY_NAME) == CSSCorePreferenceNames.UPPER)
-			return true;
-		return false;
-	}
-
-	/**
-	 * 
-	 */
-	public boolean isPropValueUpperCase() {
-		if (getPreferences().getInt(CSSCorePreferenceNames.CASE_PROPERTY_VALUE) == CSSCorePreferenceNames.UPPER)
-			return true;
-		return false;
-	}
-
-	/**
-	 * 
-	 */
-	public boolean isQuoteInURI() {
-		return getPreferences().getBoolean(CSSCorePreferenceNames.FORMAT_QUOTE_IN_URI);
-	}
-
-	/**
-	 * 
-	 */
-	protected void setBetweenValueString(String newBetweenValueString) {
-		getPreferences().setValue(CSSCorePreferenceNames.FORMAT_BETWEEN_VALUE, newBetweenValueString);
-	}
-
-	/**
-	 * 
-	 */
-	protected void setIdentUpperCase(boolean newIdentUpperCase) {
-		int theCase = CSSCorePreferenceNames.LOWER;
-		if (newIdentUpperCase)
-			theCase = CSSCorePreferenceNames.UPPER;
-		getPreferences().setValue(CSSCorePreferenceNames.CASE_IDENTIFIER, theCase);
-	}
-
-	/**
-	 * 
-	 */
-	protected void setOnePropertyPerLine(boolean newOnePropertyPerLine) {
-		getPreferences().setValue(CSSCorePreferenceNames.WRAPPING_ONE_PER_LINE, newOnePropertyPerLine);
-	}
-
-	/**
-	 * 
-	 */
-	protected void setProhibitWrapOnAttr(boolean newProhibitWrapOnAttr) {
-		getPreferences().setValue(CSSCorePreferenceNames.WRAPPING_PROHIBIT_WRAP_ON_ATTR, newProhibitWrapOnAttr);
-	}
-
-	/**
-	 * 
-	 */
-	protected void setPropNameUpperCase(boolean newPropNameUpperCase) {
-		int theCase = CSSCorePreferenceNames.LOWER;
-		if (newPropNameUpperCase)
-			theCase = CSSCorePreferenceNames.UPPER;
-		getPreferences().setValue(CSSCorePreferenceNames.CASE_PROPERTY_NAME, theCase);
-	}
-
-	/**
-	 * 
-	 */
-	protected void setPropValueUpperCase(boolean newPropValueUpperCase) {
-		int theCase = CSSCorePreferenceNames.LOWER;
-		if (newPropValueUpperCase)
-			theCase = CSSCorePreferenceNames.UPPER;
-		getPreferences().setValue(CSSCorePreferenceNames.CASE_PROPERTY_VALUE, theCase);
-	}
-
-	/**
-	 * 
-	 */
-	public void setQuoteString(String quote) {
-		getPreferences().setValue(CSSCorePreferenceNames.FORMAT_QUOTE, quote);
-	}
-
-	/**
-	 * 
-	 */
-	public void setSpacesPostDelimiter(int num) {
-		getPreferences().setValue(CSSCorePreferenceNames.FORMAT_PROP_POST_DELIM, num);
-	}
-
-	/**
-	 * 
-	 */
-	public void setSpacesPreDelimiter(int num) {
-		getPreferences().setValue(CSSCorePreferenceNames.FORMAT_PROP_PRE_DELIM, num);
-	}
-
-	private Preferences getPreferences() {
-		CSSCorePlugin cssModelPlugin = CSSCorePlugin.getDefault();
-		return cssModelPlugin.getPluginPreferences();
-	}
-
-	private CSSPreferenceHelper() {
-		super();
-	}
-
-	private static CSSPreferenceHelper fInstance = null;
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/provisional/text/ICSSPartitionTypes.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/provisional/text/ICSSPartitionTypes.java
deleted file mode 100644
index 5555272..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/provisional/text/ICSSPartitionTypes.java
+++ /dev/null
@@ -1,15 +0,0 @@
-package org.eclipse.wst.css.core.internal.provisional.text;
-
-import org.eclipse.wst.sse.core.internal.provisional.text.IStructuredPartitionTypes;
-
-/**
- * This interface is not intended to be implemented. It defines the
- * partitioning for CSS and all its partitions. Clients should reference the
- * partition type Strings defined here directly.
- * 
- * @since 1.0
- */
-public interface ICSSPartitionTypes extends IStructuredPartitionTypes {
-
-	String STYLE = "org.eclipse.wst.css.STYLE"; //$NON-NLS-1$
-}
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/tasks/CSSTaskScannerDelegate.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/tasks/CSSTaskScannerDelegate.java
deleted file mode 100644
index dd5bf7d..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/tasks/CSSTaskScannerDelegate.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.css.core.internal.tasks;
-
-import org.eclipse.jface.text.BadLocationException;
-import org.eclipse.jface.text.IDocument;
-import org.eclipse.wst.css.core.internal.parserz.CSSRegionContexts;
-import org.eclipse.wst.sse.core.internal.provisional.text.IStructuredDocumentRegion;
-import org.eclipse.wst.sse.core.internal.provisional.text.ITextRegion;
-import org.eclipse.wst.sse.core.internal.tasks.TaskScannerDelegate;
-
-public class CSSTaskScannerDelegate extends TaskScannerDelegate {
-	protected String getCommentedText(IDocument document, int begin, int length) throws BadLocationException {
-		String text = super.getCommentedText(document, begin, length);
-		if (text != null && text.endsWith("*/")) { //$NON-NLS-1$
-			text = text.substring(0, text.length() - 2);
-		}
-		return text;
-	}
-
-	protected boolean isCommentRegion(IStructuredDocumentRegion region, ITextRegion textRegion) {
-		return textRegion.getType().equals(CSSRegionContexts.CSS_COMMENT);
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/text/CSSStructuredDocumentReParser.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/text/CSSStructuredDocumentReParser.java
deleted file mode 100644
index 1558f82..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/text/CSSStructuredDocumentReParser.java
+++ /dev/null
@@ -1,360 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this 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.core.internal.text;
-
-import org.eclipse.jface.text.BadLocationException;
-import org.eclipse.jface.text.IRegion;
-import org.eclipse.wst.css.core.internal.Logger;
-import org.eclipse.wst.css.core.internal.parser.CSSRegionUtil;
-import org.eclipse.wst.css.core.internal.parserz.CSSRegionContexts;
-import org.eclipse.wst.css.core.internal.util.CSSUtil;
-import org.eclipse.wst.css.core.internal.util.RegionIterator;
-import org.eclipse.wst.sse.core.internal.provisional.events.StructuredDocumentEvent;
-import org.eclipse.wst.sse.core.internal.provisional.text.IStructuredDocumentRegion;
-import org.eclipse.wst.sse.core.internal.provisional.text.IStructuredTextReParser;
-import org.eclipse.wst.sse.core.internal.provisional.text.ITextRegion;
-import org.eclipse.wst.sse.core.internal.text.StructuredDocumentReParser;
-
-
-/**
- * This class provides a centralized place to put "reparsing" logic. This is
- * the logic that reparses the text incrementally, as a user types in new
- * characters, or DOM nodes are inserted or deleted. Note: it is not a thread
- * safe class.
- */
-public class CSSStructuredDocumentReParser extends StructuredDocumentReParser {
-
-	class ReparseRange {
-		ReparseRange() {
-			reset();
-		}
-
-		ReparseRange(int start, int end) {
-			fRangeStart = start;
-			fRangeEnd = end;
-		}
-
-		void setStart(int start) {
-			fRangeStart = start;
-		}
-
-		void setEnd(int end) {
-			fRangeEnd = end;
-		}
-
-		int getStart() {
-			return fRangeStart;
-		}
-
-		int getEnd() {
-			return fRangeEnd;
-		}
-
-		boolean isValid() {
-			return (0 < fRangeEnd - fRangeStart) ? true : false;
-		}
-
-		void reset() {
-			fRangeStart = Integer.MAX_VALUE;
-			fRangeEnd = 0;
-		}
-
-		void expand(ReparseRange range) {
-			if (range == null || !range.isValid()) {
-				return;
-			}
-			int start = range.getStart();
-			if (start < fRangeStart) {
-				fRangeStart = start;
-			}
-			int end = range.getEnd();
-			if (fRangeEnd < end) {
-				fRangeEnd = end;
-			}
-		}
-
-		private int fRangeStart;
-		private int fRangeEnd;
-	}
-
-	/**
-	 * 
-	 */
-	public CSSStructuredDocumentReParser() {
-		super();
-	}
-
-	/**
-	 * 
-	 */
-	// public StructuredDocumentEvent
-	// checkForCrossStructuredDocumentRegionBoundryCases2() {
-	// StructuredDocumentEvent result = specialPositionUpdate(fStart, fStart +
-	// fLengthToReplace - 1);
-	// if (result == null) {
-	// result = checkInsideBrace();
-	// }
-	// return result;
-	// }
-	protected StructuredDocumentEvent checkForCrossStructuredDocumentRegionSyntax() {
-		int checkStart = fStart;
-		int checkEnd = fStart + fLengthToReplace - 1;
-		IStructuredDocumentRegion endRegion = fStructuredDocument.getRegionAtCharacterOffset(checkEnd);
-		if (endRegion != null) {
-			checkEnd = endRegion.getEndOffset();
-		}
-
-		ReparseRange range = new ReparseRange(checkStart, checkEnd);
-
-		range.expand(getUpdateRangeForDelimiter(range.getStart(), range.getEnd()));
-		range.expand(getUpdateRangeForUnknownRegion(range.getStart(), range.getEnd()));
-
-		range.expand(getUpdateRangeForQuotes(range.getStart(), range.getEnd()));
-		range.expand(getUpdateRangeForComments(range.getStart(), range.getEnd()));
-		range.expand(getUpdateRangeForBraces(range.getStart(), range.getEnd()));
-
-		StructuredDocumentEvent result;
-
-		result = checkInsideBrace(range.getStart(), range.getEnd());
-
-		if (result == null) {
-			result = reparse(range.getStart(), range.getEnd());
-		}
-
-		return result;
-	}
-
-	private ReparseRange getUpdateRangeForUnknownRegion(int start, int end) {
-		int newStart = start;
-		RegionIterator iterator = new RegionIterator(fStructuredDocument, start - 1);
-		if (iterator.hasPrev()) {
-			iterator.prev(); // skip myself
-		}
-		while (iterator.hasPrev()) {
-			ITextRegion region = iterator.prev();
-			if (region != null && region.getType() == CSSRegionContexts.CSS_UNKNOWN) {
-				newStart = iterator.getStructuredDocumentRegion().getStartOffset(region);
-			}
-			else {
-				break;
-			}
-		}
-
-		if (start != newStart) {
-			return new ReparseRange(newStart, end);
-		}
-
-		return null;
-	}
-
-	private ReparseRange getUpdateRangeForDelimiter(int start, int end) {
-		if (dirtyStart != null && dirtyStart.getStart() < start) {
-			start = dirtyStart.getStart();
-		}
-		IStructuredDocumentRegion docRegion = fStructuredDocument.getRegionAtCharacterOffset(start);
-		if (docRegion == null) {
-			return null;
-		}
-		if (docRegion.getType() == CSSRegionContexts.CSS_DELIMITER) {
-			IStructuredDocumentRegion prevRegion = docRegion.getPrevious();
-			if (prevRegion != null) {
-				return new ReparseRange(prevRegion.getStart(), end);
-			}
-		}
-
-		return null;
-	}
-
-	private ReparseRange getUpdateRangeForQuotes(int start, int end) {
-		ReparseRange range = new ReparseRange();
-
-		range.expand(getUpdateRangeForPair(start, end, "\"", "\"")); //$NON-NLS-2$//$NON-NLS-1$
-		range.expand(getUpdateRangeForPair(start, end, "\'", "\'")); //$NON-NLS-2$//$NON-NLS-1$
-
-		return (range.isValid()) ? range : null;
-	}
-
-	private ReparseRange getUpdateRangeForComments(int start, int end) {
-		ReparseRange range = new ReparseRange();
-
-		range.expand(getUpdateRangeForPair(start, end, "/*", "*/")); //$NON-NLS-2$//$NON-NLS-1$
-		range.expand(getUpdateRangeForPair(start, end, "<%", "%>")); //$NON-NLS-2$//$NON-NLS-1$
-
-		return (range.isValid()) ? range : null;
-	}
-
-	private ReparseRange getUpdateRangeForBraces(int start, int end) {
-		ReparseRange range = new ReparseRange();
-
-		range.expand(getUpdateRangeForPair(start, end, "[", "]")); //$NON-NLS-2$//$NON-NLS-1$
-		range.expand(getUpdateRangeForPair(start, end, "(", ")")); //$NON-NLS-2$//$NON-NLS-1$
-		range.expand(getUpdateRangeForPair(start, end, "{", "}")); //$NON-NLS-2$//$NON-NLS-1$
-
-		return (range.isValid()) ? range : null;
-	}
-
-	private StructuredDocumentEvent checkInsideBrace(int start, int end) {
-		StructuredDocumentEvent result = null;
-		IStructuredDocumentRegion region = fStructuredDocument.getRegionAtCharacterOffset(start);
-		if (region == null) {
-			return null;
-		}
-		boolean bDeclaration = false;
-		String type = region.getType();
-		if (CSSRegionUtil.isDeclarationType(type) || type == CSSRegionContexts.CSS_LBRACE || type == CSSRegionContexts.CSS_RBRACE) {
-			bDeclaration = true;
-		}
-		if (!bDeclaration) {
-			IStructuredDocumentRegion prevRegion = CSSUtil.findPreviousSignificantNode(region);
-			if (prevRegion != null) {
-				type = prevRegion.getType();
-				if (CSSRegionUtil.isDeclarationType(type) || type == CSSRegionContexts.CSS_LBRACE) {
-					bDeclaration = true;
-				}
-			}
-		}
-		if (!bDeclaration) {
-			IStructuredDocumentRegion nextRegion = CSSUtil.findNextSignificantNode(region);
-			if (nextRegion != null) {
-				type = nextRegion.getType();
-				if (CSSRegionUtil.isDeclarationType(type) || type == CSSRegionContexts.CSS_RBRACE) {
-					bDeclaration = true;
-				}
-			}
-		}
-
-		if (bDeclaration) {
-			IStructuredDocumentRegion startRegion = findRuleStart(region);
-			if (startRegion != null) {
-				IStructuredDocumentRegion endRegion = fStructuredDocument.getRegionAtCharacterOffset(end);
-				if (endRegion != null) {
-					result = reparse(startRegion, endRegion);
-				}
-			}
-		}
-		return result;
-	}
-
-	private IStructuredDocumentRegion findRuleStart(IStructuredDocumentRegion startRegion) {
-		IStructuredDocumentRegion region = startRegion;
-		// find '{'
-		while (region != null && region.getType() != CSSRegionContexts.CSS_LBRACE) {
-			region = region.getPrevious();
-		}
-		// if (region == startRegion) {
-		// return null;
-		// }
-		// else
-		if (region != null) { // '{' is found
-			region = region.getPrevious();
-			if (isLeadingDeclarationType(region.getType())) {
-				return region;
-			}
-		}
-		return null;
-	}
-
-	private boolean isLeadingDeclarationType(String type) {
-		return (type == CSSRegionContexts.CSS_PAGE || type == CSSRegionContexts.CSS_FONT_FACE || CSSRegionUtil.isSelectorType(type));
-	}
-
-	// public StructuredDocumentEvent
-	// checkForCrossStructuredDocumentRegionBoundryCases() {
-	// return specialPositionUpdate(fStart, fStart + fLengthToReplace - 1);
-	// }
-	/**
-	 * 
-	 */
-	private ReparseRange getUpdateRangeForPair(int start, int end, String opener, String closer) {
-		StringBuffer deletionBuf = new StringBuffer();
-		StringBuffer insertionBuf = new StringBuffer();
-		int quoteLen = Math.max(opener.length(), closer.length());
-		if (1 < quoteLen) {
-			/**
-			 * ex) opener = "ABC", closer = "XYZ" model: ABCDEF.......UVWXYZ
-			 * deletion: CDEF.......UVWX pre/post: AB / YZ
-			 */
-			int addStart = start - (quoteLen - 1);
-			if (0 <= addStart) {
-				String addStr = fStructuredDocument.get(addStart, quoteLen - 1);
-				deletionBuf.append(addStr);
-				insertionBuf.append(addStr);
-			}
-			deletionBuf.append(fDeletedText);
-			insertionBuf.append(fChanges);
-			if (end + (quoteLen - 1) < fStructuredDocument.getLength()) {
-				String addStr = fStructuredDocument.get(end + 1, quoteLen - 1);
-				deletionBuf.append(addStr);
-				insertionBuf.append(addStr);
-			}
-		}
-		else {
-			deletionBuf.append(fDeletedText);
-			insertionBuf.append(fChanges);
-		}
-		String deletion = deletionBuf.toString();
-		String insertion = insertionBuf.toString();
-
-		int rangeStart = start;
-		int rangeEnd = end;
-
-		if (0 <= deletion.indexOf(opener) || 0 <= deletion.indexOf(closer) || 0 <= insertion.indexOf(opener) || 0 <= insertion.indexOf(closer)) {
-			int s, e;
-			try {
-				if (start <= fStructuredDocument.getLength()) {
-					IRegion startRegion = getFindReplaceDocumentAdapter().find(start - 1, opener, false, false, false, false);
-					if (startRegion != null) {
-						s = startRegion.getOffset();
-					}
-					else {
-						s = -1;
-					}
-				}
-				else {
-					s = -1;
-				}
-				if (end < fStructuredDocument.getLength() - 1) {
-					IRegion endRegion = getFindReplaceDocumentAdapter().find(end + 1, closer, true, false, false, false);
-					if (endRegion != null) {
-						e = endRegion.getOffset();
-					}
-					else {
-						e = -1;
-					}
-				}
-				else {
-					e = -1;
-				}
-			}
-			catch (BadLocationException ex) {
-				Logger.logException(ex);
-				return null;
-			}
-			if (0 <= s) {
-				rangeStart = Math.min(rangeStart, s);
-			}
-			if (0 <= e) {
-				rangeEnd = Math.max(rangeEnd, e);
-			}
-		}
-
-		if (rangeStart < start || end < rangeEnd) {
-			return new ReparseRange(rangeStart, rangeEnd);
-		}
-		else {
-			return null;
-		}
-	}
-
-	public IStructuredTextReParser newInstance() {
-		return new CSSStructuredDocumentReParser();
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/text/CSSStructuredDocumentRegionFactory.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/text/CSSStructuredDocumentRegionFactory.java
deleted file mode 100644
index d574ba4..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/text/CSSStructuredDocumentRegionFactory.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.wst.css.core.internal.text;
-
-
-
-import org.eclipse.wst.sse.core.internal.provisional.text.IStructuredDocumentRegion;
-import org.eclipse.wst.sse.core.internal.text.BasicStructuredDocumentRegion;
-
-/**
- * 
- */
-public class CSSStructuredDocumentRegionFactory {
-
-	public static final int CSS_GENERIC = 101109;
-
-	/**
-	 * 
-	 */
-	public static IStructuredDocumentRegion createStructuredDocumentRegion(int type) {
-		IStructuredDocumentRegion instance = null;
-		switch (type) {
-			case CSS_GENERIC :
-				instance = new BasicStructuredDocumentRegion();
-				break;
-			default :
-				break;
-		}
-		return instance;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/text/StructuredDocumentWalker.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/text/StructuredDocumentWalker.java
deleted file mode 100644
index 476f73d..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/text/StructuredDocumentWalker.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.core.internal.text;
-
-
-
-import java.util.Enumeration;
-
-import org.eclipse.wst.sse.core.internal.provisional.events.StructuredDocumentEvent;
-import org.eclipse.wst.sse.core.internal.provisional.events.StructuredDocumentRegionsReplacedEvent;
-import org.eclipse.wst.sse.core.internal.provisional.text.IStructuredDocument;
-import org.eclipse.wst.sse.core.internal.provisional.text.IStructuredDocumentRegion;
-import org.eclipse.wst.sse.core.internal.provisional.text.IStructuredDocumentRegionList;
-import org.eclipse.wst.sse.core.internal.util.Utilities;
-
-public class StructuredDocumentWalker {
-
-	IStructuredDocumentRegionList fOldStructuredDocumentRegionList = null;
-	IStructuredDocument fStructuredDocument = null;
-	String fOriginalChanges = null;
-	int fOriginalOffset = 0;
-	int fOriginalLengthToReplace = 0;
-	int fLengthDifference = 0;
-
-	/**
-	 * 
-	 */
-	public StructuredDocumentWalker() {
-	}
-
-	/**
-	 * 
-	 */
-	public StructuredDocumentWalker(StructuredDocumentEvent event) {
-		initialize(event);
-	}
-
-	/**
-	 * 
-	 */
-	public IStructuredDocument getStructuredDocument() {
-		return fStructuredDocument;
-	}
-
-	/**
-	 * Old Nodes: --[O1]--[O2]--[O3]--- : / \ Current Nodes:
-	 * ---[C1]-----[C2]-----[C3]-----[C4]---
-	 * 
-	 * Input: O1 -> Output: O2 Input: O2 -> Output: O3 Input: O3 -> Output: C4
-	 * Input: Cn -> Output: Cn+1
-	 */
-	public IStructuredDocumentRegion getNextNode(IStructuredDocumentRegion node) {
-		IStructuredDocumentRegion nextNode = null;
-		if (node != null) {
-			nextNode = node.getNext();
-			if (nextNode == null) {
-				if (isOldNode(node)) {
-					// this may be the end of old flatnodes
-					int newStart = node.getEnd() - fLengthDifference;
-					nextNode = fStructuredDocument.getRegionAtCharacterOffset(newStart);
-				}
-			}
-		}
-		return nextNode;
-	}
-
-	/**
-	 * Old Nodes: --[O1]--[O2]--[O3]--- : / \ Current Nodes:
-	 * ---[C1]-----[C2]-----[C3]-----[C4]---
-	 * 
-	 * Input: O* -> Output: C4 Input: Cn -> Output: Cn+1
-	 */
-	public IStructuredDocumentRegion getNextNodeInCurrent(IStructuredDocumentRegion node) {
-		IStructuredDocumentRegion nextNode = null;
-		if (isOldNode(node)) {
-			IStructuredDocumentRegion oldEndNode = fOldStructuredDocumentRegionList.item(fOldStructuredDocumentRegionList.getLength() - 1);
-			int newStart = oldEndNode.getEnd() - fLengthDifference;
-			nextNode = fStructuredDocument.getRegionAtCharacterOffset(newStart);
-		}
-		else if (node != null) {
-			nextNode = node.getNext();
-		}
-		return nextNode;
-	}
-
-	/**
-	 * Old Nodes: --[O1]--[O2]--[O3]--- : / \ Current Nodes:
-	 * ---[C1]-----[C2]-----[C3]-----[C4]---
-	 * 
-	 * Input: O1 -> Output: C1 Input: O2 -> Output: O1 Input: O3 -> Output: O2
-	 * Input: Cn -> Output: Cn-1
-	 */
-	public IStructuredDocumentRegion getPrevNode(IStructuredDocumentRegion node) {
-		IStructuredDocumentRegion prevNode = null;
-		if (node != null) {
-			prevNode = node.getPrevious();
-			if (prevNode == null) {
-				if (isOldNode(node)) {
-					// this may be the start of old flatnodes
-					int newEnd = node.getStart() - 1;
-					prevNode = fStructuredDocument.getRegionAtCharacterOffset(newEnd);
-				}
-			}
-		}
-		return prevNode;
-	}
-
-	/**
-	 * Old Nodes: --[O1]--[O2]--[O3]--- : / \ Current Nodes:
-	 * ---[C1]-----[C2]-----[C3]-----[C4]---
-	 * 
-	 * Input: O* -> Output: C1 Input: Cn -> Output: Cn-1
-	 */
-	public IStructuredDocumentRegion getPrevNodeInCurrent(IStructuredDocumentRegion node) {
-		IStructuredDocumentRegion prevNode = null;
-		if (isOldNode(node)) {
-			IStructuredDocumentRegion oldStartNode = fOldStructuredDocumentRegionList.item(0);
-			int newEnd = oldStartNode.getStart() - 1;
-			prevNode = fStructuredDocument.getRegionAtCharacterOffset(newEnd);
-		}
-		else if (node != null) {
-			prevNode = node.getPrevious();
-		}
-		return prevNode;
-	}
-
-	/**
-	 * 
-	 */
-	public void initialize(StructuredDocumentEvent event) {
-		fStructuredDocument = event.getStructuredDocument();
-		fOriginalChanges = event.getText();
-		fOriginalOffset = event.getOffset();
-		fOriginalLengthToReplace = event.getLength();
-		fLengthDifference = Utilities.calculateLengthDifference(fOriginalChanges, fOriginalLengthToReplace);
-
-		if (event instanceof StructuredDocumentRegionsReplacedEvent) {
-			fOldStructuredDocumentRegionList = ((StructuredDocumentRegionsReplacedEvent) event).getOldStructuredDocumentRegions();
-		}
-		else {
-			fOldStructuredDocumentRegionList = null;
-		}
-	}
-
-	/**
-	 * 
-	 */
-	public boolean isOldNode(IStructuredDocumentRegion node) {
-		boolean bOld = false;
-		if (fOldStructuredDocumentRegionList != null) {
-			Enumeration e = fOldStructuredDocumentRegionList.elements();
-			while (e.hasMoreElements()) {
-				if (e.nextElement() == node) {
-					bOld = true;
-					break;
-				}
-			}
-		}
-		return bOld;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/text/StructuredTextPartitionerForCSS.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/text/StructuredTextPartitionerForCSS.java
deleted file mode 100644
index 47361db..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/text/StructuredTextPartitionerForCSS.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.wst.css.core.internal.text;
-
-import org.eclipse.jface.text.IDocumentPartitioner;
-import org.eclipse.wst.css.core.internal.provisional.text.ICSSPartitionTypes;
-import org.eclipse.wst.sse.core.internal.provisional.text.IStructuredPartitionTypes;
-import org.eclipse.wst.sse.core.internal.text.rules.StructuredTextPartitioner;
-
-public class StructuredTextPartitionerForCSS extends StructuredTextPartitioner {
-	
-	public final static String[] legalTypes = new String[]{ICSSPartitionTypes.STYLE, IStructuredPartitionTypes.DEFAULT_PARTITION};
-
-	public StructuredTextPartitionerForCSS() {
-		super();
-	}
-
-	public String getDefaultPartitionType() {
-		return ICSSPartitionTypes.STYLE;
-	}
-
-	public String[] getLegalContentTypes() {
-		return legalTypes;
-	}
-
-	public IDocumentPartitioner newInstance() {
-		return new StructuredTextPartitionerForCSS();
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/util/AbstractCssTraverser.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/util/AbstractCssTraverser.java
deleted file mode 100644
index 1e9f9c6..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/util/AbstractCssTraverser.java
+++ /dev/null
@@ -1,181 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this 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.core.internal.util;
-
-import java.util.ArrayList;
-import java.util.Stack;
-import java.util.Vector;
-
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSImportRule;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSModel;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSNode;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSStyleSheet;
-
-
-
-/**
- * 
- */
-public abstract class AbstractCssTraverser {
-
-	public static short TRAV_CONT = 0;
-	public static short TRAV_PRUNE = 1;
-	public static short TRAV_STOP = 2;
-	protected java.util.Stack travStack;
-	private boolean fTraverseImported = false;
-	private boolean fTraverseImportFirst = false;
-	private java.util.Vector traversedSheets;
-
-	/**
-	 * CssPropCMNode constructor comment.
-	 */
-	public AbstractCssTraverser() {
-		super();
-	}
-
-	/**
-	 * @param model
-	 *            org.eclipse.wst.css.core.model.interfaces.ICSSModel
-	 */
-	public final void apply(ICSSModel model) {
-		apply(model.getDocument());
-	}
-
-	public final void apply(ICSSNode root) {
-		travStack = new Stack();
-		if (fTraverseImported) {
-			traversedSheets = new Vector();
-			if (root != null && root.getOwnerDocument() != null && root.getOwnerDocument().getNodeType() == ICSSNode.STYLESHEET_NODE) {
-				traversedSheets.add(root.getOwnerDocument());
-			}
-		}
-
-		// first call begin()
-		begin(root);
-
-		// traverse
-		traverse(root);
-
-		// last call end()
-		end(root);
-	}
-
-
-	protected void begin(ICSSNode node) {
-	}
-
-
-	protected void end(ICSSNode node) {
-	}
-
-	/**
-	 * @return boolean
-	 */
-	public final boolean isTraverseImported() {
-		return fTraverseImported;
-	}
-
-
-	protected short postNode(ICSSNode node) {
-		return (short) 0;
-	}
-
-
-	protected short preNode(ICSSNode node) {
-		return (short) 0;
-	}
-
-	/**
-	 * @param newTraverseImported
-	 *            boolean
-	 */
-	public final void setTraverseImported(boolean newTraverseImported) {
-		fTraverseImported = newTraverseImported;
-	}
-
-	/**
-	 * @param newTraverseImportFirst
-	 *            boolean
-	 */
-	public final void setTraverseImportFirst(boolean newTraverseImportFirst) {
-		fTraverseImportFirst = newTraverseImportFirst;
-	}
-
-
-	private final short traverse(ICSSNode node) {
-		if (node == null)
-			return TRAV_CONT;
-
-		travStack.push(node);
-
-		// pre-action
-		short ret = preNode(node);
-
-		if (ret == TRAV_CONT) {
-			if (fTraverseImported && (node.getNodeType() == ICSSNode.IMPORTRULE_NODE)) {
-				ICSSImportRule rule = (ICSSImportRule) node;
-				// traverse external style-sheet
-				ICSSStyleSheet sheet = (ICSSStyleSheet) rule.getStyleSheet();
-				if (sheet != null && !traversedSheets.contains(sheet)) { // prevent
-																			// loop
-					traversedSheets.add(sheet);
-					short retExt = traverse(sheet);
-					if (retExt == TRAV_STOP) {
-						travStack.pop();
-						return retExt;
-					}
-				}
-			}
-
-			// collect children
-			ArrayList children = new ArrayList();
-			ICSSNode child = node.getFirstChild();
-			if (fTraverseImportFirst) {
-				ArrayList others = new ArrayList();
-
-				while (child != null) {
-					if (child.getNodeType() == ICSSNode.IMPORTRULE_NODE)
-						children.add(child);
-					else
-						others.add(child);
-					child = child.getNextSibling();
-				}
-				children.addAll(others);
-			}
-			else {
-				while (child != null) {
-					children.add(child);
-					child = child.getNextSibling();
-				}
-			}
-
-			// traverse children
-			for (int i = 0; i < children.size(); i++) {
-				child = (ICSSNode) children.get(i);
-				short retChild = traverse(child);
-				if (retChild == TRAV_STOP) {
-					travStack.pop();
-					return retChild;
-				}
-			}
-		}
-		else if (ret == TRAV_STOP) {
-			travStack.pop();
-			return ret;
-		}
-
-		// post-action
-		ret = postNode(node);
-
-		travStack.pop();
-		return (ret == TRAV_PRUNE) ? TRAV_CONT : ret;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/util/CSSClassTraverser.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/util/CSSClassTraverser.java
deleted file mode 100644
index e7574d6..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/util/CSSClassTraverser.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.css.core.internal.util;
-
-
-
-import java.util.ArrayList;
-import java.util.Collection;
-import java.util.Collections;
-import java.util.Iterator;
-
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSImportRule;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSMediaRule;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSNode;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSSelector;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSSelectorItem;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSSelectorList;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSSimpleSelector;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSStyleRule;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSStyleSheet;
-
-
-/**
- * 
- */
-public class CSSClassTraverser extends AbstractCssTraverser {
-
-	ArrayList fClassNames;
-
-	/**
-	 * 
-	 */
-	public CSSClassTraverser() {
-		super();
-	}
-
-	/**
-	 * 
-	 */
-	private void addClassNames(ICSSStyleRule rule) {
-		ICSSSelectorList selectorList = rule.getSelectors();
-		Iterator iSelector = selectorList.getIterator();
-		while (iSelector.hasNext()) {
-			ICSSSelector selector = (ICSSSelector) iSelector.next();
-			Iterator iItem = selector.getIterator();
-			while (iItem.hasNext()) {
-				ICSSSelectorItem item = (ICSSSelectorItem) iItem.next();
-				if (item.getItemType() == ICSSSelectorItem.SIMPLE) {
-					ICSSSimpleSelector sel = (ICSSSimpleSelector) item;
-					int nClasses = sel.getNumOfClasses();
-					for (int iClass = 0; iClass < nClasses; iClass++) {
-						String className = sel.getClass(iClass);
-						if (!fClassNames.contains(className))
-							fClassNames.add(className);
-					}
-				}
-			}
-		}
-	}
-
-	/**
-	 * 
-	 */
-	protected void begin(ICSSNode node) {
-		if (fClassNames == null)
-			fClassNames = new ArrayList();
-	}
-
-	/**
-	 * 
-	 */
-	protected void end(ICSSNode node) {
-	}
-
-	/**
-	 * 
-	 */
-	public Collection getClassNames() {
-		return (fClassNames != null) ? fClassNames : Collections.EMPTY_LIST;
-	}
-
-	/**
-	 * 
-	 */
-	protected short postNode(ICSSNode node) {
-		return TRAV_CONT;
-	}
-
-	/**
-	 * 
-	 */
-	protected short preNode(ICSSNode node) {
-		short ret;
-		if (node instanceof ICSSStyleRule) {
-			addClassNames((ICSSStyleRule) node);
-			ret = TRAV_PRUNE;
-		}
-		else if (node instanceof ICSSStyleSheet || node instanceof ICSSMediaRule || node instanceof ICSSImportRule) {
-			ret = TRAV_CONT;
-		}
-		else {
-			ret = TRAV_PRUNE;
-		}
-		return ret;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/util/CSSLinkConverter.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/util/CSSLinkConverter.java
deleted file mode 100644
index e5d3690..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/util/CSSLinkConverter.java
+++ /dev/null
@@ -1,188 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this 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.core.internal.util;
-
-
-
-import org.eclipse.core.runtime.Preferences;
-import org.eclipse.wst.css.core.internal.CSSCorePlugin;
-import org.eclipse.wst.css.core.internal.preferences.CSSCorePreferenceNames;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSImportRule;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSModel;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSNode;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSPrimitiveValue;
-import org.eclipse.wst.sse.core.internal.provisional.IStructuredModel;
-import org.eclipse.wst.xml.core.internal.provisional.document.IDOMNode;
-import org.w3c.dom.css.CSSPrimitiveValue;
-import org.w3c.dom.css.CSSValue;
-
-
-/**
- * 
- */
-public class CSSLinkConverter extends org.eclipse.wst.css.core.internal.util.AbstractCssTraverser {
-	private static final String URL_BEGIN = "url("; //$NON-NLS-1$
-	private static final String URL_END = ")"; //$NON-NLS-1$
-	private static final String EMPTY = ""; //$NON-NLS-1$
-	private static final String D_QUOTE = "\""; //$NON-NLS-1$
-	private static final String S_QUOTE = "\'"; //$NON-NLS-1$
-
-	IStructuredModel baseModel;
-
-	/**
-	 * 
-	 */
-	public CSSLinkConverter(IStructuredModel model) {
-		super();
-		baseModel = model;
-		if (model instanceof ICSSModel && ((ICSSModel) model).getStyleSheetType() != ICSSModel.EXTERNAL) {
-			IDOMNode node = (IDOMNode) ((ICSSModel) model).getOwnerDOMNode();
-			baseModel = node.getModel();
-		}
-	}
-
-	/**
-	 * 
-	 */
-	public static String addFunc(String value) {
-		if (!value.trim().toLowerCase().startsWith(URL_BEGIN)) {
-			// pa_TODO css pref
-			Preferences preferences = CSSCorePlugin.getDefault().getPluginPreferences();
-
-			String quote = preferences.getString(CSSCorePreferenceNames.FORMAT_QUOTE);
-			value = CSSUtil.stripQuotes(value);
-			quote = CSSUtil.detectQuote(value, quote);
-			String str = URL_BEGIN;
-			if (preferences.getInt(CSSCorePreferenceNames.CASE_PROPERTY_VALUE) == CSSCorePreferenceNames.UPPER)
-				str = str.toUpperCase();
-			StringBuffer buf = new StringBuffer(str);
-			buf.append(quote);
-			buf.append(value);
-			buf.append(quote);
-			buf.append(URL_END);
-			return buf.toString();
-		}
-		return value;
-	}
-
-
-
-	/**
-	 * 
-	 */
-	protected void begin(ICSSNode node) {
-		if (baseModel == null) {
-			baseModel = node.getOwnerDocument().getModel();
-			if (baseModel instanceof ICSSModel && ((ICSSModel) baseModel).getStyleSheetType() != ICSSModel.EXTERNAL) {
-				IDOMNode xmlNode = (IDOMNode) ((ICSSModel) baseModel).getOwnerDOMNode();
-				baseModel = xmlNode.getModel();
-			}
-		}
-	}
-
-	/**
-	 * 
-	 */
-	private static boolean isUrl(String source) {
-		if (source == null)
-			return false;
-		source = source.trim().toLowerCase();
-		return source.startsWith(URL_BEGIN);
-	}
-
-	/**
-	 * 
-	 */
-	protected short preNode(ICSSNode node) {
-		if (node.getNodeType() == ICSSNode.PRIMITIVEVALUE_NODE) {
-			toAbsolute((CSSValue) node);
-		} else if (node.getNodeType() == ICSSNode.IMPORTRULE_NODE) {
-			ICSSImportRule iRule = (ICSSImportRule) node;
-			iRule.setHref(toAbsolute(addFunc(iRule.getHref())));
-		}
-		return TRAV_CONT;
-	}
-
-	/**
-	 * 
-	 * @return java.lang.String
-	 * @param value
-	 *            java.lang.String
-	 */
-	public static String removeFunc(String value) {
-		if (value == null)
-			return EMPTY;
-		String field = value.trim();
-		// first : tear "url(....)"
-		if (field.toLowerCase().startsWith(URL_BEGIN)) {
-			int url = field.toLowerCase().indexOf(URL_BEGIN);
-			int endParenthesis = field.lastIndexOf(URL_END);
-			if (endParenthesis > url) {
-				field = field.substring(url + 4, endParenthesis);
-			} else
-				field = field.substring(url + 4);
-		}
-		return field.trim();
-	}
-
-	/**
-	 * 
-	 */
-	public static String stripFunc(String value) {
-		if (value == null)
-			return EMPTY;
-		// first : tear "url(....)"
-		String field = removeFunc(value);
-		// second : tear quotations
-		if (field.toLowerCase().startsWith(D_QUOTE)) {
-			int quote = field.indexOf(D_QUOTE);
-			int end = field.lastIndexOf(D_QUOTE);
-			if (end > quote) {
-				field = field.substring(quote + 1, end);
-			} else
-				field = field.substring(quote + 1);
-		} else if (field.toLowerCase().startsWith(S_QUOTE)) {
-			int quote = field.indexOf(S_QUOTE);
-			int end = field.lastIndexOf(S_QUOTE);
-			if (end > quote) {
-				field = field.substring(quote + 1, end);
-			} else
-				field = field.substring(quote + 1);
-		}
-
-		return field.trim();
-	}
-
-	/**
-	 * 
-	 */
-	public String toAbsolute(String source) {
-		if (isUrl(source)) {
-			String url = CSSPathService.getAbsoluteURL(baseModel, stripFunc(source));
-			return (url != null) ? addFunc(url) : (URL_BEGIN + URL_END);
-		}
-		return source;
-	}
-
-	/**
-	 * 
-	 */
-	public boolean toAbsolute(CSSValue node) {
-		if (node instanceof ICSSPrimitiveValue) {
-			ICSSPrimitiveValue value = (ICSSPrimitiveValue) node;
-			if (value.getPrimitiveType() == CSSPrimitiveValue.CSS_URI) {
-				value.setValue(stripFunc(toAbsolute(URL_BEGIN + value.getStringValue() + URL_END)));
-				return true;
-			}
-		}
-		return false;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/util/CSSPathService.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/util/CSSPathService.java
deleted file mode 100644
index 9fa8433..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/util/CSSPathService.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.wst.css.core.internal.util;
-
-
-
-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.internal.provisional.IStructuredModel;
-
-/**
- * 
- */
-public class CSSPathService {
-
-	// Constants
-	private static final String FILEURLSCHEME = "file";//$NON-NLS-1$
-	private static final String URLCOLON = ":"; //$NON-NLS-1$
-	private static final String FILEURLPREFIX = FILEURLSCHEME + URLCOLON + "//";//$NON-NLS-1$
-	private static final String URLSEPARATOR = "/"; //$NON-NLS-1$
-
-	/**
-	 * @return java.lang.String
-	 */
-	public static String getAbsoluteURL(IStructuredModel baseModel, String ref) {
-		String absLink = URLModelProviderCSS.resolveURI(baseModel, ref, true);
-		String url = absLink;
-		if (absLink != null) { // if it has not scheme, we must add "file"
-								// scheme
-			try {
-				new java.net.URL(absLink);
-			}
-			catch (java.net.MalformedURLException e) {
-				IPath path = new Path(absLink);
-				if (path != null)
-					url = toURL(path);
-			}
-		}
-		return url;
-	}
-
-	/**
-	 * 
-	 * @return org.eclipse.core.resources.IFile
-	 * @param location
-	 *            java.lang.String
-	 */
-	public static IFile location2File(String location) {
-		Path path = new Path(location);
-		IFile file = ResourcesPlugin.getWorkspace().getRoot().getFileForLocation(path);
-		if (file == null && path.segmentCount() > 1)
-			file = ResourcesPlugin.getWorkspace().getRoot().getFile(path);
-		return file;
-	}
-
-	/**
-	 * Gets a file URL for the path.
-	 */
-	private static String toURL(IPath path) {
-		path = new Path(path.toFile().getAbsolutePath());
-		if (path.isUNC() == true) {
-			// it's UNC. return file://host/foo/bar/baz.html
-			return FILEURLSCHEME + URLCOLON + path.toString();
-		}
-		return FILEURLPREFIX + URLSEPARATOR + path.toString();
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/util/CSSSelectorListFactory.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/util/CSSSelectorListFactory.java
deleted file mode 100644
index 04b97e8..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/util/CSSSelectorListFactory.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.css.core.internal.util;
-
-import org.eclipse.wst.css.core.internal.document.CSSSelectorListImpl;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSSelectorList;
-
-
-public class CSSSelectorListFactory {
-	static synchronized public CSSSelectorListFactory getInstance() {
-		if (fInstance == null) {
-			fInstance = new CSSSelectorListFactory();
-		}
-		return fInstance;
-	}
-
-	public ICSSSelectorList createSelectorList(String selectorString) {
-		return new CSSSelectorListImpl(selectorString);
-	}
-
-
-	private CSSSelectorListFactory() {
-		super();
-	}
-
-	private static CSSSelectorListFactory fInstance;
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/util/CSSStyleDeclarationFactory.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/util/CSSStyleDeclarationFactory.java
deleted file mode 100644
index e3e48e6..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/util/CSSStyleDeclarationFactory.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.css.core.internal.util;
-
-
-
-import org.eclipse.wst.css.core.internal.document.CSSStyleDeclarationFactoryContext;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSStyleDeclaration;
-
-
-/**
- * 
- */
-public class CSSStyleDeclarationFactory extends CSSStyleDeclarationFactoryContext {
-
-	private static CSSStyleDeclarationFactory fInstance = null;
-
-	/**
-	 * CSSStyleDeclarationFactory constructor comment.
-	 */
-	private CSSStyleDeclarationFactory() {
-		super();
-	}
-
-	/**
-	 * @return org.eclipse.wst.css.core.model.interfaces.ICSSStyleDeclaration
-	 * @param decl
-	 *            org.eclipse.wst.css.core.model.interfaces.ICSSStyleDeclaration
-	 */
-	public ICSSStyleDeclaration createStyleDeclaration(ICSSStyleDeclaration decl) {
-		if (decl == null) {
-			return null;
-		}
-		// 11/22/2004, nsd, nothing's done with this variable
-//		ICSSStyleDeclaration newNode = createStyleDeclaration();
-
-		// 05/11/2004, dmw, unnecessary cast, looks like it was always
-		// returning null!
-		// so something is probably amiss
-		// if (!(newNode instanceof ICSSDocument)) {
-		return null;
-		// }
-		// fOwnerDocument = newNode;
-		// cloneChildNodes(decl, newNode);
-		// return newNode;
-	}
-
-	/**
-	 * 
-	 */
-	public synchronized static CSSStyleDeclarationFactory getInstance() {
-		if (fInstance == null) {
-			fInstance = new CSSStyleDeclarationFactory();
-		}
-		return fInstance;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/util/CSSUtil.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/util/CSSUtil.java
deleted file mode 100644
index 3583859..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/util/CSSUtil.java
+++ /dev/null
@@ -1,335 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this 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.core.internal.util;
-
-
-
-import java.util.Enumeration;
-import java.util.Iterator;
-
-import org.eclipse.wst.css.core.internal.Logger;
-import org.eclipse.wst.css.core.internal.parser.CSSRegionUtil;
-import org.eclipse.wst.css.core.internal.parserz.CSSRegionContexts;
-import org.eclipse.wst.css.core.internal.parserz.CSSTextToken;
-import org.eclipse.wst.sse.core.internal.provisional.text.IStructuredDocumentRegion;
-import org.eclipse.wst.sse.core.internal.provisional.text.IStructuredDocumentRegionList;
-import org.eclipse.wst.sse.core.internal.provisional.text.ITextRegion;
-import org.eclipse.wst.sse.core.internal.provisional.text.ITextRegionList;
-
-
-public class CSSUtil {
-
-	/**
-	 * 
-	 */
-	public static void debugOut(String str) {
-		Logger.log(Logger.WARNING, "css warning: " + str); //$NON-NLS-1$
-	}
-
-	/**
-	 * 
-	 */
-	// public static Vector extractMediaContents(Vector regions) {
-	// Vector media = new Vector();
-	// if (regions == null) { return media; }
-	//
-	// boolean bReady = true;
-	// for (Iterator i = regions.iterator(); i.hasNext(); ) {
-	// ITextRegion region = (ITextRegion)i.next();
-	// if (region == null) { continue; }
-	// String type = region.getType();
-	// if (bReady) {
-	// if (type == IDENT) {
-	// media.addElement(region.getText());
-	// bReady = false;
-	// }
-	// } else {
-	// if (type == COMMA) {
-	// bReady = true;
-	// }
-	// }
-	// }
-	//
-	// return media;
-	// }
-	/**
-	 * 
-	 */
-	public static String extractStringContents(String text) {
-		return stripQuotes(text);
-	}
-
-	/**
-	 * 
-	 */
-	public static String extractUriContents(String text) {
-		String contents = text.trim();
-		if (contents.toLowerCase().startsWith("url(") && //$NON-NLS-1$
-					contents.toLowerCase().endsWith(")")) {//$NON-NLS-1$
-			// strip "url(", ")"
-			contents = contents.substring(4, contents.length() - 1);
-		}
-		contents = stripQuotes(contents);
-
-		return contents;
-	}
-
-	/**
-	 * 
-	 */
-	public static IStructuredDocumentRegion findNextSignificantNode(IStructuredDocumentRegion startNode) {
-		if (startNode == null) {
-			return null;
-		}
-		IStructuredDocumentRegion node = startNode.getNext();
-		while (node != null) {
-			String type = getStructuredDocumentRegionType(node);
-			if (type != CSSRegionContexts.CSS_S && type != CSSRegionContexts.CSS_COMMENT && type != CSSRegionContexts.CSS_CDO && type != CSSRegionContexts.CSS_CDC) {
-				return node;
-			}
-			node = node.getNext();
-		}
-		return null;
-	}
-
-	/**
-	 * 
-	 */
-	public static IStructuredDocumentRegion findNodeBackward(IStructuredDocumentRegion startNode, IStructuredDocumentRegion endNode, String type) {
-		IStructuredDocumentRegion node;
-		for (node = startNode; node != null; node = node.getPrevious()) {
-			if (node.getStartOffset() < endNode.getStartOffset()) {
-				node = null;
-				break;
-			}
-			else if (getStructuredDocumentRegionType(node) == type) {
-				break;
-			}
-		}
-		return node;
-	}
-
-	/**
-	 * 
-	 */
-	public static IStructuredDocumentRegion findNodeForward(IStructuredDocumentRegion startNode, IStructuredDocumentRegion endNode, String type) {
-		IStructuredDocumentRegion node;
-		for (node = startNode; node != null; node = node.getNext()) {
-			if (endNode.getStartOffset() < node.getStartOffset()) {
-				node = null;
-				break;
-			}
-			else if (getStructuredDocumentRegionType(node) == type) {
-				break;
-			}
-		}
-		return node;
-	}
-
-	/**
-	 * 
-	 */
-	public static IStructuredDocumentRegion findPreviousSignificantNode(IStructuredDocumentRegion startNode) {
-		if (startNode == null) {
-			return null;
-		}
-		IStructuredDocumentRegion node = startNode.getPrevious();
-		while (node != null) {
-			String type = getStructuredDocumentRegionType(node);
-			if (type != CSSRegionContexts.CSS_S && type != CSSRegionContexts.CSS_COMMENT && type != CSSRegionContexts.CSS_CDO && type != CSSRegionContexts.CSS_CDC) {
-				return node;
-			}
-			node = node.getPrevious();
-		}
-		return null;
-	}
-
-	/**
-	 * 
-	 */
-	public static String getClassString(Object object) {
-		if (object == null) {
-			return "null"; //$NON-NLS-1$
-		}
-		else {
-			String name = object.getClass().toString();
-			int lastPeriod = name.lastIndexOf('.');
-			return name.substring(lastPeriod + 1);
-		}
-	}
-
-	/**
-	 * 
-	 */
-	public static String getStructuredDocumentRegionType(IStructuredDocumentRegion flatNode) {
-		if (flatNode == null) {
-			return CSSRegionContexts.CSS_UNDEFINED;
-		}
-		ITextRegionList regions = flatNode.getRegions();
-		if (regions == null || regions.size() == 0) {
-			return CSSRegionContexts.CSS_UNDEFINED;
-		}
-		ITextRegion region = regions.get(0);
-		return region.getType();
-	}
-
-	/**
-	 * 
-	 */
-	public static int getLengthDifference(IStructuredDocumentRegionList newNodes, IStructuredDocumentRegionList oldNodes) {
-		int newLen = getTextLength(newNodes);
-		int oldLen = getTextLength(oldNodes);
-		return newLen - oldLen;
-	}
-
-	/**
-	 * 
-	 */
-	public static String getRegionText(IStructuredDocumentRegion flatNode, ITextRegionList regions) {
-		StringBuffer buf = new StringBuffer();
-		if (regions != null) {
-			for (Iterator i = regions.iterator(); i.hasNext();) {
-				ITextRegion region = (ITextRegion) i.next();
-				if (region == null) {
-					continue;
-				}
-				buf.append(flatNode.getText(region));
-			}
-		}
-
-		return buf.toString();
-	}
-
-	/**
-	 * 
-	 */
-	public static int getTextLength(IStructuredDocumentRegionList nodes) {
-		int length = 0;
-
-		if (nodes != null) {
-			for (Enumeration e = nodes.elements(); e.hasMoreElements();) {
-				IStructuredDocumentRegion flatNode = (IStructuredDocumentRegion) e.nextElement();
-				if (flatNode != null) {
-					length += flatNode.getText().length();
-				}
-			}
-		}
-
-		return length;
-	}
-
-	/**
-	 * 
-	 * @param token
-	 * @return
-	 */
-	public static boolean isLength(CSSTextToken token) {
-		if (token == null)
-			return false;
-		if (token.kind == CSSRegionContexts.CSS_DECLARATION_VALUE_DIMENSION)
-			return true;
-		if (token.kind == CSSRegionContexts.CSS_DECLARATION_VALUE_NUMBER) {
-			double number = Double.parseDouble(token.image);
-			if (number == 0.0)
-				return true;
-		}
-		return false;
-	}
-
-	/**
-	 * 
-	 */
-	public static boolean isSelectorText(IStructuredDocumentRegion region) {
-		String type = getStructuredDocumentRegionType(region);
-		if (CSSRegionUtil.isSelectorBegginingType(type)) {
-			return true;
-		}
-		else if (type == CSSRegionContexts.CSS_UNKNOWN) {
-			// String text = flatNode.getText();
-			// if (text != null && text.indexOf('.') == 0) {
-			return true;
-			// }
-		}
-
-		return false;
-	}
-
-	/**
-	 * 
-	 */
-	public static String stripQuotes(String text) {
-		if (text == null)
-			return null;
-		String contents = text.trim();
-		if (2 <= contents.length()) {
-			char first = contents.charAt(0);
-			char last = contents.charAt(contents.length() - 1);
-			if ((first == '\"' && last == '\"') || (first == '\'' && last == '\'')) {
-				contents = contents.substring(1, contents.length() - 1);
-			}
-		}
-		return contents;
-	}
-
-	public static String detectQuote(String source, String defaultQuote) {
-		if (source == null)
-			return defaultQuote;
-		final String D_QUOTE = "\""; //$NON-NLS-1$
-		final String S_QUOTE = "\'"; //$NON-NLS-1$
-
-		int dIndex = source.indexOf(D_QUOTE);
-		int sIndex = source.indexOf(S_QUOTE);
-		if (dIndex < 0 && sIndex < 0) {
-			return defaultQuote;
-		}
-		else if (dIndex < 0) {
-			return D_QUOTE;
-		}
-		else if (sIndex < 0) {
-			return S_QUOTE;
-		}
-		else if (dIndex < sIndex) {
-			return S_QUOTE;
-		}
-		else {
-			return D_QUOTE;
-		}
-	}
-
-	/**
-	 * 
-	 */
-	public static void stripSurroundingSpace(ITextRegionList regions) {
-		if (regions == null) {
-			return;
-		}
-		while (!regions.isEmpty()) {
-			ITextRegion region = regions.get(0);
-			String type = region.getType();
-			if (type == CSSRegionContexts.CSS_S || type == CSSRegionContexts.CSS_COMMENT) {
-				regions.remove(0);
-			}
-			else {
-				break;
-			}
-		}
-		while (!regions.isEmpty()) {
-			ITextRegion region = regions.get(regions.size() - 1);
-			String type = region.getType();
-			if (type == CSSRegionContexts.CSS_S || type == CSSRegionContexts.CSS_COMMENT) {
-				regions.remove(region);
-			}
-			else {
-				break;
-			}
-		}
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/util/ImportRuleCollector.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/util/ImportRuleCollector.java
deleted file mode 100644
index 6ec4ec0..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/util/ImportRuleCollector.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.wst.css.core.internal.util;
-
-
-
-import java.util.Vector;
-
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSImportRule;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSNode;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSStyleSheet;
-
-
-/**
- * 
- */
-public class ImportRuleCollector extends org.eclipse.wst.css.core.internal.util.AbstractCssTraverser {
-
-	protected java.util.Vector rules = new Vector();
-	protected ICSSStyleSheet target = null;
-
-	/**
-	 * 
-	 */
-	public ImportRuleCollector() {
-		super();
-		setTraverseImported(false);
-	}
-
-	/**
-	 * 
-	 */
-	public ImportRuleCollector(ICSSStyleSheet sheet) {
-		super();
-		target = sheet;
-	}
-
-	/**
-	 * 
-	 */
-	public java.util.Vector getRules() {
-		return rules;
-	}
-
-	/**
-	 * 
-	 */
-	protected short preNode(ICSSNode node) {
-		if (node.getNodeType() == ICSSNode.MEDIARULE_NODE || node.getNodeType() == ICSSNode.STYLESHEET_NODE) {
-			return TRAV_CONT;
-		}
-		if (node.getNodeType() == ICSSNode.IMPORTRULE_NODE) {
-			if (target != null) {
-				ICSSImportRule imp = (ICSSImportRule) node;
-				if (imp.getStyleSheet() != target)
-					return TRAV_PRUNE;
-			}
-			if (!rules.contains(node))
-				rules.add(node);
-		}
-		return TRAV_PRUNE;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/util/ImportedCollector.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/util/ImportedCollector.java
deleted file mode 100644
index 2c4751e..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/util/ImportedCollector.java
+++ /dev/null
@@ -1,61 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this 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.core.internal.util;
-
-
-
-import java.util.List;
-import java.util.Vector;
-
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSNode;
-
-
-/**
- * 
- */
-public class ImportedCollector extends org.eclipse.wst.css.core.internal.util.AbstractCssTraverser {
-
-	protected java.util.Vector externals = new Vector();
-
-	/**
-	 * 
-	 */
-	public ImportedCollector() {
-		super();
-		setTraverseImported(true);
-	}
-
-	/**
-	 * 
-	 */
-	public List getExternals() {
-		return externals;
-	}
-
-	/**
-	 * 
-	 */
-	protected short preNode(ICSSNode node) {
-		if (node.getNodeType() == ICSSNode.MEDIARULE_NODE) {
-			return TRAV_CONT;
-		}
-		if (node.getNodeType() == ICSSNode.STYLESHEET_NODE) {
-			if (!externals.contains(node)) {
-				externals.add(node);
-			}
-			return TRAV_CONT;
-		}
-		if (node.getNodeType() == ICSSNode.IMPORTRULE_NODE) {
-			return TRAV_CONT;
-		}
-		return TRAV_PRUNE;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/util/RegionIterator.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/util/RegionIterator.java
deleted file mode 100644
index 5f2626d..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/util/RegionIterator.java
+++ /dev/null
@@ -1,140 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this 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.core.internal.util;
-
-
-
-import org.eclipse.wst.sse.core.internal.provisional.text.IStructuredDocument;
-import org.eclipse.wst.sse.core.internal.provisional.text.IStructuredDocumentRegion;
-import org.eclipse.wst.sse.core.internal.provisional.text.ITextRegion;
-
-/**
- * 
- */
-public class RegionIterator {
-
-	private IStructuredDocumentRegion documentRegion = null;
-	private IStructuredDocumentRegion curDocumentRegion = null;
-	private int current = -1;
-
-	/**
-	 * 
-	 */
-	public RegionIterator(IStructuredDocument structuredDocument, int index) {
-		super();
-
-		reset(structuredDocument, index);
-	}
-
-	/**
-	 * 
-	 */
-	public RegionIterator(IStructuredDocumentRegion flatNode, ITextRegion region) {
-		super();
-		reset(flatNode, region);
-	}
-
-	/**
-	 * 
-	 */
-	public IStructuredDocumentRegion getStructuredDocumentRegion() {
-		return curDocumentRegion;
-	}
-
-	/**
-	 * 
-	 */
-	public boolean hasNext() {
-		if (documentRegion == null)
-			return false;
-		if (current < 0)
-			return false;
-		if (current < documentRegion.getRegions().size())
-			return true;
-		return false;
-	}
-
-	/**
-	 * 
-	 */
-	public boolean hasPrev() {
-		// the same as hasNext()
-		return hasNext();
-	}
-
-	/**
-	 * 
-	 */
-	public ITextRegion next() {
-		if (documentRegion == null)
-			return null;
-		if (current < 0 || documentRegion.getRegions() == null || documentRegion.getRegions().size() <= current)
-			return null;
-
-		ITextRegion region = documentRegion.getRegions().get(current);
-		curDocumentRegion = documentRegion;
-
-		if (current >= documentRegion.getRegions().size() - 1) {
-			documentRegion = documentRegion.getNext();
-			current = -1;
-		}
-		current++;
-
-		return region;
-	}
-
-	/**
-	 * 
-	 */
-	public ITextRegion prev() {
-		if (documentRegion == null)
-			return null;
-		if (current < 0 || documentRegion.getRegions() == null || documentRegion.getRegions().size() <= current)
-			return null;
-
-		ITextRegion region = documentRegion.getRegions().get(current);
-		curDocumentRegion = documentRegion;
-
-		if (current == 0) {
-			documentRegion = documentRegion.getPrevious();
-			if (documentRegion != null)
-				current = documentRegion.getRegions().size();
-			else
-				current = 0;
-		}
-		current--;
-
-		return region;
-	}
-
-	/**
-	 * 
-	 */
-	public void reset(IStructuredDocument structuredDocument, int index) {
-		documentRegion = structuredDocument.getRegionAtCharacterOffset(index);
-		curDocumentRegion = documentRegion;
-		if (documentRegion != null) {
-			ITextRegion region = documentRegion.getRegionAtCharacterOffset(index);
-			current = documentRegion.getRegions().indexOf(region);
-		}
-	}
-
-	/**
-	 * 
-	 */
-	public void reset(IStructuredDocumentRegion flatNode, ITextRegion region) {
-		if (region != null && flatNode != null) {
-			this.documentRegion = flatNode;
-			curDocumentRegion = flatNode;
-			current = flatNode.getRegions().indexOf(region);
-		}
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/util/SelectionCollector.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/util/SelectionCollector.java
deleted file mode 100644
index b523932..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/util/SelectionCollector.java
+++ /dev/null
@@ -1,76 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this 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.core.internal.util;
-
-
-
-import java.util.ArrayList;
-import java.util.List;
-
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSNode;
-import org.eclipse.wst.sse.core.internal.provisional.IndexedRegion;
-
-
-/**
- */
-public class SelectionCollector extends org.eclipse.wst.css.core.internal.util.AbstractCssTraverser {
-
-	int start, end;
-	List selectedNodes;
-
-	/**
-	 * SelectionCollector constructor comment.
-	 */
-	public SelectionCollector() {
-		super();
-	}
-
-	/**
-	 */
-	protected void begin(ICSSNode node) {
-		selectedNodes = new ArrayList();
-	}
-
-	/**
-	 */
-	public List getSelectedNodes() {
-		if (selectedNodes == null)
-			return new ArrayList();
-		else
-			return new ArrayList(selectedNodes);
-	}
-
-	/**
-	 */
-	protected short preNode(ICSSNode node) {
-		IndexedRegion iNode = (IndexedRegion) node;
-		if (iNode.getStartOffset() <= end && start < iNode.getEndOffset()) {
-			if (node.getNodeType() != ICSSNode.STYLESHEET_NODE) {
-				IndexedRegion iFirstChild = (IndexedRegion) node.getFirstChild();
-				IndexedRegion iLastChild = (IndexedRegion) node.getLastChild();
-				if (iFirstChild == null || start < iFirstChild.getStartOffset() || iLastChild.getEndOffset() <= end)
-					selectedNodes.add(node);
-			}
-			return TRAV_CONT;
-		}
-		if (iNode.getStartOffset() > end)
-			return TRAV_STOP;
-		else
-			return TRAV_PRUNE;
-	}
-
-	/**
-	 */
-	public void setRegion(int newStart, int newEnd) {
-		start = newStart;
-		end = newEnd;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/util/SelectorValidator.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/util/SelectorValidator.java
deleted file mode 100644
index 0a92aaf..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/util/SelectorValidator.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.css.core.internal.util;
-
-
-
-import org.eclipse.wst.css.core.internal.document.CSSSelectorListImpl;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSSelector;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSSelectorItem;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSSelectorList;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSSimpleSelector;
-
-
-public class SelectorValidator {
-
-	/**
-	 * Constructor for SelectorValidator.
-	 */
-	public SelectorValidator(String text) {
-		super();
-		fText = text;
-	}
-
-	/**
-	 * Returns true if the text consists of one CLASS selector. syntax check
-	 * is a little loose (.123 is passed)
-	 * 
-	 * ".class" -> true ".123" -> true ".class , .class2" -> false
-	 * ".class.class2" -> false ".123{}" -> false
-	 */
-	public boolean isClass() {
-		ICSSSimpleSelector selector = getOnlyOneSimpleSelector();
-		if (selector != null) {
-			return (selector.getName().length() == 0 && selector.getNumOfAttributes() == 0 && selector.getNumOfClasses() == 1 && selector.getNumOfIDs() == 0 && selector.getNumOfPseudoNames() == 0);
-		}
-		return false;
-	}
-
-	/**
-	 * Returns true if the text consists of one ID selector.
-	 * 
-	 * "#ID" -> true "H1#myID" -> false "#abc{}" -> false
-	 */
-	public boolean isID() {
-		ICSSSimpleSelector selector = getOnlyOneSimpleSelector();
-		if (selector != null) {
-			return (selector.getName().length() == 0 && selector.getNumOfAttributes() == 0 && selector.getNumOfClasses() == 0 && selector.getNumOfIDs() == 1 && selector.getNumOfPseudoNames() == 0);
-		}
-		return false;
-	}
-
-	/**
-	 * overall check
-	 * 
-	 * "P#hoge98 + *:hover > A:link, A.external:visited" -> true "H1 H2 {}" ->
-	 * false
-	 */
-	public boolean isValid() {
-		parse();
-		return (fSelectorList != null && fSelectorList.getErrorCount() == 0);
-	}
-
-	private ICSSSimpleSelector getOnlyOneSimpleSelector() {
-		parse();
-		if (fSelectorList != null && fSelectorList.getLength() == 1) {
-			ICSSSelector selector = fSelectorList.getSelector(0);
-			int nItem = selector.getLength();
-			if (nItem == 1) {
-				ICSSSelectorItem item = selector.getItem(0);
-				if (item instanceof ICSSSimpleSelector) {
-					return (ICSSSimpleSelector) item;
-				}
-			}
-		}
-		return null;
-	}
-
-	private void parse() {
-		if (fSelectorList == null) {
-			if (fText != null) {
-				fSelectorList = new CSSSelectorListImpl(fText);
-			}
-		}
-	}
-
-
-	private String fText = null;
-	private ICSSSelectorList fSelectorList = null;
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/util/SelectorsCollector.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/util/SelectorsCollector.java
deleted file mode 100644
index fcaa32e..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/util/SelectorsCollector.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.core.internal.util;
-
-
-
-import java.util.Iterator;
-import java.util.Vector;
-
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSNode;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSSelector;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSSelectorList;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSStyleRule;
-
-
-/**
- * 
- */
-public class SelectorsCollector extends AbstractCssTraverser {
-
-	protected Vector selectors = new Vector();
-	protected Vector selectorsToAvoid = null;
-
-	/**
-	 * 
-	 */
-	public SelectorsCollector() {
-		super();
-		setTraverseImported(false);
-	}
-
-	/**
-	 * 
-	 */
-	public void addSelectorToAvoid(ICSSSelector selToAvoid) {
-		if (selToAvoid == null)
-			return;
-		if (selectorsToAvoid == null)
-			selectorsToAvoid = new Vector();
-
-		if (!selectorsToAvoid.contains(selToAvoid))
-			selectorsToAvoid.add(selToAvoid);
-	}
-
-	/**
-	 * 
-	 */
-	public void addSelectorToAvoid(ICSSStyleRule rule) {
-		ICSSSelectorList list = rule.getSelectors();
-		Iterator it = list.getIterator();
-		while (it.hasNext()) {
-			ICSSSelector sel = (ICSSSelector) it.next();
-			addSelectorToAvoid(sel);
-		}
-	}
-
-	/**
-	 * 
-	 */
-	public java.util.List getSelectors() {
-		return selectors;
-	}
-
-	/**
-	 * 
-	 */
-	protected short preNode(ICSSNode node) {
-		if (node.getNodeType() == ICSSNode.STYLERULE_NODE) {
-			ICSSStyleRule rule = (ICSSStyleRule) node;
-			ICSSSelectorList list = rule.getSelectors();
-			Iterator it = list.getIterator();
-			while (it.hasNext()) {
-				Object obj = it.next();
-				if (selectorsToAvoid != null && selectorsToAvoid.contains(obj))
-					continue;
-				if (!selectors.contains(obj))
-					selectors.add(obj);
-			}
-			return TRAV_PRUNE;
-		}
-		else if (node.getNodeType() == ICSSNode.STYLESHEET_NODE) {
-			return TRAV_CONT;
-		}
-		return TRAV_PRUNE;
-	}
-
-	/**
-	 * 
-	 */
-	public void setSelectorsToAvoid(java.util.Vector newSelectorsToAvoid) {
-		selectorsToAvoid = newSelectorsToAvoid;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/util/URLHelper.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/util/URLHelper.java
deleted file mode 100644
index f51460e..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/util/URLHelper.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.css.core.internal.util;
-
-
-
-import java.io.File;
-import java.net.MalformedURLException;
-import java.net.URL;
-
-import org.eclipse.wst.sse.core.internal.util.PathHelper;
-
-/**
- * Hyperlink manager. Proved useful services like link conversion An utility
- * class to help other parsre modules to convert links
- */
-public class URLHelper {
-
-	private static final String FILE_PROTOCOL_SEARCH_SIG = "file:/";//$NON-NLS-1$
-	private static final String FILE_PROTOCOL_SIG = "file:///";//$NON-NLS-1$
-	private static String RELATIVE_PATH_SIG = "..";//$NON-NLS-1$	
-	private static final String FORWARD_SLASH = "/";//$NON-NLS-1$	
-	private URL fBaseUrl = null; // base url. assumed to a absulute url
-	private String fBaseUrlString = null;
-	private URL fDocRoot = null;
-	private String fDocRootString = null;
-
-	public URLHelper(String baseUrl) {
-		initialize(baseUrl, null);
-	}
-
-	public URLHelper(String baseUrl, String docRoot) {
-		initialize(baseUrl, docRoot);
-	}
-
-	/**
-	 * Special adujust for file url
-	 */
-	public String adjustFileProtocolUrl(String url) {
-		if (url.startsWith(FILE_PROTOCOL_SEARCH_SIG)) {
-			url = FILE_PROTOCOL_SIG + url.substring(FILE_PROTOCOL_SEARCH_SIG.length());
-		}
-		return url;
-	}
-
-	private String convert(String url, URL baseUrl, String urlString) {
-		String absUrl = url;
-		if (baseUrl != null) {
-			try {
-				// do special thing file protocol
-				if (baseUrl.getProtocol().equalsIgnoreCase("file")) {//$NON-NLS-1$
-					// remove the fist
-					if (url.startsWith("/"))//$NON-NLS-1$
-						url = url.substring(1);
-					// empty string causes malformed exception
-					String tempUrl = url;
-					if ("".equals(url))//$NON-NLS-1$
-						tempUrl = " ";//$NON-NLS-1$
-					URL newUrl = new URL(baseUrl, tempUrl);
-					// do extra math for file protocol to support ie based
-					absUrl = adjustFileProtocolUrl(newUrl.toString());
-				}
-				else {
-					URL newUrl = new URL(fBaseUrl, url);
-					absUrl = newUrl.toString();
-				}
-			}
-			catch (MalformedURLException me) {
-			}
-			// convert everything to forward slash
-			absUrl = PathHelper.switchToForwardSlashes(absUrl);
-		}
-		else {
-			// the given may be based on file
-			if (urlString != null) {
-				// swich the url to proper direction
-				url = PathHelper.removeLeadingSeparator(url);
-				File fle = new File(urlString, url);
-				absUrl = fle.getPath();
-
-			}
-			// convert everything to forward slash
-			absUrl = PathHelper.switchToForwardSlashes(absUrl);
-
-			// if the path ends with ".." we need to add a terminating slash
-			// or
-			// else the link will not be resolved correctly. (it will look
-			// like
-			// /url/path/to/somewhere/.. instead of /url/path/to/
-			if (absUrl.endsWith(FORWARD_SLASH + RELATIVE_PATH_SIG)) {
-				absUrl += FORWARD_SLASH;
-			}
-		}
-
-		// resolve relative path to absolute
-		absUrl = PathHelper.adjustPath(absUrl);
-		return absUrl;
-	}
-
-	private void initialize(String baseUrl, String docRoot) {
-		//
-		// Find out whether baes url is a url or file name
-		//
-		try {
-			String temp = PathHelper.appendTrailingURLSlash(baseUrl);
-			fBaseUrl = new URL(temp);
-		}
-		catch (MalformedURLException mue) {
-		}
-		if (fBaseUrl == null) {
-			// it is a file based url
-			fBaseUrlString = baseUrl;
-		}
-
-		// do the same for doc root
-		if (docRoot != null) {
-			try {
-				String temp = PathHelper.appendTrailingURLSlash(docRoot);
-				fDocRoot = new URL(temp);
-
-			}
-			catch (MalformedURLException mue) {
-			}
-			if (fDocRoot == null) {
-				// it is a file based url
-				fDocRootString = docRoot;
-			}
-		}
-	}
-
-	/**
-	 * Convert the given url to a abolute url using the base url Input url can
-	 * be of any othe following format Absolute urls -------------- .
-	 * http://www.foo.com/ . http://www.foo.com . http://www.foo.com/folder .
-	 * http://www.foo.com/folder/ . http://www.foo.com/index.html .
-	 * http://www.foo.com/folder/index.html .
-	 * http://www.foo.com/folder/../index.html Url relative on document root
-	 * ------------------------- . / . /folder . /index.html .
-	 * /folder/index.html . /folder/../index.html
-	 * 
-	 * Self relative ------------------------- . index.html . ./index.html .
-	 * ../index.html . folder/index.html . folder/../index.html
-	 * 
-	 * file based url adds another dimension since it doesn't have a document
-	 * root So uses fDocRoot if provided
-	 */
-	public String toAbsolute(String url) {
-		String absUrl = url;
-
-		URL newUrl = null;
-		// try to see it is a absolute url
-		try {
-			newUrl = new URL(url);
-		}
-		catch (MalformedURLException me) {
-		}
-		// if document root is provided
-		// do special case
-		if (newUrl == null) {
-			if (fDocRoot == null && fDocRootString == null) {
-				// try to check relative url
-				absUrl = convert(url, fBaseUrl, fBaseUrlString);
-			}
-			else {
-				// doc root is provided
-				// if the url is a doc root based use doc root
-
-				if (url.startsWith("/"))//$NON-NLS-1$
-					absUrl = convert(url, fDocRoot, fDocRootString);
-				else
-					absUrl = convert(url, fBaseUrl, fBaseUrlString);
-
-			}
-		}
-		return absUrl;
-	}
-
-	/**
-	 * Convert from an absolute url to relative url based on the given url
-	 * Both are assumed to be ablsute url
-	 */
-	public String toRelative(String url, String documentUrl) {
-		String output = url;
-		// assuming both urls are absolute
-		try {
-			URL inputUrl = new URL(url);
-			URL docUrl = new URL(documentUrl);
-			// filter out if the urls are not fro the same domain
-			if (!inputUrl.getProtocol().equals(docUrl.getProtocol()) || !inputUrl.getHost().equals(docUrl.getHost()) || inputUrl.getPort() != docUrl.getPort())
-				return output;
-			// both url are coming form the same place
-			// strip off the domain parts
-			String inputName = inputUrl.getFile();
-			String docName = docUrl.getFile();
-			output = PathHelper.convertToRelative(inputName, docName);
-		}
-		catch (MalformedURLException me) {
-			output = null;
-		}
-		return output;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/util/URLModelProviderCSS.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/util/URLModelProviderCSS.java
deleted file mode 100644
index c25e9a2..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/util/URLModelProviderCSS.java
+++ /dev/null
@@ -1,387 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this 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.core.internal.util;
-
-
-
-import java.io.File;
-import java.io.FileInputStream;
-import java.io.FileNotFoundException;
-import java.io.IOException;
-import java.io.InputStream;
-import java.io.UnsupportedEncodingException;
-import java.net.MalformedURLException;
-import java.net.URL;
-import java.nio.charset.UnsupportedCharsetException;
-
-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.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.wst.sse.core.internal.encoding.EncodingRule;
-import org.eclipse.wst.sse.core.internal.provisional.IModelManager;
-import org.eclipse.wst.sse.core.internal.provisional.IStructuredModel;
-import org.eclipse.wst.sse.core.internal.provisional.StructuredModelManager;
-import org.eclipse.wst.sse.core.internal.provisional.exceptions.ResourceAlreadyExists;
-import org.eclipse.wst.sse.core.internal.provisional.exceptions.ResourceInUse;
-import org.eclipse.wst.sse.core.internal.util.PathHelper;
-import org.eclipse.wst.sse.core.internal.util.ProjectResolver;
-import org.eclipse.wst.sse.core.internal.util.URIResolver;
-
-/**
- */
-public class URLModelProviderCSS {
-
-	private static final int GET_MODEL_FOR_READ = 1;
-	// private static final int GET_NEW_MODEL_FOR_READ = 2;
-	private static final int GET_MODEL_FOR_EDIT = 3;
-	// private static final int GET_NEW_MODEL_FOR_EDIT = 4;
-	// private static final int READ_BUFFER_SIZE = 4096;
-	// IModelManager
-	private IModelManager modelManager = null;
-
-	/**
-	 */
-	public URLModelProviderCSS() {
-		super();
-
-		// obtain model manager
-		modelManager = StructuredModelManager.getModelManager();
-	}
-
-	/**
-	 * Calculate ID from a filename. This must be same as
-	 * FileModelProvider.calculateId(IFile)
-	 */
-	private static String calculateId(IPath fullIPath) {
-		return fullIPath.toString();
-	}
-
-	/**
-	 * <code>baseModel</code>: the model containing the link
-	 * <code>ref</code>: the link URL string
-	 */
-	private IStructuredModel getCommonModelFor(final IStructuredModel baseModel, final String ref, final int which) throws IOException {
-		// first, create absolute url
-		String absURL = resolveURI(baseModel, ref, true);
-		if ((absURL == null) || (absURL.length() == 0)) {
-			return null;
-		}
-
-		// need to remove file:// scheme if necessary
-		try {
-			final URL aURL = new URL(absURL);
-			// An actual URL was given, only file:/// is supported
-			// resolve it by finding the file it points to
-			if (!aURL.getProtocol().equals("platform")) { //$NON-NLS-1$
-				if (aURL.getProtocol().equals("file") && (aURL.getHost().equals("localhost") || aURL.getHost().length() == 0)) { //$NON-NLS-2$//$NON-NLS-1$
-					absURL = aURL.getFile();
-					final IPath ipath = new Path(absURL);
-					// if path has a device, and if it begins with
-					// IPath.SEPARATOR, remove it
-					final String device = ipath.getDevice();
-					if ((device != null) && (device.length() > 0)) {
-						if (device.charAt(0) == IPath.SEPARATOR) {
-							final String newDevice = device.substring(1);
-							absURL = ipath.setDevice(newDevice).toString();
-						}
-					}
-
-				}
-			}
-		}
-		catch (MalformedURLException mfuExc) {
-		}
-
-		// next, decide project
-		IProject project = null;
-		final IPath fullIPath = new Path(absURL);
-		IWorkspaceRoot workspace = ResourcesPlugin.getWorkspace().getRoot();
-		IContainer container = workspace.getContainerForLocation(fullIPath);
-		if (container != null) {
-			// fullIPath doesn't exist in workspace
-			project = container.getProject();
-		}
-
-		// If HTML document has a link to an extern CSS which is not in
-		// IProject
-		// workspace.getContainerForLoation() may return null. We need to take
-		// care
-		// of this case
-
-		// now, get absURL's IFile
-		if ((project != null) && (project.getLocation().isPrefixOf(fullIPath) == false)) {
-			// it's at outside of Project
-			return null;
-		}
-
-		IStructuredModel model = null;
-		if (project != null) {
-			IPath filePath = fullIPath.removeFirstSegments(project.getLocation().segmentCount());
-			IFile file = (filePath != null && !filePath.isEmpty()) ? project.getFile(filePath) : null;
-			if (file == null) {
-				return null;
-			}
-
-			// obtain model
-			if (which == GET_MODEL_FOR_EDIT) {
-				model = getModelForEdit(file);
-			}
-			else if (which == GET_MODEL_FOR_READ) {
-				model = getModelForRead(file);
-			}
-
-			// setting synchronization stamp is IModelManager's client's
-			// responsibility
-			if (model != null && model.getSynchronizationStamp() == IResource.NULL_STAMP)
-				model.resetSynchronizationStamp(file);
-		}
-		else {
-			String id = null;
-			InputStream inStream = null;
-			// obtain resolver
-			URIResolver resolver = (project != null) ? (URIResolver) project.getAdapter(URIResolver.class) : null;
-			if (resolver == null) {
-				// ProjectResolver can take care of the case if project is
-				// null.
-				resolver = new ProjectResolver(project);
-			}
-			if (resolver == null) {
-				return null;
-			}
-
-			// there is no project. we can't expect IProject help to create
-			// id/inputStream
-			File file = fullIPath.toFile();
-
-			// obatin id
-			id = calculateId(fullIPath);
-
-			// obtain InputStream
-			try {
-				inStream = new FileInputStream(file);
-			}
-			catch (FileNotFoundException fnfe) {
-				// the file does not exist, or we don't have read permission
-				return null;
-			}
-
-			// obtain model
-			try {
-				if (which == GET_MODEL_FOR_EDIT) {
-					model = getModelManager().getModelForEdit(id, inStream, resolver);
-				}
-				else if (which == GET_MODEL_FOR_READ) {
-					model = getModelManager().getModelForRead(id, inStream, resolver);
-				}
-			}
-			catch (UnsupportedEncodingException ue) {
-			}
-			catch (IOException ioe) {
-			}
-			finally {
-				// close now !
-				if (inStream != null) {
-					inStream.close();
-				}
-			}
-		}
-
-		// set locationid
-		if (model != null && model.getBaseLocation() == null) {
-			model.setBaseLocation(fullIPath.toString());
-		}
-
-		return model;
-	}
-
-	/**
-	 * <code>baseModel</code>: the model containing the link
-	 * <code>ref</code>: the link URL string
-	 */
-	public IStructuredModel getModelForEdit(IStructuredModel baseModel, String ref) throws IOException {
-		return getCommonModelFor(baseModel, ref, GET_MODEL_FOR_EDIT);
-	}
-
-	/**
-	 */
-	private IStructuredModel getModelForEdit(IFile file) throws IOException {
-		if (file == null)
-			return null;
-		IModelManager manager = getModelManager();
-
-		// create a fake InputStream
-		IStructuredModel model = null;
-		try {
-			model = manager.getModelForEdit(file);
-		}
-		catch (UnsupportedCharsetException ex) {
-			try {
-				model = manager.getModelForEdit(file, EncodingRule.FORCE_DEFAULT);
-			}
-			catch (IOException ioe) {
-			}
-			catch (CoreException ce) {
-			}
-		}
-		catch (CoreException ce) {
-		}
-		return model;
-	}
-
-	/**
-	 * <code>baseModel</code>: the model containing the link
-	 * <code>ref</code>: the link URL string
-	 */
-	public IStructuredModel getModelForRead(IStructuredModel baseModel, String ref) throws UnsupportedEncodingException, IOException {
-		return getCommonModelFor(baseModel, ref, GET_MODEL_FOR_READ);
-	}
-
-	/**
-	 */
-	private IStructuredModel getModelForRead(IFile file) throws IOException {
-		if (file == null)
-			return null;
-		IModelManager manager = getModelManager();
-
-		// create a fake InputStream
-		IStructuredModel model = null;
-		try {
-			model = manager.getModelForRead(file);
-		}
-		catch (UnsupportedCharsetException ex) {
-			try {
-				model = manager.getModelForRead(file, EncodingRule.FORCE_DEFAULT);
-			}
-			catch (IOException ioe) {
-			}
-			catch (CoreException ce) {
-			}
-		}
-		catch (CoreException ce) {
-		}
-		return model;
-	}
-
-	/**
-	 */
-	private IModelManager getModelManager() {
-		return modelManager;
-	}
-
-	public IStructuredModel getNewModelForEdit(IFile iFile) {
-		if (iFile == null)
-			return null;
-		IModelManager manager = getModelManager();
-		if (manager == null)
-			return null;
-
-		IStructuredModel model = null;
-		try {
-			model = manager.getNewModelForEdit(iFile, false);
-		}
-		catch (IOException ex) {
-		}
-		catch (ResourceInUse riu) {
-		}
-		catch (ResourceAlreadyExists rae) {
-		}
-		catch (CoreException ce) {
-		}
-		return model;
-	}
-
-	public IStructuredModel getNewModelForRead(IFile iFile) {
-		if (iFile == null)
-			return null;
-		IModelManager manager = getModelManager();
-		if (manager == null)
-			return null;
-
-		IStructuredModel model = null;
-		try {
-			model = manager.getNewModelForEdit(iFile, false);
-		}
-		catch (IOException ex) {
-		}
-		catch (ResourceInUse riu) {
-		}
-		catch (ResourceAlreadyExists rae) {
-		}
-		catch (CoreException ce) {
-		}
-		return model;
-	}
-
-	/**
-	 * <code>baseModel</code>: the model containing the link
-	 * <code>ref</code>: the link URL string
-	 * <code>resolveCrossProjectLinks</code>: If resolveCrossProjectLinks
-	 * is set to true, then this method will properly resolve the URI if it is
-	 * a valid URI pointing to another (appropriate) project.
-	 */
-	public static String resolveURI(IStructuredModel baseModel, String ref, boolean resolveCrossProjectLinks) {
-		if (baseModel == null)
-			return null;
-
-		// get resolver in Model
-		final URIResolver resolver = baseModel.getResolver();
-
-		// resolve to absolute url
-		final String absurl = (resolver != null) ? resolver.getLocationByURI(ref, resolveCrossProjectLinks) : null;
-		if ((resolver != null) && (absurl == null) && (ref != null) && (ref.trim().length() > 0) && (ref.trim().charAt(0) == '/')) {
-			// to reach here means :
-			// ref is a Docroot relative
-			// resolver can't resolve ref
-			// so that href is a broken and should not create model
-			return null;
-		}
-		if ((absurl != null) && (absurl.length() > 0)) {
-			return absurl;
-		}
-
-		// maybe ref is at outside of the Project
-		// obtain docroot;
-		final IContainer container = (resolver != null) ? resolver.getRootLocation() : null;
-		String docroot = null;
-		if (container != null) {
-			docroot = container.getLocation().toString();
-		}
-		if (docroot == null) {
-			docroot = baseModel.getBaseLocation();
-		}
-		if (docroot == null) {
-			// should not be
-			return null;
-		}
-
-		// obtain document url
-		String modelBaseLocation = baseModel.getBaseLocation();
-		if ((modelBaseLocation == null) || (modelBaseLocation.length() == 0)) {
-			// fallback...
-			modelBaseLocation = baseModel.getId();
-		}
-		if ((modelBaseLocation == null) || (modelBaseLocation.length() == 0)) {
-			// i can't resolve uri !
-			return null;
-		}
-
-		// resolve url
-		URLHelper helper = new URLHelper(PathHelper.getContainingFolderPath(modelBaseLocation), PathHelper.getContainingFolderPath(PathHelper.appendTrailingURLSlash(docroot)));
-		return helper.toAbsolute(ref);
-	}
-
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/util/declaration/BackgroundPositionXSubStyleAdapter.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/util/declaration/BackgroundPositionXSubStyleAdapter.java
deleted file mode 100644
index 29ab93c..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/util/declaration/BackgroundPositionXSubStyleAdapter.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.css.core.internal.util.declaration;
-
-
-
-import java.util.Collection;
-import java.util.Iterator;
-
-import org.eclipse.wst.css.core.internal.contentmodel.IValID;
-import org.eclipse.wst.css.core.internal.contentmodel.PropCMProperty;
-import org.eclipse.wst.css.core.internal.contentmodel.PropCMSubProperty;
-import org.eclipse.wst.css.core.internal.contentmodel.PropCMUtil;
-import org.eclipse.wst.css.core.internal.parserz.CSSRegionContexts;
-import org.eclipse.wst.css.core.internal.parserz.CSSTextParser;
-import org.eclipse.wst.css.core.internal.parserz.CSSTextToken;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSPrimitiveValue;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSValue;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSValueList;
-import org.w3c.dom.css.CSSPrimitiveValue;
-import org.w3c.dom.css.CSSValue;
-
-
-/**
- * for horizontal value of 'background-position'
- */
-public class BackgroundPositionXSubStyleAdapter implements ISubPropertyAdapter {
-
-	/**
-	 * 
-	 */
-	public BackgroundPositionXSubStyleAdapter() {
-		super();
-	}
-
-	/**
-	 * 
-	 */
-	protected CSSTextToken[] correctMeaningToken(CSSTextToken[] src) {
-		java.util.ArrayList list = new java.util.ArrayList();
-		for (int i = 0; i < src.length; i++) {
-			if (src[i].kind != CSSRegionContexts.CSS_S && src[i].kind != CSSRegionContexts.CSS_DECLARATION_VALUE_S && src[i].kind != CSSRegionContexts.CSS_COMMENT)
-				list.add(src[i]);
-		}
-		CSSTextToken[] ret = new CSSTextToken[list.size()];
-		list.toArray(ret);
-		return ret;
-	}
-
-	/**
-	 * 
-	 */
-	public String get(ICSS2Properties properties) {
-		String str = null;
-		Object obj = properties.get(PropCMProperty.getInstanceOf(PropCMProperty.P_BG_POSITION));
-		if (obj != null) {
-			PropCMProperty propX = PropCMSubProperty.getInstanceOf(PropCMSubProperty.PSUB_BG_POSITION_X);
-			PropCMProperty propY = PropCMSubProperty.getInstanceOf(PropCMSubProperty.PSUB_BG_POSITION_Y);
-			if (obj instanceof ICSSValueList) {
-				ICSSValueList list = (ICSSValueList) obj;
-				ICSSValue value = (ICSSValue) list.item(0);
-				if (value.getCssValueType() == CSSValue.CSS_PRIMITIVE_VALUE) {
-					ICSSPrimitiveValue prim = (ICSSPrimitiveValue) value;
-					if (prim.getPrimitiveType() == CSSPrimitiveValue.CSS_IDENT) {
-						// check not top or bottom
-						if (!propX.canHave(prim.getStringValue()) && propY.canHave(prim.getStringValue())) {
-							// case order is vertical -> horizontal
-							value = (ICSSValue) list.item(1);
-						}
-					}
-				}
-				str = value.getCSSValueText();
-			}
-			else if (obj instanceof ICSSValue) {
-				str = ((ICSSValue) obj).getCSSValueText();
-				if (str.equalsIgnoreCase(IValID.V_BOTTOM) || str.equalsIgnoreCase(IValID.V_TOP))
-					str = "";//$NON-NLS-1$
-			}
-			else {
-				str = obj.toString();
-				CSSTextParser parser = new CSSTextParser(CSSTextParser.MODE_DECLARATION_VALUE, str);
-				CSSTextToken[] tokens = parser.getTokens();
-
-				tokens = correctMeaningToken(tokens);
-				if (tokens.length == 0)
-					str = "";//$NON-NLS-1$
-				else if (tokens.length == 1 && (tokens[0].image.equalsIgnoreCase(IValID.V_BOTTOM) || tokens[0].image.equalsIgnoreCase(IValID.V_TOP)))
-					str = "";//$NON-NLS-1$
-				else
-					str = tokens[0].image;
-			}
-		}
-		return (str != null) ? str : "";//$NON-NLS-1$
-	}
-
-	/**
-	 * 
-	 */
-	public void set(ICSS2Properties properties, String value) throws org.w3c.dom.DOMException {
-		String newValue = null;
-		String valH = value;
-		String valV = properties.getBackgroundPositionY();
-		if (valV == null || valV.length() == 0)
-			newValue = valH;
-		else if (valH == null || valH.length() == 0) {
-			Collection valX = PropCMSubProperty.getInstanceOf(PropCMSubProperty.PSUB_BG_POSITION_X).getValues();
-			Collection valY = PropCMSubProperty.getInstanceOf(PropCMSubProperty.PSUB_BG_POSITION_Y).getValues();
-			PropCMUtil.minus(valY, valX);
-			Iterator it = valY.iterator();
-			while (it.hasNext()) {
-				Object obj = it.next();
-				if (obj.toString().equals(valV.toLowerCase())) {
-					// need not compensate for ...
-					newValue = valV;
-					break;
-				}
-			}
-			// compensate for Horizontal value
-			if (newValue == null) {
-				// check valV is length or not
-				CSSTextParser parser = new CSSTextParser(CSSTextParser.MODE_DECLARATION_VALUE, valV.trim());
-				CSSTextToken[] tokens = parser.getTokens();
-				if (tokens != null && tokens.length > 0 && tokens[0].kind == CSSRegionContexts.CSS_DECLARATION_VALUE_IDENT) {
-					newValue = IValID.V_LEFT + " " + valV;//$NON-NLS-1$
-				}
-				else
-					newValue = "0% " + valV;//$NON-NLS-1$
-			}
-		}
-		else
-			newValue = valH + " " + valV;//$NON-NLS-1$
-		properties.setBackgroundPosition(newValue);
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/util/declaration/BackgroundPositionYSubStyleAdapter.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/util/declaration/BackgroundPositionYSubStyleAdapter.java
deleted file mode 100644
index bb9e9a7..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/util/declaration/BackgroundPositionYSubStyleAdapter.java
+++ /dev/null
@@ -1,150 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this 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.core.internal.util.declaration;
-
-
-
-import java.util.Collection;
-import java.util.Iterator;
-
-import org.eclipse.wst.css.core.internal.contentmodel.IValID;
-import org.eclipse.wst.css.core.internal.contentmodel.PropCMProperty;
-import org.eclipse.wst.css.core.internal.contentmodel.PropCMSubProperty;
-import org.eclipse.wst.css.core.internal.contentmodel.PropCMUtil;
-import org.eclipse.wst.css.core.internal.parserz.CSSRegionContexts;
-import org.eclipse.wst.css.core.internal.parserz.CSSTextParser;
-import org.eclipse.wst.css.core.internal.parserz.CSSTextToken;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSPrimitiveValue;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSValue;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSValueList;
-import org.w3c.dom.css.CSSPrimitiveValue;
-import org.w3c.dom.css.CSSValue;
-
-
-/**
- * for vertical value of 'background-position'
- */
-public class BackgroundPositionYSubStyleAdapter implements ISubPropertyAdapter {
-
-	/**
-	 * 
-	 */
-	public BackgroundPositionYSubStyleAdapter() {
-		super();
-	}
-
-	/**
-	 * 
-	 */
-	protected CSSTextToken[] correctMeaningToken(CSSTextToken[] src) {
-		java.util.ArrayList list = new java.util.ArrayList();
-		for (int i = 0; i < src.length; i++) {
-			if (src[i].kind != CSSRegionContexts.CSS_S && src[i].kind != CSSRegionContexts.CSS_DECLARATION_VALUE_S && src[i].kind != CSSRegionContexts.CSS_COMMENT)
-				list.add(src[i]);
-		}
-		CSSTextToken[] ret = new CSSTextToken[list.size()];
-		list.toArray(ret);
-		return ret;
-	}
-
-	/**
-	 * 
-	 */
-	public String get(ICSS2Properties properties) {
-		String str = null;
-		Object obj = properties.get(PropCMProperty.getInstanceOf(PropCMProperty.P_BG_POSITION));
-		if (obj != null) {
-			PropCMProperty propX = PropCMSubProperty.getInstanceOf(PropCMSubProperty.PSUB_BG_POSITION_X);
-			PropCMProperty propY = PropCMSubProperty.getInstanceOf(PropCMSubProperty.PSUB_BG_POSITION_Y);
-			if (obj instanceof ICSSValueList) {
-				ICSSValueList list = (ICSSValueList) obj;
-				int index = 1;
-				ICSSValue value = (ICSSValue) list.item(0);
-				if (value.getCssValueType() == CSSValue.CSS_PRIMITIVE_VALUE) {
-					ICSSPrimitiveValue prim = (ICSSPrimitiveValue) value;
-					if (prim.getPrimitiveType() == CSSPrimitiveValue.CSS_IDENT) {
-						// check not top or bottom
-						if (!propX.canHave(prim.getStringValue()) && propY.canHave(prim.getStringValue())) {
-							// case order is vertical -> horizontal
-							index = 0;
-						}
-					}
-				}
-				str = ((ICSSValue) list.item(index)).getCSSValueText();
-			}
-			else if (obj instanceof ICSSValue) {
-				str = ((ICSSValue) obj).getCSSValueText();
-				if (!str.equalsIgnoreCase(IValID.V_BOTTOM) && !str.equalsIgnoreCase(IValID.V_TOP))
-					str = "";//$NON-NLS-1$
-			}
-			else {
-				str = obj.toString();
-				CSSTextParser parser = new CSSTextParser(CSSTextParser.MODE_DECLARATION_VALUE, str);
-				CSSTextToken[] tokens = parser.getTokens();
-
-				tokens = correctMeaningToken(tokens);
-				if (tokens.length == 1 && (tokens[0].image.equalsIgnoreCase(IValID.V_BOTTOM) || tokens[0].image.equalsIgnoreCase(IValID.V_TOP)))
-					str = tokens[0].image;
-				else if (tokens.length > 1)
-					str = tokens[1].image;
-				else
-					str = "";//$NON-NLS-1$
-			}
-		}
-		return (str != null) ? str : "";//$NON-NLS-1$
-	}
-
-	/**
-	 * 
-	 */
-	public void set(ICSS2Properties properties, String value) throws org.w3c.dom.DOMException {
-		String newValue = null;
-		String valH = properties.getBackgroundPositionX();
-		String valV = value;
-		if (valH != null && (valH.trim().equals("0%") /* default value */|| //$NON-NLS-1$
-					valH.trim().equalsIgnoreCase(IValID.V_LEFT) /*
-																 * another
-																 * default
-																 * value
-																 */))
-			valH = null;
-		if (valV == null || valV.length() == 0)
-			newValue = valH;
-		else if (valH == null || valH.length() == 0) {
-			Collection valX = PropCMSubProperty.getInstanceOf(PropCMSubProperty.PSUB_BG_POSITION_X).getValues();
-			Collection valY = PropCMSubProperty.getInstanceOf(PropCMSubProperty.PSUB_BG_POSITION_Y).getValues();
-			PropCMUtil.minus(valY, valX);
-			Iterator it = valY.iterator();
-			while (it.hasNext()) {
-				Object obj = it.next();
-				if (obj.toString().equals(valV.toLowerCase())) {
-					// need not compensate for ...
-					newValue = valV;
-					break;
-				}
-			}
-			// compensate for Horizontal value
-			if (newValue == null) {
-				// check valV is length or not
-				CSSTextParser parser = new CSSTextParser(CSSTextParser.MODE_DECLARATION_VALUE, valV.trim());
-				CSSTextToken[] tokens = parser.getTokens();
-				if (tokens != null && tokens.length > 0 && tokens[0].kind == CSSRegionContexts.CSS_DECLARATION_VALUE_IDENT) {
-					newValue = IValID.V_LEFT + " " + valV;//$NON-NLS-1$
-				}
-				else
-					newValue = "0% " + valV;//$NON-NLS-1$
-			}
-		}
-		else
-			newValue = valH + " " + valV;//$NON-NLS-1$
-		properties.setBackgroundPosition(newValue);
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/util/declaration/BackgroundShorthandAdapter.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/util/declaration/BackgroundShorthandAdapter.java
deleted file mode 100644
index d9b5fe6..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/util/declaration/BackgroundShorthandAdapter.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.css.core.internal.util.declaration;
-
-
-
-import org.eclipse.wst.css.core.internal.contentmodel.PropCMProperty;
-import org.eclipse.wst.css.core.internal.parserz.CSSRegionContexts;
-import org.eclipse.wst.css.core.internal.parserz.CSSTextParser;
-import org.eclipse.wst.css.core.internal.parserz.CSSTextToken;
-
-
-/**
- * For 'background' property 'background' will be expanded to
- * 'background-attachment', 'background-color', 'background-image',
- * 'background-position', 'background-repeat',
- */
-public class BackgroundShorthandAdapter implements IShorthandAdapter {
-
-	/**
-	 * 
-	 */
-	public BackgroundShorthandAdapter() {
-		super();
-	}
-
-	/**
-	 * 
-	 */
-	public boolean expand(String source, CSSPropertyContext dest) {
-		CSSTextParser parser = new CSSTextParser(CSSTextParser.MODE_DECLARATION_VALUE, source);
-		CSSTextToken[] tokens = parser.getTokens();
-		if (tokens.length <= 0) {
-			return false;
-		}
-		String color = "", image = "", repeat = "", attach = "", pos = "";//$NON-NLS-5$//$NON-NLS-4$//$NON-NLS-3$//$NON-NLS-2$//$NON-NLS-1$
-		PropCMProperty propColor = PropCMProperty.getInstanceOf(PropCMProperty.P_BG_COLOR);
-		PropCMProperty propImage = PropCMProperty.getInstanceOf(PropCMProperty.P_BG_IMAGE);
-		PropCMProperty propRepeat = PropCMProperty.getInstanceOf(PropCMProperty.P_BG_REPEAT);
-		PropCMProperty propAttach = PropCMProperty.getInstanceOf(PropCMProperty.P_BG_ATTACHMENT);
-		PropCMProperty propPos = PropCMProperty.getInstanceOf(PropCMProperty.P_BG_POSITION);
-
-		for (int i = 0; i < tokens.length; i++) {
-			if (tokens[i].kind == CSSRegionContexts.CSS_DECLARATION_VALUE_IDENT) {
-				if (propColor.canHave(tokens[i].image))
-					color = tokens[i].image;
-				else if (propImage.canHave(tokens[i].image))
-					image = tokens[i].image;
-				else if (propRepeat.canHave(tokens[i].image))
-					repeat = tokens[i].image;
-				else if (propAttach.canHave(tokens[i].image))
-					attach = tokens[i].image;
-				else if (propPos.canHave(tokens[i].image)) {
-					if (pos == null || pos.length() <= 0)
-						pos = tokens[i].image;
-					else
-						pos = pos + " " + tokens[i].image;//$NON-NLS-1$
-				}
-			}
-			else if (org.eclipse.wst.css.core.internal.util.CSSUtil.isLength(tokens[i]) || tokens[i].kind == CSSRegionContexts.CSS_DECLARATION_VALUE_NUMBER || tokens[i].kind == CSSRegionContexts.CSS_DECLARATION_VALUE_PERCENTAGE) {
-				if (pos == null || pos.length() <= 0)
-					pos = tokens[i].image;
-				else
-					pos = pos + " " + tokens[i].image;//$NON-NLS-1$
-			}
-			else if (tokens[i].kind == CSSRegionContexts.CSS_DECLARATION_VALUE_URI) {
-				image = tokens[i].image;
-			}
-			else if (tokens[i].kind == CSSRegionContexts.CSS_DECLARATION_VALUE_HASH) {
-				color = tokens[i].image;
-			}
-			else if (tokens[i].kind == CSSRegionContexts.CSS_DECLARATION_VALUE_FUNCTION) {
-				StringBuffer buf = new StringBuffer();
-				while (i < tokens.length) {
-					if (tokens[i].kind == CSSRegionContexts.CSS_COMMENT) {
-						i++;
-						continue;
-					}
-					buf.append(tokens[i].image);
-					if (tokens[i++].kind == CSSRegionContexts.CSS_DECLARATION_VALUE_PARENTHESIS_CLOSE)
-						break;
-				}
-				i--;
-				color = buf.toString();
-			}
-		}
-
-		dest.set(propColor.getName(), color);
-		dest.set(propImage.getName(), image);
-		dest.set(propRepeat.getName(), repeat);
-		dest.set(propAttach.getName(), attach);
-		dest.set(propPos.getName(), pos);
-
-		return true;
-	}
-
-	/**
-	 * 
-	 */
-	public String extract(String source, PropCMProperty propDest) {
-		CSSTextParser parser = new CSSTextParser(CSSTextParser.MODE_DECLARATION_VALUE, source);
-		CSSTextToken[] tokens = parser.getTokens();
-		if (tokens.length <= 0) {
-			return null;
-		}
-		String color = null, image = null, repeat = null, attach = null, pos = null;
-		PropCMProperty propColor = PropCMProperty.getInstanceOf(PropCMProperty.P_BG_COLOR);
-		PropCMProperty propImage = PropCMProperty.getInstanceOf(PropCMProperty.P_BG_IMAGE);
-		PropCMProperty propRepeat = PropCMProperty.getInstanceOf(PropCMProperty.P_BG_REPEAT);
-		PropCMProperty propAttach = PropCMProperty.getInstanceOf(PropCMProperty.P_BG_ATTACHMENT);
-		PropCMProperty propPos = PropCMProperty.getInstanceOf(PropCMProperty.P_BG_POSITION);
-
-		for (int i = 0; i < tokens.length; i++) {
-			if (tokens[i].kind == CSSRegionContexts.CSS_DECLARATION_VALUE_IDENT) {
-				if (propColor.canHave(tokens[i].image))
-					color = tokens[i].image;
-				else if (propImage.canHave(tokens[i].image))
-					image = tokens[i].image;
-				else if (propRepeat.canHave(tokens[i].image))
-					repeat = tokens[i].image;
-				else if (propAttach.canHave(tokens[i].image))
-					attach = tokens[i].image;
-				else if (propPos.canHave(tokens[i].image)) {
-					if (pos == null)
-						pos = tokens[i].image;
-					else
-						pos = pos + " " + tokens[i].image;//$NON-NLS-1$
-				}
-			}
-			else if (org.eclipse.wst.css.core.internal.util.CSSUtil.isLength(tokens[i]) || tokens[i].kind == CSSRegionContexts.CSS_DECLARATION_VALUE_NUMBER || tokens[i].kind == CSSRegionContexts.CSS_DECLARATION_VALUE_PERCENTAGE) {
-				if (pos == null)
-					pos = tokens[i].image;
-				else
-					pos = pos + " " + tokens[i].image;//$NON-NLS-1$
-			}
-			else if (tokens[i].kind == CSSRegionContexts.CSS_DECLARATION_VALUE_URI) {
-				image = tokens[i].image;
-			}
-			else if (tokens[i].kind == CSSRegionContexts.CSS_DECLARATION_VALUE_HASH) {
-				color = tokens[i].image;
-			}
-			else if (tokens[i].kind == CSSRegionContexts.CSS_DECLARATION_VALUE_FUNCTION) {
-				StringBuffer buf = new StringBuffer();
-				while (i < tokens.length) {
-					if (tokens[i].kind == CSSRegionContexts.CSS_COMMENT) {
-						i++;
-						continue;
-					}
-					buf.append(tokens[i].image);
-					if (tokens[i++].kind == CSSRegionContexts.CSS_DECLARATION_VALUE_PARENTHESIS_CLOSE)
-						break;
-				}
-				i--;
-				color = buf.toString();
-			}
-		}
-
-		if (propColor == propDest)
-			return color;
-		else if (propImage == propDest)
-			return image;
-		else if (propRepeat == propDest)
-			return repeat;
-		else if (propAttach == propDest)
-			return attach;
-		else if (propPos == propDest)
-			return pos;
-		else
-			return null;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/util/declaration/BorderBottomShorthandAdapter.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/util/declaration/BorderBottomShorthandAdapter.java
deleted file mode 100644
index 09b505e..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/util/declaration/BorderBottomShorthandAdapter.java
+++ /dev/null
@@ -1,140 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this 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.core.internal.util.declaration;
-
-
-
-import org.eclipse.wst.css.core.internal.contentmodel.PropCMProperty;
-import org.eclipse.wst.css.core.internal.parserz.CSSRegionContexts;
-import org.eclipse.wst.css.core.internal.parserz.CSSTextParser;
-import org.eclipse.wst.css.core.internal.parserz.CSSTextToken;
-
-
-/**
- * For 'border-bottom' property 'border-bottom' will be expanded to
- * 'border-bottom-color', 'border-bottom-style', 'border-bottom-width',
- */
-public class BorderBottomShorthandAdapter implements IShorthandAdapter {
-
-	/**
-	 * 
-	 */
-	public BorderBottomShorthandAdapter() {
-		super();
-	}
-
-	/**
-	 * 
-	 */
-	public boolean expand(String source, CSSPropertyContext dest) {
-		CSSTextParser parser = new CSSTextParser(CSSTextParser.MODE_DECLARATION_VALUE, source);
-		CSSTextToken[] tokens = parser.getTokens();
-		if (tokens.length <= 0) {
-			return false;
-		}
-		String color = "", style = "", width = "";//$NON-NLS-3$//$NON-NLS-2$//$NON-NLS-1$
-		PropCMProperty propColor = PropCMProperty.getInstanceOf(PropCMProperty.P_BORDER_BOTTOM_COLOR);
-		PropCMProperty propStyle = PropCMProperty.getInstanceOf(PropCMProperty.P_BORDER_BOTTOM_STYLE);
-		PropCMProperty propWidth = PropCMProperty.getInstanceOf(PropCMProperty.P_BORDER_BOTTOM_WIDTH);
-
-		for (int i = 0; i < tokens.length; i++) {
-			if (tokens[i].kind == CSSRegionContexts.CSS_DECLARATION_VALUE_IDENT) {
-				if (propStyle.canHave(tokens[i].image))
-					style = tokens[i].image;
-				else if (propWidth.canHave(tokens[i].image))
-					width = tokens[i].image;
-				else if (propColor.canHave(tokens[i].image))
-					color = tokens[i].image;
-			}
-			else if (org.eclipse.wst.css.core.internal.util.CSSUtil.isLength(tokens[i]) || tokens[i].kind == CSSRegionContexts.CSS_DECLARATION_VALUE_NUMBER) {
-				width = tokens[i].image;
-			}
-			else if (tokens[i].kind == CSSRegionContexts.CSS_DECLARATION_VALUE_HASH) {
-				color = tokens[i].image;
-			}
-			else if (tokens[i].kind == CSSRegionContexts.CSS_DECLARATION_VALUE_FUNCTION) {
-				StringBuffer buf = new StringBuffer();
-				while (i < tokens.length) {
-					if (tokens[i].kind == CSSRegionContexts.CSS_COMMENT) {
-						i++;
-						continue;
-					}
-					buf.append(tokens[i].image);
-					if (tokens[i++].kind == CSSRegionContexts.CSS_DECLARATION_VALUE_PARENTHESIS_CLOSE)
-						break;
-				}
-				i--;
-				color = buf.toString();
-			}
-		}
-
-		dest.set(propColor.getName(), color);
-		dest.set(propStyle.getName(), style);
-		dest.set(propWidth.getName(), width);
-
-		return true;
-	}
-
-	/**
-	 * 
-	 */
-	public String extract(String source, PropCMProperty propDest) {
-		CSSTextParser parser = new CSSTextParser(CSSTextParser.MODE_DECLARATION_VALUE, source);
-		CSSTextToken[] tokens = parser.getTokens();
-		if (tokens.length <= 0) {
-			return null;
-		}
-		String color = null, style = null, width = null;
-		PropCMProperty propColor = PropCMProperty.getInstanceOf(PropCMProperty.P_BORDER_BOTTOM_COLOR);
-		PropCMProperty propStyle = PropCMProperty.getInstanceOf(PropCMProperty.P_BORDER_BOTTOM_STYLE);
-		PropCMProperty propWidth = PropCMProperty.getInstanceOf(PropCMProperty.P_BORDER_BOTTOM_WIDTH);
-
-		for (int i = 0; i < tokens.length; i++) {
-			if (tokens[i].kind == CSSRegionContexts.CSS_DECLARATION_VALUE_IDENT) {
-				if (propStyle.canHave(tokens[i].image))
-					style = tokens[i].image;
-				else if (propWidth.canHave(tokens[i].image))
-					width = tokens[i].image;
-				else if (propColor.canHave(tokens[i].image))
-					color = tokens[i].image;
-			}
-			else if (org.eclipse.wst.css.core.internal.util.CSSUtil.isLength(tokens[i]) || tokens[i].kind == CSSRegionContexts.CSS_DECLARATION_VALUE_NUMBER) {
-				width = tokens[i].image;
-			}
-			else if (tokens[i].kind == CSSRegionContexts.CSS_DECLARATION_VALUE_HASH) {
-				color = tokens[i].image;
-			}
-			else if (tokens[i].kind == CSSRegionContexts.CSS_DECLARATION_VALUE_FUNCTION) {
-				StringBuffer buf = new StringBuffer();
-				while (i < tokens.length) {
-					if (tokens[i].kind == CSSRegionContexts.CSS_COMMENT) {
-						i++;
-						continue;
-					}
-					buf.append(tokens[i].image);
-					if (tokens[i++].kind == CSSRegionContexts.CSS_DECLARATION_VALUE_PARENTHESIS_CLOSE)
-						break;
-				}
-				i--;
-				color = buf.toString();
-			}
-		}
-
-		if (propColor == propDest)
-			return color;
-		else if (propStyle == propDest)
-			return style;
-		else if (propWidth == propDest)
-			return width;
-		else
-			return null;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/util/declaration/BorderColorShorthandAdapter.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/util/declaration/BorderColorShorthandAdapter.java
deleted file mode 100644
index e314007..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/util/declaration/BorderColorShorthandAdapter.java
+++ /dev/null
@@ -1,158 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this 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.core.internal.util.declaration;
-
-
-
-import org.eclipse.wst.css.core.internal.contentmodel.PropCMProperty;
-import org.eclipse.wst.css.core.internal.parserz.CSSRegionContexts;
-import org.eclipse.wst.css.core.internal.parserz.CSSTextParser;
-import org.eclipse.wst.css.core.internal.parserz.CSSTextToken;
-
-
-/**
- * For 'border-color' property 'border-color' will be expanded to
- * 'border-top-color', 'border-right-color', 'border-bottom-color',
- * 'border-left-color',
- */
-public class BorderColorShorthandAdapter implements IShorthandAdapter {
-
-	/**
-	 * 
-	 */
-	public BorderColorShorthandAdapter() {
-		super();
-	}
-
-	/**
-	 * 
-	 */
-	public boolean expand(String source, CSSPropertyContext dest) {
-		CSSTextParser parser = new CSSTextParser(CSSTextParser.MODE_DECLARATION_VALUE, source);
-		CSSTextToken[] tokens = parser.getTokens();
-		if (tokens.length <= 0) {
-			return false;
-		}
-		String[] idents = new String[4];
-		int j = 0;
-		for (int i = 0; i < tokens.length; i++) {
-			if (tokens[i].kind == CSSRegionContexts.CSS_DECLARATION_VALUE_IDENT || tokens[i].kind == CSSRegionContexts.CSS_DECLARATION_VALUE_HASH)
-				idents[j++] = tokens[i].image;
-			else if (tokens[i].kind == CSSRegionContexts.CSS_DECLARATION_VALUE_FUNCTION) {
-				StringBuffer buf = new StringBuffer();
-				while (i < tokens.length) {
-					if (tokens[i].kind == CSSRegionContexts.CSS_COMMENT) {
-						i++;
-						continue;
-					}
-					buf.append(tokens[i].image);
-					if (tokens[i++].kind == CSSRegionContexts.CSS_DECLARATION_VALUE_PARENTHESIS_CLOSE)
-						break;
-				}
-				i--;
-				idents[j++] = buf.toString();
-			}
-			if (j == 4)
-				break;
-		}
-
-		String[] dests = new String[4];
-		if (j == 0)
-			return true;
-		else if (j == 1) {
-			dests[0] = dests[1] = dests[2] = dests[3] = idents[0];
-		}
-		else if (j == 2) {
-			dests[0] = dests[2] = idents[0];
-			dests[1] = dests[3] = idents[1];
-		}
-		else if (j == 3) {
-			dests[0] = idents[0];
-			dests[1] = dests[3] = idents[1];
-			dests[2] = idents[2];
-		}
-		else {
-			for (int k = 0; k < 4; k++)
-				dests[k] = idents[k];
-		}
-		dest.set(PropCMProperty.P_BORDER_TOP_COLOR, dests[0]);
-		dest.set(PropCMProperty.P_BORDER_RIGHT_COLOR, dests[1]);
-		dest.set(PropCMProperty.P_BORDER_BOTTOM_COLOR, dests[2]);
-		dest.set(PropCMProperty.P_BORDER_LEFT_COLOR, dests[3]);
-
-		return true;
-	}
-
-	/**
-	 * 
-	 */
-	public String extract(String source, PropCMProperty propDest) {
-		CSSTextParser parser = new CSSTextParser(CSSTextParser.MODE_DECLARATION_VALUE, source);
-		CSSTextToken[] tokens = parser.getTokens();
-		if (tokens.length <= 0) {
-			return null;
-		}
-		String[] idents = new String[4];
-		int j = 0;
-		for (int i = 0; i < tokens.length; i++) {
-			if (tokens[i].kind == CSSRegionContexts.CSS_DECLARATION_VALUE_IDENT || tokens[i].kind == CSSRegionContexts.CSS_DECLARATION_VALUE_HASH)
-				idents[j++] = tokens[i].image;
-			else if (tokens[i].kind == CSSRegionContexts.CSS_DECLARATION_VALUE_FUNCTION) {
-				StringBuffer buf = new StringBuffer();
-				while (i < tokens.length) {
-					if (tokens[i].kind == CSSRegionContexts.CSS_COMMENT) {
-						i++;
-						continue;
-					}
-					buf.append(tokens[i].image);
-					if (tokens[i++].kind == CSSRegionContexts.CSS_DECLARATION_VALUE_PARENTHESIS_CLOSE)
-						break;
-				}
-				i--;
-				idents[j++] = buf.toString();
-			}
-			if (j == 4)
-				break;
-		}
-
-		if (j == 0)
-			return null;
-		else if (j == 1)
-			return idents[0];
-		else if (j == 2) {
-			if (propDest.getName() == PropCMProperty.P_BORDER_TOP_COLOR || propDest.getName() == PropCMProperty.P_BORDER_BOTTOM_COLOR)
-				return idents[0];
-			else
-				return idents[1];
-		}
-		else if (j == 3) {
-			if (propDest.getName() == PropCMProperty.P_BORDER_TOP_COLOR)
-				return idents[0];
-			else if (propDest.getName() == PropCMProperty.P_BORDER_BOTTOM_COLOR)
-				return idents[2];
-			else
-				return idents[1];
-		}
-		else {
-			if (propDest.getName() == PropCMProperty.P_BORDER_TOP_COLOR)
-				return idents[0];
-			else if (propDest.getName() == PropCMProperty.P_BORDER_RIGHT_COLOR)
-				return idents[1];
-			else if (propDest.getName() == PropCMProperty.P_BORDER_BOTTOM_COLOR)
-				return idents[2];
-			else if (propDest.getName() == PropCMProperty.P_BORDER_LEFT_COLOR)
-				return idents[3];
-			else
-				return null;
-		}
-
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/util/declaration/BorderLeftShorthandAdapter.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/util/declaration/BorderLeftShorthandAdapter.java
deleted file mode 100644
index cbc7930..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/util/declaration/BorderLeftShorthandAdapter.java
+++ /dev/null
@@ -1,140 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this 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.core.internal.util.declaration;
-
-
-
-import org.eclipse.wst.css.core.internal.contentmodel.PropCMProperty;
-import org.eclipse.wst.css.core.internal.parserz.CSSRegionContexts;
-import org.eclipse.wst.css.core.internal.parserz.CSSTextParser;
-import org.eclipse.wst.css.core.internal.parserz.CSSTextToken;
-
-
-/**
- * For 'border-left' property 'border-left' will be expanded to
- * 'border-left-color', 'border-left-style', 'border-left-width',
- */
-public class BorderLeftShorthandAdapter implements IShorthandAdapter {
-
-	/**
-	 * 
-	 */
-	public BorderLeftShorthandAdapter() {
-		super();
-	}
-
-	/**
-	 * 
-	 */
-	public boolean expand(String source, CSSPropertyContext dest) {
-		CSSTextParser parser = new CSSTextParser(CSSTextParser.MODE_DECLARATION_VALUE, source);
-		CSSTextToken[] tokens = parser.getTokens();
-		if (tokens.length <= 0) {
-			return false;
-		}
-		String color = "", style = "", width = "";//$NON-NLS-3$//$NON-NLS-2$//$NON-NLS-1$
-		PropCMProperty propColor = PropCMProperty.getInstanceOf(PropCMProperty.P_BORDER_LEFT_COLOR);
-		PropCMProperty propStyle = PropCMProperty.getInstanceOf(PropCMProperty.P_BORDER_LEFT_STYLE);
-		PropCMProperty propWidth = PropCMProperty.getInstanceOf(PropCMProperty.P_BORDER_LEFT_WIDTH);
-
-		for (int i = 0; i < tokens.length; i++) {
-			if (tokens[i].kind == CSSRegionContexts.CSS_DECLARATION_VALUE_IDENT) {
-				if (propStyle.canHave(tokens[i].image))
-					style = tokens[i].image;
-				else if (propWidth.canHave(tokens[i].image))
-					width = tokens[i].image;
-				else if (propColor.canHave(tokens[i].image))
-					color = tokens[i].image;
-			}
-			else if (org.eclipse.wst.css.core.internal.util.CSSUtil.isLength(tokens[i]) || tokens[i].kind == CSSRegionContexts.CSS_DECLARATION_VALUE_NUMBER) {
-				width = tokens[i].image;
-			}
-			else if (tokens[i].kind == CSSRegionContexts.CSS_DECLARATION_VALUE_HASH) {
-				color = tokens[i].image;
-			}
-			else if (tokens[i].kind == CSSRegionContexts.CSS_DECLARATION_VALUE_FUNCTION) {
-				StringBuffer buf = new StringBuffer();
-				while (i < tokens.length) {
-					if (tokens[i].kind == CSSRegionContexts.CSS_COMMENT) {
-						i++;
-						continue;
-					}
-					buf.append(tokens[i].image);
-					if (tokens[i++].kind == CSSRegionContexts.CSS_DECLARATION_VALUE_PARENTHESIS_CLOSE)
-						break;
-				}
-				i--;
-				color = buf.toString();
-			}
-		}
-
-		dest.set(propColor.getName(), color);
-		dest.set(propStyle.getName(), style);
-		dest.set(propWidth.getName(), width);
-
-		return true;
-	}
-
-	/**
-	 * 
-	 */
-	public String extract(String source, PropCMProperty propDest) {
-		CSSTextParser parser = new CSSTextParser(CSSTextParser.MODE_DECLARATION_VALUE, source);
-		CSSTextToken[] tokens = parser.getTokens();
-		if (tokens.length <= 0) {
-			return null;
-		}
-		String color = null, style = null, width = null;
-		PropCMProperty propColor = PropCMProperty.getInstanceOf(PropCMProperty.P_BORDER_LEFT_COLOR);
-		PropCMProperty propStyle = PropCMProperty.getInstanceOf(PropCMProperty.P_BORDER_LEFT_STYLE);
-		PropCMProperty propWidth = PropCMProperty.getInstanceOf(PropCMProperty.P_BORDER_LEFT_WIDTH);
-
-		for (int i = 0; i < tokens.length; i++) {
-			if (tokens[i].kind == CSSRegionContexts.CSS_DECLARATION_VALUE_IDENT) {
-				if (propStyle.canHave(tokens[i].image))
-					style = tokens[i].image;
-				else if (propWidth.canHave(tokens[i].image))
-					width = tokens[i].image;
-				else if (propColor.canHave(tokens[i].image))
-					color = tokens[i].image;
-			}
-			else if (org.eclipse.wst.css.core.internal.util.CSSUtil.isLength(tokens[i]) || tokens[i].kind == CSSRegionContexts.CSS_DECLARATION_VALUE_NUMBER) {
-				width = tokens[i].image;
-			}
-			else if (tokens[i].kind == CSSRegionContexts.CSS_DECLARATION_VALUE_HASH) {
-				color = tokens[i].image;
-			}
-			else if (tokens[i].kind == CSSRegionContexts.CSS_DECLARATION_VALUE_FUNCTION) {
-				StringBuffer buf = new StringBuffer();
-				while (i < tokens.length) {
-					if (tokens[i].kind == CSSRegionContexts.CSS_COMMENT) {
-						i++;
-						continue;
-					}
-					buf.append(tokens[i].image);
-					if (tokens[i++].kind == CSSRegionContexts.CSS_DECLARATION_VALUE_PARENTHESIS_CLOSE)
-						break;
-				}
-				i--;
-				color = buf.toString();
-			}
-		}
-
-		if (propColor == propDest)
-			return color;
-		else if (propStyle == propDest)
-			return style;
-		else if (propWidth == propDest)
-			return width;
-		else
-			return null;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/util/declaration/BorderRightShorthandAdapter.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/util/declaration/BorderRightShorthandAdapter.java
deleted file mode 100644
index d74e440..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/util/declaration/BorderRightShorthandAdapter.java
+++ /dev/null
@@ -1,140 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this 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.core.internal.util.declaration;
-
-
-
-import org.eclipse.wst.css.core.internal.contentmodel.PropCMProperty;
-import org.eclipse.wst.css.core.internal.parserz.CSSRegionContexts;
-import org.eclipse.wst.css.core.internal.parserz.CSSTextParser;
-import org.eclipse.wst.css.core.internal.parserz.CSSTextToken;
-
-
-/**
- * For 'border-right' property 'border-right' will be expanded to
- * 'border-right-color', 'border-right-style', 'border-right-width',
- */
-public class BorderRightShorthandAdapter implements IShorthandAdapter {
-
-	/**
-	 * 
-	 */
-	public BorderRightShorthandAdapter() {
-		super();
-	}
-
-	/**
-	 * 
-	 */
-	public boolean expand(String source, CSSPropertyContext dest) {
-		CSSTextParser parser = new CSSTextParser(CSSTextParser.MODE_DECLARATION_VALUE, source);
-		CSSTextToken[] tokens = parser.getTokens();
-		if (tokens.length <= 0) {
-			return false;
-		}
-		String color = "", style = "", width = "";//$NON-NLS-3$//$NON-NLS-2$//$NON-NLS-1$
-		PropCMProperty propColor = PropCMProperty.getInstanceOf(PropCMProperty.P_BORDER_RIGHT_COLOR);
-		PropCMProperty propStyle = PropCMProperty.getInstanceOf(PropCMProperty.P_BORDER_RIGHT_STYLE);
-		PropCMProperty propWidth = PropCMProperty.getInstanceOf(PropCMProperty.P_BORDER_RIGHT_WIDTH);
-
-		for (int i = 0; i < tokens.length; i++) {
-			if (tokens[i].kind == CSSRegionContexts.CSS_DECLARATION_VALUE_IDENT) {
-				if (propStyle.canHave(tokens[i].image))
-					style = tokens[i].image;
-				else if (propWidth.canHave(tokens[i].image))
-					width = tokens[i].image;
-				else if (propColor.canHave(tokens[i].image))
-					color = tokens[i].image;
-			}
-			else if (org.eclipse.wst.css.core.internal.util.CSSUtil.isLength(tokens[i]) || tokens[i].kind == CSSRegionContexts.CSS_DECLARATION_VALUE_NUMBER) {
-				width = tokens[i].image;
-			}
-			else if (tokens[i].kind == CSSRegionContexts.CSS_DECLARATION_VALUE_HASH) {
-				color = tokens[i].image;
-			}
-			else if (tokens[i].kind == CSSRegionContexts.CSS_DECLARATION_VALUE_FUNCTION) {
-				StringBuffer buf = new StringBuffer();
-				while (i < tokens.length) {
-					if (tokens[i].kind == CSSRegionContexts.CSS_COMMENT) {
-						i++;
-						continue;
-					}
-					buf.append(tokens[i].image);
-					if (tokens[i++].kind == CSSRegionContexts.CSS_DECLARATION_VALUE_PARENTHESIS_CLOSE)
-						break;
-				}
-				i--;
-				color = buf.toString();
-			}
-		}
-
-		dest.set(propColor.getName(), color);
-		dest.set(propStyle.getName(), style);
-		dest.set(propWidth.getName(), width);
-
-		return true;
-	}
-
-	/**
-	 * 
-	 */
-	public String extract(String source, PropCMProperty propDest) {
-		CSSTextParser parser = new CSSTextParser(CSSTextParser.MODE_DECLARATION_VALUE, source);
-		CSSTextToken[] tokens = parser.getTokens();
-		if (tokens.length <= 0) {
-			return null;
-		}
-		String color = null, style = null, width = null;
-		PropCMProperty propColor = PropCMProperty.getInstanceOf(PropCMProperty.P_BORDER_RIGHT_COLOR);
-		PropCMProperty propStyle = PropCMProperty.getInstanceOf(PropCMProperty.P_BORDER_RIGHT_STYLE);
-		PropCMProperty propWidth = PropCMProperty.getInstanceOf(PropCMProperty.P_BORDER_RIGHT_WIDTH);
-
-		for (int i = 0; i < tokens.length; i++) {
-			if (tokens[i].kind == CSSRegionContexts.CSS_DECLARATION_VALUE_IDENT) {
-				if (propStyle.canHave(tokens[i].image))
-					style = tokens[i].image;
-				else if (propWidth.canHave(tokens[i].image))
-					width = tokens[i].image;
-				else if (propColor.canHave(tokens[i].image))
-					color = tokens[i].image;
-			}
-			else if (org.eclipse.wst.css.core.internal.util.CSSUtil.isLength(tokens[i]) || tokens[i].kind == CSSRegionContexts.CSS_DECLARATION_VALUE_NUMBER) {
-				width = tokens[i].image;
-			}
-			else if (tokens[i].kind == CSSRegionContexts.CSS_DECLARATION_VALUE_HASH) {
-				color = tokens[i].image;
-			}
-			else if (tokens[i].kind == CSSRegionContexts.CSS_DECLARATION_VALUE_FUNCTION) {
-				StringBuffer buf = new StringBuffer();
-				while (i < tokens.length) {
-					if (tokens[i].kind == CSSRegionContexts.CSS_COMMENT) {
-						i++;
-						continue;
-					}
-					buf.append(tokens[i].image);
-					if (tokens[i++].kind == CSSRegionContexts.CSS_DECLARATION_VALUE_PARENTHESIS_CLOSE)
-						break;
-				}
-				i--;
-				color = buf.toString();
-			}
-		}
-
-		if (propColor == propDest)
-			return color;
-		else if (propStyle == propDest)
-			return style;
-		else if (propWidth == propDest)
-			return width;
-		else
-			return null;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/util/declaration/BorderShorthandAdapter.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/util/declaration/BorderShorthandAdapter.java
deleted file mode 100644
index 6da3333..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/util/declaration/BorderShorthandAdapter.java
+++ /dev/null
@@ -1,140 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this 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.core.internal.util.declaration;
-
-
-
-import org.eclipse.wst.css.core.internal.contentmodel.PropCMProperty;
-import org.eclipse.wst.css.core.internal.parserz.CSSRegionContexts;
-import org.eclipse.wst.css.core.internal.parserz.CSSTextParser;
-import org.eclipse.wst.css.core.internal.parserz.CSSTextToken;
-
-
-/**
- * For 'border' property 'border' will be expanded to 'border-color',
- * 'border-style', 'border-width',
- */
-public class BorderShorthandAdapter implements IShorthandAdapter {
-
-	/**
-	 * 
-	 */
-	public BorderShorthandAdapter() {
-		super();
-	}
-
-	/**
-	 * 
-	 */
-	public boolean expand(String source, CSSPropertyContext dest) {
-		CSSTextParser parser = new CSSTextParser(CSSTextParser.MODE_DECLARATION_VALUE, source);
-		CSSTextToken[] tokens = parser.getTokens();
-		if (tokens.length <= 0) {
-			return false;
-		}
-		String color = "", style = "", width = "";//$NON-NLS-3$//$NON-NLS-2$//$NON-NLS-1$
-		PropCMProperty propColor = PropCMProperty.getInstanceOf(PropCMProperty.P_BORDER_COLOR);
-		PropCMProperty propStyle = PropCMProperty.getInstanceOf(PropCMProperty.P_BORDER_STYLE);
-		PropCMProperty propWidth = PropCMProperty.getInstanceOf(PropCMProperty.P_BORDER_WIDTH);
-
-		for (int i = 0; i < tokens.length; i++) {
-			if (tokens[i].kind == CSSRegionContexts.CSS_DECLARATION_VALUE_IDENT) {
-				if (propStyle.canHave(tokens[i].image))
-					style = tokens[i].image;
-				else if (propWidth.canHave(tokens[i].image))
-					width = tokens[i].image;
-				else if (propColor.canHave(tokens[i].image))
-					color = tokens[i].image;
-			}
-			else if (org.eclipse.wst.css.core.internal.util.CSSUtil.isLength(tokens[i]) || tokens[i].kind == CSSRegionContexts.CSS_DECLARATION_VALUE_NUMBER) {
-				width = tokens[i].image;
-			}
-			else if (tokens[i].kind == CSSRegionContexts.CSS_DECLARATION_VALUE_HASH) {
-				color = tokens[i].image;
-			}
-			else if (tokens[i].kind == CSSRegionContexts.CSS_DECLARATION_VALUE_FUNCTION) {
-				StringBuffer buf = new StringBuffer();
-				while (i < tokens.length) {
-					if (tokens[i].kind == CSSRegionContexts.CSS_COMMENT) {
-						i++;
-						continue;
-					}
-					buf.append(tokens[i].image);
-					if (tokens[i++].kind == CSSRegionContexts.CSS_DECLARATION_VALUE_PARENTHESIS_CLOSE)
-						break;
-				}
-				i--;
-				color = buf.toString();
-			}
-		}
-
-		dest.set(propColor.getName(), color);
-		dest.set(propStyle.getName(), style);
-		dest.set(propWidth.getName(), width);
-
-		return true;
-	}
-
-	/**
-	 * 
-	 */
-	public String extract(String source, PropCMProperty propDest) {
-		CSSTextParser parser = new CSSTextParser(CSSTextParser.MODE_DECLARATION_VALUE, source);
-		CSSTextToken[] tokens = parser.getTokens();
-		if (tokens.length <= 0) {
-			return null;
-		}
-		String color = null, style = null, width = null;
-		PropCMProperty propColor = PropCMProperty.getInstanceOf(PropCMProperty.P_BORDER_COLOR);
-		PropCMProperty propStyle = PropCMProperty.getInstanceOf(PropCMProperty.P_BORDER_STYLE);
-		PropCMProperty propWidth = PropCMProperty.getInstanceOf(PropCMProperty.P_BORDER_WIDTH);
-
-		for (int i = 0; i < tokens.length; i++) {
-			if (tokens[i].kind == CSSRegionContexts.CSS_DECLARATION_VALUE_IDENT) {
-				if (propStyle.canHave(tokens[i].image))
-					style = tokens[i].image;
-				else if (propWidth.canHave(tokens[i].image))
-					width = tokens[i].image;
-				else if (propColor.canHave(tokens[i].image))
-					color = tokens[i].image;
-			}
-			else if (org.eclipse.wst.css.core.internal.util.CSSUtil.isLength(tokens[i]) || tokens[i].kind == CSSRegionContexts.CSS_DECLARATION_VALUE_NUMBER) {
-				width = tokens[i].image;
-			}
-			else if (tokens[i].kind == CSSRegionContexts.CSS_DECLARATION_VALUE_HASH) {
-				color = tokens[i].image;
-			}
-			else if (tokens[i].kind == CSSRegionContexts.CSS_DECLARATION_VALUE_FUNCTION) {
-				StringBuffer buf = new StringBuffer();
-				while (i < tokens.length) {
-					if (tokens[i].kind == CSSRegionContexts.CSS_COMMENT) {
-						i++;
-						continue;
-					}
-					buf.append(tokens[i].image);
-					if (tokens[i++].kind == CSSRegionContexts.CSS_DECLARATION_VALUE_PARENTHESIS_CLOSE)
-						break;
-				}
-				i--;
-				color = buf.toString();
-			}
-		}
-
-		if (propColor == propDest)
-			return color;
-		else if (propStyle == propDest)
-			return style;
-		else if (propWidth == propDest)
-			return width;
-		else
-			return null;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/util/declaration/BorderStyleShorthandAdapter.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/util/declaration/BorderStyleShorthandAdapter.java
deleted file mode 100644
index b5fb962..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/util/declaration/BorderStyleShorthandAdapter.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.css.core.internal.util.declaration;
-
-
-
-import org.eclipse.wst.css.core.internal.contentmodel.PropCMProperty;
-import org.eclipse.wst.css.core.internal.parserz.CSSRegionContexts;
-import org.eclipse.wst.css.core.internal.parserz.CSSTextParser;
-import org.eclipse.wst.css.core.internal.parserz.CSSTextToken;
-
-
-/**
- * For 'border-style' property 'border-style' will be expanded to
- * 'border-top-style', 'border-right-style', 'border-bottom-style',
- * 'border-left-style',
- */
-public class BorderStyleShorthandAdapter implements IShorthandAdapter {
-
-	/**
-	 * 
-	 */
-	public BorderStyleShorthandAdapter() {
-		super();
-	}
-
-	/**
-	 * 
-	 */
-	public boolean expand(String source, CSSPropertyContext dest) {
-		CSSTextParser parser = new CSSTextParser(CSSTextParser.MODE_DECLARATION_VALUE, source);
-		CSSTextToken[] tokens = parser.getTokens();
-		if (tokens.length <= 0) {
-			return false;
-		}
-		String[] idents = new String[4];
-		int j = 0;
-		for (int i = 0; i < tokens.length; i++) {
-			if (tokens[i].kind == CSSRegionContexts.CSS_DECLARATION_VALUE_IDENT)
-				idents[j++] = tokens[i].image;
-			if (j == 4)
-				break;
-		}
-
-		String[] dests = new String[4];
-		if (j == 0)
-			return true;
-		else if (j == 1) {
-			dests[0] = dests[1] = dests[2] = dests[3] = idents[0];
-		}
-		else if (j == 2) {
-			dests[0] = dests[2] = idents[0];
-			dests[1] = dests[3] = idents[1];
-		}
-		else if (j == 3) {
-			dests[0] = idents[0];
-			dests[1] = dests[3] = idents[1];
-			dests[2] = idents[2];
-		}
-		else {
-			for (int k = 0; k < 4; k++)
-				dests[k] = idents[k];
-		}
-		dest.set(PropCMProperty.P_BORDER_TOP_STYLE, dests[0]);
-		dest.set(PropCMProperty.P_BORDER_RIGHT_STYLE, dests[1]);
-		dest.set(PropCMProperty.P_BORDER_BOTTOM_STYLE, dests[2]);
-		dest.set(PropCMProperty.P_BORDER_LEFT_STYLE, dests[3]);
-
-		return true;
-	}
-
-	/**
-	 * 
-	 */
-	public String extract(String source, PropCMProperty propDest) {
-		CSSTextParser parser = new CSSTextParser(CSSTextParser.MODE_DECLARATION_VALUE, source);
-		CSSTextToken[] tokens = parser.getTokens();
-		if (tokens.length <= 0) {
-			return null;
-		}
-		String[] idents = new String[4];
-		int j = 0;
-		for (int i = 0; i < tokens.length; i++) {
-			if (tokens[i].kind == CSSRegionContexts.CSS_DECLARATION_VALUE_IDENT)
-				idents[j++] = tokens[i].image;
-			if (j == 4)
-				break;
-		}
-
-		if (j == 0)
-			return null;
-		else if (j == 1)
-			return idents[0];
-		else if (j == 2) {
-			if (propDest.getName() == PropCMProperty.P_BORDER_TOP_STYLE || propDest.getName() == PropCMProperty.P_BORDER_BOTTOM_STYLE)
-				return idents[0];
-			else
-				return idents[1];
-		}
-		else if (j == 3) {
-			if (propDest.getName() == PropCMProperty.P_BORDER_TOP_STYLE)
-				return idents[0];
-			else if (propDest.getName() == PropCMProperty.P_BORDER_BOTTOM_STYLE)
-				return idents[2];
-			else
-				return idents[1];
-		}
-		else {
-			if (propDest.getName() == PropCMProperty.P_BORDER_TOP_STYLE)
-				return idents[0];
-			else if (propDest.getName() == PropCMProperty.P_BORDER_RIGHT_STYLE)
-				return idents[1];
-			else if (propDest.getName() == PropCMProperty.P_BORDER_BOTTOM_STYLE)
-				return idents[2];
-			else if (propDest.getName() == PropCMProperty.P_BORDER_LEFT_STYLE)
-				return idents[3];
-			else
-				return null;
-		}
-
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/util/declaration/BorderTopShorthandAdapter.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/util/declaration/BorderTopShorthandAdapter.java
deleted file mode 100644
index a728399..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/util/declaration/BorderTopShorthandAdapter.java
+++ /dev/null
@@ -1,140 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this 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.core.internal.util.declaration;
-
-
-
-import org.eclipse.wst.css.core.internal.contentmodel.PropCMProperty;
-import org.eclipse.wst.css.core.internal.parserz.CSSRegionContexts;
-import org.eclipse.wst.css.core.internal.parserz.CSSTextParser;
-import org.eclipse.wst.css.core.internal.parserz.CSSTextToken;
-
-
-/**
- * For 'border-top' property 'border-top' will be expanded to
- * 'border-top-color', 'border-top-style', 'border-top-width',
- */
-public class BorderTopShorthandAdapter implements IShorthandAdapter {
-
-	/**
-	 * 
-	 */
-	public BorderTopShorthandAdapter() {
-		super();
-	}
-
-	/**
-	 * 
-	 */
-	public boolean expand(String source, CSSPropertyContext dest) {
-		CSSTextParser parser = new CSSTextParser(CSSTextParser.MODE_DECLARATION_VALUE, source);
-		CSSTextToken[] tokens = parser.getTokens();
-		if (tokens.length <= 0) {
-			return false;
-		}
-		String color = "", style = "", width = "";//$NON-NLS-3$//$NON-NLS-2$//$NON-NLS-1$
-		PropCMProperty propColor = PropCMProperty.getInstanceOf(PropCMProperty.P_BORDER_TOP_COLOR);
-		PropCMProperty propStyle = PropCMProperty.getInstanceOf(PropCMProperty.P_BORDER_TOP_STYLE);
-		PropCMProperty propWidth = PropCMProperty.getInstanceOf(PropCMProperty.P_BORDER_TOP_WIDTH);
-
-		for (int i = 0; i < tokens.length; i++) {
-			if (tokens[i].kind == CSSRegionContexts.CSS_DECLARATION_VALUE_IDENT) {
-				if (propStyle.canHave(tokens[i].image))
-					style = tokens[i].image;
-				else if (propWidth.canHave(tokens[i].image))
-					width = tokens[i].image;
-				else if (propColor.canHave(tokens[i].image))
-					color = tokens[i].image;
-			}
-			else if (org.eclipse.wst.css.core.internal.util.CSSUtil.isLength(tokens[i]) || tokens[i].kind == CSSRegionContexts.CSS_DECLARATION_VALUE_NUMBER) {
-				width = tokens[i].image;
-			}
-			else if (tokens[i].kind == CSSRegionContexts.CSS_DECLARATION_VALUE_HASH) {
-				color = tokens[i].image;
-			}
-			else if (tokens[i].kind == CSSRegionContexts.CSS_DECLARATION_VALUE_FUNCTION) {
-				StringBuffer buf = new StringBuffer();
-				while (i < tokens.length) {
-					if (tokens[i].kind == CSSRegionContexts.CSS_COMMENT) {
-						i++;
-						continue;
-					}
-					buf.append(tokens[i].image);
-					if (tokens[i++].kind == CSSRegionContexts.CSS_DECLARATION_VALUE_PARENTHESIS_CLOSE)
-						break;
-				}
-				i--;
-				color = buf.toString();
-			}
-		}
-
-		dest.set(propColor.getName(), color);
-		dest.set(propStyle.getName(), style);
-		dest.set(propWidth.getName(), width);
-
-		return true;
-	}
-
-	/**
-	 * 
-	 */
-	public String extract(String source, PropCMProperty propDest) {
-		CSSTextParser parser = new CSSTextParser(CSSTextParser.MODE_DECLARATION_VALUE, source);
-		CSSTextToken[] tokens = parser.getTokens();
-		if (tokens.length <= 0) {
-			return null;
-		}
-		String color = null, style = null, width = null;
-		PropCMProperty propColor = PropCMProperty.getInstanceOf(PropCMProperty.P_BORDER_TOP_COLOR);
-		PropCMProperty propStyle = PropCMProperty.getInstanceOf(PropCMProperty.P_BORDER_TOP_STYLE);
-		PropCMProperty propWidth = PropCMProperty.getInstanceOf(PropCMProperty.P_BORDER_TOP_WIDTH);
-
-		for (int i = 0; i < tokens.length; i++) {
-			if (tokens[i].kind == CSSRegionContexts.CSS_DECLARATION_VALUE_IDENT) {
-				if (propStyle.canHave(tokens[i].image))
-					style = tokens[i].image;
-				else if (propWidth.canHave(tokens[i].image))
-					width = tokens[i].image;
-				else if (propColor.canHave(tokens[i].image))
-					color = tokens[i].image;
-			}
-			else if (org.eclipse.wst.css.core.internal.util.CSSUtil.isLength(tokens[i]) || tokens[i].kind == CSSRegionContexts.CSS_DECLARATION_VALUE_NUMBER) {
-				width = tokens[i].image;
-			}
-			else if (tokens[i].kind == CSSRegionContexts.CSS_DECLARATION_VALUE_HASH) {
-				color = tokens[i].image;
-			}
-			else if (tokens[i].kind == CSSRegionContexts.CSS_DECLARATION_VALUE_FUNCTION) {
-				StringBuffer buf = new StringBuffer();
-				while (i < tokens.length) {
-					if (tokens[i].kind == CSSRegionContexts.CSS_COMMENT) {
-						i++;
-						continue;
-					}
-					buf.append(tokens[i].image);
-					if (tokens[i++].kind == CSSRegionContexts.CSS_DECLARATION_VALUE_PARENTHESIS_CLOSE)
-						break;
-				}
-				i--;
-				color = buf.toString();
-			}
-		}
-
-		if (propColor == propDest)
-			return color;
-		else if (propStyle == propDest)
-			return style;
-		else if (propWidth == propDest)
-			return width;
-		else
-			return null;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/util/declaration/BorderWidthShorthandAdapter.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/util/declaration/BorderWidthShorthandAdapter.java
deleted file mode 100644
index cda09e6..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/util/declaration/BorderWidthShorthandAdapter.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.css.core.internal.util.declaration;
-
-
-
-import org.eclipse.wst.css.core.internal.contentmodel.PropCMProperty;
-import org.eclipse.wst.css.core.internal.parserz.CSSRegionContexts;
-import org.eclipse.wst.css.core.internal.parserz.CSSTextParser;
-import org.eclipse.wst.css.core.internal.parserz.CSSTextToken;
-
-
-/**
- * For 'border-width' property 'border-width' will be expanded to
- * 'border-top-width', 'border-right-width', 'border-bottom-width',
- * 'border-left-width',
- */
-public class BorderWidthShorthandAdapter implements IShorthandAdapter {
-
-	/**
-	 * 
-	 */
-	public BorderWidthShorthandAdapter() {
-		super();
-	}
-
-	/**
-	 * 
-	 */
-	public boolean expand(String source, CSSPropertyContext dest) {
-		CSSTextParser parser = new CSSTextParser(CSSTextParser.MODE_DECLARATION_VALUE, source);
-		CSSTextToken[] tokens = parser.getTokens();
-		if (tokens.length <= 0) {
-			return false;
-		}
-		String[] idents = new String[4];
-		int j = 0;
-		for (int i = 0; i < tokens.length; i++) {
-			if (org.eclipse.wst.css.core.internal.util.CSSUtil.isLength(tokens[i]) || tokens[i].kind == CSSRegionContexts.CSS_DECLARATION_VALUE_NUMBER || tokens[i].kind == CSSRegionContexts.CSS_DECLARATION_VALUE_IDENT)
-				idents[j++] = tokens[i].image;
-			if (j == 4)
-				break;
-		}
-
-		String[] dests = new String[4];
-		if (j == 0)
-			return true;
-		else if (j == 1) {
-			dests[0] = dests[1] = dests[2] = dests[3] = idents[0];
-		}
-		else if (j == 2) {
-			dests[0] = dests[2] = idents[0];
-			dests[1] = dests[3] = idents[1];
-		}
-		else if (j == 3) {
-			dests[0] = idents[0];
-			dests[1] = dests[3] = idents[1];
-			dests[2] = idents[2];
-		}
-		else {
-			for (int k = 0; k < 4; k++)
-				dests[k] = idents[k];
-		}
-		dest.set(PropCMProperty.P_BORDER_TOP_WIDTH, dests[0]);
-		dest.set(PropCMProperty.P_BORDER_RIGHT_WIDTH, dests[1]);
-		dest.set(PropCMProperty.P_BORDER_BOTTOM_WIDTH, dests[2]);
-		dest.set(PropCMProperty.P_BORDER_LEFT_WIDTH, dests[3]);
-
-		return true;
-	}
-
-	/**
-	 * 
-	 */
-	public String extract(String source, PropCMProperty propDest) {
-		CSSTextParser parser = new CSSTextParser(CSSTextParser.MODE_DECLARATION_VALUE, source);
-		CSSTextToken[] tokens = parser.getTokens();
-		if (tokens.length <= 0) {
-			return null;
-		}
-		String[] idents = new String[4];
-		int j = 0;
-		for (int i = 0; i < tokens.length; i++) {
-			if (org.eclipse.wst.css.core.internal.util.CSSUtil.isLength(tokens[i]) || tokens[i].kind == CSSRegionContexts.CSS_DECLARATION_VALUE_NUMBER || tokens[i].kind == CSSRegionContexts.CSS_DECLARATION_VALUE_IDENT)
-				idents[j++] = tokens[i].image;
-			if (j == 4)
-				break;
-		}
-
-		if (j == 0)
-			return null;
-		else if (j == 1)
-			return idents[0];
-		else if (j == 2) {
-			if (propDest.getName() == PropCMProperty.P_BORDER_TOP_WIDTH || propDest.getName() == PropCMProperty.P_BORDER_BOTTOM_WIDTH)
-				return idents[0];
-			else
-				return idents[1];
-		}
-		else if (j == 3) {
-			if (propDest.getName() == PropCMProperty.P_BORDER_TOP_WIDTH)
-				return idents[0];
-			else if (propDest.getName() == PropCMProperty.P_BORDER_BOTTOM_WIDTH)
-				return idents[2];
-			else
-				return idents[1];
-		}
-		else {
-			if (propDest.getName() == PropCMProperty.P_BORDER_TOP_WIDTH)
-				return idents[0];
-			else if (propDest.getName() == PropCMProperty.P_BORDER_RIGHT_WIDTH)
-				return idents[1];
-			else if (propDest.getName() == PropCMProperty.P_BORDER_BOTTOM_WIDTH)
-				return idents[2];
-			else if (propDest.getName() == PropCMProperty.P_BORDER_LEFT_WIDTH)
-				return idents[3];
-			else
-				return null;
-		}
-
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/util/declaration/CSSPropertyContext.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/util/declaration/CSSPropertyContext.java
deleted file mode 100644
index 1b40706..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/util/declaration/CSSPropertyContext.java
+++ /dev/null
@@ -1,2997 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this 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.core.internal.util.declaration;
-
-
-
-import java.util.Collection;
-import java.util.Enumeration;
-import java.util.HashSet;
-import java.util.Hashtable;
-import java.util.Iterator;
-
-import org.eclipse.wst.css.core.internal.contentmodel.PropCMProperty;
-import org.eclipse.wst.css.core.internal.contentmodel.PropCMSubProperty;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSStyleDeclaration;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSValue;
-import org.w3c.dom.css.CSSValue;
-
-
-/**
- * 
- */
-public class CSSPropertyContext implements ICSS2Properties {
-
-	protected Hashtable fProperties = new Hashtable();
-	HashSet fModified = null;
-	private static java.util.Hashtable subPropertyAdapters;
-	private static java.util.Hashtable shorthandAdapters;
-
-	/**
-	 * 
-	 */
-	public CSSPropertyContext() {
-		super();
-		initShorthandAdapters();
-		initSubPropertyAdapters();
-	}
-
-	/**
-	 * 
-	 */
-	public CSSPropertyContext(ICSSStyleDeclaration decl) {
-		super();
-		initShorthandAdapters();
-		initSubPropertyAdapters();
-		initialize(decl);
-	}
-
-	/**
-	 * This function exports all property/value pairs to 'decl' declaration
-	 */
-	public void applyFull(ICSSStyleDeclaration decl) {
-		if (decl == null)
-			return;
-		Enumeration keys = fProperties.keys();
-		while (keys.hasMoreElements()) {
-			Object key = keys.nextElement();
-			Object val = fProperties.get(key);
-			String value = (val instanceof ICSSValue) ? ((ICSSValue) val).getCSSValueText() : val.toString();
-
-			if (value == null || value.length() <= 0)
-				decl.removeProperty(key.toString());
-			else
-				decl.setProperty(key.toString(), value.trim(), (val instanceof ValueData && ((ValueData) val).important) ? "!important" : "");//$NON-NLS-2$//$NON-NLS-1$
-		}
-	}
-
-	/**
-	 * This function exports modified property/value pairs to 'decl'
-	 * declaration
-	 */
-	public void applyModified(ICSSStyleDeclaration decl) {
-		if (decl == null || fModified == null)
-			return;
-		Iterator it = fModified.iterator();
-		while (it.hasNext()) {
-			Object key = it.next();
-			Object val = fProperties.get(key);
-			String value = (val instanceof ICSSValue) ? ((ICSSValue) val).getCSSValueText() : ((val != null) ? val.toString() : null);
-
-			if (value == null || value.length() <= 0)
-				decl.removeProperty(key.toString());
-			else
-				decl.setProperty(key.toString(), value.trim(), (val instanceof ValueData && ((ValueData) val).important) ? "!important" : "");//$NON-NLS-2$//$NON-NLS-1$
-		}
-	}
-
-	/**
-	 * create clone of this context
-	 */
-	public Object clone() {
-		CSSPropertyContext clone = new CSSPropertyContext();
-		if (this.fModified != null)
-			clone.fModified = (HashSet) this.fModified.clone();
-		else
-			clone.fModified = null;
-		clone.fProperties = (Hashtable) this.fProperties.clone();
-		return clone;
-	}
-
-	/**
-	 * This function expands a short-hand property's value to each leaf
-	 * property's value and set them to 'foreign'
-	 * 
-	 * For example, given [prop=border-top, value="solid 1px yellow"] will be
-	 * expanded to [border-top-color=yellow, border-top-style=solid,
-	 * border-top-width=1px] and they are stored to 'foreign' context.
-	 * 
-	 * Note that recursively shorthanded property like 'border' will be
-	 * expanded to all descendant leaf properties like
-	 * 'border-[top/right/bottom/left]-[color/style/width]'
-	 * 
-	 * @param prop
-	 *            org.eclipse.wst.css.core.contentmodel.PropCMProperty
-	 * @param value
-	 *            java.lang.String
-	 * @param foreign
-	 *            org.eclipse.wst.css.core.util.declaration.CSSPropertyContext
-	 */
-	protected static void expandToLeaf(PropCMProperty prop, String value, CSSPropertyContext foreign) {
-		// expand shorthand property
-		if (value != null && value.trim().length() > 0) {
-			IShorthandAdapter adapter = (IShorthandAdapter) shorthandAdapters.get(prop);
-			if (adapter != null) {
-				adapter.expand(value, foreign);
-				foreign.set(prop.getName(), "");//$NON-NLS-1$
-				for (int i = 0; i < prop.getNumChild(); i++) {
-					Object obj = prop.getChildAt(i);
-					if (obj instanceof PropCMProperty && !(obj instanceof PropCMSubProperty)) {
-						PropCMProperty expandedProp = (PropCMProperty) obj;
-						value = foreign.get(expandedProp.getName());
-						expandToLeaf(expandedProp, value, foreign);
-					}
-				}
-			}
-			else if (!value.equals(foreign.get(prop.getName()))) {
-				foreign.set(prop.getName(), value);
-			}
-		}
-	}
-
-	/**
-	 * This function returns value of 'prop'. Querying value mechanism checks
-	 * short-hand properties.
-	 * 
-	 * For example, given "background=fixed white" is set in this insatnce and
-	 * param "prop=background-color", the return value will be "white".
-	 * 
-	 */
-	public java.lang.String get(org.eclipse.wst.css.core.internal.contentmodel.PropCMProperty prop) {
-		if (prop instanceof PropCMSubProperty) {
-			ISubPropertyAdapter adapter = (ISubPropertyAdapter) subPropertyAdapters.get(prop.getName());
-			if (adapter != null)
-				return adapter.get(this);
-		}
-		String str = get(prop.getName());
-		if ((str == null || str.length() == 0) && prop.getShorthandContainerCount() > 0) {
-			// get expanded property
-			for (int i = 0; i < prop.getShorthandContainerCount(); i++) {
-				PropCMProperty propParent = prop.shorthandContainerAt(i);
-				String strParent = get(propParent);
-				if (strParent != null && strParent.trim().length() > 0) {
-					IShorthandAdapter adapter = (IShorthandAdapter) shorthandAdapters.get(propParent);
-					if (adapter != null) {
-						String extractedValue = adapter.extract(strParent, prop);
-						return (extractedValue != null) ? extractedValue : "";//$NON-NLS-1$
-					}
-				}
-			}
-		}
-		return str;
-	}
-
-	/**
-	 * This function returns value of 'prop'. Querying value mechanism does
-	 * not care shorthand properties.
-	 */
-	protected String get(String propName) {
-		String str = null;
-		Object obj = fProperties.get(propName);
-		if (obj != null) {
-			if (obj instanceof ICSSValue)
-				str = ((ICSSValue) obj).getCSSValueText();
-			else
-				str = obj.toString();
-		}
-		return (str != null) ? str : "";//$NON-NLS-1$
-	}
-
-	/**
-	 * See the azimuth property definition in CSS2.
-	 * 
-	 * @exception org.w3c.dom.DOMException
-	 *                SYNTAX_ERR: Raised if the new value has a syntax error
-	 *                and is unparsable. <br>
-	 *                NO_MODIFICATION_ALLOWED_ERR: Raised if this property is
-	 *                readonly.
-	 */
-	public String getAzimuth() {
-		return get(PropCMProperty.getInstanceOf(PropCMProperty.P_AZIMUTH));
-	}
-
-	/**
-	 * See the background property definition in CSS2.
-	 * 
-	 * @exception org.w3c.dom.DOMException
-	 *                SYNTAX_ERR: Raised if the new value has a syntax error
-	 *                and is unparsable. <br>
-	 *                NO_MODIFICATION_ALLOWED_ERR: Raised if this property is
-	 *                readonly.
-	 */
-	public String getBackground() {
-		return get(PropCMProperty.getInstanceOf(PropCMProperty.P_BG));
-	}
-
-	/**
-	 * See the background-attachment property definition in CSS2.
-	 * 
-	 * @exception org.w3c.dom.DOMException
-	 *                SYNTAX_ERR: Raised if the new value has a syntax error
-	 *                and is unparsable. <br>
-	 *                NO_MODIFICATION_ALLOWED_ERR: Raised if this property is
-	 *                readonly.
-	 */
-	public String getBackgroundAttachment() {
-		return get(PropCMProperty.getInstanceOf(PropCMProperty.P_BG_ATTACHMENT));
-	}
-
-	/**
-	 * See the background-color property definition in CSS2.
-	 * 
-	 * @exceptionorg.w3c.dom.DOMException
-	 *                SYNTAX_ERR: Raised if the new value has a syntax error
-	 *                and is unparsable. <br>
-	 *                NO_MODIFICATION_ALLOWED_ERR: Raised if this property is
-	 *                readonly.
-	 */
-	public String getBackgroundColor() {
-		return get(PropCMProperty.getInstanceOf(PropCMProperty.P_BG_COLOR));
-	}
-
-	/**
-	 * See the background-image property definition in CSS2.
-	 * 
-	 * @exceptionorg.w3c.dom.DOMException
-	 *                SYNTAX_ERR: Raised if the new value has a syntax error
-	 *                and is unparsable. <br>
-	 *                NO_MODIFICATION_ALLOWED_ERR: Raised if this property is
-	 *                readonly.
-	 */
-	public String getBackgroundImage() {
-		return get(PropCMProperty.getInstanceOf(PropCMProperty.P_BG_IMAGE));
-	}
-
-	/**
-	 * See the background-position property definition in CSS2.
-	 * 
-	 * @exceptionorg.w3c.dom.DOMException
-	 *                SYNTAX_ERR: Raised if the new value has a syntax error
-	 *                and is unparsable. <br>
-	 *                NO_MODIFICATION_ALLOWED_ERR: Raised if this property is
-	 *                readonly.
-	 */
-	public String getBackgroundPosition() {
-		return get(PropCMProperty.getInstanceOf(PropCMProperty.P_BG_POSITION));
-	}
-
-	/**
-	 * 
-	 */
-	public java.lang.String getBackgroundPositionX() {
-		return get(PropCMSubProperty.getInstanceOf(PropCMSubProperty.PSUB_BG_POSITION_X));
-		/*
-		 * String str = null; Object obj =
-		 * fProperties.get(PropCMProperty.P_BG_POSITION); if (obj != null) {
-		 * PropCMProperty propX =
-		 * PropCMSubProperty.getInstanceOf(PropCMSubProperty.PSUB_BG_POSITION_X);
-		 * PropCMProperty propY =
-		 * PropCMSubProperty.getInstanceOf(PropCMSubProperty.PSUB_BG_POSITION_Y);
-		 * if (obj instanceof ICSSValueList) { ICSSValueList list =
-		 * (ICSSValueList) obj; ICSSValue value = (ICSSValue) list.item(0); if
-		 * (value.getCssValueType() == CSSValue.CSS_PRIMITIVE_VALUE) {
-		 * ICSSPrimitiveValue prim = (ICSSPrimitiveValue) value; if
-		 * (prim.getPrimitiveType() == CSSPrimitiveValue.CSS_IDENT) { // check
-		 * not top or bottom if (!propX.canHave(prim.getStringValue()) &&
-		 * propY.canHave(prim.getStringValue())) { // case order is vertical ->
-		 * horizontal value = (ICSSValue) list.item(1); } } } str =
-		 * value.getCSSValueText(); } else if (obj instanceof ICSSValue) { str =
-		 * ((ICSSValue)obj).getCSSValueText(); } else str = obj.toString(); }
-		 * return (str != null) ? str : "";
-		 */
-	}
-
-	/**
-	 * 
-	 */
-	public java.lang.String getBackgroundPositionY() {
-		return get(PropCMSubProperty.getInstanceOf(PropCMSubProperty.PSUB_BG_POSITION_Y));
-		/*
-		 * String str = null; Object obj =
-		 * fProperties.get(PropCMProperty.P_BG_POSITION); if (obj != null) {
-		 * PropCMProperty propX =
-		 * PropCMSubProperty.getInstanceOf(PropCMSubProperty.PSUB_BG_POSITION_X);
-		 * PropCMProperty propY =
-		 * PropCMSubProperty.getInstanceOf(PropCMSubProperty.PSUB_BG_POSITION_Y);
-		 * if (obj instanceof ICSSValueList) { ICSSValueList list =
-		 * (ICSSValueList) obj; int index = 1; ICSSValue value = (ICSSValue)
-		 * list.item(0); if (value.getCssValueType() ==
-		 * CSSValue.CSS_PRIMITIVE_VALUE) { ICSSPrimitiveValue prim =
-		 * (ICSSPrimitiveValue) value; if (prim.getPrimitiveType() ==
-		 * CSSPrimitiveValue.CSS_IDENT) { // check not top or bottom if
-		 * (!propX.canHave(prim.getStringValue()) &&
-		 * propY.canHave(prim.getStringValue())) { // case order is vertical ->
-		 * horizontal index = 0; } } } str =
-		 * ((ICSSValue)list.item(index)).getCSSValueText(); } else if (obj
-		 * instanceof ICSSValue) { // do nothing --- value is null } else str =
-		 * obj.toString(); } return (str != null) ? str : "";
-		 */
-	}
-
-	/**
-	 * See the background-repeat property definition in CSS2.
-	 * 
-	 * @exception org.w3c.dom.DOMException
-	 *                SYNTAX_ERR: Raised if the new value has a syntax error
-	 *                and is unparsable. <br>
-	 *                NO_MODIFICATION_ALLOWED_ERR: Raised if this property is
-	 *                readonly.
-	 */
-	public String getBackgroundRepeat() {
-		return get(PropCMProperty.getInstanceOf(PropCMProperty.P_BG_REPEAT));
-	}
-
-	/**
-	 * See the border property definition in CSS2.
-	 * 
-	 * @exceptionorg.w3c.dom.DOMException
-	 *                SYNTAX_ERR: Raised if the new value has a syntax error
-	 *                and is unparsable. <br>
-	 *                NO_MODIFICATION_ALLOWED_ERR: Raised if this property is
-	 *                readonly.
-	 */
-	public String getBorder() {
-		return get(PropCMProperty.getInstanceOf(PropCMProperty.P_BORDER));
-	}
-
-	/**
-	 * See the border-bottom property definition in CSS2.
-	 * 
-	 * @exceptionorg.w3c.dom.DOMException
-	 *                SYNTAX_ERR: Raised if the new value has a syntax error
-	 *                and is unparsable. <br>
-	 *                NO_MODIFICATION_ALLOWED_ERR: Raised if this property is
-	 *                readonly.
-	 */
-	public String getBorderBottom() {
-		return get(PropCMProperty.getInstanceOf(PropCMProperty.P_BORDER_BOTTOM));
-	}
-
-	/**
-	 * See the border-bottom-color property definition in CSS2.
-	 * 
-	 * @exceptionorg.w3c.dom.DOMException
-	 *                SYNTAX_ERR: Raised if the new value has a syntax error
-	 *                and is unparsable. <br>
-	 *                NO_MODIFICATION_ALLOWED_ERR: Raised if this property is
-	 *                readonly.
-	 */
-	public String getBorderBottomColor() {
-		return get(PropCMProperty.getInstanceOf(PropCMProperty.P_BORDER_BOTTOM_COLOR));
-	}
-
-	/**
-	 * See the border-bottom-style property definition in CSS2.
-	 * 
-	 * @exceptionorg.w3c.dom.DOMException
-	 *                SYNTAX_ERR: Raised if the new value has a syntax error
-	 *                and is unparsable. <br>
-	 *                NO_MODIFICATION_ALLOWED_ERR: Raised if this property is
-	 *                readonly.
-	 */
-	public String getBorderBottomStyle() {
-		return get(PropCMProperty.getInstanceOf(PropCMProperty.P_BORDER_BOTTOM_STYLE));
-	}
-
-	/**
-	 * See the border-bottom-width property definition in CSS2.
-	 * 
-	 * @exceptionorg.w3c.dom.DOMException
-	 *                SYNTAX_ERR: Raised if the new value has a syntax error
-	 *                and is unparsable. <br>
-	 *                NO_MODIFICATION_ALLOWED_ERR: Raised if this property is
-	 *                readonly.
-	 */
-	public String getBorderBottomWidth() {
-		return get(PropCMProperty.getInstanceOf(PropCMProperty.P_BORDER_BOTTOM_WIDTH));
-	}
-
-	/**
-	 * See the border-collapse property definition in CSS2.
-	 * 
-	 * @exceptionorg.w3c.dom.DOMException
-	 *                SYNTAX_ERR: Raised if the new value has a syntax error
-	 *                and is unparsable. <br>
-	 *                NO_MODIFICATION_ALLOWED_ERR: Raised if this property is
-	 *                readonly.
-	 */
-	public String getBorderCollapse() {
-		return get(PropCMProperty.getInstanceOf(PropCMProperty.P_BORDER_COLLAPSE));
-	}
-
-	/**
-	 * See the border-color property definition in CSS2.
-	 * 
-	 * @exceptionorg.w3c.dom.DOMException
-	 *                SYNTAX_ERR: Raised if the new value has a syntax error
-	 *                and is unparsable. <br>
-	 *                NO_MODIFICATION_ALLOWED_ERR: Raised if this property is
-	 *                readonly.
-	 */
-	public String getBorderColor() {
-		return get(PropCMProperty.getInstanceOf(PropCMProperty.P_BORDER_COLOR));
-	}
-
-	/**
-	 * See the border-left property definition in CSS2.
-	 * 
-	 * @exceptionorg.w3c.dom.DOMException
-	 *                SYNTAX_ERR: Raised if the new value has a syntax error
-	 *                and is unparsable. <br>
-	 *                NO_MODIFICATION_ALLOWED_ERR: Raised if this property is
-	 *                readonly.
-	 */
-	public String getBorderLeft() {
-		return get(PropCMProperty.getInstanceOf(PropCMProperty.P_BORDER_LEFT));
-	}
-
-	/**
-	 * See the border-left-color property definition in CSS2.
-	 * 
-	 * @exceptionorg.w3c.dom.DOMException
-	 *                SYNTAX_ERR: Raised if the new value has a syntax error
-	 *                and is unparsable. <br>
-	 *                NO_MODIFICATION_ALLOWED_ERR: Raised if this property is
-	 *                readonly.
-	 */
-	public String getBorderLeftColor() {
-		return get(PropCMProperty.getInstanceOf(PropCMProperty.P_BORDER_LEFT_COLOR));
-	}
-
-	/**
-	 * See the border-left-style property definition in CSS2.
-	 * 
-	 * @exceptionorg.w3c.dom.DOMException
-	 *                SYNTAX_ERR: Raised if the new value has a syntax error
-	 *                and is unparsable. <br>
-	 *                NO_MODIFICATION_ALLOWED_ERR: Raised if this property is
-	 *                readonly.
-	 */
-	public String getBorderLeftStyle() {
-		return get(PropCMProperty.getInstanceOf(PropCMProperty.P_BORDER_LEFT_STYLE));
-	}
-
-	/**
-	 * See the border-left-width property definition in CSS2.
-	 * 
-	 * @exceptionorg.w3c.dom.DOMException
-	 *                SYNTAX_ERR: Raised if the new value has a syntax error
-	 *                and is unparsable. <br>
-	 *                NO_MODIFICATION_ALLOWED_ERR: Raised if this property is
-	 *                readonly.
-	 */
-	public String getBorderLeftWidth() {
-		return get(PropCMProperty.getInstanceOf(PropCMProperty.P_BORDER_LEFT_WIDTH));
-	}
-
-	/**
-	 * See the border-right property definition in CSS2.
-	 * 
-	 * @exceptionorg.w3c.dom.DOMException
-	 *                SYNTAX_ERR: Raised if the new value has a syntax error
-	 *                and is unparsable. <br>
-	 *                NO_MODIFICATION_ALLOWED_ERR: Raised if this property is
-	 *                readonly.
-	 */
-	public String getBorderRight() {
-		return get(PropCMProperty.getInstanceOf(PropCMProperty.P_BORDER_RIGHT));
-	}
-
-	/**
-	 * See the border-right-color property definition in CSS2.
-	 * 
-	 * @exceptionorg.w3c.dom.DOMException
-	 *                SYNTAX_ERR: Raised if the new value has a syntax error
-	 *                and is unparsable. <br>
-	 *                NO_MODIFICATION_ALLOWED_ERR: Raised if this property is
-	 *                readonly.
-	 */
-	public String getBorderRightColor() {
-		return get(PropCMProperty.getInstanceOf(PropCMProperty.P_BORDER_RIGHT_COLOR));
-	}
-
-	/**
-	 * See the border-right-style property definition in CSS2.
-	 * 
-	 * @exceptionorg.w3c.dom.DOMException
-	 *                SYNTAX_ERR: Raised if the new value has a syntax error
-	 *                and is unparsable. <br>
-	 *                NO_MODIFICATION_ALLOWED_ERR: Raised if this property is
-	 *                readonly.
-	 */
-	public String getBorderRightStyle() {
-		return get(PropCMProperty.getInstanceOf(PropCMProperty.P_BORDER_RIGHT_STYLE));
-	}
-
-	/**
-	 * See the border-right-width property definition in CSS2.
-	 * 
-	 * @exceptionorg.w3c.dom.DOMException
-	 *                SYNTAX_ERR: Raised if the new value has a syntax error
-	 *                and is unparsable. <br>
-	 *                NO_MODIFICATION_ALLOWED_ERR: Raised if this property is
-	 *                readonly.
-	 */
-	public String getBorderRightWidth() {
-		return get(PropCMProperty.getInstanceOf(PropCMProperty.P_BORDER_RIGHT_WIDTH));
-	}
-
-	/**
-	 * See the border-spacing property definition in CSS2.
-	 * 
-	 * @exceptionorg.w3c.dom.DOMException
-	 *                SYNTAX_ERR: Raised if the new value has a syntax error
-	 *                and is unparsable. <br>
-	 *                NO_MODIFICATION_ALLOWED_ERR: Raised if this property is
-	 *                readonly.
-	 */
-	public String getBorderSpacing() {
-		return get(PropCMProperty.getInstanceOf(PropCMProperty.P_BORDER_SPACING));
-	}
-
-	/**
-	 * See the border-style property definition in CSS2.
-	 * 
-	 * @exceptionorg.w3c.dom.DOMException
-	 *                SYNTAX_ERR: Raised if the new value has a syntax error
-	 *                and is unparsable. <br>
-	 *                NO_MODIFICATION_ALLOWED_ERR: Raised if this property is
-	 *                readonly.
-	 */
-	public String getBorderStyle() {
-		return get(PropCMProperty.getInstanceOf(PropCMProperty.P_BORDER_STYLE));
-	}
-
-	/**
-	 * See the border-top property definition in CSS2.
-	 * 
-	 * @exceptionorg.w3c.dom.DOMException
-	 *                SYNTAX_ERR: Raised if the new value has a syntax error
-	 *                and is unparsable. <br>
-	 *                NO_MODIFICATION_ALLOWED_ERR: Raised if this property is
-	 *                readonly.
-	 */
-	public String getBorderTop() {
-		return get(PropCMProperty.getInstanceOf(PropCMProperty.P_BORDER_TOP));
-	}
-
-	/**
-	 * See the border-top-color property definition in CSS2.
-	 * 
-	 * @exceptionorg.w3c.dom.DOMException
-	 *                SYNTAX_ERR: Raised if the new value has a syntax error
-	 *                and is unparsable. <br>
-	 *                NO_MODIFICATION_ALLOWED_ERR: Raised if this property is
-	 *                readonly.
-	 */
-	public String getBorderTopColor() {
-		return get(PropCMProperty.getInstanceOf(PropCMProperty.P_BORDER_TOP_COLOR));
-	}
-
-	/**
-	 * See the border-top-style property definition in CSS2.
-	 * 
-	 * @exceptionorg.w3c.dom.DOMException
-	 *                SYNTAX_ERR: Raised if the new value has a syntax error
-	 *                and is unparsable. <br>
-	 *                NO_MODIFICATION_ALLOWED_ERR: Raised if this property is
-	 *                readonly.
-	 */
-	public String getBorderTopStyle() {
-		return get(PropCMProperty.getInstanceOf(PropCMProperty.P_BORDER_TOP_STYLE));
-	}
-
-	/**
-	 * See the border-top-width property definition in CSS2.
-	 * 
-	 * @exceptionorg.w3c.dom.DOMException
-	 *                SYNTAX_ERR: Raised if the new value has a syntax error
-	 *                and is unparsable. <br>
-	 *                NO_MODIFICATION_ALLOWED_ERR: Raised if this property is
-	 *                readonly.
-	 */
-	public String getBorderTopWidth() {
-		return get(PropCMProperty.getInstanceOf(PropCMProperty.P_BORDER_TOP_WIDTH));
-	}
-
-	/**
-	 * See the border-width property definition in CSS2.
-	 * 
-	 * @exceptionorg.w3c.dom.DOMException
-	 *                SYNTAX_ERR: Raised if the new value has a syntax error
-	 *                and is unparsable. <br>
-	 *                NO_MODIFICATION_ALLOWED_ERR: Raised if this property is
-	 *                readonly.
-	 */
-	public String getBorderWidth() {
-		return get(PropCMProperty.getInstanceOf(PropCMProperty.P_BORDER_WIDTH));
-	}
-
-	/**
-	 * See the bottom property definition in CSS2.
-	 * 
-	 * @exceptionorg.w3c.dom.DOMException
-	 *                SYNTAX_ERR: Raised if the new value has a syntax error
-	 *                and is unparsable. <br>
-	 *                NO_MODIFICATION_ALLOWED_ERR: Raised if this property is
-	 *                readonly.
-	 */
-	public String getBottom() {
-		return get(PropCMProperty.getInstanceOf(PropCMProperty.P_BOTTOM));
-	}
-
-	/**
-	 * See the caption-side property definition in CSS2.
-	 * 
-	 * @exceptionorg.w3c.dom.DOMException
-	 *                SYNTAX_ERR: Raised if the new value has a syntax error
-	 *                and is unparsable. <br>
-	 *                NO_MODIFICATION_ALLOWED_ERR: Raised if this property is
-	 *                readonly.
-	 */
-	public String getCaptionSide() {
-		return get(PropCMProperty.getInstanceOf(PropCMProperty.P_CAPTION_SIDE));
-	}
-
-	/**
-	 * See the clear property definition in CSS2.
-	 * 
-	 * @exceptionorg.w3c.dom.DOMException
-	 *                SYNTAX_ERR: Raised if the new value has a syntax error
-	 *                and is unparsable. <br>
-	 *                NO_MODIFICATION_ALLOWED_ERR: Raised if this property is
-	 *                readonly.
-	 */
-	public String getClear() {
-		return get(PropCMProperty.getInstanceOf(PropCMProperty.P_CLEAR));
-	}
-
-	/**
-	 * See the clip property definition in CSS2.
-	 * 
-	 * @exceptionorg.w3c.dom.DOMException
-	 *                SYNTAX_ERR: Raised if the new value has a syntax error
-	 *                and is unparsable. <br>
-	 *                NO_MODIFICATION_ALLOWED_ERR: Raised if this property is
-	 *                readonly.
-	 */
-	public String getClip() {
-		return get(PropCMProperty.getInstanceOf(PropCMProperty.P_CLIP));
-	}
-
-	/**
-	 * 
-	 */
-	public String getClipBottom() {
-		return get(PropCMSubProperty.getInstanceOf(PropCMSubProperty.PSUB_CLIP_BOTTOM));
-	}
-
-	/**
-	 * 
-	 */
-	public String getClipLeft() {
-		return get(PropCMSubProperty.getInstanceOf(PropCMSubProperty.PSUB_CLIP_LEFT));
-	}
-
-	/**
-	 * 
-	 */
-	public String getClipRight() {
-		return get(PropCMSubProperty.getInstanceOf(PropCMSubProperty.PSUB_CLIP_RIGHT));
-	}
-
-	/**
-	 * 
-	 */
-	public String getClipTop() {
-		return get(PropCMSubProperty.getInstanceOf(PropCMSubProperty.PSUB_CLIP_TOP));
-	}
-
-	/**
-	 * See the color property definition in CSS2.
-	 * 
-	 * @exceptionorg.w3c.dom.DOMException
-	 *                SYNTAX_ERR: Raised if the new value has a syntax error
-	 *                and is unparsable. <br>
-	 *                NO_MODIFICATION_ALLOWED_ERR: Raised if this property is
-	 *                readonly.
-	 */
-	public String getColor() {
-		return get(PropCMProperty.getInstanceOf(PropCMProperty.P_COLOR));
-	}
-
-	/**
-	 * See the content property definition in CSS2.
-	 * 
-	 * @exceptionorg.w3c.dom.DOMException
-	 *                SYNTAX_ERR: Raised if the new value has a syntax error
-	 *                and is unparsable. <br>
-	 *                NO_MODIFICATION_ALLOWED_ERR: Raised if this property is
-	 *                readonly.
-	 */
-	public String getContent() {
-		return get(PropCMProperty.getInstanceOf(PropCMProperty.P_CONTENT));
-	}
-
-	/**
-	 * See the counter-increment property definition in CSS2.
-	 * 
-	 * @exceptionorg.w3c.dom.DOMException
-	 *                SYNTAX_ERR: Raised if the new value has a syntax error
-	 *                and is unparsable. <br>
-	 *                NO_MODIFICATION_ALLOWED_ERR: Raised if this property is
-	 *                readonly.
-	 */
-	public String getCounterIncrement() {
-		return get(PropCMProperty.getInstanceOf(PropCMProperty.P_COUNTER_INCREMENT));
-	}
-
-	/**
-	 * See the counter-reset property definition in CSS2.
-	 * 
-	 * @exceptionorg.w3c.dom.DOMException
-	 *                SYNTAX_ERR: Raised if the new value has a syntax error
-	 *                and is unparsable. <br>
-	 *                NO_MODIFICATION_ALLOWED_ERR: Raised if this property is
-	 *                readonly.
-	 */
-	public String getCounterReset() {
-		return get(PropCMProperty.getInstanceOf(PropCMProperty.P_COUNTER_RESET));
-	}
-
-	/**
-	 * See the float property definition in CSS2.
-	 * 
-	 * @exceptionorg.w3c.dom.DOMException
-	 *                SYNTAX_ERR: Raised if the new value has a syntax error
-	 *                and is unparsable. <br>
-	 *                NO_MODIFICATION_ALLOWED_ERR: Raised if this property is
-	 *                readonly.
-	 */
-	public String getCssFloat() {
-		return get(PropCMProperty.getInstanceOf(PropCMProperty.P_FLOAT));
-	}
-
-	/**
-	 * See the cue property definition in CSS2.
-	 * 
-	 * @exceptionorg.w3c.dom.DOMException
-	 *                SYNTAX_ERR: Raised if the new value has a syntax error
-	 *                and is unparsable. <br>
-	 *                NO_MODIFICATION_ALLOWED_ERR: Raised if this property is
-	 *                readonly.
-	 */
-	public String getCue() {
-		return get(PropCMProperty.getInstanceOf(PropCMProperty.P_CUE));
-	}
-
-	/**
-	 * See the cue-after property definition in CSS2.
-	 * 
-	 * @exceptionorg.w3c.dom.DOMException
-	 *                SYNTAX_ERR: Raised if the new value has a syntax error
-	 *                and is unparsable. <br>
-	 *                NO_MODIFICATION_ALLOWED_ERR: Raised if this property is
-	 *                readonly.
-	 */
-	public String getCueAfter() {
-		return get(PropCMProperty.getInstanceOf(PropCMProperty.P_CUE_AFTER));
-	}
-
-	/**
-	 * See the cue-before property definition in CSS2.
-	 * 
-	 * @exceptionorg.w3c.dom.DOMException
-	 *                SYNTAX_ERR: Raised if the new value has a syntax error
-	 *                and is unparsable. <br>
-	 *                NO_MODIFICATION_ALLOWED_ERR: Raised if this property is
-	 *                readonly.
-	 */
-	public String getCueBefore() {
-		return get(PropCMProperty.getInstanceOf(PropCMProperty.P_CUE_BEFORE));
-	}
-
-	/**
-	 * See the cursor property definition in CSS2.
-	 * 
-	 * @exceptionorg.w3c.dom.DOMException
-	 *                SYNTAX_ERR: Raised if the new value has a syntax error
-	 *                and is unparsable. <br>
-	 *                NO_MODIFICATION_ALLOWED_ERR: Raised if this property is
-	 *                readonly.
-	 */
-	public String getCursor() {
-		return get(PropCMProperty.getInstanceOf(PropCMProperty.P_CURSOR));
-	}
-
-	/**
-	 * See the direction property definition in CSS2.
-	 * 
-	 * @exceptionorg.w3c.dom.DOMException
-	 *                SYNTAX_ERR: Raised if the new value has a syntax error
-	 *                and is unparsable. <br>
-	 *                NO_MODIFICATION_ALLOWED_ERR: Raised if this property is
-	 *                readonly.
-	 */
-	public String getDirection() {
-		return get(PropCMProperty.getInstanceOf(PropCMProperty.P_DIRECTION));
-	}
-
-	/**
-	 * See the display property definition in CSS2.
-	 * 
-	 * @exceptionorg.w3c.dom.DOMException
-	 *                SYNTAX_ERR: Raised if the new value has a syntax error
-	 *                and is unparsable. <br>
-	 *                NO_MODIFICATION_ALLOWED_ERR: Raised if this property is
-	 *                readonly.
-	 */
-	public String getDisplay() {
-		return get(PropCMProperty.getInstanceOf(PropCMProperty.P_DISPLAY));
-	}
-
-	/**
-	 * See the elevation property definition in CSS2.
-	 * 
-	 * @exceptionorg.w3c.dom.DOMException
-	 *                SYNTAX_ERR: Raised if the new value has a syntax error
-	 *                and is unparsable. <br>
-	 *                NO_MODIFICATION_ALLOWED_ERR: Raised if this property is
-	 *                readonly.
-	 */
-	public String getElevation() {
-		return get(PropCMProperty.getInstanceOf(PropCMProperty.P_ELEVATION));
-	}
-
-	/**
-	 * See the empty-cells property definition in CSS2.
-	 * 
-	 * @exceptionorg.w3c.dom.DOMException
-	 *                SYNTAX_ERR: Raised if the new value has a syntax error
-	 *                and is unparsable. <br>
-	 *                NO_MODIFICATION_ALLOWED_ERR: Raised if this property is
-	 *                readonly.
-	 */
-	public String getEmptyCells() {
-		return get(PropCMProperty.getInstanceOf(PropCMProperty.P_EMPTY_CELLS));
-	}
-
-	/**
-	 * See the font property definition in CSS2.
-	 * 
-	 * @exceptionorg.w3c.dom.DOMException
-	 *                SYNTAX_ERR: Raised if the new value has a syntax error
-	 *                and is unparsable. <br>
-	 *                NO_MODIFICATION_ALLOWED_ERR: Raised if this property is
-	 *                readonly.
-	 */
-	public String getFont() {
-		return get(PropCMProperty.getInstanceOf(PropCMProperty.P_FONT));
-	}
-
-	/**
-	 * See the font-family property definition in CSS2.
-	 * 
-	 * @exceptionorg.w3c.dom.DOMException
-	 *                SYNTAX_ERR: Raised if the new value has a syntax error
-	 *                and is unparsable. <br>
-	 *                NO_MODIFICATION_ALLOWED_ERR: Raised if this property is
-	 *                readonly.
-	 */
-	public String getFontFamily() {
-		return get(PropCMProperty.getInstanceOf(PropCMProperty.P_FONT_FAMILY));
-	}
-
-	/**
-	 * See the font-size property definition in CSS2.
-	 * 
-	 * @exceptionorg.w3c.dom.DOMException
-	 *                SYNTAX_ERR: Raised if the new value has a syntax error
-	 *                and is unparsable. <br>
-	 *                NO_MODIFICATION_ALLOWED_ERR: Raised if this property is
-	 *                readonly.
-	 */
-	public String getFontSize() {
-		return get(PropCMProperty.getInstanceOf(PropCMProperty.P_FONT_SIZE));
-	}
-
-	/**
-	 * See the font-size-adjust property definition in CSS2.
-	 * 
-	 * @exceptionorg.w3c.dom.DOMException
-	 *                SYNTAX_ERR: Raised if the new value has a syntax error
-	 *                and is unparsable. <br>
-	 *                NO_MODIFICATION_ALLOWED_ERR: Raised if this property is
-	 *                readonly.
-	 */
-	public String getFontSizeAdjust() {
-		return get(PropCMProperty.getInstanceOf(PropCMProperty.P_FONT_SIZE_ADJUST));
-	}
-
-	/**
-	 * See the font-stretch property definition in CSS2.
-	 * 
-	 * @exceptionorg.w3c.dom.DOMException
-	 *                SYNTAX_ERR: Raised if the new value has a syntax error
-	 *                and is unparsable. <br>
-	 *                NO_MODIFICATION_ALLOWED_ERR: Raised if this property is
-	 *                readonly.
-	 */
-	public String getFontStretch() {
-		return get(PropCMProperty.getInstanceOf(PropCMProperty.P_FONT_STRETCH));
-	}
-
-	/**
-	 * See the font-style property definition in CSS2.
-	 * 
-	 * @exceptionorg.w3c.dom.DOMException
-	 *                SYNTAX_ERR: Raised if the new value has a syntax error
-	 *                and is unparsable. <br>
-	 *                NO_MODIFICATION_ALLOWED_ERR: Raised if this property is
-	 *                readonly.
-	 */
-	public String getFontStyle() {
-		return get(PropCMProperty.getInstanceOf(PropCMProperty.P_FONT_STYLE));
-	}
-
-	/**
-	 * See the font-variant property definition in CSS2.
-	 * 
-	 * @exceptionorg.w3c.dom.DOMException
-	 *                SYNTAX_ERR: Raised if the new value has a syntax error
-	 *                and is unparsable. <br>
-	 *                NO_MODIFICATION_ALLOWED_ERR: Raised if this property is
-	 *                readonly.
-	 */
-	public String getFontVariant() {
-		return get(PropCMProperty.getInstanceOf(PropCMProperty.P_FONT_VARIANT));
-	}
-
-	/**
-	 * See the font-weight property definition in CSS2.
-	 * 
-	 * @exceptionorg.w3c.dom.DOMException
-	 *                SYNTAX_ERR: Raised if the new value has a syntax error
-	 *                and is unparsable. <br>
-	 *                NO_MODIFICATION_ALLOWED_ERR: Raised if this property is
-	 *                readonly.
-	 */
-	public String getFontWeight() {
-		return get(PropCMProperty.getInstanceOf(PropCMProperty.P_FONT_WEIGHT));
-	}
-
-	/**
-	 * See the height property definition in CSS2.
-	 * 
-	 * @exceptionorg.w3c.dom.DOMException
-	 *                SYNTAX_ERR: Raised if the new value has a syntax error
-	 *                and is unparsable. <br>
-	 *                NO_MODIFICATION_ALLOWED_ERR: Raised if this property is
-	 *                readonly.
-	 */
-	public String getHeight() {
-		return get(PropCMProperty.getInstanceOf(PropCMProperty.P_HEIGHT));
-	}
-
-	/**
-	 * See the left property definition in CSS2.
-	 * 
-	 * @exceptionorg.w3c.dom.DOMException
-	 *                SYNTAX_ERR: Raised if the new value has a syntax error
-	 *                and is unparsable. <br>
-	 *                NO_MODIFICATION_ALLOWED_ERR: Raised if this property is
-	 *                readonly.
-	 */
-	public String getLeft() {
-		return get(PropCMProperty.getInstanceOf(PropCMProperty.P_LEFT));
-	}
-
-	/**
-	 * See the letter-spacing property definition in CSS2.
-	 * 
-	 * @exceptionorg.w3c.dom.DOMException
-	 *                SYNTAX_ERR: Raised if the new value has a syntax error
-	 *                and is unparsable. <br>
-	 *                NO_MODIFICATION_ALLOWED_ERR: Raised if this property is
-	 *                readonly.
-	 */
-	public String getLetterSpacing() {
-		return get(PropCMProperty.getInstanceOf(PropCMProperty.P_LETTER_SPACING));
-	}
-
-	/**
-	 * See the line-height property definition in CSS2.
-	 * 
-	 * @exceptionorg.w3c.dom.DOMException
-	 *                SYNTAX_ERR: Raised if the new value has a syntax error
-	 *                and is unparsable. <br>
-	 *                NO_MODIFICATION_ALLOWED_ERR: Raised if this property is
-	 *                readonly.
-	 */
-	public String getLineHeight() {
-		return get(PropCMProperty.getInstanceOf(PropCMProperty.P_LINE_HEIGHT));
-	}
-
-	/**
-	 * See the list-style property definition in CSS2.
-	 * 
-	 * @exceptionorg.w3c.dom.DOMException
-	 *                SYNTAX_ERR: Raised if the new value has a syntax error
-	 *                and is unparsable. <br>
-	 *                NO_MODIFICATION_ALLOWED_ERR: Raised if this property is
-	 *                readonly.
-	 */
-	public String getListStyle() {
-		return get(PropCMProperty.getInstanceOf(PropCMProperty.P_LIST_STYLE));
-	}
-
-	/**
-	 * See the list-style-image property definition in CSS2.
-	 * 
-	 * @exceptionorg.w3c.dom.DOMException
-	 *                SYNTAX_ERR: Raised if the new value has a syntax error
-	 *                and is unparsable. <br>
-	 *                NO_MODIFICATION_ALLOWED_ERR: Raised if this property is
-	 *                readonly.
-	 */
-	public String getListStyleImage() {
-		return get(PropCMProperty.getInstanceOf(PropCMProperty.P_LIST_STYLE_IMAGE));
-	}
-
-	/**
-	 * See the list-style-position property definition in CSS2.
-	 * 
-	 * @exceptionorg.w3c.dom.DOMException
-	 *                SYNTAX_ERR: Raised if the new value has a syntax error
-	 *                and is unparsable. <br>
-	 *                NO_MODIFICATION_ALLOWED_ERR: Raised if this property is
-	 *                readonly.
-	 */
-	public String getListStylePosition() {
-		return get(PropCMProperty.getInstanceOf(PropCMProperty.P_LIST_STYLE_POSITION));
-	}
-
-	/**
-	 * See the list-style-type property definition in CSS2.
-	 * 
-	 * @exceptionorg.w3c.dom.DOMException
-	 *                SYNTAX_ERR: Raised if the new value has a syntax error
-	 *                and is unparsable. <br>
-	 *                NO_MODIFICATION_ALLOWED_ERR: Raised if this property is
-	 *                readonly.
-	 */
-	public String getListStyleType() {
-		return get(PropCMProperty.getInstanceOf(PropCMProperty.P_LIST_STYLE_TYPE));
-	}
-
-	/**
-	 * See the margin property definition in CSS2.
-	 * 
-	 * @exceptionorg.w3c.dom.DOMException
-	 *                SYNTAX_ERR: Raised if the new value has a syntax error
-	 *                and is unparsable. <br>
-	 *                NO_MODIFICATION_ALLOWED_ERR: Raised if this property is
-	 *                readonly.
-	 */
-	public String getMargin() {
-		return get(PropCMProperty.getInstanceOf(PropCMProperty.P_MARGIN));
-	}
-
-	/**
-	 * See the margin-bottom property definition in CSS2.
-	 * 
-	 * @exceptionorg.w3c.dom.DOMException
-	 *                SYNTAX_ERR: Raised if the new value has a syntax error
-	 *                and is unparsable. <br>
-	 *                NO_MODIFICATION_ALLOWED_ERR: Raised if this property is
-	 *                readonly.
-	 */
-	public String getMarginBottom() {
-		return get(PropCMProperty.getInstanceOf(PropCMProperty.P_MARGIN_BOTTOM));
-	}
-
-	/**
-	 * See the margin-left property definition in CSS2.
-	 * 
-	 * @exceptionorg.w3c.dom.DOMException
-	 *                SYNTAX_ERR: Raised if the new value has a syntax error
-	 *                and is unparsable. <br>
-	 *                NO_MODIFICATION_ALLOWED_ERR: Raised if this property is
-	 *                readonly.
-	 */
-	public String getMarginLeft() {
-		return get(PropCMProperty.getInstanceOf(PropCMProperty.P_MARGIN_LEFT));
-	}
-
-	/**
-	 * See the margin-right property definition in CSS2.
-	 * 
-	 * @exceptionorg.w3c.dom.DOMException
-	 *                SYNTAX_ERR: Raised if the new value has a syntax error
-	 *                and is unparsable. <br>
-	 *                NO_MODIFICATION_ALLOWED_ERR: Raised if this property is
-	 *                readonly.
-	 */
-	public String getMarginRight() {
-		return get(PropCMProperty.getInstanceOf(PropCMProperty.P_MARGIN_RIGHT));
-	}
-
-	/**
-	 * See the margin-top property definition in CSS2.
-	 * 
-	 * @exceptionorg.w3c.dom.DOMException
-	 *                SYNTAX_ERR: Raised if the new value has a syntax error
-	 *                and is unparsable. <br>
-	 *                NO_MODIFICATION_ALLOWED_ERR: Raised if this property is
-	 *                readonly.
-	 */
-	public String getMarginTop() {
-		return get(PropCMProperty.getInstanceOf(PropCMProperty.P_MARGIN_TOP));
-	}
-
-	/**
-	 * See the marker-offset property definition in CSS2.
-	 * 
-	 * @exceptionorg.w3c.dom.DOMException
-	 *                SYNTAX_ERR: Raised if the new value has a syntax error
-	 *                and is unparsable. <br>
-	 *                NO_MODIFICATION_ALLOWED_ERR: Raised if this property is
-	 *                readonly.
-	 */
-	public String getMarkerOffset() {
-		return get(PropCMProperty.getInstanceOf(PropCMProperty.P_MARKER_OFFSET));
-	}
-
-	/**
-	 * See the marks property definition in CSS2.
-	 * 
-	 * @exceptionorg.w3c.dom.DOMException
-	 *                SYNTAX_ERR: Raised if the new value has a syntax error
-	 *                and is unparsable. <br>
-	 *                NO_MODIFICATION_ALLOWED_ERR: Raised if this property is
-	 *                readonly.
-	 */
-	public String getMarks() {
-		return get(PropCMProperty.getInstanceOf(PropCMProperty.P_MARKS));
-	}
-
-	/**
-	 * See the max-height property definition in CSS2.
-	 * 
-	 * @exceptionorg.w3c.dom.DOMException
-	 *                SYNTAX_ERR: Raised if the new value has a syntax error
-	 *                and is unparsable. <br>
-	 *                NO_MODIFICATION_ALLOWED_ERR: Raised if this property is
-	 *                readonly.
-	 */
-	public String getMaxHeight() {
-		return get(PropCMProperty.getInstanceOf(PropCMProperty.P_MAX_HEIGHT));
-	}
-
-	/**
-	 * See the max-width property definition in CSS2.
-	 * 
-	 * @exceptionorg.w3c.dom.DOMException
-	 *                SYNTAX_ERR: Raised if the new value has a syntax error
-	 *                and is unparsable. <br>
-	 *                NO_MODIFICATION_ALLOWED_ERR: Raised if this property is
-	 *                readonly.
-	 */
-	public String getMaxWidth() {
-		return get(PropCMProperty.getInstanceOf(PropCMProperty.P_MAX_WIDTH));
-	}
-
-	/**
-	 * See the min-height property definition in CSS2.
-	 * 
-	 * @exceptionorg.w3c.dom.DOMException
-	 *                SYNTAX_ERR: Raised if the new value has a syntax error
-	 *                and is unparsable. <br>
-	 *                NO_MODIFICATION_ALLOWED_ERR: Raised if this property is
-	 *                readonly.
-	 */
-	public String getMinHeight() {
-		return get(PropCMProperty.getInstanceOf(PropCMProperty.P_MIN_HEIGHT));
-	}
-
-	/**
-	 * See the min-width property definition in CSS2.
-	 * 
-	 * @exceptionorg.w3c.dom.DOMException
-	 *                SYNTAX_ERR: Raised if the new value has a syntax error
-	 *                and is unparsable. <br>
-	 *                NO_MODIFICATION_ALLOWED_ERR: Raised if this property is
-	 *                readonly.
-	 */
-	public String getMinWidth() {
-		return get(PropCMProperty.getInstanceOf(PropCMProperty.P_MIN_WIDTH));
-	}
-
-	/**
-	 * See the orphans property definition in CSS2.
-	 * 
-	 * @exceptionorg.w3c.dom.DOMException
-	 *                SYNTAX_ERR: Raised if the new value has a syntax error
-	 *                and is unparsable. <br>
-	 *                NO_MODIFICATION_ALLOWED_ERR: Raised if this property is
-	 *                readonly.
-	 */
-	public String getOrphans() {
-		return get(PropCMProperty.getInstanceOf(PropCMProperty.P_ORPHANS));
-	}
-
-	/**
-	 * See the outline property definition in CSS2.
-	 * 
-	 * @exceptionorg.w3c.dom.DOMException
-	 *                SYNTAX_ERR: Raised if the new value has a syntax error
-	 *                and is unparsable. <br>
-	 *                NO_MODIFICATION_ALLOWED_ERR: Raised if this property is
-	 *                readonly.
-	 */
-	public String getOutline() {
-		return get(PropCMProperty.getInstanceOf(PropCMProperty.P_OUTLINE));
-	}
-
-	/**
-	 * See the outline-color property definition in CSS2.
-	 * 
-	 * @exceptionorg.w3c.dom.DOMException
-	 *                SYNTAX_ERR: Raised if the new value has a syntax error
-	 *                and is unparsable. <br>
-	 *                NO_MODIFICATION_ALLOWED_ERR: Raised if this property is
-	 *                readonly.
-	 */
-	public String getOutlineColor() {
-		return get(PropCMProperty.getInstanceOf(PropCMProperty.P_OUTLINE_COLOR));
-	}
-
-	/**
-	 * See the outline-style property definition in CSS2.
-	 * 
-	 * @exceptionorg.w3c.dom.DOMException
-	 *                SYNTAX_ERR: Raised if the new value has a syntax error
-	 *                and is unparsable. <br>
-	 *                NO_MODIFICATION_ALLOWED_ERR: Raised if this property is
-	 *                readonly.
-	 */
-	public String getOutlineStyle() {
-		return get(PropCMProperty.getInstanceOf(PropCMProperty.P_OUTLINE_STYLE));
-	}
-
-	/**
-	 * See the outline-width property definition in CSS2.
-	 * 
-	 * @exceptionorg.w3c.dom.DOMException
-	 *                SYNTAX_ERR: Raised if the new value has a syntax error
-	 *                and is unparsable. <br>
-	 *                NO_MODIFICATION_ALLOWED_ERR: Raised if this property is
-	 *                readonly.
-	 */
-	public String getOutlineWidth() {
-		return get(PropCMProperty.getInstanceOf(PropCMProperty.P_OUTLINE_WIDTH));
-	}
-
-	/**
-	 * See the overflow property definition in CSS2.
-	 * 
-	 * @exceptionorg.w3c.dom.DOMException
-	 *                SYNTAX_ERR: Raised if the new value has a syntax error
-	 *                and is unparsable. <br>
-	 *                NO_MODIFICATION_ALLOWED_ERR: Raised if this property is
-	 *                readonly.
-	 */
-	public String getOverflow() {
-		return get(PropCMProperty.getInstanceOf(PropCMProperty.P_OVERFLOW));
-	}
-
-	/**
-	 * See the padding property definition in CSS2.
-	 * 
-	 * @exceptionorg.w3c.dom.DOMException
-	 *                SYNTAX_ERR: Raised if the new value has a syntax error
-	 *                and is unparsable. <br>
-	 *                NO_MODIFICATION_ALLOWED_ERR: Raised if this property is
-	 *                readonly.
-	 */
-	public String getPadding() {
-		return get(PropCMProperty.getInstanceOf(PropCMProperty.P_PADDING));
-	}
-
-	/**
-	 * See the padding-bottom property definition in CSS2.
-	 * 
-	 * @exceptionorg.w3c.dom.DOMException
-	 *                SYNTAX_ERR: Raised if the new value has a syntax error
-	 *                and is unparsable. <br>
-	 *                NO_MODIFICATION_ALLOWED_ERR: Raised if this property is
-	 *                readonly.
-	 */
-	public String getPaddingBottom() {
-		return get(PropCMProperty.getInstanceOf(PropCMProperty.P_PADDING_BOTTOM));
-	}
-
-	/**
-	 * See the padding-left property definition in CSS2.
-	 * 
-	 * @exceptionorg.w3c.dom.DOMException
-	 *                SYNTAX_ERR: Raised if the new value has a syntax error
-	 *                and is unparsable. <br>
-	 *                NO_MODIFICATION_ALLOWED_ERR: Raised if this property is
-	 *                readonly.
-	 */
-	public String getPaddingLeft() {
-		return get(PropCMProperty.getInstanceOf(PropCMProperty.P_PADDING_LEFT));
-	}
-
-	/**
-	 * See the padding-right property definition in CSS2.
-	 * 
-	 * @exceptionorg.w3c.dom.DOMException
-	 *                SYNTAX_ERR: Raised if the new value has a syntax error
-	 *                and is unparsable. <br>
-	 *                NO_MODIFICATION_ALLOWED_ERR: Raised if this property is
-	 *                readonly.
-	 */
-	public String getPaddingRight() {
-		return get(PropCMProperty.getInstanceOf(PropCMProperty.P_PADDING_RIGHT));
-	}
-
-	/**
-	 * See the padding-top property definition in CSS2.
-	 * 
-	 * @exceptionorg.w3c.dom.DOMException
-	 *                SYNTAX_ERR: Raised if the new value has a syntax error
-	 *                and is unparsable. <br>
-	 *                NO_MODIFICATION_ALLOWED_ERR: Raised if this property is
-	 *                readonly.
-	 */
-	public String getPaddingTop() {
-		return get(PropCMProperty.getInstanceOf(PropCMProperty.P_PADDING_TOP));
-	}
-
-	/**
-	 * See the page property definition in CSS2.
-	 * 
-	 * @exceptionorg.w3c.dom.DOMException
-	 *                SYNTAX_ERR: Raised if the new value has a syntax error
-	 *                and is unparsable. <br>
-	 *                NO_MODIFICATION_ALLOWED_ERR: Raised if this property is
-	 *                readonly.
-	 */
-	public String getPage() {
-		return get(PropCMProperty.getInstanceOf(PropCMProperty.P_PAGE));
-	}
-
-	/**
-	 * See the page-break-after property definition in CSS2.
-	 * 
-	 * @exceptionorg.w3c.dom.DOMException
-	 *                SYNTAX_ERR: Raised if the new value has a syntax error
-	 *                and is unparsable. <br>
-	 *                NO_MODIFICATION_ALLOWED_ERR: Raised if this property is
-	 *                readonly.
-	 */
-	public String getPageBreakAfter() {
-		return get(PropCMProperty.getInstanceOf(PropCMProperty.P_PAGE_BREAK_AFTER));
-	}
-
-	/**
-	 * See the page-break-before property definition in CSS2.
-	 * 
-	 * @exceptionorg.w3c.dom.DOMException
-	 *                SYNTAX_ERR: Raised if the new value has a syntax error
-	 *                and is unparsable. <br>
-	 *                NO_MODIFICATION_ALLOWED_ERR: Raised if this property is
-	 *                readonly.
-	 */
-	public String getPageBreakBefore() {
-		return get(PropCMProperty.getInstanceOf(PropCMProperty.P_PAGE_BREAK_BEFORE));
-	}
-
-	/**
-	 * See the page-break-inside property definition in CSS2.
-	 * 
-	 * @exceptionorg.w3c.dom.DOMException
-	 *                SYNTAX_ERR: Raised if the new value has a syntax error
-	 *                and is unparsable. <br>
-	 *                NO_MODIFICATION_ALLOWED_ERR: Raised if this property is
-	 *                readonly.
-	 */
-	public String getPageBreakInside() {
-		return get(PropCMProperty.getInstanceOf(PropCMProperty.P_PAGE_BREAK_INSIDE));
-	}
-
-	/**
-	 * See the pause property definition in CSS2.
-	 * 
-	 * @exceptionorg.w3c.dom.DOMException
-	 *                SYNTAX_ERR: Raised if the new value has a syntax error
-	 *                and is unparsable. <br>
-	 *                NO_MODIFICATION_ALLOWED_ERR: Raised if this property is
-	 *                readonly.
-	 */
-	public String getPause() {
-		return get(PropCMProperty.getInstanceOf(PropCMProperty.P_PAUSE));
-	}
-
-	/**
-	 * See the pause-after property definition in CSS2.
-	 * 
-	 * @exceptionorg.w3c.dom.DOMException
-	 *                SYNTAX_ERR: Raised if the new value has a syntax error
-	 *                and is unparsable. <br>
-	 *                NO_MODIFICATION_ALLOWED_ERR: Raised if this property is
-	 *                readonly.
-	 */
-	public String getPauseAfter() {
-		return get(PropCMProperty.getInstanceOf(PropCMProperty.P_PAUSE_AFTER));
-	}
-
-	/**
-	 * See the pause-before property definition in CSS2.
-	 * 
-	 * @exceptionorg.w3c.dom.DOMException
-	 *                SYNTAX_ERR: Raised if the new value has a syntax error
-	 *                and is unparsable. <br>
-	 *                NO_MODIFICATION_ALLOWED_ERR: Raised if this property is
-	 *                readonly.
-	 */
-	public String getPauseBefore() {
-		return get(PropCMProperty.getInstanceOf(PropCMProperty.P_PAUSE_BEFORE));
-	}
-
-	/**
-	 * See the pitch property definition in CSS2.
-	 * 
-	 * @exceptionorg.w3c.dom.DOMException
-	 *                SYNTAX_ERR: Raised if the new value has a syntax error
-	 *                and is unparsable. <br>
-	 *                NO_MODIFICATION_ALLOWED_ERR: Raised if this property is
-	 *                readonly.
-	 */
-	public String getPitch() {
-		return get(PropCMProperty.getInstanceOf(PropCMProperty.P_PITCH));
-	}
-
-	/**
-	 * See the pitch-range property definition in CSS2.
-	 * 
-	 * @exceptionorg.w3c.dom.DOMException
-	 *                SYNTAX_ERR: Raised if the new value has a syntax error
-	 *                and is unparsable. <br>
-	 *                NO_MODIFICATION_ALLOWED_ERR: Raised if this property is
-	 *                readonly.
-	 */
-	public String getPitchRange() {
-		return get(PropCMProperty.getInstanceOf(PropCMProperty.P_PITCH_RANGE));
-	}
-
-	/**
-	 * See the play-during property definition in CSS2.
-	 * 
-	 * @exceptionorg.w3c.dom.DOMException
-	 *                SYNTAX_ERR: Raised if the new value has a syntax error
-	 *                and is unparsable. <br>
-	 *                NO_MODIFICATION_ALLOWED_ERR: Raised if this property is
-	 *                readonly.
-	 */
-	public String getPlayDuring() {
-		return get(PropCMProperty.getInstanceOf(PropCMProperty.P_PLAY_DURING));
-	}
-
-	/**
-	 * See the position property definition in CSS2.
-	 * 
-	 * @exceptionorg.w3c.dom.DOMException
-	 *                SYNTAX_ERR: Raised if the new value has a syntax error
-	 *                and is unparsable. <br>
-	 *                NO_MODIFICATION_ALLOWED_ERR: Raised if this property is
-	 *                readonly.
-	 */
-	public String getPosition() {
-		return get(PropCMProperty.getInstanceOf(PropCMProperty.P_POSITION));
-	}
-
-	/**
-	 * See the quotes property definition in CSS2.
-	 * 
-	 * @exceptionorg.w3c.dom.DOMException
-	 *                SYNTAX_ERR: Raised if the new value has a syntax error
-	 *                and is unparsable. <br>
-	 *                NO_MODIFICATION_ALLOWED_ERR: Raised if this property is
-	 *                readonly.
-	 */
-	public String getQuotes() {
-		return get(PropCMProperty.getInstanceOf(PropCMProperty.P_QUOTES));
-	}
-
-	/**
-	 * See the richness property definition in CSS2.
-	 * 
-	 * @exceptionorg.w3c.dom.DOMException
-	 *                SYNTAX_ERR: Raised if the new value has a syntax error
-	 *                and is unparsable. <br>
-	 *                NO_MODIFICATION_ALLOWED_ERR: Raised if this property is
-	 *                readonly.
-	 */
-	public String getRichness() {
-		return get(PropCMProperty.getInstanceOf(PropCMProperty.P_RICHNESS));
-	}
-
-	/**
-	 * See the right property definition in CSS2.
-	 * 
-	 * @exceptionorg.w3c.dom.DOMException
-	 *                SYNTAX_ERR: Raised if the new value has a syntax error
-	 *                and is unparsable. <br>
-	 *                NO_MODIFICATION_ALLOWED_ERR: Raised if this property is
-	 *                readonly.
-	 */
-	public String getRight() {
-		return get(PropCMProperty.getInstanceOf(PropCMProperty.P_RIGHT));
-	}
-
-	/**
-	 * @return org.eclipse.wst.css.core.util.declaration.IShorthandAdapter
-	 * @param org.eclipse.wst.css.core.contentmodel.PropCMProperty
-	 */
-	public static IShorthandAdapter getShorthandAdapter(PropCMProperty prop) {
-		return (IShorthandAdapter) shorthandAdapters.get(prop);
-	}
-
-	/**
-	 * See the size property definition in CSS2.
-	 * 
-	 * @exceptionorg.w3c.dom.DOMException
-	 *                SYNTAX_ERR: Raised if the new value has a syntax error
-	 *                and is unparsable. <br>
-	 *                NO_MODIFICATION_ALLOWED_ERR: Raised if this property is
-	 *                readonly.
-	 */
-	public String getSize() {
-		return get(PropCMProperty.getInstanceOf(PropCMProperty.P_SIZE));
-	}
-
-	/**
-	 * See the speak property definition in CSS2.
-	 * 
-	 * @exceptionorg.w3c.dom.DOMException
-	 *                SYNTAX_ERR: Raised if the new value has a syntax error
-	 *                and is unparsable. <br>
-	 *                NO_MODIFICATION_ALLOWED_ERR: Raised if this property is
-	 *                readonly.
-	 */
-	public String getSpeak() {
-		return get(PropCMProperty.getInstanceOf(PropCMProperty.P_SPEAK));
-	}
-
-	/**
-	 * See the speak-header property definition in CSS2.
-	 * 
-	 * @exceptionorg.w3c.dom.DOMException
-	 *                SYNTAX_ERR: Raised if the new value has a syntax error
-	 *                and is unparsable. <br>
-	 *                NO_MODIFICATION_ALLOWED_ERR: Raised if this property is
-	 *                readonly.
-	 */
-	public String getSpeakHeader() {
-		return get(PropCMProperty.getInstanceOf(PropCMProperty.P_SPEAK_HEADER));
-	}
-
-	/**
-	 * See the speak-numeral property definition in CSS2.
-	 * 
-	 * @exceptionorg.w3c.dom.DOMException
-	 *                SYNTAX_ERR: Raised if the new value has a syntax error
-	 *                and is unparsable. <br>
-	 *                NO_MODIFICATION_ALLOWED_ERR: Raised if this property is
-	 *                readonly.
-	 */
-	public String getSpeakNumeral() {
-		return get(PropCMProperty.getInstanceOf(PropCMProperty.P_SPEAK_NUMERAL));
-	}
-
-	/**
-	 * See the speak-punctuation property definition in CSS2.
-	 * 
-	 * @exceptionorg.w3c.dom.DOMException
-	 *                SYNTAX_ERR: Raised if the new value has a syntax error
-	 *                and is unparsable. <br>
-	 *                NO_MODIFICATION_ALLOWED_ERR: Raised if this property is
-	 *                readonly.
-	 */
-	public String getSpeakPunctuation() {
-		return get(PropCMProperty.getInstanceOf(PropCMProperty.P_SPEAK_PUNCTUATION));
-	}
-
-	/**
-	 * See the speech-rate property definition in CSS2.
-	 * 
-	 * @exceptionorg.w3c.dom.DOMException
-	 *                SYNTAX_ERR: Raised if the new value has a syntax error
-	 *                and is unparsable. <br>
-	 *                NO_MODIFICATION_ALLOWED_ERR: Raised if this property is
-	 *                readonly.
-	 */
-	public String getSpeechRate() {
-		return get(PropCMProperty.getInstanceOf(PropCMProperty.P_SPEECH_RATE));
-	}
-
-	/**
-	 * See the stress property definition in CSS2.
-	 * 
-	 * @exceptionorg.w3c.dom.DOMException
-	 *                SYNTAX_ERR: Raised if the new value has a syntax error
-	 *                and is unparsable. <br>
-	 *                NO_MODIFICATION_ALLOWED_ERR: Raised if this property is
-	 *                readonly.
-	 */
-	public String getStress() {
-		return get(PropCMProperty.getInstanceOf(PropCMProperty.P_STRESS));
-	}
-
-	/**
-	 * See the table-layout property definition in CSS2.
-	 * 
-	 * @exceptionorg.w3c.dom.DOMException
-	 *                SYNTAX_ERR: Raised if the new value has a syntax error
-	 *                and is unparsable. <br>
-	 *                NO_MODIFICATION_ALLOWED_ERR: Raised if this property is
-	 *                readonly.
-	 */
-	public String getTableLayout() {
-		return get(PropCMProperty.getInstanceOf(PropCMProperty.P_TABLE_LAYOUT));
-	}
-
-	/**
-	 * See the text-align property definition in CSS2.
-	 * 
-	 * @exceptionorg.w3c.dom.DOMException
-	 *                SYNTAX_ERR: Raised if the new value has a syntax error
-	 *                and is unparsable. <br>
-	 *                NO_MODIFICATION_ALLOWED_ERR: Raised if this property is
-	 *                readonly.
-	 */
-	public String getTextAlign() {
-		return get(PropCMProperty.getInstanceOf(PropCMProperty.P_TEXT_ALIGN));
-	}
-
-	/**
-	 * See the text-decoration property definition in CSS2.
-	 * 
-	 * @exceptionorg.w3c.dom.DOMException
-	 *                SYNTAX_ERR: Raised if the new value has a syntax error
-	 *                and is unparsable. <br>
-	 *                NO_MODIFICATION_ALLOWED_ERR: Raised if this property is
-	 *                readonly.
-	 */
-	public String getTextDecoration() {
-		return get(PropCMProperty.getInstanceOf(PropCMProperty.P_TEXT_DECORATION));
-	}
-
-	/**
-	 * See the text-indent property definition in CSS2.
-	 * 
-	 * @exceptionorg.w3c.dom.DOMException
-	 *                SYNTAX_ERR: Raised if the new value has a syntax error
-	 *                and is unparsable. <br>
-	 *                NO_MODIFICATION_ALLOWED_ERR: Raised if this property is
-	 *                readonly.
-	 */
-	public String getTextIndent() {
-		return get(PropCMProperty.getInstanceOf(PropCMProperty.P_TEXT_INDENT));
-	}
-
-	/**
-	 * See the text-shadow property definition in CSS2.
-	 * 
-	 * @exceptionorg.w3c.dom.DOMException
-	 *                SYNTAX_ERR: Raised if the new value has a syntax error
-	 *                and is unparsable. <br>
-	 *                NO_MODIFICATION_ALLOWED_ERR: Raised if this property is
-	 *                readonly.
-	 */
-	public String getTextShadow() {
-		return get(PropCMProperty.getInstanceOf(PropCMProperty.P_TEXT_SHADOW));
-	}
-
-	/**
-	 * See the text-transform property definition in CSS2.
-	 * 
-	 * @exceptionorg.w3c.dom.DOMException
-	 *                SYNTAX_ERR: Raised if the new value has a syntax error
-	 *                and is unparsable. <br>
-	 *                NO_MODIFICATION_ALLOWED_ERR: Raised if this property is
-	 *                readonly.
-	 */
-	public String getTextTransform() {
-		return get(PropCMProperty.getInstanceOf(PropCMProperty.P_TEXT_TRANSFORM));
-	}
-
-	/**
-	 * See the top property definition in CSS2.
-	 * 
-	 * @exceptionorg.w3c.dom.DOMException
-	 *                SYNTAX_ERR: Raised if the new value has a syntax error
-	 *                and is unparsable. <br>
-	 *                NO_MODIFICATION_ALLOWED_ERR: Raised if this property is
-	 *                readonly.
-	 */
-	public String getTop() {
-		return get(PropCMProperty.getInstanceOf(PropCMProperty.P_TOP));
-	}
-
-	/**
-	 * See the unicode-bidi property definition in CSS2.
-	 * 
-	 * @exceptionorg.w3c.dom.DOMException
-	 *                SYNTAX_ERR: Raised if the new value has a syntax error
-	 *                and is unparsable. <br>
-	 *                NO_MODIFICATION_ALLOWED_ERR: Raised if this property is
-	 *                readonly.
-	 */
-	public String getUnicodeBidi() {
-		return get(PropCMProperty.getInstanceOf(PropCMProperty.P_UNICODE_BIDI));
-	}
-
-	/**
-	 * See the vertical-align property definition in CSS2.
-	 * 
-	 * @exceptionorg.w3c.dom.DOMException
-	 *                SYNTAX_ERR: Raised if the new value has a syntax error
-	 *                and is unparsable. <br>
-	 *                NO_MODIFICATION_ALLOWED_ERR: Raised if this property is
-	 *                readonly.
-	 */
-	public String getVerticalAlign() {
-		return get(PropCMProperty.getInstanceOf(PropCMProperty.P_VERTICAL_ALIGN));
-	}
-
-	/**
-	 * See the visibility property definition in CSS2.
-	 * 
-	 * @exceptionorg.w3c.dom.DOMException
-	 *                SYNTAX_ERR: Raised if the new value has a syntax error
-	 *                and is unparsable. <br>
-	 *                NO_MODIFICATION_ALLOWED_ERR: Raised if this property is
-	 *                readonly.
-	 */
-	public String getVisibility() {
-		return get(PropCMProperty.getInstanceOf(PropCMProperty.P_VISIBILITY));
-	}
-
-	/**
-	 * See the voice-family property definition in CSS2.
-	 * 
-	 * @exceptionorg.w3c.dom.DOMException
-	 *                SYNTAX_ERR: Raised if the new value has a syntax error
-	 *                and is unparsable. <br>
-	 *                NO_MODIFICATION_ALLOWED_ERR: Raised if this property is
-	 *                readonly.
-	 */
-	public String getVoiceFamily() {
-		return get(PropCMProperty.getInstanceOf(PropCMProperty.P_VOICE_FAMILY));
-	}
-
-	/**
-	 * See the volume property definition in CSS2.
-	 * 
-	 * @exceptionorg.w3c.dom.DOMException
-	 *                SYNTAX_ERR: Raised if the new value has a syntax error
-	 *                and is unparsable. <br>
-	 *                NO_MODIFICATION_ALLOWED_ERR: Raised if this property is
-	 *                readonly.
-	 */
-	public String getVolume() {
-		return get(PropCMProperty.getInstanceOf(PropCMProperty.P_VOLUME));
-	}
-
-	/**
-	 * See the white-space property definition in CSS2.
-	 * 
-	 * @exceptionorg.w3c.dom.DOMException
-	 *                SYNTAX_ERR: Raised if the new value has a syntax error
-	 *                and is unparsable. <br>
-	 *                NO_MODIFICATION_ALLOWED_ERR: Raised if this property is
-	 *                readonly.
-	 */
-	public String getWhiteSpace() {
-		return get(PropCMProperty.getInstanceOf(PropCMProperty.P_WHITE_SPACE));
-	}
-
-	/**
-	 * See the widows property definition in CSS2.
-	 * 
-	 * @exceptionorg.w3c.dom.DOMException
-	 *                SYNTAX_ERR: Raised if the new value has a syntax error
-	 *                and is unparsable. <br>
-	 *                NO_MODIFICATION_ALLOWED_ERR: Raised if this property is
-	 *                readonly.
-	 */
-	public String getWidows() {
-		return get(PropCMProperty.getInstanceOf(PropCMProperty.P_WIDOWS));
-	}
-
-	/**
-	 * See the width property definition in CSS2.
-	 * 
-	 * @exceptionorg.w3c.dom.DOMException
-	 *                SYNTAX_ERR: Raised if the new value has a syntax error
-	 *                and is unparsable. <br>
-	 *                NO_MODIFICATION_ALLOWED_ERR: Raised if this property is
-	 *                readonly.
-	 */
-	public String getWidth() {
-		return get(PropCMProperty.getInstanceOf(PropCMProperty.P_WIDTH));
-	}
-
-	/**
-	 * See the word-spacing property definition in CSS2.
-	 * 
-	 * @exceptionorg.w3c.dom.DOMException
-	 *                SYNTAX_ERR: Raised if the new value has a syntax error
-	 *                and is unparsable. <br>
-	 *                NO_MODIFICATION_ALLOWED_ERR: Raised if this property is
-	 *                readonly.
-	 */
-	public String getWordSpacing() {
-		return get(PropCMProperty.getInstanceOf(PropCMProperty.P_WORD_SPACING));
-	}
-
-	/**
-	 * See the z-index property definition in CSS2.
-	 * 
-	 * @exceptionorg.w3c.dom.DOMException
-	 *                SYNTAX_ERR: Raised if the new value has a syntax error
-	 *                and is unparsable. <br>
-	 *                NO_MODIFICATION_ALLOWED_ERR: Raised if this property is
-	 *                readonly.
-	 */
-	public String getZIndex() {
-		return get(PropCMProperty.getInstanceOf(PropCMProperty.P_Z_INDEX));
-	}
-
-	/**
-	 * 
-	 */
-	public void initialize(ICSSStyleDeclaration decl) {
-		fProperties.clear();
-		if (fModified != null)
-			fModified.clear();
-		if (decl == null)
-			return;
-
-		int nProperties = decl.getLength();
-		for (int i = 0; i < nProperties; i++) {
-			String propName = decl.item(i);
-			if (propName != null) {
-				String propN = propName.trim().toLowerCase();
-				if (propN.length() != 0) {
-					CSSValue val = decl.getPropertyCSSValue(propName);
-					if (val != null)
-						fProperties.put(propN, val);
-				}
-			}
-		}
-	}
-
-	/**
-	 * 
-	 */
-	static void initShorthandAdapters() {
-		if (shorthandAdapters == null) {
-			shorthandAdapters = new Hashtable();
-			// register
-			shorthandAdapters.put(PropCMProperty.getInstanceOf(PropCMProperty.P_BG), new BackgroundShorthandAdapter());
-			shorthandAdapters.put(PropCMProperty.getInstanceOf(PropCMProperty.P_BORDER), new BorderShorthandAdapter());
-			shorthandAdapters.put(PropCMProperty.getInstanceOf(PropCMProperty.P_BORDER_COLOR), new BorderColorShorthandAdapter());
-			shorthandAdapters.put(PropCMProperty.getInstanceOf(PropCMProperty.P_BORDER_STYLE), new BorderStyleShorthandAdapter());
-			shorthandAdapters.put(PropCMProperty.getInstanceOf(PropCMProperty.P_BORDER_WIDTH), new BorderWidthShorthandAdapter());
-			shorthandAdapters.put(PropCMProperty.getInstanceOf(PropCMProperty.P_BORDER_TOP), new BorderTopShorthandAdapter());
-			shorthandAdapters.put(PropCMProperty.getInstanceOf(PropCMProperty.P_BORDER_RIGHT), new BorderRightShorthandAdapter());
-			shorthandAdapters.put(PropCMProperty.getInstanceOf(PropCMProperty.P_BORDER_BOTTOM), new BorderBottomShorthandAdapter());
-			shorthandAdapters.put(PropCMProperty.getInstanceOf(PropCMProperty.P_BORDER_LEFT), new BorderLeftShorthandAdapter());
-			shorthandAdapters.put(PropCMProperty.getInstanceOf(PropCMProperty.P_FONT), new FontShorthandAdapter());
-			shorthandAdapters.put(PropCMProperty.getInstanceOf(PropCMProperty.P_LIST_STYLE), new ListStyleShorthandAdapter());
-			shorthandAdapters.put(PropCMProperty.getInstanceOf(PropCMProperty.P_MARGIN), new MarginShorthandAdapter());
-			shorthandAdapters.put(PropCMProperty.getInstanceOf(PropCMProperty.P_PADDING), new PaddingShorthandAdapter());
-
-		}
-	}
-
-	/**
-	 * 
-	 */
-	static void initSubPropertyAdapters() {
-		if (subPropertyAdapters == null) {
-			subPropertyAdapters = new Hashtable();
-
-			// register
-			subPropertyAdapters.put(PropCMSubProperty.PSUB_BG_POSITION_X, new BackgroundPositionXSubStyleAdapter());
-			subPropertyAdapters.put(PropCMSubProperty.PSUB_BG_POSITION_Y, new BackgroundPositionYSubStyleAdapter());
-			subPropertyAdapters.put(PropCMSubProperty.PSUB_CLIP_TOP, new ClipTopSubStyleAdapter());
-			subPropertyAdapters.put(PropCMSubProperty.PSUB_CLIP_RIGHT, new ClipRightSubStyleAdapter());
-			subPropertyAdapters.put(PropCMSubProperty.PSUB_CLIP_BOTTOM, new ClipBottomSubStyleAdapter());
-			subPropertyAdapters.put(PropCMSubProperty.PSUB_CLIP_LEFT, new ClipLeftSubStyleAdapter());
-		}
-	}
-
-	/**
-	 * 
-	 */
-	public boolean isModified() {
-		return (fModified != null && fModified.size() != 0);
-	}
-
-	/**
-	 * 
-	 */
-	public Enumeration properties() {
-		return fProperties.keys();
-	}
-
-	/**
-	 * 
-	 */
-	public Iterator propertiesModified() {
-		if (fModified != null) {
-			return ((Collection) fModified.clone()).iterator();
-		}
-		else
-			return new Iterator() {
-				public boolean hasNext() {
-					return false;
-				}
-
-				public Object next() {
-					return null;
-				}
-
-				public void remove() {
-				}
-			};
-	}
-
-	/**
-	 * This function expands the value of shorthand 'prop' to 'foreign'
-	 * context. Note that if this has parent shorthand properties of 'prop',
-	 * they are all expanded to 'foreign' context.
-	 */
-	protected void recursiveExtract(PropCMProperty prop, CSSPropertyContext foreign) {
-		// expand shorthand property
-		for (int i = 0; i < prop.getShorthandContainerCount(); i++) {
-			recursiveExtract(prop.shorthandContainerAt(i), foreign);
-		}
-		String str = get(prop.getName());
-		if (str == null || str.trim().length() == 0)
-			str = foreign.get(prop.getName());
-		if (str != null && str.trim().length() > 0) {
-			IShorthandAdapter adapter = (IShorthandAdapter) shorthandAdapters.get(prop);
-			if (adapter != null) {
-				adapter.expand(str, foreign);
-				foreign.set(prop.getName(), "");//$NON-NLS-1$
-			}
-		}
-	}
-
-	/**
-	 * 
-	 */
-	protected void removeDescendants(PropCMProperty prop) {
-		if (prop.isShorthand()) {
-			// remove properties
-			int n = prop.getNumChild();
-			for (int i = 0; i < n; i++) {
-				Object obj = prop.getChildAt(i);
-				if (obj instanceof PropCMProperty) {
-					removeDescendants((PropCMProperty) obj);
-
-					String str = get(obj.toString());
-					if (str != null && str.length() > 0)
-						set(obj.toString(), "");//$NON-NLS-1$
-				}
-			}
-		}
-	}
-
-	/**
-	 * 
-	 */
-	public void resetModified() {
-		if (fModified != null)
-			fModified.clear();
-	}
-
-	/**
-	 * This function sets the pair of 'prop'/'value'. If shorthand properties
-	 * related to 'prop' are already defined, they will be expanded to avoid
-	 * property confliction. If descendant properties of 'prop' are already
-	 * defined, they will be removed to avoid property confliction.
-	 * 
-	 */
-	public void set(org.eclipse.wst.css.core.internal.contentmodel.PropCMProperty prop, java.lang.String value) throws org.w3c.dom.DOMException {
-		if (prop instanceof PropCMSubProperty) {
-			ISubPropertyAdapter adapter = (ISubPropertyAdapter) subPropertyAdapters.get(prop.getName());
-			if (adapter != null) {
-				adapter.set(this, value);
-				return;
-			}
-		}
-		if (prop.getShorthandContainerCount() > 0) {
-			// expand shorthand property
-			CSSPropertyContext context = new CSSPropertyContext();
-			for (int i = 0; i < prop.getShorthandContainerCount(); i++) {
-				recursiveExtract(prop.shorthandContainerAt(i), context);
-			}
-			Enumeration properties = context.properties();
-			while (properties.hasMoreElements()) {
-				String propForeign = properties.nextElement().toString();
-				set(propForeign, context.get(propForeign));
-			}
-		}
-
-		removeDescendants(prop);
-
-		set(prop.getName(), value);
-	}
-
-	/**
-	 * This function sets the pair of 'propName'/'value' regardless of its
-	 * shorthand properties.
-	 */
-	protected void set(String propName, String value) throws org.w3c.dom.DOMException {
-		String key = propName;
-		if (value == null)
-			fProperties.remove(key);
-		else
-			fProperties.put(key, value);
-		if (fModified == null)
-			fModified = new HashSet();
-		fModified.add(key);
-	}
-
-	/**
-	 * 
-	 */
-	public void setAzimuth(String azimuth) throws org.w3c.dom.DOMException {
-		set(PropCMProperty.getInstanceOf(PropCMProperty.P_AZIMUTH), azimuth);
-	}
-
-	/**
-	 * 
-	 */
-	public void setBackground(String background) throws org.w3c.dom.DOMException {
-		set(PropCMProperty.getInstanceOf(PropCMProperty.P_BG), background);
-	}
-
-	/**
-	 * 
-	 */
-	public void setBackgroundAttachment(String backgroundAttachment) throws org.w3c.dom.DOMException {
-		set(PropCMProperty.getInstanceOf(PropCMProperty.P_BG_ATTACHMENT), backgroundAttachment);
-	}
-
-	/**
-	 * 
-	 */
-	public void setBackgroundColor(String backgroundColor) throws org.w3c.dom.DOMException {
-		set(PropCMProperty.getInstanceOf(PropCMProperty.P_BG_COLOR), backgroundColor);
-	}
-
-	/**
-	 * 
-	 */
-	public void setBackgroundImage(String backgroundImage) throws org.w3c.dom.DOMException {
-		set(PropCMProperty.getInstanceOf(PropCMProperty.P_BG_IMAGE), backgroundImage);
-	}
-
-	/**
-	 * 
-	 */
-	public void setBackgroundPosition(String backgroundPosition) throws org.w3c.dom.DOMException {
-		set(PropCMProperty.getInstanceOf(PropCMProperty.P_BG_POSITION), backgroundPosition);
-	}
-
-	/**
-	 * 
-	 */
-	public void setBackgroundPositionX(java.lang.String backgroundPositionX) throws org.w3c.dom.DOMException {
-		set(PropCMSubProperty.getInstanceOf(PropCMSubProperty.PSUB_BG_POSITION_X), backgroundPositionX);
-		/*
-		 * String newValue = null; String valH = backgroundPositionX; String
-		 * valV = getBackgroundPositionY(); if (valV == null ||
-		 * valV.length()== 0) newValue = valH; else if (valH == null ||
-		 * valH.length() == 0) { Collection valX =
-		 * PropCMSubProperty.getInstanceOf(PropCMSubProperty.PSUB_BG_POSITION_X).getValues();
-		 * Collection valY =
-		 * PropCMSubProperty.getInstanceOf(PropCMSubProperty.PSUB_BG_POSITION_Y).getValues();
-		 * PropCMUtil.minus(valY,valX); Iterator it = valY.iterator();
-		 * while(it.hasNext()) { Object obj = it.next(); if
-		 * (obj.toString().equals(valV.toLowerCase())) { // need not
-		 * compensate for ... newValue = valV; break; } } // compensate for
-		 * Horizontal value if (newValue == null) newValue = "0% " + valV; }
-		 * else newValue = valH + " " + valV; setBackgroundPosition(newValue);
-		 */
-	}
-
-	/**
-	 * 
-	 */
-	public void setBackgroundPositionY(java.lang.String backgroundPositionY) throws org.w3c.dom.DOMException {
-		set(PropCMSubProperty.getInstanceOf(PropCMSubProperty.PSUB_BG_POSITION_Y), backgroundPositionY);
-		/*
-		 * String newValue = null; String valH = getBackgroundPositionX();
-		 * String valV = backgroundPositionY; if (valV == null ||
-		 * valV.length()== 0) newValue = valH; else if (valH == null ||
-		 * valH.length() == 0) { Collection valX =
-		 * PropCMSubProperty.getInstanceOf(PropCMSubProperty.PSUB_BG_POSITION_X).getValues();
-		 * Collection valY =
-		 * PropCMSubProperty.getInstanceOf(PropCMSubProperty.PSUB_BG_POSITION_Y).getValues();
-		 * PropCMUtil.minus(valY,valX); Iterator it = valY.iterator();
-		 * while(it.hasNext()) { Object obj = it.next(); if
-		 * (obj.toString().equals(valV.toLowerCase())) { // need not
-		 * compensate for ... newValue = valV; break; } } // compensate for
-		 * Horizontal value if (newValue == null) newValue = "0% " + valV; }
-		 * else newValue = valH + " " + valV; setBackgroundPosition(newValue);
-		 */
-	}
-
-	/**
-	 * 
-	 */
-	public void setBackgroundRepeat(String backgroundRepeat) throws org.w3c.dom.DOMException {
-		set(PropCMProperty.getInstanceOf(PropCMProperty.P_BG_REPEAT), backgroundRepeat);
-	}
-
-	/**
-	 * 
-	 */
-	public void setBorder(String border) throws org.w3c.dom.DOMException {
-		set(PropCMProperty.getInstanceOf(PropCMProperty.P_BORDER), border);
-	}
-
-	/**
-	 * 
-	 */
-	public void setBorderBottom(String borderBottom) throws org.w3c.dom.DOMException {
-		set(PropCMProperty.getInstanceOf(PropCMProperty.P_BORDER_BOTTOM), borderBottom);
-	}
-
-	/**
-	 * 
-	 */
-	public void setBorderBottomColor(String borderBottomColor) throws org.w3c.dom.DOMException {
-		set(PropCMProperty.getInstanceOf(PropCMProperty.P_BORDER_BOTTOM_COLOR), borderBottomColor);
-	}
-
-	/**
-	 * 
-	 */
-	public void setBorderBottomStyle(String borderBottomStyle) throws org.w3c.dom.DOMException {
-		set(PropCMProperty.getInstanceOf(PropCMProperty.P_BORDER_BOTTOM_STYLE), borderBottomStyle);
-	}
-
-	/**
-	 * 
-	 */
-	public void setBorderBottomWidth(String borderBottomWidth) throws org.w3c.dom.DOMException {
-		set(PropCMProperty.getInstanceOf(PropCMProperty.P_BORDER_BOTTOM_WIDTH), borderBottomWidth);
-	}
-
-	/**
-	 * 
-	 */
-	public void setBorderCollapse(String borderCollapse) throws org.w3c.dom.DOMException {
-		set(PropCMProperty.getInstanceOf(PropCMProperty.P_BORDER_COLLAPSE), borderCollapse);
-	}
-
-	/**
-	 * 
-	 */
-	public void setBorderColor(String borderColor) throws org.w3c.dom.DOMException {
-		set(PropCMProperty.getInstanceOf(PropCMProperty.P_BORDER_COLOR), borderColor);
-	}
-
-	/**
-	 * 
-	 */
-	public void setBorderLeft(String borderLeft) throws org.w3c.dom.DOMException {
-		set(PropCMProperty.getInstanceOf(PropCMProperty.P_BORDER_LEFT), borderLeft);
-	}
-
-	/**
-	 * 
-	 */
-	public void setBorderLeftColor(String borderLeftColor) throws org.w3c.dom.DOMException {
-		set(PropCMProperty.getInstanceOf(PropCMProperty.P_BORDER_LEFT_COLOR), borderLeftColor);
-	}
-
-	/**
-	 * 
-	 */
-	public void setBorderLeftStyle(String borderLeftStyle) throws org.w3c.dom.DOMException {
-		set(PropCMProperty.getInstanceOf(PropCMProperty.P_BORDER_LEFT_STYLE), borderLeftStyle);
-	}
-
-	/**
-	 * 
-	 */
-	public void setBorderLeftWidth(String borderLeftWidth) throws org.w3c.dom.DOMException {
-		set(PropCMProperty.getInstanceOf(PropCMProperty.P_BORDER_LEFT_WIDTH), borderLeftWidth);
-	}
-
-	/**
-	 * 
-	 */
-	public void setBorderRight(String borderRight) throws org.w3c.dom.DOMException {
-		set(PropCMProperty.getInstanceOf(PropCMProperty.P_BORDER_RIGHT), borderRight);
-	}
-
-	/**
-	 * 
-	 */
-	public void setBorderRightColor(String borderRightColor) throws org.w3c.dom.DOMException {
-		set(PropCMProperty.getInstanceOf(PropCMProperty.P_BORDER_RIGHT_COLOR), borderRightColor);
-	}
-
-	/**
-	 * 
-	 */
-	public void setBorderRightStyle(String borderRightStyle) throws org.w3c.dom.DOMException {
-		set(PropCMProperty.getInstanceOf(PropCMProperty.P_BORDER_RIGHT_STYLE), borderRightStyle);
-	}
-
-	/**
-	 * 
-	 */
-	public void setBorderRightWidth(String borderRightWidth) throws org.w3c.dom.DOMException {
-		set(PropCMProperty.getInstanceOf(PropCMProperty.P_BORDER_RIGHT_WIDTH), borderRightWidth);
-	}
-
-	/**
-	 * 
-	 */
-	public void setBorderSpacing(String borderSpacing) throws org.w3c.dom.DOMException {
-		set(PropCMProperty.getInstanceOf(PropCMProperty.P_BORDER_SPACING), borderSpacing);
-	}
-
-	/**
-	 * 
-	 */
-	public void setBorderStyle(String borderStyle) throws org.w3c.dom.DOMException {
-		set(PropCMProperty.getInstanceOf(PropCMProperty.P_BORDER_STYLE), borderStyle);
-	}
-
-	/**
-	 * 
-	 */
-	public void setBorderTop(String borderTop) throws org.w3c.dom.DOMException {
-		set(PropCMProperty.getInstanceOf(PropCMProperty.P_BORDER_TOP), borderTop);
-	}
-
-	/**
-	 * 
-	 */
-	public void setBorderTopColor(String borderTopColor) throws org.w3c.dom.DOMException {
-		set(PropCMProperty.getInstanceOf(PropCMProperty.P_BORDER_TOP_COLOR), borderTopColor);
-	}
-
-	/**
-	 * 
-	 */
-	public void setBorderTopStyle(String borderTopStyle) throws org.w3c.dom.DOMException {
-		set(PropCMProperty.getInstanceOf(PropCMProperty.P_BORDER_TOP_STYLE), borderTopStyle);
-	}
-
-	/**
-	 * 
-	 */
-	public void setBorderTopWidth(String borderTopWidth) throws org.w3c.dom.DOMException {
-		set(PropCMProperty.getInstanceOf(PropCMProperty.P_BORDER_TOP_WIDTH), borderTopWidth);
-	}
-
-	/**
-	 * 
-	 */
-	public void setBorderWidth(String borderWidth) throws org.w3c.dom.DOMException {
-		set(PropCMProperty.getInstanceOf(PropCMProperty.P_BORDER_WIDTH), borderWidth);
-	}
-
-	/**
-	 * 
-	 */
-	public void setBottom(String bottom) throws org.w3c.dom.DOMException {
-		set(PropCMProperty.getInstanceOf(PropCMProperty.P_BOTTOM), bottom);
-	}
-
-	/**
-	 * 
-	 */
-	public void setCaptionSide(String captionSide) throws org.w3c.dom.DOMException {
-		set(PropCMProperty.getInstanceOf(PropCMProperty.P_CAPTION_SIDE), captionSide);
-	}
-
-	/**
-	 * 
-	 */
-	public void setClear(String clear) throws org.w3c.dom.DOMException {
-		set(PropCMProperty.getInstanceOf(PropCMProperty.P_CLEAR), clear);
-	}
-
-	/**
-	 * 
-	 */
-	public void setClip(String clip) throws org.w3c.dom.DOMException {
-		set(PropCMProperty.getInstanceOf(PropCMProperty.P_CLIP), clip);
-	}
-
-	/**
-	 * 
-	 */
-	public void setClipBottom(java.lang.String clip) throws org.w3c.dom.DOMException {
-		set(PropCMSubProperty.getInstanceOf(PropCMSubProperty.PSUB_CLIP_BOTTOM), clip);
-	}
-
-	/**
-	 * 
-	 */
-	public void setClipLeft(java.lang.String clip) throws org.w3c.dom.DOMException {
-		set(PropCMSubProperty.getInstanceOf(PropCMSubProperty.PSUB_CLIP_LEFT), clip);
-	}
-
-	/**
-	 * 
-	 */
-	public void setClipRight(java.lang.String clip) throws org.w3c.dom.DOMException {
-		set(PropCMSubProperty.getInstanceOf(PropCMSubProperty.PSUB_CLIP_RIGHT), clip);
-	}
-
-	/**
-	 * 
-	 */
-	public void setClipTop(java.lang.String clip) throws org.w3c.dom.DOMException {
-		set(PropCMSubProperty.getInstanceOf(PropCMSubProperty.PSUB_CLIP_TOP), clip);
-	}
-
-	/**
-	 * 
-	 */
-	public void setColor(String color) throws org.w3c.dom.DOMException {
-		set(PropCMProperty.getInstanceOf(PropCMProperty.P_COLOR), color);
-	}
-
-	/**
-	 * 
-	 */
-	public void setContent(String content) throws org.w3c.dom.DOMException {
-		set(PropCMProperty.getInstanceOf(PropCMProperty.P_CONTENT), content);
-	}
-
-	/**
-	 * 
-	 */
-	public void setCounterIncrement(String counterIncrement) throws org.w3c.dom.DOMException {
-		set(PropCMProperty.getInstanceOf(PropCMProperty.P_COUNTER_INCREMENT), counterIncrement);
-	}
-
-	/**
-	 * 
-	 */
-	public void setCounterReset(String counterReset) throws org.w3c.dom.DOMException {
-		set(PropCMProperty.getInstanceOf(PropCMProperty.P_COUNTER_RESET), counterReset);
-	}
-
-	/**
-	 * 
-	 */
-	public void setCssFloat(String cssFloat) throws org.w3c.dom.DOMException {
-		set(PropCMProperty.getInstanceOf(PropCMProperty.P_FLOAT), cssFloat);
-	}
-
-	/**
-	 * 
-	 */
-	public void setCue(String cue) throws org.w3c.dom.DOMException {
-		set(PropCMProperty.getInstanceOf(PropCMProperty.P_CUE), cue);
-	}
-
-	/**
-	 * 
-	 */
-	public void setCueAfter(String cueAfter) throws org.w3c.dom.DOMException {
-		set(PropCMProperty.getInstanceOf(PropCMProperty.P_CUE_AFTER), cueAfter);
-	}
-
-	/**
-	 * 
-	 */
-	public void setCueBefore(String cueBefore) throws org.w3c.dom.DOMException {
-		set(PropCMProperty.getInstanceOf(PropCMProperty.P_CUE_BEFORE), cueBefore);
-	}
-
-	/**
-	 * 
-	 */
-	public void setCursor(String cursor) throws org.w3c.dom.DOMException {
-		set(PropCMProperty.getInstanceOf(PropCMProperty.P_CURSOR), cursor);
-	}
-
-	/**
-	 * 
-	 */
-	public void setDirection(String direction) throws org.w3c.dom.DOMException {
-		set(PropCMProperty.getInstanceOf(PropCMProperty.P_DIRECTION), direction);
-	}
-
-	/**
-	 * 
-	 */
-	public void setDisplay(String display) throws org.w3c.dom.DOMException {
-		set(PropCMProperty.getInstanceOf(PropCMProperty.P_DISPLAY), display);
-	}
-
-	/**
-	 * 
-	 */
-	public void setElevation(String elevation) throws org.w3c.dom.DOMException {
-		set(PropCMProperty.getInstanceOf(PropCMProperty.P_ELEVATION), elevation);
-	}
-
-	/**
-	 * 
-	 */
-	public void setEmptyCells(String emptyCells) throws org.w3c.dom.DOMException {
-		set(PropCMProperty.getInstanceOf(PropCMProperty.P_EMPTY_CELLS), emptyCells);
-	}
-
-	/**
-	 * 
-	 */
-	public void setFont(String font) throws org.w3c.dom.DOMException {
-		set(PropCMProperty.getInstanceOf(PropCMProperty.P_FONT), font);
-	}
-
-	/**
-	 * 
-	 */
-	public void setFontFamily(String fontFamily) throws org.w3c.dom.DOMException {
-		set(PropCMProperty.getInstanceOf(PropCMProperty.P_FONT_FAMILY), fontFamily);
-	}
-
-	/**
-	 * 
-	 */
-	public void setFontSize(String fontSize) throws org.w3c.dom.DOMException {
-		set(PropCMProperty.getInstanceOf(PropCMProperty.P_FONT_SIZE), fontSize);
-	}
-
-	/**
-	 * 
-	 */
-	public void setFontSizeAdjust(String fontSizeAdjust) throws org.w3c.dom.DOMException {
-		set(PropCMProperty.getInstanceOf(PropCMProperty.P_FONT_SIZE_ADJUST), fontSizeAdjust);
-	}
-
-	/**
-	 * 
-	 */
-	public void setFontStretch(String fontStretch) throws org.w3c.dom.DOMException {
-		set(PropCMProperty.getInstanceOf(PropCMProperty.P_FONT_STRETCH), fontStretch);
-	}
-
-	/**
-	 * 
-	 */
-	public void setFontStyle(String fontStyle) throws org.w3c.dom.DOMException {
-		set(PropCMProperty.getInstanceOf(PropCMProperty.P_FONT_STYLE), fontStyle);
-	}
-
-	/**
-	 * 
-	 */
-	public void setFontVariant(String fontVariant) throws org.w3c.dom.DOMException {
-		set(PropCMProperty.getInstanceOf(PropCMProperty.P_FONT_VARIANT), fontVariant);
-	}
-
-	/**
-	 * 
-	 */
-	public void setFontWeight(String fontWeight) throws org.w3c.dom.DOMException {
-		set(PropCMProperty.getInstanceOf(PropCMProperty.P_FONT_WEIGHT), fontWeight);
-	}
-
-	/**
-	 * 
-	 */
-	public void setHeight(String height) throws org.w3c.dom.DOMException {
-		set(PropCMProperty.getInstanceOf(PropCMProperty.P_HEIGHT), height);
-	}
-
-	/**
-	 * 
-	 */
-	public void setLeft(String left) throws org.w3c.dom.DOMException {
-		set(PropCMProperty.getInstanceOf(PropCMProperty.P_LEFT), left);
-	}
-
-	/**
-	 * 
-	 */
-	public void setLetterSpacing(String letterSpacing) throws org.w3c.dom.DOMException {
-		set(PropCMProperty.getInstanceOf(PropCMProperty.P_LETTER_SPACING), letterSpacing);
-	}
-
-	/**
-	 * 
-	 */
-	public void setLineHeight(String lineHeight) throws org.w3c.dom.DOMException {
-		set(PropCMProperty.getInstanceOf(PropCMProperty.P_LINE_HEIGHT), lineHeight);
-	}
-
-	/**
-	 * 
-	 */
-	public void setListStyle(String listStyle) throws org.w3c.dom.DOMException {
-		set(PropCMProperty.getInstanceOf(PropCMProperty.P_LIST_STYLE), listStyle);
-	}
-
-	/**
-	 * 
-	 */
-	public void setListStyleImage(String listStyleImage) throws org.w3c.dom.DOMException {
-		set(PropCMProperty.getInstanceOf(PropCMProperty.P_LIST_STYLE_IMAGE), listStyleImage);
-	}
-
-	/**
-	 * 
-	 */
-	public void setListStylePosition(String listStylePosition) throws org.w3c.dom.DOMException {
-		set(PropCMProperty.getInstanceOf(PropCMProperty.P_LIST_STYLE_POSITION), listStylePosition);
-	}
-
-	/**
-	 * 
-	 */
-	public void setListStyleType(String listStyleType) throws org.w3c.dom.DOMException {
-		set(PropCMProperty.getInstanceOf(PropCMProperty.P_LIST_STYLE_TYPE), listStyleType);
-	}
-
-	/**
-	 * 
-	 */
-	public void setMargin(String margin) throws org.w3c.dom.DOMException {
-		set(PropCMProperty.getInstanceOf(PropCMProperty.P_MARGIN), margin);
-	}
-
-	/**
-	 * 
-	 */
-	public void setMarginBottom(String marginBottom) throws org.w3c.dom.DOMException {
-		set(PropCMProperty.getInstanceOf(PropCMProperty.P_MARGIN_BOTTOM), marginBottom);
-	}
-
-	/**
-	 * 
-	 */
-	public void setMarginLeft(String marginLeft) throws org.w3c.dom.DOMException {
-		set(PropCMProperty.getInstanceOf(PropCMProperty.P_MARGIN_LEFT), marginLeft);
-	}
-
-	/**
-	 * 
-	 */
-	public void setMarginRight(String marginRight) throws org.w3c.dom.DOMException {
-		set(PropCMProperty.getInstanceOf(PropCMProperty.P_MARGIN_RIGHT), marginRight);
-	}
-
-	/**
-	 * 
-	 */
-	public void setMarginTop(String marginTop) throws org.w3c.dom.DOMException {
-		set(PropCMProperty.getInstanceOf(PropCMProperty.P_MARGIN_TOP), marginTop);
-	}
-
-	/**
-	 * 
-	 */
-	public void setMarkerOffset(String markerOffset) throws org.w3c.dom.DOMException {
-		set(PropCMProperty.getInstanceOf(PropCMProperty.P_MARKER_OFFSET), markerOffset);
-	}
-
-	/**
-	 * 
-	 */
-	public void setMarks(String marks) throws org.w3c.dom.DOMException {
-		set(PropCMProperty.getInstanceOf(PropCMProperty.P_MARKS), marks);
-	}
-
-	/**
-	 * 
-	 */
-	public void setMaxHeight(String maxHeight) throws org.w3c.dom.DOMException {
-		set(PropCMProperty.getInstanceOf(PropCMProperty.P_MAX_HEIGHT), maxHeight);
-	}
-
-	/**
-	 * 
-	 */
-	public void setMaxWidth(String maxWidth) throws org.w3c.dom.DOMException {
-		set(PropCMProperty.getInstanceOf(PropCMProperty.P_MAX_WIDTH), maxWidth);
-	}
-
-	/**
-	 * 
-	 */
-	public void setMinHeight(String minHeight) throws org.w3c.dom.DOMException {
-		set(PropCMProperty.getInstanceOf(PropCMProperty.P_MIN_HEIGHT), minHeight);
-	}
-
-	/**
-	 * 
-	 */
-	public void setMinWidth(String minWidth) throws org.w3c.dom.DOMException {
-		set(PropCMProperty.getInstanceOf(PropCMProperty.P_MIN_WIDTH), minWidth);
-	}
-
-	/**
-	 * 
-	 */
-	public void setOrphans(String orphans) throws org.w3c.dom.DOMException {
-		set(PropCMProperty.getInstanceOf(PropCMProperty.P_ORPHANS), orphans);
-	}
-
-	/**
-	 * 
-	 */
-	public void setOutline(String outline) throws org.w3c.dom.DOMException {
-		set(PropCMProperty.getInstanceOf(PropCMProperty.P_OUTLINE), outline);
-	}
-
-	/**
-	 * 
-	 */
-	public void setOutlineColor(String outlineColor) throws org.w3c.dom.DOMException {
-		set(PropCMProperty.getInstanceOf(PropCMProperty.P_OUTLINE_COLOR), outlineColor);
-	}
-
-	/**
-	 * 
-	 */
-	public void setOutlineStyle(String outlineStyle) throws org.w3c.dom.DOMException {
-		set(PropCMProperty.getInstanceOf(PropCMProperty.P_OUTLINE_STYLE), outlineStyle);
-	}
-
-	/**
-	 * 
-	 */
-	public void setOutlineWidth(String outlineWidth) throws org.w3c.dom.DOMException {
-		set(PropCMProperty.getInstanceOf(PropCMProperty.P_OUTLINE_WIDTH), outlineWidth);
-	}
-
-	/**
-	 * 
-	 */
-	public void setOverflow(String overflow) throws org.w3c.dom.DOMException {
-		set(PropCMProperty.getInstanceOf(PropCMProperty.P_OVERFLOW), overflow);
-	}
-
-	/**
-	 * 
-	 */
-	public void setPadding(String padding) throws org.w3c.dom.DOMException {
-		set(PropCMProperty.getInstanceOf(PropCMProperty.P_PADDING), padding);
-	}
-
-	/**
-	 * 
-	 */
-	public void setPaddingBottom(String paddingBottom) throws org.w3c.dom.DOMException {
-		set(PropCMProperty.getInstanceOf(PropCMProperty.P_PADDING_BOTTOM), paddingBottom);
-	}
-
-	/**
-	 * 
-	 */
-	public void setPaddingLeft(String paddingLeft) throws org.w3c.dom.DOMException {
-		set(PropCMProperty.getInstanceOf(PropCMProperty.P_PADDING_LEFT), paddingLeft);
-	}
-
-	/**
-	 * 
-	 */
-	public void setPaddingRight(String paddingRight) throws org.w3c.dom.DOMException {
-		set(PropCMProperty.getInstanceOf(PropCMProperty.P_PADDING_RIGHT), paddingRight);
-	}
-
-	/**
-	 * 
-	 */
-	public void setPaddingTop(String paddingTop) throws org.w3c.dom.DOMException {
-		set(PropCMProperty.getInstanceOf(PropCMProperty.P_PADDING_TOP), paddingTop);
-	}
-
-	/**
-	 * 
-	 */
-	public void setPage(String page) throws org.w3c.dom.DOMException {
-		set(PropCMProperty.getInstanceOf(PropCMProperty.P_PAGE), page);
-	}
-
-	/**
-	 * 
-	 */
-	public void setPageBreakAfter(String pageBreakAfter) throws org.w3c.dom.DOMException {
-		set(PropCMProperty.getInstanceOf(PropCMProperty.P_PAGE_BREAK_AFTER), pageBreakAfter);
-	}
-
-	/**
-	 * 
-	 */
-	public void setPageBreakBefore(String pageBreakBefore) throws org.w3c.dom.DOMException {
-		set(PropCMProperty.getInstanceOf(PropCMProperty.P_PAGE_BREAK_BEFORE), pageBreakBefore);
-	}
-
-	/**
-	 * 
-	 */
-	public void setPageBreakInside(String pageBreakInside) throws org.w3c.dom.DOMException {
-		set(PropCMProperty.getInstanceOf(PropCMProperty.P_PAGE_BREAK_INSIDE), pageBreakInside);
-	}
-
-	/**
-	 * 
-	 */
-	public void setPause(String pause) throws org.w3c.dom.DOMException {
-		set(PropCMProperty.getInstanceOf(PropCMProperty.P_PAUSE), pause);
-	}
-
-	/**
-	 * 
-	 */
-	public void setPauseAfter(String pauseAfter) throws org.w3c.dom.DOMException {
-		set(PropCMProperty.getInstanceOf(PropCMProperty.P_PAUSE_AFTER), pauseAfter);
-	}
-
-	/**
-	 * 
-	 */
-	public void setPauseBefore(String pauseBefore) throws org.w3c.dom.DOMException {
-		set(PropCMProperty.getInstanceOf(PropCMProperty.P_PAUSE_BEFORE), pauseBefore);
-	}
-
-	/**
-	 * 
-	 */
-	public void setPitch(String pitch) throws org.w3c.dom.DOMException {
-		set(PropCMProperty.getInstanceOf(PropCMProperty.P_PITCH), pitch);
-	}
-
-	/**
-	 * 
-	 */
-	public void setPitchRange(String pitchRange) throws org.w3c.dom.DOMException {
-		set(PropCMProperty.getInstanceOf(PropCMProperty.P_PITCH_RANGE), pitchRange);
-	}
-
-	/**
-	 * 
-	 */
-	public void setPlayDuring(String playDuring) throws org.w3c.dom.DOMException {
-		set(PropCMProperty.getInstanceOf(PropCMProperty.P_PLAY_DURING), playDuring);
-	}
-
-	/**
-	 * 
-	 */
-	public void setPosition(String position) throws org.w3c.dom.DOMException {
-		set(PropCMProperty.getInstanceOf(PropCMProperty.P_POSITION), position);
-	}
-
-	/**
-	 * 
-	 */
-	public void setQuotes(String quotes) throws org.w3c.dom.DOMException {
-		set(PropCMProperty.getInstanceOf(PropCMProperty.P_QUOTES), quotes);
-	}
-
-	/**
-	 * 
-	 */
-	public void setRichness(String richness) throws org.w3c.dom.DOMException {
-		set(PropCMProperty.getInstanceOf(PropCMProperty.P_RICHNESS), richness);
-	}
-
-	/**
-	 * 
-	 */
-	public void setRight(String right) throws org.w3c.dom.DOMException {
-		set(PropCMProperty.getInstanceOf(PropCMProperty.P_RIGHT), right);
-	}
-
-	/**
-	 * 
-	 */
-	public void setSize(String size) throws org.w3c.dom.DOMException {
-		set(PropCMProperty.getInstanceOf(PropCMProperty.P_SIZE), size);
-	}
-
-	/**
-	 * 
-	 */
-	public void setSpeak(String speak) throws org.w3c.dom.DOMException {
-		set(PropCMProperty.getInstanceOf(PropCMProperty.P_SPEAK), speak);
-	}
-
-	/**
-	 * 
-	 */
-	public void setSpeakHeader(String speakHeader) throws org.w3c.dom.DOMException {
-		set(PropCMProperty.getInstanceOf(PropCMProperty.P_SPEAK_HEADER), speakHeader);
-	}
-
-	/**
-	 * 
-	 */
-	public void setSpeakNumeral(String speakNumeral) throws org.w3c.dom.DOMException {
-		set(PropCMProperty.getInstanceOf(PropCMProperty.P_SPEAK_NUMERAL), speakNumeral);
-	}
-
-	/**
-	 * 
-	 */
-	public void setSpeakPunctuation(String speakPunctuation) throws org.w3c.dom.DOMException {
-		set(PropCMProperty.getInstanceOf(PropCMProperty.P_SPEAK_PUNCTUATION), speakPunctuation);
-	}
-
-	/**
-	 * 
-	 */
-	public void setSpeechRate(String speechRate) throws org.w3c.dom.DOMException {
-		set(PropCMProperty.getInstanceOf(PropCMProperty.P_SPEECH_RATE), speechRate);
-	}
-
-	/**
-	 * 
-	 */
-	public void setStress(String stress) throws org.w3c.dom.DOMException {
-		set(PropCMProperty.getInstanceOf(PropCMProperty.P_STRESS), stress);
-	}
-
-	/**
-	 * 
-	 */
-	public void setTableLayout(String tableLayout) throws org.w3c.dom.DOMException {
-		set(PropCMProperty.getInstanceOf(PropCMProperty.P_TABLE_LAYOUT), tableLayout);
-	}
-
-	/**
-	 * 
-	 */
-	public void setTextAlign(String textAlign) throws org.w3c.dom.DOMException {
-		set(PropCMProperty.getInstanceOf(PropCMProperty.P_TEXT_ALIGN), textAlign);
-	}
-
-	/**
-	 * 
-	 */
-	public void setTextDecoration(String textDecoration) throws org.w3c.dom.DOMException {
-		set(PropCMProperty.getInstanceOf(PropCMProperty.P_TEXT_DECORATION), textDecoration);
-	}
-
-	/**
-	 * 
-	 */
-	public void setTextIndent(String textIndent) throws org.w3c.dom.DOMException {
-		set(PropCMProperty.getInstanceOf(PropCMProperty.P_TEXT_INDENT), textIndent);
-	}
-
-	/**
-	 * 
-	 */
-	public void setTextShadow(String textShadow) throws org.w3c.dom.DOMException {
-		set(PropCMProperty.getInstanceOf(PropCMProperty.P_TEXT_SHADOW), textShadow);
-	}
-
-	/**
-	 * 
-	 */
-	public void setTextTransform(String textTransform) throws org.w3c.dom.DOMException {
-		set(PropCMProperty.getInstanceOf(PropCMProperty.P_TEXT_TRANSFORM), textTransform);
-	}
-
-	/**
-	 * 
-	 */
-	public void setTop(String top) throws org.w3c.dom.DOMException {
-		set(PropCMProperty.getInstanceOf(PropCMProperty.P_TOP), top);
-	}
-
-	/**
-	 * 
-	 */
-	public void setUnicodeBidi(String unicodeBidi) throws org.w3c.dom.DOMException {
-		set(PropCMProperty.getInstanceOf(PropCMProperty.P_UNICODE_BIDI), unicodeBidi);
-	}
-
-	/**
-	 * 
-	 */
-	public void setVerticalAlign(String verticalAlign) throws org.w3c.dom.DOMException {
-		set(PropCMProperty.getInstanceOf(PropCMProperty.P_VERTICAL_ALIGN), verticalAlign);
-	}
-
-	/**
-	 * 
-	 */
-	public void setVisibility(String visibility) throws org.w3c.dom.DOMException {
-		set(PropCMProperty.getInstanceOf(PropCMProperty.P_VISIBILITY), visibility);
-	}
-
-	/**
-	 * 
-	 */
-	public void setVoiceFamily(String voiceFamily) throws org.w3c.dom.DOMException {
-		set(PropCMProperty.getInstanceOf(PropCMProperty.P_VOICE_FAMILY), voiceFamily);
-	}
-
-	/**
-	 * 
-	 */
-	public void setVolume(String volume) throws org.w3c.dom.DOMException {
-		set(PropCMProperty.getInstanceOf(PropCMProperty.P_VOLUME), volume);
-	}
-
-	/**
-	 * 
-	 */
-	public void setWhiteSpace(String whiteSpace) throws org.w3c.dom.DOMException {
-		set(PropCMProperty.getInstanceOf(PropCMProperty.P_WHITE_SPACE), whiteSpace);
-	}
-
-	/**
-	 * 
-	 */
-	public void setWidows(String widows) throws org.w3c.dom.DOMException {
-		set(PropCMProperty.getInstanceOf(PropCMProperty.P_WIDOWS), widows);
-	}
-
-	/**
-	 * 
-	 */
-	public void setWidth(String width) throws org.w3c.dom.DOMException {
-		set(PropCMProperty.getInstanceOf(PropCMProperty.P_WIDTH), width);
-	}
-
-	/**
-	 * 
-	 */
-	public void setWordSpacing(String wordSpacing) throws org.w3c.dom.DOMException {
-		set(PropCMProperty.getInstanceOf(PropCMProperty.P_WORD_SPACING), wordSpacing);
-	}
-
-	/**
-	 * 
-	 */
-	public void setZIndex(String zIndex) throws org.w3c.dom.DOMException {
-		set(PropCMProperty.getInstanceOf(PropCMProperty.P_Z_INDEX), zIndex);
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/util/declaration/ClipBottomSubStyleAdapter.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/util/declaration/ClipBottomSubStyleAdapter.java
deleted file mode 100644
index 28f06fc..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/util/declaration/ClipBottomSubStyleAdapter.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.core.internal.util.declaration;
-
-
-
-import org.eclipse.wst.css.core.internal.contentmodel.PropCMSubProperty;
-
-/**
- * For bottom value of 'clip' property's rect() function
- */
-public class ClipBottomSubStyleAdapter extends ClipSubStyleAdapter {
-
-	/**
-	 * 
-	 */
-	public ClipBottomSubStyleAdapter() {
-		super();
-	}
-
-	/**
-	 * 
-	 */
-	String get(org.w3c.dom.css.Rect rect) {
-		return rect.getBottom().getCssText();
-	}
-
-	/**
-	 * 
-	 */
-	int index() {
-		return 2;
-	}
-
-	/**
-	 * 
-	 */
-	public void set(ICSS2Properties properties, String value) throws org.w3c.dom.DOMException {
-		String top = properties.get(PropCMSubProperty.getInstanceOf(PropCMSubProperty.PSUB_CLIP_TOP));
-		String right = properties.get(PropCMSubProperty.getInstanceOf(PropCMSubProperty.PSUB_CLIP_RIGHT));
-		String left = properties.get(PropCMSubProperty.getInstanceOf(PropCMSubProperty.PSUB_CLIP_LEFT));
-
-		set(properties, top, right, value, left, value == null || value.length() == 0);
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/util/declaration/ClipLeftSubStyleAdapter.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/util/declaration/ClipLeftSubStyleAdapter.java
deleted file mode 100644
index 58ba873..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/util/declaration/ClipLeftSubStyleAdapter.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.core.internal.util.declaration;
-
-
-
-import org.eclipse.wst.css.core.internal.contentmodel.PropCMSubProperty;
-
-/**
- * For left value of 'clip' property's rect() function
- */
-public class ClipLeftSubStyleAdapter extends ClipSubStyleAdapter {
-
-	/**
-	 * 
-	 */
-	public ClipLeftSubStyleAdapter() {
-		super();
-	}
-
-	/**
-	 * 
-	 */
-	String get(org.w3c.dom.css.Rect rect) {
-		return rect.getLeft().getCssText();
-	}
-
-	/**
-	 * 
-	 */
-	int index() {
-		return 3;
-	}
-
-	/**
-	 * 
-	 */
-	public void set(ICSS2Properties properties, String value) throws org.w3c.dom.DOMException {
-		String top = properties.get(PropCMSubProperty.getInstanceOf(PropCMSubProperty.PSUB_CLIP_TOP));
-		String right = properties.get(PropCMSubProperty.getInstanceOf(PropCMSubProperty.PSUB_CLIP_RIGHT));
-		String bottom = properties.get(PropCMSubProperty.getInstanceOf(PropCMSubProperty.PSUB_CLIP_BOTTOM));
-
-		set(properties, top, right, bottom, value, value == null || value.length() == 0);
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/util/declaration/ClipRightSubStyleAdapter.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/util/declaration/ClipRightSubStyleAdapter.java
deleted file mode 100644
index 1560afc..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/util/declaration/ClipRightSubStyleAdapter.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.core.internal.util.declaration;
-
-
-
-import org.eclipse.wst.css.core.internal.contentmodel.PropCMSubProperty;
-
-/**
- * For right value of 'clip' property's rect() function
- */
-public class ClipRightSubStyleAdapter extends ClipSubStyleAdapter {
-
-	/**
-	 * 
-	 */
-	public ClipRightSubStyleAdapter() {
-		super();
-	}
-
-	/**
-	 * 
-	 */
-	String get(org.w3c.dom.css.Rect rect) {
-		return rect.getRight().getCssText();
-	}
-
-	/**
-	 * 
-	 */
-	int index() {
-		return 1;
-	}
-
-	/**
-	 * 
-	 */
-	public void set(ICSS2Properties properties, String value) throws org.w3c.dom.DOMException {
-		String top = properties.get(PropCMSubProperty.getInstanceOf(PropCMSubProperty.PSUB_CLIP_TOP));
-		String bottom = properties.get(PropCMSubProperty.getInstanceOf(PropCMSubProperty.PSUB_CLIP_BOTTOM));
-		String left = properties.get(PropCMSubProperty.getInstanceOf(PropCMSubProperty.PSUB_CLIP_LEFT));
-
-		set(properties, top, value, bottom, left, value == null || value.length() == 0);
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/util/declaration/ClipSubStyleAdapter.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/util/declaration/ClipSubStyleAdapter.java
deleted file mode 100644
index e019a34..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/util/declaration/ClipSubStyleAdapter.java
+++ /dev/null
@@ -1,132 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this 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.core.internal.util.declaration;
-
-
-
-import org.eclipse.wst.css.core.internal.contentmodel.IValID;
-import org.eclipse.wst.css.core.internal.contentmodel.PropCMProperty;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSValue;
-import org.w3c.dom.css.Rect;
-
-
-/**
- * Abstract class for clip sub-properties
- */
-abstract public class ClipSubStyleAdapter implements ISubPropertyAdapter {
-
-	/**
-	 * 
-	 */
-	public ClipSubStyleAdapter() {
-		super();
-	}
-
-	/**
-	 * 
-	 */
-	public String get(ICSS2Properties properties) {
-		String str = null;
-		Object obj = properties.get(PropCMProperty.getInstanceOf(PropCMProperty.P_CLIP));
-		if (obj != null) {
-			if (obj instanceof org.w3c.dom.css.Rect) {
-				str = get((org.w3c.dom.css.Rect) obj);
-			}
-			else {
-				if (obj instanceof ICSSValue) {
-					str = ((ICSSValue) obj).getCSSValueText();
-				}
-				else {
-					str = obj.toString();
-				}
-				str = str.trim().toLowerCase();
-				int pos = str.indexOf("rect(");//$NON-NLS-1$
-				if (pos >= 0) {
-					String subStr = null;
-					pos += 5;
-					int i = 0;
-					do {
-						int posEnd = str.indexOf(",", pos);//$NON-NLS-1$
-						if (posEnd < 0)
-							posEnd = str.indexOf(")", pos);//$NON-NLS-1$
-						if (posEnd < 0 && pos < str.length())
-							posEnd = str.length();
-						if (posEnd >= pos) {
-							subStr = str.substring(pos, posEnd);
-							pos = posEnd + 1;
-						}
-						else
-							pos = -1;
-					}
-					while (i++ < index() && pos > 0);
-
-					if (pos > 0)
-						str = subStr.trim();
-					else
-						str = null;
-				}
-				else
-					str = null;
-			}
-		}
-		return (str != null) ? str : "";//$NON-NLS-1$
-	}
-
-	/**
-	 * 
-	 */
-	abstract String get(Rect rect);
-
-	/**
-	 * 
-	 */
-	abstract int index();
-
-	/**
-	 * 
-	 */
-	public void set(ICSS2Properties properties, String value) throws org.w3c.dom.DOMException {
-	}
-
-	/**
-	 * Insert the method's description here. Creation date: (2001/10/04
-	 * 19:25:46)
-	 * 
-	 * @param properties
-	 *            org.eclipse.wst.css.core.util.declaration.ICSS2Properties
-	 * @param top
-	 *            java.lang.String
-	 * @param right
-	 *            java.lang.String
-	 * @param bottom
-	 *            java.lang.String
-	 * @param left
-	 *            java.lang.String
-	 * @param removeCheck
-	 *            boolean
-	 */
-	void set(ICSS2Properties properties, String top, String right, String bottom, String left, boolean removeCheck) {
-		if (top == null || top.length() == 0)
-			top = IValID.V_AUTO;
-		if (right == null || right.length() == 0)
-			right = IValID.V_AUTO;
-		if (bottom == null || bottom.length() == 0)
-			bottom = IValID.V_AUTO;
-		if (left == null || left.length() == 0)
-			left = IValID.V_AUTO;
-
-		if (removeCheck && top.trim().equalsIgnoreCase(IValID.V_AUTO) && right.trim().equalsIgnoreCase(IValID.V_AUTO) && bottom.trim().equalsIgnoreCase(IValID.V_AUTO) && left.trim().equalsIgnoreCase(IValID.V_AUTO)) {
-			properties.set(PropCMProperty.getInstanceOf(PropCMProperty.P_CLIP), null);
-		}
-		else
-			properties.set(PropCMProperty.getInstanceOf(PropCMProperty.P_CLIP), "rect(" + top + ", " + right + ", " + bottom + ", " + left + ")");//$NON-NLS-5$//$NON-NLS-4$//$NON-NLS-3$//$NON-NLS-2$//$NON-NLS-1$
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/util/declaration/ClipTopSubStyleAdapter.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/util/declaration/ClipTopSubStyleAdapter.java
deleted file mode 100644
index 71b5d53..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/util/declaration/ClipTopSubStyleAdapter.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.core.internal.util.declaration;
-
-
-
-import org.eclipse.wst.css.core.internal.contentmodel.PropCMSubProperty;
-
-/**
- * For top value of 'clip' property's rect() function
- */
-public class ClipTopSubStyleAdapter extends ClipSubStyleAdapter {
-
-	/**
-	 * 
-	 */
-	public ClipTopSubStyleAdapter() {
-		super();
-	}
-
-	/**
-	 * 
-	 */
-	String get(org.w3c.dom.css.Rect rect) {
-		return rect.getTop().getCssText();
-	}
-
-	/**
-	 * 
-	 */
-	int index() {
-		return 0;
-	}
-
-	/**
-	 * 
-	 */
-	public void set(ICSS2Properties properties, String value) throws org.w3c.dom.DOMException {
-		String right = properties.get(PropCMSubProperty.getInstanceOf(PropCMSubProperty.PSUB_CLIP_RIGHT));
-		String bottom = properties.get(PropCMSubProperty.getInstanceOf(PropCMSubProperty.PSUB_CLIP_BOTTOM));
-		String left = properties.get(PropCMSubProperty.getInstanceOf(PropCMSubProperty.PSUB_CLIP_LEFT));
-
-		set(properties, value, right, bottom, left, value == null || value.length() == 0);
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/util/declaration/FontShorthandAdapter.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/util/declaration/FontShorthandAdapter.java
deleted file mode 100644
index 41d49cc..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/util/declaration/FontShorthandAdapter.java
+++ /dev/null
@@ -1,240 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this 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.core.internal.util.declaration;
-
-
-
-import org.eclipse.wst.css.core.internal.contentmodel.IValID;
-import org.eclipse.wst.css.core.internal.contentmodel.PropCMProperty;
-import org.eclipse.wst.css.core.internal.parserz.CSSRegionContexts;
-import org.eclipse.wst.css.core.internal.parserz.CSSTextParser;
-import org.eclipse.wst.css.core.internal.parserz.CSSTextToken;
-
-
-/**
- * For 'font' property 'font' will be expanded to 'font-family', 'font-size',
- * 'font-style', 'font-variant', 'font-weight', 'line-height',
- */
-public class FontShorthandAdapter implements IShorthandAdapter {
-
-	/**
-	 * 
-	 */
-	public FontShorthandAdapter() {
-		super();
-	}
-
-	/**
-	 * 
-	 */
-	public boolean expand(String source, CSSPropertyContext dest) {
-		CSSTextParser parser = new CSSTextParser(CSSTextParser.MODE_DECLARATION_VALUE, source);
-		CSSTextToken[] tokens = parser.getTokens();
-		if (tokens.length <= 0) {
-			return false;
-		}
-		String style = null, variant = null, weight = null, size = null, height = null, family = null;
-		PropCMProperty propFont = PropCMProperty.getInstanceOf(PropCMProperty.P_FONT);
-		PropCMProperty propStyle = PropCMProperty.getInstanceOf(PropCMProperty.P_FONT_STYLE);
-		PropCMProperty propVariant = PropCMProperty.getInstanceOf(PropCMProperty.P_FONT_VARIANT);
-		PropCMProperty propWeight = PropCMProperty.getInstanceOf(PropCMProperty.P_FONT_WEIGHT);
-		PropCMProperty propSize = PropCMProperty.getInstanceOf(PropCMProperty.P_FONT_SIZE);
-		boolean bNormalSpecified = false;
-
-		int i = 0;
-		for (; i < tokens.length; i++) {
-			if (tokens[i].kind == CSSRegionContexts.CSS_DECLARATION_VALUE_IDENT) {
-				// first of all, check font idents
-				if (i == 0) {
-					for (int j = 0; j < propFont.getNumChild(); j++) {
-						Object obj = propFont.getChildAt(i);
-						if (obj instanceof String && tokens[i].image.compareToIgnoreCase(obj.toString()) == 0)
-							return false;
-					}
-				}
-				// value "normal" is shared !!
-				if (tokens[i].image.equalsIgnoreCase(IValID.V_NORMAL)) {
-					bNormalSpecified = true;
-				}
-				else {
-					if (propStyle.canHave(tokens[i].image))
-						style = tokens[i].image;
-					else if (propVariant.canHave(tokens[i].image))
-						variant = tokens[i].image;
-					else if (propWeight.canHave(tokens[i].image))
-						weight = tokens[i].image;
-					else if (propSize.canHave(tokens[i].image)) {
-						size = tokens[i].image;
-						break; // if size found, break loop
-					}
-				}
-			}
-			else if (tokens[i].kind == CSSRegionContexts.CSS_DECLARATION_VALUE_NUMBER && weight == null && propWeight.canHave(tokens[i].image)) {
-				weight = tokens[i].image;
-			}
-			else if (org.eclipse.wst.css.core.internal.util.CSSUtil.isLength(tokens[i]) || tokens[i].kind == CSSRegionContexts.CSS_DECLARATION_VALUE_NUMBER || tokens[i].kind == CSSRegionContexts.CSS_DECLARATION_VALUE_PERCENTAGE) {
-				size = tokens[i].image;
-				break; // if size found, break loop
-			}
-		}
-
-		if (bNormalSpecified) {
-			if (style == null)
-				style = IValID.V_NORMAL;
-			if (variant == null)
-				variant = IValID.V_NORMAL;
-			if (weight == null)
-				weight = IValID.V_NORMAL;
-		}
-
-		// skip whitespace
-		for (i++; i < tokens.length; i++) {
-			if (tokens[i].kind != CSSRegionContexts.CSS_S || tokens[i].kind != CSSRegionContexts.CSS_DECLARATION_VALUE_S)
-				break;
-		}
-
-		// line-height ?
-		if (i < tokens.length && tokens[i].kind == CSSRegionContexts.CSS_DECLARATION_VALUE_OPERATOR && tokens[i].image.equals("/")) { //$NON-NLS-1$
-			for (i++; i < tokens.length; i++) {
-				if (org.eclipse.wst.css.core.internal.util.CSSUtil.isLength(tokens[i]) || tokens[i].kind == CSSRegionContexts.CSS_DECLARATION_VALUE_PERCENTAGE || tokens[i].kind == CSSRegionContexts.CSS_DECLARATION_VALUE_NUMBER || tokens[i].kind == CSSRegionContexts.CSS_DECLARATION_VALUE_IDENT) {
-					height = tokens[i++].image;
-					break;
-				}
-			}
-		}
-
-		// font-family
-		StringBuffer buf = new StringBuffer();
-		for (; i < tokens.length; i++) {
-			if (tokens[i].kind == CSSRegionContexts.CSS_COMMENT)
-				buf.append(" ");//$NON-NLS-1$
-			else
-				buf.append(tokens[i].image);
-		}
-		family = buf.toString().trim();
-
-		dest.set(PropCMProperty.P_FONT_STYLE, style);
-		dest.set(PropCMProperty.P_FONT_VARIANT, variant);
-		dest.set(PropCMProperty.P_FONT_WEIGHT, weight);
-		dest.set(PropCMProperty.P_FONT_SIZE, size);
-		dest.set(PropCMProperty.P_LINE_HEIGHT, height);
-		dest.set(PropCMProperty.P_FONT_FAMILY, family);
-
-		return true;
-	}
-
-	/**
-	 * 
-	 */
-	public String extract(String source, PropCMProperty propDest) {
-		CSSTextParser parser = new CSSTextParser(CSSTextParser.MODE_DECLARATION_VALUE, source);
-		CSSTextToken[] tokens = parser.getTokens();
-		if (tokens.length <= 0) {
-			return null;
-		}
-		String style = null, variant = null, weight = null, size = null, height = null, family = null;
-		PropCMProperty propFont = PropCMProperty.getInstanceOf(PropCMProperty.P_FONT);
-		PropCMProperty propStyle = PropCMProperty.getInstanceOf(PropCMProperty.P_FONT_STYLE);
-		PropCMProperty propVariant = PropCMProperty.getInstanceOf(PropCMProperty.P_FONT_VARIANT);
-		PropCMProperty propWeight = PropCMProperty.getInstanceOf(PropCMProperty.P_FONT_WEIGHT);
-		PropCMProperty propSize = PropCMProperty.getInstanceOf(PropCMProperty.P_FONT_SIZE);
-		PropCMProperty propHeight = PropCMProperty.getInstanceOf(PropCMProperty.P_LINE_HEIGHT);
-		PropCMProperty propFamily = PropCMProperty.getInstanceOf(PropCMProperty.P_FONT_FAMILY);
-		boolean bNormalSpecified = false;
-
-		int i = 0;
-		for (; i < tokens.length; i++) {
-			if (tokens[i].kind == CSSRegionContexts.CSS_DECLARATION_VALUE_IDENT) {
-				// first of all, check font idents
-				if (i == 0) {
-					for (int j = 0; j < propFont.getNumChild(); j++) {
-						Object obj = propFont.getChildAt(i);
-						if (obj instanceof String && tokens[i].image.compareToIgnoreCase(obj.toString()) == 0)
-							return null;
-					}
-				}
-				// value "normal" is shared !!
-				if (tokens[i].image.equalsIgnoreCase(IValID.V_NORMAL)) {
-					bNormalSpecified = true;
-				}
-				else {
-					if (propStyle.canHave(tokens[i].image))
-						style = tokens[i].image;
-					else if (propVariant.canHave(tokens[i].image))
-						variant = tokens[i].image;
-					else if (propWeight.canHave(tokens[i].image))
-						weight = tokens[i].image;
-					else if (propSize.canHave(tokens[i].image)) {
-						size = tokens[i].image;
-						break; // if size found, break loop
-					}
-				}
-			}
-			else if (tokens[i].kind == CSSRegionContexts.CSS_DECLARATION_VALUE_NUMBER && weight == null && propWeight.canHave(tokens[i].image)) {
-				weight = tokens[i].image;
-			}
-			else if (org.eclipse.wst.css.core.internal.util.CSSUtil.isLength(tokens[i]) || tokens[i].kind == CSSRegionContexts.CSS_DECLARATION_VALUE_NUMBER || tokens[i].kind == CSSRegionContexts.CSS_DECLARATION_VALUE_PERCENTAGE) {
-				size = tokens[i].image;
-				break; // if size found, break loop
-			}
-		}
-
-		if (bNormalSpecified) {
-			if (style == null)
-				style = IValID.V_NORMAL;
-			if (variant == null)
-				variant = IValID.V_NORMAL;
-			if (weight == null)
-				weight = IValID.V_NORMAL;
-		}
-
-		// skip whitespace
-		for (i++; i < tokens.length; i++) {
-			if (tokens[i].kind != CSSRegionContexts.CSS_S || tokens[i].kind != CSSRegionContexts.CSS_DECLARATION_VALUE_S)
-				break;
-		}
-
-		// line-height ?
-		if (i < tokens.length && tokens[i].kind == CSSRegionContexts.CSS_DECLARATION_VALUE_OPERATOR && tokens[i].image.equals("/")) { //$NON-NLS-1$
-			for (i++; i < tokens.length; i++) {
-				if (org.eclipse.wst.css.core.internal.util.CSSUtil.isLength(tokens[i]) || tokens[i].kind == CSSRegionContexts.CSS_DECLARATION_VALUE_PERCENTAGE || tokens[i].kind == CSSRegionContexts.CSS_DECLARATION_VALUE_NUMBER || tokens[i].kind == CSSRegionContexts.CSS_DECLARATION_VALUE_IDENT) {
-					height = tokens[i++].image;
-					break;
-				}
-			}
-		}
-
-		// font-family
-		StringBuffer buf = new StringBuffer();
-		for (; i < tokens.length; i++) {
-			if (tokens[i].kind == CSSRegionContexts.CSS_COMMENT)
-				buf.append(" ");//$NON-NLS-1$
-			else
-				buf.append(tokens[i].image);
-		}
-		family = buf.toString().trim();
-
-		if (propStyle == propDest)
-			return style;
-		else if (propVariant == propDest)
-			return variant;
-		else if (propWeight == propDest)
-			return weight;
-		else if (propSize == propDest)
-			return size;
-		else if (propHeight == propDest)
-			return height;
-		else if (propFamily == propDest)
-			return family;
-		else
-			return null;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/util/declaration/ICSS2Properties.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/util/declaration/ICSS2Properties.java
deleted file mode 100644
index 02d518c..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/util/declaration/ICSS2Properties.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.wst.css.core.internal.util.declaration;
-
-
-
-import java.util.Enumeration;
-import java.util.Iterator;
-
-import org.eclipse.wst.css.core.internal.contentmodel.PropCMProperty;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSStyleDeclaration;
-import org.w3c.dom.css.CSS2Properties;
-
-
-/**
- * 
- */
-public interface ICSS2Properties extends CSS2Properties {
-
-	/**
-	 * 
-	 */
-	void applyFull(ICSSStyleDeclaration decl);
-
-	/**
-	 * 
-	 */
-	void applyModified(ICSSStyleDeclaration decl);
-
-	/**
-	 * 
-	 */
-	String get(PropCMProperty prop);
-
-	/**
-	 * 
-	 */
-	String getBackgroundPositionX();
-
-	/**
-	 * 
-	 */
-	String getBackgroundPositionY();
-
-	/**
-	 * 
-	 */
-	String getClipBottom();
-
-	/**
-	 * 
-	 */
-	String getClipLeft();
-
-	/**
-	 * 
-	 */
-	String getClipRight();
-
-	/**
-	 * 
-	 */
-	String getClipTop();
-
-	/**
-	 * 
-	 */
-	boolean isModified();
-
-	/**
-	 * 
-	 */
-	Enumeration properties();
-
-	/**
-	 * 
-	 */
-	Iterator propertiesModified();
-
-	/**
-	 * 
-	 */
-	void resetModified();
-
-	/**
-	 * 
-	 */
-	void set(PropCMProperty prop, String value) throws org.w3c.dom.DOMException;
-
-	/**
-	 * 
-	 */
-	void setBackgroundPositionX(String backgroundPosition) throws org.w3c.dom.DOMException;
-
-	/**
-	 * 
-	 */
-	void setBackgroundPositionY(String backgroundPosition) throws org.w3c.dom.DOMException;
-
-	/**
-	 * 
-	 */
-	void setClipBottom(String backgroundPosition) throws org.w3c.dom.DOMException;
-
-	/**
-	 * 
-	 */
-	void setClipLeft(String backgroundPosition) throws org.w3c.dom.DOMException;
-
-	/**
-	 * 
-	 */
-	void setClipRight(String backgroundPosition) throws org.w3c.dom.DOMException;
-
-	/**
-	 * 
-	 */
-	void setClipTop(String backgroundPosition) throws org.w3c.dom.DOMException;
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/util/declaration/IShorthandAdapter.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/util/declaration/IShorthandAdapter.java
deleted file mode 100644
index 5a91f0a..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/util/declaration/IShorthandAdapter.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.core.internal.util.declaration;
-
-
-
-import org.eclipse.wst.css.core.internal.contentmodel.PropCMProperty;
-
-/**
- * 
- */
-public interface IShorthandAdapter {
-
-	/**
-	 * 
-	 */
-	boolean expand(String source, CSSPropertyContext dest);
-
-	/**
-	 * 
-	 */
-	String extract(String source, PropCMProperty propDest);
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/util/declaration/ISubPropertyAdapter.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/util/declaration/ISubPropertyAdapter.java
deleted file mode 100644
index 7d87b6b..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/util/declaration/ISubPropertyAdapter.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.css.core.internal.util.declaration;
-
-
-
-/**
- * 
- */
-public interface ISubPropertyAdapter {
-
-	/**
-	 * 
-	 */
-	String get(ICSS2Properties properties);
-
-	/**
-	 * 
-	 */
-	void set(ICSS2Properties properties, String value) throws org.w3c.dom.DOMException;
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/util/declaration/ListStyleShorthandAdapter.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/util/declaration/ListStyleShorthandAdapter.java
deleted file mode 100644
index f602033..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/util/declaration/ListStyleShorthandAdapter.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.wst.css.core.internal.util.declaration;
-
-
-
-import org.eclipse.wst.css.core.internal.contentmodel.PropCMProperty;
-import org.eclipse.wst.css.core.internal.parserz.CSSRegionContexts;
-import org.eclipse.wst.css.core.internal.parserz.CSSTextParser;
-import org.eclipse.wst.css.core.internal.parserz.CSSTextToken;
-
-
-/**
- * For 'list-style' property 'list-style' will be expanded to
- * 'list-style-image', 'list-style-position', 'list-style-type',
- */
-public class ListStyleShorthandAdapter implements IShorthandAdapter {
-
-	/**
-	 * 
-	 */
-	public ListStyleShorthandAdapter() {
-		super();
-	}
-
-	/**
-	 * 
-	 */
-	public boolean expand(String source, CSSPropertyContext dest) {
-		CSSTextParser parser = new CSSTextParser(CSSTextParser.MODE_DECLARATION_VALUE, source);
-		CSSTextToken[] tokens = parser.getTokens();
-		if (tokens.length <= 0) {
-			return false;
-		}
-		String image = "", pos = "", type = "";//$NON-NLS-3$//$NON-NLS-2$//$NON-NLS-1$
-		PropCMProperty propPos = PropCMProperty.getInstanceOf(PropCMProperty.P_LIST_STYLE_POSITION);
-		PropCMProperty propType = PropCMProperty.getInstanceOf(PropCMProperty.P_LIST_STYLE_TYPE);
-		PropCMProperty propImage = PropCMProperty.getInstanceOf(PropCMProperty.P_LIST_STYLE_IMAGE);
-
-		for (int i = 0; i < tokens.length; i++) {
-			if (tokens[i].kind == CSSRegionContexts.CSS_DECLARATION_VALUE_IDENT) {
-				if (propPos.canHave(tokens[i].image))
-					pos = tokens[i].image;
-				else { // value="none" is shared !!
-					if (propType.canHave(tokens[i].image))
-						type = tokens[i].image;
-					if (propImage.canHave(tokens[i].image))
-						image = tokens[i].image;
-				}
-			}
-			else if (tokens[i].kind == CSSRegionContexts.CSS_DECLARATION_VALUE_URI) {
-				image = tokens[i].image;
-			}
-		}
-
-		dest.set(propPos.getName(), pos);
-		dest.set(propType.getName(), type);
-		dest.set(propImage.getName(), image);
-
-		return true;
-	}
-
-	/**
-	 * 
-	 */
-	public String extract(String source, PropCMProperty propDest) {
-		CSSTextParser parser = new CSSTextParser(CSSTextParser.MODE_DECLARATION_VALUE, source);
-		CSSTextToken[] tokens = parser.getTokens();
-		if (tokens.length <= 0) {
-			return null;
-		}
-		String image = null, pos = null, type = null;
-		PropCMProperty propPos = PropCMProperty.getInstanceOf(PropCMProperty.P_LIST_STYLE_POSITION);
-		PropCMProperty propType = PropCMProperty.getInstanceOf(PropCMProperty.P_LIST_STYLE_TYPE);
-		PropCMProperty propImage = PropCMProperty.getInstanceOf(PropCMProperty.P_LIST_STYLE_IMAGE);
-
-		for (int i = 0; i < tokens.length; i++) {
-			if (tokens[i].kind == CSSRegionContexts.CSS_DECLARATION_VALUE_IDENT) {
-				if (propPos.canHave(tokens[i].image))
-					pos = tokens[i].image;
-				else { // value="none" is shared !!
-					if (propType.canHave(tokens[i].image))
-						type = tokens[i].image;
-					if (propImage.canHave(tokens[i].image))
-						image = tokens[i].image;
-				}
-			}
-			else if (tokens[i].kind == CSSRegionContexts.CSS_DECLARATION_VALUE_URI) {
-				image = tokens[i].image;
-			}
-		}
-
-		if (propPos == propDest)
-			return pos;
-		else if (propType == propDest)
-			return type;
-		else if (propImage == propDest)
-			return image;
-		else
-			return null;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/util/declaration/MarginShorthandAdapter.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/util/declaration/MarginShorthandAdapter.java
deleted file mode 100644
index b53afc6..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/util/declaration/MarginShorthandAdapter.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.wst.css.core.internal.util.declaration;
-
-
-
-import org.eclipse.wst.css.core.internal.contentmodel.PropCMProperty;
-import org.eclipse.wst.css.core.internal.parserz.CSSRegionContexts;
-import org.eclipse.wst.css.core.internal.parserz.CSSTextParser;
-import org.eclipse.wst.css.core.internal.parserz.CSSTextToken;
-
-
-/**
- * For 'margin' property 'margin' will be expanded to 'margin-top',
- * 'margin-right', 'margin-bottom', 'margin-left',
- */
-public class MarginShorthandAdapter implements IShorthandAdapter {
-
-	/**
-	 * 
-	 */
-	public MarginShorthandAdapter() {
-		super();
-	}
-
-	/**
-	 * 
-	 */
-	public boolean expand(String source, CSSPropertyContext dest) {
-		CSSTextParser parser = new CSSTextParser(CSSTextParser.MODE_DECLARATION_VALUE, source);
-		CSSTextToken[] tokens = parser.getTokens();
-		if (tokens.length <= 0) {
-			return false;
-		}
-		String[] idents = new String[4];
-		int j = 0;
-		for (int i = 0; i < tokens.length; i++) {
-			if (org.eclipse.wst.css.core.internal.util.CSSUtil.isLength(tokens[i]) || tokens[i].kind == CSSRegionContexts.CSS_DECLARATION_VALUE_NUMBER || tokens[i].kind == CSSRegionContexts.CSS_DECLARATION_VALUE_IDENT || tokens[i].kind == CSSRegionContexts.CSS_DECLARATION_VALUE_PERCENTAGE)
-				idents[j++] = tokens[i].image;
-			if (j == 4)
-				break;
-		}
-
-		String[] dests = new String[4];
-		if (j == 0)
-			return true;
-		else if (j == 1) {
-			dests[0] = dests[1] = dests[2] = dests[3] = idents[0];
-		}
-		else if (j == 2) {
-			dests[0] = dests[2] = idents[0];
-			dests[1] = dests[3] = idents[1];
-		}
-		else if (j == 3) {
-			dests[0] = idents[0];
-			dests[1] = dests[3] = idents[1];
-			dests[2] = idents[2];
-		}
-		else {
-			for (int k = 0; k < 4; k++)
-				dests[k] = idents[k];
-		}
-		dest.set(PropCMProperty.P_MARGIN_TOP, dests[0]);
-		dest.set(PropCMProperty.P_MARGIN_RIGHT, dests[1]);
-		dest.set(PropCMProperty.P_MARGIN_BOTTOM, dests[2]);
-		dest.set(PropCMProperty.P_MARGIN_LEFT, dests[3]);
-
-		return true;
-
-	}
-
-	/**
-	 * 
-	 */
-	public String extract(String source, PropCMProperty propDest) {
-		CSSTextParser parser = new CSSTextParser(CSSTextParser.MODE_DECLARATION_VALUE, source);
-		CSSTextToken[] tokens = parser.getTokens();
-		if (tokens.length <= 0) {
-			return null;
-		}
-		String[] idents = new String[4];
-		int j = 0;
-		for (int i = 0; i < tokens.length; i++) {
-			if (org.eclipse.wst.css.core.internal.util.CSSUtil.isLength(tokens[i]) || tokens[i].kind == CSSRegionContexts.CSS_DECLARATION_VALUE_NUMBER || tokens[i].kind == CSSRegionContexts.CSS_DECLARATION_VALUE_IDENT || tokens[i].kind == CSSRegionContexts.CSS_DECLARATION_VALUE_PERCENTAGE)
-				idents[j++] = tokens[i].image;
-			if (j == 4)
-				break;
-		}
-
-		if (j == 0)
-			return null;
-		else if (j == 1)
-			return idents[0];
-		else if (j == 2) {
-			if (propDest.getName() == PropCMProperty.P_MARGIN_TOP || propDest.getName() == PropCMProperty.P_MARGIN_BOTTOM)
-				return idents[0];
-			else
-				return idents[1];
-		}
-		else if (j == 3) {
-			if (propDest.getName() == PropCMProperty.P_MARGIN_TOP)
-				return idents[0];
-			else if (propDest.getName() == PropCMProperty.P_MARGIN_BOTTOM)
-				return idents[2];
-			else
-				return idents[1];
-		}
-		else {
-			if (propDest.getName() == PropCMProperty.P_MARGIN_TOP)
-				return idents[0];
-			else if (propDest.getName() == PropCMProperty.P_MARGIN_RIGHT)
-				return idents[1];
-			else if (propDest.getName() == PropCMProperty.P_MARGIN_BOTTOM)
-				return idents[2];
-			else if (propDest.getName() == PropCMProperty.P_MARGIN_LEFT)
-				return idents[3];
-			else
-				return null;
-		}
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/util/declaration/PaddingShorthandAdapter.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/util/declaration/PaddingShorthandAdapter.java
deleted file mode 100644
index 5cde483..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/util/declaration/PaddingShorthandAdapter.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.wst.css.core.internal.util.declaration;
-
-
-
-import org.eclipse.wst.css.core.internal.contentmodel.PropCMProperty;
-import org.eclipse.wst.css.core.internal.parserz.CSSRegionContexts;
-import org.eclipse.wst.css.core.internal.parserz.CSSTextParser;
-import org.eclipse.wst.css.core.internal.parserz.CSSTextToken;
-
-
-/**
- * For 'padding' property 'padding' will be expanded to 'padding-top',
- * 'padding-right', 'padding-bottom', 'padding-left',
- */
-public class PaddingShorthandAdapter implements IShorthandAdapter {
-
-	/**
-	 * 
-	 */
-	public PaddingShorthandAdapter() {
-		super();
-	}
-
-	/**
-	 * 
-	 */
-	public boolean expand(String source, CSSPropertyContext dest) {
-		CSSTextParser parser = new CSSTextParser(CSSTextParser.MODE_DECLARATION_VALUE, source);
-		CSSTextToken[] tokens = parser.getTokens();
-		if (tokens.length <= 0) {
-			return false;
-		}
-		String[] idents = new String[4];
-		int j = 0;
-		for (int i = 0; i < tokens.length; i++) {
-			if (org.eclipse.wst.css.core.internal.util.CSSUtil.isLength(tokens[i]) || tokens[i].kind == CSSRegionContexts.CSS_DECLARATION_VALUE_NUMBER || tokens[i].kind == CSSRegionContexts.CSS_DECLARATION_VALUE_PERCENTAGE)
-				idents[j++] = tokens[i].image;
-			if (j == 4)
-				break;
-		}
-
-		String[] dests = new String[4];
-		if (j == 0)
-			return true;
-		else if (j == 1) {
-			dests[0] = dests[1] = dests[2] = dests[3] = idents[0];
-		}
-		else if (j == 2) {
-			dests[0] = dests[2] = idents[0];
-			dests[1] = dests[3] = idents[1];
-		}
-		else if (j == 3) {
-			dests[0] = idents[0];
-			dests[1] = dests[3] = idents[1];
-			dests[2] = idents[2];
-		}
-		else {
-			for (int k = 0; k < 4; k++)
-				dests[k] = idents[k];
-		}
-		dest.set(PropCMProperty.P_PADDING_TOP, dests[0]);
-		dest.set(PropCMProperty.P_PADDING_RIGHT, dests[1]);
-		dest.set(PropCMProperty.P_PADDING_BOTTOM, dests[2]);
-		dest.set(PropCMProperty.P_PADDING_LEFT, dests[3]);
-
-		return true;
-	}
-
-	/**
-	 * 
-	 */
-	public String extract(String source, PropCMProperty propDest) {
-		CSSTextParser parser = new CSSTextParser(CSSTextParser.MODE_DECLARATION_VALUE, source);
-		CSSTextToken[] tokens = parser.getTokens();
-		if (tokens.length <= 0) {
-			return null;
-		}
-		String[] idents = new String[4];
-		int j = 0;
-		for (int i = 0; i < tokens.length; i++) {
-			if (org.eclipse.wst.css.core.internal.util.CSSUtil.isLength(tokens[i]) || tokens[i].kind == CSSRegionContexts.CSS_DECLARATION_VALUE_NUMBER || tokens[i].kind == CSSRegionContexts.CSS_DECLARATION_VALUE_PERCENTAGE)
-				idents[j++] = tokens[i].image;
-			if (j == 4)
-				break;
-		}
-
-		if (j == 0)
-			return null;
-		else if (j == 1)
-			return idents[0];
-		else if (j == 2) {
-			if (propDest.getName() == PropCMProperty.P_PADDING_TOP || propDest.getName() == PropCMProperty.P_PADDING_BOTTOM)
-				return idents[0];
-			else
-				return idents[1];
-		}
-		else if (j == 3) {
-			if (propDest.getName() == PropCMProperty.P_PADDING_TOP)
-				return idents[0];
-			else if (propDest.getName() == PropCMProperty.P_PADDING_BOTTOM)
-				return idents[2];
-			else
-				return idents[1];
-		}
-		else {
-			if (propDest.getName() == PropCMProperty.P_PADDING_TOP)
-				return idents[0];
-			else if (propDest.getName() == PropCMProperty.P_PADDING_RIGHT)
-				return idents[1];
-			else if (propDest.getName() == PropCMProperty.P_PADDING_BOTTOM)
-				return idents[2];
-			else if (propDest.getName() == PropCMProperty.P_PADDING_LEFT)
-				return idents[3];
-			else
-				return null;
-		}
-
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/util/declaration/ValueData.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/util/declaration/ValueData.java
deleted file mode 100644
index a64f3b1..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/util/declaration/ValueData.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.core.internal.util.declaration;
-
-
-
-/**
- * 
- */
-public class ValueData {
-
-	public String value;
-	public boolean important = false;
-
-	/**
-	 * 
-	 */
-	public ValueData() {
-		super();
-	}
-
-	/**
-	 * 
-	 */
-	public ValueData(String val, boolean imp) {
-		super();
-		value = val;
-		important = imp;
-	}
-
-	/**
-	 * 
-	 */
-	public String toString() {
-		return value;
-	}
-}
\ No newline at end of file
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 d87e83f..0000000
--- a/bundles/org.eclipse.wst.css.ui/.settings/org.eclipse.jdt.core.prefs
+++ /dev/null
@@ -1,48 +0,0 @@
-#Mon May 30 17:56:50 EDT 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.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=error
-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.undocumentedEmptyBlock=ignore
-org.eclipse.jdt.core.compiler.problem.unnecessaryElse=warning
-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.css.ui/.settings/org.eclipse.pde.prefs b/bundles/org.eclipse.wst.css.ui/.settings/org.eclipse.pde.prefs
deleted file mode 100644
index 42fb716..0000000
--- a/bundles/org.eclipse.wst.css.ui/.settings/org.eclipse.pde.prefs
+++ /dev/null
@@ -1,14 +0,0 @@
-#Fri May 27 23:56:32 EDT 2005
-compilers.p.deprecated=1
-compilers.p.illegal-att-value=0
-compilers.p.no-required-att=0
-compilers.p.not-externalized-att=1
-compilers.p.unknown-attribute=0
-compilers.p.unknown-class=0
-compilers.p.unknown-element=0
-compilers.p.unknown-resource=0
-compilers.p.unresolved-ex-points=0
-compilers.p.unresolved-import=0
-compilers.p.unused-element-or-attribute=0
-compilers.use-project=true
-eclipse.preferences.version=1
diff --git a/bundles/org.eclipse.wst.css.ui/META-INF/MANIFEST.MF b/bundles/org.eclipse.wst.css.ui/META-INF/MANIFEST.MF
deleted file mode 100644
index d9a27a3..0000000
--- a/bundles/org.eclipse.wst.css.ui/META-INF/MANIFEST.MF
+++ /dev/null
@@ -1,46 +0,0 @@
-Manifest-Version: 1.0
-Bundle-ManifestVersion: 2
-Bundle-Name: %pluginName
-Bundle-SymbolicName: org.eclipse.wst.css.ui; singleton:=true
-Bundle-Version: 1.0.0
-Bundle-Activator: org.eclipse.wst.css.ui.internal.CSSUIPlugin
-Bundle-Vendor: %providerName
-Bundle-Localization: plugin
-Export-Package: org.eclipse.wst.css.ui.internal,
- org.eclipse.wst.css.ui.internal.autoedit,
- org.eclipse.wst.css.ui.internal.contentassist,
- org.eclipse.wst.css.ui.internal.contentoutline,
- org.eclipse.wst.css.ui.internal.contentproperties,
- org.eclipse.wst.css.ui.internal.contentproperties.ui,
- org.eclipse.wst.css.ui.internal.edit.ui,
- org.eclipse.wst.css.ui.internal.editor,
- org.eclipse.wst.css.ui.internal.image,
- org.eclipse.wst.css.ui.internal.preferences,
- org.eclipse.wst.css.ui.internal.preferences.ui,
- org.eclipse.wst.css.ui.internal.projection,
- org.eclipse.wst.css.ui.internal.properties,
- org.eclipse.wst.css.ui.internal.provisional,
- org.eclipse.wst.css.ui.internal.registry,
- org.eclipse.wst.css.ui.internal.selection,
- org.eclipse.wst.css.ui.internal.style,
- org.eclipse.wst.css.ui.internal.taginfo,
- org.eclipse.wst.css.ui.internal.text,
- org.eclipse.wst.css.ui.internal.views.contentoutline,
- org.eclipse.wst.css.ui.internal.views.properties,
- org.eclipse.wst.css.ui.internal.wizard
-Require-Bundle: org.eclipse.ui.ide,
- org.eclipse.ui.views,
- org.eclipse.jface.text,
- org.eclipse.ui.workbench.texteditor,
- org.eclipse.ui.editors,
- org.eclipse.ui,
- org.eclipse.wst.xml.ui,
- org.eclipse.wst.sse.ui,
- org.eclipse.wst.css.core,
- org.eclipse.wst.sse.core,
- org.eclipse.wst.html.core,
- org.eclipse.wst.xml.core,
- org.eclipse.core.resources,
- org.eclipse.core.runtime,
- org.eclipse.ui.ide
-Eclipse-AutoStart: true
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 e6db149..0000000
--- a/bundles/org.eclipse.wst.css.ui/build.properties
+++ /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
-###############################################################################
-bin.includes = plugin.xml,\
-               icons/,\
-               plugin.properties,\
-               META-INF/
-src.includes = plugin.xml,\
-               plugin.properties,\
-               icons/,\
-               build.xml,\
-               build.properties,\
-               README.txt
-source.. = 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 fbb99d7..0000000
--- a/bundles/org.eclipse.wst.css.ui/plugin.properties
+++ /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
-###############################################################################
-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.
-##
-AddTask.label=Add &Task...
-AddTask.tooltip=Add Task...
-AddBookmark.label=Add Boo&kmark...
-AddBookmark.tooltip=Add Bookmark...
\ No newline at end of file
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 3278f7f..0000000
--- a/bundles/org.eclipse.wst.css.ui/plugin.xml
+++ /dev/null
@@ -1,153 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<?eclipse version="3.0"?>
-<plugin>
-
-     <extension
-         point="org.eclipse.ui.editors">
-      <editor
-            name="%CSS_Source_Page_Editor.name"
-            icon="icons/sourceEditor.gif"
-            contributorClass="org.eclipse.wst.css.ui.internal.ActionContributorCSS"
-            class="org.eclipse.wst.css.ui.internal.StructuredTextEditorCSS"
-            symbolicFontName="org.eclipse.wst.sse.ui.textfont"
-            id="org.eclipse.wst.css.core.csssource.source">
-      <contentTypeBinding contentTypeId="org.eclipse.wst.css.core.csssource" />
-      </editor>
-   </extension>
-   <extension
-         point="org.eclipse.wst.sse.ui.extendedconfiguration"> 
-      <configuration 
-      		type="contentoutlineconfiguration"
-            class="org.eclipse.wst.css.ui.internal.views.contentoutline.CSSContentOutlineConfiguration"
-            target="org.eclipse.wst.css.core.csssource"/>
-      <configuration 
-      		type="textviewerconfiguration"
-            class="org.eclipse.wst.css.ui.internal.provisional.StructuredTextViewerConfigurationCSS"
-            target="org.eclipse.wst.css.core.csssource"/>
-      <configuration 
-      		type="propertysheetconfiguration"
-            class="org.eclipse.wst.css.ui.internal.views.properties.CSSPropertySheetConfiguration"
-            target="org.eclipse.wst.css.core.csssource"/>
-      <configuration 
-      		type="characterpairmatcher"
-            class="org.eclipse.wst.css.ui.internal.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.internal.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.internal.provisional.preferences"
-            class="org.eclipse.wst.css.ui.internal.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.internal.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.internal.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.internal.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.core.csssource.source">
-         </part>
-      </actionSetPartAssociation>
-      <actionSetPartAssociation
-            targetID="org.eclipse.ui.NavigateActionSet">
-         <part
-               id="org.eclipse.wst.css.core.csssource.source">
-         </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>
-
-	<extension
-		point="org.eclipse.ui.popupMenus">
-		<viewerContribution
-			targetID="org.eclipse.wst.css.core.csssource.source.RulerContext"
-            id="org.eclipse.ui.texteditor.ruler.context.actions">
-			<action
-				label="%AddTask.label"
-				helpContextId="org.eclipse.ui.AddTask_action_context"
-				class="org.eclipse.ui.texteditor.TaskRulerAction"
-				tooltip="%AddTask.tooltip"
-				menubarPath="additions"
-				id="org.eclipse.ui.texteditor.TaskRulerAction">
-			</action>
-			<action
-				label="%AddBookmark.label"
-				helpContextId="org.eclipse.ui.bookmark_action_context"
-				class="org.eclipse.ui.texteditor.BookmarkRulerAction"
-				tooltip="%AddBookmark.tooltip"
-				menubarPath="additions"
-				id="org.eclipse.ui.texteditor.BookmarkRulerAction">
-			</action>
-		</viewerContribution>
-	</extension>
-</plugin>
diff --git a/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/internal/ActionContributorCSS.java b/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/internal/ActionContributorCSS.java
deleted file mode 100644
index d758cf6..0000000
--- a/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/internal/ActionContributorCSS.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.wst.css.ui.internal;
-
-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.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.core.csssource.source", "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 = CSSUIMessages.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(CSSUIMessages.FormatMenu_label);
-		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 = CSSUIMessages.SourceMenu_label;
-		String sourceMenuId = "sourceMenuId"; //$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/internal/CSSUIMessages.java b/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/internal/CSSUIMessages.java
deleted file mode 100644
index 2abfced..0000000
--- a/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/internal/CSSUIMessages.java
+++ /dev/null
@@ -1,103 +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 - Initial API and implementation
- **********************************************************************/
-package org.eclipse.wst.css.ui.internal;
-
-import java.util.MissingResourceException;
-import java.util.ResourceBundle;
-
-import org.eclipse.osgi.util.NLS;
-
-public class CSSUIMessages extends NLS {
-	private static final String BUNDLE_NAME = "org.eclipse.wst.css.ui.internal.CSSUIPluginResources";//$NON-NLS-1$
-	private static ResourceBundle fResourceBundle;
-
-	public static String INFO_Not_Categorized_1;
-	public static String PrefsLabel_WrappingWithoutAttr;
-	public static String PrefsLabel_WrappingInsertLineBreak;
-	public static String PrefsLabel_CaseGroup;
-	public static String PrefsLabel_CaseIdent;
-	public static String PrefsLabel_CasePropName;
-	public static String PrefsLabel_CasePropValue;
-	public static String PrefsLabel_CaseIdentUpper;
-	public static String PrefsLabel_CaseIdentLower;
-	public static String PrefsLabel_CasePropNameUpper;
-	public static String PrefsLabel_CasePropNameLower;
-	public static String PrefsLabel_CasePropValueUpper;
-	public static String PrefsLabel_CasePropValueLower;
-	public static String PrefsLabel_ColorSample;
-	public static String PrefsLabel_ColorNormal;
-	public static String PrefsLabel_ColorAtmarkRule;
-	public static String PrefsLabel_ColorSelector;
-	public static String PrefsLabel_ColorMedia;
-	public static String PrefsLabel_ColorComment;
-	public static String PrefsLabel_ColorPropertyName;
-	public static String PrefsLabel_ColorPropertyValue;
-	public static String PrefsLabel_ColorUri;
-	public static String PrefsLabel_ColorString;
-	public static String PrefsLabel_ColorColon;
-	public static String PrefsLabel_ColorSemiColon;
-	public static String PrefsLabel_ColorCurlyBrace;
-	public static String PrefsLabel_ColorError;
-	public static String SortAction_0;
-	public static String _UI_WIZARD_NEW_TITLE;
-	public static String _UI_WIZARD_NEW_HEADING;
-	public static String _UI_WIZARD_NEW_DESCRIPTION;
-	public static String _ERROR_FILENAME_MUST_END_CSS;
-	public static String Title_InvalidValue;
-	public static String Message_InvalidValue;
-	public static String FormatMenu_label;
-	public static String CleanupDocument_label; // resource bundle
-	public static String CleanupDocument_tooltip; // resource bundle
-	public static String CleanupDocument_description; // resource bundle
-	public static String UI_none;
-	public static String Cleanup_UI_;
-	public static String CSS_Cleanup_UI_;
-	public static String Identifier_case__UI_;
-	public static String Property_name_case__UI_;
-	public static String Property_value_case__UI_;
-	public static String Selector_tag_name_case__UI_;
-	public static String Quote_values_UI_;
-	public static String Format_source_UI_;
-	public static String As_is_UI_;
-	public static String Lower_UI_;
-	public static String Upper_UI_;
-	public static String SourceMenu_label;
-	public static String Formatting_UI_;
-	public static String Line_width__UI_;
-	public static String Indent_using_tabs_;
-	public static String Indent_using_spaces;
-	public static String Indentation_size;
-	public static String Indentation_size_tip;
-	public static String StructureSelectEnclosing_label;
-	public static String StructureSelectEnclosing_tooltip;
-	public static String StructureSelectEnclosing_description;
-	public static String StructureSelectNext_label;
-	public static String StructureSelectNext_tooltip;
-	public static String StructureSelectNext_description;
-	public static String StructureSelectPrevious_label;
-	public static String StructureSelectPrevious_tooltip;
-	public static String StructureSelectPrevious_description;
-
-	static {
-		// load message values from bundle file
-		NLS.initializeMessages(BUNDLE_NAME, CSSUIMessages.class);
-	}
-
-	public static ResourceBundle getResourceBundle() {
-		try {
-			if (fResourceBundle == null)
-				fResourceBundle = ResourceBundle.getBundle(BUNDLE_NAME);
-		}
-		catch (MissingResourceException x) {
-			fResourceBundle = null;
-		}
-		return fResourceBundle;
-	}
-}
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 0644e96..0000000
--- a/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/internal/CSSUIPlugin.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.wst.css.ui.internal;
-
-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;	
-
-	/**
-	 * 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();
-	}
-}
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 c3ed334..0000000
--- a/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/internal/CSSUIPluginResources.properties
+++ /dev/null
@@ -1,91 +0,0 @@
-###############################################################################
-# Copyright (c) 2004 IBM Corporation and others.
-# All rights reserved. This program and the accompanying materials
-# are made available under the terms of the Eclipse Public License v1.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
-#
-Title_InvalidValue=Invalid Value
-Message_InvalidValue=Invalid property value.
-# Copied from sse.ui
-FormatMenu_label=F&ormat
-CleanupDocument_label=C&leanup Document...
-CleanupDocument_tooltip=Cleanup Document
-CleanupDocument_description=Cleanup Document
-UI_none=none
-Cleanup_UI_=Cleanup
-CSS_Cleanup_UI_=CSS Cleanup
-Identifier_case__UI_=Identifier case:
-Property_name_case__UI_=Property name case:
-Property_value_case__UI_=Property value case:
-Selector_tag_name_case__UI_=Selector tag name case:
-Quote_values_UI_=Quote values
-Format_source_UI_=&Format source
-As_is_UI_=As-is
-Lower_UI_=Lower
-Upper_UI_=Upper
-SourceMenu_label=&Source
-Formatting_UI_=Formatting
-Line_width__UI_=Line &width:
-Indent_using_tabs_=&Indent using tabs
-Indent_using_spaces=I&ndent using spaces
-Indentation_size=In&dentation size:
-Indentation_size_tip=Indentation size
-StructureSelectEnclosing_label=&Enclosing Element
-StructureSelectEnclosing_tooltip=Expand selection to include enclosing element
-StructureSelectEnclosing_description=Expand selection to include enclosing element
-StructureSelectNext_label=&Next Element
-StructureSelectNext_tooltip=Expand selection to include next sibling
-StructureSelectNext_description=Expand selection to include next sibling
-StructureSelectPrevious_label=&Previous Element
-StructureSelectPrevious_tooltip=Expand selection to include previous sibling
-StructureSelectPrevious_description=Expand selection to include previous sibling
\ No newline at end of file
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/StructuredTextEditorCSS.java b/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/internal/StructuredTextEditorCSS.java
deleted file mode 100644
index d0d1cab..0000000
--- a/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/internal/StructuredTextEditorCSS.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.css.ui.internal;
-
-import org.eclipse.jface.action.Action;
-import org.eclipse.wst.css.ui.internal.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.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 {
-	private static final String UNDERSCORE = "_"; //$NON-NLS-1$
-	
-	protected void createActions() {
-		super.createActions();
-
-		Action action = new CleanupActionCSS(CSSUIMessages.getResourceBundle(), StructuredTextEditorActionConstants.ACTION_NAME_CLEANUP_DOCUMENT + UNDERSCORE, 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/internal/autoedit/StructuredAutoEditStrategyCSS.java b/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/internal/autoedit/StructuredAutoEditStrategyCSS.java
deleted file mode 100644
index 76ac043..0000000
--- a/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/internal/autoedit/StructuredAutoEditStrategyCSS.java
+++ /dev/null
@@ -1,521 +0,0 @@
-/*****************************************************************************
- * Copyright (c) 2004 IBM Corporation and others. All rights reserved. This
- * program and the accompanying materials are made available under the terms
- * of the Eclipse Public License v1.0 which accompanies this 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.autoedit;
-
-import org.eclipse.core.runtime.Preferences;
-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.internal.CSSCorePlugin;
-import org.eclipse.wst.css.core.internal.parserz.CSSRegionContexts;
-import org.eclipse.wst.css.core.internal.preferences.CSSCorePreferenceNames;
-import org.eclipse.wst.css.core.internal.util.RegionIterator;
-import org.eclipse.wst.css.ui.internal.Logger;
-import org.eclipse.wst.sse.core.internal.provisional.text.IStructuredDocument;
-import org.eclipse.wst.sse.core.internal.provisional.text.IStructuredDocumentRegion;
-import org.eclipse.wst.sse.core.internal.provisional.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(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;
-	}
-
-
-	private String getIndentString() {
-		String indent = ""; //$NON-NLS-1$
-
-		Preferences preferences = CSSCorePlugin.getDefault().getPluginPreferences();
-		if (preferences != null) {
-			String indentChar = " "; //$NON-NLS-1$
-			String indentCharPref = preferences.getString(CSSCorePreferenceNames.INDENTATION_CHAR);
-			if (CSSCorePreferenceNames.TAB.equals(indentCharPref)) {
-				indentChar = "\t"; //$NON-NLS-1$
-			}
-			int indentationWidth = preferences.getInt(CSSCorePreferenceNames.INDENTATION_SIZE);
-
-			for (int i = 0; i < indentationWidth; i++) {
-				indent += indentChar;
-			}
-		}
-		return indent;
-	}
-}
diff --git a/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/internal/contentassist/CSSCACandidate.java b/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/internal/contentassist/CSSCACandidate.java
deleted file mode 100644
index 0de55ee..0000000
--- a/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/internal/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.internal.contentassist;
-
-
-
-import org.eclipse.wst.css.ui.internal.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/internal/contentassist/CSSContentAssistContext.java b/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/internal/contentassist/CSSContentAssistContext.java
deleted file mode 100644
index afdb65e..0000000
--- a/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/internal/contentassist/CSSContentAssistContext.java
+++ /dev/null
@@ -1,402 +0,0 @@
-/*****************************************************************************
- * Copyright (c) 2004 IBM Corporation and others. All rights reserved. This
- * program and the accompanying materials are made available under the terms
- * of the Eclipse Public License v1.0 which accompanies this 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.contentassist;
-
-import org.eclipse.jface.text.BadLocationException;
-import org.eclipse.wst.css.core.internal.metamodel.CSSMetaModel;
-import org.eclipse.wst.css.core.internal.metamodel.util.CSSMetaModelFinder;
-import org.eclipse.wst.css.core.internal.parserz.CSSRegionContexts;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSDocument;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSModel;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSNode;
-import org.eclipse.wst.css.core.internal.util.CSSUtil;
-import org.eclipse.wst.css.core.internal.util.RegionIterator;
-import org.eclipse.wst.sse.core.internal.provisional.IndexedRegion;
-import org.eclipse.wst.sse.core.internal.provisional.text.IStructuredDocument;
-import org.eclipse.wst.sse.core.internal.provisional.text.IStructuredDocumentRegion;
-import org.eclipse.wst.sse.core.internal.provisional.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;
-	}
-
-	IStructuredDocument getStructuredDocument() {
-		return fStructuredDocument;
-	}
-
-	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;
-	}
-
-	ICSSNode getTargetNode() {
-		return fTargetNode;
-	}
-
-	private int getTargetPos() {
-		return fTargetPos;
-	}
-
-	ITextRegion getTargetRegion() {
-		return getRegionByOffset(getTargetPos());
-	}
-
-	private IStructuredDocumentRegion getTargetDocumentRegion() {
-		return getDocumentRegionByOffset(getTargetPos());
-	}
-
-	private IStructuredDocumentRegion getDocumentRegionByOffset(int offset) {
-		return (fStructuredDocument != null) ? fStructuredDocument.getRegionAtCharacterOffset(offset) : null;
-	}
-
-	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/internal/contentassist/CSSContentAssistProcessor.java b/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/internal/contentassist/CSSContentAssistProcessor.java
deleted file mode 100644
index 8953831..0000000
--- a/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/internal/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.internal.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.internal.provisional.adapters.ICSSModelAdapter;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSDocument;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSModel;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSNode;
-import org.eclipse.wst.html.core.internal.htmlcss.StyleAdapterFactory;
-import org.eclipse.wst.sse.core.internal.provisional.INodeAdapter;
-import org.eclipse.wst.sse.core.internal.provisional.IStructuredModel;
-import org.eclipse.wst.sse.core.internal.provisional.IndexedRegion;
-import org.eclipse.wst.sse.core.internal.provisional.StructuredModelManager;
-import org.eclipse.wst.sse.ui.internal.StructuredTextViewer;
-import org.eclipse.wst.sse.ui.internal.contentassist.ContentAssistUtils;
-import org.eclipse.wst.xml.core.internal.provisional.document.IDOMNode;
-import org.eclipse.wst.xml.ui.internal.contentassist.XMLContentAssistUtilities;
-import org.eclipse.wst.xml.ui.internal.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);
-		IDOMNode xNode = null;
-		IDOMNode parent = null;
-		CSSProposalArranger arranger = null;
-
-		// bail if we couldn't get an indexed node
-		// if(indexedNode == null) return new ICompletionProposal[0];
-		if (indexedNode instanceof IDOMNode) {
-			xNode = (IDOMNode) indexedNode;
-			parent = (IDOMNode) 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 IDOMNode) {
-			// get model for node w/ style attribute
-			IStructuredModel cssModel = getCSSModel((IDOMNode) 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(IDOMNode 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/internal/contentassist/CSSProposalArranger.java b/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/internal/contentassist/CSSProposalArranger.java
deleted file mode 100644
index d29fa64..0000000
--- a/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/internal/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.internal.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.internal.parserz.CSSRegionContexts;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSMediaRule;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSNode;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSPageRule;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSPrimitiveValue;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSStyleDeclItem;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSStyleDeclaration;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSStyleRule;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSStyleSheet;
-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/internal/contentassist/CSSProposalGenerator.java b/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/internal/contentassist/CSSProposalGenerator.java
deleted file mode 100644
index 13113b9..0000000
--- a/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/internal/contentassist/CSSProposalGenerator.java
+++ /dev/null
@@ -1,232 +0,0 @@
-/*****************************************************************************
- * Copyright (c) 2004 IBM Corporation and others. All rights reserved. This
- * program and the accompanying materials are made available under the terms
- * of the Eclipse Public License v1.0 which accompanies this 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.contentassist;
-
-
-
-import java.util.ArrayList;
-import java.util.Iterator;
-import java.util.List;
-
-import org.eclipse.core.runtime.Preferences;
-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.internal.CSSCorePlugin;
-import org.eclipse.wst.css.core.internal.parserz.CSSRegionContexts;
-import org.eclipse.wst.css.core.internal.preferences.CSSCorePreferenceNames;
-import org.eclipse.wst.css.core.internal.util.RegionIterator;
-import org.eclipse.wst.css.ui.internal.image.CSSImageHelper;
-import org.eclipse.wst.sse.core.internal.provisional.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();
-		Preferences preferences = CSSCorePlugin.getDefault().getPluginPreferences();
-		String indentStr = getIndentString();
-		if (preferences.getBoolean(CSSCorePreferenceNames.WRAPPING_NEWLINE_ON_OPEN_BRACE)) {
-			buf.append(lineDelimiter);
-		}
-		buf.append("{");//$NON-NLS-1$
-		if (preferences.getBoolean(CSSCorePreferenceNames.WRAPPING_ONE_PER_LINE)) {
-			buf.append(lineDelimiter);
-			buf.append(indentStr);
-		} else {
-			buf.append(" ");//$NON-NLS-1$
-		}
-		int offset = buf.length();
-		if (preferences.getBoolean(CSSCorePreferenceNames.WRAPPING_ONE_PER_LINE)) {
-			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();
-		
-		boolean isQuoteInURI = CSSCorePlugin.getDefault().getPluginPreferences().getBoolean(CSSCorePreferenceNames.FORMAT_QUOTE_IN_URI);
-		char quoteChar = getQuoteChar();
-		buf.append("url(");//$NON-NLS-1$
-		if (isQuoteInURI) {
-			buf.append(quoteChar);
-		}
-		int offset = buf.length();
-		if (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() {
-
-		String quoteStr = CSSCorePlugin.getDefault().getPluginPreferences().getString(CSSCorePreferenceNames.FORMAT_QUOTE);
-		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); }
-		 */
-	}
-	
-
-	private String getIndentString() {
-		String indent = ""; //$NON-NLS-1$
-
-		Preferences preferences = CSSCorePlugin.getDefault().getPluginPreferences();
-		if (preferences != null) {
-			String indentChar = " "; //$NON-NLS-1$
-			String indentCharPref = preferences.getString(CSSCorePreferenceNames.INDENTATION_CHAR);
-			if (CSSCorePreferenceNames.TAB.equals(indentCharPref)) {
-				indentChar = "\t"; //$NON-NLS-1$
-			}
-			int indentationWidth = preferences.getInt(CSSCorePreferenceNames.INDENTATION_SIZE);
-
-			for (int i = 0; i < indentationWidth; i++) {
-				indent += indentChar;
-			}
-		}
-		return indent;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/internal/contentassist/CSSProposalGeneratorForAtmarkRule.java b/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/internal/contentassist/CSSProposalGeneratorForAtmarkRule.java
deleted file mode 100644
index 056c890..0000000
--- a/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/internal/contentassist/CSSProposalGeneratorForAtmarkRule.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.internal.contentassist;
-
-
-
-import java.util.ArrayList;
-import java.util.Iterator;
-import java.util.List;
-
-import org.eclipse.wst.css.core.internal.CSSCorePlugin;
-import org.eclipse.wst.css.core.internal.metamodel.CSSMMNode;
-import org.eclipse.wst.css.core.internal.metamodel.util.CSSMetaModelUtil;
-import org.eclipse.wst.css.core.internal.parserz.CSSRegionContexts;
-import org.eclipse.wst.css.core.internal.preferences.CSSCorePreferenceNames;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSCharsetRule;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSDocument;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSImportRule;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSModel;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSNode;
-import org.eclipse.wst.css.core.internal.util.SelectionCollector;
-import org.eclipse.wst.css.ui.internal.image.CSSImageType;
-import org.eclipse.wst.sse.core.internal.provisional.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.
-	 * 
-	 */
-	CSSProposalGeneratorForAtmarkRule(CSSContentAssistContext context) {
-		super(context);
-		fUseUpperCase = CSSCorePlugin.getDefault().getPluginPreferences().getInt(CSSCorePreferenceNames.CASE_IDENTIFIER) == CSSCorePreferenceNames.UPPER;
-	}
-
-	/**
-	 *  
-	 */
-	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/internal/contentassist/CSSProposalGeneratorForDeclarationName.java b/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/internal/contentassist/CSSProposalGeneratorForDeclarationName.java
deleted file mode 100644
index 02f40b0..0000000
--- a/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/internal/contentassist/CSSProposalGeneratorForDeclarationName.java
+++ /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
- ****************************************************************************/
-package org.eclipse.wst.css.ui.internal.contentassist;
-
-
-
-import java.util.ArrayList;
-import java.util.Collections;
-import java.util.Comparator;
-import java.util.Iterator;
-import java.util.List;
-
-import org.eclipse.core.runtime.Preferences;
-import org.eclipse.wst.css.core.internal.CSSCorePlugin;
-import org.eclipse.wst.css.core.internal.metamodel.CSSMMNode;
-import org.eclipse.wst.css.core.internal.metamodel.util.CSSMetaModelUtil;
-import org.eclipse.wst.css.core.internal.parserz.CSSRegionContexts;
-import org.eclipse.wst.css.core.internal.preferences.CSSCorePreferenceNames;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSNode;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSStyleDeclItem;
-import org.eclipse.wst.css.ui.internal.image.CSSImageType;
-
-class CSSProposalGeneratorForDeclarationName extends CSSProposalGenerator {
-
-	/**
-	 * CSSProposalGeneratorForDeclaration constructor comment.
-	 * 
-	 */
-	CSSProposalGeneratorForDeclarationName(CSSContentAssistContext context) {
-		super(context);
-	}
-
-	/**
-	 * getCandidates method comment.
-	 */
-	protected Iterator getCandidates() {
-		List candidates = new ArrayList();
-		Preferences preferences = CSSCorePlugin.getDefault().getPluginPreferences();
-		String preDelim = "";//$NON-NLS-1$
-		for (int i = 0; i < preferences.getInt(CSSCorePreferenceNames.FORMAT_PROP_PRE_DELIM); i++) {
-			preDelim += ' ';//$NON-NLS-1$
-		}
-		String postDelim = "";//$NON-NLS-1$
-		for (int i = 0; i < preferences.getInt(CSSCorePreferenceNames.FORMAT_PROP_POST_DELIM); 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 = (preferences.getInt(CSSCorePreferenceNames.CASE_PROPERTY_NAME) == CSSCorePreferenceNames.UPPER) ? 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) {
-		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;
-				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/internal/contentassist/CSSProposalGeneratorForDeclarationValue.java b/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/internal/contentassist/CSSProposalGeneratorForDeclarationValue.java
deleted file mode 100644
index 62f0270..0000000
--- a/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/internal/contentassist/CSSProposalGeneratorForDeclarationValue.java
+++ /dev/null
@@ -1,369 +0,0 @@
-/*****************************************************************************
- * Copyright (c) 2004 IBM Corporation and others. All rights reserved. This
- * program and the accompanying materials are made available under the terms
- * of the Eclipse Public License v1.0 which accompanies this 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.contentassist;
-
-
-
-import java.util.ArrayList;
-import java.util.Collections;
-import java.util.Iterator;
-import java.util.List;
-
-import org.eclipse.wst.css.core.internal.CSSCorePlugin;
-import org.eclipse.wst.css.core.internal.metamodel.CSSMMDescriptor;
-import org.eclipse.wst.css.core.internal.metamodel.CSSMMFunction;
-import org.eclipse.wst.css.core.internal.metamodel.CSSMMNode;
-import org.eclipse.wst.css.core.internal.metamodel.CSSMMNumber;
-import org.eclipse.wst.css.core.internal.metamodel.CSSMMProperty;
-import org.eclipse.wst.css.core.internal.metamodel.CSSMMUnit;
-import org.eclipse.wst.css.core.internal.metamodel.util.CSSFunctionID;
-import org.eclipse.wst.css.core.internal.metamodel.util.CSSMetaModelUtil;
-import org.eclipse.wst.css.core.internal.parserz.CSSRegionContexts;
-import org.eclipse.wst.css.core.internal.preferences.CSSCorePreferenceNames;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSNode;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSPrimitiveValue;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSStyleDeclItem;
-import org.eclipse.wst.css.core.internal.util.CSSUtil;
-import org.eclipse.wst.css.core.internal.util.RegionIterator;
-import org.eclipse.wst.css.ui.internal.image.CSSImageType;
-import org.eclipse.wst.sse.core.internal.provisional.IndexedRegion;
-import org.eclipse.wst.sse.core.internal.provisional.text.IStructuredDocumentRegion;
-import org.eclipse.wst.sse.core.internal.provisional.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.
-	 * 
-	 */
-	CSSProposalGeneratorForDeclarationValue(CSSContentAssistContext context) {
-		super(context);
-		fUseUpperCase = CSSCorePlugin.getDefault().getPluginPreferences().getInt(CSSCorePreferenceNames.CASE_PROPERTY_VALUE) == CSSCorePreferenceNames.UPPER;
-	}
-
-	/**
-	 *  
-	 */
-	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/internal/contentassist/CSSProposalGeneratorForHTMLTag.java b/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/internal/contentassist/CSSProposalGeneratorForHTMLTag.java
deleted file mode 100644
index 4068f52..0000000
--- a/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/internal/contentassist/CSSProposalGeneratorForHTMLTag.java
+++ /dev/null
@@ -1,155 +0,0 @@
-/*****************************************************************************
- * Copyright (c) 2004 IBM Corporation and others. All rights reserved. This
- * program and the accompanying materials are made available under the terms
- * of the Eclipse Public License v1.0 which accompanies this 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.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.internal.provisional.document.ICSSModel;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSStyleRule;
-import org.eclipse.wst.css.ui.internal.image.CSSImageType;
-import org.eclipse.wst.html.core.internal.contentmodel.HTMLCMDocumentFactory;
-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.eclipse.wst.xml.core.internal.document.DocumentTypeAdapter;
-import org.eclipse.wst.xml.core.internal.provisional.contentmodel.CMDocType;
-import org.eclipse.wst.xml.core.internal.provisional.document.IDOMDocument;
-import org.w3c.dom.Document;
-import org.w3c.dom.Node;
-
-class CSSProposalGeneratorForHTMLTag extends CSSProposalGenerator {
-
-	/**
-	 * CSSStyleRuleProposalGenerator constructor comment.
-	 * 
-	 */
-	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 IDOMDocument) {
-					DocumentTypeAdapter adapter = (DocumentTypeAdapter) ((IDOMDocument) 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/internal/contentassist/CSSProposalGeneratorForPseudoSelector.java b/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/internal/contentassist/CSSProposalGeneratorForPseudoSelector.java
deleted file mode 100644
index de0c45b..0000000
--- a/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/internal/contentassist/CSSProposalGeneratorForPseudoSelector.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.contentassist;
-
-
-
-import java.util.ArrayList;
-import java.util.Collections;
-import java.util.Iterator;
-import java.util.List;
-
-import org.eclipse.wst.css.core.internal.CSSCorePlugin;
-import org.eclipse.wst.css.core.internal.metamodel.CSSMMNode;
-import org.eclipse.wst.css.core.internal.metamodel.CSSMMSelector;
-import org.eclipse.wst.css.core.internal.metamodel.util.CSSMMTypeCollector;
-import org.eclipse.wst.css.core.internal.parser.CSSRegionUtil;
-import org.eclipse.wst.css.core.internal.parserz.CSSRegionContexts;
-import org.eclipse.wst.css.core.internal.preferences.CSSCorePreferenceNames;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSNode;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSPageRule;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSStyleRule;
-import org.eclipse.wst.css.ui.internal.image.CSSImageType;
-import org.eclipse.wst.sse.core.internal.provisional.text.ITextRegion;
-
-/**
- *  
- */
-class CSSProposalGeneratorForPseudoSelector extends CSSProposalGenerator {
-
-	/**
-	 * CSSProposalGeneratorForPseudoSelector constructor comment.
-	 * 
-	 */
-	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 = CSSCorePlugin.getDefault().getPluginPreferences().getInt(CSSCorePreferenceNames.CASE_IDENTIFIER) == CSSCorePreferenceNames.UPPER;
-
-		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/internal/contentassist/HTML40Namespace.java b/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/internal/contentassist/HTML40Namespace.java
deleted file mode 100644
index 2e09418..0000000
--- a/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/internal/contentassist/HTML40Namespace.java
+++ /dev/null
@@ -1,890 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.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.css.ui.internal.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/internal/contentoutline/CSSNodeAdapter.java b/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/internal/contentoutline/CSSNodeAdapter.java
deleted file mode 100644
index 7668861..0000000
--- a/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/internal/contentoutline/CSSNodeAdapter.java
+++ /dev/null
@@ -1,318 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this 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.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.internal.provisional.document.ICSSNode;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSStyleDeclItem;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSStyleDeclaration;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSStyleRule;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSStyleSheet;
-import org.eclipse.wst.sse.core.internal.provisional.INodeAdapter;
-import org.eclipse.wst.sse.core.internal.provisional.INodeAdapterFactory;
-import org.eclipse.wst.sse.core.internal.provisional.INodeNotifier;
-import org.eclipse.wst.sse.ui.internal.contentoutline.IJFaceNodeAdapter;
-import org.eclipse.wst.sse.ui.internal.contentoutline.IJFaceNodeAdapterFactory;
-
-/**
- * Adapts the CSS DOM node to a JFace viewer.
- */
-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 INodeAdapterFactory adapterFactory;
-	private Vector notifyQueue;
-	StyleViewUpdater lastUpdater;
-	protected int delayMSecs = 500;
-	final static Class ADAPTER_KEY = IJFaceNodeAdapter.class;
-
-	public CSSNodeAdapter(INodeAdapterFactory 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/internal/contentoutline/JFaceNodeAdapterFactoryCSS.java b/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/internal/contentoutline/JFaceNodeAdapterFactoryCSS.java
deleted file mode 100644
index 4388d52..0000000
--- a/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/internal/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.internal.contentoutline;
-
-import org.eclipse.wst.sse.core.internal.provisional.INodeAdapter;
-import org.eclipse.wst.sse.core.internal.provisional.INodeNotifier;
-import org.eclipse.wst.sse.ui.internal.contentoutline.IJFaceNodeAdapter;
-import org.eclipse.wst.xml.ui.internal.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/internal/contentproperties/ContentSettingsRegistry.java b/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/internal/contentproperties/ContentSettingsRegistry.java
deleted file mode 100644
index c0445fe..0000000
--- a/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/internal/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.internal.contentproperties;
-
-import java.util.Iterator;
-
-import org.eclipse.wst.css.core.internal.metamodel.CSSProfile;
-import org.eclipse.wst.css.core.internal.metamodel.CSSProfileRegistry;
-import org.eclipse.wst.css.ui.internal.CSSUIMessages;
-import org.eclipse.wst.sse.ui.internal.contentproperties.ui.ComboList;
-
-public final class ContentSettingsRegistry {
-	private static final String NONE = CSSUIMessages.UI_none;
-
-	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/internal/contentproperties/ui/CSSContentSettingsPropertyPage.java b/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/internal/contentproperties/ui/CSSContentSettingsPropertyPage.java
deleted file mode 100644
index cd4819d..0000000
--- a/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/internal/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.internal.contentproperties.ui;
-
-
-
-import java.util.Map;
-
-import org.eclipse.core.resources.IResource;
-import org.eclipse.ui.help.WorkbenchHelp;
-import org.eclipse.wst.css.ui.internal.Logger;
-import org.eclipse.wst.css.ui.internal.contentproperties.ContentSettingsRegistry;
-import org.eclipse.wst.css.ui.internal.editor.IHelpContextIds;
-import org.eclipse.wst.sse.ui.internal.contentproperties.ui.ComboListOnPropertyPage;
-import org.eclipse.wst.sse.ui.internal.contentproperties.ui.ContentSettingsPropertyPage;
-import org.eclipse.wst.sse.ui.internal.provisional.contentproperties.IContentSettings;
-
-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/internal/edit/ui/CleanupActionCSS.java b/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/internal/edit/ui/CleanupActionCSS.java
deleted file mode 100644
index 197f91e..0000000
--- a/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/internal/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.internal.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/internal/edit/ui/CleanupDialogCSS.java b/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/internal/edit/ui/CleanupDialogCSS.java
deleted file mode 100644
index a0493a5..0000000
--- a/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/internal/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.internal.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.CSSUIMessages;
-import org.eclipse.wst.css.ui.internal.editor.IHelpContextIds;
-
-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(CSSUIMessages.CSS_Cleanup_UI_);
-		else
-			getShell().setText(CSSUIMessages.Cleanup_UI_);
-
-		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(CSSUIMessages.Identifier_case__UI_);
-		GridLayout hLayout = new GridLayout();
-		hLayout.numColumns = 3;
-		identCase.setLayout(hLayout);
-		fRadioButtonIdentCaseAsis = new Button(identCase, SWT.RADIO);
-		fRadioButtonIdentCaseAsis.setText(CSSUIMessages.As_is_UI_);
-		fRadioButtonIdentCaseLower = new Button(identCase, SWT.RADIO);
-		fRadioButtonIdentCaseLower.setText(CSSUIMessages.Lower_UI_);
-		fRadioButtonIdentCaseUpper = new Button(identCase, SWT.RADIO);
-		fRadioButtonIdentCaseUpper.setText(CSSUIMessages.Upper_UI_);
-
-		// 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(CSSUIMessages.Property_name_case__UI_);
-		hLayout = new GridLayout();
-		hLayout.numColumns = 3;
-		propNameCase.setLayout(hLayout);
-		fRadioButtonPropNameCaseAsis = new Button(propNameCase, SWT.RADIO);
-		fRadioButtonPropNameCaseAsis.setText(CSSUIMessages.As_is_UI_);
-		fRadioButtonPropNameCaseLower = new Button(propNameCase, SWT.RADIO);
-		fRadioButtonPropNameCaseLower.setText(CSSUIMessages.Lower_UI_);
-		fRadioButtonPropNameCaseUpper = new Button(propNameCase, SWT.RADIO);
-		fRadioButtonPropNameCaseUpper.setText(CSSUIMessages.Upper_UI_);
-
-		// 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(CSSUIMessages.Property_value_case__UI_);
-		hLayout = new GridLayout();
-		hLayout.numColumns = 3;
-		propValueCase.setLayout(hLayout);
-		fRadioButtonPropValueCaseAsis = new Button(propValueCase, SWT.RADIO);
-		fRadioButtonPropValueCaseAsis.setText(CSSUIMessages.As_is_UI_);
-		fRadioButtonPropValueCaseLower = new Button(propValueCase, SWT.RADIO);
-		fRadioButtonPropValueCaseLower.setText(CSSUIMessages.Lower_UI_);
-		fRadioButtonPropValueCaseUpper = new Button(propValueCase, SWT.RADIO);
-		fRadioButtonPropValueCaseUpper.setText(CSSUIMessages.Upper_UI_);
-
-		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(CSSUIMessages.Selector_tag_name_case__UI_);
-			hLayout = new GridLayout();
-			hLayout.numColumns = 3;
-			selectorTagCase.setLayout(hLayout);
-			fRadioButtonSelectorTagCaseAsis = new Button(selectorTagCase, SWT.RADIO);
-			fRadioButtonSelectorTagCaseAsis.setText(CSSUIMessages.As_is_UI_);
-			fRadioButtonSelectorTagCaseLower = new Button(selectorTagCase, SWT.RADIO);
-			fRadioButtonSelectorTagCaseLower.setText(CSSUIMessages.Lower_UI_);
-			fRadioButtonSelectorTagCaseUpper = new Button(selectorTagCase, SWT.RADIO);
-			fRadioButtonSelectorTagCaseUpper.setText(CSSUIMessages.Upper_UI_);
-		}
-
-		// Quote attribute values
-		fCheckBoxQuoteValues = new Button(panel, SWT.CHECK);
-		fCheckBoxQuoteValues.setText(CSSUIMessages.Quote_values_UI_);
-
-		if (!isEmbeddedCSS()) {
-			// Format source
-			fCheckBoxFormatSource = new Button(panel, SWT.CHECK);
-			fCheckBoxFormatSource.setText(CSSUIMessages.Format_source_UI_);
-		}
-
-		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/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/image/CSSImageHelper.java b/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/internal/image/CSSImageHelper.java
deleted file mode 100644
index fb3e173..0000000
--- a/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/internal/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.internal.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/internal/image/CSSImageType.java b/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/internal/image/CSSImageType.java
deleted file mode 100644
index 8f835cf..0000000
--- a/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/internal/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.internal.image;
-
-
-
-import java.util.HashMap;
-import java.util.Map;
-
-import org.eclipse.wst.css.core.internal.metamodel.CSSMMProperty;
-import org.eclipse.wst.css.core.internal.metamodel.CSSMetaModel;
-import org.eclipse.wst.css.core.internal.metamodel.util.CSSMetaModelFinder;
-import org.eclipse.wst.css.core.internal.metamodel.util.CSSMetaModelUtil;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSDocument;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSModel;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSNode;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSPrimitiveValue;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSSelector;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSSelectorItem;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSSelectorList;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSSimpleSelector;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSStyleDeclItem;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSStyleRule;
-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/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 2b3d549..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.internal.style.IStyleConstantsCSS;
-import org.eclipse.wst.sse.ui.internal.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/preferences/ui/CSSColorPage.java b/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/internal/preferences/ui/CSSColorPage.java
deleted file mode 100644
index 9b16f52..0000000
--- a/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/internal/preferences/ui/CSSColorPage.java
+++ /dev/null
@@ -1,218 +0,0 @@
-/*****************************************************************************
- * Copyright (c) 2004 IBM Corporation and others. All rights reserved. This
- * program and the accompanying materials are made available under the terms
- * of the Eclipse Public License v1.0 which accompanies this 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.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.internal.parserz.CSSRegionContexts;
-import org.eclipse.wst.css.core.internal.provisional.contenttype.ContentTypeIdForCSS;
-import org.eclipse.wst.css.ui.internal.CSSUIMessages;
-import org.eclipse.wst.css.ui.internal.CSSUIPlugin;
-import org.eclipse.wst.css.ui.internal.editor.IHelpContextIds;
-import org.eclipse.wst.css.ui.internal.style.IStyleConstantsCSS;
-import org.eclipse.wst.sse.core.internal.provisional.IModelManager;
-import org.eclipse.wst.sse.core.internal.provisional.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.internal.preferences.ui.AbstractColorPage;
-import org.eclipse.wst.sse.ui.internal.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, IHelpContextIds.CSS_PREFWEBX_STYLES_HELPID);
-
-		return pageComponent;
-	}
-
-	protected Composite createColoringComposite(Composite parent) {
-		Composite coloringComposite = super.createColoringComposite(parent);
-
-		// assigning one help for whole group
-		return coloringComposite;
-	}
-
-	/**
-	 * getSampleText method comment.
-	 */
-	public String getSampleText() {
-		return CSSUIMessages.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, CSSUIMessages.PrefsLabel_ColorNormal);//$NON-NLS-1$
-		descriptions.put(IStyleConstantsCSS.ATMARK_RULE, CSSUIMessages.PrefsLabel_ColorAtmarkRule);//$NON-NLS-1$
-		descriptions.put(IStyleConstantsCSS.SELECTOR, CSSUIMessages.PrefsLabel_ColorSelector);//$NON-NLS-1$
-		descriptions.put(IStyleConstantsCSS.MEDIA, CSSUIMessages.PrefsLabel_ColorMedia);//$NON-NLS-1$
-		descriptions.put(IStyleConstantsCSS.COMMENT, CSSUIMessages.PrefsLabel_ColorComment);//$NON-NLS-1$
-		descriptions.put(IStyleConstantsCSS.PROPERTY_NAME, CSSUIMessages.PrefsLabel_ColorPropertyName);//$NON-NLS-1$
-		descriptions.put(IStyleConstantsCSS.PROPERTY_VALUE, CSSUIMessages.PrefsLabel_ColorPropertyValue);//$NON-NLS-1$
-		descriptions.put(IStyleConstantsCSS.URI, CSSUIMessages.PrefsLabel_ColorUri);//$NON-NLS-1$
-		descriptions.put(IStyleConstantsCSS.STRING, CSSUIMessages.PrefsLabel_ColorString);//$NON-NLS-1$
-		descriptions.put(IStyleConstantsCSS.COLON, CSSUIMessages.PrefsLabel_ColorColon);//$NON-NLS-1$
-		descriptions.put(IStyleConstantsCSS.SEMI_COLON, CSSUIMessages.PrefsLabel_ColorSemiColon);//$NON-NLS-1$
-		descriptions.put(IStyleConstantsCSS.CURLY_BRACE, CSSUIMessages.PrefsLabel_ColorCurlyBrace);//$NON-NLS-1$
-		descriptions.put(IStyleConstantsCSS.ERROR, CSSUIMessages.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/internal/preferences/ui/CSSFilesPreferencePage.java b/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/internal/preferences/ui/CSSFilesPreferencePage.java
deleted file mode 100644
index 880f263..0000000
--- a/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/internal/preferences/ui/CSSFilesPreferencePage.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.wst.css.ui.internal.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.internal.preferences.XMLFilesPreferencePage;
-
-public class CSSFilesPreferencePage extends XMLFilesPreferencePage {
-	protected IPreferenceStore doGetPreferenceStore() {
-		return CSSUIPlugin.getDefault().getPreferenceStore();
-	}
-
-	protected void doSavePreferenceStore() {
-		CSSCorePlugin.getDefault().savePluginPreferences(); // model
-	}
-
-	protected Preferences getModelPreferences() {
-		return CSSCorePlugin.getDefault().getPluginPreferences();
-	}
-
-	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/internal/preferences/ui/CSSSourcePreferencePage.java b/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/internal/preferences/ui/CSSSourcePreferencePage.java
deleted file mode 100644
index 5d156d8..0000000
--- a/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/internal/preferences/ui/CSSSourcePreferencePage.java
+++ /dev/null
@@ -1,266 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this 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.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.Label;
-import org.eclipse.swt.widgets.Spinner;
-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.internal.preferences.CSSCorePreferenceNames;
-import org.eclipse.wst.css.ui.internal.CSSUIMessages;
-import org.eclipse.wst.css.ui.internal.CSSUIPlugin;
-import org.eclipse.wst.css.ui.internal.editor.IHelpContextIds;
-import org.eclipse.wst.sse.ui.internal.preferences.ui.AbstractPreferencePage;
-
-/**
- */
-public class CSSSourcePreferencePage extends AbstractPreferencePage {
-	// Content Assist
-	protected Button fAutoPropose;
-	protected Label fAutoProposeLabel;
-
-	protected Text fAutoProposeText;
-	protected Button fClearAllBlankLines;
-	protected Button fIdentLower;
-	// case of output character
-	// case of identifier
-	protected Button fIdentUpper;
-	private Spinner fIndentationSize;
-	private Button fIndentUsingSpaces;
-	
-	private Button fIndentUsingTabs;
-	// Formatting
-	protected Label fLineWidthLabel;
-	
-	protected Text fLineWidthText;
-	// prohibit wrapping if style attribute
-	protected Button fNowrapAttr;
-	// one property per one line
-	protected Button fPropertyPerLine;
-	protected Button fPropNameLower;
-
-	// case of property name
-	protected Button fPropNameUpper;
-	protected Button fPropValueLower;
-	// case of property value
-	protected Button fPropValueUpper;
-	protected Button fSplitMultiAttrs;
-	private final int MAX_INDENTATION_SIZE = 16;
-	private final int MIN_INDENTATION_SIZE = 0;
-
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.jface.preference.PreferencePage#createContents(org.eclipse.swt.widgets.Composite)
-	 */
-	protected Control createContents(Composite parent) {
-		Composite composite = (Composite) super.createContents(parent);
-		WorkbenchHelp.setHelp(composite, IHelpContextIds.CSS_PREFWEBX_SOURCE_HELPID);
-
-		createContentsForFormattingGroup(composite);
-		createContentsForContentAssistGroup(composite);
-		setSize(composite);
-		loadPreferences();
-
-		return composite;
-	}
-
-	private void createContentsForContentAssistGroup(Composite parent) {
-		// not content assist, but preferred case
-		Group caseGroup = createGroup(parent, 3);
-		caseGroup.setText(CSSUIMessages.PrefsLabel_CaseGroup);
-
-		// use group for radio buttons so that associated label is read
-		Group identGroup = createGroup(caseGroup, 1);
-		identGroup.setText(CSSUIMessages.PrefsLabel_CaseIdent);
-		fIdentUpper = createRadioButton(identGroup, CSSUIMessages.PrefsLabel_CaseIdentUpper);
-		fIdentLower = createRadioButton(identGroup, CSSUIMessages.PrefsLabel_CaseIdentLower);
-
-		// use group for radio buttons so that associated label is read
-		Group propNameGroup = createGroup(caseGroup, 1);
-		propNameGroup.setText(CSSUIMessages.PrefsLabel_CasePropName);
-		fPropNameUpper = createRadioButton(propNameGroup, CSSUIMessages.PrefsLabel_CasePropNameUpper);
-		fPropNameLower = createRadioButton(propNameGroup, CSSUIMessages.PrefsLabel_CasePropNameLower);
-
-		// use group for radio buttons so that associated label is read
-		Group propValueGroup = createGroup(caseGroup, 1);
-		propValueGroup.setText(CSSUIMessages.PrefsLabel_CasePropValue);
-		fPropValueUpper = createRadioButton(propValueGroup, CSSUIMessages.PrefsLabel_CasePropValueUpper);
-		fPropValueLower = createRadioButton(propValueGroup, CSSUIMessages.PrefsLabel_CasePropValueLower);
-	}
-
-	private void createContentsForFormattingGroup(Composite parent) {
-		Group formattingGroup = createGroup(parent, 2);
-		formattingGroup.setText(CSSUIMessages.Formatting_UI_);
-
-		fLineWidthLabel = createLabel(formattingGroup, CSSUIMessages.Line_width__UI_);
-		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, CSSUIMessages.PrefsLabel_WrappingInsertLineBreak);
-		((GridData) fPropertyPerLine.getLayoutData()).horizontalSpan = 2;
-
-		fNowrapAttr = createCheckBox(formattingGroup, CSSUIMessages.PrefsLabel_WrappingWithoutAttr);
-		((GridData) fNowrapAttr.getLayoutData()).horizontalSpan = 2;
-		
-		fIndentUsingTabs = createRadioButton(formattingGroup, CSSUIMessages.Indent_using_tabs_);
-		((GridData) fIndentUsingTabs.getLayoutData()).horizontalSpan = 2;
-		fIndentUsingSpaces = createRadioButton(formattingGroup, CSSUIMessages.Indent_using_spaces);
-		((GridData) fIndentUsingSpaces.getLayoutData()).horizontalSpan = 2;
-		
-		createLabel(formattingGroup, CSSUIMessages.Indentation_size);
-		fIndentationSize = new Spinner(formattingGroup, SWT.READ_ONLY | SWT.BORDER);
-		GridData gd= new GridData(GridData.HORIZONTAL_ALIGN_BEGINNING);
-		fIndentationSize.setLayoutData(gd);
-		fIndentationSize.setToolTipText(CSSUIMessages.Indentation_size_tip);
-		fIndentationSize.setMinimum(MIN_INDENTATION_SIZE);
-		fIndentationSize.setMaximum(MAX_INDENTATION_SIZE);
-		fIndentationSize.setIncrement(1);
-		fIndentationSize.setPageIncrement(4);
-		fIndentationSize.addModifyListener(this);
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.jface.preference.PreferencePage#doGetPreferenceStore()
-	 */
-	protected IPreferenceStore doGetPreferenceStore() {
-		return CSSUIPlugin.getDefault().getPreferenceStore();
-	}
-
-	private void doSavePreferenceStore() {
-		CSSUIPlugin.getDefault().savePluginPreferences();
-		CSSCorePlugin.getDefault().savePluginPreferences(); // model
-	}
-	
-	protected Preferences getModelPreferences() {
-		return CSSCorePlugin.getDefault().getPluginPreferences();
-	}
-
-	protected void initializeValues() {
-		initializeValuesForFormattingGroup();
-		initializeValuesForContentAssistGroup();
-	}
-	
-	private void initializeValuesForContentAssistGroup() {
-		// not content assist, but preferred case
-		Preferences prefs = getModelPreferences();
-		fIdentUpper.setSelection(prefs.getInt(CSSCorePreferenceNames.CASE_IDENTIFIER) == CSSCorePreferenceNames.UPPER);
-		fIdentLower.setSelection(prefs.getInt(CSSCorePreferenceNames.CASE_IDENTIFIER) == CSSCorePreferenceNames.LOWER);
-		fPropNameUpper.setSelection(prefs.getInt(CSSCorePreferenceNames.CASE_PROPERTY_NAME) == CSSCorePreferenceNames.UPPER);
-		fPropNameLower.setSelection(prefs.getInt(CSSCorePreferenceNames.CASE_PROPERTY_NAME) == CSSCorePreferenceNames.LOWER);
-		fPropValueUpper.setSelection(prefs.getInt(CSSCorePreferenceNames.CASE_PROPERTY_VALUE) == CSSCorePreferenceNames.UPPER);
-		fPropValueLower.setSelection(prefs.getInt(CSSCorePreferenceNames.CASE_PROPERTY_VALUE) == CSSCorePreferenceNames.LOWER);
-	}
-
-	private void initializeValuesForFormattingGroup() {
-		// Formatting
-		Preferences prefs = getModelPreferences();
-		fLineWidthText.setText(prefs.getString(CSSCorePreferenceNames.LINE_WIDTH));
-		fPropertyPerLine.setSelection(prefs.getBoolean(CSSCorePreferenceNames.WRAPPING_ONE_PER_LINE));
-		fNowrapAttr.setSelection(prefs.getBoolean(CSSCorePreferenceNames.WRAPPING_PROHIBIT_WRAP_ON_ATTR));
-		
-		if (CSSCorePreferenceNames.TAB.equals(getModelPreferences().getString(CSSCorePreferenceNames.INDENTATION_CHAR))) {
-			fIndentUsingTabs.setSelection(true);
-			fIndentUsingSpaces.setSelection(false);
-		} else {
-			fIndentUsingSpaces.setSelection(true);
-			fIndentUsingTabs.setSelection(false);
-		}
-			
-		fIndentationSize.setSelection(getModelPreferences().getInt(CSSCorePreferenceNames.INDENTATION_SIZE));
-	}
-	
-	protected void performDefaults() {
-		performDefaultsForFormattingGroup();
-		performDefaultsForContentAssistGroup();
-
-		validateValues();
-		enableValues();
-
-		super.performDefaults();
-	}
-	
-	private void performDefaultsForContentAssistGroup() {
-		// not content assist, but preferred case
-		Preferences prefs = getModelPreferences();
-		fIdentUpper.setSelection(prefs.getDefaultInt(CSSCorePreferenceNames.CASE_IDENTIFIER) == CSSCorePreferenceNames.UPPER);
-		fIdentLower.setSelection(prefs.getDefaultInt(CSSCorePreferenceNames.CASE_IDENTIFIER) == CSSCorePreferenceNames.LOWER);
-		fPropNameUpper.setSelection(prefs.getDefaultInt(CSSCorePreferenceNames.CASE_PROPERTY_NAME) == CSSCorePreferenceNames.UPPER);
-		fPropNameLower.setSelection(prefs.getDefaultInt(CSSCorePreferenceNames.CASE_PROPERTY_NAME) == CSSCorePreferenceNames.LOWER);
-		fPropValueUpper.setSelection(prefs.getDefaultInt(CSSCorePreferenceNames.CASE_PROPERTY_VALUE) == CSSCorePreferenceNames.UPPER);
-		fPropValueLower.setSelection(prefs.getDefaultInt(CSSCorePreferenceNames.CASE_PROPERTY_VALUE) == CSSCorePreferenceNames.LOWER);
-	}
-
-	private void performDefaultsForFormattingGroup() {
-		// Formatting
-		Preferences prefs = getModelPreferences();
-		fLineWidthText.setText(prefs.getDefaultString(CSSCorePreferenceNames.LINE_WIDTH));
-		fPropertyPerLine.setSelection(prefs.getDefaultBoolean(CSSCorePreferenceNames.WRAPPING_ONE_PER_LINE));
-		fNowrapAttr.setSelection(prefs.getDefaultBoolean(CSSCorePreferenceNames.WRAPPING_PROHIBIT_WRAP_ON_ATTR));
-		
-		if (CSSCorePreferenceNames.TAB.equals(getModelPreferences().getDefaultString(CSSCorePreferenceNames.INDENTATION_CHAR))) {
-			fIndentUsingTabs.setSelection(true);
-			fIndentUsingSpaces.setSelection(false);
-		} else {
-			fIndentUsingSpaces.setSelection(true);
-			fIndentUsingTabs.setSelection(false);
-		}		
-		fIndentationSize.setSelection(getModelPreferences().getDefaultInt(CSSCorePreferenceNames.INDENTATION_SIZE));
-	}
-
-	public boolean performOk() {
-		boolean result = super.performOk();
-
-		doSavePreferenceStore();
-
-		return result;
-	}
-
-	protected void storeValues() {
-		storeValuesForFormattingGroup();
-		storeValuesForContentAssistGroup();
-	}
-
-	private void storeValuesForContentAssistGroup() {
-		// not content assist, but preferred case
-		Preferences prefs = getModelPreferences();
-		prefs.setValue(CSSCorePreferenceNames.CASE_IDENTIFIER, (fIdentUpper.getSelection()) ? CSSCorePreferenceNames.UPPER : CSSCorePreferenceNames.LOWER);
-		prefs.setValue(CSSCorePreferenceNames.CASE_PROPERTY_NAME, (fPropNameUpper.getSelection()) ? CSSCorePreferenceNames.UPPER : CSSCorePreferenceNames.LOWER);
-		prefs.setValue(CSSCorePreferenceNames.CASE_PROPERTY_VALUE, (fPropValueUpper.getSelection()) ? CSSCorePreferenceNames.UPPER : CSSCorePreferenceNames.LOWER);
-	}
-	private void storeValuesForFormattingGroup() {
-		// Formatting
-		Preferences prefs = getModelPreferences();
-		prefs.setValue(CSSCorePreferenceNames.LINE_WIDTH, fLineWidthText.getText());
-		prefs.setValue(CSSCorePreferenceNames.WRAPPING_ONE_PER_LINE, fPropertyPerLine.getSelection());
-		prefs.setValue(CSSCorePreferenceNames.WRAPPING_PROHIBIT_WRAP_ON_ATTR, fNowrapAttr.getSelection());
-		
-		if (fIndentUsingTabs.getSelection()) {
-			getModelPreferences().setValue(CSSCorePreferenceNames.INDENTATION_CHAR, CSSCorePreferenceNames.TAB);
-		} else {
-			getModelPreferences().setValue(CSSCorePreferenceNames.INDENTATION_CHAR, CSSCorePreferenceNames.SPACE);
-		}
-		getModelPreferences().setValue(CSSCorePreferenceNames.INDENTATION_SIZE, fIndentationSize.getSelection());
-	}
-}
\ No newline at end of file
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 e940633..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.internal.provisional.document.ICSSNode;
-import org.eclipse.wst.sse.core.internal.provisional.INodeAdapter;
-import org.eclipse.wst.sse.core.internal.provisional.INodeNotifier;
-import org.eclipse.wst.sse.core.internal.provisional.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"; //$NON-NLS-1$
-			System.out.println("ProjectionModelNodeAdapterCSS.updateAdapter (" + nodeName + "):" + (end - start)); //$NON-NLS-1$ //$NON-NLS-2$
-		}
-	}
-}
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 f39ca76..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.internal.provisional.document.ICSSNode;
-import org.eclipse.wst.sse.core.internal.provisional.AbstractAdapterFactory;
-import org.eclipse.wst.sse.core.internal.provisional.INodeAdapter;
-import org.eclipse.wst.sse.core.internal.provisional.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 22e5551..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.internal.provisional.document.ICSSDocument;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSModel;
-import org.eclipse.wst.sse.core.internal.model.FactoryRegistry;
-import org.eclipse.wst.sse.core.internal.provisional.INodeNotifier;
-import org.eclipse.wst.sse.core.internal.provisional.IStructuredModel;
-import org.eclipse.wst.sse.core.internal.provisional.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)); //$NON-NLS-1$
-	}
-
-	/**
-	 * 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/properties/CSSPropertySource.java b/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/internal/properties/CSSPropertySource.java
deleted file mode 100644
index dee33b8..0000000
--- a/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/internal/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.internal.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.internal.metamodel.CSSMMCategory;
-import org.eclipse.wst.css.core.internal.metamodel.CSSMMNode;
-import org.eclipse.wst.css.core.internal.metamodel.CSSMetaModel;
-import org.eclipse.wst.css.core.internal.metamodel.util.CSSMetaModelFinder;
-import org.eclipse.wst.css.core.internal.metamodel.util.CSSMetaModelUtil;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSNode;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSNodeList;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSStyleDeclItem;
-import org.eclipse.wst.css.ui.internal.CSSUIMessages;
-import org.eclipse.wst.sse.core.internal.provisional.INodeAdapter;
-import org.eclipse.wst.sse.core.internal.provisional.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 = CSSUIMessages.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 = CSSUIMessages.Title_InvalidValue; //$NON-NLS-1$
-				String message = CSSUIMessages.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/internal/properties/CSSPropertySourceAdapterFactory.java b/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/internal/properties/CSSPropertySourceAdapterFactory.java
deleted file mode 100644
index 240b33c..0000000
--- a/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/internal/properties/CSSPropertySourceAdapterFactory.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.wst.css.ui.internal.properties;
-
-import org.eclipse.wst.sse.core.internal.provisional.AbstractAdapterFactory;
-import org.eclipse.wst.sse.core.internal.provisional.INodeAdapter;
-import org.eclipse.wst.sse.core.internal.provisional.INodeNotifier;
-
-
-
-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/internal/properties/CSSTextPropertyDescriptor.java b/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/internal/properties/CSSTextPropertyDescriptor.java
deleted file mode 100644
index a0deb92..0000000
--- a/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/internal/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.internal.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.internal.provisional.document.ICSSModel;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSNode;
-import org.eclipse.wst.css.core.internal.util.CSSPathService;
-import org.eclipse.wst.sse.core.internal.provisional.IStructuredModel;
-import org.eclipse.wst.sse.core.internal.provisional.StructuredModelManager;
-import org.eclipse.wst.xml.core.internal.provisional.document.IDOMNode;
-
-/**
- */
-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 = ((IDOMNode) 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.css.ui/src/org/eclipse/wst/css/ui/internal/provisional/StructuredTextViewerConfigurationCSS.java b/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/internal/provisional/StructuredTextViewerConfigurationCSS.java
deleted file mode 100644
index 9b4c90d..0000000
--- a/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/internal/provisional/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.internal.provisional;
-
-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.internal.format.FormatProcessorCSS;
-import org.eclipse.wst.css.core.internal.provisional.text.ICSSPartitionTypes;
-import org.eclipse.wst.css.ui.internal.autoedit.StructuredAutoEditStrategyCSS;
-import org.eclipse.wst.css.ui.internal.contentassist.CSSContentAssistProcessor;
-import org.eclipse.wst.css.ui.internal.style.LineStyleProviderForCSS;
-import org.eclipse.wst.css.ui.internal.taginfo.CSSBestMatchHoverProcessor;
-import org.eclipse.wst.sse.core.internal.provisional.text.IStructuredPartitionTypes;
-import org.eclipse.wst.sse.ui.internal.format.StructuredFormattingStrategy;
-import org.eclipse.wst.sse.ui.internal.provisional.StructuredTextViewerConfiguration;
-import org.eclipse.wst.sse.ui.internal.provisional.style.IHighlighter;
-import org.eclipse.wst.sse.ui.internal.taginfo.AnnotationHoverProcessor;
-import org.eclipse.wst.sse.ui.internal.taginfo.ProblemAnnotationHoverProcessor;
-import org.eclipse.wst.sse.ui.internal.taginfo.TextHoverManager;
-import org.eclipse.wst.sse.ui.internal.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 == ICSSPartitionTypes.STYLE) {
-			allStrategies.add(new StructuredAutoEditStrategyCSS());
-		}
-
-		return (IAutoEditStrategy[]) allStrategies.toArray(new IAutoEditStrategy[0]);
-	}
-
-	public String[] getConfiguredContentTypes(ISourceViewer sourceViewer) {
-		if (configuredContentTypes == null) {
-			configuredContentTypes = new String[]{ICSSPartitionTypes.STYLE, IStructuredPartitionTypes.DEFAULT_PARTITION, IStructuredPartitionTypes.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, ICSSPartitionTypes.STYLE);
-			setContentAssistProcessor((ContentAssistant) contentAssistant, cssProcessor, IStructuredPartitionTypes.UNKNOWN_PARTITION);
-		}
-
-		return contentAssistant;
-	}
-
-	public IContentFormatter getContentFormatter(ISourceViewer sourceViewer) {
-		final MultiPassContentFormatter formatter = new MultiPassContentFormatter(getConfiguredDocumentPartitioning(sourceViewer), ICSSPartitionTypes.STYLE);
-
-		formatter.setMasterStrategy(new StructuredFormattingStrategy(new FormatProcessorCSS()));
-
-		return formatter;
-	}
-
-	public IHighlighter getHighlighter(ISourceViewer sourceViewer) {
-		IHighlighter highlighter = super.getHighlighter(sourceViewer);
-
-		if (highlighter != null) {
-			highlighter.addProvider(ICSSPartitionTypes.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/internal/registry/AdapterFactoryProviderCSS.java b/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/internal/registry/AdapterFactoryProviderCSS.java
deleted file mode 100644
index 8eecc2e..0000000
--- a/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/internal/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.internal.registry;
-
-import org.eclipse.ui.views.properties.IPropertySource;
-import org.eclipse.wst.css.core.internal.modelhandler.ModelHandlerForCSS;
-import org.eclipse.wst.css.ui.internal.contentoutline.JFaceNodeAdapterFactoryCSS;
-import org.eclipse.wst.css.ui.internal.properties.CSSPropertySourceAdapterFactory;
-import org.eclipse.wst.sse.core.internal.ltk.modelhandler.IDocumentTypeHandler;
-import org.eclipse.wst.sse.core.internal.model.FactoryRegistry;
-import org.eclipse.wst.sse.core.internal.provisional.INodeAdapterFactory;
-import org.eclipse.wst.sse.core.internal.provisional.IStructuredModel;
-import org.eclipse.wst.sse.ui.internal.contentoutline.IJFaceNodeAdapter;
-import org.eclipse.wst.sse.ui.internal.provisional.registry.AdapterFactoryProvider;
-import org.eclipse.wst.sse.ui.internal.util.Assert;
-
-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$
-		INodeAdapterFactory 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/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 4f38ac2..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.internal.provisional.document.ICSSNode;
-import org.eclipse.wst.sse.core.internal.provisional.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 f389d3f..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.internal.provisional.document.ICSSNode;
-import org.eclipse.wst.css.ui.internal.CSSUIMessages;
-import org.eclipse.wst.sse.core.internal.provisional.IndexedRegion;
-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(CSSUIMessages.StructureSelectEnclosing_label);
-		setToolTipText(CSSUIMessages.StructureSelectEnclosing_tooltip);
-		setDescription(CSSUIMessages.StructureSelectEnclosing_description);
-	}
-
-	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 bbbe222..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.internal.provisional.document.ICSSNode;
-import org.eclipse.wst.css.ui.internal.CSSUIMessages;
-import org.eclipse.wst.sse.core.internal.provisional.IndexedRegion;
-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(CSSUIMessages.StructureSelectNext_label);
-		setToolTipText(CSSUIMessages.StructureSelectNext_tooltip);
-		setDescription(CSSUIMessages.StructureSelectNext_description);
-	}
-
-	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 13afa2b..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.internal.provisional.document.ICSSNode;
-import org.eclipse.wst.css.ui.internal.CSSUIMessages;
-import org.eclipse.wst.sse.core.internal.provisional.IndexedRegion;
-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(CSSUIMessages.StructureSelectPrevious_label);
-		setToolTipText(CSSUIMessages.StructureSelectPrevious_tooltip);
-		setDescription(CSSUIMessages.StructureSelectPrevious_description);
-	}
-
-	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/style/IStyleConstantsCSS.java b/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/internal/style/IStyleConstantsCSS.java
deleted file mode 100644
index 75280d3..0000000
--- a/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/internal/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.internal.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/internal/style/LineStyleProviderForCSS.java b/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/internal/style/LineStyleProviderForCSS.java
deleted file mode 100644
index 4c6eb28..0000000
--- a/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/internal/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.internal.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.internal.parserz.CSSRegionContexts;
-import org.eclipse.wst.css.ui.internal.CSSUIPlugin;
-import org.eclipse.wst.sse.core.internal.provisional.text.ITextRegion;
-import org.eclipse.wst.sse.ui.internal.provisional.style.AbstractLineStyleProvider;
-import org.eclipse.wst.sse.ui.internal.provisional.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/internal/style/LineStyleProviderForEmbeddedCSS.java b/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/internal/style/LineStyleProviderForEmbeddedCSS.java
deleted file mode 100644
index 0e52ab1..0000000
--- a/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/internal/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.internal.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.internal.parserz.CSSTextParser;
-import org.eclipse.wst.css.core.internal.parserz.CSSTextToken;
-import org.eclipse.wst.sse.core.internal.provisional.text.IStructuredDocumentRegion;
-import org.eclipse.wst.sse.core.internal.provisional.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/internal/taginfo/CSSBestMatchHoverProcessor.java b/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/internal/taginfo/CSSBestMatchHoverProcessor.java
deleted file mode 100644
index 26d674c..0000000
--- a/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/internal/taginfo/CSSBestMatchHoverProcessor.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.css.ui.internal.taginfo;
-
-import org.eclipse.jface.text.ITextHover;
-import org.eclipse.wst.sse.ui.internal.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 {
-
-	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/internal/text/CSSDocumentRegionEdgeMatcher.java b/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/internal/text/CSSDocumentRegionEdgeMatcher.java
deleted file mode 100644
index 56d0574..0000000
--- a/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/internal/text/CSSDocumentRegionEdgeMatcher.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.wst.css.ui.internal.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.internal.parserz.CSSRegionContexts;
-import org.eclipse.wst.sse.core.internal.provisional.text.IStructuredDocument;
-import org.eclipse.wst.sse.core.internal.provisional.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;
-	}
-
-	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/internal/views/contentoutline/CSSContentOutlineConfiguration.java b/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/internal/views/contentoutline/CSSContentOutlineConfiguration.java
deleted file mode 100644
index cd274ee..0000000
--- a/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/internal/views/contentoutline/CSSContentOutlineConfiguration.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.css.ui.internal.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.internal.provisional.document.ICSSNode;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSStyleDeclItem;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSValue;
-import org.eclipse.wst.css.ui.internal.CSSUIPlugin;
-import org.eclipse.wst.sse.core.internal.provisional.INodeAdapterFactory;
-import org.eclipse.wst.sse.ui.internal.contentoutline.PropertyChangeUpdateActionContributionItem;
-import org.eclipse.wst.sse.ui.internal.provisional.views.contentoutline.StructuredContentOutlineConfiguration;
-import org.eclipse.wst.sse.ui.internal.view.events.NodeSelectionChangedEvent;
-
-public class CSSContentOutlineConfiguration extends StructuredContentOutlineConfiguration {
-	private final String OUTLINE_SORT_PREF = "outline-sort"; //$NON-NLS-1$
-	private IContentProvider fContentProvider = null;
-	private ILabelProvider fLabelProvider = null;
-
-	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;
-	}
-
-	public IContentProvider getContentProvider(TreeViewer viewer) {
-		if (fContentProvider == null && getFactory() != null)
-			fContentProvider = new JFaceNodeContentProviderCSS((INodeAdapterFactory) getFactory());
-		return fContentProvider;
-	}
-
-	public ILabelProvider getLabelProvider(TreeViewer viewer) {
-		if (fLabelProvider == null && getFactory() != null)
-			fLabelProvider = new JFaceNodeLabelProviderCSS((INodeAdapterFactory) getFactory());
-		return fLabelProvider;
-	}
-
-	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;
-	}
-
-	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/internal/views/contentoutline/JFaceNodeContentProviderCSS.java b/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/internal/views/contentoutline/JFaceNodeContentProviderCSS.java
deleted file mode 100644
index a8e5ab5..0000000
--- a/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/internal/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.internal.views.contentoutline;
-
-
-
-import java.util.ArrayList;
-import java.util.List;
-
-import org.eclipse.jface.viewers.Viewer;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSDocument;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSModel;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSNode;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSPrimitiveValue;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSStyleDeclItem;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSStyleDeclaration;
-import org.eclipse.wst.sse.core.internal.provisional.INodeAdapterFactory;
-import org.eclipse.wst.sse.core.internal.provisional.INodeNotifier;
-import org.eclipse.wst.xml.ui.internal.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.
- */
-class JFaceNodeContentProviderCSS extends JFaceNodeContentProvider {
-	protected INodeAdapterFactory adapterFactory;
-
-	//protected DomainNotifier domainNotifier;
-	/**
-	 */
-	public JFaceNodeContentProviderCSS(INodeAdapterFactory 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/internal/views/contentoutline/JFaceNodeLabelProviderCSS.java b/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/internal/views/contentoutline/JFaceNodeLabelProviderCSS.java
deleted file mode 100644
index f102975..0000000
--- a/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/internal/views/contentoutline/JFaceNodeLabelProviderCSS.java
+++ /dev/null
@@ -1,225 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this 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.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.internal.provisional.document.ICSSMediaRule;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSNode;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSPageRule;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSPrimitiveValue;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSStyleDeclItem;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSStyleRule;
-import org.eclipse.wst.css.ui.internal.image.CSSImageHelper;
-import org.eclipse.wst.css.ui.internal.image.CSSImageType;
-import org.eclipse.wst.sse.core.internal.provisional.INodeAdapterFactory;
-import org.eclipse.wst.sse.core.internal.provisional.INodeNotifier;
-import org.eclipse.wst.sse.ui.internal.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.
- */
-class JFaceNodeLabelProviderCSS implements ILabelProvider {
-	protected INodeAdapterFactory fAdapterFactory;
-
-	/**
-	 * JFaceNodeLabelProvider constructor comment.
-	 */
-	public JFaceNodeLabelProviderCSS(INodeAdapterFactory 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.
-	 * 
-	 */
-	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/internal/views/contentoutline/SortAction.java b/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/internal/views/contentoutline/SortAction.java
deleted file mode 100644
index cf85bce..0000000
--- a/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/internal/views/contentoutline/SortAction.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
- *******************************************************************************/
-/*
- * 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.internal.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.CSSUIMessages;
-import org.eclipse.wst.css.ui.internal.CSSUIPlugin;
-import org.eclipse.wst.css.ui.internal.editor.CSSEditorPluginImages;
-import org.eclipse.wst.sse.ui.internal.contentoutline.PropertyChangeUpdateAction;
-
-/*
- * Based on DTDContentOutlinePage#SortAction
- */
-class SortAction extends PropertyChangeUpdateAction {
-	private TreeViewer treeViewer;
-
-	public SortAction(TreeViewer viewer, IPreferenceStore store, String preferenceKey) {
-		super(CSSUIMessages.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/internal/views/properties/CSSPropertySheetConfiguration.java b/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/internal/views/properties/CSSPropertySheetConfiguration.java
deleted file mode 100644
index aa2f254..0000000
--- a/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/internal/views/properties/CSSPropertySheetConfiguration.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
- ****************************************************************************/
-/*
- * 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.internal.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.internal.provisional.document.ICSSNode;
-import org.eclipse.wst.sse.ui.internal.provisional.views.properties.StructuredPropertySheetConfiguration;
-
-public class CSSPropertySheetConfiguration extends StructuredPropertySheetConfiguration {
-	public CSSPropertySheetConfiguration() {
-		super();
-	}
-
-	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/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 d14bb1c..0000000
--- a/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/internal/wizard/NewCSSWizard.java
+++ /dev/null
@@ -1,80 +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.CSSUIMessages;
-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"; //$NON-NLS-1$
-	private WizardNewFileCreationPage fNewFilePage;
-	private IStructuredSelection fSelection;
-
-	public void addPages() {
-		fNewFilePage = new WizardNewFileCreationPage("CSSWizardNewFileCreationPage", new StructuredSelection(IDE.computeSelectedResources(fSelection))) { //$NON-NLS-1$
-			protected boolean validatePage() {
-				IPath handlePath = new Path(getFileName());
-				String extension = handlePath.getFileExtension();
-				if (extension == null || !extension.equalsIgnoreCase("css")) { //$NON-NLS-1$
-					setErrorMessage(CSSUIMessages._ERROR_FILENAME_MUST_END_CSS); //$NON-NLS-1$
-					return false;
-				}
-				setErrorMessage(null);
-				return super.validatePage();
-			}
-		};
-		fNewFilePage.setTitle(CSSUIMessages._UI_WIZARD_NEW_HEADING); //$NON-NLS-1$
-		fNewFilePage.setDescription(CSSUIMessages._UI_WIZARD_NEW_DESCRIPTION); //$NON-NLS-1$
-
-		addPage(fNewFilePage);
-	}
-
-	public void init(IWorkbench aWorkbench, IStructuredSelection aSelection) {
-		fSelection = aSelection;
-		setWindowTitle(CSSUIMessages._UI_WIZARD_NEW_TITLE); //$NON-NLS-1$
-		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.html.core/.classpath b/bundles/org.eclipse.wst.html.core/.classpath
deleted file mode 100644
index 275b34c..0000000
--- a/bundles/org.eclipse.wst.html.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.wst.html.core/.cvsignore b/bundles/org.eclipse.wst.html.core/.cvsignore
deleted file mode 100644
index 383b61c..0000000
--- a/bundles/org.eclipse.wst.html.core/.cvsignore
+++ /dev/null
@@ -1,5 +0,0 @@
-bin
-htmlmodel.jar
-temp.folder
-dev.properties
-build.xml
diff --git a/bundles/org.eclipse.wst.html.core/.options b/bundles/org.eclipse.wst.html.core/.options
deleted file mode 100644
index e66a59f..0000000
--- a/bundles/org.eclipse.wst.html.core/.options
+++ /dev/null
@@ -1,2 +0,0 @@
-org.eclipse.wst.html.core/debug=true
-org.eclipse.wst.html.core/debug/tracefilter=
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/.project b/bundles/org.eclipse.wst.html.core/.project
deleted file mode 100644
index 13a9fac..0000000
--- a/bundles/org.eclipse.wst.html.core/.project
+++ /dev/null
@@ -1,28 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<projectDescription>
-	<name>org.eclipse.wst.html.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.html.core/.settings/org.eclipse.jdt.core.prefs b/bundles/org.eclipse.wst.html.core/.settings/org.eclipse.jdt.core.prefs
deleted file mode 100644
index e015586..0000000
--- a/bundles/org.eclipse.wst.html.core/.settings/org.eclipse.jdt.core.prefs
+++ /dev/null
@@ -1,48 +0,0 @@
-#Mon May 30 17:55:54 EDT 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.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=error
-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.undocumentedEmptyBlock=warning
-org.eclipse.jdt.core.compiler.problem.unnecessaryElse=warning
-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.core/.settings/org.eclipse.pde.prefs b/bundles/org.eclipse.wst.html.core/.settings/org.eclipse.pde.prefs
deleted file mode 100644
index c9a18d3..0000000
--- a/bundles/org.eclipse.wst.html.core/.settings/org.eclipse.pde.prefs
+++ /dev/null
@@ -1,14 +0,0 @@
-#Fri May 27 23:56:32 EDT 2005

-compilers.p.deprecated=1

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

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

-compilers.p.not-externalized-att=1

-compilers.p.unknown-attribute=0

-compilers.p.unknown-class=0

-compilers.p.unknown-element=0

-compilers.p.unknown-resource=0

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

-compilers.p.unresolved-import=0

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

-compilers.use-project=true

-eclipse.preferences.version=1

diff --git a/bundles/org.eclipse.wst.html.core/META-INF/MANIFEST.MF b/bundles/org.eclipse.wst.html.core/META-INF/MANIFEST.MF
deleted file mode 100644
index d8b99ca..0000000
--- a/bundles/org.eclipse.wst.html.core/META-INF/MANIFEST.MF
+++ /dev/null
@@ -1,35 +0,0 @@
-Manifest-Version: 1.0
-Bundle-ManifestVersion: 2
-Bundle-Name: %pluginName
-Bundle-SymbolicName: org.eclipse.wst.html.core; singleton:=true
-Bundle-Version: 1.0.0
-Bundle-Activator: org.eclipse.wst.html.core.internal.HTMLCorePlugin
-Bundle-Vendor: %providerName
-Bundle-Localization: plugin
-Export-Package: org.eclipse.wst.html.core.internal,
- org.eclipse.wst.html.core.internal.cleanup,
- org.eclipse.wst.html.core.internal.commentelement.handlers,
- org.eclipse.wst.html.core.internal.contentmodel,
- org.eclipse.wst.html.core.internal.contentmodel.chtml,
- org.eclipse.wst.html.core.internal.contentmodel.ssi,
- org.eclipse.wst.html.core.internal.contenttype,
- org.eclipse.wst.html.core.internal.document,
- org.eclipse.wst.html.core.internal.encoding,
- org.eclipse.wst.html.core.internal.format,
- org.eclipse.wst.html.core.internal.htmlcss,
- org.eclipse.wst.html.core.internal.modelhandler,
- org.eclipse.wst.html.core.internal.modelquery,
- org.eclipse.wst.html.core.internal.preferences,
- org.eclipse.wst.html.core.internal.provisional,
- org.eclipse.wst.html.core.internal.provisional.contenttype,
- org.eclipse.wst.html.core.internal.provisional.text,
- org.eclipse.wst.html.core.internal.text,
- org.eclipse.wst.html.core.internal.validate
-Require-Bundle: org.eclipse.wst.css.core,
- org.eclipse.wst.sse.ui,
- org.eclipse.wst.sse.core,
- org.eclipse.wst.xml.core,
- org.eclipse.wst.xml.uriresolver,
- org.eclipse.core.resources,
- org.eclipse.core.runtime
-Eclipse-AutoStart: true
diff --git a/bundles/org.eclipse.wst.html.core/build.properties b/bundles/org.eclipse.wst.html.core/build.properties
deleted file mode 100644
index b2afc9d..0000000
--- a/bundles/org.eclipse.wst.html.core/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,\
-               .options,\
-               data/,\
-               plugin.properties,\
-               META-INF/,\
-               .
-src.includes = plugin.xml,\
-               build.xml,\
-               .options,\
-               data/,\
-               plugin.properties,\
-               component.xml,\
-               build.properties
-source.. = src/
diff --git a/bundles/org.eclipse.wst.html.core/component.xml b/bundles/org.eclipse.wst.html.core/component.xml
deleted file mode 100644
index 42bf72a..0000000
--- a/bundles/org.eclipse.wst.html.core/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.html">
-        <component-depends unrestricted="true"></component-depends>
-        <plugin id="org.eclipse.wst.html.core" />
-        <plugin id="org.eclipse.wst.html.ui" />
-
-</component>
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/data/htmref.properties b/bundles/org.eclipse.wst.html.core/data/htmref.properties
deleted file mode 100644
index 9cd460d..0000000
--- a/bundles/org.eclipse.wst.html.core/data/htmref.properties
+++ /dev/null
@@ -1,108 +0,0 @@
-###############################################################################
-# Copyright (c) 2004 IBM Corporation and others.
-# All rights reserved. This program and the accompanying materials
-# are made available under the terms of the Eclipse Public License v1.0
-# which accompanies this distribution, and is available at
-# http://www.eclipse.org/legal/epl-v10.html
-# 
-# Contributors:
-#     IBM Corporation - initial API and implementation
-###############################################################################
-
-ATagInfo=A link if the href attribute is present, and the target for a link if the name attribute is present
-ABBRTagInfo=An abbreviation (for example, WWW, HTTP)
-ACRONYMTagInfo=An acronym (for example, SCUBA)
-ADDRESSTagInfo=Address information for the author of the page
-APPLETTagInfo=A Java applet
-AREATagInfo=Defines a client-side image map area
-BTagInfo=Displays contained text as bold
-BASETagInfo=The base URI for the page, to be used when calculating relative paths
-BASEFONTTagInfo=The base font size for the page
-BDOTagInfo=Overrides default bidirectional display. For use with bidirectional languages.
-BIGTagInfo=Displays contained text as large
-BGSOUNDTagInfo=Defines a sound file for the page. Not supported by W3C HTML 4.01.
-BLINKTagInfo=Displays text as blinking. Not supported by W3C HTML 4.01.
-BLOCKQUOTETagInfo=A long quotation
-BODYTagInfo=The document body. Contains all the content for the page.
-BRTagInfo=Forces a line break
-BUTTONTagInfo=Defines a push button
-CAPTIONTagInfo=Defines a table caption
-CENTERTagInfo=Displays contained text centered. Equivalent to DIV with align=center.
-CITETagInfo=A citation
-CODETagInfo=A computer code fragment
-COLTagInfo=A table column
-COLGROUPTagInfo=A group of table columns
-DDTagInfo=A definition or description in a definition or description list
-DELTagInfo=Displays text as deleted
-DFNTagInfo=A definition
-DIRTagInfo=A directory listing
-DIVTagInfo=A generic container, which can be used for defining language or style for the contents
-DLTagInfo=A definition or description list
-DTTagInfo=A term or subject in a definition or description list
-EMTagInfo=Displays text emphasized (generally italicized)
-EMBEDTagInfo=Defines an embedded plug-in. Not supported by W3C HTML 4.01.
-FIELDSETTagInfo=Defines a form control group
-FONTTagInfo=Displays text in the given font
-FORMTagInfo=Defines an interactive form
-FRAMETagInfo=Defines a frame within the current window
-FRAMESETTagInfo=Defines a frameset that divides the window into frames
-H1TagInfo=A top-level heading
-H2TagInfo=A second-level heading
-H3TagInfo=A third-level heading
-H4TagInfo=A fourth-level heading
-H5TagInfo=A fifth-level heading
-H6TagInfo=A sixth-level heading
-HEADTagInfo=Contains metadata and window title information for the document
-HRTagInfo=A horizontal rule
-HTMLTagInfo=The root element for the document.
-ITagInfo=Displays text as italic
-IFRAMETagInfo=Defines an inline subwindow
-IMGTagInfo=Displays the referenced image as embedded content
-INPUTTagInfo=Defines a form control for user input
-INSTagInfo=Defines inserted text
-ISINDEXTagInfo=Defines a single line prompt
-KBDTagInfo=Defines text to be entered by the user
-LABELTagInfo=Defines the label for a form field
-LEGENDTagInfo=Defines the label for a set of form fields
-LITagInfo=Defines a list item within a list
-LINKTagInfo=A media-independent link
-MAPTagInfo=Defines a client-side image map
-MARQUEETagInfo=Displays text as scrolling. Not supported by W3C HTML 4.01.
-MENUTagInfo=Defines a menu list
-METATagInfo=Defines metadata information for the document
-NOBRTagInfo=Overrides and prevents line breaks. Not supported by W3C HTML 4.01.
-NOFRAMESTagInfo=Provides information to display if the current browser does not support frames
-NOSCRIPTTagInfo=Provides information to display if the current browser does not support scripting
-OBJECTTagInfo=Defines a generic embedded object
-OLTagInfo=An ordered list
-OPTGROUPTagInfo=An option group
-OPTIONTagInfo=A selectable choice
-PTagInfo=A paragraph
-PARAMTagInfo=A named property value
-PRETagInfo=Preformatted text
-QTagInfo=A short inline quotation
-STagInfo=Display text in strike-through style
-SAMPTagInfo=Sample program output, scripts, etc. Displays in monospace font.
-SCRIPTTagInfo=Script statements
-SELECTTagInfo=An option selector
-SMALLTagInfo=Displays text as small
-SPANTagInfo=A generic container, which can be used for defining language or style for the contents
-STRIKETagInfo=Display text in strike-through style
-STRONGTagInfo=Displays text as strongly emphasized (generally bold)
-STYLETagInfo=Defines a style for the contained information
-SUBTagInfo=Display as subscript
-SUPTagInfo=Display as superscript
-TABLETagInfo=Defines a table
-TBODYTagInfo=The body of the table
-TDTagInfo=A cell within a table
-TEXTAREATagInfo=A multi-line text field
-TFOOTTagInfo=A table footer
-THTagInfo=A table header cell
-THEADTagInfo=A table header
-TITLETagInfo=The document title, displayed in the browser's title bar
-TRTagInfo=A table row
-TTTagInfo=Displays text in teletype or monospaced text style
-UTagInfo=Displays text as underlined
-ULTagInfo=An unordered list
-VARTagInfo=An instance of a variable or program argument
-WBRTagInfo=Allows a line break within <B>&lt;NOBR&gt;</B> tag. Not supported by W3C HTML 4.01.
diff --git a/bundles/org.eclipse.wst.html.core/data/htmref.xml b/bundles/org.eclipse.wst.html.core/data/htmref.xml
deleted file mode 100644
index 9a5b74c..0000000
--- a/bundles/org.eclipse.wst.html.core/data/htmref.xml
+++ /dev/null
@@ -1,294 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<abstractGrammarAnnotations propertiesLocation="htmref" caseSensitive="false">
-    <annotation spec="A">
-        <property name="tagInfo">%ATagInfo</property>
-    </annotation>
-    <annotation spec="ABBR">
-        <property name="tagInfo">%ABBRTagInfo</property>
-    </annotation>
-    <annotation spec="ACRONYM">
-        <property name="tagInfo">%ACRONYMTagInfo</property>
-    </annotation>
-    <annotation spec="ADDRESS">
-        <property name="tagInfo">%ADDRESSTagInfo</property>
-    </annotation>
-    <annotation spec="APPLET">
-        <property name="tagInfo">%APPLETTagInfo</property>
-    </annotation>
-    <annotation spec="AREA">
-        <property name="tagInfo">%AREATagInfo</property>
-    </annotation>
-    <annotation spec="B">
-        <property name="tagInfo">%BTagInfo</property>
-    </annotation>
-    <annotation spec="BASE">
-        <property name="tagInfo">%BASETagInfo</property>
-    </annotation>
-    <annotation spec="BASEFONT">
-        <property name="tagInfo">%BASEFONTTagInfo</property>
-    </annotation>
-    <annotation spec="BDO">
-        <property name="tagInfo">%BDOTagInfo</property>
-    </annotation>
-    <annotation spec="BGSOUND">
-        <property name="tagInfo">%BGSOUNDTagInfo</property>
-    </annotation>
-    <annotation spec="BIG">
-        <property name="tagInfo">%BIGTagInfo</property>
-    </annotation>
-    <annotation spec="BLINK">
-        <property name="tagInfo">%BLINKTagInfo</property>
-    </annotation>
-    <annotation spec="BLOCKQUOTE">
-        <property name="tagInfo">%BLOCKQUOTETagInfo</property>
-    </annotation>
-    <annotation spec="BODY">
-        <property name="tagInfo">%BODYTagInfo</property>
-    </annotation>
-    <annotation spec="BR">
-        <property name="tagInfo">%BRTagInfo</property>
-    </annotation>
-    <annotation spec="BUTTON">
-        <property name="tagInfo">%BUTTONTagInfo</property>
-    </annotation>
-    <annotation spec="CAPTION">
-        <property name="tagInfo">%CAPTIONTagInfo</property>
-    </annotation>
-    <annotation spec="CENTER">
-        <property name="tagInfo">%CENTERTagInfo</property>
-    </annotation>
-    <annotation spec="CITE">
-        <property name="tagInfo">%CITETagInfo</property>
-    </annotation>
-    <annotation spec="CODE">
-        <property name="tagInfo">%CODETagInfo</property>
-    </annotation>
-    <annotation spec="COL">
-        <property name="tagInfo">%COLTagInfo</property>
-    </annotation>
-    <annotation spec="COLGROUP">
-        <property name="tagInfo">%COLGROUPTagInfo</property>
-    </annotation>
-    <annotation spec="DD">
-        <property name="tagInfo">%DDTagInfo</property>
-    </annotation>
-    <annotation spec="DEL">
-        <property name="tagInfo">%DELTagInfo</property>
-    </annotation>
-    <annotation spec="DFN">
-        <property name="tagInfo">%DFNTagInfo</property>
-    </annotation>
-    <annotation spec="DIR">
-        <property name="tagInfo">%DIRTagInfo</property>
-    </annotation>
-    <annotation spec="DIV">
-        <property name="tagInfo">%DIVTagInfo</property>
-    </annotation>
-    <annotation spec="DL">
-        <property name="tagInfo">%DLTagInfo</property>
-    </annotation>
-    <annotation spec="DT">
-        <property name="tagInfo">%DTTagInfo</property>
-    </annotation>
-    <annotation spec="EM">
-        <property name="tagInfo">%EMTagInfo</property>
-    </annotation>
-    <annotation spec="EMBED">
-        <property name="tagInfo">%EMBEDTagInfo</property>
-    </annotation>
-    <annotation spec="FIELDSET">
-        <property name="tagInfo">%FIELDSETTagInfo</property>
-    </annotation>
-    <annotation spec="FONT">
-        <property name="tagInfo">%FONTTagInfo</property>
-    </annotation>
-    <annotation spec="FORM">
-        <property name="tagInfo">%FORMTagInfo</property>
-    </annotation>
-    <annotation spec="FRAME">
-        <property name="tagInfo">%FRAMETagInfo</property>
-    </annotation>
-    <annotation spec="FRAMESET">
-        <property name="tagInfo">%FRAMESETTagInfo</property>
-    </annotation>
-    <annotation spec="H1">
-        <property name="tagInfo">%H1TagInfo</property>
-    </annotation>
-    <annotation spec="H2">
-        <property name="tagInfo">%H2TagInfo</property>
-    </annotation>
-    <annotation spec="H3">
-        <property name="tagInfo">%H3TagInfo</property>
-    </annotation>
-    <annotation spec="H4">
-        <property name="tagInfo">%H4TagInfo</property>
-    </annotation>
-    <annotation spec="H5">
-        <property name="tagInfo">%H5TagInfo</property>
-    </annotation>
-    <annotation spec="H6">
-        <property name="tagInfo">%H6TagInfo</property>
-    </annotation>
-    <annotation spec="HEAD">
-        <property name="tagInfo">%HEADTagInfo</property>
-    </annotation>
-    <annotation spec="HR">
-        <property name="tagInfo">%HRTagInfo</property>
-    </annotation>
-    <annotation spec="HTML">
-        <property name="tagInfo">%HTMLTagInfo</property>
-    </annotation>
-    <annotation spec="I">
-        <property name="tagInfo">%ITagInfo</property>
-    </annotation>
-    <annotation spec="IFRAME">
-        <property name="tagInfo">%IFRAMETagInfo</property>
-    </annotation>
-    <annotation spec="IMG">
-        <property name="tagInfo">%IMGTagInfo</property>
-    </annotation>
-    <annotation spec="INPUT">
-        <property name="tagInfo">%INPUTTagInfo</property>
-    </annotation>
-    <annotation spec="INS">
-        <property name="tagInfo">%INSTagInfo</property>
-    </annotation>
-    <annotation spec="ISINDEX">
-        <property name="tagInfo">%ISINDEXTagInfo</property>
-    </annotation>
-    <annotation spec="KBD">
-        <property name="tagInfo">%KBDTagInfo</property>
-    </annotation>
-    <annotation spec="LABEL">
-        <property name="tagInfo">%LABELTagInfo</property>
-    </annotation>
-    <annotation spec="LEGEND">
-        <property name="tagInfo">%LEGENDTagInfo</property>
-    </annotation>
-    <annotation spec="LI">
-        <property name="tagInfo">%LITagInfo</property>
-    </annotation>
-    <annotation spec="LINK">
-        <property name="tagInfo">%LINKTagInfo</property>
-    </annotation>
-    <annotation spec="MAP">
-        <property name="tagInfo">%MAPTagInfo</property>
-    </annotation>
-    <annotation spec="MARQUEE">
-        <property name="tagInfo">%MARQUEETagInfo</property>
-    </annotation>
-    <annotation spec="MENU">
-        <property name="tagInfo">%MENUTagInfo</property>
-    </annotation>
-    <annotation spec="META">
-        <property name="tagInfo">%METATagInfo</property>
-    </annotation>
-    <annotation spec="NOBR">
-        <property name="tagInfo">%NOBRTagInfo</property>
-    </annotation>
-    <annotation spec="NOFRAMES">
-        <property name="tagInfo">%NOFRAMESTagInfo</property>
-    </annotation>
-    <annotation spec="NOSCRIPT">
-        <property name="tagInfo">%NOSCRIPTTagInfo</property>
-    </annotation>
-    <annotation spec="OBJECT">
-        <property name="tagInfo">%OBJECTTagInfo</property>
-    </annotation>
-    <annotation spec="OL">
-        <property name="tagInfo">%OLTagInfo</property>
-    </annotation>
-    <annotation spec="OPTGROUP">
-        <property name="tagInfo">%OPTGROUPTagInfo</property>
-    </annotation>
-    <annotation spec="OPTION">
-        <property name="tagInfo">%OPTIONTagInfo</property>
-    </annotation>
-    <annotation spec="P">
-        <property name="tagInfo">%PTagInfo</property>
-    </annotation>
-    <annotation spec="PARAM">
-        <property name="tagInfo">%PARAMTagInfo</property>
-    </annotation>
-    <annotation spec="PRE">
-        <property name="tagInfo">%PRETagInfo</property>
-    </annotation>
-    <annotation spec="Q">
-        <property name="tagInfo">%QTagInfo</property>
-    </annotation>
-    <annotation spec="S">
-        <property name="tagInfo">%STagInfo</property>
-    </annotation>
-    <annotation spec="SAMP">
-        <property name="tagInfo">%SAMPTagInfo</property>
-    </annotation>
-    <annotation spec="SCRIPT">
-        <property name="tagInfo">%SCRIPTTagInfo</property>
-    </annotation>
-    <annotation spec="SELECT">
-        <property name="tagInfo">%SELECTTagInfo</property>
-    </annotation>
-    <annotation spec="SMALL">
-        <property name="tagInfo">%SMALLTagInfo</property>
-    </annotation>
-    <annotation spec="SPAN">
-        <property name="tagInfo">%SPANTagInfo</property>
-    </annotation>
-    <annotation spec="STRIKE">
-        <property name="tagInfo">%STRIKETagInfo</property>
-    </annotation>
-    <annotation spec="STRONG">
-        <property name="tagInfo">%STRONGTagInfo</property>
-    </annotation>
-    <annotation spec="STYLE">
-        <property name="tagInfo">%STYLETagInfo</property>
-    </annotation>
-    <annotation spec="SUB">
-        <property name="tagInfo">%SUBTagInfo</property>
-    </annotation>
-    <annotation spec="SUP">
-        <property name="tagInfo">%SUPTagInfo</property>
-    </annotation>
-    <annotation spec="TABLE">
-        <property name="tagInfo">%TABLETagInfo</property>
-    </annotation>
-    <annotation spec="TBODY">
-        <property name="tagInfo">%TBODYTagInfo</property>
-    </annotation>
-    <annotation spec="TD">
-        <property name="tagInfo">%TDTagInfo</property>
-    </annotation>
-    <annotation spec="TEXTAREA">
-        <property name="tagInfo">%TEXTAREATagInfo</property>
-    </annotation>
-    <annotation spec="TFOOT">
-        <property name="tagInfo">%TFOOTTagInfo</property>
-    </annotation>
-    <annotation spec="TH">
-        <property name="tagInfo">%THTagInfo</property>
-    </annotation>
-    <annotation spec="THEAD">
-        <property name="tagInfo">%THEADTagInfo</property>
-    </annotation>
-    <annotation spec="TITLE">
-        <property name="tagInfo">%TITLETagInfo</property>
-    </annotation>
-    <annotation spec="TR">
-        <property name="tagInfo">%TRTagInfo</property>
-    </annotation>
-    <annotation spec="TT">
-        <property name="tagInfo">%TTTagInfo</property>
-    </annotation>
-    <annotation spec="U">
-        <property name="tagInfo">%UTagInfo</property>
-    </annotation>
-    <annotation spec="UL">
-        <property name="tagInfo">%ULTagInfo</property>
-    </annotation>
-    <annotation spec="VAR">
-        <property name="tagInfo">%VARTagInfo</property>
-    </annotation>
-    <annotation spec="WBR">
-        <property name="tagInfo">%WBRTagInfo</property>
-    </annotation>
-</abstractGrammarAnnotations>
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/data/htmref_de.properties b/bundles/org.eclipse.wst.html.core/data/htmref_de.properties
deleted file mode 100644
index 56cbd6a..0000000
--- a/bundles/org.eclipse.wst.html.core/data/htmref_de.properties
+++ /dev/null
@@ -1,108 +0,0 @@
-###############################################################################
-# Copyright (c) 2004 IBM Corporation and others.
-# All rights reserved. This program and the accompanying materials
-# are made available under the terms of the Eclipse Public License v1.0
-# which accompanies this distribution, and is available at
-# http://www.eclipse.org/legal/epl-v10.html
-# 
-# Contributors:
-#     IBM Corporation - initial API and implementation
-###############################################################################
-
-ATagInfo=Ein Link, falls das Attribut 'href' vorhanden ist, bzw. das Ziel f\u00fcr einen Link, wenn das Attribut 'name' vorhanden ist
-ABBRTagInfo=Abk\u00fcrzung (z. B. WWW, HTTP)
-ACRONYMTagInfo=Akronym (z. B. SCUBA)
-ADDRESSTagInfo=Adressinformationen f\u00fcr den Autor der Seite
-APPLETTagInfo=Java-Applet
-AREATagInfo=Definiert einen clientseitigen Imagezuordnungsbereich
-BTagInfo=Zeigt enthaltenen Text in Fettformatierung an
-BASETagInfo=Basis-URI f\u00fcr die Seite, wird bei der Berechnung relativer Pfade verwendet
-BASEFONTTagInfo=Basisschriftartgr\u00f6\u00dfe f\u00fcr die Seite
-BDOTagInfo=\u00dcberschreibt Standardanzeige im Bidirektionalformat, wird mit bidirektionalen Sprachen (BIDI-Sprachen) verwendet
-BIGTagInfo=Zeigt enthaltenen Text in gro\u00dfer Schrift an
-BGSOUNDTagInfo=Definiert eine Audiodatei f\u00fcr die Seite. Wird durch W3C HTML 4.01 nicht unterst\u00fctzt.
-BLINKTagInfo=Zeigt Text blinkend an. Wird durch W3C HTML 4.01 nicht unterst\u00fctzt.
-BLOCKQUOTETagInfo=Langes Zitat
-BODYTagInfo=Dokumenthauptteil, der den gesamten Inhalt f\u00fcr die Seite enth\u00e4lt
-BRTagInfo=Erzwingt einen Zeilenumbruch
-BUTTONTagInfo=Definiert eine Schaltfl\u00e4che
-CAPTIONTagInfo=Definiert eine Tabellen\u00fcberschrift
-CENTERTagInfo=Zeigt enthaltenen Text in zentriert an. Ist \u00e4quivalent zu DIV mit 'align=center'.
-CITETagInfo=Zitat
-CODETagInfo=Computer-Codefragment
-COLTagInfo=Tabellenspalte
-COLGROUPTagInfo=Gruppe von Tabellenspalten
-DDTagInfo=Definition oder Beschreibung in einer Definitions- oder Beschreibungsliste
-DELTagInfo=Zeigt Text als gel\u00f6scht an
-DFNTagInfo=Definition
-DIRTagInfo=Verzeichnisliste
-DIVTagInfo=Generischer Container, der zum Definieren von Sprache oder Darstellung f\u00fcr den Inhalt verwendet werden kann
-DLTagInfo=Definitions- oder Beschreibungsliste
-DTTagInfo=Begriff oder Thema in einer Definitions- oder Beschreibungsliste
-EMTagInfo=Zeigt Text hervorgehoben an (normalerweise kursiv)
-EMBEDTagInfo=Definiert ein eingebettetes Plug-in. Wird durch W3C HTML 4.01 nicht unterst\u00fctzt.
-FIELDSETTagInfo=Definiert eine Gruppe von Formularsteuerelementen
-FONTTagInfo=Zeigt Text in der angegebenen Schriftart an
-FORMTagInfo=Definiert ein interaktives Formular
-FRAMETagInfo=Definiert einen Frame im aktuellen Fenster
-FRAMESETTagInfo=Definiert ein Frameset, das das Fenster in zwei Frames unterteilt
-H1TagInfo=\u00dcberschrift der h\u00f6chsten Ebene
-H2TagInfo=\u00dcberschrift der zweiten Ebene
-H3TagInfo=\u00dcberschrift der dritten Ebene
-H4TagInfo=\u00dcberschrift der vierten Ebene
-H5TagInfo=\u00dcberschrift der f\u00fcnften Ebene
-H6TagInfo=\u00dcberschrift der sechsten Ebene
-HEADTagInfo=Enth\u00e4lt Metadaten und Fenstertitelinformationen f\u00fcr das Dokument
-HRTagInfo=Horizontale Skala (Lineal)
-HTMLTagInfo=Stammelement f\u00fcr das Dokument
-ITagInfo=Zeigt Text kursiv an.
-IFRAMETagInfo=Definiert ein Inline-Unterfenster
-IMGTagInfo=Zeigt das Image, auf das verwiesen wird, als eingebetteten Inhalt an
-INPUTTagInfo=Definiert ein Formularsteuerelement f\u00fcr die Benutzereingabe
-INSTagInfo=Definiert eingef\u00fcgten Text
-ISINDEXTagInfo=Definiert eine einzeilige Eingabeaufforderung
-KBDTagInfo=Definiert Text, der durch den Benutzer eingegeben werden muss
-LABELTagInfo=Definiert die Beschriftung f\u00fcr ein Formularfeld
-LEGENDTagInfo=Definiert die Beschriftung f\u00fcr eine Gruppe von Formularfeldern
-LITagInfo=Definiert einen Listeneintrag in einer Liste
-LINKTagInfo=Datentr\u00e4gerunabh\u00e4ngiger Link
-MAPTagInfo=Definiert eine clientseitige Imagezuordnung
-MARQUEETagInfo=Zeigt Text verschiebbar an. Wird durch W3C HTML 4.01 nicht unterst\u00fctzt.
-MENUTagInfo=Definiert eine Men\u00fcliste
-METATagInfo=Definiert Metadateninformationen f\u00fcr das Dokument
-NOBRTagInfo=\u00dcberschreibt und verhindert Zeilenumbr\u00fcche. Wird durch W3C HTML 4.01 nicht unterst\u00fctzt.
-NOFRAMESTagInfo=Stellt Informationen bereit, die angezeigt werden sollen, wenn der aktuelle Browser keine Frames unterst\u00fctzt
-NOSCRIPTTagInfo=Stellt Informationen bereit, die angezeigt werden sollen, wenn der aktuelle Browser keine Scripterstellung unterst\u00fctzt
-OBJECTTagInfo=Definiert ein generisches eingebettetes Objekt
-OLTagInfo=Sortierte Liste
-OPTGROUPTagInfo=Optionsgruppe
-OPTIONTagInfo=Ausw\u00e4hlbare Option
-PTagInfo=Absatz
-PARAMTagInfo=Benannter Eigenschaftswert
-PRETagInfo=Vorformatierter Text
-QTagInfo=Kurzes Inline-Zitat
-STagInfo=Zeigt Text in durchgestrichener Darstellung an
-SAMPTagInfo=Beispielprogrammausgabe, Skripts usw., wird in Monospaceschrift angezeigt
-SCRIPTTagInfo=Scriptanweisungen
-SELECTTagInfo=Optionsselektor
-SMALLTagInfo=Zeigt Text in kleiner Schrift an
-SPANTagInfo=Generischer Container, der zum Definieren von Sprache oder Darstellung f\u00fcr den Inhalt verwendet werden kann
-STRIKETagInfo=Zeigt Text in durchgestrichener Darstellung an
-STRONGTagInfo=Zeigt Text stark hervorgehoben an (normalerweise fett)
-STYLETagInfo=Definiert eine Darstellung f\u00fcr die enthaltenen Informationen
-SUBTagInfo=Zeigt Zeichen tiefgestellt an
-SUPTagInfo=Zeigt Zeichen hochgestellt an
-TABLETagInfo=Definiert eine Tabelle
-TBODYTagInfo=Hauptteil der Tabelle
-TDTagInfo=Zelle in einer Tabelle
-TEXTAREATagInfo=Mehrzeiliges Textfeld
-TFOOTTagInfo=Tabellenfu\u00dfzeile
-THTagInfo=Tabellen\u00fcberschriftszelle
-THEADTagInfo=Tabellen\u00fcberschrift
-TITLETagInfo=Dokumenttitel, der in der Titelleiste des Browsers angezeigt wird
-TRTagInfo=Tabellenzeile
-TTTagInfo=Zeigt Text in Teletype-Schriftart oder Monospaceschrift an
-UTagInfo=Zeigt Text unterstrichen an
-ULTagInfo=Ungeordnete Liste
-VARTagInfo=Exemplar einer Variablen oder eines Programmarguments
-WBRTagInfo=L\u00e4sst einen Zeilenumbruch in Tags <B>&lt;NOBR&gt;</B> zu. Wird durch W3C HTML 4.01 nicht unterst\u00fctzt.
diff --git a/bundles/org.eclipse.wst.html.core/data/htmref_es.properties b/bundles/org.eclipse.wst.html.core/data/htmref_es.properties
deleted file mode 100644
index 2166de9..0000000
--- a/bundles/org.eclipse.wst.html.core/data/htmref_es.properties
+++ /dev/null
@@ -1,108 +0,0 @@
-###############################################################################
-# Copyright (c) 2004 IBM Corporation and others.
-# All rights reserved. This program and the accompanying materials
-# are made available under the terms of the Eclipse Public License v1.0
-# which accompanies this distribution, and is available at
-# http://www.eclipse.org/legal/epl-v10.html
-# 
-# Contributors:
-#     IBM Corporation - initial API and implementation
-###############################################################################
-
-ATagInfo=Enlace si est\u00e1 presente el atributo href, y destino de un enlace si est\u00e1 presente el atributo name
-ABBRTagInfo=Abreviatura (por ejemplo, WWW, HTTP)
-ACRONYMTagInfo=Acr\u00f3nimo (por ejemplo, SCUBA)
-ADDRESSTagInfo=Informaci\u00f3n de direcci\u00f3n para el autor de la p\u00e1gina
-APPLETTagInfo=Applet Java
-AREATagInfo=Define un \u00e1rea de mapa de imagen del lado del cliente
-BTagInfo=Visualiza texto contenido en negrita
-BASETagInfo=URI base de la p\u00e1gina, que debe utilizarse al calcular v\u00edas de acceso relativas
-BASEFONTTagInfo=Tama\u00f1o de font base de la p\u00e1gina
-BDOTagInfo=Altera temporalmente la visualizaci\u00f3n bidireccional predeterminada. Para utilizarlo con lenguajes bidireccionales.
-BIGTagInfo=Visualiza texto contenido en forma extensa
-BGSOUNDTagInfo=Define un archivo de sonido para la p\u00e1gina. No soportado en W3C HTML 4.01.
-BLINKTagInfo=Visualiza texto parpadeante. No soportado en W3C HTML 4.01.
-BLOCKQUOTETagInfo=Cita larga
-BODYTagInfo=Cuerpo del documento. Contiene todos los elementos de la p\u00e1gina.
-BRTagInfo=Fuerza un salto de l\u00ednea
-BUTTONTagInfo=Define un pulsador
-CAPTIONTagInfo=Define un t\u00edtulo de tabla
-CENTERTagInfo=Visualiza texto centrado. Equivalente a DIV con align=center.
-CITETagInfo=Cita
-CODETagInfo=Fragmento de c\u00f3digo de sistema
-COLTagInfo=Columna de tabla
-COLGROUPTagInfo=Grupo de columnas de tabla
-DDTagInfo=Definici\u00f3n o descripci\u00f3n de una lista de definiciones o descripciones
-DELTagInfo=Visualiza texto suprimido
-DFNTagInfo=Definici\u00f3n
-DIRTagInfo=Lista de directorios
-DIVTagInfo=Contenedor gen\u00e9rico, que puede utilizarse para definir el idioma o el estilo del contenido
-DLTagInfo=Lista de definiciones o descripciones
-DTTagInfo=T\u00e9rmino o tema de una lista de definiciones o descripciones
-EMTagInfo=Visualiza texto enfatizado (generalmente en cursiva)
-EMBEDTagInfo=Define un conector incorporado. No soportado en W3C HTML 4.01.
-FIELDSETTagInfo=Define un grupo de control de formularios
-FONTTagInfo=Visualiza texto en el font dado
-FORMTagInfo=Define un formulario interactivo
-FRAMETagInfo=Define un marco dentro de la ventana actual
-FRAMESETTagInfo=Define un conjunto de marcos que divide la ventana en marcos
-H1TagInfo=Cabecera de alto nivel
-H2TagInfo=Cabecera de segundo nivel
-H3TagInfo=Cabecera de tercer nivel
-H4TagInfo=Cabecera de cuarto nivel
-H5TagInfo=Cabecera de quinto nivel
-H6TagInfo=Cabecera de sexto nivel
-HEADTagInfo=Contiene metadatos e informaci\u00f3n de t\u00edtulo de ventanas para el documento
-HRTagInfo=Regla horizontal
-HTMLTagInfo=Elemento ra\u00edz para el documento
-ITagInfo=Visualiza texto en cursiva
-IFRAMETagInfo=Define una subventana incorporada
-IMGTagInfo=Visualiza la imagen a la que se hace referencia en forma de contenido intercalado
-INPUTTagInfo=Define un control de formulario para la entrada del usuario
-INSTagInfo=Define texto insertado
-ISINDEXTagInfo=Define una solicitud de una sola l\u00ednea
-KBDTagInfo=Define texto que el usuario debe especificar
-LABELTagInfo=Define la etiqueta de un campo de formulario
-LEGENDTagInfo=Define la etiqueta de un conjunto de campos de formulario
-LITagInfo=Define un elemento de lista de una lista
-LINKTagInfo=Enlace independiente de medios
-MAPTagInfo=Define un mapa de imagen del lado del cliente
-MARQUEETagInfo=Visualiza texto en forma desplazable. No soportado en W3C HTML 4.01.
-MENUTagInfo=Define una lista de men\u00fas
-METATagInfo=Define informaci\u00f3n de metadatos para el documento
-NOBRTagInfo=Altera temporalmente e impide los saltos de l\u00ednea. No soportado en W3C HTML 4.01.
-NOFRAMESTagInfo=Proporciona informaci\u00f3n de visualizaci\u00f3n si el navegador actual no da soporte a marcos.
-NOSCRIPTTagInfo=Proporciona informaci\u00f3n de visualizaci\u00f3n si el navegador actual no da soporte a scripts.
-OBJECTTagInfo=Define un objeto gen\u00e9rico incorporado
-OLTagInfo=Lista ordenada
-OPTGROUPTagInfo=Grupo de opciones
-OPTIONTagInfo=Opci\u00f3n seleccionable
-PTagInfo=P\u00e1rrafo
-PARAMTagInfo=Valor de propiedad con nombre
-PRETagInfo=Texto preformateado
-QTagInfo=Cita corta incorporada
-STagInfo=Visualiza texto en estilo tachado
-SAMPTagInfo=Salida de programa de ejemplo, scripts, etc. Se visualiza en font monoespacio.
-SCRIPTTagInfo=Sentencias de script
-SELECTTagInfo=Selector de opciones
-SMALLTagInfo=Visualiza texto en forma reducida
-SPANTagInfo=Contenedor gen\u00e9rico, que puede utilizarse para definir el idioma o el estilo del contenido
-STRIKETagInfo=Visualiza texto en estilo tachado
-STRONGTagInfo=Visualiza texto muy enfatizado (generalmente en negrita)
-STYLETagInfo=Define un estilo para la informaci\u00f3n que contiene
-SUBTagInfo=Visualizar como subscript
-SUPTagInfo=Visualizar como superscript
-TABLETagInfo=Define una tabla
-TBODYTagInfo=Cuerpo de la tabla
-TDTagInfo=Casilla de la tabla
-TEXTAREATagInfo=Campo de texto multil\u00ednea
-TFOOTTagInfo=Pie de de p\u00e1gina de tabla
-THTagInfo=Casilla de cabecera de tabla
-THEADTagInfo=Cabecera de tabla
-TITLETagInfo=T\u00edtulo del documento, visualizado en la barra de t\u00edtulo del navegador
-TRTagInfo=Fila de tabla
-TTTagInfo=Visualiza texto en estilo de texto teletipo o monoespacio
-UTagInfo=Visualiza texto subrayado
-ULTagInfo=Lista desordenada
-VARTagInfo=Instancia de una variable o argumento de programa
-WBRTagInfo=Permite un salto de l\u00ednea dentro del c\u00f3digo <B>&lt;NOBR&gt;</B>. No soportado en W3C HTML 4.01.
diff --git a/bundles/org.eclipse.wst.html.core/data/htmref_fr.properties b/bundles/org.eclipse.wst.html.core/data/htmref_fr.properties
deleted file mode 100644
index b8817bb..0000000
--- a/bundles/org.eclipse.wst.html.core/data/htmref_fr.properties
+++ /dev/null
@@ -1,108 +0,0 @@
-###############################################################################
-# Copyright (c) 2004 IBM Corporation and others.
-# All rights reserved. This program and the accompanying materials
-# are made available under the terms of the Eclipse Public License v1.0
-# which accompanies this distribution, and is available at
-# http://www.eclipse.org/legal/epl-v10.html
-# 
-# Contributors:
-#     IBM Corporation - initial API and implementation
-###############################################################################
-
-ATagInfo=Lien si l'attribut "href" est indiqu\u00e9. Cible d'un lien si l'attribut "name" est indiqu\u00e9
-ABBRTagInfo=Abr\u00e9viation (par exemple, WWW, HTTP)
-ACRONYMTagInfo=Acronyme (par exemple, SCUBA)
-ADDRESSTagInfo=Informations relatives aux adresses de l'auteur de la page
-APPLETTagInfo=Applet Java
-AREATagInfo=D\u00e9finit la zone d'une image hypertexte c\u00f4t\u00e9 client
-BTagInfo=Affiche en gras le texte indiqu\u00e9
-BASETagInfo=URI de base de la page \u00e0 utiliser lors du calcul des chemins relatifs
-BASEFONTTagInfo=Taille de base de la police dans la page
-BDOTagInfo=Remplace l'affichage bidirectionnel par d\u00e9faut. S'applique aux langues bidirectionnelles
-BIGTagInfo=Affiche le texte en gros caract\u00e8res
-BGSOUNDTagInfo=D\u00e9finit un fichier son pour la page. Pas pris en charge par W3C HTML 4.0.1
-BLINKTagInfo=Affiche un texte qui clignote. Pas pris en charge par W3C HTML 4.0.1
-BLOCKQUOTETagInfo=Longue citation
-BODYTagInfo=Corps du document. Inclut tout le contenu de la page
-BRTagInfo=Force un retour \u00e0 la ligne
-BUTTONTagInfo=D\u00e9finit un bouton de fonction
-CAPTIONTagInfo=D\u00e9finit la l\u00e9gende d'un tableau
-CENTERTagInfo=Centre le texte indiqu\u00e9. Correspond \u00e0 DIV avec align=center
-CITETagInfo=Citation
-CODETagInfo=Fragment de code de l'ordinateur
-COLTagInfo=Colonne d'un tableau
-COLGROUPTagInfo=Groupe de colonnes d'un tableau
-DDTagInfo=D\u00e9finition ou description dans une liste de d\u00e9finitions ou de descriptions
-DELTagInfo=Affiche le texte comme \u00e9tant supprim\u00e9
-DFNTagInfo=D\u00e9finition
-DIRTagInfo=Liste de r\u00e9pertoires
-DIVTagInfo=Conteneur g\u00e9n\u00e9rique permettant de d\u00e9finir la langue ou le style du contenu
-DLTagInfo=Liste de d\u00e9finitions ou de descriptions
-DTTagInfo=Terme ou sujet dans une liste de d\u00e9finitions ou de descriptions
-EMTagInfo=Met le texte en \u00e9vidence (en g\u00e9n\u00e9ral en italique)
-EMBEDTagInfo=D\u00e9finit un plug-in imbriqu\u00e9. Pas pris en charge par W3C HTML 4.0.1
-FIELDSETTagInfo=D\u00e9finit un groupe de contr\u00f4le du formulaire
-FONTTagInfo=Affiche le texte dans la police indiqu\u00e9e
-FORMTagInfo=D\u00e9finit un formulaire interactif
-FRAMETagInfo=D\u00e9finit un cadre dans la fen\u00eatre en cours
-FRAMESETTagInfo=D\u00e9finit un ensemble de cadres qui divisent la fen\u00eatre en plusieurs cadres
-H1TagInfo=Titre de niveau sup\u00e9rieur
-H2TagInfo=Titre de deuxi\u00e8me niveau
-H3TagInfo=Titre de troisi\u00e8me niveau
-H4TagInfo=Titre de quatri\u00e8me niveau
-H5TagInfo=Titre de cinqui\u00e8me niveau
-H6TagInfo=Titre de sixi\u00e8me niveau
-HEADTagInfo=Contient des informations sur les m\u00e9tadonn\u00e9es et le titre de la fen\u00eatre d'un document
-HRTagInfo=R\u00e8gle horizontale
-HTMLTagInfo=El\u00e9ment racine du document
-ITagInfo=Affiche le texte en italique
-IFRAMETagInfo=D\u00e9finit une sous-fen\u00eatre int\u00e9gr\u00e9e
-IMGTagInfo=Affiche l'image r\u00e9f\u00e9renc\u00e9e sous la forme d'un contenu imbriqu\u00e9
-INPUTTagInfo=D\u00e9finit un contr\u00f4le de formulaire pour les donn\u00e9es entr\u00e9es par l'utilisateur
-INSTagInfo=D\u00e9finit le texte ins\u00e9r\u00e9
-ISINDEXTagInfo=D\u00e9finit un message d'une seule ligne
-KBDTagInfo=D\u00e9finit le texte que l'utilisateur doit entrer
-LABELTagInfo=D\u00e9finit le libell\u00e9 d'une zone du formulaire
-LEGENDTagInfo=D\u00e9finit le libell\u00e9 d'un ensemble de zones du formulaire
-LITagInfo=D\u00e9finit un \u00e9l\u00e9ment dans une liste
-LINKTagInfo=Lien ind\u00e9pendant d'un support
-MAPTagInfo=D\u00e9finit une image hypertexte c\u00f4t\u00e9 client
-MARQUEETagInfo=Affiche un texte qui d\u00e9file. Pas pris en charge par W3C HTML 4.0.1
-MENUTagInfo=D\u00e9finit une liste de type menu
-METATagInfo=D\u00e9finit des informations sur les m\u00e9tadonn\u00e9es du document
-NOBRTagInfo=Remplace et emp\u00eache les retours \u00e0 la ligne. Pas pris en charge par W3C HTML 4.0.1
-NOFRAMESTagInfo=Fournit les informations \u00e0 afficher si le navigateur en cours ne prend pas en charge les cadres
-NOSCRIPTTagInfo=Fournit les informations \u00e0 afficher si le navigateur en cours ne prend pas en charge le scriptage
-OBJECTTagInfo=D\u00e9finit un objet imbriqu\u00e9 g\u00e9n\u00e9rique
-OLTagInfo=Liste num\u00e9rot\u00e9e
-OPTGROUPTagInfo=Groupe d'options
-OPTIONTagInfo=Option disponible pour effectuer une s\u00e9lection
-PTagInfo=Paragraphe
-PARAMTagInfo=Valeur de la propri\u00e9t\u00e9 indiqu\u00e9e
-PRETagInfo=Texte pr\u00e9format\u00e9
-QTagInfo=Citation courte et ins\u00e9r\u00e9e
-STagInfo=Affiche un texte barr\u00e9
-SAMPTagInfo=Exemple de donn\u00e9es g\u00e9n\u00e9r\u00e9es par un programme, scripts, etc. Affiche les donn\u00e9es dans une police \u00e0 ch\u00e2sse fixe
-SCRIPTTagInfo=Instructions du script
-SELECTTagInfo=Fonction de s\u00e9lection d'options
-SMALLTagInfo=Affiche le texte en petits caract\u00e8res
-SPANTagInfo=Conteneur g\u00e9n\u00e9rique permettant de d\u00e9finir la langue ou le style du contenu
-STRIKETagInfo=Affiche un texte barr\u00e9
-STRONGTagInfo=Met le texte en \u00e9vidence (en g\u00e9n\u00e9ral en gras)
-STYLETagInfo=D\u00e9finit un style pour les informations indiqu\u00e9es
-SUBTagInfo=Affiche les donn\u00e9es sous la forme d'un indice
-SUPTagInfo=Affiche les donn\u00e9es sous la forme d'un exposant
-TABLETagInfo=D\u00e9finit un tableau
-TBODYTagInfo=Corps d'un tableau
-TDTagInfo=Cellule d'un tableau
-TEXTAREATagInfo=Zone de texte comportant plusieurs lignes
-TFOOTTagInfo=Pied de page d'un tableau
-THTagInfo=Cellule d'en-t\u00eate d'un tableau
-THEADTagInfo=En-t\u00eate d'un tableau
-TITLETagInfo=Titre du document affich\u00e9 dans la barre de titre du navigateur
-TRTagInfo=Ligne d'un tableau
-TTTagInfo=Affiche le texte en mode t\u00e9l\u00e9type ou avec une police \u00e0 ch\u00e2sse fixe
-UTagInfo=Souligne le texte
-ULTagInfo=Liste non num\u00e9rot\u00e9e
-VARTagInfo=Instance d'une variable ou d'un argument de programme
-WBRTagInfo=Permet un retour \u00e0 la ligne \u00e0 l'int\u00e9rieur de la balise <B>&lt;NOBR&gt;</B>. Pas pris en charge par W3C HTML 4.0.1
diff --git a/bundles/org.eclipse.wst.html.core/data/htmref_it.properties b/bundles/org.eclipse.wst.html.core/data/htmref_it.properties
deleted file mode 100644
index 6e6e0da..0000000
--- a/bundles/org.eclipse.wst.html.core/data/htmref_it.properties
+++ /dev/null
@@ -1,108 +0,0 @@
-###############################################################################
-# Copyright (c) 2004 IBM Corporation and others.
-# All rights reserved. This program and the accompanying materials
-# are made available under the terms of the Eclipse Public License v1.0
-# which accompanies this distribution, and is available at
-# http://www.eclipse.org/legal/epl-v10.html
-# 
-# Contributors:
-#     IBM Corporation - initial API and implementation
-###############################################################################
-
-ATagInfo=Collegamento, se \u00e8 presente l'attributo href, e destinazione per il collegamento, se \u00e8 presente l'attributo nome
-ABBRTagInfo=Abbreviazione (ad esempio, WWW, HTTP)
-ACRONYMTagInfo=Acronimo (ad esempio, SCUBA)
-ADDRESSTagInfo=Informazioni relative all'indirizzo dell'autore della pagina
-APPLETTagInfo=Applet Java
-AREATagInfo=Definisce un'area di mappe immagini sul lato client
-BTagInfo=Visualizza il testo contenuto come grassetto
-BASETagInfo=URI di base della pagina, da utilizzare durante il calcolo dei percorsi relativi
-BASEFONTTagInfo=Dimensione di base del tipo di carattere della pagina
-BDOTagInfo=Sostituisce la visualizzazione bidirezionale predefinita. Per l'utilizzo con linguaggi bidirezionali.
-BIGTagInfo=Visualizza il testo contenuto come grande
-BGSOUNDTagInfo=Definisce un file audio della pagina. Non supportato da W3C HTML 4.01.
-BLINKTagInfo=Visualizza il testo come lampeggiante. Non supportato da W3C HTML 4.01.
-BLOCKQUOTETagInfo=Lunga citazione
-BODYTagInfo=Corpo del documento. Racchiude tutto il contenuto della pagina.
-BRTagInfo=Determina un'interruzione di riga
-BUTTONTagInfo=Definisce un pulsante di comando
-CAPTIONTagInfo=Definisce la didascalia di una tabella
-CENTERTagInfo=Visualizza il testo contenuto come centrato. Equivalente a DIV con align=center.
-CITETagInfo=Citazione
-CODETagInfo=Frammento di codice del computer
-COLTagInfo=Colonna di tabella
-COLGROUPTagInfo=Gruppo di colonne di tabella
-DDTagInfo=Definizione o descrizione in un'elenco di definizioni o descrizioni
-DELTagInfo=Visualizza il testo come eliminato
-DFNTagInfo=Definizione
-DIRTagInfo=Elenco di directory
-DIVTagInfo=Contenitore generico, che pu\u00f2 essere utilizzato per la definizione del linguaggio o dello stile del contenuto
-DLTagInfo=Elenco di definizioni o descrizioni
-DTTagInfo=Termine o argomento in un elenco di definizioni o descrizioni
-EMTagInfo=Visualizza il testo evidenziato (in genere in corsivo)
-EMBEDTagInfo=Definisce un plugin incorporato. Non supportato da W3C HTML 4.01.
-FIELDSETTagInfo=Definisce un gruppo di controllo modulo
-FONTTagInfo=Visualizza il testo nel tipo di carattere dato
-FORMTagInfo=Definisce un form interattivo
-FRAMETagInfo=Definisce un frame all'interni della finestra corrente
-FRAMESETTagInfo=Definisce un frameset che divide la finestra in frame
-H1TagInfo=Intestazione di primo livello
-H2TagInfo=Intestazione di secondo livello
-H3TagInfo=Intestazione di terzo livello
-H4TagInfo=Intestazione di quarto livello
-H5TagInfo=Intestazione di quinto livello
-H6TagInfo=Intestazione di sesto livello
-HEADTagInfo=Contiene metadati e informazioni sul titolo della finestra del documento
-HRTagInfo=Riga orizzontale
-HTMLTagInfo=Elemento principale del documento.
-ITagInfo=Visualizza il testo come corsivo
-IFRAMETagInfo=Definisce una finestra secondaria incorporata
-IMGTagInfo=Visualizza l'immagine di riferimento come contenuto incorporato
-INPUTTagInfo=Definisce un controllo modulo per l'input dell'utente
-INSTagInfo=Definisce un testo inserito
-ISINDEXTagInfo=Definisce un prompt a riga singola
-KBDTagInfo=Definisce il testo che deve essere immesso dall'utente
-LABELTagInfo=Definisce l'etichetta per un campo modulo
-LEGENDTagInfo=Definisce l'etichetta per un insieme di campi modulo
-LITagInfo=Definisce una voce di elenco all'interno di un elenco
-LINKTagInfo=Collegamento indipendente dal supporto
-MAPTagInfo=Definisce una mappa immagini sul lato client
-MARQUEETagInfo=Visualizza il testo in scorrimento. Non supportato da W3C HTML 4.01.
-MENUTagInfo=Definisce un elenco di menu
-METATagInfo=Definisce le informazioni sui metadati del documento
-NOBRTagInfo=Sostituisce ed evita le interruzioni di riga. Non supportato da W3C HTML 4.01.
-NOFRAMESTagInfo=Fornisce informazioni per visualizzare se il browser corrente non supporta frame
-NOSCRIPTTagInfo=Fornisce informazioni per visualizzare se il browser corrente non supporta script
-OBJECTTagInfo=Definisce un oggetto incorporato generico
-OLTagInfo=Elenco ordinato
-OPTGROUPTagInfo=Gruppo di opzioni
-OPTIONTagInfo=Opzione selezionabile
-PTagInfo=Paragrafo
-PARAMTagInfo=Valore propriet\u00e0 denominata
-PRETagInfo=Testo preformattato
-QTagInfo=Breve citazione incorporata
-STagInfo=Visualizza il testo in stile barrato
-SAMPTagInfo=Output di programmi di esempio, script e cos\u00ec via. Viene visualizzato in un tipo di carattere monospazio.
-SCRIPTTagInfo=Istruzioni di script
-SELECTTagInfo=Selettore di opzioni
-SMALLTagInfo=Visualizza il testo come piccolo
-SPANTagInfo=Contenitore generico, che pu\u00f2 essere utilizzato per la definizione del linguaggio o dello stile del contenuto
-STRIKETagInfo=Visualizza il testo in stile barrato
-STRONGTagInfo=Visualizza il testo evidenziato in maniera netta (in genere in grassetto)
-STYLETagInfo=Definisce uno stile per le informazioni contenute
-SUBTagInfo=Visualizza come pedice
-SUPTagInfo=Visualizza come apice
-TABLETagInfo=Definisce una tabella
-TBODYTagInfo=Corpo della tabella
-TDTagInfo=Cella all'interno di una tabella
-TEXTAREATagInfo=Campo di testo a pi\u00f9 righe
-TFOOTTagInfo=Pi\u00e8 di pagina tabella
-THTagInfo=Cella di intestazione di una tabella
-THEADTagInfo=Intestazione tabella
-TITLETagInfo=Titolo del documento, visualizzato nella barra del titolo del browser
-TRTagInfo=Riga di tabella
-TTTagInfo=Visualizza il testo in stile testo telescrivente o monospazio
-UTagInfo=Visualizza il testo come sottolineato
-ULTagInfo=Elenco non ordinato
-VARTagInfo=Istanza di una variabile o di un argomento del programma
-WBRTagInfo=Consente un'interruzione di riga all'interno del tag <B>&lt;NOBR&gt;</B>. Non supportato da W3C HTML 4.01.
diff --git a/bundles/org.eclipse.wst.html.core/data/htmref_ja.properties b/bundles/org.eclipse.wst.html.core/data/htmref_ja.properties
deleted file mode 100644
index b997445..0000000
--- a/bundles/org.eclipse.wst.html.core/data/htmref_ja.properties
+++ /dev/null
@@ -1,108 +0,0 @@
-###############################################################################
-# Copyright (c) 2004 IBM Corporation and others.
-# All rights reserved. This program and the accompanying materials
-# are made available under the terms of the Eclipse Public License v1.0
-# which accompanies this distribution, and is available at
-# http://www.eclipse.org/legal/epl-v10.html
-# 
-# Contributors:
-#     IBM Corporation - initial API and implementation
-###############################################################################
-
-ATagInfo=href \u5c5e\u6027\u304c\u5b58\u5728\u3059\u308b\u5834\u5408\u306f\u30ea\u30f3\u30af\u3001\u304a\u3088\u3073 name \u5c5e\u6027\u304c\u5b58\u5728\u3059\u308b\u5834\u5408\u306f\u30ea\u30f3\u30af\u306e\u30bf\u30fc\u30b2\u30c3\u30c8
-ABBRTagInfo=\u7701\u7565\u5f62 (\u305f\u3068\u3048\u3070 WWW\u3001HTTP \u306a\u3069)
-ACRONYMTagInfo=\u982d\u5b57\u8a9e (\u305f\u3068\u3048\u3070 SCUBA \u306a\u3069)
-ADDRESSTagInfo=\u30da\u30fc\u30b8\u4f5c\u6210\u8005\u306e\u30a2\u30c9\u30ec\u30b9\u60c5\u5831
-APPLETTagInfo=Java \u30a2\u30d7\u30ec\u30c3\u30c8
-AREATagInfo=\u30af\u30e9\u30a4\u30a2\u30f3\u30c8\u30fb\u30b5\u30a4\u30c9\u30fb\u30a4\u30e1\u30fc\u30b8\u30fb\u30de\u30c3\u30d7\u30fb\u30a8\u30ea\u30a2\u3092\u5b9a\u7fa9
-BTagInfo=\u542b\u307e\u308c\u3066\u3044\u308b\u30c6\u30ad\u30b9\u30c8\u3092\u592a\u5b57\u3067\u8868\u793a
-BASETagInfo=\u30da\u30fc\u30b8\u306e\u57fa\u672c URI (\u76f8\u5bfe\u30d1\u30b9\u306e\u8a08\u7b97\u6642\u306b\u4f7f\u7528\u3055\u308c\u308b)
-BASEFONTTagInfo=\u30da\u30fc\u30b8\u306e\u57fa\u672c\u30d5\u30a9\u30f3\u30c8\u30fb\u30b5\u30a4\u30ba
-BDOTagInfo=\u30c7\u30d5\u30a9\u30eb\u30c8\u306e\u53cc\u65b9\u5411\u8868\u793a\u3092\u6307\u5b9a\u5909\u66f4\u3002 \u53cc\u65b9\u5411\u8a00\u8a9e\u3068\u5171\u306b\u4f7f\u7528\u3002
-BIGTagInfo=\u30c6\u30ad\u30b9\u30c8\u3092\u30e9\u30fc\u30b8\u30fb\u30d5\u30a9\u30f3\u30c8\u3067\u8868\u793a
-BGSOUNDTagInfo=\u30da\u30fc\u30b8\u306e\u30b5\u30a6\u30f3\u30c9\u30fb\u30d5\u30a1\u30a4\u30eb\u3092\u5b9a\u7fa9\u3002 W3C HTML 4.01 \u3067\u306f\u975e\u30b5\u30dd\u30fc\u30c8\u3002
-BLINKTagInfo=\u30c6\u30ad\u30b9\u30c8\u3092\u660e\u6ec5\u3067\u8868\u793a\u3002 W3C HTML 4.01 \u3067\u306f\u975e\u30b5\u30dd\u30fc\u30c8\u3002
-BLOCKQUOTETagInfo=\u9577\u3044\u5f15\u7528
-BODYTagInfo=\u6587\u66f8\u672c\u6587\u3002\u30da\u30fc\u30b8\u306e\u3059\u3079\u3066\u306e\u5185\u5bb9\u3092\u542b\u3080\u3002
-BRTagInfo=\u6539\u884c\u3092\u5f37\u5236
-BUTTONTagInfo=\u30d7\u30c3\u30b7\u30e5\u30dc\u30bf\u30f3\u3092\u5b9a\u7fa9
-CAPTIONTagInfo=\u30c6\u30fc\u30d6\u30eb\u8868\u984c\u3092\u5b9a\u7fa9
-CENTERTagInfo=\u542b\u307e\u308c\u3066\u3044\u308b\u30c6\u30ad\u30b9\u30c8\u3092\u4e2d\u592e\u305d\u308d\u3048\u3067\u8868\u793a\u3002 align=center \u3092\u6301\u3064 DIV \u306b\u76f8\u5f53\u3002
-CITETagInfo=\u5f15\u7528
-CODETagInfo=\u30b3\u30f3\u30d4\u30e5\u30fc\u30bf\u30fc\u30fb\u30b3\u30fc\u30c9\u30fb\u30d5\u30e9\u30b0\u30e1\u30f3\u30c8
-COLTagInfo=\u30c6\u30fc\u30d6\u30eb\u5217
-COLGROUPTagInfo=\u30c6\u30fc\u30d6\u30eb\u5217\u306e\u30b0\u30eb\u30fc\u30d7
-DDTagInfo=\u5b9a\u7fa9\u307e\u305f\u306f\u8a18\u8ff0\u30ea\u30b9\u30c8\u5185\u306e\u5b9a\u7fa9\u3042\u308b\u3044\u306f\u8a18\u8ff0
-DELTagInfo=\u30c6\u30ad\u30b9\u30c8\u3092\u524a\u9664\u6e08\u307f\u3068\u3057\u3066\u8868\u793a
-DFNTagInfo=\u5b9a\u7fa9
-DIRTagInfo=\u30c7\u30a3\u30ec\u30af\u30c8\u30ea\u30fc\u30fb\u30ea\u30b9\u30c8
-DIVTagInfo=\u6c4e\u7528\u30b3\u30f3\u30c6\u30ca\u30fc (\u30b3\u30f3\u30c6\u30f3\u30c4\u306e\u8a00\u8a9e\u307e\u305f\u306f\u30b9\u30bf\u30a4\u30eb\u3092\u5b9a\u7fa9\u3059\u308b\u305f\u3081\u306b\u4f7f\u7528\u3067\u304d\u308b)
-DLTagInfo=\u5b9a\u7fa9\u307e\u305f\u306f\u8a18\u8ff0\u30ea\u30b9\u30c8
-DTTagInfo=\u5b9a\u7fa9\u307e\u305f\u306f\u8a18\u8ff0\u30ea\u30b9\u30c8\u5185\u306e\u7528\u8a9e\u307e\u305f\u306f\u30b5\u30d6\u30b8\u30a7\u30af\u30c8
-EMTagInfo=\u30c6\u30ad\u30b9\u30c8\u3092\u5f37\u8abf\u8868\u793a (\u4e00\u822c\u7684\u306b\u306f\u30a4\u30bf\u30ea\u30c3\u30af\u8868\u793a)
-EMBEDTagInfo=\u7d44\u307f\u8fbc\u307f\u30d7\u30e9\u30b0\u30a4\u30f3\u3092\u5b9a\u7fa9\u3002 W3C HTML 4.01 \u3067\u306f\u975e\u30b5\u30dd\u30fc\u30c8\u3002
-FIELDSETTagInfo=\u66f8\u5f0f\u5236\u5fa1\u30b0\u30eb\u30fc\u30d7\u3092\u5b9a\u7fa9
-FONTTagInfo=\u30c6\u30ad\u30b9\u30c8\u3092\u6307\u5b9a\u306e\u30d5\u30a9\u30f3\u30c8\u3067\u8868\u793a
-FORMTagInfo=\u5bfe\u8a71\u5f0f\u66f8\u5f0f\u3092\u5b9a\u7fa9
-FRAMETagInfo=\u73fe\u884c\u30a6\u30a3\u30f3\u30c9\u30a6\u5185\u306e\u30d5\u30ec\u30fc\u30e0\u3092\u5b9a\u7fa9
-FRAMESETTagInfo=\u30a6\u30a3\u30f3\u30c9\u30a6\u3092\u5206\u5272\u3057\u3066\u30d5\u30ec\u30fc\u30e0\u306b\u3059\u308b\u30d5\u30ec\u30fc\u30e0\u30fb\u30bb\u30c3\u30c8\u3092\u5b9a\u7fa9
-H1TagInfo=\u30c8\u30c3\u30d7\u30ec\u30d9\u30eb\u898b\u51fa\u3057
-H2TagInfo=2 \u6b21\u30ec\u30d9\u30eb\u898b\u51fa\u3057
-H3TagInfo=3 \u6b21\u30ec\u30d9\u30eb\u898b\u51fa\u3057
-H4TagInfo=4 \u6b21\u30ec\u30d9\u30eb\u898b\u51fa\u3057
-H5TagInfo=5 \u6b21\u30ec\u30d9\u30eb\u898b\u51fa\u3057
-H6TagInfo=6 \u6b21\u30ec\u30d9\u30eb\u898b\u51fa\u3057
-HEADTagInfo=\u6587\u66f8\u306e\u30e1\u30bf\u30c7\u30fc\u30bf\u3068\u30a6\u30a3\u30f3\u30c9\u30a6\u30fb\u30bf\u30a4\u30c8\u30eb\u306e\u60c5\u5831\u3092\u542b\u3080
-HRTagInfo=\u6c34\u5e73\u3051\u3044\u7dda
-HTMLTagInfo=\u6587\u66f8\u306e\u30eb\u30fc\u30c8\u30fb\u30a8\u30ec\u30e1\u30f3\u30c8
-ITagInfo=\u30c6\u30ad\u30b9\u30c8\u3092\u30a4\u30bf\u30ea\u30c3\u30af\u3067\u8868\u793a
-IFRAMETagInfo=\u30a4\u30f3\u30e9\u30a4\u30f3\u30fb\u30b5\u30d6\u30a6\u30a3\u30f3\u30c9\u30a6\u3092\u5b9a\u7fa9
-IMGTagInfo=\u7d44\u307f\u8fbc\u307f\u30b3\u30f3\u30c6\u30f3\u30c4\u3068\u3057\u3066\u53c2\u7167\u30a4\u30e1\u30fc\u30b8\u3092\u8868\u793a
-INPUTTagInfo=\u30e6\u30fc\u30b6\u30fc\u5165\u529b\u7528\u306e\u66f8\u5f0f\u5236\u5fa1\u3092\u5b9a\u7fa9
-INSTagInfo=\u633f\u5165\u3055\u308c\u308b\u30c6\u30ad\u30b9\u30c8\u3092\u5b9a\u7fa9
-ISINDEXTagInfo=\u5358\u4e00\u884c\u30d7\u30ed\u30f3\u30d7\u30c8\u3092\u5b9a\u7fa9
-KBDTagInfo=\u30e6\u30fc\u30b6\u30fc\u304c\u5165\u529b\u3059\u308b\u30c6\u30ad\u30b9\u30c8\u3092\u5b9a\u7fa9
-LABELTagInfo=\u66f8\u5f0f\u30d5\u30a3\u30fc\u30eb\u30c9\u306e\u30e9\u30d9\u30eb\u3092\u5b9a\u7fa9
-LEGENDTagInfo=\u66f8\u5f0f\u30d5\u30a3\u30fc\u30eb\u30c9\u306e\u30bb\u30c3\u30c8\u306e\u30e9\u30d9\u30eb\u3092\u5b9a\u7fa9
-LITagInfo=\u30ea\u30b9\u30c8\u5185\u306e\u30ea\u30b9\u30c8\u9805\u76ee\u3092\u5b9a\u7fa9
-LINKTagInfo=\u30e1\u30c7\u30a3\u30a2\u975e\u4f9d\u5b58\u306e\u30ea\u30f3\u30af
-MAPTagInfo=\u30af\u30e9\u30a4\u30a2\u30f3\u30c8\u30fb\u30b5\u30a4\u30c9\u306e\u30a4\u30e1\u30fc\u30b8\u30fb\u30de\u30c3\u30d7\u3092\u5b9a\u7fa9
-MARQUEETagInfo=\u30c6\u30ad\u30b9\u30c8\u3092\u30b9\u30af\u30ed\u30fc\u30eb\u8868\u793a\u3002 W3C HTML 4.01 \u3067\u306f\u975e\u30b5\u30dd\u30fc\u30c8\u3002
-MENUTagInfo=\u30e1\u30cb\u30e5\u30fc\u30fb\u30ea\u30b9\u30c8\u3092\u5b9a\u7fa9
-METATagInfo=\u6587\u66f8\u306e\u30e1\u30bf\u30c7\u30fc\u30bf\u60c5\u5831\u3092\u5b9a\u7fa9
-NOBRTagInfo=\u6539\u884c\u3092\u6307\u5b9a\u5909\u66f4\u304a\u3088\u3073\u9632\u6b62\u3002 W3C HTML 4.01 \u3067\u306f\u975e\u30b5\u30dd\u30fc\u30c8\u3002
-NOFRAMESTagInfo=\u73fe\u5728\u306e\u30d6\u30e9\u30a6\u30b6\u30fc\u304c\u30d5\u30ec\u30fc\u30e0\u3092\u30b5\u30dd\u30fc\u30c8\u3057\u306a\u3044\u5834\u5408\u306b\u8868\u793a\u3059\u308b\u60c5\u5831\u3092\u63d0\u4f9b
-NOSCRIPTTagInfo=\u73fe\u5728\u306e\u30d6\u30e9\u30a6\u30b6\u30fc\u304c\u30b9\u30af\u30ea\u30d7\u30c8\u3092\u30b5\u30dd\u30fc\u30c8\u3057\u306a\u3044\u5834\u5408\u306b\u8868\u793a\u3059\u308b\u60c5\u5831\u3092\u63d0\u4f9b
-OBJECTTagInfo=\u6c4e\u7528\u7d44\u307f\u8fbc\u307f\u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u3092\u5b9a\u7fa9
-OLTagInfo=\u9806\u5e8f\u4ed8\u304d\u30ea\u30b9\u30c8
-OPTGROUPTagInfo=\u30aa\u30d7\u30b7\u30e7\u30f3\u30fb\u30b0\u30eb\u30fc\u30d7
-OPTIONTagInfo=\u9078\u629e\u53ef\u80fd\u9805\u76ee
-PTagInfo=\u6bb5\u843d
-PARAMTagInfo=\u540d\u524d\u4ed8\u304d\u30d7\u30ed\u30d1\u30c6\u30a3\u30fc\u5024
-PRETagInfo=\u30d9\u30bf\u66f8\u304d\u30c6\u30ad\u30b9\u30c8
-QTagInfo=\u77ed\u3044\u30a4\u30f3\u30e9\u30a4\u30f3\u5f15\u7528
-STagInfo=\u30c6\u30ad\u30b9\u30c8\u3092\u6253\u3061\u6d88\u3057\u7dda\u30b9\u30bf\u30a4\u30eb\u3067\u8868\u793a
-SAMPTagInfo=\u30b5\u30f3\u30d7\u30eb\u30fb\u30d7\u30ed\u30b0\u30e9\u30e0\u306e\u51fa\u529b\u3001\u30b9\u30af\u30ea\u30d7\u30c8\u3001\u305d\u306e\u4ed6\u3002 \u30e2\u30ce\u30b9\u30da\u30fc\u30b9\u30fb\u30d5\u30a9\u30f3\u30c8\u3067\u8868\u793a\u3002
-SCRIPTTagInfo=\u30b9\u30af\u30ea\u30d7\u30c8\u30fb\u30b9\u30c6\u30fc\u30c8\u30e1\u30f3\u30c8
-SELECTTagInfo=\u30aa\u30d7\u30b7\u30e7\u30f3\u30fb\u30bb\u30ec\u30af\u30bf\u30fc
-SMALLTagInfo=\u30c6\u30ad\u30b9\u30c8\u3092\u30b9\u30e2\u30fc\u30eb\u30fb\u30d5\u30a9\u30f3\u30c8\u3067\u8868\u793a
-SPANTagInfo=\u6c4e\u7528\u30b3\u30f3\u30c6\u30ca\u30fc (\u30b3\u30f3\u30c6\u30f3\u30c4\u306e\u8a00\u8a9e\u307e\u305f\u306f\u30b9\u30bf\u30a4\u30eb\u3092\u5b9a\u7fa9\u3059\u308b\u305f\u3081\u306b\u4f7f\u7528\u3067\u304d\u308b)
-STRIKETagInfo=\u30c6\u30ad\u30b9\u30c8\u3092\u6253\u3061\u6d88\u3057\u7dda\u30b9\u30bf\u30a4\u30eb\u3067\u8868\u793a
-STRONGTagInfo=\u30c6\u30ad\u30b9\u30c8\u3092\u5f37\u8abf\u8868\u793a (\u4e00\u822c\u7684\u306b\u306f\u592a\u5b57\u8868\u793a)
-STYLETagInfo=\u542b\u307e\u308c\u3066\u3044\u308b\u60c5\u5831\u306e\u30b9\u30bf\u30a4\u30eb\u3092\u5b9a\u7fa9
-SUBTagInfo=\u4e0b\u4ed8\u304d\u3068\u3057\u3066\u8868\u793a
-SUPTagInfo=\u4e0a\u4ed8\u304d\u3068\u3057\u3066\u8868\u793a
-TABLETagInfo=\u30c6\u30fc\u30d6\u30eb\u3092\u5b9a\u7fa9
-TBODYTagInfo=\u30c6\u30fc\u30d6\u30eb\u306e\u672c\u6587
-TDTagInfo=\u30c6\u30fc\u30d6\u30eb\u5185\u306e\u30bb\u30eb
-TEXTAREATagInfo=\u8907\u6570\u884c\u30c6\u30ad\u30b9\u30c8\u30fb\u30d5\u30a3\u30fc\u30eb\u30c9
-TFOOTTagInfo=\u30c6\u30fc\u30d6\u30eb\u30fb\u30d5\u30c3\u30bf\u30fc
-THTagInfo=\u30c6\u30fc\u30d6\u30eb\u30fb\u30d8\u30c3\u30c0\u30fc\u30fb\u30bb\u30eb
-THEADTagInfo=\u30c6\u30fc\u30d6\u30eb\u30fb\u30d8\u30c3\u30c0\u30fc
-TITLETagInfo=\u6587\u66f8\u30bf\u30a4\u30c8\u30eb (\u30d6\u30e9\u30a6\u30b6\u30fc\u306e\u30bf\u30a4\u30c8\u30eb\u30fb\u30d0\u30fc\u306b\u8868\u793a\u3055\u308c\u308b)
-TRTagInfo=\u30c6\u30fc\u30d6\u30eb\u884c
-TTTagInfo=\u30c6\u30ad\u30b9\u30c8\u3092\u30c6\u30ec\u30bf\u30a4\u30d7\u307e\u305f\u306f\u30e2\u30ce\u30b9\u30da\u30fc\u30b9\u30fb\u30c6\u30ad\u30b9\u30c8\u30fb\u30b9\u30bf\u30a4\u30eb\u3067\u8868\u793a
-UTagInfo=\u30c6\u30ad\u30b9\u30c8\u3092\u4e0b\u7dda\u4ed8\u304d\u3067\u8868\u793a
-ULTagInfo=\u9806\u4e0d\u540c\u30ea\u30b9\u30c8
-VARTagInfo=\u5909\u6570\u307e\u305f\u306f\u30d7\u30ed\u30b0\u30e9\u30e0\u5f15\u304d\u6570\u306e\u30a4\u30f3\u30b9\u30bf\u30f3\u30b9
-WBRTagInfo=<B>&lt;NOBR&gt;</B> \u30bf\u30b0\u5185\u306e\u6539\u884c\u3092\u8a8d\u3081\u308b\u3002 W3C HTML 4.01 \u3067\u306f\u975e\u30b5\u30dd\u30fc\u30c8\u3002
diff --git a/bundles/org.eclipse.wst.html.core/data/htmref_ko.properties b/bundles/org.eclipse.wst.html.core/data/htmref_ko.properties
deleted file mode 100644
index a633613..0000000
--- a/bundles/org.eclipse.wst.html.core/data/htmref_ko.properties
+++ /dev/null
@@ -1,108 +0,0 @@
-###############################################################################
-# Copyright (c) 2004 IBM Corporation and others.
-# All rights reserved. This program and the accompanying materials
-# are made available under the terms of the Eclipse Public License v1.0
-# which accompanies this distribution, and is available at
-# http://www.eclipse.org/legal/epl-v10.html
-# 
-# Contributors:
-#     IBM Corporation - initial API and implementation
-###############################################################################
-
-ATagInfo=href \uc18d\uc131\uc774 \uc788\ub294 \uacbd\uc6b0, \ub9c1\ud06c \uadf8\ub9ac\uace0 \uc774\ub984 \uc18d\uc131\uc774 \uc788\ub294 \uacbd\uc6b0, \ub9c1\ud06c\uc758 \ub300\uc0c1
-ABBRTagInfo=\uc57d\uc5b4(\uc608: WWW, HTTP)
-ACRONYMTagInfo=\uba38\ub9ac\uae00\uc790(\uc608: SCUBA)
-ADDRESSTagInfo=\ud398\uc774\uc9c0 \uc791\uc131\uc790\uc758 \uc8fc\uc18c \uc815\ubcf4
-APPLETTagInfo=Java \uc560\ud50c\ub9bf
-AREATagInfo=\ud074\ub77c\uc774\uc5b8\ud2b8\uce21 \uc774\ubbf8\uc9c0 \ub9f5 \uc601\uc5ed\uc744 \uc815\uc758\ud569\ub2c8\ub2e4.
-BTagInfo=\ud3ec\ud568\ub41c \ud14d\uc2a4\ud2b8\ub97c \uad75\uc740\uccb4\ub85c \ud45c\uc2dc\ud569\ub2c8\ub2e4.
-BASETagInfo=\ud398\uc774\uc9c0\uc758 \uae30\uc900 URI(\uc0c1\ub300 \uacbd\ub85c \uacc4\uc0b0 \uc2dc \uc0ac\uc6a9\ub428)
-BASEFONTTagInfo=\ud398\uc774\uc9c0\uc758 \uae30\uc900 \uae00\uaf34 \ud06c\uae30
-BDOTagInfo=\uae30\ubcf8 \uc591\ubc29\ud5a5 \ud45c\uc2dc\ub97c \ub300\uccb4\ud569\ub2c8\ub2e4. \uc591\ubc29\ud5a5 \uc5b8\uc5b4\uc5d0 \uc0ac\uc6a9\ud569\ub2c8\ub2e4.
-BIGTagInfo=\ud3ec\ud568\ub41c \ud14d\uc2a4\ud2b8\ub97c \ud06c\uac8c \ud45c\uc2dc\ud569\ub2c8\ub2e4.
-BGSOUNDTagInfo=\ud398\uc774\uc9c0\uc758 \uc0ac\uc6b4\ub4dc \ud30c\uc77c\uc744 \uc815\uc758\ud569\ub2c8\ub2e4. W3C HTML 4.01\uc5d0\uc11c\ub294 \uc9c0\uc6d0\ub418\uc9c0 \uc54a\uc2b5\ub2c8\ub2e4.
-BLINKTagInfo=\ud14d\uc2a4\ud2b8\ub97c \uae5c\ubc15\uc784\uc73c\ub85c \ud45c\uc2dc\ud569\ub2c8\ub2e4. W3C HTML 4.01\uc5d0\uc11c\ub294 \uc9c0\uc6d0\ub418\uc9c0 \uc54a\uc2b5\ub2c8\ub2e4.
-BLOCKQUOTETagInfo=\uae34 \uc778\uc6a9\ubb38
-BODYTagInfo=\ubb38\uc11c \ubcf8\ubb38. \ud398\uc774\uc9c0\uc758 \ubaa8\ub4e0 \ucee8\ud150\uce20\ub97c \ud3ec\ud568\ud569\ub2c8\ub2e4.
-BRTagInfo=\ud589 \ubc14\uafb8\uae30\ub97c \uac15\uc81c \uc2e4\ud589\ud569\ub2c8\ub2e4.
-BUTTONTagInfo=\ub204\ub984 \ub2e8\ucd94\ub97c \uc815\uc758\ud569\ub2c8\ub2e4.
-CAPTIONTagInfo=\ud14c\uc774\ube14 \ucea1\uc158\uc744 \uc815\uc758\ud569\ub2c8\ub2e4.
-CENTERTagInfo=\ud3ec\ud568\ub41c \ud14d\uc2a4\ud2b8\uac00 \uac00\uc6b4\ub370\ub85c \uc624\ub3c4\ub85d \ud45c\uc2dc\ud569\ub2c8\ub2e4. align=center\ub97c \uc124\uc815\ud55c DIV \ud0dc\uadf8\uc640 \ub3d9\uc77c\ud569\ub2c8\ub2e4.
-CITETagInfo=\uc778\uc6a9\ubb38
-CODETagInfo=\ucef4\ud4e8\ud130 \ucf54\ub4dc \ub2e8\ud3b8
-COLTagInfo=\ud14c\uc774\ube14 \uc5f4
-COLGROUPTagInfo=\ud14c\uc774\ube14 \uc5f4\uc758 \uadf8\ub8f9
-DDTagInfo=\uc815\uc758 \ub610\ub294 \uc124\uba85 \ubaa9\ub85d\uc758 \uc124\uba85 \ub610\ub294 \uc815\uc758
-DELTagInfo=\ud14d\uc2a4\ud2b8\ub97c \uc0ad\uc81c \ud45c\uc2dc\ud569\ub2c8\ub2e4.
-DFNTagInfo=\uc815\uc758
-DIRTagInfo=\ub514\ub809\ud1a0\ub9ac \ubaa9\ub85d
-DIVTagInfo=\ucee8\ud150\uce20\uc758 \uc2a4\ud0c0\uc77c \ub610\ub294 \uc5b8\uc5b4\ub97c \uc815\uc758\ud558\ub294 \ub370 \uc0ac\uc6a9 \uac00\ub2a5\ud55c \uc77c\ubc18 \ucee8\ud14c\uc774\ub108
-DLTagInfo=\uc815\uc758 \ub610\ub294 \uc124\uba85 \ubaa9\ub85d
-DTTagInfo=\uc815\uc758 \ub610\ub294 \uc124\uba85 \ubaa9\ub85d\uc758 \uc6a9\uc5b4 \ub610\ub294 \uc8fc\uc81c
-EMTagInfo=\ud14d\uc2a4\ud2b8\ub97c \uac15\uc870\ud45c\uc2dc\ud569\ub2c8\ub2e4(\uc77c\ubc18\uc801\uc73c\ub85c \uae30\uc6b8\uc784\uccb4).
-EMBEDTagInfo=\uc784\ubca0\ub514\ub4dc \ud50c\ub7ec\uadf8\uc778\uc744 \uc815\uc758\ud569\ub2c8\ub2e4. W3C HTML 4.01\uc5d0\uc11c\ub294 \uc9c0\uc6d0\ub418\uc9c0 \uc54a\uc2b5\ub2c8\ub2e4.
-FIELDSETTagInfo=\uc591\uc2dd \uc81c\uc5b4 \uadf8\ub8f9 \uc815\uc758
-FONTTagInfo=\ud14d\uc2a4\ud2b8\ub97c \uc9c0\uc815\ub41c \uae00\uaf34\ub85c \ud45c\uc2dc\ud569\ub2c8\ub2e4.
-FORMTagInfo=\ub300\ud654\uc2dd \uc591\uc2dd\uc744 \uc815\uc758\ud569\ub2c8\ub2e4.
-FRAMETagInfo=\ud604\uc7ac \ucc3d \ub0b4\ubd80\uc758 \ud504\ub808\uc784\uc744 \uc815\uc758\ud569\ub2c8\ub2e4.
-FRAMESETTagInfo=\ucc3d\uc744 \ud504\ub808\uc784\uc73c\ub85c \ub098\ub204\ub294 \ud504\ub808\uc784\uc138\ud2b8\ub97c \uc815\uc758\ud569\ub2c8\ub2e4.
-H1TagInfo=\ucd5c\uc0c1\uc704 \ub808\ubca8 \ud45c\uc81c
-H2TagInfo=\ub450 \ubc88\uc9f8 \ub808\ubca8 \ud45c\uc81c
-H3TagInfo=\uc138 \ubc88\uc9f8 \ub808\ubca8 \ud45c\uc81c
-H4TagInfo=\ub124 \ubc88\uc9f8 \ub808\ubca8 \ud45c\uc81c
-H5TagInfo=\ub2e4\uc12f \ubc88\uc9f8 \ub808\ubca8 \ud45c\uc81c
-H6TagInfo=\uc5ec\uc12f \ubc88\uc9f8 \ub808\ubca8 \ud45c\uc81c
-HEADTagInfo=\ubb38\uc11c\uc758 \uba54\ud0c0\ub370\uc774\ud130 \ubc0f \ucc3d \uc81c\ubaa9 \uc815\ubcf4\ub97c \ud3ec\ud568\ud569\ub2c8\ub2e4.
-HRTagInfo=\uc218\ud3c9 \uc790
-HTMLTagInfo=\ubb38\uc11c\uc758 \ub8e8\ud2b8 \uc694\uc18c
-ITagInfo=\ud14d\uc2a4\ud2b8\ub97c \uae30\uc6b8\uc784\uaf34\ub85c \ud45c\uc2dc\ud569\ub2c8\ub2e4.
-IFRAMETagInfo=\uc778\ub77c\uc778 \ud558\uc704 \ucc3d\uc744 \uc815\uc758\ud569\ub2c8\ub2e4.
-IMGTagInfo=\ucc38\uc870\ub41c \uc774\ubbf8\uc9c0\ub97c \uc784\ubca0\ub514\ub4dc \ucee8\ud150\uce20\ub85c \ud45c\uc2dc\ud569\ub2c8\ub2e4.
-INPUTTagInfo=\uc0ac\uc6a9\uc790 \uc785\ub825\uc744 \uc704\ud55c \uc591\uc2dd \uc81c\uc5b4\ub97c \uc815\uc758\ud569\ub2c8\ub2e4.
-INSTagInfo=\uc0bd\uc785\ub41c \ud14d\uc2a4\ud2b8\ub97c \uc815\uc758\ud569\ub2c8\ub2e4.
-ISINDEXTagInfo=\ub2e8\uc77c \ud589 \ud504\ub86c\ud504\ud2b8\ub97c \uc815\uc758\ud569\ub2c8\ub2e4.
-KBDTagInfo=\uc0ac\uc6a9\uc790\uac00 \uc785\ub825\ud560 \ud14d\uc2a4\ud2b8\ub97c \uc815\uc758\ud569\ub2c8\ub2e4.
-LABELTagInfo=\uc591\uc2dd \ud544\ub4dc\uc758 \ub808\uc774\ube14\uc744 \uc815\uc758\ud569\ub2c8\ub2e4.
-LEGENDTagInfo=\uc591\uc2dd \ud544\ub4dc \uc138\ud2b8\uc758 \ub808\uc774\ube14\uc744 \uc815\uc758\ud569\ub2c8\ub2e4.
-LITagInfo=\ubaa9\ub85d \ub0b4\ubd80\uc758 \ubaa9\ub85d \ud56d\ubaa9\uc744 \uc815\uc758\ud569\ub2c8\ub2e4.
-LINKTagInfo=\ub9e4\uccb4 \ub3c5\ub9bd\uc801 \ub9c1\ud06c
-MAPTagInfo=\ud074\ub77c\uc774\uc5b8\ud2b8\uce21 \uc774\ubbf8\uc9c0 \ub9f5\uc744 \uc815\uc758\ud569\ub2c8\ub2e4.
-MARQUEETagInfo=\ud14d\uc2a4\ud2b8\uc5d0 \ud750\ub974\ub294 \ud6a8\uacfc\ub97c \uc90d\ub2c8\ub2e4. W3C HTML 4.01\uc5d0\uc11c\ub294 \uc9c0\uc6d0\ub418\uc9c0 \uc54a\uc2b5\ub2c8\ub2e4.
-MENUTagInfo=\uba54\ub274 \ubaa9\ub85d\uc744 \uc815\uc758\ud569\ub2c8\ub2e4.
-METATagInfo=\ubb38\uc11c\uc758 \uba54\ud0c0\ub370\uc774\ud130 \uc815\ubcf4\ub97c \uc815\uc758\ud569\ub2c8\ub2e4.
-NOBRTagInfo=\ud589 \ubc14\uafb8\uae30\ub97c \ub300\uccb4\ud558\uac70\ub098 \ubc29\uc9c0\ud569\ub2c8\ub2e4. W3C HTML 4.01\uc5d0\uc11c\ub294 \uc9c0\uc6d0\ub418\uc9c0 \uc54a\uc2b5\ub2c8\ub2e4.
-NOFRAMESTagInfo=\ud604\uc7ac \ube0c\ub77c\uc6b0\uc800\uac00 \ud504\ub808\uc784\uc744 \uc9c0\uc6d0\ud558\uc9c0 \uc54a\ub294 \uacbd\uc6b0 \ud45c\uc2dc\ud560 \uc815\ubcf4\ub97c \uc81c\uacf5\ud569\ub2c8\ub2e4.
-NOSCRIPTTagInfo=\ud604\uc7ac \ube0c\ub77c\uc6b0\uc800\uac00 \uc2a4\ud06c\ub9bd\ud2b8\ub97c \uc9c0\uc6d0\ud558\uc9c0 \uc54a\ub294 \uacbd\uc6b0 \ud45c\uc2dc\ud560 \uc815\ubcf4\ub97c \uc81c\uacf5\ud569\ub2c8\ub2e4.
-OBJECTTagInfo=\uc784\ubca0\ub514\ub4dc \uc77c\ubc18 \uc624\ube0c\uc81d\ud2b8\ub97c \uc815\uc758\ud569\ub2c8\ub2e4.
-OLTagInfo=\uc21c\uc11c\ud654\ub41c \ubaa9\ub85d
-OPTGROUPTagInfo=\uc635\uc158 \uadf8\ub8f9
-OPTIONTagInfo=\uc120\ud0dd \uac00\ub2a5\ud55c \uc120\ud0dd\uc0ac\ud56d
-PTagInfo=\ub2e8\ub77d
-PARAMTagInfo=\uc774\ub984\uc774 \uc9c0\uc815\ub41c \ud2b9\uc131 \uac12
-PRETagInfo=\ubbf8\ub9ac \ud615\uc2dd\ud654\ub41c \ud14d\uc2a4\ud2b8
-QTagInfo=\ucd95\uc57d\ud615 \uc778\ub77c\uc778 \uc778\uc6a9\ubb38
-STagInfo=\ucde8\uc18c\uc120 \uc2a4\ud0c0\uc77c\ub85c \ud14d\uc2a4\ud2b8\ub97c \ud45c\uc2dc\ud569\ub2c8\ub2e4.
-SAMPTagInfo=\uc0d8\ud50c \ud504\ub85c\uadf8\ub7a8 \ucd9c\ub825, \uc2a4\ud06c\ub9bd\ud2b8 \ub4f1\uc5d0 \uc0ac\uc6a9\ud569\ub2c8\ub2e4. \ubaa8\ub178\uc2a4\ud398\uc774\uc2a4 \uae00\uaf34\ub85c \ud45c\uc2dc\ud569\ub2c8\ub2e4.
-SCRIPTTagInfo=\uc2a4\ud06c\ub9bd\ud2b8 \ubb38
-SELECTTagInfo=\uc635\uc158 \uc120\ud0dd\uae30
-SMALLTagInfo=\ud14d\uc2a4\ud2b8\ub97c \uc791\uac8c \ud45c\uc2dc\ud569\ub2c8\ub2e4.
-SPANTagInfo=\ucee8\ud150\uce20\uc758 \uc2a4\ud0c0\uc77c \ub610\ub294 \uc5b8\uc5b4\ub97c \uc815\uc758\ud558\ub294 \ub370 \uc0ac\uc6a9 \uac00\ub2a5\ud55c \uc77c\ubc18 \ucee8\ud14c\uc774\ub108
-STRIKETagInfo=\ucde8\uc18c\uc120 \uc2a4\ud0c0\uc77c\ub85c \ud14d\uc2a4\ud2b8\ub97c \ud45c\uc2dc\ud569\ub2c8\ub2e4.
-STRONGTagInfo=\ud14d\uc2a4\ud2b8\ub97c \uac15\uc870\ud45c\uc2dc\ud569\ub2c8\ub2e4(\uc77c\ubc18\uc801\uc73c\ub85c \uad75\uc740\uccb4).
-STYLETagInfo=\ud3ec\ud568\ub41c \uc815\ubcf4\uc758 \uc2a4\ud0c0\uc77c\uc744 \uc815\uc758\ud569\ub2c8\ub2e4.
-SUBTagInfo=\uc544\ub798 \ucca8\uc790\ub85c \ud45c\uc2dc\ud569\ub2c8\ub2e4.
-SUPTagInfo=\uc704 \ucca8\uc790\ub85c \ud45c\uc2dc\ud569\ub2c8\ub2e4.
-TABLETagInfo=\ud14c\uc774\ube14\uc744 \uc815\uc758\ud569\ub2c8\ub2e4.
-TBODYTagInfo=\ud14c\uc774\ube14 \ubcf8\ubb38
-TDTagInfo=\ud14c\uc774\ube14 \ub0b4\uc758 \uc140
-TEXTAREATagInfo=\ub2e4\uc911 \ud589 \ud14d\uc2a4\ud2b8 \ud544\ub4dc
-TFOOTTagInfo=\ud14c\uc774\ube14 \ubc14\ub2e5\uae00
-THTagInfo=\ud14c\uc774\ube14 \ud5e4\ub354 \uc140
-THEADTagInfo=\ud14c\uc774\ube14 \ud5e4\ub354
-TITLETagInfo=\ube0c\ub77c\uc6b0\uc800 \uc81c\ubaa9 \ud45c\uc2dc\uc904\uc5d0 \ud45c\uc2dc\ub418\ub294 \ubb38\uc11c \uc81c\ubaa9
-TRTagInfo=\ud14c\uc774\ube14 \ud589
-TTTagInfo=\ud14d\uc2a4\ud2b8\ub97c \ud154\ub808\ud0c0\uc774\ud504 \ub610\ub294 \ubaa8\ub178\uc2a4\ud398\uc774\uc2a4 \ud14d\uc2a4\ud2b8 \uc2a4\ud0c0\uc77c\ub85c \ud45c\uc2dc\ud569\ub2c8\ub2e4.
-UTagInfo=\ud14d\uc2a4\ud2b8\uc5d0 \ubc11\uc904\uc744 \uadf8\uc5b4 \ud45c\uc2dc\ud569\ub2c8\ub2e4.
-ULTagInfo=\uc21c\uc11c \uc5c6\ub294 \ubaa9\ub85d
-VARTagInfo=\ubcc0\uc218 \ub610\ub294 \ud504\ub85c\uadf8\ub7a8 \uc778\uc218\uc758 \uc778\uc2a4\ud134\uc2a4
-WBRTagInfo=<B>&lt;NOBR&gt;</B> \ud0dc\uadf8 \ub0b4\uc5d0 \ud589 \ubc14\uafb8\uae30\ub97c \ud5c8\uc6a9\ud569\ub2c8\ub2e4. W3C HTML 4.01\uc5d0\uc11c\ub294 \uc9c0\uc6d0\ub418\uc9c0 \uc54a\uc2b5\ub2c8\ub2e4.
diff --git a/bundles/org.eclipse.wst.html.core/data/htmref_pt_BR.properties b/bundles/org.eclipse.wst.html.core/data/htmref_pt_BR.properties
deleted file mode 100644
index b5e3306..0000000
--- a/bundles/org.eclipse.wst.html.core/data/htmref_pt_BR.properties
+++ /dev/null
@@ -1,108 +0,0 @@
-###############################################################################
-# Copyright (c) 2004 IBM Corporation and others.
-# All rights reserved. This program and the accompanying materials
-# are made available under the terms of the Eclipse Public License v1.0
-# which accompanies this distribution, and is available at
-# http://www.eclipse.org/legal/epl-v10.html
-# 
-# Contributors:
-#     IBM Corporation - initial API and implementation
-###############################################################################
-
-ATagInfo=Um link se o atributo href estiver presente e o destino de um link se o atributo name estiver presente.
-ABBRTagInfo=Uma abrevia\u00e7\u00e3o (por exemplo, WWW, HTTP)
-ACRONYMTagInfo=Um acr\u00f4nimo (por exemplo, SCUBA)
-ADDRESSTagInfo=Informa\u00e7\u00f5es sobre o endere\u00e7o do autor da p\u00e1gina
-APPLETTagInfo=Um applet Java
-AREATagInfo=Define uma \u00e1rea de mapa de imagem do lado do cliente
-BTagInfo=Exibe o texto contido como negrito
-BASETagInfo=O URI base para a p\u00e1gina a ser utilizado ao calcular caminhos relativos
-BASEFONTTagInfo=O tamanho da fonte base para a p\u00e1gina
-BDOTagInfo=Substitui a exibi\u00e7\u00e3o bidirecional padr\u00e3o. Para ser utilizado com idiomas bidirecionais.
-BIGTagInfo=Exibe o texto contido em tamanho grande
-BGSOUNDTagInfo=Define um arquivo de som para a p\u00e1gina. N\u00e3o suportado pelo W3C HTML 4.01.
-BLINKTagInfo=Exibe o texto piscando. N\u00e3o suportado pelo W3C HTML 4.01.
-BLOCKQUOTETagInfo=Uma cita\u00e7\u00e3o longa
-BODYTagInfo=O corpo do documento. Cont\u00e9m todo o conte\u00fado para a p\u00e1gina.
-BRTagInfo=For\u00e7a uma quebra de linha
-BUTTONTagInfo=Define um bot\u00e3o de comando
-CAPTIONTagInfo=Define uma legenda de tabela
-CENTERTagInfo=Exibe o texto contido centralizado. Equivalente a DIV com align=center.
-CITETagInfo=Uma cita\u00e7\u00e3o
-CODETagInfo=Um fragmento de c\u00f3digo de computador
-COLTagInfo=Uma coluna de tabela
-COLGROUPTagInfo=Um grupo de colunas da tabela
-DDTagInfo=Uma defini\u00e7\u00e3o ou descri\u00e7\u00e3o em uma lista de defini\u00e7\u00f5es ou descri\u00e7\u00f5es
-DELTagInfo=Exibe texto como exclu\u00eddo
-DFNTagInfo=Uma defini\u00e7\u00e3o
-DIRTagInfo=Uma listagem de diret\u00f3rios
-DIVTagInfo=Um cont\u00eainer gen\u00e9rico, que pode ser utilizado para definir idioma ou estilo do conte\u00fado
-DLTagInfo=Uma lista de defini\u00e7\u00f5es ou descri\u00e7\u00f5es
-DTTagInfo=Um termo ou assunto em uma lista de defini\u00e7\u00f5es ou descri\u00e7\u00f5es
-EMTagInfo=Exibe o texto enfatizado (geralmente em it\u00e1lico)
-EMBEDTagInfo=Define um plug-in incorporado. N\u00e3o suportado pelo W3C HTML 4.01.
-FIELDSETTagInfo=Define um grupo de controle de formul\u00e1rio
-FONTTagInfo=Exibe texto na fonte fornecida
-FORMTagInfo=Define um formul\u00e1rio interativo
-FRAMETagInfo=Define um quadro dentro da janela atual
-FRAMESETTagInfo=Define um conjunto de quadros que divide a janela em quadros
-H1TagInfo=Um t\u00edtulo de n\u00edvel superior
-H2TagInfo=Um t\u00edtulo de segundo n\u00edvel
-H3TagInfo=Um t\u00edtulo de terceiro n\u00edvel
-H4TagInfo=Um t\u00edtulo de quarto n\u00edvel
-H5TagInfo=Um t\u00edtulo de quinto n\u00edvel
-H6TagInfo=Um t\u00edtulo de sexto n\u00edvel
-HEADTagInfo=Cont\u00e9m metadados e informa\u00e7\u00f5es sobre o t\u00edtulo da janela para o documento
-HRTagInfo=Uma r\u00e9gua horizontal
-HTMLTagInfo=O elemento raiz do documento.
-ITagInfo=Exibe o texto em it\u00e1lico
-IFRAMETagInfo=Define uma subjanela em linha
-IMGTagInfo=Exibe a imagem referida como conte\u00fado incorporado
-INPUTTagInfo=Define um controle de formul\u00e1rio para entrada do usu\u00e1rio
-INSTagInfo=Define o texto inserido
-ISINDEXTagInfo=Define um prompt de linha \u00fanica
-KBDTagInfo=Define texto a ser inserido pelo usu\u00e1rio
-LABELTagInfo=Define o r\u00f3tulo para um campo de formul\u00e1rio
-LEGENDTagInfo=Define o r\u00f3tulo para um conjunto de campos de formul\u00e1rio
-LITagInfo=Define um item de lista dentro de uma lista
-LINKTagInfo=Um link independente de m\u00eddia
-MAPTagInfo=Define um mapa de imagem do lado do cliente
-MARQUEETagInfo=Exibe texto rolando. N\u00e3o suportado pelo W3C HTML 4.01.
-MENUTagInfo=Define uma lista de menus
-METATagInfo=Define informa\u00e7\u00f5es de metadados para o documento
-NOBRTagInfo=Substitui e impede quebras de linha. N\u00e3o suportado pelo W3C HTML 4.01.
-NOFRAMESTagInfo=Fornece informa\u00e7\u00f5es a serem exibidas se o navegador atual n\u00e3o suportar quadros
-NOSCRIPTTagInfo=Fornece informa\u00e7\u00f5es a serem exibidas se o navegador atual n\u00e3o suportar script
-OBJECTTagInfo=Define um objeto incorporado gen\u00e9rico
-OLTagInfo=Uma lista ordenada
-OPTGROUPTagInfo=Um grupo de op\u00e7\u00f5es
-OPTIONTagInfo=Uma op\u00e7\u00e3o selecion\u00e1vel
-PTagInfo=Um par\u00e1grafo
-PARAMTagInfo=O valor de uma propriedade denominada
-PRETagInfo=Texto pr\u00e9-formatado
-QTagInfo=Uma cita\u00e7\u00e3o curta em linha
-STagInfo=Exibir texto no estilo tachado
-SAMPTagInfo=Sa\u00edda, scripts, etc do programa de amostra. Exibe em fonte de espa\u00e7amento uniforme.
-SCRIPTTagInfo=Instru\u00e7\u00f5es de script
-SELECTTagInfo=Um seletor de op\u00e7\u00f5es
-SMALLTagInfo=Exibe texto em tamanho pequeno
-SPANTagInfo=Um cont\u00eainer gen\u00e9rico, que pode ser utilizado para definir idioma ou estilo do conte\u00fado
-STRIKETagInfo=Exibir texto no estilo tachado
-STRONGTagInfo=Exibe o texto muito enfatizado (geralmente em negrito)
-STYLETagInfo=Define um estilo para as informa\u00e7\u00f5es contidas
-SUBTagInfo=Exibe como subscrito
-SUPTagInfo=Exibe como sobrescrito
-TABLETagInfo=Define uma tabela
-TBODYTagInfo=O corpo da tabela
-TDTagInfo=Uma c\u00e9lula de uma tabela
-TEXTAREATagInfo=Um campo de texto de v\u00e1rias linhas
-TFOOTTagInfo=Um rodap\u00e9 de tabela
-THTagInfo=Uma c\u00e9lula de cabe\u00e7alho de tabela
-THEADTagInfo=Um cabe\u00e7alho de tabela
-TITLETagInfo=O t\u00edtulo do documento, exibido na barra de t\u00edtulo do navegador
-TRTagInfo=Uma linha da tabela
-TTTagInfo=Exibe o texto em teletipo ou em estilo de texto de espa\u00e7amento uniforme
-UTagInfo=Exibe texto como sublinhado
-ULTagInfo=Uma lista desordenada
-VARTagInfo=Uma inst\u00e2ncia de um argumento de vari\u00e1vel ou programa
-WBRTagInfo=Permite uma quebra de linha na marca\u00e7\u00e3o  <B>&lt;NOBR&gt;</B>. N\u00e3o suportado pelo W3C HTML 4.01.
diff --git a/bundles/org.eclipse.wst.html.core/data/htmref_zh_CN.properties b/bundles/org.eclipse.wst.html.core/data/htmref_zh_CN.properties
deleted file mode 100644
index 109f327..0000000
--- a/bundles/org.eclipse.wst.html.core/data/htmref_zh_CN.properties
+++ /dev/null
@@ -1,108 +0,0 @@
-###############################################################################
-# Copyright (c) 2004 IBM Corporation and others.
-# All rights reserved. This program and the accompanying materials
-# are made available under the terms of the Eclipse Public License v1.0
-# which accompanies this distribution, and is available at
-# http://www.eclipse.org/legal/epl-v10.html
-# 
-# Contributors:
-#     IBM Corporation - initial API and implementation
-###############################################################################
-
-ATagInfo=\u5982\u679c href \u5c5e\u6027\u5b58\u5728\uff0c\u5219\u662f\u4e00\u4e2a\u94fe\u63a5\uff0c\u800c\u5982\u679c\u540d\u79f0\u5c5e\u6027\u5b58\u5728\uff0c\u5219\u662f\u94fe\u63a5\u7684\u76ee\u6807
-ABBRTagInfo=\u7f29\u5199\uff08\u4f8b\u5982\uff0cWWW \u548c HTTP\uff09
-ACRONYMTagInfo=\u9996\u5b57\u6bcd\u7f29\u5199\u8bcd\uff08\u4f8b\u5982\uff0cSCUBA\uff09
-ADDRESSTagInfo=\u9875\u9762\u7684\u4f5c\u8005\u7684\u5730\u5740\u4fe1\u606f
-APPLETTagInfo=Java applet
-AREATagInfo=\u5b9a\u4e49\u5ba2\u6237\u673a\u7aef\u56fe\u50cf\u6620\u5c04\u533a\u57df
-BTagInfo=\u7528\u7c97\u4f53\u5b57\u663e\u793a\u6240\u5305\u542b\u7684\u6587\u672c
-BASETagInfo=\u9875\u9762\u7684\u57fa\u51c6 URI\uff0c\u5728\u8ba1\u7b97\u76f8\u5bf9\u8def\u5f84\u65f6\u4f7f\u7528
-BASEFONTTagInfo=\u9875\u9762\u7684\u57fa\u672c\u5b57\u4f53\u5927\u5c0f
-BDOTagInfo=\u8986\u76d6\u7f3a\u7701\u53cc\u5411\u663e\u793a\u3002\u8981\u4e0e\u53cc\u5411\u8bed\u8a00\u914d\u5408\u4f7f\u7528\u3002
-BIGTagInfo=\u7528\u5927\u5b57\u4f53\u663e\u793a\u6240\u5305\u542b\u7684\u6587\u672c
-BGSOUNDTagInfo=\u4e3a\u9875\u9762\u5b9a\u4e49\u58f0\u97f3\u6587\u4ef6\u3002W3C HTML 4.01 \u4e0d\u652f\u6301\u5b83\u3002
-BLINKTagInfo=\u4ee5\u95ea\u70c1\u65b9\u5f0f\u663e\u793a\u6587\u672c\u3002W3C HTML 4.01 \u4e0d\u652f\u6301\u5b83\u3002
-BLOCKQUOTETagInfo=\u957f\u5f15\u7528
-BODYTagInfo=\u6587\u6863\u4e3b\u4f53\u3002\u5305\u542b\u9875\u9762\u7684\u6240\u6709\u5185\u5bb9\u3002
-BRTagInfo=\u5f3a\u5236\u6362\u884c
-BUTTONTagInfo=\u5b9a\u4e49\u6309\u94ae
-CAPTIONTagInfo=\u5b9a\u4e49\u8868\u6807\u9898
-CENTERTagInfo=\u5c45\u4e2d\u663e\u793a\u6240\u5305\u542b\u7684\u6587\u672c\u3002\u7b49\u4ef7\u4e8e\u8bbe\u7f6e\u4e86 align=center \u7684 DIV\u3002
-CITETagInfo=\u5f15\u7528
-CODETagInfo=\u8ba1\u7b97\u673a\u4ee3\u7801\u6bb5
-COLTagInfo=\u8868\u5217
-COLGROUPTagInfo=\u4e00\u7ec4\u8868\u5217
-DDTagInfo=\u5b9a\u4e49\u6216\u63cf\u8ff0\u5217\u8868\u4e2d\u7684\u5b9a\u4e49\u6216\u63cf\u8ff0
-DELTagInfo=\u5c06\u6587\u672c\u663e\u793a\u4e3a\u5df2\u5220\u9664
-DFNTagInfo=\u5b9a\u4e49
-DIRTagInfo=\u76ee\u5f55\u5217\u8868
-DIVTagInfo=\u4e00\u4e2a\u4e00\u822c\u5bb9\u5668\uff0c\u53ef\u7528\u4e8e\u4e3a\u5185\u5bb9\u5b9a\u4e49\u8bed\u8a00\u6216\u6837\u5f0f
-DLTagInfo=\u5b9a\u4e49\u6216\u63cf\u8ff0\u5217\u8868
-DTTagInfo=\u5b9a\u4e49\u6216\u63cf\u8ff0\u5217\u8868\u4e2d\u7684\u672f\u8bed\u6216\u4e3b\u9898
-EMTagInfo=\u4ee5\u5f3a\u8c03\u65b9\u5f0f\uff08\u901a\u5e38\u91c7\u7528\u659c\u4f53\uff09\u6765\u663e\u793a\u6587\u672c
-EMBEDTagInfo=\u5b9a\u4e49\u5d4c\u5165\u5f0f\u63d2\u4ef6\u3002W3C HTML 4.01 \u4e0d\u652f\u6301\u5b83\u3002
-FIELDSETTagInfo=\u5b9a\u4e49\u8868\u5355\u63a7\u4ef6\u7ec4
-FONTTagInfo=\u6309\u7ed9\u5b9a\u7684\u5b57\u4f53\u6765\u663e\u793a\u6587\u672c
-FORMTagInfo=\u5b9a\u4e49\u4ea4\u4e92\u5f0f\u8868\u5355
-FRAMETagInfo=\u5728\u5f53\u524d\u7a97\u53e3\u4e2d\u5b9a\u4e49\u6846\u67b6
-FRAMESETTagInfo=\u5b9a\u4e49\u5c06\u7a97\u53e3\u5206\u6210\u591a\u4e2a\u6846\u67b6\u7684\u6846\u67b6\u96c6
-H1TagInfo=\u9876\u7ea7\u6807\u9898
-H2TagInfo=\u7b2c\u4e8c\u7ea7\u6807\u9898
-H3TagInfo=\u7b2c\u4e09\u7ea7\u6807\u9898
-H4TagInfo=\u7b2c\u56db\u7ea7\u6807\u9898
-H5TagInfo=\u7b2c\u4e94\u7ea7\u6807\u9898
-H6TagInfo=\u7b2c\u516d\u7ea7\u6807\u9898
-HEADTagInfo=\u5305\u542b\u6587\u6863\u7684\u5143\u6570\u636e\u548c\u7a97\u53e3\u6807\u9898\u4fe1\u606f
-HRTagInfo=\u6c34\u5e73\u7ebf
-HTMLTagInfo=\u6587\u6863\u7684\u6839\u5143\u7d20\u3002
-ITagInfo=\u7528\u659c\u4f53\u663e\u793a\u6587\u672c
-IFRAMETagInfo=\u5b9a\u4e49\u76f4\u63a5\u63d2\u5165\u7684\u5b50\u7a97\u53e3
-IMGTagInfo=\u5c06\u5f15\u7528\u7684\u56fe\u50cf\u4f5c\u4e3a\u5d4c\u5165\u5185\u5bb9\u6765\u663e\u793a
-INPUTTagInfo=\u4e3a\u7528\u6237\u8f93\u5165\u5b9a\u4e49\u8868\u5355\u63a7\u4ef6
-INSTagInfo=\u5b9a\u4e49\u63d2\u5165\u7684\u6587\u672c
-ISINDEXTagInfo=\u5b9a\u4e49\u5355\u884c\u63d0\u793a\u7b26
-KBDTagInfo=\u5b9a\u4e49\u8981\u7531\u7528\u6237\u8f93\u5165\u7684\u6587\u672c
-LABELTagInfo=\u4e3a\u8868\u5355\u5b57\u6bb5\u5b9a\u4e49\u6807\u53f7
-LEGENDTagInfo=\u4e3a\u4e00\u7ec4\u8868\u5355\u5b57\u6bb5\u5b9a\u4e49\u6807\u53f7
-LITagInfo=\u5728\u5217\u8868\u4e2d\u5b9a\u4e49\u5217\u8868\u9879
-LINKTagInfo=\u4e0e\u4ecb\u8d28\u65e0\u5173\u7684\u94fe\u63a5
-MAPTagInfo=\u5b9a\u4e49\u5ba2\u6237\u673a\u7aef\u56fe\u50cf\u6620\u5c04
-MARQUEETagInfo=\u6eda\u52a8\u663e\u793a\u6587\u672c\u3002W3C HTML 4.01 \u4e0d\u652f\u6301\u5b83\u3002
-MENUTagInfo=\u5b9a\u4e49\u83dc\u5355\u5217\u8868
-METATagInfo=\u4e3a\u6587\u6863\u5b9a\u4e49\u5143\u6570\u636e\u4fe1\u606f
-NOBRTagInfo=\u8986\u76d6\u5e76\u9632\u6b62\u6362\u884c\u3002W3C HTML 4.01 \u4e0d\u652f\u6301\u5b83\u3002
-NOFRAMESTagInfo=\u82e5\u5f53\u524d\u6d4f\u89c8\u5668\u4e0d\u652f\u6301\u6846\u67b6\uff0c\u63d0\u4f9b\u663e\u793a\u7684\u4fe1\u606f
-NOSCRIPTTagInfo=\u82e5\u5f53\u524d\u6d4f\u89c8\u5668\u4e0d\u652f\u6301\u811a\u672c\u7f16\u5236\uff0c\u63d0\u4f9b\u663e\u793a\u7684\u4fe1\u606f
-OBJECTTagInfo=\u5b9a\u4e49\u4e00\u822c\u5d4c\u5165\u5f0f\u5bf9\u8c61
-OLTagInfo=\u6709\u5e8f\u5217\u8868
-OPTGROUPTagInfo=\u9009\u9879\u7ec4
-OPTIONTagInfo=\u53ef\u9009\u62e9\u7684\u9009\u9879
-PTagInfo=\u6bb5\u843d
-PARAMTagInfo=\u5df2\u547d\u540d\u7684\u5c5e\u6027\u503c
-PRETagInfo=\u9884\u5148\u683c\u5f0f\u5316\u7684\u6587\u672c
-QTagInfo=\u77ed\u7684\u76f4\u63a5\u63d2\u5165\u7684\u5f15\u7528
-STagInfo=\u7528\u5220\u9664\u7ebf\u6837\u5f0f\u663e\u793a\u6587\u672c
-SAMPTagInfo=\u6837\u672c\u7a0b\u5e8f\u8f93\u51fa\u548c\u811a\u672c\u7b49\u7b49\u3002\u7528\u7b49\u5bbd\u5b57\u4f53\u663e\u793a\u3002
-SCRIPTTagInfo=\u811a\u672c\u8bed\u53e5
-SELECTTagInfo=\u9009\u9879\u9009\u62e9\u5668
-SMALLTagInfo=\u7528\u5c0f\u5b57\u4f53\u663e\u793a\u6587\u672c
-SPANTagInfo=\u4e00\u4e2a\u4e00\u822c\u5bb9\u5668\uff0c\u53ef\u7528\u4e8e\u4e3a\u5185\u5bb9\u5b9a\u4e49\u8bed\u8a00\u6216\u6837\u5f0f
-STRIKETagInfo=\u7528\u5220\u9664\u7ebf\u6837\u5f0f\u663e\u793a\u6587\u672c
-STRONGTagInfo=\u4ee5\u7279\u522b\u5f3a\u8c03\u65b9\u5f0f\uff08\u901a\u5e38\u91c7\u7528\u7c97\u4f53\u5b57\uff09\u6765\u663e\u793a\u6587\u672c
-STYLETagInfo=\u4e3a\u5305\u542b\u7684\u4fe1\u606f\u5b9a\u4e49\u6837\u5f0f
-SUBTagInfo=\u663e\u793a\u4e3a\u4e0b\u6807
-SUPTagInfo=\u663e\u793a\u4e3a\u4e0a\u6807
-TABLETagInfo=\u5b9a\u4e49\u8868
-TBODYTagInfo=\u8868\u7684\u4e3b\u4f53
-TDTagInfo=\u8868\u4e2d\u7684\u5355\u5143
-TEXTAREATagInfo=\u591a\u884c\u6587\u672c\u5b57\u6bb5
-TFOOTTagInfo=\u8868\u9875\u811a
-THTagInfo=\u8868\u9875\u7709\u5355\u5143
-THEADTagInfo=\u8868\u9875\u7709
-TITLETagInfo=\u663e\u793a\u5728\u6d4f\u89c8\u5668\u7684\u6807\u9898\u680f\u4e2d\u7684\u6587\u6863\u6807\u9898
-TRTagInfo=\u8868\u884c
-TTTagInfo=\u4ee5\u7535\u4f20\u6253\u5b57\u673a\u6216\u7b49\u5bbd\u6587\u672c\u6837\u5f0f\u6765\u663e\u793a\u6587\u672c
-UTagInfo=\u4ee5\u52a0\u4e0b\u5212\u7ebf\u7684\u65b9\u5f0f\u6765\u663e\u793a\u6587\u672c
-ULTagInfo=\u65e0\u5e8f\u5217\u8868
-VARTagInfo=\u53d8\u91cf\u6216\u7a0b\u5e8f\u81ea\u53d8\u91cf\u7684\u5b9e\u4f8b
-WBRTagInfo=<B>&lt;NOBR&gt;</B> \u6807\u8bb0\u4e2d\u5141\u8bb8\u6362\u884c\u3002W3C HTML 4.01 \u4e0d\u652f\u6301\u5b83\u3002
diff --git a/bundles/org.eclipse.wst.html.core/data/htmref_zh_TW.properties b/bundles/org.eclipse.wst.html.core/data/htmref_zh_TW.properties
deleted file mode 100644
index 2d445d9..0000000
--- a/bundles/org.eclipse.wst.html.core/data/htmref_zh_TW.properties
+++ /dev/null
@@ -1,108 +0,0 @@
-###############################################################################
-# Copyright (c) 2004 IBM Corporation and others.
-# All rights reserved. This program and the accompanying materials
-# are made available under the terms of the Eclipse Public License v1.0
-# which accompanies this distribution, and is available at
-# http://www.eclipse.org/legal/epl-v10.html
-# 
-# Contributors:
-#     IBM Corporation - initial API and implementation
-###############################################################################
-
-ATagInfo=\u5982\u679c\u51fa\u73fe href \u5c6c\u6027\u7684\u8a71\uff0c\u5247\u70ba\u4e00\u500b\u93c8\u7d50\uff1b\u5982\u679c\u51fa\u73fe name \u5c6c\u6027\u7684\u8a71\uff0c\u5247\u70ba\u4e00\u500b\u93c8\u7d50\u76ee\u6a19
-ABBRTagInfo=\u7e2e\u5beb\uff08\u5982 WWW\u3001HTTP\uff09
-ACRONYMTagInfo=\u5b57\u9996\u8a9e\uff08\u5982 SCUBA\uff09
-ADDRESSTagInfo=\u9801\u9762\u4f5c\u8005\u7684\u4f4d\u5740\u8cc7\u8a0a
-APPLETTagInfo=Java Applet
-AREATagInfo=\u5b9a\u7fa9\u7528\u6236\u7aef\u5f71\u50cf\u93c8\u7d50\u5716\u5340
-BTagInfo=\u7528\u7c97\u9ad4\u5b57\u986f\u793a\u5167\u542b\u7684\u6587\u5b57
-BASETagInfo=\u8a08\u7b97\u76f8\u5c0d\u8def\u5f91\u6642\u8981\u7528\u7684\u9801\u9762\u57fa\u790e URI
-BASEFONTTagInfo=\u9801\u9762\u57fa\u790e\u5b57\u578b\u5927\u5c0f
-BDOTagInfo=\u7f6e\u63db\u9810\u8a2d\u96d9\u5411\u986f\u793a\u3002\u4f9b\u96d9\u5411\u8a9e\u8a00\u4f7f\u7528\u3002
-BIGTagInfo=\u7528\u5927\u5b57\u578b\u986f\u793a\u5167\u542b\u7684\u6587\u5b57
-BGSOUNDTagInfo=\u5b9a\u7fa9\u9801\u9762\u7684\u97f3\u6548\u6a94\u3002\u4e0d\u53d7 W3C HTML 4.01 \u652f\u63f4\u3002
-BLINKTagInfo=\u7528\u9583\u720d\u65b9\u5f0f\u986f\u793a\u6587\u5b57\u3002\u4e0d\u53d7 W3C HTML 4.01 \u652f\u63f4\u3002
-BLOCKQUOTETagInfo=\u4e0d\u9577\u7684\u5f15\u6587
-BODYTagInfo=\u6587\u4ef6\u4e3b\u9ad4\u3002\u542b\u6709\u9801\u9762\u7684\u6240\u6709\u5167\u5bb9\u3002
-BRTagInfo=\u5f37\u5236\u63db\u884c
-BUTTONTagInfo=\u5b9a\u7fa9\u6309\u9215
-CAPTIONTagInfo=\u5b9a\u7fa9\u8868\u683c\u6a19\u984c
-CENTERTagInfo=\u7f6e\u4e2d\u5c0d\u9f4a\u986f\u793a\u5167\u542b\u7684\u6587\u5b57\u3002\u76f8\u7576\u65bc align=center \u7684 DIV\u3002
-CITETagInfo=\u5f15\u7528
-CODETagInfo=\u8a08\u7b97\u6a5f\u78bc\u7247\u6bb5
-COLTagInfo=\u8868\u683c\u76f4\u6b04
-COLGROUPTagInfo=\u8868\u683c\u76f4\u6b04\u7fa4\u7d44
-DDTagInfo=\u5b9a\u7fa9\u6216\u8aaa\u660e\u6e05\u55ae\u4e2d\u7684\u5b9a\u7fa9\u6216\u8aaa\u660e
-DELTagInfo=\u5c07\u6587\u5b57\u986f\u793a\u70ba\u5df2\u522a\u9664
-DFNTagInfo=\u5b9a\u7fa9
-DIRTagInfo=\u76ee\u9304\u6e05\u55ae
-DIVTagInfo=\u53ef\u7528\u4f86\u5b9a\u7fa9\u5167\u5bb9\u8a9e\u8a00\u6216\u6a23\u5f0f\u7684\u901a\u7528\u5132\u5b58\u5668\u3002
-DLTagInfo=\u5b9a\u7fa9\u6216\u8aaa\u660e\u6e05\u55ae
-DTTagInfo=\u5b9a\u7fa9\u6216\u8aaa\u660e\u6e05\u55ae\u4e2d\u7684\u8a5e\u5f59\u6216\u4e3b\u984c
-EMTagInfo=\u5f37\u8abf\u986f\u793a\u6587\u5b57\uff08\u901a\u5e38\u662f\u659c\u9ad4\uff09
-EMBEDTagInfo=\u5b9a\u7fa9\u5167\u5d4c\u5916\u639b\u7a0b\u5f0f\u3002\u4e0d\u53d7 W3C HTML 4.01 \u652f\u63f4\u3002
-FIELDSETTagInfo=\u5b9a\u7fa9\u8868\u55ae\u63a7\u5236\u9805\u7fa4\u7d44
-FONTTagInfo=\u4ee5\u7d66\u5b9a\u7684\u5b57\u578b\u4f86\u986f\u793a\u6587\u5b57
-FORMTagInfo=\u5b9a\u7fa9\u4e92\u52d5\u5f0f\u8868\u55ae
-FRAMETagInfo=\u5b9a\u7fa9\u73fe\u884c\u8996\u7a97\u5167\u7684\u9801\u6846
-FRAMESETTagInfo=\u5b9a\u7fa9\u5206\u5272\u8996\u7a97\u7684\u9801\u6846\u7d44
-H1TagInfo=\u6700\u4e0a\u5c64\u6a19\u984c
-H2TagInfo=\u7b2c\u4e8c\u5c64\u6a19\u984c
-H3TagInfo=\u7b2c\u4e09\u5c64\u6a19\u984c
-H4TagInfo=\u7b2c\u56db\u5c64\u6a19\u984c
-H5TagInfo=\u7b2c\u4e94\u5c64\u6a19\u984c
-H6TagInfo=\u7b2c\u516d\u5c64\u6a19\u984c
-HEADTagInfo=\u542b\u6709\u6587\u4ef6\u7684 Meta \u8cc7\u6599\u548c\u8996\u7a97\u6a19\u984c\u8cc7\u8a0a
-HRTagInfo=\u6c34\u5e73\u5c3a\u898f
-HTMLTagInfo=\u6587\u4ef6\u7684\u6839\u5143\u7d20\u3002
-ITagInfo=\u7528\u659c\u9ad4\u986f\u793a\u6587\u5b57
-IFRAMETagInfo=\u5b9a\u7fa9\u5217\u5165\u5b50\u8996\u7a97
-IMGTagInfo=\u5c07\u53c3\u7167\u7684\u5f71\u50cf\u986f\u793a\u6210\u5167\u5d4c\u5167\u5bb9
-INPUTTagInfo=\u5b9a\u7fa9\u4f7f\u7528\u8005\u8f38\u5165\u7684\u8868\u55ae\u63a7\u5236
-INSTagInfo=\u5b9a\u7fa9\u63d2\u5165\u7684\u6587\u5b57
-ISINDEXTagInfo=\u5b9a\u7fa9\u55ae\u884c\u63d0\u793a
-KBDTagInfo=\u5b9a\u7fa9\u4f7f\u7528\u8005\u8981\u8f38\u5165\u7684\u6587\u5b57
-LABELTagInfo=\u5b9a\u7fa9\u8868\u55ae\u6b04\u4f4d\u7684\u6a19\u7c64
-LEGENDTagInfo=\u5b9a\u7fa9\u4e00\u7d44\u8868\u55ae\u6b04\u4f4d\u7684\u6a19\u7c64
-LITagInfo=\u5b9a\u7fa9\u6e05\u55ae\u5167\u7684\u6e05\u55ae\u9805\u76ee
-LINKTagInfo=\u5a92\u9ad4\u7368\u7acb\u93c8\u7d50
-MAPTagInfo=\u5b9a\u7fa9\u7528\u6236\u7aef\u5f71\u50cf\u93c8\u7d50\u5716
-MARQUEETagInfo=\u7528\u6372\u52d5\u65b9\u5f0f\u986f\u793a\u6587\u5b57\u3002\u4e0d\u53d7 W3C HTML 4.01 \u652f\u63f4\u3002
-MENUTagInfo=\u5b9a\u7fa9\u529f\u80fd\u8868\u6e05\u55ae
-METATagInfo=\u5b9a\u7fa9\u6587\u4ef6\u7684 Meta \u8cc7\u6599\u8cc7\u8a0a
-NOBRTagInfo=\u7f6e\u63db\u548c\u9632\u6b62\u63db\u884c\u3002\u4e0d\u53d7 W3C HTML 4.01 \u652f\u63f4\u3002
-NOFRAMESTagInfo=\u63d0\u4f9b\u73fe\u884c\u700f\u89bd\u5668\u4e0d\u652f\u63f4\u9801\u6846\u6642\uff0c\u6240\u986f\u793a\u7684\u8cc7\u8a0a
-NOSCRIPTTagInfo=\u63d0\u4f9b\u73fe\u884c\u700f\u89bd\u5668\u4e0d\u652f\u63f4 Scripting \u6642\uff0c\u6240\u986f\u793a\u7684\u8cc7\u8a0a
-OBJECTTagInfo=\u5b9a\u7fa9\u901a\u7528\u5167\u5d4c\u7269\u4ef6
-OLTagInfo=\u6392\u5e8f\u6e05\u55ae
-OPTGROUPTagInfo=\u9078\u9805\u7fa4\u7d44
-OPTIONTagInfo=\u53ef\u9078\u53d6\u7684\u9078\u9805
-PTagInfo=\u6bb5\u843d
-PARAMTagInfo=\u5177\u540d\u5167\u5bb9\u503c
-PRETagInfo=\u9810\u5148\u683c\u5f0f\u5316\u7684\u6587\u5b57
-QTagInfo=\u77ed\u7684\u5217\u5165\u5f15\u6587
-STagInfo=\u7528 strike-through \u6a23\u5f0f\u986f\u793a\u6587\u5b57
-SAMPTagInfo=\u7bc4\u4f8b\u7a0b\u5f0f\u8f38\u51fa\u3001Script \u7b49\u3002\u7528\u55ae\u8ddd\u5b57\u578b\u986f\u793a\u3002
-SCRIPTTagInfo=Script \u9673\u8ff0\u5f0f
-SELECTTagInfo=\u9078\u9805\u9078\u53d6\u5143
-SMALLTagInfo=\u7528\u5c0f\u5b57\u578b\u986f\u793a\u6587\u5b57
-SPANTagInfo=\u53ef\u7528\u4f86\u5b9a\u7fa9\u5167\u5bb9\u8a9e\u8a00\u6216\u6a23\u5f0f\u7684\u901a\u7528\u5132\u5b58\u5668\u3002
-STRIKETagInfo=\u7528 strike-through \u6a23\u5f0f\u986f\u793a\u6587\u5b57
-STRONGTagInfo=\u7279\u5225\u5f37\u8abf\u986f\u793a\u6587\u5b57\uff08\u901a\u5e38\u662f\u7c97\u9ad4\uff09
-STYLETagInfo=\u5b9a\u7fa9\u5167\u542b\u8cc7\u8a0a\u7684\u6a23\u5f0f
-SUBTagInfo=\u986f\u793a\u6210\u4e0b\u6a19
-SUPTagInfo=\u986f\u793a\u6210\u4e0a\u6a19
-TABLETagInfo=\u5b9a\u7fa9\u8868\u683c
-TBODYTagInfo=\u8868\u683c\u4e3b\u9ad4
-TDTagInfo=\u8868\u683c\u5167\u7684\u8cc7\u6599\u683c
-TEXTAREATagInfo=\u591a\u884c\u6587\u5b57\u6b04\u4f4d
-TFOOTTagInfo=\u8868\u683c\u6a19\u5e95
-THTagInfo=\u8868\u683c\u6a19\u982d\u8cc7\u6599\u683c
-THEADTagInfo=\u8868\u683c\u6a19\u982d
-TITLETagInfo=\u986f\u793a\u5728\u700f\u89bd\u5668\u6a19\u984c\u5217\u7684\u6587\u4ef6\u6a19\u984c
-TRTagInfo=\u8868\u683c\u5217
-TTTagInfo=\u7528\u6253\u5b57\u6a5f\u5b57\u9ad4\u6216\u55ae\u8ddd\u6587\u5b57\u6a23\u5f0f\u4f86\u986f\u793a\u6587\u5b57
-UTagInfo=\u7528\u9644\u52a0\u5e95\u7dda\u4f86\u986f\u793a\u6587\u5b57
-ULTagInfo=\u975e\u6392\u5e8f\u6e05\u55ae
-VARTagInfo=\u8b8a\u6578\u6216\u7a0b\u5f0f\u5f15\u6578\u7684\u5be6\u4f8b
-WBRTagInfo=\u5141\u8a31\u5728 <B>&lt;NOBR&gt;</B> \u6a19\u793a\u5167\u63db\u884c\u3002\u4e0d\u53d7 W3C HTML 4.01 \u652f\u63f4\u3002
diff --git a/bundles/org.eclipse.wst.html.core/plugin.properties b/bundles/org.eclipse.wst.html.core/plugin.properties
deleted file mode 100644
index 3711dbf..0000000
--- a/bundles/org.eclipse.wst.html.core/plugin.properties
+++ /dev/null
@@ -1,15 +0,0 @@
-###############################################################################
-# Copyright (c) 2004 IBM Corporation and others.
-# All rights reserved. This program and the accompanying materials
-# are made available under the terms of the Eclipse Public License v1.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 HTML Model
-nlFeatureName=Structured Source HTML Model NL Support
-Structured_HTML_Document_Factory_Extension.name=Structured HTML Document Factory Extension
-HTML_Content_Type_Extension_Element.name=HTML
diff --git a/bundles/org.eclipse.wst.html.core/plugin.xml b/bundles/org.eclipse.wst.html.core/plugin.xml
deleted file mode 100644
index 160504d..0000000
--- a/bundles/org.eclipse.wst.html.core/plugin.xml
+++ /dev/null
@@ -1,197 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<?eclipse version="3.0"?>
-<plugin>
-
-     <extension
-         point="org.eclipse.wst.sse.core.modelHandler">
-      <modelHandler
-            default="no"
-            class="org.eclipse.wst.html.core.internal.modelhandler.ModelHandlerForHTML"
-            associatedContentTypeId="org.eclipse.wst.html.core.htmlsource"
-            id="org.eclipse.wst.html.core.internal.modelhandler">
-      </modelHandler>
-   </extension>
-   <extension
-         point="org.eclipse.wst.sse.core.embeddedTypeHandler">
-      <embeddedTypeHandler
-            class="org.eclipse.wst.html.core.internal.modelhandler.EmbeddedHTML">
-      </embeddedTypeHandler>
-   </extension>
-   <extension
-         id="org.eclipse.wst.html.core.taskdelegate"
-         point="org.eclipse.wst.sse.core.taskscanner">
-      <scanner
-            class="org.eclipse.wst.xml.core.internal.tasks.XMLTaskScannerDelegate"
-            contentTypeIds="org.eclipse.wst.html.core.htmlsource" />
-   </extension>
-   <extension point="org.eclipse.core.filebuffers.documentCreation"
-         id="org.eclipse.wst.html.core.documentfactories"
-         name="%Structured_HTML_Document_Factory_Extension.name">
-      <factory
-            contentTypeId="org.eclipse.wst.html.core.htmlsource"
-            class="org.eclipse.wst.sse.core.internal.filebuffers.BasicStructuredDocumentFactory"/>
-   </extension>
-   <extension
-         point="org.eclipse.wst.sse.core.commentElementHandler">
-      <handler-custom
-            commenttype="xml"
-            class="org.eclipse.wst.html.core.internal.commentelement.handlers.CommentElementHandlerForSSI">
-         <startwith
-               prefix="#">
-         </startwith>
-      </handler-custom>
-   </extension>
-   <extension
-         point="org.eclipse.team.core.fileTypes">
-      <fileTypes
-            type="text"
-            extension="html">
-      </fileTypes>
-      <fileTypes
-            type="text"
-            extension="htm">
-      </fileTypes>
-      <fileTypes
-            type="text"
-            extension="xhtml">
-      </fileTypes>
-      <fileTypes
-            type="text"
-            extension="htpl">
-      </fileTypes>
-      <fileTypes
-            type="text"
-            extension="wml">
-      </fileTypes>
-      <fileTypes
-            type="text"
-            extension="shtml">
-      </fileTypes>
-      <fileTypes
-            type="text"
-            extension="shtm">
-      </fileTypes>
-   </extension>
-   <extension
-         point="org.eclipse.wst.sse.core.formatProcessors">
-      <processor
-            class="org.eclipse.wst.html.core.internal.format.HTMLFormatProcessorImpl"
-            contentTypeId="org.eclipse.wst.html.core.htmlsource">
-      </processor>
-   </extension>
-<!-- Extension point for taghelp documentation -->
-   <extension
-         point="org.eclipse.wst.xml.core.annotationFiles">
-      <annotationFile
-            location="data/htmref.xml"
-            publicId="-//W3C//DTD XHTML 1.0 Strict//EN">
-      </annotationFile>
-      <annotationFile
-            location="data/htmref.xml"
-            publicId="-//W3C//DTD XHTML 1.0 Transitional//EN">
-      </annotationFile>
-      <annotationFile
-            location="data/htmref.xml"
-            publicId="-//W3C//DTD XHTML 1.0 Frameset//EN">
-      </annotationFile>
-      <annotationFile
-            location="data/htmref.xml"
-            publicId="-//W3C//DTD XHTML Basic 1.0//EN">
-      </annotationFile>
-      <annotationFile
-            location="data/htmref.xml"
-            publicId="-//W3C//DTD XHTML 1.1//EN">
-      </annotationFile>
-      <annotationFile
-            location="data/htmref.xml"
-            publicId="-//WAPFORUM//DTD XHTML Mobile 1.0//EN">
-      </annotationFile>
-   </extension>
-   <extension
-         point="org.eclipse.core.runtime.contentTypes">
-         <content-type
-               file-extensions="html,htm,xhtml,htpl,wml,shtml,shtm"
-               priority="high"
-               name="%HTML_Content_Type_Extension_Element.name"
-               id="htmlsource"
-               base-type="org.eclipse.core.runtime.text">
-			<!-- note: no default-charset for HTML, should use 'platform' -->
-			<describer class="org.eclipse.wst.html.core.internal.contenttype.ContentDescriberForHTML"/>
-		</content-type>
-   </extension>
-
-
-   <extension
-         point="org.eclipse.wst.sse.core.documentTypes">
-      <documentType
-            elementName="html"
-            displayName="XHTML 1.0 Strict"
-            namespaceURI="http://www.w3.org/1999/xhtml"
-            isXHTML="true"
-            hasFrameset="false"
-            publicID="-//W3C//DTD XHTML 1.0 Strict//EN"
-            systemID="http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
-      </documentType>
-      <documentType
-            elementName="html"
-            displayName="XHTML 1.0 Transitional"
-            namespaceURI="http://www.w3.org/1999/xhtml"
-            isXHTML="true"
-            hasFrameset="false"
-            publicID="-//W3C//DTD XHTML 1.0 Transitional//EN"
-            defaultXHTML="true"
-            systemID="http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-      </documentType>
-      <documentType
-            elementName="html"
-            displayName="XHTML 1.0 Frameset"
-            namespaceURI="http://www.w3.org/1999/xhtml"
-            isXHTML="true"
-            hasFrameset="true"
-            publicID="-//W3C//DTD XHTML 1.0 Frameset//EN"
-            systemID="http://www.w3.org/TR/xhtml1/DTD/xhtml1-frameset.dtd">
-      </documentType>
-      <documentType
-            elementName="html"
-            displayName="XHTML Basic 1.0"
-            namespaceURI="http://www.w3.org/1999/xhtml"
-            isXHTML="true"
-            hasFrameset="false"
-            publicID="-//W3C//DTD XHTML Basic 1.0//EN"
-            systemID="http://www.w3.org/TR/xhtml-basic/xhtml-basic10.dtd">
-      </documentType>
-      <documentType
-            elementName="html"
-            displayName="XHTML 1.1"
-            namespaceURI="http://www.w3.org/1999/xhtml"
-            isXHTML="true"
-            hasFrameset="false"
-            publicID="-//W3C//DTD XHTML 1.1//EN"
-            systemID="http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
-      </documentType>
-      <documentType
-            elementName="html"
-            displayName="XHTML MP 1.0"
-            namespaceURI="http://www.w3.org/1999/xhtml"
-            isXHTML="true"
-            hasFrameset="false"
-            publicID="-//WAPFORUM//DTD XHTML Mobile 1.0//EN"
-            systemID="http://www.wapforum.org/DTD/xhtml-mobile10.dtd">
-      </documentType>
-      <documentType
-            elementName="wml"
-            displayName="WML 1.3"
-            namespaceURI=""
-            isWML="true"
-            hasFrameset="false"
-            publicID="-//WAPFORUM//DTD WML 1.3//EN"
-            defaultWML="true"
-            systemID="http://www.wapforum.org/DTD/wml13.dtd">
-      </documentType>
-   </extension>
-   
-	<!-- initialize html core preferences -->
-	<extension point="org.eclipse.core.runtime.preferences">
-         <initializer class="org.eclipse.wst.html.core.internal.preferences.HTMLCorePreferenceInitializer"/>
-	</extension>
-</plugin>
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/HTMLContentBuilder.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/HTMLContentBuilder.java
deleted file mode 100644
index 7f612fb..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/HTMLContentBuilder.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.wst.html.core.internal;
-
-
-
-import org.eclipse.core.runtime.Preferences;
-import org.eclipse.wst.html.core.internal.preferences.HTMLCorePreferenceNames;
-import org.eclipse.wst.html.core.internal.provisional.HTMLCMProperties;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMNode;
-import org.eclipse.wst.xml.core.internal.contentmodel.util.DOMContentBuilderImpl;
-import org.w3c.dom.Document;
-import org.w3c.dom.Node;
-
-public class HTMLContentBuilder extends DOMContentBuilderImpl {
-
-	private int fTagCase;
-	private int fAttrCase;
-
-	/**
-	 * DOMContentBuilder constructor comment.
-	 * @param document org.w3c.dom.Document
-	 */
-	public HTMLContentBuilder(Document document) {
-		super(document);
-		Preferences prefs = HTMLCorePlugin.getDefault().getPluginPreferences();
-		fTagCase = prefs.getInt(HTMLCorePreferenceNames.TAG_NAME_CASE);
-		fAttrCase = prefs.getInt(HTMLCorePreferenceNames.ATTR_NAME_CASE);
-		//	Element caseSettings = HTMLPreferenceManager.getHTMLInstance().getElement(PreferenceNames.PREFERRED_CASE);
-		//	fTagCase = caseSettings.getAttribute(PreferenceNames.TAGNAME);
-		//	fAttrCase = caseSettings.getAttribute(PreferenceNames.ATTRIBUTENAME);
-	}
-
-	public String computeName(CMNode cmnode, Node parent) {
-		String name = super.computeName(cmnode, parent);
-		// don't change the case unless we're certain it is meaningless
-		//	if (cmnode instanceof HTMLCMNode && ((HTMLCMNode) cmnode).shouldIgnoreCase()) {
-		if (shouldIgnoreCase(cmnode)) {
-			if (cmnode.getNodeType() == CMNode.ELEMENT_DECLARATION) {
-				if (fTagCase == HTMLCorePreferenceNames.LOWER)
-					name = name.toLowerCase();
-				else if (fTagCase == HTMLCorePreferenceNames.UPPER)
-					name = name.toUpperCase();
-				// else do nothing
-			}
-			else if (cmnode.getNodeType() == CMNode.ATTRIBUTE_DECLARATION) {
-				if (fAttrCase == HTMLCorePreferenceNames.LOWER)
-					name = name.toLowerCase();
-				else if (fAttrCase == HTMLCorePreferenceNames.UPPER)
-					name = name.toUpperCase();
-				// else do nothing
-			}
-		}
-		return name;
-
-	}
-
-	private boolean shouldIgnoreCase(CMNode cmnode) {
-		if (!cmnode.supports(HTMLCMProperties.SHOULD_IGNORE_CASE))
-			return false;
-		return ((Boolean) cmnode.getProperty(HTMLCMProperties.SHOULD_IGNORE_CASE)).booleanValue();
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/HTMLCoreMessages.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/HTMLCoreMessages.java
deleted file mode 100644
index bd3a475..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/HTMLCoreMessages.java
+++ /dev/null
@@ -1,59 +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 - Initial API and implementation
- **********************************************************************/
-package org.eclipse.wst.html.core.internal;
-
-import org.eclipse.osgi.util.NLS;
-
-/**
- * Strings used by HTML Core
- * 
- * @since 1.0
- */
-public class HTMLCoreMessages extends NLS {
-	private static final String BUNDLE_NAME = "org.eclipse.wst.html.core.internal.HTMLCorePluginResources";//$NON-NLS-1$
-
-	public static String No_error__UI_;
-	public static String Undefined_attribute_name___ERROR_;
-	public static String Undefined_attribute_value__ERROR_;
-	public static String Multiple_values_specified__ERROR_;
-	public static String Attribute_name___0___uses__ERROR_;
-	public static String Invalid_attribute_name___0_ERROR_;
-	public static String Invalid_attribute___0____ERROR_;
-	public static String Invalid_location_of_tag____ERROR_;
-	public static String Duplicate_tag___0____ERROR_;
-	public static String No_start_tag____0_____ERROR_;
-	public static String No_end_tag_____0_____ERROR_;
-	public static String End_tag_____0____not_neede_ERROR_;
-	public static String Unknown_tag___0____ERROR_;
-	public static String Tag_name___0___uses_wrong__ERROR_;
-	public static String Invalid_tag_name___0____ERROR_;
-	public static String Invalid_JSP_directive___0__ERROR_;
-	public static String Invalid_text_string___0____ERROR_;
-	public static String Invalid_character_used_in__ERROR_;
-	public static String Unknown_error__ERROR_;
-	public static String Start_tag____0____not_clos_ERROR_;
-	public static String End_tag_____0____not_close_ERROR_;
-	public static String Attribute_value___0___uses_ERROR_;
-	public static String Comment_not_closed__ERROR_;
-	public static String DOCTYPE_declaration_not_cl_ERROR_;
-	public static String Processing_instruction_not_ERROR_;
-	public static String CDATA_section_not_closed__ERROR_;
-	public static String _ERROR_Tag___0___should_be_an_empty_element_tag_1;
-	public static String _ERROR_Attribute_value___0___not_closed__1;
-
-	static {
-		// load message values from bundle file
-		NLS.initializeMessages(BUNDLE_NAME, HTMLCoreMessages.class);
-	}
-	
-	private HTMLCoreMessages() {
-		// cannot create new instance
-	}
-}
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/HTMLCorePlugin.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/HTMLCorePlugin.java
deleted file mode 100644
index fc73123..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/HTMLCorePlugin.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.html.core.internal;
-
-import org.eclipse.core.resources.IWorkspace;
-import org.eclipse.core.resources.ResourcesPlugin;
-import org.eclipse.core.runtime.Plugin;
-
-/**
- * The main plugin class to be used in the desktop.
- */
-public class HTMLCorePlugin extends Plugin {
-	//The shared instance.
-	private static HTMLCorePlugin plugin;	
-
-	/**
-	 * The constructor.
-	 */
-	public HTMLCorePlugin() {
-		super();
-		plugin = this;
-	}
-
-	/**
-	 * Returns the shared instance.
-	 */
-	public static HTMLCorePlugin getDefault() {
-		return plugin;
-	}
-
-	/**
-	 * Returns the workspace instance.
-	 */
-	public static IWorkspace getWorkspace() {
-		return ResourcesPlugin.getWorkspace();
-	}
-}
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/HTMLCorePluginResources.properties b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/HTMLCorePluginResources.properties
deleted file mode 100644
index 584ad91..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/HTMLCorePluginResources.properties
+++ /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
-###############################################################################
-No_error__UI_=No error.
-Undefined_attribute_name___ERROR_=Undefined attribute name ({0}).
-Undefined_attribute_value__ERROR_=Undefined attribute value ({0}).
-Multiple_values_specified__ERROR_=Multiple values specified for an attribute ({0}).
-Attribute_name___0___uses__ERROR_=Attribute name ({0}) uses wrong case character.
-Invalid_attribute_name___0_ERROR_=Invalid attribute name ({0}).
-Invalid_attribute___0____ERROR_=Invalid attribute ({0}).
-Invalid_location_of_tag____ERROR_=Invalid location of tag ({0}).
-Duplicate_tag___0____ERROR_=Duplicate tag ({0}).
-No_start_tag____0_____ERROR_=No start tag (<{0}>).
-No_end_tag_____0_____ERROR_=No end tag (</{0}>).
-End_tag_____0____not_neede_ERROR_=End tag (</{0}>) not needed.
-Unknown_tag___0____ERROR_=Unknown tag ({0}).
-Tag_name___0___uses_wrong__ERROR_=Tag name ({0}) uses wrong case character.
-Invalid_tag_name___0____ERROR_=Invalid tag name ({0}).
-Invalid_JSP_directive___0__ERROR_=Invalid JSP directive ({0}).
-Invalid_text_string___0____ERROR_=Invalid text string ({0}).
-Invalid_character_used_in__ERROR_=Invalid character used in text string ({0}).
-Unknown_error__ERROR_=Unknown error.
-Start_tag____0____not_clos_ERROR_=Start tag (<{0}>) not closed.
-End_tag_____0____not_close_ERROR_=End tag (</{0}>) not closed.
-Attribute_value___0___uses_ERROR_=Attribute value ({0}) uses wrong case character.
-Comment_not_closed__ERROR_=Comment not closed.
-DOCTYPE_declaration_not_cl_ERROR_=DOCTYPE declaration not closed.
-Processing_instruction_not_ERROR_=Processing instruction not closed.
-CDATA_section_not_closed__ERROR_=CDATA section not closed.
-# From here, the new messages are added for V5
-_ERROR_Tag___0___should_be_an_empty_element_tag_1=Tag ({0}) should be an empty-element tag.
-_ERROR_Attribute_value___0___not_closed__1=Attribute value ({0}) not closed.
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/Logger.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/Logger.java
deleted file mode 100644
index fc6d82c..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/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.wst.html.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.html.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);
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/cleanup/AbstractNodeCleanupHandler.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/cleanup/AbstractNodeCleanupHandler.java
deleted file mode 100644
index 9f0e9ac..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/cleanup/AbstractNodeCleanupHandler.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.wst.html.core.internal.cleanup;
-
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.core.runtime.Preferences;
-import org.eclipse.wst.html.core.internal.HTMLCorePlugin;
-import org.eclipse.wst.html.core.internal.preferences.HTMLCorePreferenceNames;
-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.internal.provisional.events.StructuredDocumentEvent;
-import org.eclipse.wst.sse.core.internal.provisional.text.IStructuredDocument;
-import org.eclipse.wst.xml.core.internal.provisional.document.IDOMModel;
-
-abstract class AbstractNodeCleanupHandler implements IStructuredCleanupHandler {
-
-	protected IStructuredCleanupPreferences fCleanupPreferences = null;
-	protected IProgressMonitor fProgressMonitor = null;
-
-	public void setCleanupPreferences(IStructuredCleanupPreferences cleanupPreferences) {
-
-		fCleanupPreferences = cleanupPreferences;
-	}
-
-
-	public IStructuredCleanupPreferences getCleanupPreferences() {
-		if (fCleanupPreferences == null) {
-			fCleanupPreferences = new StructuredCleanupPreferences();
-	
-			Preferences preferences = getModelPreferences();
-			if (preferences != null) {
-				fCleanupPreferences.setCompressEmptyElementTags(preferences.getBoolean(HTMLCorePreferenceNames.COMPRESS_EMPTY_ELEMENT_TAGS));
-				fCleanupPreferences.setInsertRequiredAttrs(preferences.getBoolean(HTMLCorePreferenceNames.INSERT_REQUIRED_ATTRS));
-				fCleanupPreferences.setInsertMissingTags(preferences.getBoolean(HTMLCorePreferenceNames.INSERT_MISSING_TAGS));
-				fCleanupPreferences.setQuoteAttrValues(preferences.getBoolean(HTMLCorePreferenceNames.QUOTE_ATTR_VALUES));
-				fCleanupPreferences.setFormatSource(preferences.getBoolean(HTMLCorePreferenceNames.FORMAT_SOURCE));
-				fCleanupPreferences.setConvertEOLCodes(preferences.getBoolean(HTMLCorePreferenceNames.CONVERT_EOL_CODES));
-				fCleanupPreferences.setEOLCode(preferences.getString(HTMLCorePreferenceNames.CLEANUP_EOL_CODE));
-			}
-		}
-
-		return fCleanupPreferences;
-	}
-
-
-	public void setProgressMonitor(IProgressMonitor progressMonitor) {
-
-		fProgressMonitor = progressMonitor;
-	}
-
-	static protected StructuredDocumentEvent replaceSource(IDOMModel model, Object requester, int offset, int length, String source) {
-
-		StructuredDocumentEvent result = null;
-		if (model == null)
-			return result;
-		IStructuredDocument structuredDocument = model.getStructuredDocument();
-		if (structuredDocument == null)
-			return result;
-		if (source == null)
-			source = new String();
-		if (structuredDocument.containsReadOnly(offset, length))
-			return result;
-		if (requester == null) {
-			requester = structuredDocument;
-		}
-		return structuredDocument.replaceText(requester, offset, length, source);
-	}
-
-	protected Preferences getModelPreferences() {
-		return HTMLCorePlugin.getDefault().getPluginPreferences();
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/cleanup/CSSTextNodeCleanupHandler.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/cleanup/CSSTextNodeCleanupHandler.java
deleted file mode 100644
index ff8006c..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/cleanup/CSSTextNodeCleanupHandler.java
+++ /dev/null
@@ -1,86 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this 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.core.internal.cleanup;
-
-
-
-import org.eclipse.wst.css.core.internal.format.CSSSourceFormatter;
-import org.eclipse.wst.css.core.internal.provisional.adapters.IStyleSheetAdapter;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSModel;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSNode;
-import org.eclipse.wst.sse.core.internal.provisional.INodeAdapter;
-import org.eclipse.wst.sse.core.internal.provisional.INodeNotifier;
-import org.eclipse.wst.sse.core.internal.provisional.text.IStructuredDocument;
-import org.eclipse.wst.xml.core.internal.provisional.document.IDOMModel;
-import org.eclipse.wst.xml.core.internal.provisional.document.IDOMNode;
-import org.w3c.dom.Node;
-
-// nakamori_TODO: check and remove
-
-public class CSSTextNodeCleanupHandler extends AbstractNodeCleanupHandler {
-
-	public Node cleanup(Node node) {
-		if (node == null)
-			return node;
-		IDOMModel model = ((IDOMNode) node).getModel();
-		if (model == null)
-			return node;
-		IStructuredDocument structuredDocument = model.getStructuredDocument();
-		if (structuredDocument == null)
-			return node;
-
-		String content = getCSSContent(node);
-		if (content == null)
-			return node;
-
-		int offset = ((IDOMNode) node).getStartOffset();
-		int length = ((IDOMNode) node).getEndOffset() - offset;
-		replaceSource(model, this, offset, length, content);
-		return (IDOMNode) model.getIndexedRegion(offset);
-	}
-
-	/**
-	 */
-	private String getCSSContent(Node text) {
-		ICSSModel model = getCSSModel(text);
-		if (model == null)
-			return null;
-		ICSSNode document = model.getDocument();
-		if (document == null)
-			return null;
-		INodeNotifier notifier = (INodeNotifier) document;
-		INodeAdapter adapter = notifier.getAdapterFor(CSSSourceFormatter.class);
-		if (adapter == null)
-			return null;
-		CSSSourceFormatter formatter = (CSSSourceFormatter) adapter;
-		StringBuffer buffer = formatter.cleanup(document);
-		if (buffer == null)
-			return null;
-		return buffer.toString();
-	}
-
-	/**
-	 */
-	private ICSSModel getCSSModel(Node text) {
-		if (text == null)
-			return null;
-		INodeNotifier notifier = (INodeNotifier) text.getParentNode();
-		if (notifier == null)
-			return null;
-		INodeAdapter adapter = notifier.getAdapterFor(IStyleSheetAdapter.class);
-		if (adapter == null)
-			return null;
-		if (!(adapter instanceof IStyleSheetAdapter))
-			return null;
-		IStyleSheetAdapter styleAdapter = (IStyleSheetAdapter) adapter;
-		return styleAdapter.getModel();
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/cleanup/ElementNodeCleanupHandler.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/cleanup/ElementNodeCleanupHandler.java
deleted file mode 100644
index 70a79f0..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/cleanup/ElementNodeCleanupHandler.java
+++ /dev/null
@@ -1,635 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this 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.core.internal.cleanup;
-
-
-
-import java.util.ArrayList;
-import java.util.Iterator;
-import java.util.List;
-import java.util.Locale;
-
-import org.eclipse.jface.text.BadLocationException;
-import org.eclipse.text.edits.InsertEdit;
-import org.eclipse.text.edits.MultiTextEdit;
-import org.eclipse.wst.css.core.internal.format.CSSSourceFormatter;
-import org.eclipse.wst.css.core.internal.provisional.adapters.IStyleDeclarationAdapter;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSModel;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSNode;
-import org.eclipse.wst.html.core.internal.preferences.HTMLCorePreferenceNames;
-import org.eclipse.wst.sse.core.internal.cleanup.IStructuredCleanupHandler;
-import org.eclipse.wst.sse.core.internal.provisional.INodeAdapter;
-import org.eclipse.wst.sse.core.internal.provisional.INodeNotifier;
-import org.eclipse.wst.sse.core.internal.provisional.exceptions.SourceEditingRuntimeException;
-import org.eclipse.wst.sse.core.internal.provisional.text.IStructuredDocument;
-import org.eclipse.wst.sse.core.internal.provisional.text.IStructuredDocumentRegion;
-import org.eclipse.wst.sse.core.internal.provisional.text.ITextRegion;
-import org.eclipse.wst.sse.core.internal.provisional.text.ITextRegionList;
-import org.eclipse.wst.sse.core.internal.util.StringUtils;
-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.internal.provisional.document.IDOMAttr;
-import org.eclipse.wst.xml.core.internal.provisional.document.IDOMDocument;
-import org.eclipse.wst.xml.core.internal.provisional.document.IDOMElement;
-import org.eclipse.wst.xml.core.internal.provisional.document.IDOMModel;
-import org.eclipse.wst.xml.core.internal.provisional.document.IDOMNode;
-import org.eclipse.wst.xml.core.internal.provisional.document.ISourceGenerator;
-import org.eclipse.wst.xml.core.internal.regions.DOMRegionContext;
-import org.w3c.dom.Attr;
-import org.w3c.dom.Document;
-import org.w3c.dom.Element;
-import org.w3c.dom.NamedNodeMap;
-import org.w3c.dom.Node;
-
-// nakamori_TODO: check and remove CSS formatting
-
-public class ElementNodeCleanupHandler extends AbstractNodeCleanupHandler {
-
-	/** Non-NLS strings */
-	protected static final String START_TAG_OPEN = "<"; //$NON-NLS-1$
-	protected static final String END_TAG_OPEN = "</"; //$NON-NLS-1$
-	protected static final String TAG_CLOSE = ">"; //$NON-NLS-1$
-	protected static final String EMPTY_TAG_CLOSE = "/>"; //$NON-NLS-1$
-	protected static final String SINGLE_QUOTES = "''"; //$NON-NLS-1$
-	protected static final String DOUBLE_QUOTES = "\"\""; //$NON-NLS-1$
-	protected static final char SINGLE_QUOTE = '\''; //$NON-NLS-1$
-	protected static final char DOUBLE_QUOTE = '\"'; //$NON-NLS-1$
-
-	public Node cleanup(Node node) {
-		IDOMNode renamedNode = (IDOMNode) cleanupChildren(node);
-
-		// 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 (!((IDOMElement) renamedNode).isCommentTag() && (renamedNode.getStartStructuredDocumentRegion() != null)) {
-			IDOMModel 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 = (IDOMNode) 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
-		// applyTagNameCase() will return the renamed node.
-		// The renamed/new node will be saved and returned to caller when all cleanup is done.
-		renamedNode = insertMissingTags(renamedNode);
-		renamedNode = insertRequiredAttrs(renamedNode);
-		renamedNode = applyTagNameCase(renamedNode);
-		applyAttrNameCase(renamedNode);
-		cleanupCSSAttrValue(renamedNode);
-
-		return renamedNode;
-	}
-
-	private boolean shouldIgnoreCase(IDOMElement element) {
-		// case option can be applied to no namespace tags
-		return element.isGlobalTag();
-		/*
-		 ModelQueryAdapter mqadapter = (ModelQueryAdapter) element.getAdapterFor(ModelQueryAdapter.class);
-		 ModelQuery mq = null;
-		 CMNode nodedecl = null;
-		 if (mqadapter != null)
-		 mq = mqadapter.getModelQuery();
-		 if (mq != null)
-		 nodedecl = mq.getCMNode(node);
-		 // if a Node isn't recognized as HTML or is and cares about case, do not alter it
-		 //	if (nodedecl == null || (nodedecl instanceof HTMLCMNode && ((HTMLCMNode) nodedecl).shouldIgnoreCase()))
-		 if (! nodedecl.supports(HTMLCMProperties.SHOULD_IGNORE_CASE)) return false;
-		 return ((Boolean)cmnode.getProperty(HTMLCMProperties.SHOULD_IGNORE_CASE)).booleanValue();
-		 */
-	}
-
-	protected void applyAttrNameCase(IDOMNode node) {
-		IDOMElement element = (IDOMElement) node;
-		if (element.isCommentTag())
-			return; // do nothing
-
-		int attrNameCase = HTMLCorePreferenceNames.ASIS;
-
-		if (shouldIgnoreCase(element))
-			attrNameCase = getCleanupPreferences().getAttrNameCase();
-
-		NamedNodeMap attributes = node.getAttributes();
-		int attributesLength = attributes.getLength();
-
-		for (int i = 0; i < attributesLength; i++) {
-			IDOMNode eachAttr = (IDOMNode) attributes.item(i);
-			String oldAttrName = eachAttr.getNodeName();
-			String newAttrName = oldAttrName;
-			// 254961 - all HTML tag names and attribute names should be in English
-			//          even for HTML files in other languages like Japanese or Turkish.
-			//          English locale should be used to convert between uppercase and lowercase
-			//          (otherwise "link" would be converted to "LÝNK" in Turkish, where '?' in "LÝNK"
-			//          is the "I Overdot Capital" in Turkish).
-			if (attrNameCase == HTMLCorePreferenceNames.LOWER)
-				newAttrName = oldAttrName.toLowerCase(Locale.US);
-			else if (attrNameCase == HTMLCorePreferenceNames.UPPER)
-				newAttrName = oldAttrName.toUpperCase(Locale.US);
-
-			if (newAttrName.compareTo(oldAttrName) != 0) {
-				int attrNameStartOffset = eachAttr.getStartOffset();
-				int attrNameLength = oldAttrName.length();
-
-				IDOMModel structuredModel = node.getModel();
-				IStructuredDocument structuredDocument = structuredModel.getStructuredDocument();
-				replaceSource(structuredModel, structuredDocument, attrNameStartOffset, attrNameLength, newAttrName);
-			}
-		}
-	}
-
-	protected IDOMNode applyTagNameCase(IDOMNode node) {
-		IDOMElement element = (IDOMElement) node;
-		if (element.isCommentTag())
-			return node; // do nothing
-
-		int tagNameCase = HTMLCorePreferenceNames.ASIS;
-
-		if (shouldIgnoreCase(element))
-			tagNameCase = getCleanupPreferences().getTagNameCase();
-
-		String oldTagName = node.getNodeName();
-		String newTagName = oldTagName;
-		IDOMNode newNode = node;
-
-		// 254961 - all HTML tag names and attribute names should be in English
-		//          even for HTML files in other languages like Japanese or Turkish.
-		//          English locale should be used to convert between uppercase and lowercase
-		//          (otherwise "link" would be converted to "LÝNK" in Turkish, where '?' in "LÝNK"
-		//          is the "I Overdot Capital" in Turkish).
-		if (tagNameCase == HTMLCorePreferenceNames.LOWER)
-			newTagName = oldTagName.toLowerCase(Locale.US);
-		else if (tagNameCase == HTMLCorePreferenceNames.UPPER)
-			newTagName = oldTagName.toUpperCase(Locale.US);
-
-		IDOMModel structuredModel = node.getModel();
-		IStructuredDocument structuredDocument = structuredModel.getStructuredDocument();
-
-		IStructuredDocumentRegion startTagStructuredDocumentRegion = node.getStartStructuredDocumentRegion();
-		if (startTagStructuredDocumentRegion != null) {
-			ITextRegionList regions = startTagStructuredDocumentRegion.getRegions();
-			if (regions != null && regions.size() > 0) {
-				ITextRegion startTagNameRegion = regions.get(1);
-				int startTagNameStartOffset = startTagStructuredDocumentRegion.getStartOffset(startTagNameRegion);
-				int startTagNameLength = startTagStructuredDocumentRegion.getTextEndOffset(startTagNameRegion) - startTagNameStartOffset;
-
-				replaceSource(structuredModel, structuredDocument, startTagNameStartOffset, startTagNameLength, newTagName);
-				newNode = (IDOMNode) structuredModel.getIndexedRegion(startTagNameStartOffset); // save new node
-			}
-		}
-
-		IStructuredDocumentRegion endTagStructuredDocumentRegion = node.getEndStructuredDocumentRegion();
-		if (endTagStructuredDocumentRegion != null) {
-			ITextRegionList regions = endTagStructuredDocumentRegion.getRegions();
-			if (regions != null && regions.size() > 0) {
-				ITextRegion endTagNameRegion = regions.get(1);
-				int endTagNameStartOffset = endTagStructuredDocumentRegion.getStartOffset(endTagNameRegion);
-				int endTagNameLength = endTagStructuredDocumentRegion.getTextEndOffset(endTagNameRegion) - endTagNameStartOffset;
-
-				if (startTagStructuredDocumentRegion != endTagStructuredDocumentRegion)
-					replaceSource(structuredModel, structuredDocument, endTagNameStartOffset, endTagNameLength, newTagName);
-			}
-		}
-
-		return newNode;
-	}
-
-	protected Node cleanupChildren(Node node) {
-		Node parentNode = node;
-
-		if (node != null) {
-			Node childNode = node.getFirstChild();
-			HTMLCleanupHandlerFactory factory = HTMLCleanupHandlerFactory.getInstance();
-			while (childNode != null) {
-				// cleanup this child node
-				IStructuredCleanupHandler cleanupHandler = factory.createHandler(childNode, getCleanupPreferences());
-				childNode = cleanupHandler.cleanup(childNode);
-
-				// get new parent node
-				parentNode = (IDOMNode) childNode.getParentNode();
-
-				// get next child node
-				childNode = (IDOMNode) childNode.getNextSibling();
-			}
-		}
-
-		return parentNode;
-	}
-
-	/**
-	 */
-	protected void cleanupCSSAttrValue(IDOMNode node) {
-		if (node == null || node.getNodeType() != Node.ELEMENT_NODE)
-			return;
-		IDOMElement element = (IDOMElement) node;
-		if (!element.isGlobalTag())
-			return;
-
-		Attr attr = element.getAttributeNode("style"); //$NON-NLS-1$
-		if (attr == null)
-			return;
-		String value = getCSSValue(attr);
-		if (value == null)
-			return;
-		String oldValue = ((IDOMNode) attr).getValueSource();
-		if (oldValue != null && value.equals(oldValue))
-			return;
-		attr.setValue(value);
-	}
-
-	/**
-	 */
-	private ICSSModel getCSSModel(Attr attr) {
-		if (attr == null)
-			return null;
-		INodeNotifier notifier = (INodeNotifier) attr.getOwnerElement();
-		if (notifier == null)
-			return null;
-		INodeAdapter adapter = notifier.getAdapterFor(IStyleDeclarationAdapter.class);
-		if (adapter == null)
-			return null;
-		if (!(adapter instanceof IStyleDeclarationAdapter))
-			return null;
-		IStyleDeclarationAdapter styleAdapter = (IStyleDeclarationAdapter) adapter;
-		return styleAdapter.getModel();
-	}
-
-	/**
-	 */
-	private String getCSSValue(Attr attr) {
-		ICSSModel model = getCSSModel(attr);
-		if (model == null)
-			return null;
-		ICSSNode document = model.getDocument();
-		if (document == null)
-			return null;
-		INodeNotifier notifier = (INodeNotifier) document;
-		INodeAdapter adapter = notifier.getAdapterFor(CSSSourceFormatter.class);
-		if (adapter == null)
-			return null;
-		CSSSourceFormatter formatter = (CSSSourceFormatter) adapter;
-		StringBuffer buffer = formatter.cleanup(document);
-		if (buffer == null)
-			return null;
-		return buffer.toString();
-	}
-
-	private boolean isEmptyElement(IDOMElement 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);
-	}
-
-	protected IDOMNode insertEndTag(IDOMNode node) {
-		IDOMElement element = (IDOMElement) node;
-
-		int startTagStartOffset = node.getStartOffset();
-		IDOMModel structuredModel = node.getModel();
-		IDOMNode newNode = null;
-
-		if (element.isCommentTag()) {
-			// do nothing
-		}
-		else if (isEmptyElement(element)) {
-			IStructuredDocument structuredDocument = structuredModel.getStructuredDocument();
-			IStructuredDocumentRegion startStructuredDocumentRegion = node.getStartStructuredDocumentRegion();
-			ITextRegionList regions = startStructuredDocumentRegion.getRegions();
-			ITextRegion lastRegion = regions.get(regions.size() - 1);
-			replaceSource(structuredModel, 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())
-					replaceSource(structuredModel, structuredDocument, startStructuredDocumentRegion.getStartOffset(lastRegion), 0, " "); //$NON-NLS-1$
-			}
-		}
-		else {
-			String tagName = node.getNodeName();
-			String endTag = END_TAG_OPEN.concat(tagName).concat(TAG_CLOSE);
-
-			IDOMNode lastChild = (IDOMNode) 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();
-			replaceSource(structuredModel, structuredDocument, endTagStartOffset, 0, endTag);
-		}
-
-		newNode = (IDOMNode) structuredModel.getIndexedRegion(startTagStartOffset); // save new node
-
-		return newNode;
-	}
-
-	protected IDOMNode insertMissingTags(IDOMNode node) {
-		boolean insertMissingTags = getCleanupPreferences().getInsertMissingTags();
-		IDOMNode 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 regionList = startTagStructuredDocumentRegion.getRegions();
-			if (startTagStructuredDocumentRegion != null && regionList != null && regionList.get(regionList.size() - 1).getType() == DOMRegionContext.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;
-	}
-
-	protected IDOMNode insertStartTag(IDOMNode node) {
-		IDOMElement element = (IDOMElement) node;
-		if (element.isCommentTag())
-			return node; // do nothing
-
-		IDOMNode newNode = null;
-
-		String tagName = node.getNodeName();
-		String startTag = START_TAG_OPEN.concat(tagName).concat(TAG_CLOSE);
-		int startTagStartOffset = node.getStartOffset();
-
-		IDOMModel structuredModel = node.getModel();
-		IStructuredDocument structuredDocument = structuredModel.getStructuredDocument();
-		replaceSource(structuredModel, structuredDocument, startTagStartOffset, 0, startTag);
-		newNode = (IDOMNode) structuredModel.getIndexedRegion(startTagStartOffset); // save new node
-
-		return newNode;
-	}
-
-	protected void insertTagClose(IDOMModel structuredModel, IStructuredDocumentRegion flatNode) {
-		if ((flatNode != null) && (flatNode.getRegions() != null)) {
-			ITextRegionList regionList = flatNode.getRegions();
-			ITextRegion lastRegion = regionList.get(regionList.size() - 1);
-			if (lastRegion != null) {
-				String regionType = lastRegion.getType();
-				if ((regionType != DOMRegionContext.XML_EMPTY_TAG_CLOSE) && (regionType != DOMRegionContext.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
-					replaceSource(structuredModel, structuredDocument, flatNode.getTextEndOffset(lastRegion), 0, ">"); //$NON-NLS-1$
-				}
-			}
-		}
-	}
-
-	protected boolean isEndTagRequired(IDOMNode node) {
-		if (node == null)
-			return false;
-		return node.isContainer();
-	}
-
-	/**
-	 * 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.
-	 */
-	protected boolean isStartTagRequired(IDOMNode node) {
-		if (node == null)
-			return false;
-		return node.isContainer();
-	}
-
-	protected boolean isXMLType(IDOMModel structuredModel) {
-		boolean result = false;
-
-		if (structuredModel != null && structuredModel != null) {
-			IDOMDocument document = structuredModel.getDocument();
-
-			if (document != null)
-				result = document.isXMLType();
-		}
-
-		return result;
-	}
-
-	protected IDOMNode quoteAttrValue(IDOMNode node) {
-		IDOMElement element = (IDOMElement) node;
-		if (element.isCommentTag())
-			return node; // do nothing
-
-		boolean quoteAttrValues = getCleanupPreferences().getQuoteAttrValues();
-		IDOMNode newNode = node;
-
-		if (quoteAttrValues) {
-			NamedNodeMap attributes = newNode.getAttributes();
-			int attributesLength = attributes.getLength();
-			ISourceGenerator generator = node.getModel().getGenerator();
-
-			for (int i = 0; i < attributesLength; i++) {
-				attributes = newNode.getAttributes();
-				attributesLength = attributes.getLength();
-				IDOMAttr eachAttr = (IDOMAttr) attributes.item(i);
-				//ITextRegion oldAttrValueRegion = eachAttr.getValueRegion();
-				String oldAttrValue = eachAttr.getValueRegionText();
-				if (oldAttrValue == null) {
-					IDOMModel structuredModel = node.getModel();
-					if (isXMLType(structuredModel)) {
-						// TODO: Kit, please check. Is there any way to not rely on getting regions from attributes?
-						String newAttrValue = "=\"" + eachAttr.getNameRegionText() + "\""; //$NON-NLS-1$ //$NON-NLS-2$
-
-						IStructuredDocument structuredDocument = structuredModel.getStructuredDocument();
-						replaceSource(structuredModel, structuredDocument, eachAttr.getNameRegionEndOffset(), 0, newAttrValue);
-						newNode = (IDOMNode) structuredModel.getIndexedRegion(node.getStartOffset()); // save new node
-					}
-				}
-				else {
-
-					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();
-
-							IDOMModel structuredModel = node.getModel();
-							IStructuredDocument structuredDocument = structuredModel.getStructuredDocument();
-							replaceSource(structuredModel, structuredDocument, attrValueStartOffset, attrValueLength, newAttrValue);
-							newNode = (IDOMNode) structuredModel.getIndexedRegion(startTagStartOffset); // save new node
-						}
-					}
-				}
-			}
-		}
-
-		return newNode;
-	}
-
-	private IDOMNode insertRequiredAttrs(IDOMNode node) {
-		boolean insertRequiredAttrs = getCleanupPreferences().getInsertRequiredAttrs();
-		IDOMNode 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() == DOMRegionContext.XML_TAG_CLOSE) {
-						index--;
-						lastRegion = startStructuredDocumentRegion.getRegionAtCharacterOffset(index - 1);
-					}
-					else if (lastRegion.getType() == DOMRegionContext.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;
-	}
-
-
-	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;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/cleanup/HTMLCleanupHandlerFactory.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/cleanup/HTMLCleanupHandlerFactory.java
deleted file mode 100644
index 21ea68f..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/cleanup/HTMLCleanupHandlerFactory.java
+++ /dev/null
@@ -1,147 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this 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.core.internal.cleanup;
-
-
-
-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.provisional.text.IStructuredDocumentRegion;
-import org.eclipse.wst.xml.core.internal.provisional.document.IDOMNode;
-import org.eclipse.wst.xml.core.internal.regions.DOMRegionContext;
-import org.w3c.dom.Node;
-
-// nakamori_TODO: check and remove CSS formatting
-
-class HTMLCleanupHandlerFactory {
-
-
-
-	private static HTMLCleanupHandlerFactory fInstance = null;
-
-	static synchronized HTMLCleanupHandlerFactory getInstance() {
-		if (fInstance == null) {
-			fInstance = new HTMLCleanupHandlerFactory();
-		}
-		return fInstance;
-	}
-
-	private HTMLCleanupHandlerFactory() {
-		super();
-	}
-
-	IStructuredCleanupHandler createHandler(Node node, IStructuredCleanupPreferences cleanupPreferences) {
-		short nodeType = node.getNodeType();
-		IStructuredCleanupHandler handler = null;
-		switch (nodeType) {
-			case Node.ELEMENT_NODE : {
-				if (isJSPTag(node))
-					handler = new JSPElementNodeCleanupHandler();
-				else
-					handler = new ElementNodeCleanupHandler();
-				break;
-			}
-			case Node.TEXT_NODE : {
-				if (isParentStyleTag(node))
-					handler = new CSSTextNodeCleanupHandler();
-				else
-					handler = new NodeCleanupHandler();
-				break;
-			}
-			default : {
-				handler = new NodeCleanupHandler();
-			}
-		}
-
-		handler.setCleanupPreferences(cleanupPreferences);
-
-		return handler;
-	}
-
-	/**
-	 * 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 IDOMNode) {
-			IStructuredDocumentRegion flatNode = ((IDOMNode) 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;
-	}
-
-	private boolean isParentStyleTag(Node node) {
-		if (node == null)
-			return false;
-		if (node.getNodeType() != Node.TEXT_NODE)
-			return false;
-		if (!(node instanceof IDOMNode))
-			return false;
-		IStructuredDocumentRegion flatNode = ((IDOMNode) node).getFirstStructuredDocumentRegion();
-		if (flatNode == null)
-			return false;
-		if (flatNode.getType() != DOMRegionContext.BLOCK_TEXT)
-			return false;
-
-		// check if the parent is STYLE element
-		Node parent = node.getParentNode();
-		if (parent == null)
-			return false;
-		if (parent.getNodeType() != Node.ELEMENT_NODE)
-			return false;
-		String name = parent.getNodeName();
-		if (name == null)
-			return false;
-		if (!name.equalsIgnoreCase("STYLE"))//$NON-NLS-1$
-			return false;
-		return true;
-	}
-
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/cleanup/HTMLCleanupProcessorImpl.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/cleanup/HTMLCleanupProcessorImpl.java
deleted file mode 100644
index 61dc1e3..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/cleanup/HTMLCleanupProcessorImpl.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.wst.html.core.internal.cleanup;
-
-import org.eclipse.core.runtime.Preferences;
-import org.eclipse.wst.html.core.internal.HTMLCorePlugin;
-import org.eclipse.wst.html.core.internal.format.HTMLFormatProcessorImpl;
-import org.eclipse.wst.html.core.internal.provisional.contenttype.ContentTypeIdForHTML;
-import org.eclipse.wst.sse.core.internal.cleanup.IStructuredCleanupHandler;
-import org.eclipse.wst.sse.core.internal.format.IStructuredFormatProcessor;
-import org.eclipse.wst.xml.core.internal.cleanup.CleanupProcessorXML;
-import org.w3c.dom.Node;
-
-public class HTMLCleanupProcessorImpl extends CleanupProcessorXML {
-
-	protected String getContentType() {
-		return ContentTypeIdForHTML.ContentTypeID_HTML;
-	}
-
-	protected IStructuredCleanupHandler getCleanupHandler(Node node) {
-		return HTMLCleanupHandlerFactory.getInstance().createHandler(node, getCleanupPreferences());
-	}
-
-	protected IStructuredFormatProcessor getFormatProcessor() {
-		return new HTMLFormatProcessorImpl();
-	}
-
-	protected Preferences getModelPreferences() {
-		return HTMLCorePlugin.getDefault().getPluginPreferences();
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/cleanup/JSPElementNodeCleanupHandler.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/cleanup/JSPElementNodeCleanupHandler.java
deleted file mode 100644
index 4b0a783..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/cleanup/JSPElementNodeCleanupHandler.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.core.internal.cleanup;
-
-
-
-import org.w3c.dom.Node;
-
-public class JSPElementNodeCleanupHandler extends AbstractNodeCleanupHandler {
-
-	public Node cleanup(Node node) {
-		return node;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/cleanup/NodeCleanupHandler.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/cleanup/NodeCleanupHandler.java
deleted file mode 100644
index 9bb6109..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/cleanup/NodeCleanupHandler.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.core.internal.cleanup;
-
-
-
-import org.w3c.dom.Node;
-
-public class NodeCleanupHandler extends AbstractNodeCleanupHandler {
-
-	public Node cleanup(Node node) {
-		return node;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/commentelement/handlers/CommentElementHandlerForSSI.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/commentelement/handlers/CommentElementHandlerForSSI.java
deleted file mode 100644
index ac88325..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/commentelement/handlers/CommentElementHandlerForSSI.java
+++ /dev/null
@@ -1,150 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this 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.core.internal.commentelement.handlers;
-
-
-
-import org.eclipse.wst.xml.core.internal.commentelement.CommentElementHandler;
-import org.eclipse.wst.xml.core.internal.commentelement.util.CommentElementFactory;
-import org.eclipse.wst.xml.core.internal.commentelement.util.TagScanner;
-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.modelquery.ModelQuery;
-import org.eclipse.wst.xml.core.internal.modelquery.ModelQueryUtil;
-import org.eclipse.wst.xml.core.internal.provisional.document.IDOMElement;
-import org.eclipse.wst.xml.core.internal.provisional.document.ISourceGenerator;
-import org.w3c.dom.Attr;
-import org.w3c.dom.Document;
-import org.w3c.dom.Element;
-import org.w3c.dom.NamedNodeMap;
-
-public class CommentElementHandlerForSSI implements CommentElementHandler {
-
-	public Element createElement(Document document, String data, boolean isJSPTag) {
-		ModelQuery modelQuery = ModelQueryUtil.getModelQuery(document);
-		if (modelQuery == null) {
-			return null;
-		}
-		CMDocument cm = modelQuery.getCorrespondingCMDocument(document);
-		if (cm == null) {
-			return null;
-		}
-		CMNamedNodeMap map = cm.getElements();
-		if (map == null) {
-			return null;
-		}
-
-		TagScanner scanner = new TagScanner(data, 1);
-		String name = scanner.nextName();
-		if (name == null) {
-			return null;
-		}
-		StringBuffer buffer = new StringBuffer(name.length() + 4);
-		buffer.append(SSI_PREFIX);
-		buffer.append(':');
-		buffer.append(name);
-		String tagName = buffer.toString();
-		// check if valid (defined) SSI tag or not
-		if (map.getNamedItem(tagName) == null) {
-			return null;
-		}
-
-		CommentElementFactory factory = new CommentElementFactory(document, isJSPTag, this);
-		Element element = factory.create(tagName, 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)
-					attr.setValue(attrValue);
-				element.setAttributeNode(attr);
-			}
-			attrName = scanner.nextName();
-		}
-		return element;
-	}
-
-	public String generateStartTagContent(IDOMElement element) {
-		ISourceGenerator generator = element.getModel().getGenerator();
-		StringBuffer buffer = new StringBuffer();
-
-		buffer.append('#');
-		buffer.append(element.getLocalName());
-
-		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);
-			}
-		}
-
-		return buffer.toString();
-	}
-
-	public String generateEndTagContent(IDOMElement element) {
-		return null; // always empty
-	}
-
-	public boolean isEmpty() {
-		return true;
-	}
-
-	public boolean isCommentElement(IDOMElement element) {
-		if (element == null) {
-			return false;
-		}
-		Document document = element.getOwnerDocument();
-		ModelQuery modelQuery = ModelQueryUtil.getModelQuery(document);
-		if (modelQuery == null) {
-			return false;
-		}
-		CMDocument cm = modelQuery.getCorrespondingCMDocument(document);
-		if (cm == null) {
-			return false;
-		}
-		CMNamedNodeMap map = cm.getElements();
-		if (map == null) {
-			return false;
-		}
-		String prefix = element.getPrefix();
-		if (prefix == null || !prefix.equals(SSI_PREFIX)) {
-			return false;
-		}
-		String tagName = element.getTagName();
-		if (tagName.length() <= 4) {
-			return false;
-		}
-		if (map.getNamedItem(tagName) == null) {
-			return false;
-		}
-		else {
-			return true;
-		}
-	}
-
-	private static final String SSI_PREFIX = "ssi";//$NON-NLS-1$
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/AttributeCollection.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/AttributeCollection.java
deleted file mode 100644
index 53d29b9..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/AttributeCollection.java
+++ /dev/null
@@ -1,1283 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this 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.core.internal.contentmodel;
-
-
-
-import java.util.Arrays;
-import java.util.Iterator;
-
-import org.eclipse.wst.html.core.internal.provisional.HTML40Namespace;
-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.CMNode;
-
-/**
- * Factory for attribute declarations.
- */
-final class AttributeCollection extends CMNamedNodeMapImpl implements HTML40Namespace {
-
-	/** bodycolors. */
-	private static final String[] BODYCOLORS = {ATTR_NAME_BGCOLOR, ATTR_NAME_TEXT, ATTR_NAME_LINK, ATTR_NAME_VLINK, HTML40Namespace.ATTR_NAME_ALINK};
-	/** coreattrs. */
-	private static final String[] CORE = {ATTR_NAME_ID, ATTR_NAME_CLASS, ATTR_NAME_STYLE, ATTR_NAME_TITLE};
-	/** events. */
-	private static final String[] EVENTS = {ATTR_NAME_ONCLICK, ATTR_NAME_ONDBLCLICK, ATTR_NAME_ONMOUSEDOWN, ATTR_NAME_ONMOUSEUP, ATTR_NAME_ONMOUSEOVER, ATTR_NAME_ONMOUSEMOVE, ATTR_NAME_ONMOUSEOUT, ATTR_NAME_ONKEYPRESS, ATTR_NAME_ONKEYDOWN, ATTR_NAME_ONKEYUP, ATTR_NAME_ONHELP};
-	/** i18n. lang, dir */
-	private static final String[] I18N = {ATTR_NAME_LANG, ATTR_NAME_DIR};
-	/** cellhaligh. */
-	private static final String[] CELLHALIGN = {ATTR_NAME_CHAR, ATTR_NAME_CHAROFF};
-
-	/**
-	 * constructor.
-	 */
-	public AttributeCollection() {
-		super();
-	}
-
-	/**
-	 * Create an attribute declaration.
-
-	 * @param attrName java.lang.String
-	 */
-	private HTMLAttrDeclImpl create(String attrName) {
-		HTMLAttrDeclImpl attr = null;
-		HTMLCMDataTypeImpl atype = null;
-
-		if (attrName.equalsIgnoreCase(ATTR_NAME_ABBR)) {
-			// (abbr %Text; #IMPLIED)
-			atype = new HTMLCMDataTypeImpl(HTMLCMDataType.TEXT);
-			attr = new HTMLAttrDeclImpl(ATTR_NAME_ABBR, atype, CMAttributeDeclaration.OPTIONAL);
-
-		}
-		else if (attrName.equalsIgnoreCase(ATTR_NAME_ACCEPT)) {
-			// (accept %ContentTypes; #IMPLIED)
-			atype = new HTMLCMDataTypeImpl(HTMLCMDataType.CONTENT_TYPE);
-			attr = new HTMLAttrDeclImpl(ATTR_NAME_ACCEPT, atype, CMAttributeDeclaration.OPTIONAL);
-
-		}
-		else if (attrName.equalsIgnoreCase(ATTR_NAME_ACCEPT_CHARSET)) {
-			// (accept-charset %Charsets;; #IMPLIED)
-			atype = new HTMLCMDataTypeImpl(HTMLCMDataType.CHARSETS);
-			attr = new HTMLAttrDeclImpl(ATTR_NAME_ACCEPT_CHARSET, atype, CMAttributeDeclaration.OPTIONAL);
-
-		}
-		else if (attrName.equalsIgnoreCase(ATTR_NAME_ACTION)) {
-			// (action %URI #REQUIRED)
-			atype = new HTMLCMDataTypeImpl(CMDataType.URI);
-			attr = new HTMLAttrDeclImpl(ATTR_NAME_ACTION, atype, CMAttributeDeclaration.REQUIRED);
-
-		}
-		else if (attrName.equalsIgnoreCase(ATTR_NAME_ARCHIVE)) {
-			// (archive CDATA #IMPLIED)
-			atype = new HTMLCMDataTypeImpl(CMDataType.CDATA);
-			attr = new HTMLAttrDeclImpl(ATTR_NAME_ARCHIVE, atype, CMAttributeDeclaration.OPTIONAL);
-
-		}
-		else if (attrName.equalsIgnoreCase(ATTR_NAME_ACCESSKEY)) {
-			// (accesskey %Character; #IMPLIED)
-			atype = new HTMLCMDataTypeImpl(HTMLCMDataType.CHARACTER);
-			attr = new HTMLAttrDeclImpl(ATTR_NAME_ACCESSKEY, atype, CMAttributeDeclaration.OPTIONAL);
-
-		}
-		else if (attrName.equalsIgnoreCase(ATTR_NAME_ALINK)) {
-			// (alink %Color; #IMPLIED)
-			atype = new HTMLCMDataTypeImpl(HTMLCMDataType.COLOR);
-			attr = new HTMLAttrDeclImpl(ATTR_NAME_ALINK, atype, CMAttributeDeclaration.OPTIONAL);
-
-		}
-		else if (attrName.equalsIgnoreCase(ATTR_NAME_ALT)) {
-			// (alt %Text; #REQUIRED)
-			atype = new HTMLCMDataTypeImpl(HTMLCMDataType.TEXT);
-			attr = new HTMLAttrDeclImpl(ATTR_NAME_ALT, atype, CMAttributeDeclaration.REQUIRED);
-
-		}
-		else if (attrName.equalsIgnoreCase(ATTR_NAME_AUTOSTART)) {
-			// (autostart (true|false) #IMPLIED)
-			atype = new HTMLCMDataTypeImpl(CMDataType.ENUM);
-			String[] values = {ATTR_VALUE_TRUE, ATTR_VALUE_FALSE};
-			atype.setEnumValues(values);
-			attr = new HTMLAttrDeclImpl(ATTR_NAME_AUTOSTART, atype, CMAttributeDeclaration.OPTIONAL);
-
-		}
-		else if (attrName.equalsIgnoreCase(ATTR_NAME_AUTOPLAY)) {
-			// (autoplay (true|false) #IMPLIED)
-			atype = new HTMLCMDataTypeImpl(CMDataType.ENUM);
-			String[] values = {ATTR_VALUE_TRUE, ATTR_VALUE_FALSE};
-			atype.setEnumValues(values);
-			attr = new HTMLAttrDeclImpl(ATTR_NAME_AUTOPLAY, atype, CMAttributeDeclaration.OPTIONAL);
-
-		}
-		else if (attrName.equalsIgnoreCase(ATTR_NAME_AUTOSIZE)) {
-			// (autosize (true|false) #IMPLIED)
-			atype = new HTMLCMDataTypeImpl(CMDataType.ENUM);
-			String[] values = {ATTR_VALUE_TRUE, ATTR_VALUE_FALSE};
-			atype.setEnumValues(values);
-			attr = new HTMLAttrDeclImpl(ATTR_NAME_AUTOSIZE, atype, CMAttributeDeclaration.OPTIONAL);
-
-		}
-		else if (attrName.equalsIgnoreCase(ATTR_NAME_AXIS)) {
-			// (axis CDATA #IMPLIED)
-			atype = new HTMLCMDataTypeImpl(CMDataType.CDATA);
-			attr = new HTMLAttrDeclImpl(ATTR_NAME_AXIS, atype, CMAttributeDeclaration.OPTIONAL);
-
-		}
-		else if (attrName.equalsIgnoreCase(ATTR_NAME_BACKGROUND)) {
-			// (background %URI; #IMPLIED)
-			atype = new HTMLCMDataTypeImpl(CMDataType.URI);
-			attr = new HTMLAttrDeclImpl(ATTR_NAME_BACKGROUND, atype, CMAttributeDeclaration.OPTIONAL);
-
-		}
-		else if (attrName.equalsIgnoreCase(ATTR_NAME_BEHAVIOR)) {
-			// (behavior (scroll|slide|alternate) scroll)
-			atype = new HTMLCMDataTypeImpl(CMDataType.ENUM);
-			String[] values = {ATTR_VALUE_SCROLL, ATTR_VALUE_SLIDE, ATTR_VALUE_ALTERNATE};
-			atype.setEnumValues(values);
-			atype.setImpliedValue(CMDataType.IMPLIED_VALUE_DEFAULT, ATTR_VALUE_SCROLL);
-			attr = new HTMLAttrDeclImpl(ATTR_NAME_BEHAVIOR, atype, CMAttributeDeclaration.OPTIONAL);
-
-		}
-		else if (attrName.equalsIgnoreCase(ATTR_NAME_BGCOLOR)) {
-			// (bgcolor %Color; #IMPLIED)
-			atype = new HTMLCMDataTypeImpl(HTMLCMDataType.COLOR);
-			attr = new HTMLAttrDeclImpl(ATTR_NAME_BGCOLOR, atype, CMAttributeDeclaration.OPTIONAL);
-
-		}
-		else if (attrName.equalsIgnoreCase(ATTR_NAME_BORDER)) {
-			// (border %Pixels; #IMPLIED)
-			atype = new HTMLCMDataTypeImpl(HTMLCMDataType.PIXELS);
-			attr = new HTMLAttrDeclImpl(ATTR_NAME_BORDER, atype, CMAttributeDeclaration.OPTIONAL);
-
-		}
-		else if (attrName.equalsIgnoreCase(ATTR_NAME_CELLSPACING)) {
-			// (cellspacing %Length; #IMPLIED)
-			atype = new HTMLCMDataTypeImpl(HTMLCMDataType.LENGTH);
-			attr = new HTMLAttrDeclImpl(ATTR_NAME_CELLSPACING, atype, CMAttributeDeclaration.OPTIONAL);
-
-		}
-		else if (attrName.equalsIgnoreCase(ATTR_NAME_CELLPADDING)) {
-			// (cellpadding %Length; #IMPLIED)
-			atype = new HTMLCMDataTypeImpl(HTMLCMDataType.LENGTH);
-			attr = new HTMLAttrDeclImpl(ATTR_NAME_CELLPADDING, atype, CMAttributeDeclaration.OPTIONAL);
-
-		}
-		else if (attrName.equalsIgnoreCase(ATTR_NAME_CGI)) {
-			// (cgi %URI; #IMPLIED)
-			atype = new HTMLCMDataTypeImpl(CMDataType.URI);
-			attr = new HTMLAttrDeclImpl(ATTR_NAME_CGI, atype, CMAttributeDeclaration.OPTIONAL);
-
-		}
-		else if (attrName.equalsIgnoreCase(ATTR_NAME_CHAR)) {
-			// (char %Character; #IMPLIED)
-			atype = new HTMLCMDataTypeImpl(HTMLCMDataType.CHARACTER);
-			attr = new HTMLAttrDeclImpl(ATTR_NAME_CHAR, atype, CMAttributeDeclaration.OPTIONAL);
-
-		}
-		else if (attrName.equalsIgnoreCase(ATTR_NAME_CHAROFF)) {
-			// (charoff %Length; #IMPLIED)
-			atype = new HTMLCMDataTypeImpl(HTMLCMDataType.LENGTH);
-			attr = new HTMLAttrDeclImpl(ATTR_NAME_CHAROFF, atype, CMAttributeDeclaration.OPTIONAL);
-
-		}
-		else if (attrName.equalsIgnoreCase(ATTR_NAME_CHARSET)) {
-			// (charset %Charset; #IMPLIED)
-			atype = new HTMLCMDataTypeImpl(HTMLCMDataType.CHARSET);
-			attr = new HTMLAttrDeclImpl(ATTR_NAME_CHARSET, atype, CMAttributeDeclaration.OPTIONAL);
-
-		}
-		else if (attrName.equalsIgnoreCase(ATTR_NAME_CITE)) {
-			// (cite %URI; #IMPLIED)
-			atype = new HTMLCMDataTypeImpl(CMDataType.URI);
-			attr = new HTMLAttrDeclImpl(ATTR_NAME_CITE, atype, CMAttributeDeclaration.OPTIONAL);
-
-		}
-		else if (attrName.equalsIgnoreCase(ATTR_NAME_CLASS)) {
-			// (class CDATA #IMPLIED)
-			atype = new HTMLCMDataTypeImpl(CMDataType.CDATA);
-			attr = new HTMLAttrDeclImpl(ATTR_NAME_CLASS, atype, CMAttributeDeclaration.OPTIONAL);
-
-		}
-		else if (attrName.equalsIgnoreCase(ATTR_NAME_CLASSID)) {
-			// (classid %URI #IMPLIED)
-			atype = new HTMLCMDataTypeImpl(CMDataType.URI);
-			attr = new HTMLAttrDeclImpl(ATTR_NAME_CLASSID, atype, CMAttributeDeclaration.OPTIONAL);
-
-		}
-		else if (attrName.equalsIgnoreCase(ATTR_NAME_CMD)) {
-			// (cmd CDATA #IMPLIED)
-			atype = new HTMLCMDataTypeImpl(CMDataType.CDATA);
-			attr = new HTMLAttrDeclImpl(ATTR_NAME_CMD, atype, CMAttributeDeclaration.OPTIONAL);
-
-		}
-		else if (attrName.equalsIgnoreCase(ATTR_NAME_CHECKED)) {
-			// (checked (checked) #IMPLIED)
-			atype = new HTMLCMDataTypeImpl(CMDataType.ENUM);
-			String[] values = {ATTR_NAME_CHECKED};
-			atype.setEnumValues(values);
-			attr = new HTMLAttrDeclImpl(ATTR_NAME_CHECKED, atype, CMAttributeDeclaration.OPTIONAL);
-
-		}
-		else if (attrName.equalsIgnoreCase(ATTR_NAME_CLEAR)) {
-			// (clear (left | all | right | none) none)
-			atype = new HTMLCMDataTypeImpl(CMDataType.ENUM);
-			String[] values = {ATTR_VALUE_LEFT, ATTR_VALUE_ALL, ATTR_VALUE_RIGHT, ATTR_VALUE_NONE};
-			atype.setEnumValues(values);
-			atype.setImpliedValue(CMDataType.IMPLIED_VALUE_DEFAULT, ATTR_VALUE_NONE);
-
-			attr = new HTMLAttrDeclImpl(ATTR_NAME_CLEAR, atype, CMAttributeDeclaration.OPTIONAL);
-
-		}
-		else if (attrName.equalsIgnoreCase(ATTR_NAME_CODE)) {
-			// (code CDATA #IMPLIED)
-			atype = new HTMLCMDataTypeImpl(CMDataType.CDATA);
-			attr = new HTMLAttrDeclImpl(ATTR_NAME_CODE, atype, CMAttributeDeclaration.OPTIONAL);
-
-		}
-		else if (attrName.equalsIgnoreCase(ATTR_NAME_CODEBASE)) {
-			// (codebase %URI; #IMPLIED)
-			atype = new HTMLCMDataTypeImpl(CMDataType.URI);
-			attr = new HTMLAttrDeclImpl(ATTR_NAME_CODEBASE, atype, CMAttributeDeclaration.OPTIONAL);
-
-		}
-		else if (attrName.equalsIgnoreCase(ATTR_NAME_CODETYPE)) {
-			// (codetype %CotentType; #IMPLIED)
-			atype = new HTMLCMDataTypeImpl(HTMLCMDataType.CONTENT_TYPE);
-			attr = new HTMLAttrDeclImpl(ATTR_NAME_CODETYPE, atype, CMAttributeDeclaration.OPTIONAL);
-
-		}
-		else if (attrName.equalsIgnoreCase(ATTR_NAME_COLOR)) {
-			// (color %Color; #IMPLIED)
-			atype = new HTMLCMDataTypeImpl(HTMLCMDataType.COLOR);
-			attr = new HTMLAttrDeclImpl(ATTR_NAME_COLOR, atype, CMAttributeDeclaration.OPTIONAL);
-
-		}
-		else if (attrName.equalsIgnoreCase(ATTR_NAME_COMPACT)) {
-			// (compact (compact) #IMPLIED)
-			atype = new HTMLCMDataTypeImpl(CMDataType.ENUM);
-			String[] values = {ATTR_NAME_COMPACT};
-			atype.setEnumValues(values);
-			attr = new HTMLAttrDeclImpl(ATTR_NAME_COMPACT, atype, CMAttributeDeclaration.OPTIONAL);
-
-		}
-		else if (attrName.equalsIgnoreCase(ATTR_NAME_COLS)) {
-			// (cols NUMBER #REQUIRED)
-			atype = new HTMLCMDataTypeImpl(CMDataType.NUMBER);
-			attr = new HTMLAttrDeclImpl(ATTR_NAME_COLS, atype, CMAttributeDeclaration.REQUIRED);
-
-		}
-		else if (attrName.equalsIgnoreCase(ATTR_NAME_COLSPAN)) {
-			// (colspan NUMBER 1)
-			atype = new HTMLCMDataTypeImpl(CMDataType.NUMBER);
-			atype.setImpliedValue(CMDataType.IMPLIED_VALUE_DEFAULT, ATTR_VALUE_1);
-			attr = new HTMLAttrDeclImpl(ATTR_NAME_COLSPAN, atype, CMAttributeDeclaration.OPTIONAL);
-
-		}
-		else if (attrName.equalsIgnoreCase(ATTR_NAME_CONTENT)) {
-			// (content CDATA #REQUIRED)
-			atype = new HTMLCMDataTypeImpl(CMDataType.CDATA);
-			attr = new HTMLAttrDeclImpl(ATTR_NAME_CONTENT, atype, CMAttributeDeclaration.REQUIRED);
-
-		}
-		else if (attrName.equalsIgnoreCase(ATTR_NAME_CONTROLLER)) {
-			// (controller (true|false) true)
-			atype = new HTMLCMDataTypeImpl(CMDataType.ENUM);
-			String[] values = {ATTR_VALUE_TRUE, ATTR_VALUE_FALSE};
-			atype.setEnumValues(values);
-			atype.setImpliedValue(CMDataType.IMPLIED_VALUE_DEFAULT, ATTR_VALUE_TRUE);
-			attr = new HTMLAttrDeclImpl(ATTR_NAME_CONTROLLER, atype, CMAttributeDeclaration.OPTIONAL);
-
-		}
-		else if (attrName.equalsIgnoreCase(ATTR_NAME_COORDS)) {
-			// (coords %Coords; #IMPLIED)
-			atype = new HTMLCMDataTypeImpl(HTMLCMDataType.COORDS);
-			attr = new HTMLAttrDeclImpl(ATTR_NAME_COORDS, atype, CMAttributeDeclaration.OPTIONAL);
-
-		}
-		else if (attrName.equalsIgnoreCase(ATTR_NAME_DATA)) {
-			// (data %URI; #IMPLIED)
-			atype = new HTMLCMDataTypeImpl(CMDataType.URI);
-			attr = new HTMLAttrDeclImpl(ATTR_NAME_DATA, atype, CMAttributeDeclaration.OPTIONAL);
-
-		}
-		else if (attrName.equalsIgnoreCase(ATTR_NAME_DATETIME)) {
-			// (datetime %Datetime; #IMPLIED)
-			atype = new HTMLCMDataTypeImpl(HTMLCMDataType.DATETIME);
-			attr = new HTMLAttrDeclImpl(ATTR_NAME_DATETIME, atype, CMAttributeDeclaration.OPTIONAL);
-
-		}
-		else if (attrName.equalsIgnoreCase(ATTR_NAME_DATAPAGESIZE)) {
-			// (datapagesize CDATA #IMPLIED)
-			atype = new HTMLCMDataTypeImpl(CMDataType.CDATA);
-			attr = new HTMLAttrDeclImpl(ATTR_NAME_DATAPAGESIZE, atype, CMAttributeDeclaration.OPTIONAL);
-
-		}
-		else if (attrName.equalsIgnoreCase(ATTR_NAME_DECLARE)) {
-			// (declare (declare) #IMPLIED)
-			atype = new HTMLCMDataTypeImpl(CMDataType.ENUM);
-			String[] values = {ATTR_NAME_DECLARE};
-			atype.setEnumValues(values);
-			attr = new HTMLAttrDeclImpl(ATTR_NAME_DECLARE, atype, CMAttributeDeclaration.OPTIONAL);
-
-		}
-		else if (attrName.equalsIgnoreCase(ATTR_NAME_DEFER)) {
-			// (defer (defer) #IMPLIED)
-			atype = new HTMLCMDataTypeImpl(CMDataType.ENUM);
-			String[] values = {ATTR_NAME_DEFER};
-			atype.setEnumValues(values);
-			attr = new HTMLAttrDeclImpl(ATTR_NAME_DEFER, atype, CMAttributeDeclaration.OPTIONAL);
-
-		}
-		else if (attrName.equalsIgnoreCase(ATTR_NAME_DIR)) {
-			// (dir (ltr|rtl) #IMPLIED)
-			atype = new HTMLCMDataTypeImpl(CMDataType.ENUM);
-			String[] values = {ATTR_VALUE_LTR, ATTR_VALUE_RTL};
-			atype.setEnumValues(values);
-			attr = new HTMLAttrDeclImpl(ATTR_NAME_DIR, atype, CMAttributeDeclaration.OPTIONAL);
-
-		}
-		else if (attrName.equalsIgnoreCase(ATTR_NAME_DIRECTION)) {
-			// (direction (left|right|up|down) left)
-			atype = new HTMLCMDataTypeImpl(CMDataType.ENUM);
-			String[] values = {ATTR_VALUE_LEFT, ATTR_VALUE_RIGHT, ATTR_VALUE_UP, ATTR_VALUE_DOWN};
-			atype.setEnumValues(values);
-			attr = new HTMLAttrDeclImpl(ATTR_NAME_DIRECTION, atype, CMAttributeDeclaration.OPTIONAL);
-
-		}
-		else if (attrName.equalsIgnoreCase(ATTR_NAME_DIRECTKEY)) {
-			// (directkey %Character; #IMPLIED)
-			atype = new HTMLCMDataTypeImpl(HTMLCMDataType.CHARACTER);
-			attr = new HTMLAttrDeclImpl(ATTR_NAME_DIRECTKEY, atype, CMAttributeDeclaration.OPTIONAL);
-
-		}
-		else if (attrName.equalsIgnoreCase(ATTR_NAME_DISABLED)) {
-			// (disabled (disabled) #IMPLIED)
-			atype = new HTMLCMDataTypeImpl(CMDataType.ENUM);
-			// boolean attribute must have the same value as its name.
-			String[] values = {ATTR_NAME_DISABLED};
-			atype.setEnumValues(values);
-			attr = new HTMLAttrDeclImpl(ATTR_NAME_DISABLED, atype, CMAttributeDeclaration.OPTIONAL);
-
-		}
-		else if (attrName.equalsIgnoreCase(ATTR_NAME_ENCTYPE)) {
-			// (enctype %ContentType; "application/x-www-form-urlencoded")
-			atype = new HTMLCMDataTypeImpl(HTMLCMDataType.CONTENT_TYPE);
-			atype.setImpliedValue(CMDataType.IMPLIED_VALUE_DEFAULT, ATTR_VALUE_WWW_FORM_URLENCODED);
-			attr = new HTMLAttrDeclImpl(ATTR_NAME_ENCTYPE, atype, CMAttributeDeclaration.OPTIONAL);
-
-		}
-		else if (attrName.equalsIgnoreCase(ATTR_NAME_ERRMSG)) {
-			// (errmsg CDATA #IMPLIED)
-			atype = new HTMLCMDataTypeImpl(CMDataType.CDATA);
-			attr = new HTMLAttrDeclImpl(ATTR_NAME_ERRMSG, atype, CMAttributeDeclaration.OPTIONAL);
-
-		}
-		else if (attrName.equalsIgnoreCase(ATTR_NAME_EVENT)) {
-			// (event CDATA #IMPLIED)
-			atype = new HTMLCMDataTypeImpl(CMDataType.CDATA);
-			attr = new HTMLAttrDeclImpl(ATTR_NAME_EVENT, atype, CMAttributeDeclaration.OPTIONAL);
-
-		}
-		else if (attrName.equalsIgnoreCase(ATTR_NAME_FACE)) {
-			// (face CDATA #IMPLIED)
-			atype = new HTMLCMDataTypeImpl(CMDataType.CDATA);
-			attr = new HTMLAttrDeclImpl(ATTR_NAME_FACE, atype, CMAttributeDeclaration.OPTIONAL);
-
-		}
-		else if (attrName.equalsIgnoreCase(ATTR_NAME_FILE)) {
-			// (file %URI; #IMPLIED)
-			atype = new HTMLCMDataTypeImpl(CMDataType.URI);
-			attr = new HTMLAttrDeclImpl(ATTR_NAME_FILE, atype, CMAttributeDeclaration.OPTIONAL);
-
-		}
-		else if (attrName.equalsIgnoreCase(ATTR_NAME_FOR)) {
-			// (for %URI; #IMPLIED)
-			atype = new HTMLCMDataTypeImpl(CMDataType.URI);
-			attr = new HTMLAttrDeclImpl(ATTR_NAME_FOR, atype, CMAttributeDeclaration.OPTIONAL);
-
-		}
-		else if (attrName.equalsIgnoreCase(ATTR_NAME_FRAME)) {
-			// (frame %TFrame; #IMPLIED)
-			// %TFrame; is (void|above|below|hsides|lhs|rhs|vsides|box|border).
-			atype = new HTMLCMDataTypeImpl(CMDataType.ENUM);
-			String[] values = {ATTR_VALUE_VOID, ATTR_VALUE_ABOVE, ATTR_VALUE_BELOW, ATTR_VALUE_HSIDES, ATTR_VALUE_LHS, ATTR_VALUE_RHS, ATTR_VALUE_VSIDES, ATTR_VALUE_BOX, ATTR_VALUE_BORDER};
-			atype.setEnumValues(values);
-			attr = new HTMLAttrDeclImpl(ATTR_NAME_FRAME, atype, CMAttributeDeclaration.OPTIONAL);
-
-		}
-		else if (attrName.equalsIgnoreCase(ATTR_NAME_FRAMEBORDER)) {
-			// (frameborder (1|0) 1)
-			atype = new HTMLCMDataTypeImpl(CMDataType.ENUM);
-			String[] values = {ATTR_VALUE_1, ATTR_VALUE_0};
-			atype.setEnumValues(values);
-			atype.setImpliedValue(CMDataType.IMPLIED_VALUE_DEFAULT, ATTR_VALUE_1);
-			attr = new HTMLAttrDeclImpl(ATTR_NAME_FRAMEBORDER, atype, CMAttributeDeclaration.OPTIONAL);
-
-			//<<D215684
-		}
-		else if (attrName.equalsIgnoreCase(ATTR_NAME_FRAMESPACING)) {
-			// (framespacing CDATA; #IMPLIED)
-			atype = new HTMLCMDataTypeImpl(CMDataType.CDATA);
-			attr = new HTMLAttrDeclImpl(ATTR_NAME_FRAMESPACING, atype, CMAttributeDeclaration.OPTIONAL);
-			//D215684
-		}
-		else if (attrName.equalsIgnoreCase(ATTR_NAME_HEADERS)) {
-			// (HEADERS IDREFS; #IMPLIED)
-			atype = new HTMLCMDataTypeImpl(HTMLCMDataType.IDREFS);
-			attr = new HTMLAttrDeclImpl(ATTR_NAME_HEADERS, atype, CMAttributeDeclaration.OPTIONAL);
-
-		}
-		else if (attrName.equalsIgnoreCase(ATTR_NAME_HEIGHT)) {
-			// (height %Length; #IMPLIED)
-			atype = new HTMLCMDataTypeImpl(HTMLCMDataType.LENGTH);
-			attr = new HTMLAttrDeclImpl(ATTR_NAME_HEIGHT, atype, CMAttributeDeclaration.OPTIONAL);
-
-		}
-		else if (attrName.equalsIgnoreCase(ATTR_NAME_HIDDEN)) {
-			// (hidden CDATA #IMPLIED)
-			atype = new HTMLCMDataTypeImpl(CMDataType.CDATA);
-			attr = new HTMLAttrDeclImpl(ATTR_NAME_HIDDEN, atype, CMAttributeDeclaration.OPTIONAL);
-
-		}
-		else if (attrName.equalsIgnoreCase(ATTR_NAME_HREF)) {
-			// (href %URI; #IMPLIED)
-			atype = new HTMLCMDataTypeImpl(CMDataType.URI);
-			attr = new HTMLAttrDeclImpl(ATTR_NAME_HREF, atype, CMAttributeDeclaration.OPTIONAL);
-
-		}
-		else if (attrName.equalsIgnoreCase(ATTR_NAME_HREFLANG)) {
-			// (hreflang %LanguageCode; #IMPLIED)
-			atype = new HTMLCMDataTypeImpl(HTMLCMDataType.LANGUAGE_CODE);
-			attr = new HTMLAttrDeclImpl(ATTR_NAME_HREFLANG, atype, CMAttributeDeclaration.OPTIONAL);
-
-		}
-		else if (attrName.equalsIgnoreCase(ATTR_NAME_HSPACE)) {
-			// (hspace %Pixels; #IMPLIED)
-			atype = new HTMLCMDataTypeImpl(HTMLCMDataType.PIXELS);
-			attr = new HTMLAttrDeclImpl(ATTR_NAME_HSPACE, atype, CMAttributeDeclaration.OPTIONAL);
-
-		}
-		else if (attrName.equalsIgnoreCase(ATTR_NAME_HTTP_EQUIV)) {
-			// (http-equiv NAME #IMPLIED)
-			atype = new HTMLCMDataTypeImpl(HTMLCMDataType.NAME);
-			attr = new HTMLAttrDeclImpl(ATTR_NAME_HTTP_EQUIV, atype, CMAttributeDeclaration.OPTIONAL);
-
-		}
-		else if (attrName.equalsIgnoreCase(ATTR_NAME_ID)) {
-			// (id ID #IMPLIED)
-			atype = new HTMLCMDataTypeImpl(CMDataType.ID);
-			attr = new HTMLAttrDeclImpl(ATTR_NAME_ID, atype, CMAttributeDeclaration.OPTIONAL);
-
-		}
-		else if (attrName.equalsIgnoreCase(ATTR_NAME_ISMAP)) {
-			// (ismap (ismap) #IMPLIED)
-			atype = new HTMLCMDataTypeImpl(CMDataType.ENUM);
-			String[] values = {ATTR_NAME_ISMAP};
-			atype.setEnumValues(values);
-			attr = new HTMLAttrDeclImpl(ATTR_NAME_ISMAP, atype, CMAttributeDeclaration.OPTIONAL);
-
-		}
-		else if (attrName.equalsIgnoreCase(ATTR_NAME_ISTYLE)) {
-			// (istyle CDATA #IMPLIED)
-			atype = new HTMLCMDataTypeImpl(CMDataType.CDATA);
-			attr = new HTMLAttrDeclImpl(ATTR_NAME_ISTYLE, atype, CMAttributeDeclaration.OPTIONAL);
-
-		}
-		else if (attrName.equalsIgnoreCase(ATTR_NAME_LABEL)) {
-			// (label %Text; #IMPLIED)
-			atype = new HTMLCMDataTypeImpl(HTMLCMDataType.TEXT);
-			attr = new HTMLAttrDeclImpl(ATTR_NAME_LABEL, atype, CMAttributeDeclaration.OPTIONAL);
-
-		}
-		else if (attrName.equalsIgnoreCase(ATTR_NAME_LANG)) {
-			// (lang %LanguageCode; #IMPLIED)
-			atype = new HTMLCMDataTypeImpl(HTMLCMDataType.LANGUAGE_CODE);
-			attr = new HTMLAttrDeclImpl(ATTR_NAME_LANG, atype, CMAttributeDeclaration.OPTIONAL);
-
-		}
-		else if (attrName.equalsIgnoreCase(ATTR_NAME_LANGUAGE)) {
-			// (language %CDATA; #IMPLIED)
-			atype = new HTMLCMDataTypeImpl(CMDataType.CDATA);
-			attr = new HTMLAttrDeclImpl(ATTR_NAME_LANGUAGE, atype, CMAttributeDeclaration.OPTIONAL);
-
-		}
-		else if (attrName.equalsIgnoreCase(ATTR_NAME_LINK)) {
-			// (link %Color; #IMPLIED)
-			atype = new HTMLCMDataTypeImpl(HTMLCMDataType.COLOR);
-			attr = new HTMLAttrDeclImpl(ATTR_NAME_LINK, atype, CMAttributeDeclaration.OPTIONAL);
-
-		}
-		else if (attrName.equalsIgnoreCase(ATTR_NAME_LONGDESC)) {
-			// (longdesc %URI; #IMPLIED)
-			atype = new HTMLCMDataTypeImpl(CMDataType.URI);
-			attr = new HTMLAttrDeclImpl(ATTR_NAME_LONGDESC, atype, CMAttributeDeclaration.OPTIONAL);
-
-		}
-		else if (attrName.equalsIgnoreCase(ATTR_NAME_LOOP)) {
-			// (loop CDATA #IMPLIED)
-			atype = new HTMLCMDataTypeImpl(CMDataType.CDATA);
-			attr = new HTMLAttrDeclImpl(ATTR_NAME_LOOP, atype, CMAttributeDeclaration.OPTIONAL);
-
-		}
-		else if (attrName.equalsIgnoreCase(ATTR_NAME_MACRO)) {
-			// (macro CDATA #IMPLIED)
-			atype = new HTMLCMDataTypeImpl(CMDataType.CDATA);
-			attr = new HTMLAttrDeclImpl(ATTR_NAME_MACRO, atype, CMAttributeDeclaration.OPTIONAL);
-
-		}
-		else if (attrName.equalsIgnoreCase(ATTR_NAME_MAPFILE)) {
-			// (mapfile %URI; #IMPLIED)
-			atype = new HTMLCMDataTypeImpl(CMDataType.URI);
-			attr = new HTMLAttrDeclImpl(ATTR_NAME_MAPFILE, atype, CMAttributeDeclaration.OPTIONAL);
-
-		}
-		else if (attrName.equalsIgnoreCase(ATTR_NAME_MARGINWIDTH)) {
-			// (marginwidth %Pixels; #IMPLIED)
-			atype = new HTMLCMDataTypeImpl(HTMLCMDataType.PIXELS);
-			attr = new HTMLAttrDeclImpl(ATTR_NAME_MARGINWIDTH, atype, CMAttributeDeclaration.OPTIONAL);
-
-		}
-		else if (attrName.equalsIgnoreCase(ATTR_NAME_MARGINHEIGHT)) {
-			// (marginheight %Pixels; #IMPLIED)
-			atype = new HTMLCMDataTypeImpl(HTMLCMDataType.PIXELS);
-			attr = new HTMLAttrDeclImpl(ATTR_NAME_MARGINHEIGHT, atype, CMAttributeDeclaration.OPTIONAL);
-
-		}
-		else if (attrName.equalsIgnoreCase(ATTR_NAME_MAXLENGTH)) {
-			// (maxlength NUMBER #IMPLIED)
-			atype = new HTMLCMDataTypeImpl(CMDataType.NUMBER);
-			attr = new HTMLAttrDeclImpl(ATTR_NAME_MAXLENGTH, atype, CMAttributeDeclaration.OPTIONAL);
-
-		}
-		else if (attrName.equalsIgnoreCase(ATTR_NAME_MAYSCRIPT)) {
-			// (mayscript (mayscript) #IMPLIED)
-			atype = new HTMLCMDataTypeImpl(CMDataType.ENUM);
-			String[] values = {ATTR_NAME_MAYSCRIPT};
-			atype.setEnumValues(values);
-			attr = new HTMLAttrDeclImpl(ATTR_NAME_MAYSCRIPT, atype, CMAttributeDeclaration.OPTIONAL);
-
-		}
-		else if (attrName.equalsIgnoreCase(ATTR_NAME_MEDIA)) {
-			// (media %MediaDesc; #IMPLIED)
-			atype = new HTMLCMDataTypeImpl(HTMLCMDataType.MEDIA_DESC);
-			attr = new HTMLAttrDeclImpl(ATTR_NAME_MEDIA, atype, CMAttributeDeclaration.OPTIONAL);
-
-		}
-		else if (attrName.equalsIgnoreCase(ATTR_NAME_METHOD)) {
-			// (method (GET|POST) GET)
-			atype = new HTMLCMDataTypeImpl(CMDataType.ENUM);
-			String[] values = {ATTR_VALUE_GET, ATTR_VALUE_POST};
-			atype.setEnumValues(values);
-			atype.setImpliedValue(CMDataType.IMPLIED_VALUE_DEFAULT, ATTR_VALUE_GET);
-			attr = new HTMLAttrDeclImpl(ATTR_NAME_METHOD, atype, CMAttributeDeclaration.OPTIONAL);
-
-		}
-		else if (attrName.equalsIgnoreCase(ATTR_NAME_MULTIPLE)) {
-			// (multiple (multiple) #IMPLIED)
-			atype = new HTMLCMDataTypeImpl(CMDataType.ENUM);
-			String[] values = {ATTR_NAME_MULTIPLE};
-			atype.setEnumValues(values);
-			attr = new HTMLAttrDeclImpl(ATTR_NAME_MULTIPLE, atype, CMAttributeDeclaration.OPTIONAL);
-
-		}
-		else if (attrName.equalsIgnoreCase(ATTR_NAME_NAME)) {
-			// (name CDATA #IMPLIED)
-			atype = new HTMLCMDataTypeImpl(CMDataType.CDATA);
-			attr = new HTMLAttrDeclImpl(ATTR_NAME_NAME, atype, CMAttributeDeclaration.OPTIONAL);
-
-		}
-		else if (attrName.equalsIgnoreCase(ATTR_NAME_NOHREF)) {
-			// (nohref (nohref) #IMPLIED)
-			atype = new HTMLCMDataTypeImpl(CMDataType.ENUM);
-			String[] values = {ATTR_NAME_NOHREF};
-			atype.setEnumValues(values);
-			attr = new HTMLAttrDeclImpl(ATTR_NAME_NOHREF, atype, CMAttributeDeclaration.OPTIONAL);
-
-		}
-		else if (attrName.equalsIgnoreCase(ATTR_NAME_NORESIZE)) {
-			// (noresize (noresize) #IMPLIED)
-			atype = new HTMLCMDataTypeImpl(CMDataType.ENUM);
-			String[] values = {ATTR_NAME_NORESIZE};
-			atype.setEnumValues(values);
-			attr = new HTMLAttrDeclImpl(ATTR_NAME_NORESIZE, atype, CMAttributeDeclaration.OPTIONAL);
-
-		}
-		else if (attrName.equalsIgnoreCase(ATTR_NAME_NOSHADE)) {
-			// (noshade (noshade) #IMPLIED)
-			atype = new HTMLCMDataTypeImpl(CMDataType.ENUM);
-			String[] values = {ATTR_NAME_NOSHADE};
-			atype.setEnumValues(values);
-			attr = new HTMLAttrDeclImpl(ATTR_NAME_NOSHADE, atype, CMAttributeDeclaration.OPTIONAL);
-
-		}
-		else if (attrName.equalsIgnoreCase(ATTR_NAME_NOWRAP)) {
-			// (nowrap (nowrap) #IMPLIED)
-			atype = new HTMLCMDataTypeImpl(CMDataType.ENUM);
-			String[] values = {ATTR_NAME_NOWRAP};
-			atype.setEnumValues(values);
-			attr = new HTMLAttrDeclImpl(ATTR_NAME_NOWRAP, atype, CMAttributeDeclaration.OPTIONAL);
-
-		}
-		else if (attrName.equalsIgnoreCase(ATTR_NAME_OBJECT)) {
-			// (object CDATA #IMPLIED)
-			atype = new HTMLCMDataTypeImpl(CMDataType.ENUM);
-			String[] values = {ATTR_NAME_OBJECT};
-			atype.setEnumValues(values);
-			attr = new HTMLAttrDeclImpl(ATTR_NAME_OBJECT, atype, CMAttributeDeclaration.OPTIONAL);
-
-		}
-		else if (attrName.equalsIgnoreCase(ATTR_NAME_ONBLUR)) {
-			// (onblur %Script; #IMPLIED)
-			atype = new HTMLCMDataTypeImpl(HTMLCMDataType.SCRIPT);
-			attr = new HTMLAttrDeclImpl(ATTR_NAME_ONBLUR, atype, CMAttributeDeclaration.OPTIONAL);
-
-		}
-		else if (attrName.equalsIgnoreCase(ATTR_NAME_ONCLICK)) {
-			// (onclick %Script; #IMPLIED)
-			atype = new HTMLCMDataTypeImpl(HTMLCMDataType.SCRIPT);
-			attr = new HTMLAttrDeclImpl(ATTR_NAME_ONCLICK, atype, CMAttributeDeclaration.OPTIONAL);
-
-		}
-		else if (attrName.equalsIgnoreCase(ATTR_NAME_ONCHANGE)) {
-			// (onchange %Script; #IMPLIED)
-			atype = new HTMLCMDataTypeImpl(HTMLCMDataType.SCRIPT);
-			attr = new HTMLAttrDeclImpl(ATTR_NAME_ONCHANGE, atype, CMAttributeDeclaration.OPTIONAL);
-
-		}
-		else if (attrName.equalsIgnoreCase(ATTR_NAME_ONDBLCLICK)) {
-			// (ondblclick %Script; #IMPLIED)
-			atype = new HTMLCMDataTypeImpl(HTMLCMDataType.SCRIPT);
-			attr = new HTMLAttrDeclImpl(ATTR_NAME_ONDBLCLICK, atype, CMAttributeDeclaration.OPTIONAL);
-
-		}
-		else if (attrName.equalsIgnoreCase(ATTR_NAME_ONFOCUS)) {
-			//	(onfocus %Script; #IMPLIED)
-			atype = new HTMLCMDataTypeImpl(HTMLCMDataType.SCRIPT);
-			attr = new HTMLAttrDeclImpl(ATTR_NAME_ONFOCUS, atype, CMAttributeDeclaration.OPTIONAL);
-
-		}
-		else if (attrName.equalsIgnoreCase(ATTR_NAME_ONHELP)) {
-			// (onhelp %Script; #IMPLIED)
-			atype = new HTMLCMDataTypeImpl(HTMLCMDataType.SCRIPT);
-			attr = new HTMLAttrDeclImpl(ATTR_NAME_ONHELP, atype, CMAttributeDeclaration.OPTIONAL);
-
-		}
-		else if (attrName.equalsIgnoreCase(ATTR_NAME_ONKEYPRESS)) {
-			// (onkeypress %Script; #IMPLIED)
-			atype = new HTMLCMDataTypeImpl(HTMLCMDataType.SCRIPT);
-			attr = new HTMLAttrDeclImpl(ATTR_NAME_ONKEYPRESS, atype, CMAttributeDeclaration.OPTIONAL);
-
-		}
-		else if (attrName.equalsIgnoreCase(ATTR_NAME_ONKEYDOWN)) {
-			// (onkeydown %Script; #IMPLIED)
-			atype = new HTMLCMDataTypeImpl(HTMLCMDataType.SCRIPT);
-			attr = new HTMLAttrDeclImpl(ATTR_NAME_ONKEYDOWN, atype, CMAttributeDeclaration.OPTIONAL);
-
-		}
-		else if (attrName.equalsIgnoreCase(ATTR_NAME_ONKEYUP)) {
-			// (onkyeup %Script; #IMPLIED)
-			atype = new HTMLCMDataTypeImpl(HTMLCMDataType.SCRIPT);
-			attr = new HTMLAttrDeclImpl(ATTR_NAME_ONKEYUP, atype, CMAttributeDeclaration.OPTIONAL);
-
-		}
-		else if (attrName.equalsIgnoreCase(ATTR_NAME_ONLOAD)) {
-			// (onload %Script; #IMPLIED)
-			atype = new HTMLCMDataTypeImpl(HTMLCMDataType.SCRIPT);
-			attr = new HTMLAttrDeclImpl(ATTR_NAME_ONLOAD, atype, CMAttributeDeclaration.OPTIONAL);
-
-		}
-		else if (attrName.equalsIgnoreCase(ATTR_NAME_ONMOUSEDOWN)) {
-			// (onmousedown %Script; #IMPLIED)
-			atype = new HTMLCMDataTypeImpl(HTMLCMDataType.SCRIPT);
-			attr = new HTMLAttrDeclImpl(ATTR_NAME_ONMOUSEDOWN, atype, CMAttributeDeclaration.OPTIONAL);
-
-		}
-		else if (attrName.equalsIgnoreCase(ATTR_NAME_ONMOUSEUP)) {
-			// (onmouseup %Script; #IMPLIED)
-			atype = new HTMLCMDataTypeImpl(HTMLCMDataType.SCRIPT);
-			attr = new HTMLAttrDeclImpl(ATTR_NAME_ONMOUSEUP, atype, CMAttributeDeclaration.OPTIONAL);
-
-		}
-		else if (attrName.equalsIgnoreCase(ATTR_NAME_ONMOUSEOVER)) {
-			// (onmouseover %Script; #IMPLIED)
-			atype = new HTMLCMDataTypeImpl(HTMLCMDataType.SCRIPT);
-			attr = new HTMLAttrDeclImpl(ATTR_NAME_ONMOUSEOVER, atype, CMAttributeDeclaration.OPTIONAL);
-
-		}
-		else if (attrName.equalsIgnoreCase(ATTR_NAME_ONMOUSEMOVE)) {
-			// (onmousemove %Script; #IMPLIED)
-			atype = new HTMLCMDataTypeImpl(HTMLCMDataType.SCRIPT);
-			attr = new HTMLAttrDeclImpl(ATTR_NAME_ONMOUSEMOVE, atype, CMAttributeDeclaration.OPTIONAL);
-
-		}
-		else if (attrName.equalsIgnoreCase(ATTR_NAME_ONMOUSEOUT)) {
-			// (onmouseout %Script; #IMPLIED)
-			atype = new HTMLCMDataTypeImpl(HTMLCMDataType.SCRIPT);
-			attr = new HTMLAttrDeclImpl(ATTR_NAME_ONMOUSEOUT, atype, CMAttributeDeclaration.OPTIONAL);
-
-		}
-		else if (attrName.equalsIgnoreCase(ATTR_NAME_ONRESET)) {
-			// (onreset %Script; #IMPLIED)
-			atype = new HTMLCMDataTypeImpl(HTMLCMDataType.SCRIPT);
-			attr = new HTMLAttrDeclImpl(ATTR_NAME_ONRESET, atype, CMAttributeDeclaration.OPTIONAL);
-
-		}
-		else if (attrName.equalsIgnoreCase(ATTR_NAME_ONSELECT)) {
-			// (onselect %Script; #IMPLIED)
-			atype = new HTMLCMDataTypeImpl(HTMLCMDataType.SCRIPT);
-			attr = new HTMLAttrDeclImpl(ATTR_NAME_ONSELECT, atype, CMAttributeDeclaration.OPTIONAL);
-
-		}
-		else if (attrName.equalsIgnoreCase(ATTR_NAME_ONSUBMIT)) {
-			// (onsubmit %Script; #IMPLIED)
-			atype = new HTMLCMDataTypeImpl(HTMLCMDataType.SCRIPT);
-			attr = new HTMLAttrDeclImpl(ATTR_NAME_ONSUBMIT, atype, CMAttributeDeclaration.OPTIONAL);
-
-		}
-		else if (attrName.equalsIgnoreCase(ATTR_NAME_ONUNLOAD)) {
-			// (onunload %Script; #IMPLIED)
-			atype = new HTMLCMDataTypeImpl(HTMLCMDataType.SCRIPT);
-			attr = new HTMLAttrDeclImpl(ATTR_NAME_ONUNLOAD, atype, CMAttributeDeclaration.OPTIONAL);
-
-		}
-		else if (attrName.equalsIgnoreCase(ATTR_NAME_PALETTE)) {
-			// (palette CDATA; #IMPLIED)
-			atype = new HTMLCMDataTypeImpl(CMDataType.CDATA);
-			attr = new HTMLAttrDeclImpl(ATTR_NAME_PALETTE, atype, CMAttributeDeclaration.OPTIONAL);
-
-		}
-		else if (attrName.equalsIgnoreCase(ATTR_NAME_PANEL)) {
-			// (panel CDATA; #IMPLIED)
-			atype = new HTMLCMDataTypeImpl(CMDataType.CDATA);
-			attr = new HTMLAttrDeclImpl(ATTR_NAME_PANEL, atype, CMAttributeDeclaration.OPTIONAL);
-
-		}
-		else if (attrName.equalsIgnoreCase(ATTR_NAME_PLAYCOUNT)) {
-			// (playcount NUMBER; #IMPLIED)
-			atype = new HTMLCMDataTypeImpl(CMDataType.NUMBER);
-			attr = new HTMLAttrDeclImpl(ATTR_NAME_PLAYCOUNT, atype, CMAttributeDeclaration.OPTIONAL);
-
-		}
-		else if (attrName.equalsIgnoreCase(ATTR_NAME_PROFILE)) {
-			// (profile %URI; #IMPLIED)
-			atype = new HTMLCMDataTypeImpl(CMDataType.URI);
-			attr = new HTMLAttrDeclImpl(ATTR_NAME_PROFILE, atype, CMAttributeDeclaration.OPTIONAL);
-
-		}
-		else if (attrName.equalsIgnoreCase(ATTR_NAME_PROMPT)) {
-			// (prompt %Text; #IMPLIED)
-			atype = new HTMLCMDataTypeImpl(HTMLCMDataType.TEXT);
-			attr = new HTMLAttrDeclImpl(ATTR_NAME_PROMPT, atype, CMAttributeDeclaration.OPTIONAL);
-
-		}
-		else if (attrName.equalsIgnoreCase(ATTR_NAME_READONLY)) {
-			// (readonly (readonly) #IMPLIED)
-			atype = new HTMLCMDataTypeImpl(CMDataType.ENUM);
-			String[] values = {ATTR_NAME_READONLY};
-			atype.setEnumValues(values);
-			attr = new HTMLAttrDeclImpl(ATTR_NAME_READONLY, atype, CMAttributeDeclaration.OPTIONAL);
-
-		}
-		else if (attrName.equalsIgnoreCase(ATTR_NAME_REPEAT)) {
-			// (repeat CDATA #IMPLIED)
-			atype = new HTMLCMDataTypeImpl(CMDataType.CDATA);
-			attr = new HTMLAttrDeclImpl(ATTR_NAME_REPEAT, atype, CMAttributeDeclaration.OPTIONAL);
-
-		}
-		else if (attrName.equalsIgnoreCase(ATTR_NAME_REL)) {
-			// (rel %LinkTypes; #IMPLIED)
-			atype = new HTMLCMDataTypeImpl(HTMLCMDataType.LINK_TYPES);
-			attr = new HTMLAttrDeclImpl(ATTR_NAME_REL, atype, CMAttributeDeclaration.OPTIONAL);
-
-		}
-		else if (attrName.equalsIgnoreCase(ATTR_NAME_REV)) {
-			// (rev %LinkTypes; #IMPLIED)
-			atype = new HTMLCMDataTypeImpl(HTMLCMDataType.LINK_TYPES);
-			attr = new HTMLAttrDeclImpl(ATTR_NAME_REV, atype, CMAttributeDeclaration.OPTIONAL);
-
-		}
-		else if (attrName.equalsIgnoreCase(ATTR_NAME_ROWS)) {
-			// (rows NUMBER #REQUIRED)
-			atype = new HTMLCMDataTypeImpl(CMDataType.NUMBER);
-			attr = new HTMLAttrDeclImpl(ATTR_NAME_ROWS, atype, CMAttributeDeclaration.REQUIRED);
-
-		}
-		else if (attrName.equalsIgnoreCase(ATTR_NAME_ROWSPAN)) {
-			// (rowspan NUMBER 1)
-			atype = new HTMLCMDataTypeImpl(CMDataType.NUMBER);
-			atype.setImpliedValue(CMDataType.IMPLIED_VALUE_DEFAULT, ATTR_VALUE_1);
-			attr = new HTMLAttrDeclImpl(ATTR_NAME_ROWSPAN, atype, CMAttributeDeclaration.OPTIONAL);
-
-		}
-		else if (attrName.equalsIgnoreCase(ATTR_NAME_RULES)) {
-			// (rules %TRules; #IMPLIED)
-			// %TRules; is (none | groups | rows | cols | all).
-			atype = new HTMLCMDataTypeImpl(CMDataType.ENUM);
-			String[] values = {ATTR_VALUE_NONE, ATTR_VALUE_GROUPS, ATTR_VALUE_ROWS, ATTR_VALUE_COLS, ATTR_VALUE_ALL};
-			atype.setEnumValues(values);
-			attr = new HTMLAttrDeclImpl(ATTR_NAME_RULES, atype, CMAttributeDeclaration.OPTIONAL);
-
-		}
-		else if (attrName.equalsIgnoreCase(ATTR_NAME_SCALE)) {
-			// (scale CDATA #IMPLIED)
-			atype = new HTMLCMDataTypeImpl(CMDataType.CDATA);
-			attr = new HTMLAttrDeclImpl(ATTR_NAME_SCALE, atype, CMAttributeDeclaration.OPTIONAL);
-
-		}
-		else if (attrName.equalsIgnoreCase(ATTR_NAME_SCHEME)) {
-			// (scheme CDATA #IMPLIED)
-			atype = new HTMLCMDataTypeImpl(CMDataType.CDATA);
-			attr = new HTMLAttrDeclImpl(ATTR_NAME_SCHEME, atype, CMAttributeDeclaration.OPTIONAL);
-
-		}
-		else if (attrName.equalsIgnoreCase(ATTR_NAME_SELECTED)) {
-			// (selected (selected) #IMPLIED)
-			atype = new HTMLCMDataTypeImpl(CMDataType.ENUM);
-			String[] values = {ATTR_NAME_SELECTED};
-			atype.setEnumValues(values);
-			attr = new HTMLAttrDeclImpl(ATTR_NAME_SELECTED, atype, CMAttributeDeclaration.OPTIONAL);
-
-		}
-		else if (attrName.equalsIgnoreCase(ATTR_NAME_SCOPE)) {
-			// (SCOPE %Scope; #IMPLIED)
-			// %Scope; is (row|col|rowgroup|colgroup)
-			atype = new HTMLCMDataTypeImpl(CMDataType.ENUM);
-			String[] values = {ATTR_VALUE_ROW, ATTR_VALUE_COL, ATTR_VALUE_ROWGROUP, ATTR_VALUE_COLGROUP};
-			atype.setEnumValues(values);
-			attr = new HTMLAttrDeclImpl(ATTR_NAME_SCOPE, atype, CMAttributeDeclaration.OPTIONAL);
-
-		}
-		else if (attrName.equalsIgnoreCase(ATTR_NAME_SCROLLAMOUNT)) {
-			// (scrollamount NUMBER #IMPLIED)
-			atype = new HTMLCMDataTypeImpl(CMDataType.NUMBER);
-			attr = new HTMLAttrDeclImpl(ATTR_NAME_SCROLLAMOUNT, atype, CMAttributeDeclaration.OPTIONAL);
-
-		}
-		else if (attrName.equalsIgnoreCase(ATTR_NAME_SCROLLDELAY)) {
-			// (scrolldelay NUMBER #IMPLIED)
-			atype = new HTMLCMDataTypeImpl(CMDataType.NUMBER);
-			attr = new HTMLAttrDeclImpl(ATTR_NAME_SCROLLDELAY, atype, CMAttributeDeclaration.OPTIONAL);
-
-		}
-		else if (attrName.equalsIgnoreCase(ATTR_NAME_SCROLLING)) {
-			// (scrolling (yes|no|auto) auto)
-			atype = new HTMLCMDataTypeImpl(CMDataType.ENUM);
-			String[] values = {ATTR_VALUE_YES, ATTR_VALUE_NO, ATTR_VALUE_AUTO};
-			atype.setEnumValues(values);
-			atype.setImpliedValue(CMDataType.IMPLIED_VALUE_DEFAULT, ATTR_VALUE_AUTO);
-			attr = new HTMLAttrDeclImpl(ATTR_NAME_SCROLLING, atype, CMAttributeDeclaration.OPTIONAL);
-
-		}
-		else if (attrName.equalsIgnoreCase(ATTR_NAME_SHAPE)) {
-			// (shape %Shape; rect): %Shape; is (rect|circle|poly|default).
-			atype = new HTMLCMDataTypeImpl(CMDataType.ENUM);
-			String[] values = {ATTR_VALUE_RECT, ATTR_VALUE_CIRCLE, ATTR_VALUE_POLY, ATTR_VALUE_DEFAULT};
-			atype.setEnumValues(values);
-			atype.setImpliedValue(CMDataType.IMPLIED_VALUE_DEFAULT, ATTR_VALUE_RECT);
-			attr = new HTMLAttrDeclImpl(ATTR_NAME_SHAPE, atype, CMAttributeDeclaration.OPTIONAL);
-
-		}
-		else if (attrName.equalsIgnoreCase(ATTR_NAME_SHOWCONTROLS)) {
-			// (showcontrols (true|false) #IMPLIED)
-			atype = new HTMLCMDataTypeImpl(CMDataType.ENUM);
-			String[] values = {ATTR_VALUE_TRUE, ATTR_VALUE_FALSE};
-			atype.setEnumValues(values);
-			attr = new HTMLAttrDeclImpl(ATTR_NAME_SHOWCONTROLS, atype, CMAttributeDeclaration.OPTIONAL);
-
-		}
-		else if (attrName.equalsIgnoreCase(ATTR_NAME_SIZE)) {
-			// (size %Pixels; #IMPLIED)
-			atype = new HTMLCMDataTypeImpl(HTMLCMDataType.PIXELS);
-			attr = new HTMLAttrDeclImpl(ATTR_NAME_SIZE, atype, CMAttributeDeclaration.OPTIONAL);
-
-		}
-		else if (attrName.equalsIgnoreCase(ATTR_NAME_SIZEFMT)) {
-			// (sizefmt CDATA #IMPLIED)
-			atype = new HTMLCMDataTypeImpl(CMDataType.CDATA);
-			attr = new HTMLAttrDeclImpl(ATTR_NAME_SIZEFMT, atype, CMAttributeDeclaration.OPTIONAL);
-
-		}
-		else if (attrName.equalsIgnoreCase(ATTR_NAME_SPAN)) {
-			// (span NUMBER 1)
-			atype = new HTMLCMDataTypeImpl(CMDataType.NUMBER);
-			atype.setImpliedValue(CMDataType.IMPLIED_VALUE_DEFAULT, ATTR_VALUE_1);
-			attr = new HTMLAttrDeclImpl(ATTR_NAME_SPAN, atype, CMAttributeDeclaration.OPTIONAL);
-
-		}
-		else if (attrName.equalsIgnoreCase(ATTR_NAME_SRC)) {
-			// (src %URI; #IMPLIED)
-			// NOTE: "src" attributes are defined in several elements.
-			//		 The definition of IMG is different from others.
-			//		 So, it should be locally defined.
-			atype = new HTMLCMDataTypeImpl(CMDataType.URI);
-			attr = new HTMLAttrDeclImpl(ATTR_NAME_SRC, atype, CMAttributeDeclaration.OPTIONAL);
-
-		}
-		else if (attrName.equalsIgnoreCase(ATTR_NAME_START)) {
-			// (start NUMBER #IMPLIED)
-			atype = new HTMLCMDataTypeImpl(CMDataType.NUMBER);
-			attr = new HTMLAttrDeclImpl(ATTR_NAME_START, atype, CMAttributeDeclaration.OPTIONAL);
-
-		}
-		else if (attrName.equalsIgnoreCase(ATTR_NAME_STANDBY)) {
-			// (standby %Text; #IMPLIED)
-			atype = new HTMLCMDataTypeImpl(HTMLCMDataType.TEXT);
-			attr = new HTMLAttrDeclImpl(ATTR_NAME_STANDBY, atype, CMAttributeDeclaration.OPTIONAL);
-
-		}
-		else if (attrName.equalsIgnoreCase(ATTR_NAME_STYLE)) {
-			// (style %StyleSheet; #IMPLIED)
-			atype = new HTMLCMDataTypeImpl(HTMLCMDataType.STYLE_SHEET);
-			attr = new HTMLAttrDeclImpl(ATTR_NAME_STYLE, atype, CMAttributeDeclaration.OPTIONAL);
-
-		}
-		else if (attrName.equalsIgnoreCase(ATTR_NAME_SUMMARY)) {
-			// (summary %Text; #IMPLIED)
-			atype = new HTMLCMDataTypeImpl(HTMLCMDataType.TEXT);
-			attr = new HTMLAttrDeclImpl(ATTR_NAME_SUMMARY, atype, CMAttributeDeclaration.OPTIONAL);
-
-		}
-		else if (attrName.equalsIgnoreCase(ATTR_NAME_TABINDEX)) {
-			// (tabindex NUMBER #IMPLIED)
-			atype = new HTMLCMDataTypeImpl(CMDataType.NUMBER);
-			attr = new HTMLAttrDeclImpl(ATTR_NAME_TABINDEX, atype, CMAttributeDeclaration.OPTIONAL);
-
-		}
-		else if (attrName.equalsIgnoreCase(ATTR_NAME_TARGET)) {
-			// (target %FrameTarget; #IMPLIED)
-			atype = new HTMLCMDataTypeImpl(HTMLCMDataType.FRAME_TARGET);
-			attr = new HTMLAttrDeclImpl(ATTR_NAME_TARGET, atype, CMAttributeDeclaration.OPTIONAL);
-
-		}
-		else if (attrName.equalsIgnoreCase(ATTR_NAME_TEXT)) {
-			// (text CDATA #IMPLIED)
-			atype = new HTMLCMDataTypeImpl(CMDataType.CDATA);
-			attr = new HTMLAttrDeclImpl(ATTR_NAME_TEXT, atype, CMAttributeDeclaration.OPTIONAL);
-
-		}
-		else if (attrName.equalsIgnoreCase(ATTR_NAME_TEXTFOCUS)) {
-			// (textfocus CDATA #IMPLIED)
-			atype = new HTMLCMDataTypeImpl(CMDataType.CDATA);
-			attr = new HTMLAttrDeclImpl(ATTR_NAME_TEXTFOCUS, atype, CMAttributeDeclaration.OPTIONAL);
-
-		}
-		else if (attrName.equalsIgnoreCase(ATTR_NAME_TITLE)) {
-			// (title %Text; #IMPLIED)
-			atype = new HTMLCMDataTypeImpl(HTMLCMDataType.TEXT);
-			attr = new HTMLAttrDeclImpl(ATTR_NAME_TITLE, atype, CMAttributeDeclaration.OPTIONAL);
-
-		}
-		else if (attrName.equalsIgnoreCase(ATTR_NAME_TIMEFMT)) {
-			// (timefmt CDATA #IMPLIED)
-			atype = new HTMLCMDataTypeImpl(CMDataType.CDATA);
-			attr = new HTMLAttrDeclImpl(ATTR_NAME_TIMEFMT, atype, CMAttributeDeclaration.OPTIONAL);
-
-		}
-		else if (attrName.equalsIgnoreCase(ATTR_NAME_TRUESPEED)) {
-			// (truespeed (truespeed) #IMPLIED)
-			atype = new HTMLCMDataTypeImpl(CMDataType.ENUM);
-			String[] values = {ATTR_NAME_TRUESPEED};
-			atype.setEnumValues(values);
-			attr = new HTMLAttrDeclImpl(ATTR_NAME_TRUESPEED, atype, CMAttributeDeclaration.OPTIONAL);
-
-		}
-		else if (attrName.equalsIgnoreCase(ATTR_NAME_TYPE)) {
-			// (type %CotentType; #IMPLIED)
-			atype = new HTMLCMDataTypeImpl(HTMLCMDataType.CONTENT_TYPE);
-			attr = new HTMLAttrDeclImpl(ATTR_NAME_TYPE, atype, CMAttributeDeclaration.OPTIONAL);
-
-		}
-		else if (attrName.equalsIgnoreCase(ATTR_NAME_USEMAP)) {
-			// (usemap %URI; #IMPLIED)
-			atype = new HTMLCMDataTypeImpl(CMDataType.URI);
-			attr = new HTMLAttrDeclImpl(ATTR_NAME_USEMAP, atype, CMAttributeDeclaration.OPTIONAL);
-
-		}
-		else if (attrName.equalsIgnoreCase(ATTR_NAME_VALIGN)) {
-			// (valign (top|middle|bottom|baseline) #IMPLIED)
-			atype = new HTMLCMDataTypeImpl(CMDataType.ENUM);
-			String[] values = {ATTR_VALUE_TOP, ATTR_VALUE_MIDDLE, ATTR_VALUE_BOTTOM, ATTR_VALUE_BASELINE};
-			atype.setEnumValues(values);
-			attr = new HTMLAttrDeclImpl(ATTR_NAME_VALIGN, atype, CMAttributeDeclaration.OPTIONAL);
-
-		}
-		else if (attrName.equalsIgnoreCase(ATTR_NAME_VALUE)) {
-			// (value CDATA #IMPLIED)
-			atype = new HTMLCMDataTypeImpl(CMDataType.CDATA);
-			attr = new HTMLAttrDeclImpl(ATTR_NAME_VALUE, atype, CMAttributeDeclaration.OPTIONAL);
-
-		}
-		else if (attrName.equalsIgnoreCase(ATTR_NAME_VALUETYPE)) {
-			// (valuetype (DATA|REF|OBJECT) DATA)
-			atype = new HTMLCMDataTypeImpl(CMDataType.ENUM);
-			String[] values = {ATTR_VALUE_DATA, ATTR_VALUE_REF, ATTR_VALUE_OBJECT};
-			atype.setEnumValues(values);
-			atype.setImpliedValue(CMDataType.IMPLIED_VALUE_DEFAULT, ATTR_VALUE_DATA);
-			attr = new HTMLAttrDeclImpl(ATTR_NAME_VALUETYPE, atype, CMAttributeDeclaration.OPTIONAL);
-
-		}
-		else if (attrName.equalsIgnoreCase(ATTR_NAME_VAR)) {
-			// (var CDATA #IMPLIED)
-			atype = new HTMLCMDataTypeImpl(CMDataType.CDATA);
-			attr = new HTMLAttrDeclImpl(ATTR_NAME_VAR, atype, CMAttributeDeclaration.OPTIONAL);
-
-		}
-		else if (attrName.equalsIgnoreCase(ATTR_NAME_VERSION)) {
-			// (version CDATA #FIXED '%HTML.Version;)
-			atype = new HTMLCMDataTypeImpl(CMDataType.CDATA);
-			atype.setImpliedValue(CMDataType.IMPLIED_VALUE_FIXED, ATTR_VALUE_VERSION_TRANSITIONAL);
-			attr = new HTMLAttrDeclImpl(ATTR_NAME_VERSION, atype, CMAttributeDeclaration.FIXED);
-
-		}
-		else if (attrName.equalsIgnoreCase(ATTR_NAME_VIRTUAL)) {
-			// (virtual %URI; #IMPLIED)
-			atype = new HTMLCMDataTypeImpl(CMDataType.URI);
-			attr = new HTMLAttrDeclImpl(ATTR_NAME_VIRTUAL, atype, CMAttributeDeclaration.OPTIONAL);
-
-		}
-		else if (attrName.equalsIgnoreCase(ATTR_NAME_VLINK)) {
-			// (vlink %Color; #IMPLIED)
-			atype = new HTMLCMDataTypeImpl(HTMLCMDataType.COLOR);
-			attr = new HTMLAttrDeclImpl(ATTR_NAME_VLINK, atype, CMAttributeDeclaration.OPTIONAL);
-
-		}
-		else if (attrName.equalsIgnoreCase(ATTR_NAME_VOLUME)) {
-			// (volume CDATA #IMPLIED)
-			atype = new HTMLCMDataTypeImpl(CMDataType.CDATA);
-			attr = new HTMLAttrDeclImpl(ATTR_NAME_VOLUME, atype, CMAttributeDeclaration.OPTIONAL);
-
-		}
-		else if (attrName.equalsIgnoreCase(ATTR_NAME_WIDTH)) {
-			// (width %Length; #IMPLIED)
-			atype = new HTMLCMDataTypeImpl(HTMLCMDataType.LENGTH);
-			attr = new HTMLAttrDeclImpl(ATTR_NAME_WIDTH, atype, CMAttributeDeclaration.OPTIONAL);
-
-		}
-		else if (attrName.equalsIgnoreCase(ATTR_NAME_VSPACE)) {
-			// (vspace %Pixels; #IMPLIED)
-			atype = new HTMLCMDataTypeImpl(HTMLCMDataType.PIXELS);
-			attr = new HTMLAttrDeclImpl(ATTR_NAME_VSPACE, atype, CMAttributeDeclaration.OPTIONAL);
-
-			// <<D205514
-		}
-		else if (attrName.equalsIgnoreCase(ATTR_NAME_TOPMARGIN)) {
-			// (topmargin, CDATA, #IMPLIED)
-			atype = new HTMLCMDataTypeImpl(CMDataType.CDATA);
-			attr = new HTMLAttrDeclImpl(ATTR_NAME_TOPMARGIN, atype, CMAttributeDeclaration.OPTIONAL);
-
-		}
-		else if (attrName.equalsIgnoreCase(ATTR_NAME_BOTTOMMARGIN)) {
-			// (bottommargin, CDATA, #IMPLIED)
-			atype = new HTMLCMDataTypeImpl(CMDataType.CDATA);
-			attr = new HTMLAttrDeclImpl(ATTR_NAME_BOTTOMMARGIN, atype, CMAttributeDeclaration.OPTIONAL);
-
-		}
-		else if (attrName.equalsIgnoreCase(ATTR_NAME_LEFTMARGIN)) {
-			// (leftmargin, CDATA, #IMPLIED)
-			atype = new HTMLCMDataTypeImpl(CMDataType.CDATA);
-			attr = new HTMLAttrDeclImpl(ATTR_NAME_LEFTMARGIN, atype, CMAttributeDeclaration.OPTIONAL);
-
-		}
-		else if (attrName.equalsIgnoreCase(ATTR_NAME_RIGHTMARGIN)) {
-			// (rightmargin, CDATA, #IMPLIED)
-			atype = new HTMLCMDataTypeImpl(CMDataType.CDATA);
-			attr = new HTMLAttrDeclImpl(ATTR_NAME_RIGHTMARGIN, atype, CMAttributeDeclaration.OPTIONAL);
-
-		}
-		else if (attrName.equalsIgnoreCase(ATTR_NAME_BORDERCOLOR)) {
-			// (bordercolor, %Color; #IMPLIED)
-			atype = new HTMLCMDataTypeImpl(HTMLCMDataType.COLOR);
-			attr = new HTMLAttrDeclImpl(ATTR_NAME_BORDERCOLOR, atype, CMAttributeDeclaration.OPTIONAL);
-			// D205514
-
-		}
-		else {
-			// unknown attribute; maybe error.
-			// should warn.
-			attr = null;
-		}
-
-		return attr;
-	}
-
-	/**
-	 * Get align attribute which has %CAlign; as values..
-	 * At this time (4/19/2001), it is identical to %LAlign;.
-	 *
-	 */
-	public static final HTMLAttrDeclImpl createAlignForCaption() {
-		// align (local)
-		HTMLCMDataTypeImpl atype = new HTMLCMDataTypeImpl(CMDataType.ENUM);
-		// set enum values
-		String[] values = {ATTR_VALUE_TOP, ATTR_VALUE_BOTTOM, ATTR_VALUE_LEFT, ATTR_VALUE_RIGHT};
-		atype.setEnumValues(values);
-
-		HTMLAttrDeclImpl attr = new HTMLAttrDeclImpl(ATTR_NAME_ALIGN, atype, CMAttributeDeclaration.OPTIONAL);
-		return attr;
-	}
-
-	/**
-	 * Get align attribute which has %IAlign; as values..
-	 */
-	public static final HTMLAttrDeclImpl createAlignForImage() {
-		// align (local)
-		HTMLCMDataTypeImpl atype = new HTMLCMDataTypeImpl(CMDataType.ENUM);
-		// set enum values
-		String[] values = {ATTR_VALUE_TOP, ATTR_VALUE_MIDDLE, ATTR_VALUE_BOTTOM, ATTR_VALUE_LEFT, ATTR_VALUE_RIGHT};
-		atype.setEnumValues(values);
-
-		HTMLAttrDeclImpl attr = new HTMLAttrDeclImpl(ATTR_NAME_ALIGN, atype, CMAttributeDeclaration.OPTIONAL);
-		return attr;
-	}
-
-	/**
-	 * Get align attribute which has %LAlign; as values..
-	 */
-	public static final HTMLAttrDeclImpl createAlignForLegend() {
-		// align (local)
-		HTMLCMDataTypeImpl atype = new HTMLCMDataTypeImpl(CMDataType.ENUM);
-		// set enum values
-		String[] values = {ATTR_VALUE_TOP, ATTR_VALUE_BOTTOM, ATTR_VALUE_LEFT, ATTR_VALUE_RIGHT};
-		atype.setEnumValues(values);
-
-		HTMLAttrDeclImpl attr = new HTMLAttrDeclImpl(ATTR_NAME_ALIGN, atype, CMAttributeDeclaration.OPTIONAL);
-		return attr;
-	}
-
-	/**
-	 * Create an attribute declaration for <code>align</code>
-	 * in several elements, like <code>P</code>, <code>DIV</code>.
-	 * The values are different from attributes those have the same name
-	 * in other elements (<code>IMG</code> and <code>TABLE</code>).
-	 * So, it can't treat as global attributes.
-	 * <strong>NOTE: These attribute declaration has
-	 * no owner CMDocument instance.</strong>
-	 */
-	public static final HTMLAttrDeclImpl createAlignForParagraph() {
-		HTMLCMDataTypeImpl atype = new HTMLCMDataTypeImpl(CMDataType.ENUM);
-		// set enum values: left|center|right|justify
-		String[] values = {ATTR_VALUE_LEFT, ATTR_VALUE_CENTER, ATTR_VALUE_RIGHT, ATTR_VALUE_JUSTIFY};
-		atype.setEnumValues(values);
-
-		HTMLAttrDeclImpl attr = new HTMLAttrDeclImpl(ATTR_NAME_ALIGN, atype, CMAttributeDeclaration.OPTIONAL);
-		return attr;
-	}
-
-	/**
-	 * Get %attrs; declarations.
-	 * %attrs; consists of %coreattrs;, %i18n, and %events;.
-	 */
-	public void getAttrs(CMNamedNodeMapImpl declarations) {
-		// %coreattrs;
-		Iterator names = Arrays.asList(CORE).iterator();
-		getDeclarations(declarations, names);
-		// %i18n;
-		names = Arrays.asList(I18N).iterator();
-		getDeclarations(declarations, names);
-		// %events;
-		names = Arrays.asList(EVENTS).iterator();
-		getDeclarations(declarations, names);
-	}
-
-	/**
-	 * Get %bodycolors; declarations.
-	 */
-	public void getBodycolors(CMNamedNodeMapImpl declarations) {
-		Iterator names = Arrays.asList(BODYCOLORS).iterator();
-		getDeclarations(declarations, names);
-	}
-
-	/**
-	 * Get %cellhalign; declarations.
-	 * %cellhaligh; consists of:
-	 *  - (align (left|center|right|justify|char) #IMPLIED)
-	 *  - (char %Character; #IMPLIED)
-	 *  - (charoff %Length; #IMPLIED)
-	 */
-	public void getCellhalign(CMNamedNodeMapImpl declarations) {
-		// (align (left|center|right|justify|char) #IMPLIED) should be defined
-		// locally.
-		HTMLCMDataTypeImpl atype = new HTMLCMDataTypeImpl(CMDataType.ENUM);
-		// set enum values
-		String[] values = {ATTR_VALUE_LEFT, ATTR_VALUE_CENTER, ATTR_VALUE_RIGHT, ATTR_VALUE_JUSTIFY, ATTR_VALUE_CHAR};
-		atype.setEnumValues(values);
-
-		HTMLAttrDeclImpl attr = new HTMLAttrDeclImpl(ATTR_NAME_ALIGN, atype, CMAttributeDeclaration.OPTIONAL);
-		declarations.putNamedItem(HTML40Namespace.ATTR_NAME_ALIGN, attr);
-
-		// the rest.
-		Iterator names = Arrays.asList(CELLHALIGN).iterator();
-		getDeclarations(declarations, names);
-	}
-
-	/**
-	 * Get %cellvalign; declarations.
-	 * %cellhaligh; is:
-	 *  - (valign (top|middle|bottom|baseline) #IMPLIED)
-	 */
-	public void getCellvalign(CMNamedNodeMapImpl declarations) {
-		HTMLAttributeDeclaration dec = getDeclaration(HTML40Namespace.ATTR_NAME_VALIGN);
-		if (dec != null)
-			declarations.putNamedItem(HTML40Namespace.ATTR_NAME_VALIGN, dec);
-	}
-
-	/**
-	 * Get %coreattrs; declarations.
-	 */
-	public void getCore(CMNamedNodeMapImpl declarations) {
-		Iterator names = Arrays.asList(CORE).iterator();
-		getDeclarations(declarations, names);
-	}
-
-	/**
-	 * Get a global attribute declaration.
-	 * @param attrName java.lang.String
-	 */
-	public HTMLAttributeDeclaration getDeclaration(String attrName) {
-		CMNode cmnode = getNamedItem(attrName);
-		if (cmnode != null)
-			return (HTMLAttributeDeclaration) cmnode; // already exists.
-
-		HTMLAttrDeclImpl dec = create(attrName);
-		if (dec != null)
-			putNamedItem(attrName, dec);
-
-		return dec;
-	}
-
-	/**
-	 * Get declarations which are specified by names.
-	 * @param names java.util.Iterator
-	 */
-	public void getDeclarations(CMNamedNodeMapImpl declarations, Iterator names) {
-		while (names.hasNext()) {
-			String attrName = (String) names.next();
-			HTMLAttributeDeclaration dec = getDeclaration(attrName);
-			if (dec != null)
-				declarations.putNamedItem(attrName, dec);
-		}
-	}
-
-	/**
-	 * Get %events; declarations.
-	 */
-	public void getEvents(CMNamedNodeMapImpl declarations) {
-		Iterator names = Arrays.asList(EVENTS).iterator();
-		getDeclarations(declarations, names);
-	}
-
-	/**
-	 * Get %i18n; declarations.
-	 */
-	public void getI18n(CMNamedNodeMapImpl declarations) {
-		Iterator names = Arrays.asList(I18N).iterator();
-		getDeclarations(declarations, names);
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/CMContentImpl.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/CMContentImpl.java
deleted file mode 100644
index dac7c81..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/CMContentImpl.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.core.internal.contentmodel;
-
-import org.eclipse.wst.xml.core.internal.contentmodel.CMContent;
-
-
-
-/**
- * Implementation of CMContent for HTML CM.
- */
-abstract class CMContentImpl extends CMNodeImpl implements CMContent {
-
-	public static final int UNBOUNDED = -1;
-	/**  -1: it's UNBOUNDED. */
-	private int maxOccur = UNBOUNDED;
-	/**  0: it's OPTIONAL, 1, it's REQUIRED. */
-	private int minOccur = 0;
-
-	/**
-	 * The primary consturctor.
-	 * Use this one for usual cases.<br>
-	 */
-	public CMContentImpl(String name, int min, int max) {
-		super(name);
-		minOccur = min;
-		maxOccur = max;
-	}
-
-	/**
-	 * 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;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/CMGroupImpl.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/CMGroupImpl.java
deleted file mode 100644
index a8ab34c..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/CMGroupImpl.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.core.internal.contentmodel;
-
-
-
-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;
-
-/**
- */
-class CMGroupImpl extends CMContentImpl implements CMGroup {
-
-	private int operator = CMGroup.SEQUENCE;
-	private CMNodeListImpl children = null;
-
-	/**
-	 * CMGroupImpl constructor comment.
-	 */
-	public CMGroupImpl(int op, int minOccur, int maxOccur) {
-		super(null, minOccur, maxOccur);
-		switch (op) {
-			case CMGroup.ALL :
-			case CMGroup.CHOICE :
-			case CMGroup.SEQUENCE :
-				operator = op;
-				break;
-			default :
-				// should warn.
-				break;
-		}
-	}
-
-	/**
-	 * @return org.eclipse.wst.xml.core.internal.contentmodel.CMNode
-	 * @param org.eclipse.wst.xml.core.internal.contentmodel.CMNode
-	 */
-	protected CMNode appendChild(CMNode child) {
-		if (child == null)
-			return null;
-		if (children == null)
-			children = new CMNodeListImpl();
-		return children.appendNode(child);
-	}
-
-	/**
-	 * @return org.eclipse.wst.xml.core.internal.contentmodel.CMNodeList
-	 */
-	public CMNodeList getChildNodes() {
-		return children;
-	}
-
-	/**
-	 * getNodeType method
-	 * @return int
-	 *
-	 * Returns one of :
-	 * ELEMENT_DECLARATION, ATTRIBUTE_DECLARATION, GROUP, ENTITY_DECLARATION.
-	 */
-	public int getNodeType() {
-		return CMNode.GROUP;
-	}
-
-	/**
-	 * getOperation method
-	 * @return int
-	 *
-	 * Returns one of :
-	 * ALONE (a), SEQUENCE (a,b), CHOICE (a|b), ALL (a&b).
-	 */
-	public int getOperator() {
-		return operator;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/CMNamedNodeMapImpl.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/CMNamedNodeMapImpl.java
deleted file mode 100644
index 21ce1b2..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/CMNamedNodeMapImpl.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.html.core.internal.contentmodel;
-
-
-
-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;
-
-/**
- * An implementation of the CMNamedNodeMap interface.
- * This class is intented to be used as a container of attribute declarations.
- * If someone wants to use this class for other purpose, he must pay attention
- * to the fact that this class is tolerant of the key name case.  That is, this
- * class does not distinguish "name", "NAME", and "Name" as a key name.
- */
-class CMNamedNodeMapImpl implements CMNamedNodeMap {
-
-	private Hashtable items = null;
-
-	/**
-	 */
-	public CMNamedNodeMapImpl() {
-		super();
-		items = new Hashtable();
-	}
-
-	/**
-	 * getLength method
-	 * @return int
-	 */
-	public int getLength() {
-		return items.size();
-	}
-
-	/**
-	 * getNamedItem method
-	 * @return CMNode <code>null</code> for unknown keys.
-	 * @param name java.lang.String
-	 */
-	public CMNode getNamedItem(String name) {
-		String cookedName = makeCanonicalForm(name);
-		if (!items.containsKey(cookedName))
-			return null;
-		return (CMNode) items.get(cookedName);
-	}
-
-	/**
-	 * item method
-	 * @return CMNode
-	 * @param index int
-	 */
-	public CMNode item(int index) {
-		Iterator iter = iterator();
-		while (iter.hasNext()) {
-			CMNode node = (CMNode) iter.next();
-			if (--index < 0)
-				return node;
-		}
-		return null;
-	}
-
-	/**
-	 * @return java.util.Iterator
-	 */
-	public Iterator iterator() {
-		return items.values().iterator();
-	}
-
-	/**
-	 * @return java.lang.String
-	 * @param rawForm java.lang.String
-	 */
-	private String makeCanonicalForm(String rawForm) {
-		return rawForm.toUpperCase();
-	}
-
-	/**
-	 * @param key java.lang.String
-	 * @param item java.lang.String
-	 */
-	void putNamedItem(String name, CMNode item) {
-		String cookedName = makeCanonicalForm(name);
-		if (items.containsKey(cookedName))
-			return; // already registered.
-		items.put(cookedName, item);
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/CMNamespaceImpl.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/CMNamespaceImpl.java
deleted file mode 100644
index 20f4c28..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/CMNamespaceImpl.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.html.core.internal.contentmodel;
-
-
-
-import org.eclipse.wst.xml.core.internal.contentmodel.CMNamespace;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMNode;
-
-/**
- * CMNamespace implementation.
- */
-class CMNamespaceImpl extends CMNodeImpl implements CMNamespace {
-
-	private java.lang.String prefix = null;
-
-	/**
-	 * CMNamespaceImpl constructor comment.
-	 */
-	public CMNamespaceImpl(String uri, String pfx) {
-		super(uri);
-		prefix = pfx;
-	}
-
-	/**
-	 * getNodeType method
-	 * @return int
-	 *
-	 * Returns one of :
-	 *
-	 */
-	public int getNodeType() {
-		return CMNode.NAME_SPACE;
-	}
-
-	/**
-	 * getPrefix method
-	 * @return java.lang.String
-	 */
-	public String getPrefix() {
-		return prefix;
-	}
-
-	/**
-	 * getURI method
-	 * @return java.lang.String
-	 */
-	public String getURI() {
-		return getNodeName();
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/CMNodeImpl.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/CMNodeImpl.java
deleted file mode 100644
index 263d75a..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/CMNodeImpl.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.html.core.internal.contentmodel;
-
-import org.eclipse.wst.html.core.internal.provisional.HTMLCMProperties;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMNode;
-
-
-
-/**
- */
-abstract class CMNodeImpl implements CMNode {
-
-	private java.lang.String name = null;
-
-	/**
-	 * CMNodeImpl constructor comment.
-	 */
-	public CMNodeImpl(String nm) {
-		super();
-		name = nm;
-	}
-
-	/**
-	 * getNodeName method
-	 * @return java.lang.String
-	 */
-	public String getNodeName() {
-		return name;
-	}
-
-	/**
-	 * getProperty method
-	 * @return java.lang.Object
-	 *
-	 * Returns the object property desciped by the propertyName
-	 *
-	 */
-	public Object getProperty(String propertyName) {
-		if (propertyName.equals(HTMLCMProperties.IS_XHTML))
-			return new Boolean(false);
-		return null;
-	}
-
-	/**
-	 * supports method
-	 * @return boolean
-	 *
-	 * Returns true if the CMNode supports a specified property
-	 *
-	 */
-	public boolean supports(String propertyName) {
-		if (propertyName.equals(HTMLCMProperties.IS_XHTML))
-			return true;
-		return false;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/CMNodeListImpl.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/CMNodeListImpl.java
deleted file mode 100644
index ddcdb1c..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/CMNodeListImpl.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.html.core.internal.contentmodel;
-
-
-
-import org.eclipse.wst.xml.core.internal.contentmodel.CMNode;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMNodeList;
-
-/**
- * Analog of dom.NodeList for CM.
- * So, the implementation is very similar to
- * NodeListImpl<br>
- */
-class CMNodeListImpl implements CMNodeList {
-
-	private java.util.Vector nodes = null;
-
-	/**
-	 * CMNodeListImpl constructor comment.
-	 */
-	public CMNodeListImpl() {
-		super();
-		nodes = new java.util.Vector();
-	}
-
-	/**
-	 * @return org.eclipse.wst.xml.core.internal.contentmodel.CMNode
-	 * @param node org.eclipse.wst.xml.core.internal.contentmodel.CMNode
-	 */
-	protected CMNode appendNode(CMNode node) {
-		nodes.addElement(node);
-		return 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.elementAt(index);
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/ComplexTypeDefinition.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/ComplexTypeDefinition.java
deleted file mode 100644
index 0ab6652..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/ComplexTypeDefinition.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.core.internal.contentmodel;
-
-
-
-import org.eclipse.wst.xml.core.internal.contentmodel.CMGroup;
-
-/**
- * This class is intended to represent a complex type definition
- * in XML Schema.<br>
- */
-abstract class ComplexTypeDefinition {
-
-	protected CMGroupImpl content = null;
-	protected ElementCollection collection = null;
-	protected String primaryCandidateName = null;
-
-	/**
-	 * ComplexTypeDefinition constructor comment.
-	 */
-	public ComplexTypeDefinition(ElementCollection elementCollection) {
-		super();
-		collection = elementCollection;
-		createContent();
-	}
-
-	/**
-	 * Create an actual content model.
-	 * This method should be called once and only once in the constructor.<br>
-	 */
-	protected abstract void createContent();
-
-	/**
-	 * @return org.eclipse.wst.xml.core.internal.contentmodel.CMGroup
-	 */
-	public CMGroup getContent() {
-		return content;
-	}
-
-	/**
-	 * @return int; Should be one of ANY, EMPTY, ELEMENT, MIXED, PCDATA, CDATA,
-	 * those are defined in CMElementDeclaration.
-	 */
-	/* NOTE: Do we need LOGICAL type?
-	 * -- 3/7/2001
-	 */
-	public abstract int getContentType();
-
-	/**
-	 * Get content hint.
-	 */
-	public HTMLElementDeclaration getPrimaryCandidate() {
-		if (primaryCandidateName == null)
-			return null;
-		return (HTMLElementDeclaration) collection.getNamedItem(primaryCandidateName);
-	}
-
-	/**
-	 * Name of complex type definition.
-	 * Each singleton must know its own name.
-	 * All names should be defined in
-	 * {@link <code>ComplexTypeDefinitionFactory</code>} as constants.<br>
-	 * @return java.lang.String
-	 */
-	public abstract String getTypeName();
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/ComplexTypeDefinitionFactory.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/ComplexTypeDefinitionFactory.java
deleted file mode 100644
index 60fdef1..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/ComplexTypeDefinitionFactory.java
+++ /dev/null
@@ -1,183 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this 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.core.internal.contentmodel;
-
-
-
-/**
- * Factory of ComplexTypeDefinition.
- */
-final class ComplexTypeDefinitionFactory {
-
-	private static ComplexTypeDefinitionFactory instance = null;
-	private java.util.Hashtable definitions = null;
-	// constants for complex type name
-	/** for ADDRESS. */
-	public final static String CTYPE_ADDRESS = "CTYPE_ADDRESS";//$NON-NLS-1$
-	/** CDATA content. No ComplexTypeDefinition instance shuld be created. */
-	public final static String CTYPE_CDATA = "CTYPE_CDATA";//$NON-NLS-1$
-	/** col group content. COL* */
-	public final static String CTYPE_COLUMN_GROUP = "CTYPE_COLUMN_GROUP";//$NON-NLS-1$
-	/** for DL. */
-	public final static String CTYPE_DEFINITION_LIST = "CTYPE_DEFINITION_LIST";//$NON-NLS-1$
-	/** for EMBED. */
-	public final static String CTYPE_EMBED = "CTYPE_EMBED";//$NON-NLS-1$
-	/** empty content. No ComplexTypeDefinition instance should be created. */
-	public final static String CTYPE_EMPTY = "CTYPE_EMPTY";//$NON-NLS-1$
-	/** for FIELDSET. */
-	public final static String CTYPE_FIELDSET = "CTYPE_FIELDSET";//$NON-NLS-1$
-	/** for FRAMESET. */
-	public final static String CTYPE_FRAMESET = "CTYPE_FRAMESET";//$NON-NLS-1$
-	/** flow content. (%flow;)* */
-	public final static String CTYPE_FLOW_CONTAINER = "CTYPE_FLOW_CONTAINER";//$NON-NLS-1$
-	/** html content. HEAD, (FRAMESET|BODY) */
-	public final static String CTYPE_HTML = "CTYPE_HTML";//$NON-NLS-1$
-	/** head content. TITLE & ISINDEX? & BASE? */
-	public final static String CTYPE_HEAD = "CTYPE_HEAD";//$NON-NLS-1$
-	/** inline content. (%inline;)* */
-	public final static String CTYPE_INLINE_CONTAINER = "CTYPE_INLINE_CONTAINER";//$NON-NLS-1$
-	/** list item container. (LI)+ */
-	public final static String CTYPE_LI_CONTAINER = "CTYPE_LI_CONTAINER";//$NON-NLS-1$
-	/** for MAP. */
-	public final static String CTYPE_MAP = "CTYPE_MAP";//$NON-NLS-1$
-	/** noframes content. */
-	public final static String CTYPE_NOFRAMES_CONTENT = "CTYPE_NOFRAMES_CONTENT";//$NON-NLS-1$
-	/** for OPTGROUP. */
-	public final static String CTYPE_OPTION_CONTAINER = "CTYPE_OPTION_CONTAINER";//$NON-NLS-1$
-	/** param container. For OBJECT/APPLET. */
-	public final static String CTYPE_PARAM_CONTAINER = "CTYPE_PARAM_CONTAINER";//$NON-NLS-1$
-	/** PCDATA content. No ComplexTypeDefinition instance shuld be created. */
-	public final static String CTYPE_PCDATA = "CTYPE_PCDATA";//$NON-NLS-1$
-	/** for SELECT. */
-	public final static String CTYPE_SELECT = "CTYPE_SELECT";//$NON-NLS-1$
-	/** table content. CAPTION?, (COL*|COLGROUP*), THEAD?, TFOOT?, TBODY+ */
-	public final static String CTYPE_TABLE = "CTYPE_TABLE";//$NON-NLS-1$
-	/** table cell contaier. (TH|TD)+ */
-	public final static String CTYPE_TCELL_CONTAINER = "CTYPE_TCELL_CONTAINER";//$NON-NLS-1$
-	/** table record container. (TR)+ */
-	public final static String CTYPE_TR_CONTAINER = "CTYPE_TR_CONTAINER";//$NON-NLS-1$
-
-	/**
-	 * ComplexTypeDefinitionFactory constructor comment.
-	 */
-	private ComplexTypeDefinitionFactory() {
-		super();
-		definitions = new java.util.Hashtable();
-	}
-
-	/**
-	 * Factory method for ComplexTypeDefinition.
-	 * Each instance created in this method must be registered into
-	 * the map with its name.
-	 * @param definitionName java.lang.String
-	 * @param elementCollection ElementCollection
-	 */
-	public ComplexTypeDefinition createTypeDefinition(String definitionName, ElementCollection elementCollection) {
-		if (definitions.containsKey(definitionName)) {
-			return (ComplexTypeDefinition) definitions.get(definitionName);
-		}
-
-		ComplexTypeDefinition def = null;
-		if (definitionName == CTYPE_ADDRESS) {
-			def = new CtdAddress(elementCollection);
-
-		}
-		else if (definitionName == CTYPE_COLUMN_GROUP) {
-			def = new CtdColumnGroup(elementCollection);
-
-		}
-		else if (definitionName == CTYPE_DEFINITION_LIST) {
-			def = new CtdDl(elementCollection);
-
-		}
-		else if (definitionName == CTYPE_EMBED) {
-			def = new CtdEmbed(elementCollection);
-
-		}
-		else if (definitionName == CTYPE_FIELDSET) {
-			def = new CtdFieldset(elementCollection);
-
-		}
-		else if (definitionName == CTYPE_FLOW_CONTAINER) {
-			def = new CtdFlowContainer(elementCollection);
-
-		}
-		else if (definitionName == CTYPE_FRAMESET) {
-			def = new CtdFrameset(elementCollection);
-
-		}
-		else if (definitionName == CTYPE_HEAD) {
-			def = new CtdHead(elementCollection);
-
-		}
-		else if (definitionName == CTYPE_HTML) {
-			def = new CtdHtml(elementCollection);
-
-		}
-		else if (definitionName == CTYPE_INLINE_CONTAINER) {
-			def = new CtdInlineContainer(elementCollection);
-
-		}
-		else if (definitionName == CTYPE_LI_CONTAINER) {
-			def = new CtdLiContainer(elementCollection);
-
-		}
-		else if (definitionName == CTYPE_MAP) {
-			def = new CtdMap(elementCollection);
-
-		}
-		else if (definitionName == CTYPE_NOFRAMES_CONTENT) {
-			def = new CtdNoframesContent(elementCollection);
-
-		}
-		else if (definitionName == CTYPE_OPTION_CONTAINER) {
-			def = new CtdOptionContainer(elementCollection);
-
-		}
-		else if (definitionName == CTYPE_PARAM_CONTAINER) {
-			def = new CtdParamContainer(elementCollection);
-
-		}
-		else if (definitionName == CTYPE_SELECT) {
-			def = new CtdSelect(elementCollection);
-
-		}
-		else if (definitionName == CTYPE_TABLE) {
-			def = new CtdTable(elementCollection);
-
-		}
-		else if (definitionName == CTYPE_TCELL_CONTAINER) {
-			def = new CtdTableCellContainer(elementCollection);
-
-		}
-		else if (definitionName == CTYPE_TR_CONTAINER) {
-			def = new CtdTrContainer(elementCollection);
-
-		}
-		else {
-			def = null;
-		}
-		if (def == null)
-			return null; // fail to create.
-		definitions.put(definitionName, def);
-		return def;
-	}
-
-	/**
-	 * For singleton.
-	 */
-	public synchronized static ComplexTypeDefinitionFactory getInstance() {
-		if (instance != null)
-			return instance;
-		instance = new ComplexTypeDefinitionFactory();
-		return instance;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/CtdAddress.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/CtdAddress.java
deleted file mode 100644
index f6e8ddd..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/CtdAddress.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.wst.html.core.internal.contentmodel;
-
-
-
-import org.eclipse.wst.html.core.internal.provisional.HTML40Namespace;
-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;
-
-/**
- * for ADDRESS.
- */
-final class CtdAddress extends ComplexTypeDefinition {
-
-	/**
-	 * @param elementCollection ElementCollection
-	 */
-	public CtdAddress(ElementCollection elementCollection) {
-		super(elementCollection);
-	}
-
-	/**
-	 * ((%inline) | P)*.
-	 */
-	protected void createContent() {
-		if (content != null)
-			return; // already created.
-		if (collection == null)
-			return;
-
-		// ( | )*
-		content = new CMGroupImpl(CMGroup.CHOICE, 0, CMContentImpl.UNBOUNDED);
-		// (%inline)
-		CMGroupImpl inlines = new CMGroupImpl(CMGroup.CHOICE, 1, 1);
-		if (inlines == null)
-			return;
-		collection.getInline(inlines);
-		content.appendChild(inlines);
-		// P
-		CMNode p = collection.getNamedItem(HTML40Namespace.ElementName.P);
-		if (p != null)
-			content.appendChild(p);
-	}
-
-	/**
-	 * ((%inline) | P)*.
-	 * Because %inline; contains #PCDATA, the type is MIXED.
-	 * @return int; Should be one of ANY, EMPTY, ELEMENT, MIXED, PCDATA, CDATA,
-	 * those are defined in CMElementDeclaration.
-	 */
-	public int getContentType() {
-		return CMElementDeclaration.MIXED;
-	}
-
-	/**
-	 * @return java.lang.String
-	 */
-	public String getTypeName() {
-		return ComplexTypeDefinitionFactory.CTYPE_ADDRESS;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/CtdColumnGroup.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/CtdColumnGroup.java
deleted file mode 100644
index d617708..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/CtdColumnGroup.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.wst.html.core.internal.contentmodel;
-
-
-
-import org.eclipse.wst.html.core.internal.provisional.HTML40Namespace;
-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;
-
-/**
- * COL group.
- * (COL)*
- */
-final class CtdColumnGroup extends ComplexTypeDefinition {
-
-	/**
-	 * @param elementCollection ElementCollection
-	 */
-	public CtdColumnGroup(ElementCollection elementCollection) {
-		super(elementCollection);
-	}
-
-	/**
-	 * (COL)*
-	 */
-	protected void createContent() {
-		if (content != null)
-			return; // already created.
-		if (collection == null)
-			return;
-
-		// ( )*
-		content = new CMGroupImpl(CMGroup.SEQUENCE, 0, CMContentImpl.UNBOUNDED);
-		// COL
-		CMNode dec = collection.getNamedItem(HTML40Namespace.ElementName.COL);
-		if (dec != null)
-			content.appendChild(dec);
-	}
-
-	/**
-	 * (COL)*
-	 * @return int; Should be one of ANY, EMPTY, ELEMENT, MIXED, PCDATA, CDATA,
-	 * those are defined in CMElementDeclaration.
-	 */
-	public int getContentType() {
-		return CMElementDeclaration.ELEMENT;
-	}
-
-	/**
-	 * Name of complex type definition.
-	 * Each singleton must know its own name.
-	 * All names should be defined in
-	 * {@link <code>ComplexTypeDefinitionFactory</code>} as constants.<br>
-	 * @return java.lang.String
-	 */
-	public String getTypeName() {
-		return ComplexTypeDefinitionFactory.CTYPE_COLUMN_GROUP;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/CtdDl.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/CtdDl.java
deleted file mode 100644
index 9e4a3e6..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/CtdDl.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.wst.html.core.internal.contentmodel;
-
-
-
-import org.eclipse.wst.html.core.internal.provisional.HTML40Namespace;
-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;
-
-/**
- * for DL.
- */
-final class CtdDl extends ComplexTypeDefinition {
-
-	/**
-	 * @param elementCollection ElementCollection
-	 */
-	public CtdDl(ElementCollection elementCollection) {
-		super(elementCollection);
-		primaryCandidateName = HTML40Namespace.ElementName.DT;
-	}
-
-	/**
-	 * (DT | DD)+
-	 */
-	protected void createContent() {
-		if (content != null)
-			return; // already created.
-		if (collection == null)
-			return;
-
-		// ( | )+
-		content = new CMGroupImpl(CMGroup.CHOICE, 1, CMContentImpl.UNBOUNDED);
-		// DT
-		CMNode dec = collection.getNamedItem(HTML40Namespace.ElementName.DT);
-		if (dec != null)
-			content.appendChild(dec);
-		// DD
-		dec = collection.getNamedItem(HTML40Namespace.ElementName.DD);
-		if (dec != null)
-			content.appendChild(dec);
-	}
-
-	/**
-	 * (DT | DD)+.
-	 * @return int; Should be one of ANY, EMPTY, ELEMENT, MIXED, PCDATA, CDATA,
-	 * those are defined in CMElementDeclaration.
-	 */
-	public int getContentType() {
-		return CMElementDeclaration.ELEMENT;
-	}
-
-	/**
-	 * @return java.lang.String
-	 */
-	public String getTypeName() {
-		return ComplexTypeDefinitionFactory.CTYPE_DEFINITION_LIST;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/CtdEmbed.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/CtdEmbed.java
deleted file mode 100644
index 86e9186..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/CtdEmbed.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.html.core.internal.contentmodel;
-
-
-
-import org.eclipse.wst.html.core.internal.provisional.HTML40Namespace;
-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;
-
-/**
- * for EMBED.
- */
-final class CtdEmbed extends ComplexTypeDefinition {
-
-	/**
-	 * @param elementCollection ElementCollection
-	 */
-	public CtdEmbed(ElementCollection elementCollection) {
-		super(elementCollection);
-		primaryCandidateName = HTML40Namespace.ElementName.NOEMBED;
-	}
-
-	/**
-	 * (NOEMBED).
-	 */
-	protected void createContent() {
-		if (content != null)
-			return; // already created.
-		if (collection == null)
-			return;
-
-		// ( )
-		content = new CMGroupImpl(CMGroup.SEQUENCE, 1, 1);
-		// NOEMBED
-		CMNode noembed = collection.getNamedItem(HTML40Namespace.ElementName.NOEMBED);
-		if (noembed != null)
-			content.appendChild(noembed);
-	}
-
-	/**
-	 * (NOEMBED).
-	 * @return int; Should be one of ANY, EMPTY, ELEMENT, MIXED, PCDATA, CDATA,
-	 * those are defined in CMElementDeclaration.
-	 */
-	public int getContentType() {
-		return CMElementDeclaration.ELEMENT;
-	}
-
-	/**
-	 * @return java.lang.String
-	 */
-	public String getTypeName() {
-		return ComplexTypeDefinitionFactory.CTYPE_EMBED;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/CtdFieldset.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/CtdFieldset.java
deleted file mode 100644
index bc9ed04..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/CtdFieldset.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.wst.html.core.internal.contentmodel;
-
-
-
-import org.eclipse.wst.html.core.internal.provisional.HTML40Namespace;
-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;
-
-/**
- * for FIELDSET.
- */
-final class CtdFieldset extends ComplexTypeDefinition {
-
-	/**
-	 * @param elementCollection ElementCollection
-	 */
-	public CtdFieldset(ElementCollection elementCollection) {
-		super(elementCollection);
-		primaryCandidateName = HTML40Namespace.ElementName.LEGEND;
-	}
-
-	/**
-	 * (#PCDATA, LEGEND, (%flow;)*)
-	 */
-	protected void createContent() {
-		if (content != null)
-			return; // already created.
-		if (collection == null)
-			return;
-
-		// ( , , )
-		content = new CMGroupImpl(CMGroup.SEQUENCE, 1, 1);
-		// #PCDATA
-		// ...??
-
-		// LEGEND
-		CMNode dec = collection.getNamedItem(HTML40Namespace.ElementName.LEGEND);
-		if (dec != null)
-			content.appendChild(dec);
-		// (%flow;)*
-		CMGroupImpl flows = new CMGroupImpl(CMGroup.CHOICE, 0, CMContentImpl.UNBOUNDED);
-		if (flows == null)
-			return;
-		collection.getFlow(flows);
-		content.appendChild(flows);
-	}
-
-	/**
-	 * (#PCDATA, LEGEND, (%flow;)*)
-	 * @return int; Should be one of ANY, EMPTY, ELEMENT, MIXED, PCDATA, CDATA,
-	 * those are defined in CMElementDeclaration.
-	 */
-	public int getContentType() {
-		return CMElementDeclaration.MIXED;
-	}
-
-	/**
-	 * @return java.lang.String
-	 */
-	public String getTypeName() {
-		return ComplexTypeDefinitionFactory.CTYPE_FIELDSET;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/CtdFlowContainer.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/CtdFlowContainer.java
deleted file mode 100644
index b131398..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/CtdFlowContainer.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.core.internal.contentmodel;
-
-
-
-import org.eclipse.wst.xml.core.internal.contentmodel.CMElementDeclaration;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMGroup;
-
-/**
- * Complex type definition for containers of <code>%flow;</code>.
- */
-final class CtdFlowContainer extends ComplexTypeDefinition {
-
-	/**
-	 */
-	public CtdFlowContainer(ElementCollection elementCollection) {
-		super(elementCollection);
-	}
-
-	/**
-	 * (%flow;)*
-	 */
-	protected void createContent() {
-		if (content != null)
-			return; // already created.
-		if (collection == null)
-			return;
-
-		content = new CMGroupImpl(CMGroup.CHOICE, 0, CMContentImpl.UNBOUNDED);
-		collection.getFlow(content);
-	}
-
-	public int getContentType() {
-		return CMElementDeclaration.MIXED;
-	}
-
-	public String getTypeName() {
-		return ComplexTypeDefinitionFactory.CTYPE_FLOW_CONTAINER;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/CtdFrameset.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/CtdFrameset.java
deleted file mode 100644
index 7bd1076..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/CtdFrameset.java
+++ /dev/null
@@ -1,93 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this 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.core.internal.contentmodel;
-
-
-
-import org.eclipse.wst.html.core.internal.provisional.HTML40Namespace;
-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;
-
-/**
- * for FRAMESET.
- * ((FRAMESET | FRAME)+ & NOFRAMES?)
- */
-final class CtdFrameset extends ComplexTypeDefinition {
-
-	/**
-	 * @param elementCollection ElementCollection
-	 */
-	public CtdFrameset(ElementCollection elementCollection) {
-		super(elementCollection);
-		primaryCandidateName = HTML40Namespace.ElementName.FRAME;
-	}
-
-	/**
-	 * ((FRAMESET | FRAME)+ & NOFRAMES?).
-	 * --> ((FRAMESET | FRAME)+ & (NOFRAMES)?)
-	 */
-	protected void createContent() {
-		if (content != null)
-			return; // already created.
-		if (collection == null)
-			return;
-
-		// ( & )
-		content = new CMGroupImpl(CMGroup.ALL, 1, 1);
-
-		// ( | )+
-		CMGroupImpl group = new CMGroupImpl(CMGroup.CHOICE, 1, CMContentImpl.UNBOUNDED);
-		if (group == null)
-			return;
-		content.appendChild(group);
-
-		// FRAMESET
-		CMNode dec = collection.getNamedItem(HTML40Namespace.ElementName.FRAMESET);
-		if (dec != null)
-			group.appendChild(dec);
-		// FRAME
-		dec = collection.getNamedItem(HTML40Namespace.ElementName.FRAME);
-		if (dec != null)
-			group.appendChild(dec);
-
-		// ( )?
-		group = new CMGroupImpl(CMGroup.SEQUENCE, 0, 1);
-		if (group == null)
-			return;
-		content.appendChild(group);
-
-		// NOFRAMES
-		dec = collection.getNamedItem(HTML40Namespace.ElementName.NOFRAMES);
-		if (dec != null)
-			group.appendChild(dec);
-	}
-
-	/**
-	 * ((FRAMESET | FRAME)+ & NOFRAMES?)
-	 * @return int; Should be one of ANY, EMPTY, ELEMENT, MIXED, PCDATA, CDATA,
-	 * those are defined in CMElementDeclaration.
-	 */
-	public int getContentType() {
-		return CMElementDeclaration.ELEMENT;
-	}
-
-	/**
-	 * Name of complex type definition.
-	 * Each singleton must know its own name.
-	 * All names should be defined in
-	 * {@link <code>ComplexTypeDefinitionFactory</code>} as constants.<br>
-	 * @return java.lang.String
-	 */
-	public String getTypeName() {
-		return ComplexTypeDefinitionFactory.CTYPE_FRAMESET;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/CtdHead.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/CtdHead.java
deleted file mode 100644
index 8a68177..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/CtdHead.java
+++ /dev/null
@@ -1,175 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this 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.core.internal.contentmodel;
-
-
-
-import java.util.Arrays;
-
-import org.eclipse.wst.html.core.internal.provisional.HTML40Namespace;
-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;
-
-/**
- * Complex type definition for the head content.
- * Content Model: (TITLE & ISINDEX? & BASE?)
- */
-final class CtdHead extends ComplexTypeDefinition {
-
-	/**
-	 */
-	public CtdHead(ElementCollection elementCollection) {
-		super(elementCollection);
-		primaryCandidateName = HTML40Namespace.ElementName.TITLE;
-	}
-
-	/**
-	 * for HEAD.
-	 * To avoid using inclusion, the content model comes from the XHTML 1.0.
-	 *
-	 * (%head.misc;, ((title, %head.misc;, (base, %head.misc;)?) | (base, %head.misc;, (title, %head.misc;))))
-	 * And %head.misc; is:
-	 * (script|style|meta|link|object|isindex)*
-	 *
-	 * 0: (%head.misc, A)
-	 * A: (B | C)
-	 * B: (title, %head.misc;, D)
-	 * C: (base, %head.misc;, E)
-	 * D: (base, %head.misc;)?
-	 * E: (title, %head.misc;)
-	 */
-	protected void createContent() {
-		if (content != null)
-			return; // already created.
-		if (collection == null)
-			return;
-
-		// At 1st, create %head.misc; content.
-		// %head.misc;
-		//   ( | )*
-		CMGroupImpl misc = new CMGroupImpl(CMGroup.CHOICE, 0, CMContentImpl.UNBOUNDED);
-		if (misc == null)
-			return;
-		String[] names = {HTML40Namespace.ElementName.SCRIPT, HTML40Namespace.ElementName.STYLE, HTML40Namespace.ElementName.META, HTML40Namespace.ElementName.LINK, HTML40Namespace.ElementName.OBJECT, HTML40Namespace.ElementName.ISINDEX};
-		collection.getDeclarations(misc, Arrays.asList(names).iterator());
-		// 2nd, get a title
-		CMNode title = collection.getNamedItem(HTML40Namespace.ElementName.TITLE);
-		// 3rd, get a base
-		CMNode base = collection.getNamedItem(HTML40Namespace.ElementName.BASE);
-		if (title == null || base == null)
-			return;
-
-		// Top level content is a sequence of %head.misc; and A.
-		// 0: (%head.misc;, A)
-		//   create a sequence
-		content = new CMGroupImpl(CMGroup.SEQUENCE, 1, 1);
-		if (content == null)
-			return;
-		//   append %head.misc;
-		content.appendChild(misc);
-		//   create A and append it to the top level.
-		{
-			// A is a choice of B and C.
-			// A: (B | C)
-			//   create a choice
-			CMGroupImpl gA = new CMGroupImpl(CMGroup.CHOICE, 1, 1);
-			if (gA == null)
-				return;
-			//   append A to the top level.
-			content.appendChild(gA);
-
-			// create B and append it to A
-			{
-				// B is a sequence of title, %head.misc;, and D.
-				// B: (title, %head.misc;, D)
-				//   create a sequence
-				CMGroupImpl gB = new CMGroupImpl(CMGroup.SEQUENCE, 1, 1);
-				if (gB == null)
-					return;
-				//   append B to A.
-				gA.appendChild(gB);
-
-				//   append title to B
-				gB.appendChild(title);
-				//   append %head.misc; to B
-				gB.appendChild(misc);
-				//   create D and append it to B.
-				{
-					// D is a sequence of base, %head.misc;.
-					// D: (base, %head.misc;)?
-					//   create a sequence
-					CMGroupImpl gD = new CMGroupImpl(CMGroup.SEQUENCE, 0, 1);
-					if (gD == null)
-						return;
-					//   append D to B.
-					gB.appendChild(gD);
-
-					//   append base to D
-					gD.appendChild(base);
-					//   append %head.misc; to D.
-					gD.appendChild(misc);
-				}
-			}
-			// create C and append it to A
-			{
-				// C is a sequence of base, %head.misc;, and E
-				// C: (base, %head.misc;, E)
-				//   create a sequence
-				CMGroupImpl gC = new CMGroupImpl(CMGroup.SEQUENCE, 1, 1);
-				if (gC == null)
-					return;
-				//   append C to A.
-				gA.appendChild(gC);
-
-				//   append base to C
-				gC.appendChild(base);
-				//   append %head.misc; to C
-				gC.appendChild(misc);
-
-				//   create E and append it to C.
-				{
-					// E is a sequence of title and %head.misc;.
-					// E: (title, %head.misc;)
-					//   create a sequence
-					CMGroupImpl gE = new CMGroupImpl(CMGroup.SEQUENCE, 1, 1);
-					if (gE == null)
-						return;
-					//   append E to C.
-					gC.appendChild(gE);
-
-					//   append title to E
-					gE.appendChild(title);
-					//   append %head.misc; to E.
-					gE.appendChild(misc);
-				}
-			}
-		}
-	}
-
-	/**
-	 * Element content.
-	 */
-	public int getContentType() {
-		return CMElementDeclaration.ELEMENT;
-	}
-
-	/**
-	 * Name of complex type definition.
-	 * Each singleton must know its own name.
-	 * All names should be defined in
-	 * {@link <code>ComplexTypeDefinitionFactory</code>} as constants.<br>
-	 * @return java.lang.String
-	 */
-	public String getTypeName() {
-		return ComplexTypeDefinitionFactory.CTYPE_HEAD;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/CtdHtml.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/CtdHtml.java
deleted file mode 100644
index f562d40..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/CtdHtml.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.core.internal.contentmodel;
-
-
-
-import java.util.Arrays;
-
-import org.eclipse.wst.html.core.internal.provisional.HTML40Namespace;
-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;
-
-/**
- * Complex type definition for <code>HTML</code>.<br>
- * Content Model:
- * HEAD, (FRAMESET|BODY)<br>
- */
-final class CtdHtml extends ComplexTypeDefinition {
-
-	/**
-	 */
-	public CtdHtml(ElementCollection elementCollection) {
-		super(elementCollection);
-		primaryCandidateName = HTML40Namespace.ElementName.HEAD;
-	}
-
-	/**
-	 * (%html.content;).
-	 * %html.content; is HEAD, (FRAMESET | BODY).
-	 */
-	protected void createContent() {
-		if (content != null)
-			return; // already created.
-		if (collection == null)
-			return;
-
-		// ( )
-		content = new CMGroupImpl(CMGroup.SEQUENCE, 1, 1);
-		if (content == null)
-			return;
-
-		// HEAD
-		CMNode edec = collection.getNamedItem(HTML40Namespace.ElementName.HEAD);
-		if (edec != null)
-			content.appendChild(edec);
-
-		// ( | )
-		CMGroupImpl group = new CMGroupImpl(CMGroup.CHOICE, 1, 1);
-		content.appendChild(group);
-
-		// FRAMESET, BODY
-		String[] names = {HTML40Namespace.ElementName.FRAMESET, HTML40Namespace.ElementName.BODY};
-		collection.getDeclarations(group, Arrays.asList(names).iterator());
-	}
-
-	/**
-	 * Element content.
-	 */
-	public int getContentType() {
-		return CMElementDeclaration.ELEMENT;
-	}
-
-	public String getTypeName() {
-		return ComplexTypeDefinitionFactory.CTYPE_HTML;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/CtdInlineContainer.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/CtdInlineContainer.java
deleted file mode 100644
index ad52c8b..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/CtdInlineContainer.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.core.internal.contentmodel;
-
-
-
-import org.eclipse.wst.xml.core.internal.contentmodel.CMElementDeclaration;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMGroup;
-
-/**
- * Complex type definition for (%inline;)*.
- */
-final class CtdInlineContainer extends ComplexTypeDefinition {
-
-	/**
-	 * @param elementCollection ElementCollection
-	 */
-	public CtdInlineContainer(ElementCollection elementCollection) {
-		super(elementCollection);
-	}
-
-	/**
-	 * (%inline)*.
-	 */
-	protected void createContent() {
-		if (content != null)
-			return; // already created.
-		if (collection == null)
-			return;
-
-		content = new CMGroupImpl(CMGroup.CHOICE, 0, CMContentImpl.UNBOUNDED);
-		collection.getInline(content);
-	}
-
-	public int getContentType() {
-		return CMElementDeclaration.MIXED;
-	}
-
-	public String getTypeName() {
-		return ComplexTypeDefinitionFactory.CTYPE_INLINE_CONTAINER;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/CtdLiContainer.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/CtdLiContainer.java
deleted file mode 100644
index aae68af..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/CtdLiContainer.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.wst.html.core.internal.contentmodel;
-
-
-
-import org.eclipse.wst.html.core.internal.provisional.HTML40Namespace;
-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;
-
-/**
- * List item container.
- * (LI)+
- */
-final class CtdLiContainer extends ComplexTypeDefinition {
-
-	/**
-	 * @param elemenCollection ElementCollection
-	 */
-	public CtdLiContainer(ElementCollection elementCollection) {
-		super(elementCollection);
-		primaryCandidateName = HTML40Namespace.ElementName.LI;
-	}
-
-	/**
-	 * (LI)+.
-	 */
-	protected void createContent() {
-		if (content != null)
-			return; // already created.
-		if (collection == null)
-			return;
-
-		// (LI)+
-		content = new CMGroupImpl(CMGroup.SEQUENCE, 1, CMContentImpl.UNBOUNDED);
-		CMNode li = collection.getNamedItem(HTML40Namespace.ElementName.LI);
-		if (li != null)
-			content.appendChild(li);
-	}
-
-	/**
-	 * ELEMENT content.<br>
-	 * @return int; Should be one of ANY, EMPTY, ELEMENT, MIXED, PCDATA, CDATA,
-	 * those are defined in CMElementDeclaration.
-	 */
-	public int getContentType() {
-		return CMElementDeclaration.ELEMENT;
-	}
-
-	/**
-	 * Name of complex type definition.
-	 * Each singleton must know its own name.
-	 * All names should be defined in
-	 * {@link <code>ComplexTypeDefinitionFactory</code>} as constants.<br>
-	 * @return java.lang.String
-	 */
-	public String getTypeName() {
-		return ComplexTypeDefinitionFactory.CTYPE_LI_CONTAINER;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/CtdMap.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/CtdMap.java
deleted file mode 100644
index 83f9b72..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/CtdMap.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.wst.html.core.internal.contentmodel;
-
-
-
-import org.eclipse.wst.html.core.internal.provisional.HTML40Namespace;
-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;
-
-/**
- * for MAP.
- */
-final class CtdMap extends ComplexTypeDefinition {
-
-	/**
-	 * @param elementCollection ElementCollection
-	 */
-	public CtdMap(ElementCollection elementCollection) {
-		super(elementCollection);
-		primaryCandidateName = HTML40Namespace.ElementName.AREA;
-	}
-
-	/**
-	 * ((%block;) | AREA)+.
-	 */
-	protected void createContent() {
-		if (content != null)
-			return; // already created.
-		if (collection == null)
-			return;
-
-		// ( | )+
-		content = new CMGroupImpl(CMGroup.CHOICE, 1, CMContentImpl.UNBOUNDED);
-		// (%block;)
-		CMGroupImpl blocks = new CMGroupImpl(CMGroup.CHOICE, 1, 1);
-		if (blocks == null)
-			return;
-		collection.getBlock(blocks);
-		content.appendChild(blocks);
-		// AREA
-		CMNode area = collection.getNamedItem(HTML40Namespace.ElementName.AREA);
-		if (area != null)
-			content.appendChild(area);
-	}
-
-	/**
-	 * ((%block;) | AREA)+.
-	 * Because %block; consists of elements only, the type is ELEMENT.
-	 * @return int; Should be one of ANY, EMPTY, ELEMENT, MIXED, PCDATA, CDATA,
-	 * those are defined in CMElementDeclaration.
-	 */
-	public int getContentType() {
-		return CMElementDeclaration.ELEMENT;
-	}
-
-	/**
-	 * @return java.lang.String
-	 */
-	public String getTypeName() {
-		return ComplexTypeDefinitionFactory.CTYPE_MAP;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/CtdNoframesContent.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/CtdNoframesContent.java
deleted file mode 100644
index f7ac09b..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/CtdNoframesContent.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.html.core.internal.contentmodel;
-
-
-
-import org.eclipse.wst.html.core.internal.provisional.HTML40Namespace;
-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;
-
-/**
- * for NOFRAMES.
- */
-final class CtdNoframesContent extends ComplexTypeDefinition {
-
-	/**
-	 * @param elementCollection ElementCollection
-	 */
-	public CtdNoframesContent(ElementCollection elementCollection) {
-		super(elementCollection);
-		primaryCandidateName = HTML40Namespace.ElementName.BODY;
-	}
-
-	/**
-	 * (BODY).
-	 */
-	protected void createContent() {
-		if (content != null)
-			return; // already created.
-		if (collection == null)
-			return;
-
-		// ( )
-		content = new CMGroupImpl(CMGroup.SEQUENCE, 1, 1);
-		// BODY
-		CMNode dec = collection.getNamedItem(HTML40Namespace.ElementName.BODY);
-		if (dec != null)
-			content.appendChild(dec);
-	}
-
-	/**
-	 * (BODY)
-	 * @return int; Should be one of ANY, EMPTY, ELEMENT, MIXED, PCDATA, CDATA,
-	 * those are defined in CMElementDeclaration.
-	 */
-	public int getContentType() {
-		return CMElementDeclaration.ELEMENT;
-	}
-
-	/**
-	 * @return java.lang.String
-	 */
-	public String getTypeName() {
-		return ComplexTypeDefinitionFactory.CTYPE_NOFRAMES_CONTENT;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/CtdOptionContainer.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/CtdOptionContainer.java
deleted file mode 100644
index a772f17..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/CtdOptionContainer.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.html.core.internal.contentmodel;
-
-
-
-import org.eclipse.wst.html.core.internal.provisional.HTML40Namespace;
-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;
-
-/**
- * OPTION container.
- * (OPTION)+
- */
-final class CtdOptionContainer extends ComplexTypeDefinition {
-
-	/**
-	 * @param elementCollection ElementCollection
-	 */
-	public CtdOptionContainer(ElementCollection elementCollection) {
-		super(elementCollection);
-		primaryCandidateName = HTML40Namespace.ElementName.OPTION;
-	}
-
-	/**
-	 * (OPTION)+.
-	 */
-	protected void createContent() {
-		if (content != null)
-			return; // already created.
-		if (collection == null)
-			return;
-
-		// ( )+
-		content = new CMGroupImpl(CMGroup.SEQUENCE, 1, CMContentImpl.UNBOUNDED);
-		// OPTION
-		CMNode dec = collection.getNamedItem(HTML40Namespace.ElementName.OPTION);
-		if (dec != null)
-			content.appendChild(dec);
-	}
-
-	/**
-	 * (OPTION)+
-	 * @return int; Should be one of ANY, EMPTY, ELEMENT, MIXED, PCDATA, CDATA,
-	 * those are defined in CMElementDeclaration.
-	 */
-	public int getContentType() {
-		return CMElementDeclaration.ELEMENT;
-	}
-
-	/**
-	 * Name of complex type definition.
-	 * Each singleton must know its own name.
-	 * All names should be defined in
-	 * {@link <code>ComplexTypeDefinitionFactory</code>} as constants.<br>
-	 * @return java.lang.String
-	 */
-	public String getTypeName() {
-		return ComplexTypeDefinitionFactory.CTYPE_OPTION_CONTAINER;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/CtdParamContainer.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/CtdParamContainer.java
deleted file mode 100644
index a82afb8..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/CtdParamContainer.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.wst.html.core.internal.contentmodel;
-
-
-
-import org.eclipse.wst.html.core.internal.provisional.HTML40Namespace;
-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;
-
-/**
- * PARAM container.  For OBJECT and APPLET.
- */
-final class CtdParamContainer extends ComplexTypeDefinition {
-
-	/**
-	 * @param elementCollection ElementCollection
-	 */
-	public CtdParamContainer(ElementCollection elementCollection) {
-		super(elementCollection);
-	}
-
-	/**
-	 * (PARAM | %flow;)*.
-	 */
-	protected void createContent() {
-		if (content != null)
-			return; // already created.
-		if (collection == null)
-			return;
-
-		// ( | )*
-		content = new CMGroupImpl(CMGroup.CHOICE, 0, CMContentImpl.UNBOUNDED);
-		// PARAM
-		CMNode param = collection.getNamedItem(HTML40Namespace.ElementName.PARAM);
-		if (param != null)
-			content.appendChild(param);
-		// %flow;
-		CMGroupImpl flows = new CMGroupImpl(CMGroup.CHOICE, 1, 1);
-		if (flows == null)
-			return;
-		collection.getInline(flows);
-		content.appendChild(flows);
-	}
-
-	/**
-	 * (PARAM | %flow;)*.
-	 * Because %flow; contains #PCDATA, the type is MIXED.
-	 * @return int; Should be one of ANY, EMPTY, ELEMENT, MIXED, PCDATA, CDATA,
-	 * those are defined in CMElementDeclaration.
-	 */
-	public int getContentType() {
-		return CMElementDeclaration.MIXED;
-	}
-
-	/**
-	 * @return java.lang.String
-	 */
-	public String getTypeName() {
-		return ComplexTypeDefinitionFactory.CTYPE_PARAM_CONTAINER;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/CtdSelect.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/CtdSelect.java
deleted file mode 100644
index b7f6c09..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/CtdSelect.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.wst.html.core.internal.contentmodel;
-
-
-
-import org.eclipse.wst.html.core.internal.provisional.HTML40Namespace;
-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;
-
-/**
- * for SELECT.
- */
-final class CtdSelect extends ComplexTypeDefinition {
-
-	/**
-	 * @param elementCollection ElementCollection
-	 */
-	public CtdSelect(ElementCollection elementCollection) {
-		super(elementCollection);
-		primaryCandidateName = HTML40Namespace.ElementName.OPTION;
-	}
-
-	/**
-	 * (OPTGROUP | OPTION)+.
-	 */
-	protected void createContent() {
-		if (content != null)
-			return; // already created.
-		if (collection == null)
-			return;
-
-		// ( | )+
-		content = new CMGroupImpl(CMGroup.CHOICE, 1, CMContentImpl.UNBOUNDED);
-		// OPTGROUP
-		CMNode dec = collection.getNamedItem(HTML40Namespace.ElementName.OPTGROUP);
-		if (dec != null)
-			content.appendChild(dec);
-		// OPTION
-		dec = collection.getNamedItem(HTML40Namespace.ElementName.OPTION);
-		if (dec != null)
-			content.appendChild(dec);
-	}
-
-	/**
-	 * (OPTGROUP | OPTION)+.
-	 * @return int; Should be one of ANY, EMPTY, ELEMENT, MIXED, PCDATA, CDATA,
-	 * those are defined in CMElementDeclaration.
-	 */
-	public int getContentType() {
-		return CMElementDeclaration.ELEMENT;
-	}
-
-	/**
-	 * @return java.lang.String
-	 */
-	public String getTypeName() {
-		return ComplexTypeDefinitionFactory.CTYPE_SELECT;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/CtdTable.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/CtdTable.java
deleted file mode 100644
index d056c8e..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/CtdTable.java
+++ /dev/null
@@ -1,140 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this 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.core.internal.contentmodel;
-
-
-
-import org.eclipse.wst.html.core.internal.provisional.HTML40Namespace;
-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;
-
-/**
- * for TABLE.
- * (CAPTION?, (COL*|COLGROUP*), THEAD?, TFOOT?, TBODY+, TR+)
- */
-final class CtdTable extends ComplexTypeDefinition {
-
-	/**
-	 * @param elementCollection ElementCollection
-	 */
-	public CtdTable(ElementCollection elementCollection) {
-		super(elementCollection);
-		primaryCandidateName = HTML40Namespace.ElementName.TBODY;
-	}
-
-	/**
-	 * (CAPTION?, (COL*|COLGROUP*), THEAD?, TFOOT?, TBODY+)
-	 * --> ((CAPTION)?, ((COL)* | (COLGROUP)*), (THEAD)?, (TFOOT)?, (TBODY)+, (TR)+)
-	 */
-	protected void createContent() {
-		if (content != null)
-			return; // already created.
-		if (collection == null)
-			return;
-
-		// ( , , , ,)
-		content = new CMGroupImpl(CMGroup.SEQUENCE, 1, 1);
-
-		// (CAPTION)?
-		//     ( )?
-		CMGroupImpl wrap = new CMGroupImpl(CMGroup.SEQUENCE, 0, 1);
-		if (wrap == null)
-			return;
-		content.appendChild(wrap);
-		//     CAPTION
-		CMNode dec = collection.getNamedItem(HTML40Namespace.ElementName.CAPTION);
-		if (dec != null)
-			wrap.appendChild(dec);
-
-		// ((COL)* | (COLGROUP)*)
-		//     ( | )
-		CMGroupImpl group = new CMGroupImpl(CMGroup.CHOICE, 1, 1);
-		if (group == null)
-			return;
-		content.appendChild(group);
-		//         (COL)*
-		wrap = new CMGroupImpl(CMGroup.SEQUENCE, 0, CMContentImpl.UNBOUNDED);
-		if (wrap == null)
-			return;
-		group.appendChild(wrap);
-		dec = collection.getNamedItem(HTML40Namespace.ElementName.COL);
-		if (dec != null)
-			wrap.appendChild(dec);
-		//         (COLGROUP)*
-		wrap = new CMGroupImpl(CMGroup.SEQUENCE, 0, CMContentImpl.UNBOUNDED);
-		if (wrap == null)
-			return;
-		group.appendChild(wrap);
-		dec = collection.getNamedItem(HTML40Namespace.ElementName.COLGROUP);
-		if (dec != null)
-			wrap.appendChild(dec);
-
-		// (THEAD)?
-		wrap = new CMGroupImpl(CMGroup.SEQUENCE, 0, 1);
-		if (wrap == null)
-			return;
-		content.appendChild(wrap);
-		dec = collection.getNamedItem(HTML40Namespace.ElementName.THEAD);
-		if (dec != null)
-			wrap.appendChild(dec);
-
-		// (TFOOT)?
-		wrap = new CMGroupImpl(CMGroup.SEQUENCE, 0, 1);
-		if (wrap == null)
-			return;
-		content.appendChild(wrap);
-		dec = collection.getNamedItem(HTML40Namespace.ElementName.TFOOT);
-		if (dec != null)
-			wrap.appendChild(dec);
-
-		// (TBODY)+
-		// TBODY has optional start and end tags
-		wrap = new CMGroupImpl(CMGroup.SEQUENCE, 0, CMContentImpl.UNBOUNDED);
-		if (wrap == null)
-			return;
-		content.appendChild(wrap);
-		dec = collection.getNamedItem(HTML40Namespace.ElementName.TBODY);
-		if (dec != null)
-			wrap.appendChild(dec);
-
-		// https://bugs.eclipse.org/bugs/show_bug.cgi?id=96101
-		// TBODY start and end tag are optional, so TR should be allowed here
-		// (TR)+
-		wrap = new CMGroupImpl(CMGroup.SEQUENCE, 1, CMContentImpl.UNBOUNDED);
-		if (wrap == null)
-			return;
-		content.appendChild(wrap);
-		dec = collection.getNamedItem(HTML40Namespace.ElementName.TR);
-		if (dec != null)
-			wrap.appendChild(dec);
-	}
-
-	/**
-	 * ((FRAMESET | FRAME)+ & NOFRAMES?)
-	 * @return int; Should be one of ANY, EMPTY, ELEMENT, MIXED, PCDATA, CDATA,
-	 * those are defined in CMElementDeclaration.
-	 */
-	public int getContentType() {
-		return CMElementDeclaration.ELEMENT;
-	}
-
-	/**
-	 * Name of complex type definition.
-	 * Each singleton must know its own name.
-	 * All names should be defined in
-	 * {@link <code>ComplexTypeDefinitionFactory</code>} as constants.<br>
-	 * @return java.lang.String
-	 */
-	public String getTypeName() {
-		return ComplexTypeDefinitionFactory.CTYPE_TABLE;
-	}
-}
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/CtdTableCellContainer.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/CtdTableCellContainer.java
deleted file mode 100644
index 40ddbc5..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/CtdTableCellContainer.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.wst.html.core.internal.contentmodel;
-
-
-
-import org.eclipse.wst.html.core.internal.provisional.HTML40Namespace;
-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;
-
-/**
- * Table cell container.
- * (TH | TD)+
- */
-final class CtdTableCellContainer extends ComplexTypeDefinition {
-
-	/**
-	 * @param elementCollection ElementCollection
-	 */
-	public CtdTableCellContainer(ElementCollection elementCollection) {
-		super(elementCollection);
-		primaryCandidateName = HTML40Namespace.ElementName.TD;
-	}
-
-	/**
-	 * (TH | TD)+.
-	 */
-	protected void createContent() {
-		if (content != null)
-			return; // already created.
-		if (collection == null)
-			return;
-
-		// ( )+
-		content = new CMGroupImpl(CMGroup.CHOICE, 1, CMContentImpl.UNBOUNDED);
-		// TH
-		CMNode dec = collection.getNamedItem(HTML40Namespace.ElementName.TH);
-		if (dec != null)
-			content.appendChild(dec);
-		// TD
-		dec = collection.getNamedItem(HTML40Namespace.ElementName.TD);
-		if (dec != null)
-			content.appendChild(dec);
-	}
-
-	/**
-	 * (TH | TD)+
-	 * @return int; Should be one of ANY, EMPTY, ELEMENT, MIXED, PCDATA, CDATA,
-	 * those are defined in CMElementDeclaration.
-	 */
-	public int getContentType() {
-		return CMElementDeclaration.ELEMENT;
-	}
-
-	/**
-	 * Name of complex type definition.
-	 * Each singleton must know its own name.
-	 * All names should be defined in
-	 * {@link <code>ComplexTypeDefinitionFactory</code>} as constants.<br>
-	 * @return java.lang.String
-	 */
-	public String getTypeName() {
-		return ComplexTypeDefinitionFactory.CTYPE_TCELL_CONTAINER;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/CtdTrContainer.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/CtdTrContainer.java
deleted file mode 100644
index 53adfc6..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/CtdTrContainer.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.wst.html.core.internal.contentmodel;
-
-
-
-import org.eclipse.wst.html.core.internal.provisional.HTML40Namespace;
-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;
-
-/**
- * Table record container.
- * (TR)+
- */
-final class CtdTrContainer extends ComplexTypeDefinition {
-
-	/**
-	 * @param elementCollection ElementCollection
-	 */
-	public CtdTrContainer(ElementCollection elementCollection) {
-		super(elementCollection);
-		primaryCandidateName = HTML40Namespace.ElementName.TR;
-	}
-
-	/**
-	 * (TR)+.
-	 */
-	protected void createContent() {
-		if (content != null)
-			return; // already created.
-		if (collection == null)
-			return;
-
-		// (TR)+
-		content = new CMGroupImpl(CMGroup.SEQUENCE, 1, CMContentImpl.UNBOUNDED);
-		CMNode tr = collection.getNamedItem(HTML40Namespace.ElementName.TR);
-		if (tr != null)
-			content.appendChild(tr);
-	}
-
-	/**
-	 * ELEMENT content.<br>
-	 * @return int; Should be one of ANY, EMPTY, ELEMENT, MIXED, PCDATA, CDATA,
-	 * those are defined in CMElementDeclaration.
-	 */
-	public int getContentType() {
-		return CMElementDeclaration.ELEMENT;
-	}
-
-	/**
-	 * Name of complex type definition.
-	 * Each singleton must know its own name.
-	 * All names should be defined in
-	 * {@link <code>ComplexTypeDefinitionFactory</code>} as constants.<br>
-	 * @return java.lang.String
-	 */
-	public String getTypeName() {
-		return ComplexTypeDefinitionFactory.CTYPE_TR_CONTAINER;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/DeclCollection.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/DeclCollection.java
deleted file mode 100644
index e7ddee7..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/DeclCollection.java
+++ /dev/null
@@ -1,237 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this 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.core.internal.contentmodel;
-
-
-
-import java.util.HashMap;
-import java.util.Iterator;
-
-import org.eclipse.wst.xml.core.internal.contentmodel.CMNamedNodeMap;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMNode;
-
-/**
- */
-abstract class DeclCollection implements CMNamedNodeMap {
-
-
-	protected class DualMap {
-		public DualMap() {
-			super();
-		}
-
-		public DualMap(Object[] objects) {
-			super();
-			initialize(objects);
-		}
-
-		public int size() {
-			return table.length;
-		}
-
-		public Object getValue(int key) {
-			if (!isValidIndex(key))
-				return null;
-			return table[key];
-		}
-
-		public int getKey(Object value) {
-			Integer keyObj = (Integer) map.get(value);
-			if (keyObj == null)
-				return ID_UNKNOWN;
-			return keyObj.intValue();
-		}
-
-		protected void initialize(Object[] objects) {
-			if (objects == null)
-				return;
-			table = objects;
-			map = new HashMap();
-			for (int key = 0; key < objects.length; key++) {
-				Object value = table[key];
-				map.put(value, new Integer(key));
-			}
-		}
-
-		private Object[] table = null;
-		private HashMap map = null;
-
-		private boolean isValidIndex(int index) {
-			return index >= 0 && index < table.length;
-		}
-	}
-
-	protected class TolerantStringDualMap extends DualMap {
-		public TolerantStringDualMap(String[] names) {
-			super();
-			Object[] objects = new Object[names.length];
-			for (int i = 0; i < names.length; i++) {
-				objects[i] = makeCanonicalForm(names[i]);
-			}
-			initialize(objects);
-		}
-
-		public int getKey(Object value) {
-			try {
-				String name = (String) value;
-				return super.getKey(makeCanonicalForm(name));
-			}
-			catch (ClassCastException e) {
-				return ID_UNKNOWN;
-			}
-		}
-
-		private String makeCanonicalForm(String raw) {
-			return raw.toUpperCase();
-		}
-	}
-
-	private class DeclIterator implements Iterator {
-		public DeclIterator() {
-			maxid = fDecls.length - 1;
-		}
-
-		public boolean hasNext() {
-			return id < maxid;
-		}
-
-		public Object next() {
-			if (!hasNext())
-				return null;
-			return item(++id);
-		}
-
-		public void remove() { /* nothing should be done. */
-		}
-
-		private int id = -1;
-		private int maxid = -1;
-	}
-
-	CMNode[] fDecls = null;
-	protected final static boolean STRICT_CASE = false;
-	protected final static boolean TOLERANT_CASE = true;
-	protected final static int ID_UNKNOWN = -1;
-	private DualMap fMap = null;
-
-	/**
-	 */
-	public DeclCollection(String[] names, boolean tolerant) {
-		super();
-		fDecls = new CMNode[names.length];
-		if (tolerant) {
-			fMap = new TolerantStringDualMap(names);
-		}
-		else {
-			fMap = new DualMap(names);
-		}
-	}
-
-	/**
-	 * @return org.eclipse.wst.xml.core.internal.contentmodel.CMNode
-	 * @param id int
-	 */
-	protected abstract CMNode create(String name);
-
-	/**
-	 */
-	public CMNamedNodeMap getDeclarations(String[] names) {
-		CMNamedNodeMapImpl map = new CMNamedNodeMapImpl();
-		for (int i = 0; i < names.length; i++) {
-			String name = names[i];
-			CMNode node = getNamedItem(name);
-			if (node == null)
-				continue;
-			map.putNamedItem(name, node);
-		}
-		return map;
-	}
-
-	/**
-	 * @param names java.util.Iterator
-	 */
-	public void getDeclarations(CMGroupImpl group, Iterator names) {
-		while (names.hasNext()) {
-			String entityName = (String) names.next();
-			CMNode dec = getNamedItem(entityName);
-			if (dec != null)
-				group.appendChild(dec);
-		}
-	}
-
-	/**
-	 * Map name to id.
-	 * @return int
-	 * @param name java.lang.String
-	 */
-	protected int getID(String name) {
-		return fMap.getKey(name);
-	}
-
-	/**
-	 * getLength method
-	 * @return int
-	 */
-	public int getLength() {
-		return fDecls.length;
-	}
-
-	/**
-	 * @return java.lang.String
-	 * @param id int
-	 */
-	protected String getName(int id) {
-		return (String) fMap.getValue(id);
-	}
-
-	/**
-	 * getNamedItem method
-	 * @return CMNode
-	 * @param name java.lang.String
-	 */
-	public CMNode getNamedItem(String name) {
-		int id = getID(name);
-		if (!isValidID(id))
-			return null;
-		return item(id);
-	}
-
-	/**
-	 * @return boolean
-	 * @param id int
-	 */
-	private boolean isValidID(int id) {
-		return id >= 0 && id < fDecls.length;
-	}
-
-	/**
-	 * item method
-	 * @return CMNode
-	 * @param index int
-	 */
-	public CMNode item(int index) {
-		if (!isValidID(index))
-			return null;
-		CMNode decl = fDecls[index];
-		if (decl != null)
-			return decl; // already exist.
-
-		decl = create(getName(index));
-		fDecls[index] = decl;
-		return decl;
-	}
-
-	/**
-	 */
-	public Iterator iterator() {
-		return new DeclIterator();
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/ElementCollection.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/ElementCollection.java
deleted file mode 100644
index 680bd39..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/ElementCollection.java
+++ /dev/null
@@ -1,881 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this 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.core.internal.contentmodel;
-
-
-
-import java.lang.reflect.Field;
-import java.util.Arrays;
-import java.util.Collection;
-import java.util.Vector;
-
-import org.eclipse.wst.xml.core.internal.contentmodel.CMNode;
-
-/**
- * Factory for element declarations.
- */
-final class ElementCollection extends DeclCollection implements org.eclipse.wst.html.core.internal.provisional.HTML40Namespace.ElementName {
-
-
-	// Element IDs
-	private static class Ids {
-		public static final int ID_A = 0;
-		public static final int ID_ABBR = 1;
-		public static final int ID_ACRONYM = 2;
-		public static final int ID_ADDRESS = 3;
-		public static final int ID_APPLET = 4;
-		public static final int ID_AREA = 5;
-		public static final int ID_B = 6;
-		public static final int ID_BASE = 7;
-		public static final int ID_BASEFONT = 8;
-		public static final int ID_BDO = 9;
-		public static final int ID_BIG = 10;
-		public static final int ID_BLINK = 11;
-		public static final int ID_BLOCKQUOTE = 12;
-		public static final int ID_BODY = 13;
-		public static final int ID_BR = 14;
-		public static final int ID_BUTTON = 15;
-		public static final int ID_CAPTION = 16;
-		public static final int ID_CENTER = 17;
-		public static final int ID_CITE = 18;
-		public static final int ID_CODE = 19;
-		public static final int ID_COL = 20;
-		public static final int ID_COLGROUP = 21;
-		public static final int ID_DD = 22;
-		public static final int ID_DEL = 23;
-		public static final int ID_DFN = 24;
-		public static final int ID_DIR = 25;
-		public static final int ID_DIV = 26;
-		public static final int ID_DL = 27;
-		public static final int ID_DT = 28;
-		public static final int ID_EM = 29;
-		public static final int ID_EMBED = 30;
-		public static final int ID_FIELDSET = 31;
-		public static final int ID_FONT = 32;
-		public static final int ID_FORM = 33;
-		public static final int ID_FRAME = 34;
-		public static final int ID_FRAMESET = 35;
-		public static final int ID_H1 = 36;
-		public static final int ID_H2 = 37;
-		public static final int ID_H3 = 38;
-		public static final int ID_H4 = 39;
-		public static final int ID_H5 = 40;
-		public static final int ID_H6 = 41;
-		public static final int ID_HEAD = 42;
-		public static final int ID_HR = 43;
-		public static final int ID_HTML = 44;
-		public static final int ID_I = 45;
-		public static final int ID_IFRAME = 46;
-		public static final int ID_IMG = 47;
-		public static final int ID_INPUT = 48;
-		public static final int ID_INS = 49;
-		public static final int ID_ISINDEX = 50;
-		public static final int ID_KBD = 51;
-		public static final int ID_LABEL = 52;
-		public static final int ID_LEGEND = 53;
-		public static final int ID_LI = 54;
-		public static final int ID_LINK = 55;
-		public static final int ID_MAP = 56;
-		public static final int ID_MENU = 57;
-		public static final int ID_META = 58;
-		public static final int ID_NOEMBED = 59;
-		public static final int ID_NOFRAMES = 60;
-		public static final int ID_NOSCRIPT = 61;
-		public static final int ID_OBJECT = 62;
-		public static final int ID_OL = 63;
-		public static final int ID_OPTGROUP = 64;
-		public static final int ID_OPTION = 65;
-		public static final int ID_P = 66;
-		public static final int ID_PARAM = 67;
-		public static final int ID_PRE = 68;
-		public static final int ID_Q = 69;
-		public static final int ID_S = 70;
-		public static final int ID_SAMP = 71;
-		public static final int ID_SCRIPT = 72;
-		public static final int ID_SELECT = 73;
-		public static final int ID_SMALL = 74;
-		public static final int ID_SPAN = 75;
-		public static final int ID_STRIKE = 76;
-		public static final int ID_STRONG = 77;
-		public static final int ID_STYLE = 78;
-		public static final int ID_SUB = 79;
-		public static final int ID_SUP = 80;
-		public static final int ID_TABLE = 81;
-		public static final int ID_TBODY = 82;
-		public static final int ID_TD = 83;
-		public static final int ID_TEXTAREA = 84;
-		public static final int ID_TFOOT = 85;
-		public static final int ID_TH = 86;
-		public static final int ID_THEAD = 87;
-		public static final int ID_TITLE = 88;
-		public static final int ID_TR = 89;
-		public static final int ID_TT = 90;
-		public static final int ID_U = 91;
-		public static final int ID_UL = 92;
-		public static final int ID_VAR = 93;
-		public static final int ID_MARQUEE = 94;
-		public static final int ID_SSI_CONFIG = 95;
-		public static final int ID_SSI_ECHO = 96;
-		public static final int ID_SSI_EXEC = 97;
-		public static final int ID_SSI_FSIZE = 98;
-		public static final int ID_SSI_FLASTMOD = 99;
-		public static final int ID_SSI_INCLUDE = 100;
-		public static final int ID_SSI_PRINTENV = 101;
-		public static final int ID_SSI_SET = 102;
-		// <<D205513
-		public static final int ID_BGSOUND = 103;
-		public static final int ID_NOBR = 104;
-		public static final int ID_WBR = 105;
-
-		// D205513
-
-		public static int getNumOfIds() {
-			if (numofids != -1)
-				return numofids;
-
-			// NOTE: If the reflection is too slow, this method should
-			// just return the literal value, like 105.
-			// -- 5/25/2001
-			Class clazz = Ids.class;
-			Field[] fields = clazz.getFields();
-			numofids = 0;
-			for (int i = 0; i < fields.length; i++) {
-				String name = fields[i].getName();
-				if (name.startsWith("ID_"))//$NON-NLS-1$
-					numofids++;
-			}
-			return numofids;
-		}
-
-		// chache the result of the reflection.
-		private static int numofids = -1;
-	}
-
-	/** %fontstyle;. TT | I | B | U | S | STRIKE | BIG | SMALL | BLINK */
-	private static final String[] FONTSTYLE = {TT, I, B, U, S, STRIKE, BIG, SMALL, BLINK};
-	/** %formctl;. INPUT | SELECT | TEXTAREA | LABEL | BUTTON */
-	private static final String[] FORMCTL = {INPUT, SELECT, TEXTAREA, LABEL, BUTTON};
-	/** %phrase;.
-	 * EM | STRONG | DFN | CODE | SAMP | KBD | VAR | CITE | ABBR | ACRONYM
-	 */
-	private static final String[] PHRASE = {EM, STRONG, DFN, CODE, SAMP, KBD, VAR, CITE, ABBR, ACRONYM};
-	/** %special;.
-	 * A | IMG | APPLET | OBJECT | FONT | BASEFONT | BR | SCRIPT |
-	 * MAP | Q | SUB | SUP | SPAN | BDO | IFRAME | EMBED | MARQUEE |
-	 * D2W | SUBMIT
-	 * WBR | NOBR | BGSOUND
-	 */
-	private static final String[] SPECIAL = {A, IMG, APPLET, OBJECT, FONT, BASEFONT, BR, WBR, // D205513
-				SCRIPT, MAP, Q, SUB, SUP, SPAN, BDO, IFRAME, EMBED, BGSOUND, // D205513
-				MARQUEE, NOBR // D205513
-	};
-	/** %heading;. H[1-6] */
-	private static final String[] HEADING = {H1, H2, H3, H4, H5, H6};
-	/** %list;. UL | OL | DIR | MENU */
-	private static final String[] LIST = {UL, OL, DIR, MENU};
-	/** %preformatted;. PRE */
-	private static final String[] PREFORMATTED = {PRE};
-	private AttributeCollection attributeCollection = null;
-	private static String[] fNames = null;
-
-	static {
-		fNames = new String[Ids.getNumOfIds()];
-		fNames[Ids.ID_A] = A;
-		fNames[Ids.ID_ABBR] = ABBR;
-		fNames[Ids.ID_ACRONYM] = ACRONYM;
-		fNames[Ids.ID_ADDRESS] = ADDRESS;
-		fNames[Ids.ID_APPLET] = APPLET;
-		fNames[Ids.ID_AREA] = AREA;
-		fNames[Ids.ID_B] = B;
-		fNames[Ids.ID_BASE] = BASE;
-		fNames[Ids.ID_BASEFONT] = BASEFONT;
-		fNames[Ids.ID_BDO] = BDO;
-		fNames[Ids.ID_BIG] = BIG;
-		fNames[Ids.ID_BLINK] = BLINK;
-		fNames[Ids.ID_BLOCKQUOTE] = BLOCKQUOTE;
-		fNames[Ids.ID_BODY] = BODY;
-		fNames[Ids.ID_BR] = BR;
-		fNames[Ids.ID_BUTTON] = BUTTON;
-		fNames[Ids.ID_CAPTION] = CAPTION;
-		fNames[Ids.ID_CENTER] = CENTER;
-		fNames[Ids.ID_CITE] = CITE;
-		fNames[Ids.ID_CODE] = CODE;
-		fNames[Ids.ID_COL] = COL;
-		fNames[Ids.ID_COLGROUP] = COLGROUP;
-		fNames[Ids.ID_DD] = DD;
-		fNames[Ids.ID_DEL] = DEL;
-		fNames[Ids.ID_DFN] = DFN;
-		fNames[Ids.ID_DIR] = DIR;
-		fNames[Ids.ID_DIV] = DIV;
-		fNames[Ids.ID_DL] = DL;
-		fNames[Ids.ID_DT] = DT;
-		fNames[Ids.ID_EM] = EM;
-		fNames[Ids.ID_EMBED] = EMBED;
-		fNames[Ids.ID_FIELDSET] = FIELDSET;
-		fNames[Ids.ID_FONT] = FONT;
-		fNames[Ids.ID_FORM] = FORM;
-		fNames[Ids.ID_FRAME] = FRAME;
-		fNames[Ids.ID_FRAMESET] = FRAMESET;
-		fNames[Ids.ID_H1] = H1;
-		fNames[Ids.ID_H2] = H2;
-		fNames[Ids.ID_H3] = H3;
-		fNames[Ids.ID_H4] = H4;
-		fNames[Ids.ID_H5] = H5;
-		fNames[Ids.ID_H6] = H6;
-		fNames[Ids.ID_HEAD] = HEAD;
-		fNames[Ids.ID_HR] = HR;
-		fNames[Ids.ID_HTML] = HTML;
-		fNames[Ids.ID_I] = I;
-		fNames[Ids.ID_IFRAME] = IFRAME;
-		fNames[Ids.ID_IMG] = IMG;
-		fNames[Ids.ID_INPUT] = INPUT;
-		fNames[Ids.ID_INS] = INS;
-		fNames[Ids.ID_ISINDEX] = ISINDEX;
-		fNames[Ids.ID_KBD] = KBD;
-		fNames[Ids.ID_LABEL] = LABEL;
-		fNames[Ids.ID_LEGEND] = LEGEND;
-		fNames[Ids.ID_LI] = LI;
-		fNames[Ids.ID_LINK] = LINK;
-		fNames[Ids.ID_MAP] = MAP;
-		fNames[Ids.ID_MENU] = MENU;
-		fNames[Ids.ID_META] = META;
-		fNames[Ids.ID_NOEMBED] = NOEMBED;
-		fNames[Ids.ID_NOFRAMES] = NOFRAMES;
-		fNames[Ids.ID_NOSCRIPT] = NOSCRIPT;
-		fNames[Ids.ID_OBJECT] = OBJECT;
-		fNames[Ids.ID_OL] = OL;
-		fNames[Ids.ID_OPTGROUP] = OPTGROUP;
-		fNames[Ids.ID_OPTION] = OPTION;
-		fNames[Ids.ID_P] = P;
-		fNames[Ids.ID_PARAM] = PARAM;
-		fNames[Ids.ID_PRE] = PRE;
-		fNames[Ids.ID_Q] = Q;
-		fNames[Ids.ID_S] = S;
-		fNames[Ids.ID_SAMP] = SAMP;
-		fNames[Ids.ID_SCRIPT] = SCRIPT;
-		fNames[Ids.ID_SELECT] = SELECT;
-		fNames[Ids.ID_SMALL] = SMALL;
-		fNames[Ids.ID_SPAN] = SPAN;
-		fNames[Ids.ID_STRIKE] = STRIKE;
-		fNames[Ids.ID_STRONG] = STRONG;
-		fNames[Ids.ID_STYLE] = STYLE;
-		fNames[Ids.ID_SUB] = SUB;
-		fNames[Ids.ID_SUP] = SUP;
-		fNames[Ids.ID_TABLE] = TABLE;
-		fNames[Ids.ID_TBODY] = TBODY;
-		fNames[Ids.ID_TD] = TD;
-		fNames[Ids.ID_TEXTAREA] = TEXTAREA;
-		fNames[Ids.ID_TFOOT] = TFOOT;
-		fNames[Ids.ID_TH] = TH;
-		fNames[Ids.ID_THEAD] = THEAD;
-		fNames[Ids.ID_TITLE] = TITLE;
-		fNames[Ids.ID_TR] = TR;
-		fNames[Ids.ID_TT] = TT;
-		fNames[Ids.ID_U] = U;
-		fNames[Ids.ID_UL] = UL;
-		fNames[Ids.ID_VAR] = VAR;
-		fNames[Ids.ID_MARQUEE] = MARQUEE;
-		fNames[Ids.ID_SSI_CONFIG] = SSI_CONFIG;
-		fNames[Ids.ID_SSI_ECHO] = SSI_ECHO;
-		fNames[Ids.ID_SSI_EXEC] = SSI_EXEC;
-		fNames[Ids.ID_SSI_FSIZE] = SSI_FSIZE;
-		fNames[Ids.ID_SSI_FLASTMOD] = SSI_FLASTMOD;
-		fNames[Ids.ID_SSI_INCLUDE] = SSI_INCLUDE;
-		fNames[Ids.ID_SSI_PRINTENV] = SSI_PRINTENV;
-		fNames[Ids.ID_SSI_SET] = SSI_SET;
-		fNames[Ids.ID_BGSOUND] = BGSOUND;
-		fNames[Ids.ID_NOBR] = NOBR;
-		fNames[Ids.ID_WBR] = WBR;
-	}
-
-	/**
-	 */
-	public ElementCollection(AttributeCollection collection) {
-		super(fNames, TOLERANT_CASE);
-		attributeCollection = collection;
-	}
-
-	/**
-	 * Actually creates HTMLElementDeclaration instance.
-	 * @return HTMLElementDeclaration
-	 */
-	protected CMNode create(String elementName) {
-		HTMLElemDeclImpl edec = null;
-
-		if (elementName.equalsIgnoreCase(A)) {
-			edec = new HedA(this);
-		}
-		else if (elementName.equalsIgnoreCase(ABBR)) {
-			edec = new HedPhrase(ABBR, this);
-
-		}
-		else if (elementName.equalsIgnoreCase(ACRONYM)) {
-			edec = new HedPhrase(ACRONYM, this);
-
-		}
-		else if (elementName.equalsIgnoreCase(ADDRESS)) {
-			edec = new HedADDRESS(this);
-
-		}
-		else if (elementName.equalsIgnoreCase(APPLET)) {
-			edec = new HedAPPLET(this);
-
-		}
-		else if (elementName.equalsIgnoreCase(AREA)) {
-			edec = new HedAREA(this);
-
-		}
-		else if (elementName.equalsIgnoreCase(B)) {
-			edec = new HedFontStyle(B, this);
-
-		}
-		else if (elementName.equalsIgnoreCase(BASE)) {
-			edec = new HedBASE(this);
-
-		}
-		else if (elementName.equalsIgnoreCase(BASEFONT)) {
-			edec = new HedBASEFONT(this);
-
-		}
-		else if (elementName.equalsIgnoreCase(BDO)) {
-			edec = new HedBDO(this);
-
-		}
-		else if (elementName.equalsIgnoreCase(BIG)) {
-			edec = new HedFontStyle(BIG, this);
-
-		}
-		else if (elementName.equalsIgnoreCase(BLINK)) {
-			edec = new HedFontStyle(BLINK, this);
-
-		}
-		else if (elementName.equalsIgnoreCase(BLOCKQUOTE)) {
-			edec = new HedBLOCKQUOTE(this);
-
-		}
-		else if (elementName.equalsIgnoreCase(BODY)) {
-			edec = new HedBODY(this);
-
-		}
-		else if (elementName.equalsIgnoreCase(BR)) {
-			edec = new HedBR(this);
-
-		}
-		else if (elementName.equalsIgnoreCase(BUTTON)) {
-			edec = new HedBUTTON(this);
-
-		}
-		else if (elementName.equalsIgnoreCase(CAPTION)) {
-			edec = new HedCAPTION(this);
-
-		}
-		else if (elementName.equalsIgnoreCase(CENTER)) {
-			edec = new HedCENTER(this);
-
-		}
-		else if (elementName.equalsIgnoreCase(CITE)) {
-			edec = new HedPhrase(CITE, this);
-
-		}
-		else if (elementName.equalsIgnoreCase(CODE)) {
-			edec = new HedPhrase(CODE, this);
-
-		}
-		else if (elementName.equalsIgnoreCase(COL)) {
-			edec = new HedCOL(this);
-
-		}
-		else if (elementName.equalsIgnoreCase(COLGROUP)) {
-			edec = new HedCOLGROUP(this);
-
-		}
-		else if (elementName.equalsIgnoreCase(DD)) {
-			edec = new HedDD(this);
-
-		}
-		else if (elementName.equalsIgnoreCase(DEL)) {
-			edec = new HedMarkChanges(DEL, this);
-
-		}
-		else if (elementName.equalsIgnoreCase(DFN)) {
-			edec = new HedPhrase(DFN, this);
-
-		}
-		else if (elementName.equalsIgnoreCase(DIR)) {
-			edec = new HedMENU(DIR, this);
-
-		}
-		else if (elementName.equalsIgnoreCase(DIV)) {
-			edec = new HedDIV(this);
-
-		}
-		else if (elementName.equalsIgnoreCase(DL)) {
-			edec = new HedDL(this);
-
-		}
-		else if (elementName.equalsIgnoreCase(DT)) {
-			edec = new HedDT(this);
-
-		}
-		else if (elementName.equalsIgnoreCase(EM)) {
-			edec = new HedPhrase(EM, this);
-
-		}
-		else if (elementName.equalsIgnoreCase(EMBED)) {
-			edec = new HedEMBED(this);
-
-		}
-		else if (elementName.equalsIgnoreCase(FIELDSET)) {
-			edec = new HedFIELDSET(this);
-
-		}
-		else if (elementName.equalsIgnoreCase(FONT)) {
-			edec = new HedFONT(this);
-
-		}
-		else if (elementName.equalsIgnoreCase(FORM)) {
-			edec = new HedFORM(this);
-
-		}
-		else if (elementName.equalsIgnoreCase(FRAME)) {
-			edec = new HedFRAME(this);
-
-		}
-		else if (elementName.equalsIgnoreCase(FRAMESET)) {
-			edec = new HedFRAMESET(this);
-
-		}
-		else if (elementName.equalsIgnoreCase(H1)) {
-			edec = new HedHeading(H1, this);
-
-		}
-		else if (elementName.equalsIgnoreCase(H2)) {
-			edec = new HedHeading(H2, this);
-
-		}
-		else if (elementName.equalsIgnoreCase(H3)) {
-			edec = new HedHeading(H3, this);
-
-		}
-		else if (elementName.equalsIgnoreCase(H4)) {
-			edec = new HedHeading(H4, this);
-
-		}
-		else if (elementName.equalsIgnoreCase(H5)) {
-			edec = new HedHeading(H5, this);
-
-		}
-		else if (elementName.equalsIgnoreCase(H6)) {
-			edec = new HedHeading(H6, this);
-
-		}
-		else if (elementName.equalsIgnoreCase(HEAD)) {
-			edec = new HedHEAD(this);
-
-		}
-		else if (elementName.equalsIgnoreCase(HR)) {
-			edec = new HedHR(this);
-
-		}
-		else if (elementName.equalsIgnoreCase(HTML)) {
-			edec = new HedHTML(this);
-
-		}
-		else if (elementName.equalsIgnoreCase(I)) {
-			edec = new HedFontStyle(I, this);
-
-		}
-		else if (elementName.equalsIgnoreCase(IFRAME)) {
-			edec = new HedIFRAME(this);
-
-		}
-		else if (elementName.equalsIgnoreCase(IMG)) {
-			edec = new HedIMG(this);
-
-		}
-		else if (elementName.equalsIgnoreCase(INPUT)) {
-			edec = new HedINPUT(this);
-
-		}
-		else if (elementName.equalsIgnoreCase(INS)) {
-			edec = new HedMarkChanges(INS, this);
-
-		}
-		else if (elementName.equalsIgnoreCase(ISINDEX)) {
-			edec = new HedISINDEX(this);
-
-		}
-		else if (elementName.equalsIgnoreCase(KBD)) {
-			edec = new HedPhrase(KBD, this);
-
-		}
-		else if (elementName.equalsIgnoreCase(LABEL)) {
-			edec = new HedLABEL(this);
-
-		}
-		else if (elementName.equalsIgnoreCase(LEGEND)) {
-			edec = new HedLEGEND(this);
-
-		}
-		else if (elementName.equalsIgnoreCase(LI)) {
-			edec = new HedLI(this);
-
-		}
-		else if (elementName.equalsIgnoreCase(LINK)) {
-			edec = new HedLINK(this);
-
-		}
-		else if (elementName.equalsIgnoreCase(MAP)) {
-			edec = new HedMAP(this);
-
-		}
-		else if (elementName.equalsIgnoreCase(MARQUEE)) {
-			edec = new HedMARQUEE(this);
-
-		}
-		else if (elementName.equalsIgnoreCase(MENU)) {
-			edec = new HedMENU(MENU, this);
-
-		}
-		else if (elementName.equalsIgnoreCase(META)) {
-			edec = new HedMETA(this);
-
-		}
-		else if (elementName.equalsIgnoreCase(NOEMBED)) {
-			edec = new HedNOEMBED(this);
-
-		}
-		else if (elementName.equalsIgnoreCase(NOFRAMES)) {
-			edec = new HedNOFRAMES(this);
-
-		}
-		else if (elementName.equalsIgnoreCase(NOSCRIPT)) {
-			edec = new HedNOSCRIPT(this);
-
-		}
-		else if (elementName.equalsIgnoreCase(OBJECT)) {
-			edec = new HedOBJECT(this);
-
-		}
-		else if (elementName.equalsIgnoreCase(OL)) {
-			edec = new HedOL(this);
-
-		}
-		else if (elementName.equalsIgnoreCase(OPTGROUP)) {
-			edec = new HedOPTGROUP(this);
-
-		}
-		else if (elementName.equalsIgnoreCase(OPTION)) {
-			edec = new HedOPTION(this);
-
-		}
-		else if (elementName.equalsIgnoreCase(P)) {
-			edec = new HedP(this);
-
-		}
-		else if (elementName.equalsIgnoreCase(PARAM)) {
-			edec = new HedPARAM(this);
-
-		}
-		else if (elementName.equalsIgnoreCase(PRE)) {
-			edec = new HedPRE(this);
-
-		}
-		else if (elementName.equalsIgnoreCase(Q)) {
-			edec = new HedQ(this);
-
-		}
-		else if (elementName.equalsIgnoreCase(S)) {
-			edec = new HedFontStyle(S, this);
-
-		}
-		else if (elementName.equalsIgnoreCase(SAMP)) {
-			edec = new HedPhrase(SAMP, this);
-
-		}
-		else if (elementName.equalsIgnoreCase(SCRIPT)) {
-			edec = new HedSCRIPT(this);
-
-		}
-		else if (elementName.equalsIgnoreCase(SELECT)) {
-			edec = new HedSELECT(this);
-
-		}
-		else if (elementName.equalsIgnoreCase(SMALL)) {
-			edec = new HedFontStyle(SMALL, this);
-
-		}
-		else if (elementName.equalsIgnoreCase(SPAN)) {
-			edec = new HedSPAN(this);
-
-		}
-		else if (elementName.equalsIgnoreCase(STRIKE)) {
-			edec = new HedFontStyle(STRIKE, this);
-
-		}
-		else if (elementName.equalsIgnoreCase(STRONG)) {
-			edec = new HedPhrase(STRONG, this);
-
-		}
-		else if (elementName.equalsIgnoreCase(STYLE)) {
-			edec = new HedSTYLE(this);
-
-		}
-		else if (elementName.equalsIgnoreCase(SUB)) {
-			edec = new HedScripts(SUB, this);
-
-		}
-		else if (elementName.equalsIgnoreCase(SUP)) {
-			edec = new HedScripts(SUP, this);
-
-		}
-		else if (elementName.equalsIgnoreCase(TABLE)) {
-			edec = new HedTABLE(this);
-
-		}
-		else if (elementName.equalsIgnoreCase(TBODY)) {
-			edec = new HedTableBody(TBODY, this);
-
-		}
-		else if (elementName.equalsIgnoreCase(TD)) {
-			edec = new HedTableCell(TD, this);
-
-		}
-		else if (elementName.equalsIgnoreCase(TEXTAREA)) {
-			edec = new HedTEXTAREA(this);
-
-		}
-		else if (elementName.equalsIgnoreCase(TFOOT)) {
-			edec = new HedTableBody(TFOOT, this);
-
-		}
-		else if (elementName.equalsIgnoreCase(TH)) {
-			edec = new HedTableCell(TH, this);
-
-		}
-		else if (elementName.equalsIgnoreCase(THEAD)) {
-			edec = new HedTableBody(THEAD, this);
-
-		}
-		else if (elementName.equalsIgnoreCase(TITLE)) {
-			edec = new HedTITLE(this);
-
-		}
-		else if (elementName.equalsIgnoreCase(TR)) {
-			edec = new HedTR(this);
-
-		}
-		else if (elementName.equalsIgnoreCase(TT)) {
-			edec = new HedFontStyle(TT, this);
-
-		}
-		else if (elementName.equalsIgnoreCase(U)) {
-			edec = new HedFontStyle(U, this);
-
-		}
-		else if (elementName.equalsIgnoreCase(UL)) {
-			edec = new HedUL(this);
-
-		}
-		else if (elementName.equalsIgnoreCase(VAR)) {
-			edec = new HedPhrase(VAR, this);
-
-		}
-		else if (elementName.equalsIgnoreCase(SSI_CONFIG)) {
-			edec = new HedSSIConfig(this);
-
-		}
-		else if (elementName.equalsIgnoreCase(SSI_ECHO)) {
-			edec = new HedSSIEcho(this);
-
-		}
-		else if (elementName.equalsIgnoreCase(SSI_EXEC)) {
-			edec = new HedSSIExec(this);
-
-		}
-		else if (elementName.equalsIgnoreCase(SSI_FSIZE)) {
-			edec = new HedSSIFsize(this);
-
-		}
-		else if (elementName.equalsIgnoreCase(SSI_FLASTMOD)) {
-			edec = new HedSSIFlastmod(this);
-
-		}
-		else if (elementName.equalsIgnoreCase(SSI_INCLUDE)) {
-			edec = new HedSSIInclude(this);
-
-		}
-		else if (elementName.equalsIgnoreCase(SSI_PRINTENV)) {
-			edec = new HedSSIPrintenv(this);
-
-		}
-		else if (elementName.equalsIgnoreCase(SSI_SET)) {
-			edec = new HedSSISet(this);
-
-		}
-		else if (elementName.equalsIgnoreCase(BGSOUND)) {
-			edec = new HedBGSOUND(this);
-
-		}
-		else if (elementName.equalsIgnoreCase(NOBR)) {
-			edec = new HedNOBR(this);
-
-		}
-		else if (elementName.equalsIgnoreCase(WBR)) {
-			edec = new HedWBR(this);
-
-		} // unknown
-		else {
-			// NOTE: We don't define the UNKNOWN element declaration.
-			// <code>null</code> for a declaration is a sign of
-			// the target element is unknown.
-			// -- 3/9/2001
-			edec = null;
-		}
-		return edec;
-	}
-
-	public AttributeCollection getAttributeCollection() {
-		return attributeCollection;
-	}
-
-	public final Collection getNamesOfBlock() {
-		// P, DL, DIV, CENTER, NOSCRIPT, NOFRAMES, BLOCKQUOTE, FORM, ISINDEX, HR,
-		// TABLE, FIELDSET, ADDRESS
-		String[] blockMisc = {P, DL, DIV, CENTER, NOSCRIPT, NOFRAMES, BLOCKQUOTE, FORM, ISINDEX, HR, TABLE, FIELDSET, ADDRESS};
-		Vector names = new Vector(Arrays.asList(blockMisc));
-		// %heading;
-		names.addAll(Arrays.asList(HEADING));
-		// %list;
-		names.addAll(Arrays.asList(LIST));
-		// %preformatted;
-		names.addAll(Arrays.asList(PREFORMATTED));
-
-		return names;
-	}
-
-	/**
-	 * %block;.
-	 * %block; is:
-	 * P | %heading; | %list; | %preformatted; | DL | DIV | CENTER |
-	 * NOSCRIPT | NOFRAMES | BLOCKQUOTE | FORM | ISINDEX | HR |
-	 * TABLE | FIELDSET | ADDRESS.<br>
-	 * @param group CMGroupImpl Return values.
-	 */
-	public final void getBlock(CMGroupImpl group) {
-		if (group == null)
-			return;
-		getDeclarations(group, getNamesOfBlock().iterator());
-	}
-
-	/**
-	 * Create element declarations and store them
-	 * into a <code>CMGroupImpl</code> instance.
-	 * @param group CMGroupImpl Return values.
-	 */
-	public final void getFlow(CMGroupImpl group) {
-		if (group == null)
-			return;
-		getBlock(group);
-		getInline(group);
-	}
-
-	/**
-	 * Create element declarations and store them into a <code>CMGroupImpl</code>
-	 * instance.<br>
-	 * @param group CMGroupImpl Return values.
-	 */
-	public final void getFontstyle(CMGroupImpl group) {
-		if (group == null)
-			return;
-		getDeclarations(group, Arrays.asList(FONTSTYLE).iterator());
-	}
-
-	/**
-	 * Create element declarations and store them into a <code>CMGroupImpl</code>
-	 * instance.<br>
-	 * @param group CMGroupImpl Return values.
-	 */
-	public final void getFormctrl(CMGroupImpl group) {
-		if (group == null)
-			return;
-		getDeclarations(group, Arrays.asList(FORMCTL).iterator());
-	}
-
-	/**
-	 * %heading;.
-	 * @param group CMGroupImpl Return values.
-	 */
-	public final void getHeading(CMGroupImpl group) {
-		if (group == null)
-			return;
-
-		getDeclarations(group, Arrays.asList(HEADING).iterator());
-	}
-
-	/**
-	 * Create element declarations and store them
-	 * into a <code>CMGroupImpl</code> instance.
-	 * @param group CMGroupImpl Return values.
-	 */
-	public final void getInline(CMGroupImpl group) {
-		if (group == null)
-			return;
-		getFontstyle(group);
-		getPhrase(group);
-		getSpecial(group);
-		getFormctrl(group);
-	}
-
-	/**
-	 * %list;.
-	 * @param group CMGroupImpl Return values.
-	 */
-	public final void getList(CMGroupImpl group) {
-		if (group == null)
-			return;
-
-		getDeclarations(group, Arrays.asList(LIST).iterator());
-	}
-
-	/**
-	 * Create element declarations and store them into a <code>CMGroupImpl</code>
-	 * instance.<br>
-	 * @param group CMGroupImpl Return values.
-	 */
-	public final void getPhrase(CMGroupImpl group) {
-		if (group == null)
-			return;
-		getDeclarations(group, Arrays.asList(PHRASE).iterator());
-	}
-
-	/**
-	 * %preformatted;
-	 * @param group CMGroupImpl Return values.
-	 */
-	public final void getPreformatted(CMGroupImpl group) {
-		if (group == null)
-			return;
-
-		getDeclarations(group, Arrays.asList(PREFORMATTED).iterator());
-	}
-
-	/**
-	 * Create element declarations and store them into a <code>CMGroupImpl</code>
-	 * instance.<br>
-	 * @param group CMGroupImpl Return values.
-	 */
-	public final void getSpecial(CMGroupImpl group) {
-		if (group == null)
-			return;
-		getDeclarations(group, Arrays.asList(SPECIAL).iterator());
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/EntityCollection.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/EntityCollection.java
deleted file mode 100644
index 350594f..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/EntityCollection.java
+++ /dev/null
@@ -1,837 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this 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.core.internal.contentmodel;
-
-
-
-import java.lang.reflect.Field;
-
-import org.eclipse.wst.xml.core.internal.contentmodel.CMNode;
-
-/**
- * Factory for entity declarations.
- */
-final class EntityCollection extends DeclCollection implements org.eclipse.wst.html.core.internal.provisional.HTML40Namespace.EntityName {
-
-
-	private static class Ids {
-		public static final int ID_AACUTE_L = 0;
-		public static final int ID_AACUTE_U = 1;
-		public static final int ID_ACIRC_L = 2;
-		public static final int ID_ACIRC_U = 3;
-		public static final int ID_ACUTE = 4;
-		public static final int ID_AELIG_L = 5;
-		public static final int ID_AELIG_U = 6;
-		public static final int ID_AGRAVE_L = 7;
-		public static final int ID_AGRAVE_U = 8;
-		public static final int ID_ALEFSYM = 9;
-		public static final int ID_ALPHA_L = 10;
-		public static final int ID_ALPHA_U = 11;
-		public static final int ID_AMP = 12;
-		public static final int ID_AND = 13;
-		public static final int ID_ANG = 14;
-		public static final int ID_ARING_L = 15;
-		public static final int ID_ARING_U = 16;
-		public static final int ID_ASYMP = 17;
-		public static final int ID_ATILDE_L = 18;
-		public static final int ID_ATILDE_U = 19;
-		public static final int ID_AUML_L = 20;
-		public static final int ID_AUML_U = 21;
-		public static final int ID_BDQUO = 22;
-		public static final int ID_BETA_L = 23;
-		public static final int ID_BETA_U = 24;
-		public static final int ID_BRVBAR = 25;
-		public static final int ID_BULL = 26;
-		public static final int ID_CAP = 27;
-		public static final int ID_CCEDIL_L = 28;
-		public static final int ID_CCEDIL_U = 29;
-		public static final int ID_CEDIL = 30;
-		public static final int ID_CENT = 31;
-		public static final int ID_CHI_L = 32;
-		public static final int ID_CHI_U = 33;
-		public static final int ID_CIRC = 34;
-		public static final int ID_CLUBS = 35;
-		public static final int ID_CONG = 36;
-		public static final int ID_COPY = 37;
-		public static final int ID_CRARR = 38;
-		public static final int ID_CUP = 39;
-		public static final int ID_CURREN = 40;
-		public static final int ID_DAGGER_L = 41;
-		public static final int ID_DAGGER_U = 42;
-		public static final int ID_DARR_L = 43;
-		public static final int ID_DARR_U = 44;
-		public static final int ID_DEG = 45;
-		public static final int ID_DELTA_L = 46;
-		public static final int ID_DELTA_U = 47;
-		public static final int ID_DIAMS = 48;
-		public static final int ID_DIVIDE = 49;
-		public static final int ID_EACUTE_L = 50;
-		public static final int ID_EACUTE_U = 51;
-		public static final int ID_ECIRC_L = 52;
-		public static final int ID_ECIRC_U = 53;
-		public static final int ID_EGRAVE_L = 54;
-		public static final int ID_EGRAVE_U = 55;
-		public static final int ID_EMPTY = 56;
-		public static final int ID_EMSP = 57;
-		public static final int ID_ENSP = 58;
-		public static final int ID_EPSILON_L = 59;
-		public static final int ID_EPSILON_U = 60;
-		public static final int ID_EQUIV = 61;
-		public static final int ID_ETA_L = 62;
-		public static final int ID_ETA_U = 63;
-		public static final int ID_ETH_L = 64;
-		public static final int ID_ETH_U = 65;
-		public static final int ID_EUML_L = 66;
-		public static final int ID_EUML_U = 67;
-		public static final int ID_EURO = 68;
-		public static final int ID_EXIST = 69;
-		public static final int ID_FNOF = 70;
-		public static final int ID_FORALL = 71;
-		public static final int ID_FRAC12 = 72;
-		public static final int ID_FRAC14 = 73;
-		public static final int ID_FRAC34 = 74;
-		public static final int ID_FRASL = 75;
-		public static final int ID_GAMMA_L = 76;
-		public static final int ID_GAMMA_U = 77;
-		public static final int ID_GE = 78;
-		public static final int ID_GT = 79;
-		public static final int ID_HARR_L = 80;
-		public static final int ID_HARR_U = 81;
-		public static final int ID_HEARTS = 82;
-		public static final int ID_HELLIP = 83;
-		public static final int ID_IACUTE_L = 84;
-		public static final int ID_IACUTE_U = 85;
-		public static final int ID_ICIRC_L = 86;
-		public static final int ID_ICIRC_U = 87;
-		public static final int ID_IEXCL = 88;
-		public static final int ID_IGRAVE_L = 89;
-		public static final int ID_IGRAVE_U = 90;
-		public static final int ID_IMAGE = 91;
-		public static final int ID_INFIN = 92;
-		public static final int ID_INT = 93;
-		public static final int ID_IOTA_L = 94;
-		public static final int ID_IOTA_U = 95;
-		public static final int ID_IQUEST = 96;
-		public static final int ID_ISIN = 97;
-		public static final int ID_IUML_L = 98;
-		public static final int ID_IUML_U = 99;
-		public static final int ID_KAPPA_L = 100;
-		public static final int ID_KAPPA_U = 101;
-		public static final int ID_LAMBDA_L = 102;
-		public static final int ID_LAMBDA_U = 103;
-		public static final int ID_LANG = 104;
-		public static final int ID_LAQUO = 105;
-		public static final int ID_LARR_L = 106;
-		public static final int ID_LARR_U = 107;
-		public static final int ID_LCEIL = 108;
-		public static final int ID_LDQUO = 109;
-		public static final int ID_LE = 110;
-		public static final int ID_LFLOOR = 111;
-		public static final int ID_LOWAST = 112;
-		public static final int ID_LOZ = 113;
-		public static final int ID_LRM = 114;
-		public static final int ID_LSAQUO = 115;
-		public static final int ID_LSQUO = 116;
-		public static final int ID_LT = 117;
-		public static final int ID_MACR = 118;
-		public static final int ID_MDASH = 119;
-		public static final int ID_MICRO = 120;
-		public static final int ID_MIDDOT = 121;
-		public static final int ID_MINUS = 122;
-		public static final int ID_MU_L = 123;
-		public static final int ID_MU_U = 124;
-		public static final int ID_NABLA = 125;
-		public static final int ID_NBSP = 126;
-		public static final int ID_NDASH = 127;
-		public static final int ID_NE = 128;
-		public static final int ID_NI = 129;
-		public static final int ID_NOT = 130;
-		public static final int ID_NOTIN = 131;
-		public static final int ID_NSUB = 132;
-		public static final int ID_NTILDE_L = 133;
-		public static final int ID_NTILDE_U = 134;
-		public static final int ID_NU_L = 135;
-		public static final int ID_NU_U = 136;
-		public static final int ID_OACUTE_L = 137;
-		public static final int ID_OACUTE_U = 138;
-		public static final int ID_OCIRC_L = 139;
-		public static final int ID_OCIRC_U = 140;
-		public static final int ID_OELIG_L = 141;
-		public static final int ID_OELIG_U = 142;
-		public static final int ID_OGRAVE_L = 143;
-		public static final int ID_OGRAVE_U = 144;
-		public static final int ID_OLINE = 145;
-		public static final int ID_OMEGA_L = 146;
-		public static final int ID_OMEGA_U = 147;
-		public static final int ID_OMICRON_L = 148;
-		public static final int ID_OMICRON_U = 149;
-		public static final int ID_OPLUS = 150;
-		public static final int ID_OR = 151;
-		public static final int ID_ORDF = 152;
-		public static final int ID_ORDM = 153;
-		public static final int ID_OSLASH_L = 154;
-		public static final int ID_OSLASH_U = 155;
-		public static final int ID_OTILDE_L = 156;
-		public static final int ID_OTILDE_U = 157;
-		public static final int ID_OTIMES = 158;
-		public static final int ID_OUML_L = 159;
-		public static final int ID_OUML_U = 160;
-		public static final int ID_PARA = 161;
-		public static final int ID_PART = 162;
-		public static final int ID_PERMIL = 163;
-		public static final int ID_PERP = 164;
-		public static final int ID_PHI_L = 165;
-		public static final int ID_PHI_U = 166;
-		public static final int ID_PIV = 167;
-		public static final int ID_PI_L = 168;
-		public static final int ID_PI_U = 169;
-		public static final int ID_PLUSMN = 170;
-		public static final int ID_POUND = 171;
-		public static final int ID_PRIME_L = 172;
-		public static final int ID_PRIME_U = 173;
-		public static final int ID_PROD = 174;
-		public static final int ID_PROP = 175;
-		public static final int ID_PSI_L = 176;
-		public static final int ID_PSI_U = 177;
-		public static final int ID_QUOT = 178;
-		public static final int ID_RADIC = 179;
-		public static final int ID_RANG = 180;
-		public static final int ID_RAQUO = 181;
-		public static final int ID_RARR_L = 182;
-		public static final int ID_RARR_U = 183;
-		public static final int ID_RCEIL = 184;
-		public static final int ID_RDQUO = 185;
-		public static final int ID_REAL = 186;
-		public static final int ID_REG = 187;
-		public static final int ID_RFLOOR = 188;
-		public static final int ID_RHO_L = 189;
-		public static final int ID_RHO_U = 190;
-		public static final int ID_RLM = 191;
-		public static final int ID_RSAQUO = 192;
-		public static final int ID_RSQUO = 193;
-		public static final int ID_SBQUO = 194;
-		public static final int ID_SCARON_L = 195;
-		public static final int ID_SCARON_U = 196;
-		public static final int ID_SDOT = 197;
-		public static final int ID_SECT = 198;
-		public static final int ID_SHY = 199;
-		public static final int ID_SIGMAF = 200;
-		public static final int ID_SIGMA_L = 201;
-		public static final int ID_SIGMA_U = 202;
-		public static final int ID_SIM = 203;
-		public static final int ID_SPADES = 204;
-		public static final int ID_SUB = 205;
-		public static final int ID_SUBE = 206;
-		public static final int ID_SUM = 207;
-		public static final int ID_SUP = 208;
-		public static final int ID_SUP1 = 209;
-		public static final int ID_SUP2 = 210;
-		public static final int ID_SUP3 = 211;
-		public static final int ID_SUPE = 212;
-		public static final int ID_SZLIG = 213;
-		public static final int ID_TAU_L = 214;
-		public static final int ID_TAU_U = 215;
-		public static final int ID_THERE4 = 216;
-		public static final int ID_THETASYM = 217;
-		public static final int ID_THETA_L = 218;
-		public static final int ID_THETA_U = 219;
-		public static final int ID_THINSP = 220;
-		public static final int ID_THORN_L = 221;
-		public static final int ID_THORN_U = 222;
-		public static final int ID_TILDE = 223;
-		public static final int ID_TIMES = 224;
-		public static final int ID_TRADE = 225;
-		public static final int ID_UACUTE_L = 226;
-		public static final int ID_UACUTE_U = 227;
-		public static final int ID_UARR_L = 228;
-		public static final int ID_UARR_U = 229;
-		public static final int ID_UCIRC_L = 230;
-		public static final int ID_UCIRC_U = 231;
-		public static final int ID_UGRAVE_L = 232;
-		public static final int ID_UGRAVE_U = 233;
-		public static final int ID_UML = 234;
-		public static final int ID_UPSIH = 235;
-		public static final int ID_UPSILON_L = 236;
-		public static final int ID_UPSILON_U = 237;
-		public static final int ID_UUML_L = 238;
-		public static final int ID_UUML_U = 239;
-		public static final int ID_WEIERP = 240;
-		public static final int ID_XI_L = 241;
-		public static final int ID_XI_U = 242;
-		public static final int ID_YACUTE_L = 243;
-		public static final int ID_YACUTE_U = 244;
-		public static final int ID_YEN = 245;
-		public static final int ID_YUML_L = 246;
-		public static final int ID_YUML_U = 247;
-		public static final int ID_ZETA_L = 248;
-		public static final int ID_ZETA_U = 249;
-		public static final int ID_ZWJ = 250;
-		public static final int ID_ZWNJ = 251;
-
-		public static int getNumOfIds() {
-			if (numofids != -1)
-				return numofids;
-
-			// NOTE: If the reflection is too slow, this method should
-			// just return the literal value, like 252.
-			// -- 5/24/2001
-			Class clazz = Ids.class;
-			Field[] fields = clazz.getFields();
-			numofids = 0;
-			for (int i = 0; i < fields.length; i++) {
-				String name = fields[i].getName();
-				if (name.startsWith("ID_"))//$NON-NLS-1$
-					numofids++;
-			}
-			return numofids;
-		}
-
-		// chache the result of the reflection.
-		private static int numofids = -1;
-	}
-
-	private static String[] names = null;
-
-	static {
-		names = new String[Ids.getNumOfIds()];
-		names[Ids.ID_AACUTE_L] = AACUTE_L;
-		names[Ids.ID_AACUTE_U] = AACUTE_U;
-		names[Ids.ID_ACIRC_L] = ACIRC_L;
-		names[Ids.ID_ACIRC_U] = ACIRC_U;
-		names[Ids.ID_ACUTE] = ACUTE;
-		names[Ids.ID_AELIG_L] = AELIG_L;
-		names[Ids.ID_AELIG_U] = AELIG_U;
-		names[Ids.ID_AGRAVE_L] = AGRAVE_L;
-		names[Ids.ID_AGRAVE_U] = AGRAVE_U;
-		names[Ids.ID_ALEFSYM] = ALEFSYM;
-		names[Ids.ID_ALPHA_L] = ALPHA_L;
-		names[Ids.ID_ALPHA_U] = ALPHA_U;
-		names[Ids.ID_AMP] = AMP;
-		names[Ids.ID_AND] = AND;
-		names[Ids.ID_ANG] = ANG;
-		names[Ids.ID_ARING_L] = ARING_L;
-		names[Ids.ID_ARING_U] = ARING_U;
-		names[Ids.ID_ASYMP] = ASYMP;
-		names[Ids.ID_ATILDE_L] = ATILDE_L;
-		names[Ids.ID_ATILDE_U] = ATILDE_U;
-		names[Ids.ID_AUML_L] = AUML_L;
-		names[Ids.ID_AUML_U] = AUML_U;
-		names[Ids.ID_BDQUO] = BDQUO;
-		names[Ids.ID_BETA_L] = BETA_L;
-		names[Ids.ID_BETA_U] = BETA_U;
-		names[Ids.ID_BRVBAR] = BRVBAR;
-		names[Ids.ID_BULL] = BULL;
-		names[Ids.ID_CAP] = CAP;
-		names[Ids.ID_CCEDIL_L] = CCEDIL_L;
-		names[Ids.ID_CCEDIL_U] = CCEDIL_U;
-		names[Ids.ID_CEDIL] = CEDIL;
-		names[Ids.ID_CENT] = CENT;
-		names[Ids.ID_CHI_L] = CHI_L;
-		names[Ids.ID_CHI_U] = CHI_U;
-		names[Ids.ID_CIRC] = CIRC;
-		names[Ids.ID_CLUBS] = CLUBS;
-		names[Ids.ID_CONG] = CONG;
-		names[Ids.ID_COPY] = COPY;
-		names[Ids.ID_CRARR] = CRARR;
-		names[Ids.ID_CUP] = CUP;
-		names[Ids.ID_CURREN] = CURREN;
-		names[Ids.ID_DAGGER_L] = DAGGER_L;
-		names[Ids.ID_DAGGER_U] = DAGGER_U;
-		names[Ids.ID_DARR_L] = DARR_L;
-		names[Ids.ID_DARR_U] = DARR_U;
-		names[Ids.ID_DEG] = DEG;
-		names[Ids.ID_DELTA_L] = DELTA_L;
-		names[Ids.ID_DELTA_U] = DELTA_U;
-		names[Ids.ID_DIAMS] = DIAMS;
-		names[Ids.ID_DIVIDE] = DIVIDE;
-		names[Ids.ID_EACUTE_L] = EACUTE_L;
-		names[Ids.ID_EACUTE_U] = EACUTE_U;
-		names[Ids.ID_ECIRC_L] = ECIRC_L;
-		names[Ids.ID_ECIRC_U] = ECIRC_U;
-		names[Ids.ID_EGRAVE_L] = EGRAVE_L;
-		names[Ids.ID_EGRAVE_U] = EGRAVE_U;
-		names[Ids.ID_EMPTY] = EMPTY;
-		names[Ids.ID_EMSP] = EMSP;
-		names[Ids.ID_ENSP] = ENSP;
-		names[Ids.ID_EPSILON_L] = EPSILON_L;
-		names[Ids.ID_EPSILON_U] = EPSILON_U;
-		names[Ids.ID_EQUIV] = EQUIV;
-		names[Ids.ID_ETA_L] = ETA_L;
-		names[Ids.ID_ETA_U] = ETA_U;
-		names[Ids.ID_ETH_L] = ETH_L;
-		names[Ids.ID_ETH_U] = ETH_U;
-		names[Ids.ID_EUML_L] = EUML_L;
-		names[Ids.ID_EUML_U] = EUML_U;
-		names[Ids.ID_EURO] = EURO;
-		names[Ids.ID_EXIST] = EXIST;
-		names[Ids.ID_FNOF] = FNOF;
-		names[Ids.ID_FORALL] = FORALL;
-		names[Ids.ID_FRAC12] = FRAC12;
-		names[Ids.ID_FRAC14] = FRAC14;
-		names[Ids.ID_FRAC34] = FRAC34;
-		names[Ids.ID_FRASL] = FRASL;
-		names[Ids.ID_GAMMA_L] = GAMMA_L;
-		names[Ids.ID_GAMMA_U] = GAMMA_U;
-		names[Ids.ID_GE] = GE;
-		names[Ids.ID_GT] = GT;
-		names[Ids.ID_HARR_L] = HARR_L;
-		names[Ids.ID_HARR_U] = HARR_U;
-		names[Ids.ID_HEARTS] = HEARTS;
-		names[Ids.ID_HELLIP] = HELLIP;
-		names[Ids.ID_IACUTE_L] = IACUTE_L;
-		names[Ids.ID_IACUTE_U] = IACUTE_U;
-		names[Ids.ID_ICIRC_L] = ICIRC_L;
-		names[Ids.ID_ICIRC_U] = ICIRC_U;
-		names[Ids.ID_IEXCL] = IEXCL;
-		names[Ids.ID_IGRAVE_L] = IGRAVE_L;
-		names[Ids.ID_IGRAVE_U] = IGRAVE_U;
-		names[Ids.ID_IMAGE] = IMAGE;
-		names[Ids.ID_INFIN] = INFIN;
-		names[Ids.ID_INT] = INT;
-		names[Ids.ID_IOTA_L] = IOTA_L;
-		names[Ids.ID_IOTA_U] = IOTA_U;
-		names[Ids.ID_IQUEST] = IQUEST;
-		names[Ids.ID_ISIN] = ISIN;
-		names[Ids.ID_IUML_L] = IUML_L;
-		names[Ids.ID_IUML_U] = IUML_U;
-		names[Ids.ID_KAPPA_L] = KAPPA_L;
-		names[Ids.ID_KAPPA_U] = KAPPA_U;
-		names[Ids.ID_LAMBDA_L] = LAMBDA_L;
-		names[Ids.ID_LAMBDA_U] = LAMBDA_U;
-		names[Ids.ID_LANG] = LANG;
-		names[Ids.ID_LAQUO] = LAQUO;
-		names[Ids.ID_LARR_L] = LARR_L;
-		names[Ids.ID_LARR_U] = LARR_U;
-		names[Ids.ID_LCEIL] = LCEIL;
-		names[Ids.ID_LDQUO] = LDQUO;
-		names[Ids.ID_LE] = LE;
-		names[Ids.ID_LFLOOR] = LFLOOR;
-		names[Ids.ID_LOWAST] = LOWAST;
-		names[Ids.ID_LOZ] = LOZ;
-		names[Ids.ID_LRM] = LRM;
-		names[Ids.ID_LSAQUO] = LSAQUO;
-		names[Ids.ID_LSQUO] = LSQUO;
-		names[Ids.ID_LT] = LT;
-		names[Ids.ID_MACR] = MACR;
-		names[Ids.ID_MDASH] = MDASH;
-		names[Ids.ID_MICRO] = MICRO;
-		names[Ids.ID_MIDDOT] = MIDDOT;
-		names[Ids.ID_MINUS] = MINUS;
-		names[Ids.ID_MU_L] = MU_L;
-		names[Ids.ID_MU_U] = MU_U;
-		names[Ids.ID_NABLA] = NABLA;
-		names[Ids.ID_NBSP] = NBSP;
-		names[Ids.ID_NDASH] = NDASH;
-		names[Ids.ID_NE] = NE;
-		names[Ids.ID_NI] = NI;
-		names[Ids.ID_NOT] = NOT;
-		names[Ids.ID_NOTIN] = NOTIN;
-		names[Ids.ID_NSUB] = NSUB;
-		names[Ids.ID_NTILDE_L] = NTILDE_L;
-		names[Ids.ID_NTILDE_U] = NTILDE_U;
-		names[Ids.ID_NU_L] = NU_L;
-		names[Ids.ID_NU_U] = NU_U;
-		names[Ids.ID_OACUTE_L] = OACUTE_L;
-		names[Ids.ID_OACUTE_U] = OACUTE_U;
-		names[Ids.ID_OCIRC_L] = OCIRC_L;
-		names[Ids.ID_OCIRC_U] = OCIRC_U;
-		names[Ids.ID_OELIG_L] = OELIG_L;
-		names[Ids.ID_OELIG_U] = OELIG_U;
-		names[Ids.ID_OGRAVE_L] = OGRAVE_L;
-		names[Ids.ID_OGRAVE_U] = OGRAVE_U;
-		names[Ids.ID_OLINE] = OLINE;
-		names[Ids.ID_OMEGA_L] = OMEGA_L;
-		names[Ids.ID_OMEGA_U] = OMEGA_U;
-		names[Ids.ID_OMICRON_L] = OMICRON_L;
-		names[Ids.ID_OMICRON_U] = OMICRON_U;
-		names[Ids.ID_OPLUS] = OPLUS;
-		names[Ids.ID_OR] = OR;
-		names[Ids.ID_ORDF] = ORDF;
-		names[Ids.ID_ORDM] = ORDM;
-		names[Ids.ID_OSLASH_L] = OSLASH_L;
-		names[Ids.ID_OSLASH_U] = OSLASH_U;
-		names[Ids.ID_OTILDE_L] = OTILDE_L;
-		names[Ids.ID_OTILDE_U] = OTILDE_U;
-		names[Ids.ID_OTIMES] = OTIMES;
-		names[Ids.ID_OUML_L] = OUML_L;
-		names[Ids.ID_OUML_U] = OUML_U;
-		names[Ids.ID_PARA] = PARA;
-		names[Ids.ID_PART] = PART;
-		names[Ids.ID_PERMIL] = PERMIL;
-		names[Ids.ID_PERP] = PERP;
-		names[Ids.ID_PHI_L] = PHI_L;
-		names[Ids.ID_PHI_U] = PHI_U;
-		names[Ids.ID_PIV] = PIV;
-		names[Ids.ID_PI_L] = PI_L;
-		names[Ids.ID_PI_U] = PI_U;
-		names[Ids.ID_PLUSMN] = PLUSMN;
-		names[Ids.ID_POUND] = POUND;
-		names[Ids.ID_PRIME_L] = PRIME_L;
-		names[Ids.ID_PRIME_U] = PRIME_U;
-		names[Ids.ID_PROD] = PROD;
-		names[Ids.ID_PROP] = PROP;
-		names[Ids.ID_PSI_L] = PSI_L;
-		names[Ids.ID_PSI_U] = PSI_U;
-		names[Ids.ID_QUOT] = QUOT;
-		names[Ids.ID_RADIC] = RADIC;
-		names[Ids.ID_RANG] = RANG;
-		names[Ids.ID_RAQUO] = RAQUO;
-		names[Ids.ID_RARR_L] = RARR_L;
-		names[Ids.ID_RARR_U] = RARR_U;
-		names[Ids.ID_RCEIL] = RCEIL;
-		names[Ids.ID_RDQUO] = RDQUO;
-		names[Ids.ID_REAL] = REAL;
-		names[Ids.ID_REG] = REG;
-		names[Ids.ID_RFLOOR] = RFLOOR;
-		names[Ids.ID_RHO_L] = RHO_L;
-		names[Ids.ID_RHO_U] = RHO_U;
-		names[Ids.ID_RLM] = RLM;
-		names[Ids.ID_RSAQUO] = RSAQUO;
-		names[Ids.ID_RSQUO] = RSQUO;
-		names[Ids.ID_SBQUO] = SBQUO;
-		names[Ids.ID_SCARON_L] = SCARON_L;
-		names[Ids.ID_SCARON_U] = SCARON_U;
-		names[Ids.ID_SDOT] = SDOT;
-		names[Ids.ID_SECT] = SECT;
-		names[Ids.ID_SHY] = SHY;
-		names[Ids.ID_SIGMAF] = SIGMAF;
-		names[Ids.ID_SIGMA_L] = SIGMA_L;
-		names[Ids.ID_SIGMA_U] = SIGMA_U;
-		names[Ids.ID_SIM] = SIM;
-		names[Ids.ID_SPADES] = SPADES;
-		names[Ids.ID_SUB] = SUB;
-		names[Ids.ID_SUBE] = SUBE;
-		names[Ids.ID_SUM] = SUM;
-		names[Ids.ID_SUP] = SUP;
-		names[Ids.ID_SUP1] = SUP1;
-		names[Ids.ID_SUP2] = SUP2;
-		names[Ids.ID_SUP3] = SUP3;
-		names[Ids.ID_SUPE] = SUPE;
-		names[Ids.ID_SZLIG] = SZLIG;
-		names[Ids.ID_TAU_L] = TAU_L;
-		names[Ids.ID_TAU_U] = TAU_U;
-		names[Ids.ID_THERE4] = THERE4;
-		names[Ids.ID_THETASYM] = THETASYM;
-		names[Ids.ID_THETA_L] = THETA_L;
-		names[Ids.ID_THETA_U] = THETA_U;
-		names[Ids.ID_THINSP] = THINSP;
-		names[Ids.ID_THORN_L] = THORN_L;
-		names[Ids.ID_THORN_U] = THORN_U;
-		names[Ids.ID_TILDE] = TILDE;
-		names[Ids.ID_TIMES] = TIMES;
-		names[Ids.ID_TRADE] = TRADE;
-		names[Ids.ID_UACUTE_L] = UACUTE_L;
-		names[Ids.ID_UACUTE_U] = UACUTE_U;
-		names[Ids.ID_UARR_L] = UARR_L;
-		names[Ids.ID_UARR_U] = UARR_U;
-		names[Ids.ID_UCIRC_L] = UCIRC_L;
-		names[Ids.ID_UCIRC_U] = UCIRC_U;
-		names[Ids.ID_UGRAVE_L] = UGRAVE_L;
-		names[Ids.ID_UGRAVE_U] = UGRAVE_U;
-		names[Ids.ID_UML] = UML;
-		names[Ids.ID_UPSIH] = UPSIH;
-		names[Ids.ID_UPSILON_L] = UPSILON_L;
-		names[Ids.ID_UPSILON_U] = UPSILON_U;
-		names[Ids.ID_UUML_L] = UUML_L;
-		names[Ids.ID_UUML_U] = UUML_U;
-		names[Ids.ID_WEIERP] = WEIERP;
-		names[Ids.ID_XI_L] = XI_L;
-		names[Ids.ID_XI_U] = XI_U;
-		names[Ids.ID_YACUTE_L] = YACUTE_L;
-		names[Ids.ID_YACUTE_U] = YACUTE_U;
-		names[Ids.ID_YEN] = YEN;
-		names[Ids.ID_YUML_L] = YUML_L;
-		names[Ids.ID_YUML_U] = YUML_U;
-		names[Ids.ID_ZETA_L] = ZETA_L;
-		names[Ids.ID_ZETA_U] = ZETA_U;
-		names[Ids.ID_ZWJ] = ZWJ;
-		names[Ids.ID_ZWNJ] = ZWNJ;
-	}
-	private static char[] values = null;
-
-	static {
-		values = new char[Ids.getNumOfIds()];
-		values[Ids.ID_AACUTE_L] = 225;
-		values[Ids.ID_AACUTE_U] = 193;
-		values[Ids.ID_ACIRC_L] = 226;
-		values[Ids.ID_ACIRC_U] = 194;
-		values[Ids.ID_ACUTE] = 180;
-		values[Ids.ID_AELIG_L] = 230;
-		values[Ids.ID_AELIG_U] = 198;
-		values[Ids.ID_AGRAVE_L] = 224;
-		values[Ids.ID_AGRAVE_U] = 192;
-		values[Ids.ID_ALEFSYM] = 8501;
-		values[Ids.ID_ALPHA_L] = 945;
-		values[Ids.ID_ALPHA_U] = 913;
-		values[Ids.ID_AMP] = 38;
-		values[Ids.ID_AND] = 8743;
-		values[Ids.ID_ANG] = 8736;
-		values[Ids.ID_ARING_L] = 229;
-		values[Ids.ID_ARING_U] = 197;
-		values[Ids.ID_ASYMP] = 8776;
-		values[Ids.ID_ATILDE_L] = 227;
-		values[Ids.ID_ATILDE_U] = 195;
-		values[Ids.ID_AUML_L] = 228;
-		values[Ids.ID_AUML_U] = 196;
-		values[Ids.ID_BDQUO] = 8222;
-		values[Ids.ID_BETA_L] = 946;
-		values[Ids.ID_BETA_U] = 914;
-		values[Ids.ID_BRVBAR] = 166;
-		values[Ids.ID_BULL] = 8226;
-		values[Ids.ID_CAP] = 8745;
-		values[Ids.ID_CCEDIL_L] = 231;
-		values[Ids.ID_CCEDIL_U] = 199;
-		values[Ids.ID_CEDIL] = 184;
-		values[Ids.ID_CENT] = 162;
-		values[Ids.ID_CHI_L] = 967;
-		values[Ids.ID_CHI_U] = 935;
-		values[Ids.ID_CIRC] = 710;
-		values[Ids.ID_CLUBS] = 9827;
-		values[Ids.ID_CONG] = 8773;
-		values[Ids.ID_COPY] = 169;
-		values[Ids.ID_CRARR] = 8629;
-		values[Ids.ID_CUP] = 8746;
-		values[Ids.ID_CURREN] = 164;
-		values[Ids.ID_DAGGER_L] = 8224;
-		values[Ids.ID_DAGGER_U] = 8225;
-		values[Ids.ID_DARR_L] = 8595;
-		values[Ids.ID_DARR_U] = 8659;
-		values[Ids.ID_DEG] = 176;
-		values[Ids.ID_DELTA_L] = 948;
-		values[Ids.ID_DELTA_U] = 916;
-		values[Ids.ID_DIAMS] = 9830;
-		values[Ids.ID_DIVIDE] = 247;
-		values[Ids.ID_EACUTE_L] = 233;
-		values[Ids.ID_EACUTE_U] = 201;
-		values[Ids.ID_ECIRC_L] = 234;
-		values[Ids.ID_ECIRC_U] = 202;
-		values[Ids.ID_EGRAVE_L] = 232;
-		values[Ids.ID_EGRAVE_U] = 200;
-		values[Ids.ID_EMPTY] = 8709;
-		values[Ids.ID_EMSP] = 8195;
-		values[Ids.ID_ENSP] = 8194;
-		values[Ids.ID_EPSILON_L] = 949;
-		values[Ids.ID_EPSILON_U] = 917;
-		values[Ids.ID_EQUIV] = 8801;
-		values[Ids.ID_ETA_L] = 951;
-		values[Ids.ID_ETA_U] = 919;
-		values[Ids.ID_ETH_L] = 240;
-		values[Ids.ID_ETH_U] = 208;
-		values[Ids.ID_EUML_L] = 235;
-		values[Ids.ID_EUML_U] = 203;
-		values[Ids.ID_EURO] = 8364;
-		values[Ids.ID_EXIST] = 8707;
-		values[Ids.ID_FNOF] = 402;
-		values[Ids.ID_FORALL] = 8704;
-		values[Ids.ID_FRAC12] = 189;
-		values[Ids.ID_FRAC14] = 188;
-		values[Ids.ID_FRAC34] = 190;
-		values[Ids.ID_FRASL] = 8260;
-		values[Ids.ID_GAMMA_L] = 947;
-		values[Ids.ID_GAMMA_U] = 915;
-		values[Ids.ID_GE] = 8805;
-		values[Ids.ID_GT] = 62;
-		values[Ids.ID_HARR_L] = 8596;
-		values[Ids.ID_HARR_U] = 8660;
-		values[Ids.ID_HEARTS] = 9829;
-		values[Ids.ID_HELLIP] = 8230;
-		values[Ids.ID_IACUTE_L] = 237;
-		values[Ids.ID_IACUTE_U] = 205;
-		values[Ids.ID_ICIRC_L] = 238;
-		values[Ids.ID_ICIRC_U] = 206;
-		values[Ids.ID_IEXCL] = 161;
-		values[Ids.ID_IGRAVE_L] = 236;
-		values[Ids.ID_IGRAVE_U] = 204;
-		values[Ids.ID_IMAGE] = 8465;
-		values[Ids.ID_INFIN] = 8734;
-		values[Ids.ID_INT] = 8747;
-		values[Ids.ID_IOTA_L] = 953;
-		values[Ids.ID_IOTA_U] = 921;
-		values[Ids.ID_IQUEST] = 191;
-		values[Ids.ID_ISIN] = 8712;
-		values[Ids.ID_IUML_L] = 239;
-		values[Ids.ID_IUML_U] = 207;
-		values[Ids.ID_KAPPA_L] = 954;
-		values[Ids.ID_KAPPA_U] = 922;
-		values[Ids.ID_LAMBDA_L] = 955;
-		values[Ids.ID_LAMBDA_U] = 923;
-		values[Ids.ID_LANG] = 9001;
-		values[Ids.ID_LAQUO] = 171;
-		values[Ids.ID_LARR_L] = 8592;
-		values[Ids.ID_LARR_U] = 8656;
-		values[Ids.ID_LCEIL] = 8968;
-		values[Ids.ID_LDQUO] = 8220;
-		values[Ids.ID_LE] = 8804;
-		values[Ids.ID_LFLOOR] = 8970;
-		values[Ids.ID_LOWAST] = 8727;
-		values[Ids.ID_LOZ] = 9674;
-		values[Ids.ID_LRM] = 8206;
-		values[Ids.ID_LSAQUO] = 8249;
-		values[Ids.ID_LSQUO] = 8216;
-		values[Ids.ID_LT] = 60;
-		values[Ids.ID_MACR] = 175;
-		values[Ids.ID_MDASH] = 8212;
-		values[Ids.ID_MICRO] = 181;
-		values[Ids.ID_MIDDOT] = 183;
-		values[Ids.ID_MINUS] = 8722;
-		values[Ids.ID_MU_L] = 956;
-		values[Ids.ID_MU_U] = 924;
-		values[Ids.ID_NABLA] = 8711;
-		values[Ids.ID_NBSP] = 160;
-		values[Ids.ID_NDASH] = 8211;
-		values[Ids.ID_NE] = 8800;
-		values[Ids.ID_NI] = 8715;
-		values[Ids.ID_NOT] = 172;
-		values[Ids.ID_NOTIN] = 8713;
-		values[Ids.ID_NSUB] = 8836;
-		values[Ids.ID_NTILDE_L] = 241;
-		values[Ids.ID_NTILDE_U] = 209;
-		values[Ids.ID_NU_L] = 957;
-		values[Ids.ID_NU_U] = 925;
-		values[Ids.ID_OACUTE_L] = 243;
-		values[Ids.ID_OACUTE_U] = 211;
-		values[Ids.ID_OCIRC_L] = 244;
-		values[Ids.ID_OCIRC_U] = 212;
-		values[Ids.ID_OELIG_L] = 339;
-		values[Ids.ID_OELIG_U] = 338;
-		values[Ids.ID_OGRAVE_L] = 242;
-		values[Ids.ID_OGRAVE_U] = 210;
-		values[Ids.ID_OLINE] = 8254;
-		values[Ids.ID_OMEGA_L] = 969;
-		values[Ids.ID_OMEGA_U] = 937;
-		values[Ids.ID_OMICRON_L] = 959;
-		values[Ids.ID_OMICRON_U] = 927;
-		values[Ids.ID_OPLUS] = 8853;
-		values[Ids.ID_OR] = 8744;
-		values[Ids.ID_ORDF] = 170;
-		values[Ids.ID_ORDM] = 186;
-		values[Ids.ID_OSLASH_L] = 248;
-		values[Ids.ID_OSLASH_U] = 216;
-		values[Ids.ID_OTILDE_L] = 245;
-		values[Ids.ID_OTILDE_U] = 213;
-		values[Ids.ID_OTIMES] = 8855;
-		values[Ids.ID_OUML_L] = 246;
-		values[Ids.ID_OUML_U] = 214;
-		values[Ids.ID_PARA] = 182;
-		values[Ids.ID_PART] = 8706;
-		values[Ids.ID_PERMIL] = 8240;
-		values[Ids.ID_PERP] = 8869;
-		values[Ids.ID_PHI_L] = 966;
-		values[Ids.ID_PHI_U] = 934;
-		values[Ids.ID_PIV] = 982;
-		values[Ids.ID_PI_L] = 960;
-		values[Ids.ID_PI_U] = 928;
-		values[Ids.ID_PLUSMN] = 177;
-		values[Ids.ID_POUND] = 163;
-		values[Ids.ID_PRIME_L] = 8242;
-		values[Ids.ID_PRIME_U] = 8243;
-		values[Ids.ID_PROD] = 8719;
-		values[Ids.ID_PROP] = 8733;
-		values[Ids.ID_PSI_L] = 968;
-		values[Ids.ID_PSI_U] = 936;
-		values[Ids.ID_QUOT] = 34;
-		values[Ids.ID_RADIC] = 8730;
-		values[Ids.ID_RANG] = 9002;
-		values[Ids.ID_RAQUO] = 187;
-		values[Ids.ID_RARR_L] = 8594;
-		values[Ids.ID_RARR_U] = 8658;
-		values[Ids.ID_RCEIL] = 8969;
-		values[Ids.ID_RDQUO] = 8221;
-		values[Ids.ID_REAL] = 8476;
-		values[Ids.ID_REG] = 174;
-		values[Ids.ID_RFLOOR] = 8971;
-		values[Ids.ID_RHO_L] = 961;
-		values[Ids.ID_RHO_U] = 929;
-		values[Ids.ID_RLM] = 8207;
-		values[Ids.ID_RSAQUO] = 8250;
-		values[Ids.ID_RSQUO] = 8217;
-		values[Ids.ID_SBQUO] = 8218;
-		values[Ids.ID_SCARON_L] = 353;
-		values[Ids.ID_SCARON_U] = 352;
-		values[Ids.ID_SDOT] = 8901;
-		values[Ids.ID_SECT] = 167;
-		values[Ids.ID_SHY] = 173;
-		values[Ids.ID_SIGMAF] = 962;
-		values[Ids.ID_SIGMA_L] = 963;
-		values[Ids.ID_SIGMA_U] = 931;
-		values[Ids.ID_SIM] = 8764;
-		values[Ids.ID_SPADES] = 9824;
-		values[Ids.ID_SUB] = 8834;
-		values[Ids.ID_SUBE] = 8838;
-		values[Ids.ID_SUM] = 8721;
-		values[Ids.ID_SUP] = 8835;
-		values[Ids.ID_SUP1] = 185;
-		values[Ids.ID_SUP2] = 178;
-		values[Ids.ID_SUP3] = 179;
-		values[Ids.ID_SUPE] = 8839;
-		values[Ids.ID_SZLIG] = 223;
-		values[Ids.ID_TAU_L] = 964;
-		values[Ids.ID_TAU_U] = 932;
-		values[Ids.ID_THERE4] = 8756;
-		values[Ids.ID_THETASYM] = 977;
-		values[Ids.ID_THETA_L] = 952;
-		values[Ids.ID_THETA_U] = 920;
-		values[Ids.ID_THINSP] = 8201;
-		values[Ids.ID_THORN_L] = 254;
-		values[Ids.ID_THORN_U] = 222;
-		values[Ids.ID_TILDE] = 732;
-		values[Ids.ID_TIMES] = 215;
-		values[Ids.ID_TRADE] = 8482;
-		values[Ids.ID_UACUTE_L] = 250;
-		values[Ids.ID_UACUTE_U] = 218;
-		values[Ids.ID_UARR_L] = 8593;
-		values[Ids.ID_UARR_U] = 8657;
-		values[Ids.ID_UCIRC_L] = 251;
-		values[Ids.ID_UCIRC_U] = 219;
-		values[Ids.ID_UGRAVE_L] = 249;
-		values[Ids.ID_UGRAVE_U] = 217;
-		values[Ids.ID_UML] = 168;
-		values[Ids.ID_UPSIH] = 978;
-		values[Ids.ID_UPSILON_L] = 965;
-		values[Ids.ID_UPSILON_U] = 933;
-		values[Ids.ID_UUML_L] = 252;
-		values[Ids.ID_UUML_U] = 220;
-		values[Ids.ID_WEIERP] = 8472;
-		values[Ids.ID_XI_L] = 958;
-		values[Ids.ID_XI_U] = 926;
-		values[Ids.ID_YACUTE_L] = 253;
-		values[Ids.ID_YACUTE_U] = 221;
-		values[Ids.ID_YEN] = 165;
-		values[Ids.ID_YUML_L] = 255;
-		values[Ids.ID_YUML_U] = 376;
-		values[Ids.ID_ZETA_L] = 950;
-		values[Ids.ID_ZETA_U] = 918;
-		values[Ids.ID_ZWJ] = 8205;
-		values[Ids.ID_ZWNJ] = 8204;
-	}
-
-	/**
-	 */
-	public EntityCollection() {
-		super(names, STRICT_CASE);
-	}
-
-	/**
-	 * Create an entity declaration.
-	 * @return org.eclipse.wst.xml.core.internal.contentmodel.CMNode
-	 * @param attrName java.lang.String
-	 */
-	protected CMNode create(String entityName) {
-		int id = getID(entityName);
-		if (id == ID_UNKNOWN)
-			return null;
-
-		String value = String.valueOf(values[id]);
-		HTMLEntityDeclImpl dec = new HTMLEntityDeclImpl(entityName, value);
-
-		return dec;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HCMDocImpl.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HCMDocImpl.java
deleted file mode 100644
index daef5ce..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HCMDocImpl.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.core.internal.contentmodel;
-
-
-
-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;
-
-/**
- * CMDocument implementation for the HTML.
- */
-class HCMDocImpl extends CMNodeImpl implements HTMLCMDocument {
-
-	/** Namespace for all names of elements, entities and attributes. */
-	private CMNamespaceImpl namespace = null;
-	private ElementCollection elements = null;
-	private EntityCollection entities = null;
-	private AttributeCollection attributes = null;
-
-	/**
-	 */
-	public HCMDocImpl(String docTypeName, CMNamespaceImpl targetNamespace) {
-		super(docTypeName);
-		namespace = targetNamespace;
-		attributes = new AttributeCollection();
-		elements = new ElementCollection(attributes);
-		entities = new EntityCollection();
-	}
-
-	AttributeCollection getAttributes() {
-		return attributes;
-	}
-
-	public HTMLElementDeclaration getElementDeclaration(String elementName) {
-		if (elements == null)
-			return null;
-		return (HTMLElementDeclaration) elements.getNamedItem(elementName);
-	}
-
-	/**
-	 * @see org.eclipse.wst.xml.core.internal.contentmodel.CMDocument
-	 */
-	public CMNamedNodeMap getElements() {
-		return elements;
-	}
-
-	/**
-	 * @see org.eclipse.wst.xml.core.internal.contentmodel.CMDocument
-	 */
-	public CMNamedNodeMap getEntities() {
-		return entities;
-	}
-
-	public HTMLEntityDeclaration getEntityDeclaration(String entityName) {
-		if (entities == null)
-			return null;
-		return (HTMLEntityDeclaration) entities.getNamedItem(entityName);
-	}
-
-	/**
-	 * @see org.eclipse.wst.xml.core.internal.contentmodel.CMDocument
-	 */
-	public CMNamespace getNamespace() {
-		return namespace;
-	}
-
-	/**
-	 * @see CMNode
-	 */
-	public int getNodeType() {
-		return CMNode.DOCUMENT;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HTMLAttrDeclImpl.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HTMLAttrDeclImpl.java
deleted file mode 100644
index c03b2ec..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HTMLAttrDeclImpl.java
+++ /dev/null
@@ -1,122 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this 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.core.internal.contentmodel;
-
-
-
-import java.util.Arrays;
-import java.util.Enumeration;
-import java.util.Vector;
-
-import org.eclipse.wst.html.core.internal.provisional.HTMLCMProperties;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMDataType;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMNode;
-
-/**
- * Implementation class of {@link <code>HTMLAttributeDeclaration</code>} interface.<br>
- */
-class HTMLAttrDeclImpl extends CMNodeImpl implements HTMLAttributeDeclaration {
-
-	private HTMLCMDataTypeImpl type = null;
-	private int usage = 0;
-
-	/**
-	 */
-	public HTMLAttrDeclImpl(String attrName, HTMLCMDataTypeImpl valueType, int valueUsage) {
-		super(attrName);
-		this.type = valueType;
-
-		switch (valueUsage) {
-			case OPTIONAL :
-			case REQUIRED :
-			case FIXED :
-			case PROHIBITED :
-				this.usage = valueUsage;
-				break;
-			default :
-				// should warn...
-				this.usage = OPTIONAL; // fall back
-				break;
-		}
-	}
-
-	/**
-	 * getAttrName method
-	 * @return java.lang.String
-	 */
-	public String getAttrName() {
-		return getNodeName();
-	}
-
-	/**
-	 * getAttrType method
-	 * @return CMDataType
-	 */
-	public CMDataType getAttrType() {
-		return type;
-	}
-
-	/**
-	 * @deprecated by superinterface
-	 */
-	public String getDefaultValue() {
-		if (type.getImpliedValueKind() != CMDataType.IMPLIED_VALUE_DEFAULT)
-			return null;
-		return type.getImpliedValue();
-	}
-
-	/**
-	 * @deprecated by superinterface
-	 */
-	public Enumeration getEnumAttr() {
-		Vector v = new Vector(Arrays.asList(type.getEnumeratedValues()));
-		return v.elements();
-	}
-
-	/**
-	 * getNodeType method
-	 * @return int
-	 *
-	 * Returns one of :
-	 * ELEMENT_DECLARATION, ATTRIBUTE_DECLARATION, GROUP, ENTITY_DECLARATION.
-	 */
-	public int getNodeType() {
-		return CMNode.ATTRIBUTE_DECLARATION;
-	}
-
-	/**
-	 * @return int
-	 */
-	public int getUsage() {
-		return usage;
-	}
-
-	/**
-	 */
-	public boolean supports(String propertyName) {
-		if (propertyName.equals(HTMLCMProperties.SHOULD_IGNORE_CASE))
-			return true;
-		else if (propertyName.equals(HTMLCMProperties.IS_SCRIPTABLE))
-			return true;
-		return super.supports(propertyName);
-	}
-
-	/**
-	 */
-	public Object getProperty(String propertyName) {
-		if (propertyName.equals(HTMLCMProperties.SHOULD_IGNORE_CASE))
-			return new Boolean(true);
-		else if (propertyName.equals(HTMLCMProperties.IS_SCRIPTABLE)) {
-			return getAttrType().getDataTypeName() == HTMLCMDataType.SCRIPT ? new Boolean(true) : new Boolean(false);
-		}
-		return super.getProperty(propertyName);
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HTMLAttributeDeclaration.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HTMLAttributeDeclaration.java
deleted file mode 100644
index 1bff6f6..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HTMLAttributeDeclaration.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.core.internal.contentmodel;
-
-import org.eclipse.wst.xml.core.internal.contentmodel.CMAttributeDeclaration;
-
-
-
-/**
- * This interface is intended to be a public interface which has
- * interfaces defined in both of {@link <code>CMAttributeDeclaration</code>}
- * and {@link <code>HTMLCMNode</code>}.<br>
- */
-public interface HTMLAttributeDeclaration extends CMAttributeDeclaration {
-
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HTMLCMDataType.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HTMLCMDataType.java
deleted file mode 100644
index 34361dd..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HTMLCMDataType.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.wst.html.core.internal.contentmodel;
-
-
-
-import org.eclipse.wst.xml.core.internal.contentmodel.CMDataType;
-
-/**
- * HTML extension for data types.
- */
-public interface HTMLCMDataType extends CMDataType {
-
-	/** Boolean; it should be defined in CMDataType. */
-	public static final String BOOLEAN = "BOOLEAN"; //$NON-NLS-1$
-	public static final String COLOR = "COLOR"; //$NON-NLS-1$
-	public static final String EVENT = "EVENT"; //$NON-NLS-1$
-	public static final String IDREFS = "IDREFS"; //$NON-NLS-1$
-	/** Name; it should be defined in CMDataType. */
-	public static final String NAME = "NAME"; //$NON-NLS-1$
-	// Following types are just aliases.
-	/** %Character; == CDATA */
-	public static final String CHARACTER = CMDataType.CDATA;
-	/** %Charset; == CDATA */
-	public static final String CHARSET = CMDataType.CDATA;
-	/** %Charsets; == CDATA */
-	public static final String CHARSETS = CMDataType.CDATA;
-	/** %ContentType; == CDATA */
-	public static final String CONTENT_TYPE = CMDataType.CDATA;
-	/** %Coords; == CDATA */
-	public static final String COORDS = CMDataType.CDATA;
-	/** %Datetime; == CDATA */
-	public static final String DATETIME = CMDataType.CDATA;
-	/** %FrameTarget; == CDATA */
-	public static final String FRAME_TARGET = CMDataType.CDATA;
-	/** %LanguageCode; == NAME */
-	public static final String LANGUAGE_CODE = NAME;
-	/** %Length; == CDATA */
-	public static final String LENGTH = CMDataType.CDATA;
-	/** %LinkTypes; == CDATA */
-	public static final String LINK_TYPES = CMDataType.CDATA;
-	/** %LIStyle; == CDATA */
-	public static final String LI_STYLE = CMDataType.CDATA;
-	/** %MediaDesc; == CDATA */
-	public static final String MEDIA_DESC = CMDataType.CDATA;
-	/** %MultiLength; == CDATA */
-	public static final String MULTI_LENGTH = CMDataType.CDATA;
-	/** %OLStyle; == CDATA */
-	public static final String OL_STYLE = CMDataType.CDATA;
-	/** %Pixles; == CDATA */
-	public static final String PIXELS = CMDataType.CDATA;
-	/** %Script; == EVENT */
-	public static final String SCRIPT = EVENT;
-	/** %StyleSheet; == EVENT */
-	public static final String STYLE_SHEET = CMDataType.CDATA;
-	/** %Text; == CDATA */
-	public static final String TEXT = CMDataType.CDATA;
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HTMLCMDataTypeImpl.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HTMLCMDataTypeImpl.java
deleted file mode 100644
index fe6e688..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HTMLCMDataTypeImpl.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.core.internal.contentmodel;
-
-import org.eclipse.wst.xml.core.internal.contentmodel.CMNode;
-
-
-
-/**
- */
-class HTMLCMDataTypeImpl extends CMNodeImpl implements HTMLCMDataType {
-
-	private int impliedValueKind = IMPLIED_VALUE_NONE;
-	private String impliedValue = null;
-	private final static String[] emptyArray = new String[0];
-	private String[] enumValues = emptyArray;
-	private String instanceValue = null;
-
-	/**
-	 * HTMLCMDataTypeImpl constructor comment.
-	 * @param nm java.lang.String
-	 */
-	public HTMLCMDataTypeImpl(String typeName) {
-		super(typeName);
-	}
-
-	/**
-	 * HTMLCMDataTypeImpl constructor comment.
-	 * @param nm java.lang.String
-	 */
-	public HTMLCMDataTypeImpl(String typeName, String instanceValue) {
-		super(typeName);
-		this.instanceValue = instanceValue;
-	}
-
-	/**
-	 * 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 instanceValue;
-	}
-
-	/**
-	 * @see org.eclipse.wst.xml.core.internal.contentmodel.CMDataType
-	 */
-	public String getDataTypeName() {
-		return getNodeName();
-	}
-
-	/**
-	 * getTypeName method
-	 * @return java.lang.String[]
-	 *
-	 */
-	public String[] getEnumeratedValues() {
-		return enumValues;
-	}
-
-	/**
-	 * getTypeName method
-	 * @return java.lang.String  
-	 *
-	 * Returns the implied value or null if none exists.
-	 */
-	public String getImpliedValue() {
-		return impliedValue;
-	}
-
-	/**
-	 * getImpliedValueKind method
-	 * @return int
-	 *
-	 * Returns one of :
-	 * IMPLIED_VALUE_NONE, IMPLIED_VALUE_FIXED, IMPLIED_VALUE_DEFAULT.
-	 */
-	public int getImpliedValueKind() {
-		return impliedValueKind;
-	}
-
-	/**
-	 * @see org.eclipse.wst.xml.core.internal.contentmodel.CMNode
-	 */
-	public int getNodeType() {
-		return CMNode.DATA_TYPE;
-	}
-
-	/**
-	 */
-	void setEnumValues(String[] values) {
-		enumValues = new String[values.length];
-		for (int i = 0; i < values.length; i++) {
-			enumValues[i] = values[i];
-		}
-	}
-
-	/**
-	 * package scope.
-	 */
-	void setImpliedValue(int kind, String value) {
-		switch (kind) {
-			case IMPLIED_VALUE_FIXED :
-			case IMPLIED_VALUE_DEFAULT :
-				impliedValueKind = kind;
-				impliedValue = value;
-				break;
-			case IMPLIED_VALUE_NONE :
-			default :
-				impliedValueKind = IMPLIED_VALUE_NONE;
-				impliedValue = null; // maybe a null string?
-				break;
-		}
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HTMLCMDocument.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HTMLCMDocument.java
deleted file mode 100644
index 1af5fa2..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HTMLCMDocument.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.core.internal.contentmodel;
-
-import org.eclipse.wst.xml.core.internal.contentmodel.CMDocument;
-
-
-
-/**
- * HTML extension for CMDocument.
- * This interface provides some short hand methods to get declarations
- * by a name.
- */
-public interface HTMLCMDocument extends CMDocument {
-
-	/**
-	 * A short hand method to get a element declaration for a HTML element.<br>
-	 * @param elementName java.lang.String
-	 */
-	HTMLElementDeclaration getElementDeclaration(String elementName);
-
-	/**
-	 * A short hand method to get a entity declaration of HTML documents.<br>
-	 * @param entityName java.lang.String
-	 */
-	HTMLEntityDeclaration getEntityDeclaration(String entityName);
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HTMLCMDocumentFactory.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HTMLCMDocumentFactory.java
deleted file mode 100644
index 18e901e..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HTMLCMDocumentFactory.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.html.core.internal.contentmodel;
-
-
-
-import java.util.Hashtable;
-
-import org.eclipse.wst.html.core.internal.contentmodel.chtml.CHCMDocImpl;
-import org.eclipse.wst.html.core.internal.provisional.HTML40Namespace;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMDocument;
-import org.eclipse.wst.xml.core.internal.provisional.contentmodel.CMDocType;
-
-/**
- * INodeAdapter factory for HTML and JSP documents.
- */
-public final class HTMLCMDocumentFactory {
-
-	private static Hashtable cmdocs = new Hashtable();
-
-	static {
-		CMNamespaceImpl h40ns = new CMNamespaceImpl(HTML40Namespace.HTML40_URI, HTML40Namespace.HTML40_TAG_PREFIX);
-		CMNamespaceImpl j11ns = new CMNamespaceImpl(JSP11Namespace.JSP11_URI, JSP11Namespace.JSP_TAG_PREFIX);
-
-		HCMDocImpl html40doc = new HCMDocImpl(CMDocType.HTML_DOC_TYPE, h40ns);
-		CHCMDocImpl chtmldoc = new CHCMDocImpl(CMDocType.CHTML_DOC_TYPE, h40ns);
-		JCMDocImpl jsp11doc = new JCMDocImpl(CMDocType.JSP11_DOC_TYPE, j11ns);
-
-		cmdocs.put(CMDocType.HTML_DOC_TYPE, html40doc);
-		cmdocs.put(CMDocType.CHTML_DOC_TYPE, chtmldoc);
-		cmdocs.put(CMDocType.JSP11_DOC_TYPE, jsp11doc);
-	}
-
-	/**
-	 * HTMLCMAdapterFactory constructor.
-	 */
-	private HTMLCMDocumentFactory() {
-		super();
-	}
-
-	/**
-	 * @return org.eclipse.wst.xml.core.internal.contentmodel.CMDocument
-	 * @param cmtype java.lang.String
-	 */
-	public static CMDocument getCMDocument(String cmtype) {
-		Object obj = cmdocs.get(cmtype);
-		if (obj == null)
-			return null;
-
-		return (CMDocument) obj;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HTMLCMNode.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HTMLCMNode.java
deleted file mode 100644
index 8538731..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HTMLCMNode.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.html.core.internal.contentmodel;
-
-
-/**
- * In HTML Documents, name and value of an attribute/element/entity
- * should be treated ignoring theirs case.  However, in XML documents,
- * they should be distinguished with sensitiveness of their case.
- * CMNode is basically designed to represent DTDs or Schemas for XML
- * documents.  So, it doesn't have interfaces to retrieve such information.
- * However, declarations in the HTML CM should provide such information.
- * This intermediate interface is intended to provide whether ignore cases
- * or not.<br>
- */
-interface HTMLCMNode extends org.eclipse.wst.xml.core.internal.contentmodel.CMNode {
-
-	/**
-	 * Returns <code>true</code>, if declaration is for HTML attribute/element/entity.
-	 * Otherwise, returns <code>false</code>.
-	 * @return boolean
-	 */
-	boolean shouldIgnoreCase();
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HTMLElemDeclImpl.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HTMLElemDeclImpl.java
deleted file mode 100644
index 893c7d8..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HTMLElemDeclImpl.java
+++ /dev/null
@@ -1,366 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this 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.core.internal.contentmodel;
-
-
-
-import java.util.Iterator;
-
-import org.eclipse.wst.html.core.internal.provisional.HTMLCMProperties;
-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.CMNamedNodeMap;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMNode;
-
-/**
- * Base class for all Hed???? classes.
- */
-abstract class HTMLElemDeclImpl extends CMContentImpl implements HTMLElementDeclaration, HTMLPropertyDeclaration {
-
-	// DTD
-	protected CMNamedNodeMapImpl attributes = null;
-	protected String typeDefinitionName = ComplexTypeDefinitionFactory.CTYPE_EMPTY;
-	/** Never access this field directly.  Instead, use getComplexTypeDefinition method. */
-	private ComplexTypeDefinition typeDefinition = null;
-	protected CMGroupImpl inclusion = null;
-	protected CMGroupImpl exclusion = null;
-	// advanced information
-	protected CMNamedNodeMap prohibitedAncestors = null;
-	protected int correctionType = CORRECT_NONE;
-	protected int formatType = FORMAT_HTML;
-	protected int layoutType = LAYOUT_NONE;
-	protected int omitType = OMIT_NONE;
-	protected boolean keepSpaces = false;
-	protected boolean indentChild = false;
-	protected ElementCollection elementCollection = null;
-	protected AttributeCollection attributeCollection = null;
-	protected final static CMNamedNodeMap EMPTY_MAP = new 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 Iterator() {
-				public boolean hasNext() {
-					return false;
-				}
-
-				public Object next() {
-					return null;
-				}
-
-				public void remove() {
-				}
-			};
-		}
-	};
-
-	/**
-	 * HTMLElemDeclImpl constructor.
-	 * In the HTML DTD, an element declaration has no specification
-	 * for its occurrence.  Occurrence is specifed in content model, like
-	 * <code>(LI)+</code>.  To avoid confusion (and complexity),
-	 * occurrence of an element declaration is always 1 (it means, min = 1 and
-	 * max = 1).  Instead, occurrence of CMGroup represents actual occurrence
-	 * of the content.
-	 * <br>
-	 * @param name java.lang.String
-	 */
-	public HTMLElemDeclImpl(String elementName, ElementCollection collection) {
-		super(elementName, 1, 1);
-		elementCollection = collection;
-		attributeCollection = collection.getAttributeCollection();
-	}
-
-	/**
-	 */
-	protected abstract void createAttributeDeclarations();
-
-	private ComplexTypeDefinition createComplexTypeDefinition() {
-		if (typeDefinitionName.equals(ComplexTypeDefinitionFactory.CTYPE_CDATA) || typeDefinitionName.equals(ComplexTypeDefinitionFactory.CTYPE_EMPTY) || typeDefinitionName.equals(ComplexTypeDefinitionFactory.CTYPE_PCDATA))
-			return null;
-
-		ComplexTypeDefinitionFactory factory = ComplexTypeDefinitionFactory.getInstance();
-		if (factory == null)
-			return null; // fatal error.
-
-		ComplexTypeDefinition def = factory.createTypeDefinition(typeDefinitionName, elementCollection);
-		return def;
-	}
-
-	/**
-	 * Get an attribute declaration.
-	 */
-	public HTMLAttributeDeclaration getAttributeDeclaration(String attrName) {
-		if (attributes == null) {
-			createAttributeDeclarations();
-			if (attributes == null)
-				return null; // fail to create
-		}
-
-		CMNode cmnode = attributes.getNamedItem(attrName);
-		if (cmnode == null) {
-			return null;
-		}
-		else {
-			return (HTMLAttributeDeclaration) cmnode; // already exists.
-		}
-	}
-
-	/**
-	 * @see org.eclipse.wst.xml.core.internal.contentmodel.CMElementDeclaration
-	 */
-	public CMNamedNodeMap getAttributes() {
-		if (attributes == null)
-			createAttributeDeclarations(); // lazy eval.
-		return attributes;
-	}
-
-	/**
-	 * Get an instance of complex type definition.
-	 */
-	private ComplexTypeDefinition getComplexTypeDefinition() {
-		if (typeDefinition == null)
-			typeDefinition = createComplexTypeDefinition();
-		return typeDefinition;
-	}
-
-	/**
-	 * Content.<br>
-	 * Element declarations which type is EMPTY or CDATA (maybe PCDATA)
-	 * <strong>MUST</strong> override this method and always return null.
-	 * This default implementation always tries to create a complex type definition
-	 * instance and access to it.
-	 * <br>
-	 * @see org.eclipse.wst.xml.core.internal.contentmodel.CMElementDeclaration
-	 */
-	public CMContent getContent() {
-		ComplexTypeDefinition def = getComplexTypeDefinition(); // lazy eval.
-		return (def != null) ? def.getContent() : null;
-	}
-
-	/**
-	 * Content type.<br>
-	 * Element declarations which type is EMPTY or CDATA (maybe PCDATA)
-	 * <strong>MUST</strong> override this method and return an appropriate type.
-	 * This default implementation always tries to create a complex type definition
-	 * instance and access to it.
-	 * <br>
-	 * @see org.eclipse.wst.xml.core.internal.contentmodel.CMElementDeclaration
-	 */
-	public int getContentType() {
-		ComplexTypeDefinition def = getComplexTypeDefinition(); // lazy eval.
-		return (def != null) ? def.getContentType() : CMElementDeclaration.CDATA;
-	}
-
-	/**
-	 * @see HTMLElementDeclaration#getCorrectionType
-	 */
-	public int getCorrectionType() {
-		return correctionType;
-	}
-
-	/**
-	 * HTML element doesn't have any data type.  So, this method always
-	 * returns <code>null</code>.<br>
-	 * @see org.eclipse.wst.xml.core.internal.contentmodel.CMElementDeclaration
-	 */
-	public CMDataType getDataType() {
-		return null;
-	}
-
-	/**
-	 * @see org.eclipse.wst.xml.core.internal.contentmodel.CMElementDeclaration
-	 */
-	public String getElementName() {
-		return getNodeName();
-	}
-
-	/**
-	 * Exclusion.
-	 * Almost elements don't have a exclusion.
-	 * Only classes those have exclusion should override this method.
-	 */
-	public CMContent getExclusion() {
-		return null;
-	}
-
-	/**
-	 * Default format type is <code>FORMAT_HTML</code>.<br>
-	 */
-	public int getFormatType() {
-		return formatType;
-	}
-
-	/**
-	 * Inclusion.
-	 * Almost elements don't have a inclusion.
-	 * Only classes those have inclusion should override this method.
-	 */
-	public CMContent getInclusion() {
-		return null;
-	}
-
-	/**
-	 */
-	public int getLayoutType() {
-		return layoutType;
-	}
-
-	/**
-	 * Line break hint is strongly related to layout type.
-	 * Indeed, in the C++DOM, it is determined from layout type only.
-	 * So, this implementation, as the default implementation for all declarations,
-	 * also determines from layout type only.<br>
-	 * @return int
-	 */
-	public int getLineBreakHint() {
-		switch (getLayoutType()) {
-			case HTMLElementDeclaration.LAYOUT_BLOCK :
-				return HTMLElementDeclaration.BREAK_BEFORE_START_AND_AFTER_END;
-			case HTMLElementDeclaration.LAYOUT_BREAK :
-				return HTMLElementDeclaration.BREAK_AFTER_START;
-			case HTMLElementDeclaration.LAYOUT_HIDDEN :
-				return HTMLElementDeclaration.BREAK_BEFORE_START_AND_AFTER_END;
-			default :
-				return HTMLElementDeclaration.BREAK_NONE;
-		}
-	}
-
-	/**
-	 * No HTML element has local elements.  So, this method always
-	 * returns an empty map.
-	 * @see org.eclipse.wst.xml.core.internal.contentmodel.CMElementDeclaration
-	 */
-	public CMNamedNodeMap getLocalElements() {
-		return EMPTY_MAP;
-	}
-
-	/**
-	 * @see org.eclipse.wst.xml.core.internal.contentmodel.CMNode
-	 */
-	public int getNodeType() {
-		return CMNode.ELEMENT_DECLARATION;
-	}
-
-	/**
-	 */
-	public int getOmitType() {
-		return omitType;
-	}
-
-	/**
-	 */
-	public CMNamedNodeMap getProhibitedAncestors() {
-		return EMPTY_MAP;
-	}
-
-	/**
-	 */
-	public boolean supports(String propertyName) {
-		if (propertyName.equals(HTMLCMProperties.SHOULD_IGNORE_CASE)) {
-			return true;
-		}
-		else if (propertyName.equals(HTMLCMProperties.CONTENT_HINT)) {
-			ComplexTypeDefinition def = getComplexTypeDefinition();
-			return (def != null);
-		}
-		else {
-			PropertyProvider pp = PropertyProviderFactory.getProvider(propertyName);
-			if (pp == null)
-				return false;
-			return pp.supports(this);
-		}
-
-	}
-
-	/**
-	 */
-	public Object getProperty(String propertyName) {
-		if (propertyName.equals(HTMLCMProperties.SHOULD_IGNORE_CASE)) {
-			return new Boolean(true);
-		}
-		else if (propertyName.equals(HTMLCMProperties.CONTENT_HINT)) {
-			ComplexTypeDefinition def = getComplexTypeDefinition();
-			return (def != null) ? def.getPrimaryCandidate() : null;
-		}
-		else {
-			PropertyProvider pp = PropertyProviderFactory.getProvider(propertyName);
-			if (pp == null)
-				return null;
-			return pp.get(this);
-		}
-	}
-
-	/**
-	 * Return element names which terminates this element.<br>
-	 * @return java.util.Iterator
-	 */
-	protected Iterator getTerminators() {
-		return null;
-	}
-
-	/**
-	 * return true when the element is a JSP element.
-	 */
-	public boolean isJSP() {
-		return false;
-	}
-
-	/**
-	 * In some elements, such as APPLET, a source generator should indent child
-	 * elements that their parents.  That is, a source generator should generate
-	 * source  of APPLET and PARAMS like this:
-	 * <PRE>
-	 *   &lt;APPLET ...&gt;
-	 *     &lt;PARAM ... &gt;
-	 *     &lt;PARAM ... &gt;
-	 *   &lt;/APPLET&gt;
-	 * <PRE>
-	 * @return boolean
-	 */
-	public boolean shouldIndentChildSource() {
-		return indentChild;
-	}
-
-	/**
-	 * Most of elements can compact spaces in their child text nodes.
-	 * Some special elements should keep them in their source.
-	 * @return boolean
-	 */
-	public boolean shouldKeepSpaces() {
-		return keepSpaces;
-	}
-
-	/**
-	 * @return boolean
-	 */
-	public boolean shouldTerminateAt(HTMLElementDeclaration nextElement) {
-		Iterator i = getTerminators();
-		if (i == null)
-			return false;
-		String nextName = nextElement.getElementName();
-		while (i.hasNext()) {
-			if (nextName.equals(i.next()))
-				return true;
-		}
-		return false;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HTMLElementDeclaration.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HTMLElementDeclaration.java
deleted file mode 100644
index 7fe71f3..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HTMLElementDeclaration.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.wst.html.core.internal.contentmodel;
-
-
-
-import org.eclipse.wst.xml.core.internal.contentmodel.CMElementDeclaration;
-
-/**
- * This interface is intended to be a public interface which has
- * interfaces defined in both of {@link <code>CMElementDeclaration</code>}
- * and {@link <code>HTMLCMNode</code>}.<br>
- * In addition to this, some interfaces are added to this interface,
- * those are specially to HTML elements.<br>
- */
-public interface HTMLElementDeclaration extends CMElementDeclaration {
-
-	/** Tag ommission; Not ommisible. */
-	int OMIT_NONE = 0;
-	/** Tag ommission; Both tags are ommisible. */
-	int OMIT_BOTH = 1;
-	/** Tag ommission; The end tag is ommisible. */
-	int OMIT_END = 2;
-	/** Tag ommission; The end tag is ommitted when created. */
-	int OMIT_END_DEFAULT = 3;
-	/** Tag ommission; The end tag must be omitted. */
-	int OMIT_END_MUST = 4;
-	/** Line Break; No break. */
-	int BREAK_NONE = 10;
-	/** Line Break; Break after the start tag. */
-	int BREAK_AFTER_START = 11;
-	/** Line Break; Break both before the start tagn and after the end tag. */
-	int BREAK_BEFORE_START_AND_AFTER_END = 12;
-	/* Layout */
-	/** initial value; the value should never returns to client programs. */
-	int LAYOUT_NONE = 100;
-	int LAYOUT_BLOCK = 101;
-	int LAYOUT_WRAP = 102;
-	/** No wrap object; like IMG, APPLET,... */
-	int LAYOUT_OBJECT = 103;
-	/** BR */
-	int LAYOUT_BREAK = 104;
-	/** Hidden object; like HTML or HEAD */
-	int LAYOUT_HIDDEN = 105;
-	/* Correction */
-	/** Correct; No correct. */
-	int CORRECT_NONE = 1000;
-	/** Correct; Meaningless when the content is empty. */
-	int CORRECT_EMPTY = 1001;
-	/** Correct; Meaningless when no attribut is set. */
-	int CORRECT_NEUTRAL = 1002;
-	/** Correct; Meaningless when same element is nested. */
-	int CORRECT_DUPLICATED = 1003;
-	/** Format; HTML */
-	int FORMAT_HTML = 10000;
-	/** Format; SSI */
-	int FORMAT_SSI = 10001;
-	/** Format; JSP script */
-	int FORMAT_JSP_SCRIPT = 10002;
-	/** Format; JSP directive */
-	int FORMAT_JSP_DIRECTIVE = 10003;
-	/** Format; XML */
-	int FORMAT_XML = 10004;
-	/** Format; MW */
-	int FORMAT_MW = 10005;
-
-	/**
-	 * A short hand method to get an attribute declaration of a HTML element.
-	 * @param attrName java.lang.String
-	 */
-	HTMLAttributeDeclaration getAttributeDeclaration(String attrName);
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HTMLEntityDeclImpl.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HTMLEntityDeclImpl.java
deleted file mode 100644
index 137647e..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HTMLEntityDeclImpl.java
+++ /dev/null
@@ -1,76 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this 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.core.internal.contentmodel;
-
-import org.eclipse.wst.html.core.internal.provisional.HTMLCMProperties;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMNode;
-
-
-
-/**
- */
-class HTMLEntityDeclImpl extends CMNodeImpl implements HTMLEntityDeclaration {
-
-	private java.lang.String value = null;
-
-	/**
-	 * CMEntityDeclImpl constructor comment.
-	 * @param entityName java.lang.String; Entity name.
-	 * @param entityValue java.lang.String; Value string.
-	 */
-	public HTMLEntityDeclImpl(String entityName, String entityValue) {
-		super(entityName);
-		value = entityValue;
-	}
-
-	/**
-	 * getName method
-	 * @return java.lang.String
-	 */
-	public String getName() {
-		return getNodeName();
-	}
-
-	/**
-	 * Get CMNode type.<br>
-	 * @return int; Always return ENTITY_DECLARATION.
-	 */
-	public int getNodeType() {
-		return CMNode.ENTITY_DECLARATION;
-	}
-
-	/**
-	 * getValue method
-	 * @return java.lang.String
-	 */
-	public String getValue() {
-		return value;
-	}
-
-	/**
-	 */
-	public boolean supports(String propertyName) {
-		if (propertyName.equals(HTMLCMProperties.SHOULD_IGNORE_CASE))
-			return true;
-		return super.supports(propertyName);
-	}
-
-	/**
-	 * Entities in HTML documents are always treated with ignoring cases.
-	 * Because no special entities are defined in JSP 1.0, this method
-	 * can always return <code>true</code>.<br>
-	 */
-	public Object getProperty(String propertyName) {
-		if (propertyName.equals(HTMLCMProperties.SHOULD_IGNORE_CASE))
-			return new Boolean(true);
-		return super.getProperty(propertyName);
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HTMLEntityDeclaration.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HTMLEntityDeclaration.java
deleted file mode 100644
index 2663e23..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HTMLEntityDeclaration.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.core.internal.contentmodel;
-
-
-
-/**
- * This interface is intended to be a public interface which has
- * interfaces defined in both of {@link <code>CMEntityDeclaration</code>}
- * and {@link <code>HTMLCMNode</code>}.<br>
- */
-public interface HTMLEntityDeclaration extends org.eclipse.wst.xml.core.internal.contentmodel.CMEntityDeclaration {
-
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HTMLPropertyDeclaration.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HTMLPropertyDeclaration.java
deleted file mode 100644
index 3553507..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HTMLPropertyDeclaration.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.html.core.internal.contentmodel;
-
-import org.eclipse.wst.xml.core.internal.contentmodel.CMContent;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMNamedNodeMap;
-
-/**
- * This interface is commonly used in declaration implementation, and internal use.
- * Use getProperty() method for public use.
- */
-public interface HTMLPropertyDeclaration {
-	/**
-	 * To determin the type, look up the following keywords in C++DOM/DTDParser.cpp:
-	 * <ul>
-	 *   <li>CORRECT_DUPLICATED - <code>GROUP_NODUP</code></li>
-	 *   <li>CORRECT_EMPTY - <code>GROUP_COMPACT</code></li>
-	 *   <li>CORRECT_NEUTRAL - <code>GROUP_NEUTRAL</code></li>
-	 *   <li>CORRECT_NONE - <code>(N/A)</code></li>
-	 * </ul>
-	 * @return int
-	 */
-	int getCorrectionType();
-	/**
-	 * Get the list of declarations those should be excluded from the content.<br>
-	 * @return org.eclipse.wst.xml.core.internal.contentmodel.CMContent
-	 */
-	CMContent getExclusion();
-	/**
-	 * To determin the type, see the following files in the C++DOM:
-	 *   ElementType.cpp - ElementType#setGroup().
-	 *   Element.cpp - Element#getStartTag().
-	 * @return int
-	 */
-	int getFormatType();
-	/**
-	 * Get the list of declarations those should be included into the content.<br>
-	 * @return org.eclipse.wst.xml.core.internal.contentmodel.CMContent
-	 */
-	CMContent getInclusion();
-	/**
-	 * To determin the type, look up the following keywords in C++DOM/DTDParser.cpp:
-	 * <ul>
-	 *   <li>LAYOUT_BLOCK - <code>GROUP_BLOCK</code></li>
-	 *   <li>LAYOUT_BREAK - <code>GROUP_BREAK</code></li>
-	 *   <li>LAYOUT_HIDDEN - <code>GROUP_HIDDEN</code></li>
-	 *   <li>LAYOUT_NONE - <code>(N/A)</code></li>
-	 *   <li>LAYOUT_OBJECT - <code>GROUP_NOWRAP</code></li>
-	 *   <li>LAYOUT_WRAP - <code>(N/A)</code></li>
-	 * </ul>
-	 * @return int
-	 */
-	int getLayoutType();
-	/**
-	 * To determine the type, see <code>Element::isBreakingBeforeElement()</code>
-	 * and <code>Element::isBreakingAfterElement()</code> defined in C++DOM/Element.cpp.<br>
-	 * @return int
-	 */
-	int getLineBreakHint();
-	/**
-	 * To determine the type, Check the HTML DTD.
-	 * And look up <code>GROUP_NOEND</code> in C++DOM/DTDParser.cpp.<br>
-	 * @return int
-	 */
-	int getOmitType();
-	/**
-	 * @return org.eclipse.wst.xml.core.internal.contentmodel.CMNamedNodeMap
-	 */
-	CMNamedNodeMap getProhibitedAncestors();
-	/**
-	 * return true when the element is a JSP element.
-	 */
-	boolean isJSP();
-	/**
-	 * @return boolean
-	 */
-	boolean shouldIndentChildSource();
-	/**
-	 * Some elements should keep spaces in its child text nodes.
-	 * For example, PRE and TEXTAREA.  This method returns true,
-	 * if a target element is one of such elements.
-	 * @return boolean
-	 */
-	boolean shouldKeepSpaces();
-	/**
-	 * Returns <code>true</code>, if <code>nextElement</code> terminates
-	 * the current element.
-	 * Some elements like <code>P</code> terminates other <code>P</code>.
-	 * That is, when <code>&lt;P&gt;</code> appears at the next to <code>P</code>,
-	 * which end tags is omitted, it represents not only the beginning of the
-	 * new <code>P</code> element but also the end of the previous <code>P</code>.
-	 */
-	boolean shouldTerminateAt(HTMLElementDeclaration nextElement);
-}
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedA.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedA.java
deleted file mode 100644
index 9ce421f..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedA.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.html.core.internal.contentmodel;
-
-
-
-import java.util.Arrays;
-
-import org.eclipse.wst.html.core.internal.provisional.HTML40Namespace;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMContent;
-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;
-
-/**
- * A.
- */
-final class HedA extends HedInlineContainer {
-
-	/**
-	 */
-	public HedA(ElementCollection collection) {
-		super(HTML40Namespace.ElementName.A, collection);
-		// CORRECT_EMPTY - GROUP_COMPACT
-		correctionType = CORRECT_EMPTY;
-	}
-
-	/**
-	 * %attrs;
-	 * (charset %Charset; #IMPLIED)
-	 * (type %ContentType; #IMPLIED)
-	 * (name CDATA #IMPLIED)
-	 * (href %URI; #IMPLIED)
-	 * (hreflang %LanguageCode; #IMPLIED)
-	 * (target %FrameTarget; #IMPLIED)
-	 * (rel %LinkTypes; #IMPLIED)
-	 * (rev %LinkTypes; #IMPLIED)
-	 * (accesskey %Character; #IMPLIED)
-	 * (directkey %Character; #IMPLIED)
-	 * (shape %Shape; rect)
-	 * (coords %Coords; #IMPLIED)
-	 * (tabindex NUMBER #IMPLIED)
-	 * (onfocus %Script; #IMPLIED)
-	 * (onblur %Script; #IMPLIED) 
-	 */
-	protected void createAttributeDeclarations() {
-		if (attributes != null)
-			return; // already created.
-		if (attributeCollection == null)
-			return; // fatal
-
-		attributes = new CMNamedNodeMapImpl();
-
-		// %attrs;
-		attributeCollection.getAttrs(attributes);
-
-		String[] names = {HTML40Namespace.ATTR_NAME_CHARSET, HTML40Namespace.ATTR_NAME_TYPE, HTML40Namespace.ATTR_NAME_NAME, HTML40Namespace.ATTR_NAME_HREF, HTML40Namespace.ATTR_NAME_HREFLANG, HTML40Namespace.ATTR_NAME_TARGET, HTML40Namespace.ATTR_NAME_REL, HTML40Namespace.ATTR_NAME_REV, HTML40Namespace.ATTR_NAME_ACCESSKEY, HTML40Namespace.ATTR_NAME_DIRECTKEY, HTML40Namespace.ATTR_NAME_SHAPE, HTML40Namespace.ATTR_NAME_COORDS, HTML40Namespace.ATTR_NAME_TABINDEX, HTML40Namespace.ATTR_NAME_ONFOCUS, HTML40Namespace.ATTR_NAME_ONBLUR};
-		attributeCollection.getDeclarations(attributes, Arrays.asList(names).iterator());
-	}
-
-	/**
-	 * Exclusion.
-	 * <code>A</code> has the exclusion.
-	 * It is <code>A</code> itself.
-	 */
-	public CMContent getExclusion() {
-		if (exclusion != null)
-			return exclusion; // already created.
-		if (elementCollection == null)
-			return null;
-
-		exclusion = new CMGroupImpl(CMGroup.CHOICE, 1, 1);
-		CMNode a = elementCollection.getNamedItem(HTML40Namespace.ElementName.A);
-		if (a != null)
-			exclusion.appendChild(a);
-
-		return exclusion;
-	}
-
-	/**
-	 */
-	public CMNamedNodeMap getProhibitedAncestors() {
-		if (prohibitedAncestors != null)
-			return prohibitedAncestors;
-
-		String[] names = {HTML40Namespace.ElementName.A, HTML40Namespace.ElementName.BUTTON};
-		prohibitedAncestors = elementCollection.getDeclarations(names);
-
-		return prohibitedAncestors;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedADDRESS.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedADDRESS.java
deleted file mode 100644
index 4f9b73c..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedADDRESS.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.core.internal.contentmodel;
-
-
-
-import org.eclipse.wst.html.core.internal.provisional.HTML40Namespace;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMNamedNodeMap;
-
-/**
- * ADDRESS.
- */
-final class HedADDRESS extends HTMLElemDeclImpl {
-
-	/**
-	 */
-	public HedADDRESS(ElementCollection collection) {
-		super(HTML40Namespace.ElementName.ADDRESS, collection);
-		typeDefinitionName = ComplexTypeDefinitionFactory.CTYPE_ADDRESS;
-		correctionType = CORRECT_EMPTY;
-		layoutType = LAYOUT_BLOCK;
-	}
-
-	/**
-	 * %attrs;
-	 */
-	protected void createAttributeDeclarations() {
-		if (attributes != null)
-			return; // already created.
-		if (attributeCollection == null)
-			return; // fatal
-
-		attributes = new CMNamedNodeMapImpl();
-
-		// %attrs;
-		attributeCollection.getAttrs(attributes);
-	}
-
-	/**
-	 */
-	public CMNamedNodeMap getProhibitedAncestors() {
-		if (prohibitedAncestors != null)
-			return prohibitedAncestors;
-
-		String[] names = {HTML40Namespace.ElementName.DIR, HTML40Namespace.ElementName.MENU};
-		prohibitedAncestors = elementCollection.getDeclarations(names);
-
-		return prohibitedAncestors;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedAPPLET.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedAPPLET.java
deleted file mode 100644
index d8244cd..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedAPPLET.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.wst.html.core.internal.contentmodel;
-
-
-
-import java.util.Arrays;
-
-import org.eclipse.wst.html.core.internal.provisional.HTML40Namespace;
-
-
-/**
- * APPLET.
- */
-final class HedAPPLET extends HTMLElemDeclImpl {
-
-	/**
-	 */
-	public HedAPPLET(ElementCollection collection) {
-		super(HTML40Namespace.ElementName.APPLET, collection);
-		typeDefinitionName = ComplexTypeDefinitionFactory.CTYPE_PARAM_CONTAINER;
-		layoutType = LAYOUT_OBJECT;
-		indentChild = true;
-	}
-
-	/**
-	 * %coreattrs;
-	 * (codebase %URI; #IMPLIED)
-	 * (archive CDATA #IMPLIED)
-	 * (code CDATA #IMPLIED)
-	 * (object CDATA #IMPLIED)
-	 * (alt %Text; #IMPLIED) ... should be defined locally.
-	 * (name CDATA #IMPLIED)
-	 * (width %Length; #REQUIRED)
-	 * (height %Length; #REQUIRED)
-	 * (align %IAlign; #IMPLIED)
-	 * (hspace %Pixels; #IMPLIED)
-	 * (vspace %Pixels; #IMPLIED)
-	 * (mayscript (mayscript) #IMPLIED)
-	 */
-	protected void createAttributeDeclarations() {
-		if (attributes != null)
-			return; // already created.
-		if (attributeCollection == null)
-			return; // fatal
-
-		attributes = new CMNamedNodeMapImpl();
-
-		// %coreattrs;
-		attributeCollection.getCore(attributes);
-
-		String[] names = {HTML40Namespace.ATTR_NAME_CODEBASE, HTML40Namespace.ATTR_NAME_ARCHIVE, HTML40Namespace.ATTR_NAME_CODE, HTML40Namespace.ATTR_NAME_OBJECT, HTML40Namespace.ATTR_NAME_ALT, HTML40Namespace.ATTR_NAME_NAME, HTML40Namespace.ATTR_NAME_WIDTH, HTML40Namespace.ATTR_NAME_HEIGHT, HTML40Namespace.ATTR_NAME_HSPACE, HTML40Namespace.ATTR_NAME_VSPACE, HTML40Namespace.ATTR_NAME_MAYSCRIPT};
-		attributeCollection.getDeclarations(attributes, Arrays.asList(names).iterator());
-
-		// %align; ... should be defined locally.
-		HTMLAttrDeclImpl attr = AttributeCollection.createAlignForImage();
-		if (attr != null)
-			attributes.putNamedItem(HTML40Namespace.ATTR_NAME_ALIGN, attr);
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedAREA.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedAREA.java
deleted file mode 100644
index 567e6ce..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedAREA.java
+++ /dev/null
@@ -1,61 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this 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.core.internal.contentmodel;
-
-
-
-import java.util.Arrays;
-
-import org.eclipse.wst.html.core.internal.provisional.HTML40Namespace;
-
-
-/**
- * AREA.
- */
-final class HedAREA extends HedEmpty {
-
-	/**
-	 */
-	public HedAREA(ElementCollection collection) {
-		super(HTML40Namespace.ElementName.AREA, collection);
-		// LAYOUT_HIDDEN.
-		// Because, AREA is GROUP_HIDDEN in the C++DOM/DTDParser.cpp.
-		layoutType = LAYOUT_HIDDEN;
-	}
-
-	/**
-	 * AREA.
-	 * %attrs;
-	 * (shape %Shape; rect)
-	 * (coords %Coords; #IMPLIED)
-	 * (href %URI; #IMPLIED)
-	 * (target %FrameTarget; #IMPLIED)
-	 * (nohref (nohref) #IMPLIED)
-	 * (alt %Text; #REQUIRED)
-	 * (tabindex NUMBER #IMPLIED)
-	 * (accesskey %Character; #IMPLIED)
-	 * (onfocus %Script; #IMPLIED)
-	 * (onblur %Script; #IMPLIED)
-	 */
-	protected void createAttributeDeclarations() {
-		if (attributes != null)
-			return; // already created.
-		if (attributeCollection == null)
-			return; // fatal
-		attributes = new CMNamedNodeMapImpl();
-
-		// %attrs;
-		attributeCollection.getAttrs(attributes);
-
-		String[] names = {HTML40Namespace.ATTR_NAME_SHAPE, HTML40Namespace.ATTR_NAME_COORDS, HTML40Namespace.ATTR_NAME_HREF, HTML40Namespace.ATTR_NAME_TARGET, HTML40Namespace.ATTR_NAME_NOHREF, HTML40Namespace.ATTR_NAME_ALT, HTML40Namespace.ATTR_NAME_TABINDEX, HTML40Namespace.ATTR_NAME_ACCESSKEY, HTML40Namespace.ATTR_NAME_ONFOCUS, HTML40Namespace.ATTR_NAME_ONBLUR};
-		attributeCollection.getDeclarations(attributes, Arrays.asList(names).iterator());
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedBASE.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedBASE.java
deleted file mode 100644
index 7417dae..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedBASE.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.core.internal.contentmodel;
-
-
-
-import java.util.Arrays;
-
-import org.eclipse.wst.html.core.internal.provisional.HTML40Namespace;
-
-
-/**
- * BASE.
- */
-final class HedBASE extends HedEmpty {
-
-	/**
-	 */
-	public HedBASE(ElementCollection collection) {
-		super(HTML40Namespace.ElementName.BASE, collection);
-		// LAYOUT_HIDDEN.
-		// Because, BASE is GROUP_HIDDEN in the C++DOM/DTDParser.cpp.
-		layoutType = LAYOUT_HIDDEN;
-	}
-
-	/**
-	 * BASE.
-	 * (href %URI; #IMPLIED)
-	 * (target %FrameTarget; #IMPLIED)
-	 */
-	protected void createAttributeDeclarations() {
-		if (attributes != null)
-			return; // already created.
-		if (attributeCollection == null)
-			return; // fatal
-
-		attributes = new CMNamedNodeMapImpl();
-
-		String[] names = {HTML40Namespace.ATTR_NAME_HREF, HTML40Namespace.ATTR_NAME_TARGET};
-		attributeCollection.getDeclarations(attributes, Arrays.asList(names).iterator());
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedBASEFONT.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedBASEFONT.java
deleted file mode 100644
index 01ccce0..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedBASEFONT.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.html.core.internal.contentmodel;
-
-
-
-import java.util.Arrays;
-
-import org.eclipse.wst.html.core.internal.provisional.HTML40Namespace;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMAttributeDeclaration;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMDataType;
-
-/**
- * BASEFONT.
- */
-final class HedBASEFONT extends HedEmpty {
-
-	/**
-	 */
-	public HedBASEFONT(ElementCollection collection) {
-		super(HTML40Namespace.ElementName.BASEFONT, collection);
-		// LAYOUT_OBJECT - GROUP_NOWRAP.
-		layoutType = LAYOUT_OBJECT;
-	}
-
-	/**
-	 * BASEFONT.
-	 * (id ID #IMPLIED)
-	 * (size CDATA #REQUIRED) ... should be localy defined.
-	 * (color %Color; #IMPLIED)
-	 * (face CDATA #IMPLIED)
-	 */
-	protected void createAttributeDeclarations() {
-		if (attributes != null)
-			return; // already created.
-		if (attributeCollection == null)
-			return; // fatal
-
-		attributes = new CMNamedNodeMapImpl();
-
-		String[] names = {HTML40Namespace.ATTR_NAME_ID, HTML40Namespace.ATTR_NAME_COLOR, HTML40Namespace.ATTR_NAME_FACE};
-		attributeCollection.getDeclarations(attributes, Arrays.asList(names).iterator());
-
-		// (size CDATA #REQUIRED) ... should be localy defined.
-		HTMLCMDataTypeImpl atype = new HTMLCMDataTypeImpl(CMDataType.CDATA);
-		HTMLAttrDeclImpl attr = new HTMLAttrDeclImpl(HTML40Namespace.ATTR_NAME_SIZE, atype, CMAttributeDeclaration.REQUIRED);
-		attributes.putNamedItem(HTML40Namespace.ATTR_NAME_SIZE, attr);
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedBDO.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedBDO.java
deleted file mode 100644
index 67c2609..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedBDO.java
+++ /dev/null
@@ -1,61 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this 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.core.internal.contentmodel;
-
-
-
-import java.util.Arrays;
-
-import org.eclipse.wst.html.core.internal.provisional.HTML40Namespace;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMAttributeDeclaration;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMDataType;
-
-/**
- * BDO.
- */
-final class HedBDO extends HedInlineContainer {
-
-	/**
-	 */
-	public HedBDO(ElementCollection collection) {
-		super(HTML40Namespace.ElementName.BDO, collection);
-		// CORRECT_EMPTY - GROUP_COMPACT
-		correctionType = CORRECT_EMPTY;
-	}
-
-	/**
-	 * %coreattrs;
-	 * (lang %LanguageCode; #IMPLIED)
-	 * (dir (ltr|rtl) #REQUIRED) ... should be defined locally.
-	 */
-	protected void createAttributeDeclarations() {
-		if (attributes != null)
-			return; // already created.
-		if (attributeCollection == null)
-			return; // fatal
-
-		attributes = new CMNamedNodeMapImpl();
-
-		// %coreattrs;
-		attributeCollection.getCore(attributes);
-
-		String[] names = {HTML40Namespace.ATTR_NAME_LANG};
-		attributeCollection.getDeclarations(attributes, Arrays.asList(names).iterator());
-
-		//  (dir (ltr|rtl) #REQUIRED) ... should be defined locally.
-		HTMLCMDataTypeImpl atype = new HTMLCMDataTypeImpl(CMDataType.ENUM);
-		String[] values = {HTML40Namespace.ATTR_VALUE_LTR, HTML40Namespace.ATTR_VALUE_RTL};
-		atype.setEnumValues(values);
-
-		HTMLAttrDeclImpl attr = new HTMLAttrDeclImpl(HTML40Namespace.ATTR_NAME_DIR, atype, CMAttributeDeclaration.REQUIRED);
-		attributes.putNamedItem(HTML40Namespace.ATTR_NAME_DIR, attr);
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedBGSOUND.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedBGSOUND.java
deleted file mode 100644
index 03b0881..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedBGSOUND.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.html.core.internal.contentmodel;
-
-import org.eclipse.wst.html.core.internal.provisional.HTML40Namespace;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMAttributeDeclaration;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMDataType;
-
-
-
-final class HedBGSOUND extends HedEmpty {
-
-	public HedBGSOUND(ElementCollection collection) {
-		super(HTML40Namespace.ElementName.BGSOUND, collection);
-		layoutType = LAYOUT_OBJECT;
-	}
-
-	/**
-	 * (src, CDATA, #IMPLIED)
-	 * (loop, CDATA, #IMPLIED)
-	 */
-	protected void createAttributeDeclarations() {
-		if (attributes != null)
-			return;
-		if (attributeCollection == null)
-			return; // fatal
-		attributes = new CMNamedNodeMapImpl();
-		// src
-		HTMLAttributeDeclaration attr = attributeCollection.getDeclaration(HTML40Namespace.ATTR_NAME_SRC);
-		if (attr != null)
-			attributes.putNamedItem(HTML40Namespace.ATTR_NAME_SRC, attr);
-		// loop
-		HTMLCMDataTypeImpl atype = new HTMLCMDataTypeImpl(CMDataType.CDATA);
-		atype.setImpliedValue(CMDataType.IMPLIED_VALUE_DEFAULT, HTML40Namespace.ATTR_VALUE_INFINITE);
-		attr = new HTMLAttrDeclImpl(HTML40Namespace.ATTR_NAME_LOOP, atype, CMAttributeDeclaration.OPTIONAL);
-		if (attr != null)
-			attributes.putNamedItem(HTML40Namespace.ATTR_NAME_LOOP, attr);
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedBLOCKQUOTE.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedBLOCKQUOTE.java
deleted file mode 100644
index b587b23..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedBLOCKQUOTE.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.core.internal.contentmodel;
-
-
-
-import java.util.Arrays;
-
-import org.eclipse.wst.html.core.internal.provisional.HTML40Namespace;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMNamedNodeMap;
-
-/**
- * BLOCKQUOTE.
- */
-final class HedBLOCKQUOTE extends HedFlowContainer {
-
-	/**
-	 */
-	public HedBLOCKQUOTE(ElementCollection collection) {
-		super(HTML40Namespace.ElementName.BLOCKQUOTE, collection);
-		correctionType = CORRECT_EMPTY;
-		layoutType = LAYOUT_BLOCK;
-	}
-
-	/**
-	 * %attrs;
-	 * (cite %URI; #IMPLIED) 
-	 */
-	protected void createAttributeDeclarations() {
-		if (attributes != null)
-			return; // already created.
-		if (attributeCollection == null)
-			return; // fatal
-
-		attributes = new CMNamedNodeMapImpl();
-
-		// %attrs;
-		attributeCollection.getAttrs(attributes);
-
-		String[] names = {HTML40Namespace.ATTR_NAME_CITE};
-		attributeCollection.getDeclarations(attributes, Arrays.asList(names).iterator());
-	}
-
-	/**
-	 */
-	public CMNamedNodeMap getProhibitedAncestors() {
-		if (prohibitedAncestors != null)
-			return prohibitedAncestors;
-
-		String[] names = {HTML40Namespace.ElementName.DIR, HTML40Namespace.ElementName.MENU};
-		prohibitedAncestors = elementCollection.getDeclarations(names);
-
-		return prohibitedAncestors;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedBODY.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedBODY.java
deleted file mode 100644
index ad52960..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedBODY.java
+++ /dev/null
@@ -1,96 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this 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.core.internal.contentmodel;
-
-
-
-import java.util.Arrays;
-import java.util.Iterator;
-
-import org.eclipse.wst.html.core.internal.provisional.HTML40Namespace;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMContent;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMGroup;
-
-/**
- * BODY.
- */
-final class HedBODY extends HedFlowContainer {
-
-	private static String[] terminators = {HTML40Namespace.ElementName.HEAD, HTML40Namespace.ElementName.BODY, HTML40Namespace.ElementName.FRAMESET, HTML40Namespace.ElementName.HTML};
-
-	/**
-	 */
-	public HedBODY(ElementCollection collection) {
-		super(HTML40Namespace.ElementName.BODY, collection);
-		layoutType = LAYOUT_BLOCK;
-		omitType = OMIT_BOTH;
-	}
-
-	/**
-	 * %attrs;
-	 * %bodycolors;
-	 * (onload %Script; #IMPLIED)
-	 * (onunload %Script; #IMPLIED)
-	 * (background %URI; #IMPLIED)
-	 * (marginwidth %Pixels; #IMPLIED) ... D205514
-	 * (marginheight %Pixels; #IMPLIED) .. D205514
-	 * (topmargin, CDATA, #IMPLIED) ...... D205514
-	 * (bottommargin, CDATA, #IMPLIED) ... D205514
-	 * (leftmargin, CDATA, #IMPLIED) ..... D205514
-	 * (rightmargin, CDATA, #IMPLIED) .... D205514
-	 */
-	protected void createAttributeDeclarations() {
-		if (attributes != null)
-			return; // already created.
-		if (attributeCollection == null)
-			return; // fatal
-
-		attributes = new CMNamedNodeMapImpl();
-
-		// %attrs;
-		attributeCollection.getAttrs(attributes);
-		// %bodycolors;
-		attributeCollection.getBodycolors(attributes);
-
-		String[] names = {HTML40Namespace.ATTR_NAME_ONLOAD, HTML40Namespace.ATTR_NAME_ONUNLOAD, HTML40Namespace.ATTR_NAME_BACKGROUND,
-		// <<D205514
-					HTML40Namespace.ATTR_NAME_MARGINWIDTH, HTML40Namespace.ATTR_NAME_MARGINHEIGHT, HTML40Namespace.ATTR_NAME_TOPMARGIN, HTML40Namespace.ATTR_NAME_BOTTOMMARGIN, HTML40Namespace.ATTR_NAME_LEFTMARGIN, HTML40Namespace.ATTR_NAME_RIGHTMARGIN
-		// D205514
-		};
-		attributeCollection.getDeclarations(attributes, Arrays.asList(names).iterator());
-	}
-
-	/**
-	 * Inclusion.
-	 * "Lazy eval."<br>
-	 * @return org.eclipse.wst.xml.core.internal.contentmodel.CMContent
-	 */
-	public CMContent getInclusion() {
-		if (inclusion != null)
-			return inclusion; // already created.
-		if (elementCollection == null)
-			return null;
-
-		// (INS|DEL)
-		inclusion = new CMGroupImpl(CMGroup.CHOICE, 1, 1);
-		String[] names = {HTML40Namespace.ElementName.INS, HTML40Namespace.ElementName.DEL};
-		elementCollection.getDeclarations(inclusion, Arrays.asList(names).iterator());
-		return inclusion;
-	}
-
-	/**
-	 * BODY has terminators.
-	 * @return java.util.Iterator
-	 */
-	protected Iterator getTerminators() {
-		return Arrays.asList(terminators).iterator();
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedBR.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedBR.java
deleted file mode 100644
index 39749a5..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedBR.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.html.core.internal.contentmodel;
-
-import org.eclipse.wst.html.core.internal.provisional.HTML40Namespace;
-
-
-
-/**
- * BR.
- */
-final class HedBR extends HedEmpty {
-
-	/**
-	 */
-	public HedBR(ElementCollection collection) {
-		super(HTML40Namespace.ElementName.BR, collection);
-		// LAYOUT_BREAK.
-		// Because, BR is GROUP_BREAK in the C++DOM/DTDParser.cpp.
-		layoutType = LAYOUT_BREAK;
-	}
-
-	/**
-	 * BR.
-	 * %coreattrs;
-	 * (clear (left | all | right | none) none)
-	 */
-	protected void createAttributeDeclarations() {
-		if (attributes != null)
-			return; // already created.
-		if (attributeCollection == null)
-			return; // fatal
-
-		attributes = new CMNamedNodeMapImpl();
-
-		// %coreattrs;
-		attributeCollection.getCore(attributes);
-		// clear
-		HTMLAttributeDeclaration attr = attributeCollection.getDeclaration(HTML40Namespace.ATTR_NAME_CLEAR);
-		if (attr != null)
-			attributes.putNamedItem(HTML40Namespace.ATTR_NAME_CLEAR, attr);
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedBUTTON.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedBUTTON.java
deleted file mode 100644
index 6112d25..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedBUTTON.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.html.core.internal.contentmodel;
-
-
-
-import java.util.Arrays;
-
-import org.eclipse.wst.html.core.internal.provisional.HTML40Namespace;
-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.CMGroup;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMNamedNodeMap;
-
-/**
- * BUTTON.
- */
-final class HedBUTTON extends HedFlowContainer {
-
-	/**
-	 */
-	public HedBUTTON(ElementCollection collection) {
-		super(HTML40Namespace.ElementName.BUTTON, collection);
-		layoutType = LAYOUT_BLOCK;
-	}
-
-	/**
-	 * %attrs;
-	 * %reserved; ... empty.
-	 * (name CDATA #IMPLIED)
-	 * (value CDATA #IMPLIED)
-	 * (type (button|submit|reset) submit) ... should be defined locally.
-	 * (disabled (disabled) #IMPLIED)
-	 * (tabindex NUMBER #IMPLIED)
-	 * (accesskey %Character; #IMPLIED)
-	 * (onfocus %Script; #IMPLIED)
-	 * (onblur %Script; #IMPLIED)
-	 */
-	protected void createAttributeDeclarations() {
-		if (attributes != null)
-			return; // already created.
-		if (attributeCollection == null)
-			return; // fatal
-
-		attributes = new CMNamedNodeMapImpl();
-
-		// %attrs;
-		attributeCollection.getAttrs(attributes);
-
-		String[] names = {HTML40Namespace.ATTR_NAME_NAME, HTML40Namespace.ATTR_NAME_VALUE, HTML40Namespace.ATTR_NAME_DISABLED, HTML40Namespace.ATTR_NAME_TABINDEX, HTML40Namespace.ATTR_NAME_ACCESSKEY, HTML40Namespace.ATTR_NAME_ONFOCUS, HTML40Namespace.ATTR_NAME_ONBLUR};
-		attributeCollection.getDeclarations(attributes, Arrays.asList(names).iterator());
-
-		// (type (button|submit|reset) submit) ... should be defined locally.
-		HTMLCMDataTypeImpl atype = new HTMLCMDataTypeImpl(CMDataType.ENUM);
-		String[] values = {HTML40Namespace.ATTR_VALUE_BUTTON, HTML40Namespace.ATTR_VALUE_SUBMIT, HTML40Namespace.ATTR_VALUE_RESET};
-		atype.setEnumValues(values);
-
-		HTMLAttrDeclImpl attr = new HTMLAttrDeclImpl(HTML40Namespace.ATTR_NAME_TYPE, atype, CMAttributeDeclaration.OPTIONAL);
-		attributes.putNamedItem(HTML40Namespace.ATTR_NAME_TYPE, attr);
-	}
-
-	/**
-	 * Exclusion.
-	 * <code>FORM</code> has the exclusion.
-	 * It is <code>FORM</code> itself.
-	 */
-	public CMContent getExclusion() {
-		if (exclusion != null)
-			return exclusion; // already created.
-		if (elementCollection == null)
-			return null; // fatal
-
-		exclusion = new CMGroupImpl(CMGroup.CHOICE, 1, 1);
-		String[] names = {HTML40Namespace.ElementName.A, HTML40Namespace.ElementName.FORM, HTML40Namespace.ElementName.ISINDEX, HTML40Namespace.ElementName.FIELDSET, HTML40Namespace.ElementName.IFRAME};
-		elementCollection.getDeclarations(exclusion, Arrays.asList(names).iterator());
-		elementCollection.getFormctrl(exclusion);
-
-		return exclusion;
-	}
-
-	/**
-	 */
-	public CMNamedNodeMap getProhibitedAncestors() {
-		if (prohibitedAncestors != null)
-			return prohibitedAncestors;
-
-		String[] names = {HTML40Namespace.ElementName.BUTTON};
-		prohibitedAncestors = elementCollection.getDeclarations(names);
-
-		return prohibitedAncestors;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedCAPTION.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedCAPTION.java
deleted file mode 100644
index 167086c..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedCAPTION.java
+++ /dev/null
@@ -1,48 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this 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.core.internal.contentmodel;
-
-import org.eclipse.wst.html.core.internal.provisional.HTML40Namespace;
-
-
-
-/**
- * CAPTION.
- */
-final class HedCAPTION extends HedInlineContainer {
-
-	/**
-	 */
-	public HedCAPTION(ElementCollection collection) {
-		super(HTML40Namespace.ElementName.CAPTION, collection);
-		layoutType = LAYOUT_BLOCK;
-	}
-
-	/**
-	 * %attrs;
-	 * (align %CAlign; #IMPLIED) ... should be defined locally.
-	 */
-	protected void createAttributeDeclarations() {
-		if (attributes != null)
-			return; // already created.
-		if (attributeCollection == null)
-			return; // fatal
-
-		attributes = new CMNamedNodeMapImpl();
-
-		// %attrs;
-		attributeCollection.getAttrs(attributes);
-
-		HTMLAttrDeclImpl attr = AttributeCollection.createAlignForCaption();
-		if (attr != null)
-			attributes.putNamedItem(HTML40Namespace.ATTR_NAME_ALIGN, attr);
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedCENTER.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedCENTER.java
deleted file mode 100644
index 310a875..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedCENTER.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.core.internal.contentmodel;
-
-
-
-import org.eclipse.wst.html.core.internal.provisional.HTML40Namespace;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMNamedNodeMap;
-
-/**
- * CENTER.
- */
-final class HedCENTER extends HedFlowContainer {
-
-	/**
-	 */
-	public HedCENTER(ElementCollection collection) {
-		super(HTML40Namespace.ElementName.CENTER, collection);
-		layoutType = LAYOUT_BLOCK;
-	}
-
-	/**
-	 * %attrs;
-	 */
-	protected void createAttributeDeclarations() {
-		if (attributes != null)
-			return; // already created.
-		if (attributeCollection == null)
-			return; // fatal
-
-		attributes = new CMNamedNodeMapImpl();
-
-		// %attrs;
-		attributeCollection.getAttrs(attributes);
-	}
-
-	/**
-	 */
-	public CMNamedNodeMap getProhibitedAncestors() {
-		if (prohibitedAncestors != null)
-			return prohibitedAncestors;
-
-		String[] names = {HTML40Namespace.ElementName.DIR, HTML40Namespace.ElementName.MENU};
-		prohibitedAncestors = elementCollection.getDeclarations(names);
-
-		return prohibitedAncestors;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedCOL.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedCOL.java
deleted file mode 100644
index e381ed3..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedCOL.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.wst.html.core.internal.contentmodel;
-
-
-
-import java.util.Arrays;
-
-import org.eclipse.wst.html.core.internal.provisional.HTML40Namespace;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMAttributeDeclaration;
-
-/**
- * COL.
- */
-final class HedCOL extends HedEmpty {
-
-	/**
-	 */
-	public HedCOL(ElementCollection collection) {
-		super(HTML40Namespace.ElementName.COL, collection);
-		// LAYOUT_BLOCK.
-		// Because, COL is GROUP_BLOCK in the C++DOM/DTDParser.cpp.
-		layoutType = LAYOUT_BLOCK;
-	}
-
-	/**
-	 * COL.
-	 * %attrs;
-	 * (span NUMBER 1)
-	 * (width %MultiLength; #IMPLIED) ... should be defined locally.
-	 * %cellhalign;
-	 * %cellvalign;
-	 */
-	protected void createAttributeDeclarations() {
-		if (attributes != null)
-			return; // already created.
-		if (attributeCollection == null)
-			return; // fatal
-
-		attributes = new CMNamedNodeMapImpl();
-
-		// %attrs;
-		attributeCollection.getAttrs(attributes);
-
-		// (span NUMBER 1)
-		String[] names = {HTML40Namespace.ATTR_NAME_SPAN};
-		attributeCollection.getDeclarations(attributes, Arrays.asList(names).iterator());
-
-		// (width %MultiLength; #IMPLIED) ... should be defined locally.
-		HTMLCMDataTypeImpl atype = new HTMLCMDataTypeImpl(HTMLCMDataType.MULTI_LENGTH);
-		HTMLAttrDeclImpl attr = new HTMLAttrDeclImpl(HTML40Namespace.ATTR_NAME_WIDTH, atype, CMAttributeDeclaration.OPTIONAL);
-		attributes.putNamedItem(HTML40Namespace.ATTR_NAME_WIDTH, attr);
-
-		// %cellhalign;
-		attributeCollection.getCellhalign(attributes);
-		// %cellvalign;
-		attributeCollection.getCellvalign(attributes);
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedCOLGROUP.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedCOLGROUP.java
deleted file mode 100644
index 7bf229c..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedCOLGROUP.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.wst.html.core.internal.contentmodel;
-
-
-
-import java.util.Arrays;
-import java.util.Iterator;
-
-import org.eclipse.wst.html.core.internal.provisional.HTML40Namespace;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMAttributeDeclaration;
-
-/**
- * COLGROUP.
- */
-final class HedCOLGROUP extends HTMLElemDeclImpl {
-
-	private static String[] terminators = {HTML40Namespace.ElementName.COLGROUP, HTML40Namespace.ElementName.CAPTION, HTML40Namespace.ElementName.THEAD, HTML40Namespace.ElementName.TBODY, HTML40Namespace.ElementName.TFOOT, HTML40Namespace.ElementName.TR};
-
-	public HedCOLGROUP(ElementCollection collection) {
-		super(HTML40Namespace.ElementName.COLGROUP, collection);
-		typeDefinitionName = ComplexTypeDefinitionFactory.CTYPE_COLUMN_GROUP;
-		layoutType = LAYOUT_BLOCK;
-		omitType = OMIT_END;
-		indentChild = true;
-	}
-
-	/**
-	 * %attrs;
-	 * (span NUMBER 1)
-	 * (width %MultiLength; #IMPLIED) ... should be defined locally.
-	 * %cellhalign;
-	 * %cellvalign;
-	 */
-	protected void createAttributeDeclarations() {
-		if (attributes != null)
-			return; // already created.
-		if (attributeCollection == null)
-			return; // fatal
-
-		attributes = new CMNamedNodeMapImpl();
-
-		// %attrs;
-		attributeCollection.getAttrs(attributes);
-		// %cellhalign;
-		attributeCollection.getCellhalign(attributes);
-		// %cellvalign;
-		attributeCollection.getCellvalign(attributes);
-
-		String[] names = {HTML40Namespace.ATTR_NAME_SPAN};
-		attributeCollection.getDeclarations(attributes, Arrays.asList(names).iterator());
-
-		// (width %MultiLength; #IMPLIED) ... should be defined locally.
-		HTMLCMDataTypeImpl atype = new HTMLCMDataTypeImpl(HTMLCMDataType.MULTI_LENGTH);
-		HTMLAttrDeclImpl attr = new HTMLAttrDeclImpl(HTML40Namespace.ATTR_NAME_WIDTH, atype, CMAttributeDeclaration.OPTIONAL);
-		attributes.putNamedItem(HTML40Namespace.ATTR_NAME_WIDTH, attr);
-	}
-
-	/**
-	 * LI has terminators.
-	 * @return java.util.Iterator
-	 */
-	protected Iterator getTerminators() {
-		return Arrays.asList(terminators).iterator();
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedDD.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedDD.java
deleted file mode 100644
index a200227..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedDD.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.html.core.internal.contentmodel;
-
-
-
-import java.util.Arrays;
-import java.util.Iterator;
-
-import org.eclipse.wst.html.core.internal.provisional.HTML40Namespace;
-
-
-/**
- * DD.
- */
-final class HedDD extends HedFlowContainer {
-
-	private static String[] terminators = {HTML40Namespace.ElementName.DT, HTML40Namespace.ElementName.DD};
-
-	/**
-	 */
-	public HedDD(ElementCollection collection) {
-		super(HTML40Namespace.ElementName.DD, collection);
-		correctionType = CORRECT_EMPTY;
-		layoutType = LAYOUT_BLOCK;
-		omitType = OMIT_END_DEFAULT;
-	}
-
-	/**
-	 * %attrs;
-	 */
-	protected void createAttributeDeclarations() {
-		if (attributes != null)
-			return; // already created.
-		if (attributeCollection == null)
-			return; // fatal
-
-		attributes = new CMNamedNodeMapImpl();
-
-		// %attrs;
-		attributeCollection.getAttrs(attributes);
-	}
-
-	/**
-	 * DD has terminators.
-	 * @return java.util.Iterator
-	 */
-	protected Iterator getTerminators() {
-		return Arrays.asList(terminators).iterator();
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedDIV.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedDIV.java
deleted file mode 100644
index 54aa19d..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedDIV.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.core.internal.contentmodel;
-
-
-
-import org.eclipse.wst.html.core.internal.provisional.HTML40Namespace;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMNamedNodeMap;
-
-/**
- * DIV.
- */
-final class HedDIV extends HedFlowContainer {
-
-	/**
-	 */
-	public HedDIV(ElementCollection collection) {
-		super(HTML40Namespace.ElementName.DIV, collection);
-		layoutType = LAYOUT_BLOCK;
-	}
-
-	/**
-	 * %attrs;
-	 * %align;
-	 * %reserved;
-	 */
-	protected void createAttributeDeclarations() {
-		if (attributes != null)
-			return; // already created.
-		if (attributeCollection == null)
-			return; // fatal
-
-		attributes = new CMNamedNodeMapImpl();
-
-		// %attrs;
-		attributeCollection.getAttrs(attributes);
-		// %align;
-		HTMLAttrDeclImpl attr = AttributeCollection.createAlignForParagraph();
-		if (attr != null)
-			attributes.putNamedItem(HTML40Namespace.ATTR_NAME_ALIGN, attr);
-		// %reserved; ... empty
-	}
-
-	/**
-	 */
-	public CMNamedNodeMap getProhibitedAncestors() {
-		if (prohibitedAncestors != null)
-			return prohibitedAncestors;
-
-		String[] names = {HTML40Namespace.ElementName.DIR, HTML40Namespace.ElementName.MENU};
-		prohibitedAncestors = elementCollection.getDeclarations(names);
-
-		return prohibitedAncestors;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedDL.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedDL.java
deleted file mode 100644
index ec67ee9..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedDL.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
- *******************************************************************************/
-package org.eclipse.wst.html.core.internal.contentmodel;
-
-
-
-import java.util.Arrays;
-
-import org.eclipse.wst.html.core.internal.provisional.HTML40Namespace;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMNamedNodeMap;
-
-/**
- * DL.
- */
-final class HedDL extends HTMLElemDeclImpl {
-
-	/**
-	 */
-	public HedDL(ElementCollection collection) {
-		super(HTML40Namespace.ElementName.DL, collection);
-		typeDefinitionName = ComplexTypeDefinitionFactory.CTYPE_DEFINITION_LIST;
-		correctionType = CORRECT_EMPTY;
-		layoutType = LAYOUT_BLOCK;
-		indentChild = true;
-	}
-
-	/**
-	 * %arrays;
-	 * (compact (compact) #IMPLIED)
-	 */
-	protected void createAttributeDeclarations() {
-		if (attributes != null)
-			return; // already created.
-		if (attributeCollection == null)
-			return; // fatal
-		attributes = new CMNamedNodeMapImpl();
-
-		// %attrs;
-		attributeCollection.getAttrs(attributes);
-
-		String[] names = {HTML40Namespace.ATTR_NAME_COMPACT};
-		attributeCollection.getDeclarations(attributes, Arrays.asList(names).iterator());
-	}
-
-	/**
-	 */
-	public CMNamedNodeMap getProhibitedAncestors() {
-		if (prohibitedAncestors != null)
-			return prohibitedAncestors;
-
-		String[] names = {HTML40Namespace.ElementName.DIR, HTML40Namespace.ElementName.MENU};
-		prohibitedAncestors = elementCollection.getDeclarations(names);
-
-		return prohibitedAncestors;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedDT.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedDT.java
deleted file mode 100644
index 7ace822..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedDT.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.html.core.internal.contentmodel;
-
-
-
-import java.util.Arrays;
-import java.util.Iterator;
-
-import org.eclipse.wst.html.core.internal.provisional.HTML40Namespace;
-
-
-/**
- * DT.
- */
-final class HedDT extends HedInlineContainer {
-
-	private static String[] terminators = {HTML40Namespace.ElementName.DT, HTML40Namespace.ElementName.DD};
-
-	/**
-	 */
-	public HedDT(ElementCollection collection) {
-		super(HTML40Namespace.ElementName.DT, collection);
-		correctionType = CORRECT_EMPTY;
-		layoutType = LAYOUT_BLOCK;
-		omitType = OMIT_END_DEFAULT;
-	}
-
-	/**
-	 * %attrs;
-	 */
-	protected void createAttributeDeclarations() {
-		if (attributes != null)
-			return; // already created.
-		if (attributeCollection == null)
-			return; // fatal
-
-		attributes = new CMNamedNodeMapImpl();
-
-		// %attrs;
-		attributeCollection.getAttrs(attributes);
-	}
-
-	/**
-	 * DT has terminators.
-	 * @return java.util.Iterator
-	 */
-	protected Iterator getTerminators() {
-		return Arrays.asList(terminators).iterator();
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedEMBED.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedEMBED.java
deleted file mode 100644
index 558a3d7..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedEMBED.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.wst.html.core.internal.contentmodel;
-
-
-
-import java.util.Arrays;
-
-import org.eclipse.wst.html.core.internal.provisional.HTML40Namespace;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMAttributeDeclaration;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMDataType;
-
-/**
- * EMBED.
- */
-final class HedEMBED extends HTMLElemDeclImpl {
-
-	/**
-	 */
-	public HedEMBED(ElementCollection collection) {
-		super(HTML40Namespace.ElementName.EMBED, collection);
-		typeDefinitionName = ComplexTypeDefinitionFactory.CTYPE_EMBED;
-		layoutType = LAYOUT_OBJECT;
-		omitType = OMIT_END_DEFAULT;
-	}
-
-	/**
-	 * %coreattrs;
-	 * %events;
-	 * (src %URI; #REQUIRED) ... should be defined locally.
-	 * (height %Length; #IMPLIED)
-	 * (width %Length; #IMPLIED)
-	 * (align %IAlign; #IMPLIED) ... should be defined locally.
-	 * (hspace %Pixels; #IMPLIED)
-	 * (vspace %Pixels; #IMPLIED)
-	 * (loop CDATA #IMPLIED)
-	 * (hidden CDATA #IMPLIED)
-	 * (volume CDATA #IMPLIED)
-	 * (autostart (true|false) #IMPLIED)
-	 * (autoplay (true|false) #IMPLIED)
-	 * (autosize (true|false) #IMPLIED)
-	 * (controller (true|false) true)
-	 * (scale CDATA #IMPLIED)
-	 * (showcontrols (true|false) #IMPLIED)
-	 * (playcount NUMBER #IMPLIED)
-	 * (repeat CDATA #IMPLIED)
-	 * (panel CDATA #IMPLIED)
-	 * (text CDATA #IMPLIED)
-	 * (palette CDATA #IMPLIED)
-	 * (textfocus CDATA #IMPLIED)
-	 * (type CDATA #IMPLIED) ... should be defined locally.
-	 */
-	protected void createAttributeDeclarations() {
-		if (attributes != null)
-			return; // already created.
-		if (attributeCollection == null)
-			return; // fatal
-
-		attributes = new CMNamedNodeMapImpl();
-
-		// %coreattrs;
-		attributeCollection.getCore(attributes);
-		// %events;
-		attributeCollection.getEvents(attributes);
-
-		String[] names = {HTML40Namespace.ATTR_NAME_HEIGHT, HTML40Namespace.ATTR_NAME_WIDTH, HTML40Namespace.ATTR_NAME_HSPACE, HTML40Namespace.ATTR_NAME_VSPACE, HTML40Namespace.ATTR_NAME_LOOP, HTML40Namespace.ATTR_NAME_HIDDEN, HTML40Namespace.ATTR_NAME_VOLUME, HTML40Namespace.ATTR_NAME_AUTOSTART, HTML40Namespace.ATTR_NAME_AUTOPLAY, HTML40Namespace.ATTR_NAME_AUTOSIZE, HTML40Namespace.ATTR_NAME_CONTROLLER, HTML40Namespace.ATTR_NAME_SCALE, HTML40Namespace.ATTR_NAME_SHOWCONTROLS, HTML40Namespace.ATTR_NAME_PLAYCOUNT, HTML40Namespace.ATTR_NAME_REPEAT, HTML40Namespace.ATTR_NAME_PANEL, HTML40Namespace.ATTR_NAME_TEXT, HTML40Namespace.ATTR_NAME_PALETTE, HTML40Namespace.ATTR_NAME_TEXTFOCUS};
-		attributeCollection.getDeclarations(attributes, Arrays.asList(names).iterator());
-
-		HTMLCMDataTypeImpl atype = null;
-		HTMLAttrDeclImpl attr = null;
-		// (src %URI; #REQUIRED) ... should be defined locally.
-		atype = new HTMLCMDataTypeImpl(CMDataType.URI);
-		attr = new HTMLAttrDeclImpl(HTML40Namespace.ATTR_NAME_SRC, atype, CMAttributeDeclaration.REQUIRED);
-		attributes.putNamedItem(HTML40Namespace.ATTR_NAME_SRC, attr);
-
-		// (align %IAlign; #IMPLIED) ... should be defined locally.
-		attr = AttributeCollection.createAlignForImage();
-		if (attr != null)
-			attributes.putNamedItem(HTML40Namespace.ATTR_NAME_ALIGN, attr);
-
-		// (type CDATA #IMPLIED) ... should be defined locally.
-		atype = new HTMLCMDataTypeImpl(CMDataType.CDATA);
-		attr = new HTMLAttrDeclImpl(HTML40Namespace.ATTR_NAME_TYPE, atype, CMAttributeDeclaration.OPTIONAL);
-		attributes.putNamedItem(HTML40Namespace.ATTR_NAME_TYPE, attr);
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedEmpty.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedEmpty.java
deleted file mode 100644
index 8f5898a..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedEmpty.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.core.internal.contentmodel;
-
-
-
-import org.eclipse.wst.xml.core.internal.contentmodel.CMContent;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMElementDeclaration;
-
-/**
- * Base class for EMPTY type element declarations.
- */
-abstract class HedEmpty extends HTMLElemDeclImpl {
-
-	/**
-	 */
-	public HedEmpty(String elementName, ElementCollection collection) {
-		super(elementName, collection);
-		typeDefinitionName = ComplexTypeDefinitionFactory.CTYPE_EMPTY;
-		// EMPTY type has no end tag.
-		omitType = OMIT_END_MUST;
-	}
-
-	/**
-	 * Content.<br>
-	 * EMPTY type always returns <code>null</code>.
-	 * <br>
-	 * @return org.eclipse.wst.xml.core.internal.contentmodel.CMContent
-	 */
-	public CMContent getContent() {
-		return null;
-	}
-
-	/**
-	 * Content type.<br>
-	 * @see org.eclipse.wst.xml.core.internal.contentmodel.CMElementDeclaration
-	 */
-	public int getContentType() {
-		return CMElementDeclaration.EMPTY;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedFIELDSET.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedFIELDSET.java
deleted file mode 100644
index 2db5e0d..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedFIELDSET.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.html.core.internal.contentmodel;
-
-
-
-import org.eclipse.wst.html.core.internal.provisional.HTML40Namespace;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMNamedNodeMap;
-
-/**
- * FIELDSET.
- */
-final class HedFIELDSET extends HTMLElemDeclImpl {
-
-	/**
-	 */
-	public HedFIELDSET(ElementCollection collection) {
-		super(HTML40Namespace.ElementName.FIELDSET, collection);
-		typeDefinitionName = ComplexTypeDefinitionFactory.CTYPE_FIELDSET;
-		layoutType = LAYOUT_BLOCK;
-	}
-
-	/**
-	 * %attrs;
-	 */
-	protected void createAttributeDeclarations() {
-		if (attributes != null)
-			return; // already created.
-		if (attributeCollection == null)
-			return; // fatal
-
-		attributes = new CMNamedNodeMapImpl();
-
-		// %attrs;
-		attributeCollection.getAttrs(attributes);
-	}
-
-	/**
-	 */
-	public CMNamedNodeMap getProhibitedAncestors() {
-		if (prohibitedAncestors != null)
-			return prohibitedAncestors;
-
-		String[] names = {HTML40Namespace.ElementName.BUTTON, HTML40Namespace.ElementName.DIR, HTML40Namespace.ElementName.MENU};
-		prohibitedAncestors = elementCollection.getDeclarations(names);
-
-		return prohibitedAncestors;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedFONT.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedFONT.java
deleted file mode 100644
index fc610b5..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedFONT.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.html.core.internal.contentmodel;
-
-
-
-import java.util.Arrays;
-
-import org.eclipse.wst.html.core.internal.provisional.HTML40Namespace;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMAttributeDeclaration;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMDataType;
-
-/**
- * FONT.
- */
-final class HedFONT extends HedInlineContainer {
-
-	/**
-	 */
-	public HedFONT(ElementCollection collection) {
-		super(HTML40Namespace.ElementName.FONT, collection);
-		// CORRECT_EMPTY - GROUP_COMPACT
-		correctionType = CORRECT_EMPTY;
-	}
-
-	/**
-	 * %coreattrs;
-	 * %i18n;
-	 * (size CDATA #IMPLIED) ... should be defined locally.
-	 * (color %Color; #IMPLIED)
-	 * (face CDATA #IMPLIED)
-	 */
-	protected void createAttributeDeclarations() {
-		if (attributes != null)
-			return; // already created.
-		if (attributeCollection == null)
-			return; // fatal
-
-		attributes = new CMNamedNodeMapImpl();
-
-		// %coreattrs;
-		attributeCollection.getCore(attributes);
-		// %i18n;
-		attributeCollection.getI18n(attributes);
-
-		String[] names = {HTML40Namespace.ATTR_NAME_COLOR, HTML40Namespace.ATTR_NAME_FACE};
-		attributeCollection.getDeclarations(attributes, Arrays.asList(names).iterator());
-
-		// (size CDATA #IMPLIED) ... should be defined locally.
-		HTMLCMDataTypeImpl atype = new HTMLCMDataTypeImpl(CMDataType.CDATA);
-		HTMLAttrDeclImpl attr = new HTMLAttrDeclImpl(HTML40Namespace.ATTR_NAME_SIZE, atype, CMAttributeDeclaration.OPTIONAL);
-		attributes.putNamedItem(HTML40Namespace.ATTR_NAME_SIZE, attr);
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedFORM.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedFORM.java
deleted file mode 100644
index d7c60ae..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedFORM.java
+++ /dev/null
@@ -1,92 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this 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.core.internal.contentmodel;
-
-
-
-import java.util.Arrays;
-
-import org.eclipse.wst.html.core.internal.provisional.HTML40Namespace;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMContent;
-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;
-
-/**
- * FORM.
- */
-final class HedFORM extends HedFlowContainer {
-
-	/**
-	 */
-	public HedFORM(ElementCollection collection) {
-		super(HTML40Namespace.ElementName.FORM, collection);
-		layoutType = LAYOUT_BLOCK;
-	}
-
-	/**
-	 * %attrs;
-	 * (action %URI; #REQUIRED)
-	 * (method (GET|POST) GET)
-	 * (enctype %ContentType; "application/x-www-form-urlencoded")
-	 * (accept %ContentTypes; #IMPLIED)
-	 * (name CDATA #IMPLIED)
-	 * (onsubmit %Script; #IMPLIED)
-	 * (onreset %Script; #IMPLIED)
-	 * (target %FrameTarget; #IMPLIED)
-	 * (accept-charset %Charsets; #IMPLIED)
-	 */
-	protected void createAttributeDeclarations() {
-		if (attributes != null)
-			return; // already created.
-		if (attributeCollection == null)
-			return; // fatal
-
-		attributes = new CMNamedNodeMapImpl();
-
-		// %attrs;
-		attributeCollection.getAttrs(attributes);
-
-		String[] names = {HTML40Namespace.ATTR_NAME_ACTION, HTML40Namespace.ATTR_NAME_METHOD, HTML40Namespace.ATTR_NAME_ENCTYPE, HTML40Namespace.ATTR_NAME_ACCEPT, HTML40Namespace.ATTR_NAME_NAME, HTML40Namespace.ATTR_NAME_ONSUBMIT, HTML40Namespace.ATTR_NAME_ONRESET, HTML40Namespace.ATTR_NAME_TARGET, HTML40Namespace.ATTR_NAME_ACCEPT_CHARSET};
-		attributeCollection.getDeclarations(attributes, Arrays.asList(names).iterator());
-	}
-
-	/**
-	 * Exclusion.
-	 * <code>FORM</code> has the exclusion.
-	 * It is <code>FORM</code> itself.
-	 */
-	public CMContent getExclusion() {
-		if (exclusion != null)
-			return exclusion; // already created.
-		if (elementCollection == null)
-			return null; // fatal
-
-		exclusion = new CMGroupImpl(CMGroup.CHOICE, 1, 1);
-		CMNode form = elementCollection.getNamedItem(HTML40Namespace.ElementName.FORM);
-		if (form != null)
-			exclusion.appendChild(form);
-
-		return exclusion;
-	}
-
-	/**
-	 */
-	public CMNamedNodeMap getProhibitedAncestors() {
-		if (prohibitedAncestors != null)
-			return prohibitedAncestors;
-
-		String[] names = {HTML40Namespace.ElementName.BUTTON, HTML40Namespace.ElementName.DIR, HTML40Namespace.ElementName.FORM, HTML40Namespace.ElementName.MENU};
-		prohibitedAncestors = elementCollection.getDeclarations(names);
-
-		return prohibitedAncestors;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedFRAME.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedFRAME.java
deleted file mode 100644
index bb844cd..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedFRAME.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.html.core.internal.contentmodel;
-
-
-
-import java.util.Arrays;
-
-import org.eclipse.wst.html.core.internal.provisional.HTML40Namespace;
-
-
-/**
- * FRAME.
- */
-final class HedFRAME extends HedEmpty {
-
-	/**
-	 */
-	public HedFRAME(ElementCollection collection) {
-		super(HTML40Namespace.ElementName.FRAME, collection);
-		// LAYOUT_HIDDEN.
-		// Because, FRAME is GROUP_HIDDEN in the C++DOM/DTDParser.cpp.
-		layoutType = LAYOUT_HIDDEN;
-	}
-
-	/**
-	 * FRAME.
-	 * %coreattrs;
-	 * (longdesc %URI; #IMPLIED)
-	 * (name CDATA #IMPLIED)
-	 * (src %URI; #IMPLIED)
-	 * (frameborder (1|0) 1)
-	 * (marginwidth %Pixels; #IMPLIED)
-	 * (marginheight %Pixels; #IMPLIED)
-	 * (noresize (noresize) #IMPLIED)
-	 * (scrolling (yes|no|auto) auto)
-	 * (bordercolor %Color #IMPLIED) ... D205514
-	 */
-	protected void createAttributeDeclarations() {
-		if (attributes != null)
-			return; // already created.
-		if (attributeCollection == null)
-			return; // fatal
-
-		attributes = new CMNamedNodeMapImpl();
-
-		// %coreattrs;
-		attributeCollection.getCore(attributes);
-
-		String[] names = {HTML40Namespace.ATTR_NAME_LONGDESC, HTML40Namespace.ATTR_NAME_NAME, HTML40Namespace.ATTR_NAME_SRC, HTML40Namespace.ATTR_NAME_FRAMEBORDER, HTML40Namespace.ATTR_NAME_MARGINWIDTH, HTML40Namespace.ATTR_NAME_MARGINHEIGHT, HTML40Namespace.ATTR_NAME_NORESIZE, HTML40Namespace.ATTR_NAME_SCROLLING, HTML40Namespace.ATTR_NAME_BORDERCOLOR // D20554
-		};
-		attributeCollection.getDeclarations(attributes, Arrays.asList(names).iterator());
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedFRAMESET.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedFRAMESET.java
deleted file mode 100644
index 0f38961..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedFRAMESET.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.wst.html.core.internal.contentmodel;
-
-
-
-import java.util.Arrays;
-
-import org.eclipse.wst.html.core.internal.provisional.HTML40Namespace;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMAttributeDeclaration;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMDataType;
-
-/**
- * FRAMESET.
- */
-final class HedFRAMESET extends HTMLElemDeclImpl {
-
-	/**
-	 */
-	public HedFRAMESET(ElementCollection collection) {
-		super(HTML40Namespace.ElementName.FRAMESET, collection);
-		typeDefinitionName = ComplexTypeDefinitionFactory.CTYPE_FRAMESET;
-		layoutType = LAYOUT_HIDDEN;
-		indentChild = true;
-	}
-
-	/**
-	 * %coreattrs;
-	 * (rows %MultiLengths; #IMPLIED) ... should be defined locally.
-	 * (cols %MultiLengths; #IMPLIED) ... should be defined locally.
-	 * (onload %Script; #IMPLIED)
-	 * (onunload %Script; #IMPLIED)
-	 * (frameborder (yes|no) #IMPLIED) ... should be defined locally.
-	 * (border %Pixels; #IMPLIED)
-	 * (bordercolor %Color #IMPLIED) ... D205514
-	 * (framespacing CDATA #IMPLIED) ... D215684
-	 */
-	protected void createAttributeDeclarations() {
-		if (attributes != null)
-			return; // already created.
-		if (attributeCollection == null)
-			return; // fatal
-
-		attributes = new CMNamedNodeMapImpl();
-
-		// %attrs;
-		attributeCollection.getCore(attributes);
-
-		String[] names = {HTML40Namespace.ATTR_NAME_ONLOAD, HTML40Namespace.ATTR_NAME_ONUNLOAD, HTML40Namespace.ATTR_NAME_BORDER, HTML40Namespace.ATTR_NAME_BORDERCOLOR, // D205514
-					HTML40Namespace.ATTR_NAME_FRAMESPACING // D215684
-		};
-		attributeCollection.getDeclarations(attributes, Arrays.asList(names).iterator());
-
-		HTMLCMDataTypeImpl atype = null;
-		HTMLAttrDeclImpl attr = null;
-		// (rows %MultiLengths; #IMPLIED) ... should be defined locally.
-		atype = new HTMLCMDataTypeImpl(HTMLCMDataType.MULTI_LENGTH);
-		attr = new HTMLAttrDeclImpl(HTML40Namespace.ATTR_NAME_ROWS, atype, CMAttributeDeclaration.OPTIONAL);
-		attributes.putNamedItem(HTML40Namespace.ATTR_NAME_ROWS, attr);
-
-		// (cols %MultiLengths; #IMPLIED) ... should be defined locally.
-		attr = new HTMLAttrDeclImpl(HTML40Namespace.ATTR_NAME_COLS, atype, CMAttributeDeclaration.OPTIONAL);
-		attributes.putNamedItem(HTML40Namespace.ATTR_NAME_COLS, attr);
-
-		// (frameborder (yes|no) #IMPLIED) ... should be defined locally.
-		atype = new HTMLCMDataTypeImpl(CMDataType.ENUM);
-		String[] values = {HTML40Namespace.ATTR_VALUE_YES, HTML40Namespace.ATTR_VALUE_NO};
-		atype.setEnumValues(values);
-		attr = new HTMLAttrDeclImpl(HTML40Namespace.ATTR_NAME_FRAMEBORDER, atype, CMAttributeDeclaration.OPTIONAL);
-		attributes.putNamedItem(HTML40Namespace.ATTR_NAME_FRAMEBORDER, attr);
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedFlowContainer.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedFlowContainer.java
deleted file mode 100644
index 96d47e2..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedFlowContainer.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.html.core.internal.contentmodel;
-
-
-
-/**
- * Base class for (%flow;)* containers.
- */
-abstract class HedFlowContainer extends HTMLElemDeclImpl {
-
-	/**
-	 */
-	public HedFlowContainer(String elementName, ElementCollection collection) {
-		super(elementName, collection);
-		typeDefinitionName = ComplexTypeDefinitionFactory.CTYPE_FLOW_CONTAINER;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedFontStyle.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedFontStyle.java
deleted file mode 100644
index 9b787c0..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedFontStyle.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
- *******************************************************************************/
-package org.eclipse.wst.html.core.internal.contentmodel;
-
-
-
-import org.eclipse.wst.html.core.internal.provisional.HTML40Namespace;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMNamedNodeMap;
-
-/**
- * %fontstyle;
- */
-final class HedFontStyle extends HedInlineContainer {
-
-	/**
-	 */
-	public HedFontStyle(String elementName, ElementCollection collection) {
-		super(elementName, collection);
-		if (elementName.equalsIgnoreCase(HTML40Namespace.ElementName.BIG) || elementName.equalsIgnoreCase(HTML40Namespace.ElementName.SMALL)) {
-			correctionType = CORRECT_EMPTY;
-		}
-		else { // B, I, U, ...
-			correctionType = CORRECT_DUPLICATED;
-		}
-	}
-
-	/**
-	 * %attrs;
-	 */
-	protected void createAttributeDeclarations() {
-		if (attributes != null)
-			return; // already created.
-		if (attributeCollection == null)
-			return; // fatal
-
-		attributes = new CMNamedNodeMapImpl();
-
-		// %attrs;
-		attributeCollection.getAttrs(attributes);
-	}
-
-	/**
-	 */
-	public CMNamedNodeMap getProhibitedAncestors() {
-		String myName = getElementName();
-		if (!myName.equalsIgnoreCase(HTML40Namespace.ElementName.BIG) && !myName.equalsIgnoreCase(HTML40Namespace.ElementName.SMALL))
-			return EMPTY_MAP;
-		if (prohibitedAncestors != null)
-			return prohibitedAncestors;
-
-		String[] names = {HTML40Namespace.ElementName.PRE};
-		prohibitedAncestors = elementCollection.getDeclarations(names);
-
-		return prohibitedAncestors;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedHEAD.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedHEAD.java
deleted file mode 100644
index d2c2e8a..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedHEAD.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.core.internal.contentmodel;
-
-
-
-import java.util.Arrays;
-import java.util.Iterator;
-
-import org.eclipse.wst.html.core.internal.provisional.HTML40Namespace;
-
-
-/**
- * HTML.
- */
-final class HedHEAD extends HTMLElemDeclImpl {
-
-	private static String[] terminators = {HTML40Namespace.ElementName.HEAD, HTML40Namespace.ElementName.BODY, HTML40Namespace.ElementName.FRAMESET, HTML40Namespace.ElementName.HTML};
-
-	/**
-	 */
-	public HedHEAD(ElementCollection collection) {
-		super(HTML40Namespace.ElementName.HEAD, collection);
-		typeDefinitionName = ComplexTypeDefinitionFactory.CTYPE_HEAD;
-		layoutType = LAYOUT_HIDDEN;
-		omitType = OMIT_BOTH;
-	}
-
-	/**
-	 * Create all attribute declarations.
-	 * This method is called once in the constructor of the super class.
-	 * The <code>HEAD</code> element may have the following attributes:
-	 * <table>
-	 * <tbody>
-	 *   <tr>
-	 *     <th>NAME</th><th>TYPE</th><th>USAGE</th><th>DEFAULT (INITIAL) VALUE</th><th>MEMO</th>
-	 *   </tr>
-	 *   <tr>
-	 *     <td>%i18n;</td><td>-</td><td>-</td><td>-</td><td>-</td>
-	 *   </tr>
-	 *   <tr>
-	 *     <td>profile</td><td>URI</td><td>#IMPLIED</td><td>N/A</td><td>-</td>
-	 *   </tr>
-	 * </tbody>
-	 * </table>
-	 */
-	protected void createAttributeDeclarations() {
-		if (attributes != null)
-			return; // already created.
-		if (attributeCollection == null)
-			return; // fatal
-
-		attributes = new CMNamedNodeMapImpl();
-
-		// %i18n;
-		attributeCollection.getI18n(attributes);
-		// profile
-		HTMLAttributeDeclaration adec = attributeCollection.getDeclaration(HTML40Namespace.ATTR_NAME_PROFILE);
-		if (adec != null)
-			attributes.putNamedItem(HTML40Namespace.ATTR_NAME_PROFILE, adec);
-	}
-
-	/**
-	 * HEAD has terminators.
-	 * @return java.util.Iterator
-	 */
-	protected Iterator getTerminators() {
-		return Arrays.asList(terminators).iterator();
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedHR.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedHR.java
deleted file mode 100644
index bf7155e..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedHR.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.wst.html.core.internal.contentmodel;
-
-
-
-import java.util.Arrays;
-
-import org.eclipse.wst.html.core.internal.provisional.HTML40Namespace;
-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.CMNamedNodeMap;
-
-/**
- * HR.
- */
-final class HedHR extends HedEmpty {
-
-	/**
-	 */
-	public HedHR(ElementCollection collection) {
-		super(HTML40Namespace.ElementName.HR, collection);
-		layoutType = LAYOUT_BLOCK;
-	}
-
-	/**
-	 * %attrs
-	 * (align (left|center|right) #IMPLIED) ... should be defined locally.
-	 * (noshade (noshade) #IMPLIED)
-	 * (size %Pixels; #IMPLIED)
-	 * (width %Length; #IMPLIED)
-	 * (color %Color; #IMPLIED) ... D205514
-	 */
-	protected void createAttributeDeclarations() {
-		if (attributes != null)
-			return; // already created.
-		if (attributeCollection == null)
-			return; // fatal
-
-		attributes = new CMNamedNodeMapImpl();
-
-		// %attrs;
-		attributeCollection.getAttrs(attributes);
-
-		// (align (left|center|right) #IMPLIED) ... should be defined locally.
-		HTMLCMDataTypeImpl atype = new HTMLCMDataTypeImpl(CMDataType.ENUM);
-		String[] values = {HTML40Namespace.ATTR_VALUE_LEFT, HTML40Namespace.ATTR_VALUE_CENTER, HTML40Namespace.ATTR_VALUE_RIGHT};
-		atype.setEnumValues(values);
-		HTMLAttrDeclImpl attr = new HTMLAttrDeclImpl(HTML40Namespace.ATTR_NAME_ALIGN, atype, CMAttributeDeclaration.OPTIONAL);
-		attributes.putNamedItem(HTML40Namespace.ATTR_NAME_ALIGN, attr);
-
-		// the rest.
-		String[] names = {HTML40Namespace.ATTR_NAME_NOSHADE, HTML40Namespace.ATTR_NAME_SIZE, HTML40Namespace.ATTR_NAME_WIDTH, HTML40Namespace.ATTR_NAME_COLOR // D205514
-		};
-		attributeCollection.getDeclarations(attributes, Arrays.asList(names).iterator());
-	}
-
-	/**
-	 */
-	public CMNamedNodeMap getProhibitedAncestors() {
-		if (prohibitedAncestors != null)
-			return prohibitedAncestors;
-
-		String[] names = {HTML40Namespace.ElementName.DIR, HTML40Namespace.ElementName.MENU};
-		prohibitedAncestors = elementCollection.getDeclarations(names);
-
-		return prohibitedAncestors;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedHTML.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedHTML.java
deleted file mode 100644
index 1522395..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedHTML.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.wst.html.core.internal.contentmodel;
-
-
-
-import java.util.Arrays;
-import java.util.Iterator;
-
-import org.eclipse.wst.html.core.internal.provisional.HTML40Namespace;
-
-
-/**
- * HTML.
- */
-final class HedHTML extends HTMLElemDeclImpl {
-
-	private static String[] terminators = {HTML40Namespace.ElementName.HTML};
-
-	/**
-	 */
-	public HedHTML(ElementCollection collection) {
-		super(HTML40Namespace.ElementName.HTML, collection);
-		typeDefinitionName = ComplexTypeDefinitionFactory.CTYPE_HTML;
-		layoutType = LAYOUT_HIDDEN;
-		omitType = OMIT_BOTH;
-	}
-
-	/**
-	 * Create all attribute declarations.
-	 * This method is called once in the constructor of the super class.
-	 * The <code>HTML</code> element may have the following attributes:
-	 * <table>
-	 * <tbody>
-	 *   <tr>
-	 *     <th>NAME</th><th>TYPE</th><th>USAGE</th><th>DEFAULT (INITIAL) VALUE</th><th>MEMO</th>
-	 *   </tr>
-	 *   <tr>
-	 *     <td><code>%i18n;</code></td><td>-</td><td>-</td><td>-</td>
-	 *     <td>{@link PDCMDocImpl#getAttrDeclarationsI18n}</td>
-	 *   </tr>
-	 *   <tr>
-	 *     <td>version</td><td>CDATA</td><td>#FIXED</td>
-	 *     <td>{@link HTML_VERSION_TRANSITIONAL}</td><td>deplecated in HTML4.01</td>
-	 *   </tr>
-	 * </tbody>
-	 * </table>
-	 */
-	protected void createAttributeDeclarations() {
-		if (attributes != null)
-			return; // already created.
-		if (attributeCollection == null)
-			return; // fatal
-
-		attributes = new CMNamedNodeMapImpl();
-
-		// %i18n;
-		attributeCollection.getI18n(attributes);
-		// version
-		HTMLAttributeDeclaration adec = attributeCollection.getDeclaration(HTML40Namespace.ATTR_NAME_VERSION);
-		if (adec != null)
-			attributes.putNamedItem(HTML40Namespace.ATTR_NAME_VERSION, adec);
-	}
-
-	/**
-	 * HTML has terminators.
-	 * @return java.util.Iterator
-	 */
-	protected Iterator getTerminators() {
-		return Arrays.asList(terminators).iterator();
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedHeading.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedHeading.java
deleted file mode 100644
index 3123cec..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedHeading.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.wst.html.core.internal.contentmodel;
-
-
-
-import org.eclipse.wst.html.core.internal.provisional.HTML40Namespace;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMNamedNodeMap;
-
-/**
- * H[1-6].
- */
-final class HedHeading extends HedInlineContainer {
-
-	/**
-	 */
-	public HedHeading(String elementName, ElementCollection collection) {
-		super(elementName, collection);
-		correctionType = CORRECT_EMPTY;
-		layoutType = LAYOUT_BLOCK;
-	}
-
-	/**
-	 * Create all attribute declarations.
-	 * This method is called once in the constructor of the super class.
-	 * The <code>H1</code> element may have the following attributes:
-	 * <table>
-	 * <tbody>
-	 *   <tr>
-	 *     <th>NAME</th><th>TYPE</th><th>USAGE</th><th>DEFAULT (INITIAL) VALUE</th><th>MEMO</th>
-	 *   </tr>
-	 *   <tr>
-	 *     <td>%attrs;</td><td>-</td><td>-</td><td>-</td><td>-</td>
-	 *   </tr>
-	 *   <tr>
-	 *     <td>%align;</td><td>-</td><td>-</td><td>-</td><td>-</td>
-	 *   </tr>
-	 * </tbody>
-	 * </table>
-	 * <p><b>%align;</b> means <code>align (left|center|right|justify) #IMPLIED</code>.
-	 * Unfortunately, this <code>align</code> is different from one in
-	 * <code>IMG</code> or <code>TABLE</code>.  So, the attribute declaration
-	 * of <code>align</code> should be localy created and it shouldn't be registered
-	 * in a <code>HCMDocImpl</code> instance.</p>
-	 * <p>However, %align is used in sevaral times.  I wouldn't write same code
-	 * in many times.  So, I add a new utility method into <code>CMUtil</code>
-	 * to create the attribute declaration.</p>
-	 */
-	protected void createAttributeDeclarations() {
-		if (attributes != null)
-			return; // already created.
-		if (attributeCollection == null)
-			return; // fatal
-
-		attributes = new CMNamedNodeMapImpl();
-
-		// %attrs;
-		attributeCollection.getAttrs(attributes);
-		// align
-		HTMLAttrDeclImpl attr = AttributeCollection.createAlignForParagraph();
-		if (attr != null)
-			attributes.putNamedItem(HTML40Namespace.ATTR_NAME_ALIGN, attr);
-	}
-
-	/**
-	 */
-	public CMNamedNodeMap getProhibitedAncestors() {
-		if (prohibitedAncestors != null)
-			return prohibitedAncestors;
-
-		String[] names = {HTML40Namespace.ElementName.DIR, HTML40Namespace.ElementName.MENU};
-		prohibitedAncestors = elementCollection.getDeclarations(names);
-
-		return prohibitedAncestors;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedIFRAME.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedIFRAME.java
deleted file mode 100644
index 6036741..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedIFRAME.java
+++ /dev/null
@@ -1,76 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this 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.core.internal.contentmodel;
-
-
-
-import java.util.Arrays;
-
-import org.eclipse.wst.html.core.internal.provisional.HTML40Namespace;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMNamedNodeMap;
-
-/**
- * IFRAME.
- */
-final class HedIFRAME extends HedFlowContainer {
-
-	/**
-	 */
-	public HedIFRAME(ElementCollection collection) {
-		super(HTML40Namespace.ElementName.IFRAME, collection);
-		layoutType = LAYOUT_OBJECT;
-	}
-
-	/**
-	 * %coreattrs;
-	 * (longdesc %URI; #IMPLIED)
-	 * (name CDATA #IMPLIED)
-	 * (src %URI; #IMPLIED)
-	 * (frameborder (1|0) 1)
-	 * (marginwidth %Pixels; #IMPLIED)
-	 * (marginheight %Pixels; #IMPLIED)
-	 * (scrolling (yes|no|auto) auto)
-	 * (align %IAlign; #IMPLIED) ... should be defined locally.
-	 * (height %Length; #IMPLIED)
-	 * (width %Length; #IMPLIED)
-	 */
-	protected void createAttributeDeclarations() {
-		if (attributes != null)
-			return; // already created.
-		if (attributeCollection == null)
-			return; // fatal
-
-		attributes = new CMNamedNodeMapImpl();
-
-		// %coreattrs;
-		attributeCollection.getCore(attributes);
-
-		String[] names = {HTML40Namespace.ATTR_NAME_LONGDESC, HTML40Namespace.ATTR_NAME_NAME, HTML40Namespace.ATTR_NAME_SRC, HTML40Namespace.ATTR_NAME_FRAMEBORDER, HTML40Namespace.ATTR_NAME_MARGINWIDTH, HTML40Namespace.ATTR_NAME_MARGINHEIGHT, HTML40Namespace.ATTR_NAME_SCROLLING, HTML40Namespace.ATTR_NAME_HEIGHT, HTML40Namespace.ATTR_NAME_WIDTH};
-		attributeCollection.getDeclarations(attributes, Arrays.asList(names).iterator());
-
-		// align
-		HTMLAttrDeclImpl attr = AttributeCollection.createAlignForImage();
-		if (attr != null)
-			attributes.putNamedItem(HTML40Namespace.ATTR_NAME_ALIGN, attr);
-	}
-
-	/**
-	 */
-	public CMNamedNodeMap getProhibitedAncestors() {
-		if (prohibitedAncestors != null)
-			return prohibitedAncestors;
-
-		String[] names = {HTML40Namespace.ElementName.BUTTON};
-		prohibitedAncestors = elementCollection.getDeclarations(names);
-
-		return prohibitedAncestors;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedIMG.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedIMG.java
deleted file mode 100644
index ae1296b..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedIMG.java
+++ /dev/null
@@ -1,88 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this 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.core.internal.contentmodel;
-
-
-
-import java.util.Arrays;
-
-import org.eclipse.wst.html.core.internal.provisional.HTML40Namespace;
-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.CMNamedNodeMap;
-
-/**
- * IMG.
- */
-final class HedIMG extends HedEmpty {
-
-	/**
-	 */
-	public HedIMG(ElementCollection collection) {
-		super(HTML40Namespace.ElementName.IMG, collection);
-		layoutType = LAYOUT_OBJECT;
-	}
-
-	/**
-	 * IMG.
-	 * %attrs;
-	 * (src %URI; #REQUIRED): should be defined locally.
-	 * (alt %Text; #REQUIRED)
-	 * (longdesc %URI; #IMPLIED)
-	 * (name CDATA #IMPLIED)
-	 * (height %Length; #IMPLIED)
-	 * (width %Length; #IMPLIED)
-	 * (usemap %URI; #IMPLIED)
-	 * (ismap (ismap) #IMPLIED)
-	 * (align %IAlign; #IMPLIED): should be defined locally.
-	 * (border %Pixels; #IMPLIED)
-	 * (hspace %Pixels; #IMPLIED)
-	 * (vspace %Pixels; #IMPLIED)
-	 * (mapfile %URI; #IMPLIED)
-	 */
-	protected void createAttributeDeclarations() {
-		if (attributes != null)
-			return; // already created.
-		if (attributeCollection == null)
-			return; // fatal
-
-		attributes = new CMNamedNodeMapImpl();
-
-		// %attrs;
-		attributeCollection.getAttrs(attributes);
-
-		// (src %URI; #REQUIRED): should be defined locally.
-		HTMLCMDataTypeImpl atype = null;
-		HTMLAttrDeclImpl attr = null;
-		atype = new HTMLCMDataTypeImpl(CMDataType.URI);
-		attr = new HTMLAttrDeclImpl(HTML40Namespace.ATTR_NAME_SRC, atype, CMAttributeDeclaration.REQUIRED);
-		attributes.putNamedItem(HTML40Namespace.ATTR_NAME_SRC, attr);
-
-		String[] names = {HTML40Namespace.ATTR_NAME_ALT, HTML40Namespace.ATTR_NAME_LONGDESC, HTML40Namespace.ATTR_NAME_NAME, HTML40Namespace.ATTR_NAME_HEIGHT, HTML40Namespace.ATTR_NAME_WIDTH, HTML40Namespace.ATTR_NAME_USEMAP, HTML40Namespace.ATTR_NAME_ISMAP, HTML40Namespace.ATTR_NAME_BORDER, HTML40Namespace.ATTR_NAME_HSPACE, HTML40Namespace.ATTR_NAME_VSPACE, HTML40Namespace.ATTR_NAME_MAPFILE};
-		attributeCollection.getDeclarations(attributes, Arrays.asList(names).iterator());
-
-		// align (local); should be defined locally.
-		attr = AttributeCollection.createAlignForImage();
-		attributes.putNamedItem(HTML40Namespace.ATTR_NAME_ALIGN, attr);
-	}
-
-	/**
-	 */
-	public CMNamedNodeMap getProhibitedAncestors() {
-		if (prohibitedAncestors != null)
-			return prohibitedAncestors;
-
-		String[] names = {HTML40Namespace.ElementName.PRE};
-		prohibitedAncestors = elementCollection.getDeclarations(names);
-
-		return prohibitedAncestors;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedINPUT.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedINPUT.java
deleted file mode 100644
index ecf5aae..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedINPUT.java
+++ /dev/null
@@ -1,122 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this 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.core.internal.contentmodel;
-
-
-
-import java.util.Arrays;
-
-import org.eclipse.wst.html.core.internal.provisional.HTML40Namespace;
-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.CMNamedNodeMap;
-
-/**
- * INPUT.
- */
-final class HedINPUT extends HedEmpty {
-
-	/**
-	 */
-	public HedINPUT(ElementCollection collection) {
-		super(HTML40Namespace.ElementName.INPUT, collection);
-		layoutType = LAYOUT_OBJECT;
-	}
-
-	/**
-	 * INPUT.
-	 * %attrs;
-	 * (type %InputType; TEXT) ... should be defined locally.
-	 * (name CDATA #IMPLIED)
-	 * (value CDATA #IMPLIED)
-	 * (checked (checked) #IMPLIED)
-	 * (disabled (disabled) #IMPLIED)
-	 * (readonly (readonly) #IMPLIED)
-	 * (size CDATA #IMPLIED) ... should be defined locally.
-	 * (maxlength NUMBER #IMPLIED)
-	 * (src %URI; #IMPLIED)
-	 * (alt CDATA #IMPLIED) ... should be defined locally.
-	 * (usemap %URI; #IMPLIED)
-	 * (ismap (ismap) #IMPLIED)
-	 * (tabindex NUMBER #IMPLIED)
-	 * (accesskey %Character; #IMPLIED)
-	 * (onfocus %Script; #IMPLIED)
-	 * (onblur %Script; #IMPLIED)
-	 * (onselect %Script; #IMPLIED)
-	 * (onchange %Script; #IMPLIED)
-	 * (accept %ContentTypes; #IMPLIED)
-	 * (align %IAlign; #IMPLIED) ... should be defined locally.
-	 * (istyle CDATA #IMPLIED)
-	 * <<D215684
-	 * (width CDATA; #IMPLIED)
-	 * (height CDATA; #IMPLIED)
-	 * (border CDATA; #IMPLIED)
-	 * D215684
-	 */
-	protected void createAttributeDeclarations() {
-		if (attributes != null)
-			return; // already created.
-		if (attributeCollection == null)
-			return; // fatal
-
-		attributes = new CMNamedNodeMapImpl();
-
-		// %attrs;
-		attributeCollection.getAttrs(attributes);
-
-		HTMLCMDataTypeImpl atype = null;
-		HTMLAttrDeclImpl attr = null;
-		// (type %InputType; TEXT) ... should be defined locally.
-		// NOTE: %InputType is ENUM;
-		// (text | password | checkbox | radio | submit | reset |
-		//  file | hidden | image | button)
-		atype = new HTMLCMDataTypeImpl(CMDataType.ENUM);
-		String[] values = {HTML40Namespace.ATTR_VALUE_TEXT, HTML40Namespace.ATTR_VALUE_PASSWORD, HTML40Namespace.ATTR_VALUE_CHECKBOX, HTML40Namespace.ATTR_VALUE_RADIO, HTML40Namespace.ATTR_VALUE_SUBMIT, HTML40Namespace.ATTR_VALUE_RESET, HTML40Namespace.ATTR_VALUE_FILE, HTML40Namespace.ATTR_VALUE_HIDDEN, HTML40Namespace.ATTR_VALUE_IMAGE, HTML40Namespace.ATTR_VALUE_BUTTON};
-		atype.setEnumValues(values);
-		atype.setImpliedValue(CMDataType.IMPLIED_VALUE_DEFAULT, HTML40Namespace.ATTR_VALUE_TEXT);
-		attr = new HTMLAttrDeclImpl(HTML40Namespace.ATTR_NAME_TYPE, atype, CMAttributeDeclaration.OPTIONAL);
-		attributes.putNamedItem(HTML40Namespace.ATTR_NAME_TYPE, attr);
-
-		// (size CDATA #IMPLIED) ... should be defined locally.
-		atype = new HTMLCMDataTypeImpl(CMDataType.CDATA);
-		attr = new HTMLAttrDeclImpl(HTML40Namespace.ATTR_NAME_SIZE, atype, CMAttributeDeclaration.OPTIONAL);
-		attributes.putNamedItem(HTML40Namespace.ATTR_NAME_SIZE, attr);
-
-		// (alt CDATA #IMPLIED) ... should be defined locally.
-		atype = new HTMLCMDataTypeImpl(CMDataType.CDATA);
-		attr = new HTMLAttrDeclImpl(HTML40Namespace.ATTR_NAME_ALT, atype, CMAttributeDeclaration.OPTIONAL);
-		attributes.putNamedItem(HTML40Namespace.ATTR_NAME_ALT, attr);
-
-		// (align %IAlign; #IMPLIED) ... should be defined locally.
-		attr = AttributeCollection.createAlignForImage();
-		attributes.putNamedItem(HTML40Namespace.ATTR_NAME_ALIGN, attr);
-
-		// the rest.
-		String[] names = {HTML40Namespace.ATTR_NAME_NAME, HTML40Namespace.ATTR_NAME_VALUE, HTML40Namespace.ATTR_NAME_CHECKED, HTML40Namespace.ATTR_NAME_DISABLED, HTML40Namespace.ATTR_NAME_READONLY, HTML40Namespace.ATTR_NAME_SIZE, HTML40Namespace.ATTR_NAME_MAXLENGTH, HTML40Namespace.ATTR_NAME_SRC, HTML40Namespace.ATTR_NAME_ALT, HTML40Namespace.ATTR_NAME_USEMAP, HTML40Namespace.ATTR_NAME_ISMAP, HTML40Namespace.ATTR_NAME_TABINDEX, HTML40Namespace.ATTR_NAME_ACCESSKEY, HTML40Namespace.ATTR_NAME_ONFOCUS, HTML40Namespace.ATTR_NAME_ONBLUR, HTML40Namespace.ATTR_NAME_ONSELECT, HTML40Namespace.ATTR_NAME_ONCHANGE, HTML40Namespace.ATTR_NAME_ACCEPT, HTML40Namespace.ATTR_NAME_ALIGN, HTML40Namespace.ATTR_NAME_ISTYLE,
-		//<<D215684
-					HTML40Namespace.ATTR_NAME_WIDTH, HTML40Namespace.ATTR_NAME_HEIGHT, HTML40Namespace.ATTR_NAME_BORDER
-		//<D215684
-		};
-		attributeCollection.getDeclarations(attributes, Arrays.asList(names).iterator());
-	}
-
-	/**
-	 */
-	public CMNamedNodeMap getProhibitedAncestors() {
-		if (prohibitedAncestors != null)
-			return prohibitedAncestors;
-
-		String[] names = {HTML40Namespace.ElementName.BUTTON};
-		prohibitedAncestors = elementCollection.getDeclarations(names);
-
-		return prohibitedAncestors;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedISINDEX.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedISINDEX.java
deleted file mode 100644
index c3ec75d..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedISINDEX.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.html.core.internal.contentmodel;
-
-
-
-import org.eclipse.wst.html.core.internal.provisional.HTML40Namespace;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMNamedNodeMap;
-
-/**
- * ISINDEX.
- */
-final class HedISINDEX extends HedEmpty {
-
-	/**
-	 */
-	public HedISINDEX(ElementCollection collection) {
-		super(HTML40Namespace.ElementName.ISINDEX, collection);
-		layoutType = LAYOUT_BLOCK;
-	}
-
-	/**
-	 * ISINDEX.
-	 * %coreattrs;
-	 * %i18n;
-	 * (prompt %Text; #IMPLIED)
-	 */
-	protected void createAttributeDeclarations() {
-		if (attributes != null)
-			return; // already created.
-		if (attributeCollection == null)
-			return; // fatal
-
-		attributes = new CMNamedNodeMapImpl();
-
-		// %coreattrs;
-		attributeCollection.getCore(attributes);
-		// %i18n;
-		attributeCollection.getI18n(attributes);
-
-		HTMLAttributeDeclaration attr = attributeCollection.getDeclaration(HTML40Namespace.ATTR_NAME_PROMPT);
-		if (attr != null)
-			attributes.putNamedItem(HTML40Namespace.ATTR_NAME_PROMPT, attr);
-	}
-
-	/**
-	 */
-	public CMNamedNodeMap getProhibitedAncestors() {
-		if (prohibitedAncestors != null)
-			return prohibitedAncestors;
-
-		String[] names = {HTML40Namespace.ElementName.BUTTON, HTML40Namespace.ElementName.DIR, HTML40Namespace.ElementName.MENU};
-		prohibitedAncestors = elementCollection.getDeclarations(names);
-
-		return prohibitedAncestors;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedInlineContainer.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedInlineContainer.java
deleted file mode 100644
index 08812aa..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedInlineContainer.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.core.internal.contentmodel;
-
-
-
-/**
- * Base class for (%inline;)* containers.
- */
-abstract class HedInlineContainer extends HTMLElemDeclImpl {
-
-	/**
-	 * HedInlineContainer.
-	 * @param elementName java.lang.String
-	 * @param collection ElementCollection
-	 */
-	public HedInlineContainer(String elementName, ElementCollection collection) {
-		super(elementName, collection);
-		typeDefinitionName = ComplexTypeDefinitionFactory.CTYPE_INLINE_CONTAINER;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedLABEL.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedLABEL.java
deleted file mode 100644
index aecb7b3..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedLABEL.java
+++ /dev/null
@@ -1,93 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this 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.core.internal.contentmodel;
-
-
-
-import java.util.Arrays;
-
-import org.eclipse.wst.html.core.internal.provisional.HTML40Namespace;
-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.CMGroup;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMNamedNodeMap;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMNode;
-
-/**
- * LABEL.
- */
-final class HedLABEL extends HedInlineContainer {
-
-	/**
-	 */
-	public HedLABEL(ElementCollection collection) {
-		super(HTML40Namespace.ElementName.LABEL, collection);
-	}
-
-	/**
-	 * %attrs;
-	 * (for IDREF #IMPLIED) ... should be defined locally.
-	 * (accesskey %Character; #IMPLIED)
-	 * (onfocus %Script; #IMPLIED)
-	 * (onblur %Script; #IMPLIED)
-	 */
-	protected void createAttributeDeclarations() {
-		if (attributes != null)
-			return; // already created.
-		if (attributeCollection == null)
-			return; // fatal
-
-		attributes = new CMNamedNodeMapImpl();
-
-		// %attrs;
-		attributeCollection.getAttrs(attributes);
-
-		// (for IDREF #IMPLIED) ... should be defined locally.
-		HTMLCMDataTypeImpl atype = new HTMLCMDataTypeImpl(CMDataType.IDREF);
-		HTMLAttrDeclImpl attr = new HTMLAttrDeclImpl(HTML40Namespace.ATTR_NAME_FOR, atype, CMAttributeDeclaration.OPTIONAL);
-		attributes.putNamedItem(HTML40Namespace.ATTR_NAME_FOR, attr);
-
-		String[] names = {HTML40Namespace.ATTR_NAME_ACCESSKEY, HTML40Namespace.ATTR_NAME_ONFOCUS, HTML40Namespace.ATTR_NAME_ONBLUR};
-		attributeCollection.getDeclarations(attributes, Arrays.asList(names).iterator());
-	}
-
-	/**
-	 * Exclusion.
-	 * <code>LABEL</code> has the exclusion.
-	 * It is <code>LABEL</code> itself.
-	 */
-	public CMContent getExclusion() {
-		if (exclusion != null)
-			return exclusion; // already created.
-		if (elementCollection == null)
-			return null;
-
-		exclusion = new CMGroupImpl(CMGroup.CHOICE, 1, 1);
-		CMNode label = elementCollection.getNamedItem(HTML40Namespace.ElementName.LABEL);
-		if (label != null)
-			exclusion.appendChild(label);
-
-		return exclusion;
-	}
-
-	/**
-	 */
-	public CMNamedNodeMap getProhibitedAncestors() {
-		if (prohibitedAncestors != null)
-			return prohibitedAncestors;
-
-		String[] names = {HTML40Namespace.ElementName.BUTTON, HTML40Namespace.ElementName.LABEL};
-		prohibitedAncestors = elementCollection.getDeclarations(names);
-
-		return prohibitedAncestors;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedLEGEND.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedLEGEND.java
deleted file mode 100644
index f66d866..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedLEGEND.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.wst.html.core.internal.contentmodel;
-
-
-
-import java.util.Arrays;
-
-import org.eclipse.wst.html.core.internal.provisional.HTML40Namespace;
-
-
-/**
- * LEGEND.
- */
-final class HedLEGEND extends HedInlineContainer {
-
-	/**
-	 */
-	public HedLEGEND(ElementCollection collection) {
-		super(HTML40Namespace.ElementName.LEGEND, collection);
-	}
-
-	/**
-	 * (accesskey %Character; #IMPLIED)
-	 * (align %LAlign; #IMPLIED) ... shuld be defined locally.
-	 */
-	protected void createAttributeDeclarations() {
-		if (attributes != null)
-			return; // already created.
-		if (attributeCollection == null)
-			return; // fatal
-
-		attributes = new CMNamedNodeMapImpl();
-
-		// %attrs;
-		attributeCollection.getAttrs(attributes);
-
-		String[] names = {HTML40Namespace.ATTR_NAME_ACCESSKEY};
-		attributeCollection.getDeclarations(attributes, Arrays.asList(names).iterator());
-
-		// align
-		HTMLAttrDeclImpl attr = AttributeCollection.createAlignForLegend();
-		if (attr != null)
-			attributes.putNamedItem(HTML40Namespace.ATTR_NAME_ALIGN, attr);
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedLI.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedLI.java
deleted file mode 100644
index 9012dab..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedLI.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.wst.html.core.internal.contentmodel;
-
-
-
-import java.util.Arrays;
-import java.util.Iterator;
-
-import org.eclipse.wst.html.core.internal.provisional.HTML40Namespace;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMAttributeDeclaration;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMDataType;
-
-/**
- * LI.
- */
-final class HedLI extends HedFlowContainer {
-
-	private static String[] terminators = {HTML40Namespace.ElementName.LI};
-
-	/**
-	 */
-	public HedLI(ElementCollection collection) {
-		super(HTML40Namespace.ElementName.LI, collection);
-		layoutType = LAYOUT_BLOCK;
-		omitType = OMIT_END_DEFAULT;
-	}
-
-	/**
-	 * %attrs;
-	 * (type %LIStyle; #IMPLIED) ... should be defined locally.
-	 * (value NUMBER #IMPLIED) ... should be defined locally.
-	 */
-	protected void createAttributeDeclarations() {
-		if (attributes != null)
-			return; // already created.
-		if (attributeCollection == null)
-			return; // fatal
-
-		attributes = new CMNamedNodeMapImpl();
-
-		// %attrs;
-		attributeCollection.getAttrs(attributes);
-
-		// (type %LIStyle; #IMPLIED) ... should be defined locally.
-		HTMLCMDataTypeImpl atype = new HTMLCMDataTypeImpl(HTMLCMDataType.LI_STYLE);
-		HTMLAttrDeclImpl attr = new HTMLAttrDeclImpl(HTML40Namespace.ATTR_NAME_TYPE, atype, CMAttributeDeclaration.OPTIONAL);
-		attributes.putNamedItem(HTML40Namespace.ATTR_NAME_TYPE, attr);
-
-		// (value NUMBER #IMPLIED) ... should be defined locally.
-		atype = new HTMLCMDataTypeImpl(CMDataType.NUMBER);
-		attr = new HTMLAttrDeclImpl(HTML40Namespace.ATTR_NAME_VALUE, atype, CMAttributeDeclaration.OPTIONAL);
-		attributes.putNamedItem(HTML40Namespace.ATTR_NAME_VALUE, attr);
-	}
-
-	/**
-	 * LI has terminators.
-	 * @return java.util.Iterator
-	 */
-	protected Iterator getTerminators() {
-		return Arrays.asList(terminators).iterator();
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedLINK.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedLINK.java
deleted file mode 100644
index 5fe5269..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedLINK.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.core.internal.contentmodel;
-
-
-
-import java.util.Arrays;
-
-import org.eclipse.wst.html.core.internal.provisional.HTML40Namespace;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMAttributeDeclaration;
-
-/**
- * LINK.
- */
-final class HedLINK extends HedEmpty {
-
-	/**
-	 */
-	public HedLINK(ElementCollection collection) {
-		super(HTML40Namespace.ElementName.LINK, collection);
-		layoutType = LAYOUT_HIDDEN;
-	}
-
-	/**
-	 * LINK.
-	 * %attrs;
-	 * (charset %Charset; #IMPLIED)
-	 * (href %URI; #IMPLIED)
-	 * (hreflang %LanguageCode; #IMPLIED)
-	 * (type %ContentType; #IMPLIED): should be defined locally.
-	 * (rel %LinkTypes; #IMPLIED)
-	 * (rev %LinkTypes; #IMPLIED)
-	 * (media %MediaDesc; #IMPLIED)
-	 * (target %FrameTarget; #IMPLIED)
-	 */
-	protected void createAttributeDeclarations() {
-		if (attributes != null)
-			return; // already created.
-		if (attributeCollection == null)
-			return; // fatal
-
-		attributes = new CMNamedNodeMapImpl();
-
-		// %attrs;
-		attributeCollection.getAttrs(attributes);
-
-		String[] names = {HTML40Namespace.ATTR_NAME_CHARSET, HTML40Namespace.ATTR_NAME_HREF, HTML40Namespace.ATTR_NAME_HREFLANG, HTML40Namespace.ATTR_NAME_REL, HTML40Namespace.ATTR_NAME_REV, HTML40Namespace.ATTR_NAME_MEDIA, HTML40Namespace.ATTR_NAME_TARGET};
-		attributeCollection.getDeclarations(attributes, Arrays.asList(names).iterator());
-
-		// (type %ContentType; #IMPLIED)
-		HTMLCMDataTypeImpl atype = new HTMLCMDataTypeImpl(HTMLCMDataType.CONTENT_TYPE);
-		HTMLAttrDeclImpl attr = new HTMLAttrDeclImpl(HTML40Namespace.ATTR_NAME_TYPE, atype, CMAttributeDeclaration.OPTIONAL);
-		attributes.putNamedItem(HTML40Namespace.ATTR_NAME_TYPE, attr);
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedListItemContainer.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedListItemContainer.java
deleted file mode 100644
index ca49717..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedListItemContainer.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.core.internal.contentmodel;
-
-
-
-/**
- * Base class for list item container declarations.
- * - OL, UL, MENU, DIR.
- */
-abstract class HedListItemContainer extends HTMLElemDeclImpl {
-
-	/**
-	 */
-	public HedListItemContainer(String elementName, ElementCollection collection) {
-		super(elementName, collection);
-		typeDefinitionName = ComplexTypeDefinitionFactory.CTYPE_LI_CONTAINER;
-		correctionType = CORRECT_EMPTY;
-		layoutType = LAYOUT_BLOCK;
-		indentChild = true;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedMAP.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedMAP.java
deleted file mode 100644
index 4e1036f..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedMAP.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.core.internal.contentmodel;
-
-import org.eclipse.wst.html.core.internal.provisional.HTML40Namespace;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMAttributeDeclaration;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMDataType;
-
-
-
-/**
- * MAP.
- */
-final class HedMAP extends HTMLElemDeclImpl {
-
-	/**
-	 */
-	public HedMAP(ElementCollection collection) {
-		super(HTML40Namespace.ElementName.MAP, collection);
-		typeDefinitionName = ComplexTypeDefinitionFactory.CTYPE_MAP;
-		layoutType = LAYOUT_OBJECT;
-		indentChild = true;
-	}
-
-	/**
-	 * %attrs;
-	 * (name CDATA #REQUIRED) ... should be defined locally
-	 */
-	protected void createAttributeDeclarations() {
-		if (attributes != null)
-			return; // already created.
-		if (attributeCollection == null)
-			return; // fatal
-
-		attributes = new CMNamedNodeMapImpl();
-
-		// %attrs;
-		attributeCollection.getAttrs(attributes);
-
-		// (name CDATA #REQUIRED) ... should be defined locally
-		HTMLCMDataTypeImpl atype = new HTMLCMDataTypeImpl(CMDataType.CDATA);
-		HTMLAttrDeclImpl attr = new HTMLAttrDeclImpl(HTML40Namespace.ATTR_NAME_NAME, atype, CMAttributeDeclaration.REQUIRED);
-		attributes.putNamedItem(HTML40Namespace.ATTR_NAME_NAME, attr);
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedMARQUEE.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedMARQUEE.java
deleted file mode 100644
index c9cadcb..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedMARQUEE.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.wst.html.core.internal.contentmodel;
-
-
-
-import java.util.Arrays;
-
-import org.eclipse.wst.html.core.internal.provisional.HTML40Namespace;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMAttributeDeclaration;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMDataType;
-
-/**
- * MARQUEE.
- */
-final class HedMARQUEE extends HedFlowContainer {
-
-	/**
-	 */
-	public HedMARQUEE(ElementCollection collection) {
-		super(HTML40Namespace.ElementName.MARQUEE, collection);
-		layoutType = LAYOUT_OBJECT;
-	}
-
-	/**
-	 * %attrs;
-	 * (behavior (scroll|slide|alternate) scroll)
-	 * (bgcolor %Color; #IMPLIED)
-	 * (direction (left|right|up|down) left)
-	 * (height CDATA #IMPLIED) ... should be defined locally.
-	 * (hspace NUMBER #IMPLIED) ... should be defined locally.
-	 * (loop CDATA #IMPLIED)
-	 * (scrollamount NUMBER #IMPLIED)
-	 * (scrolldelay NUMBER #IMPLIED)
-	 * (vspace NUMBER #IMPLIED) ... should be defined locally.
-	 * (width CDATA #IMPLIED) ... should be defined locally.
-	 * (truespeed (truespeed) #IMPLIED)
-	 */
-	protected void createAttributeDeclarations() {
-		if (attributes != null)
-			return; // already created.
-		if (attributeCollection == null)
-			return; // fatal
-
-		attributes = new CMNamedNodeMapImpl();
-
-		// %attrs;
-		attributeCollection.getAttrs(attributes);
-
-		String[] names = {HTML40Namespace.ATTR_NAME_BEHAVIOR, HTML40Namespace.ATTR_NAME_BGCOLOR, HTML40Namespace.ATTR_NAME_DIRECTION, HTML40Namespace.ATTR_NAME_LOOP, HTML40Namespace.ATTR_NAME_SCROLLAMOUNT, HTML40Namespace.ATTR_NAME_SCROLLDELAY, HTML40Namespace.ATTR_NAME_TRUESPEED};
-		attributeCollection.getDeclarations(attributes, Arrays.asList(names).iterator());
-
-		HTMLCMDataTypeImpl atype = null;
-		HTMLAttrDeclImpl attr = null;
-		// (height CDATA #IMPLIED) ... should be defined locally.
-		atype = new HTMLCMDataTypeImpl(CMDataType.CDATA);
-		attr = new HTMLAttrDeclImpl(HTML40Namespace.ATTR_NAME_HEIGHT, atype, CMAttributeDeclaration.OPTIONAL);
-		attributes.putNamedItem(HTML40Namespace.ATTR_NAME_HEIGHT, attr);
-
-		// (width CDATA #IMPLIED) ... should be defined locally.
-		attr = new HTMLAttrDeclImpl(HTML40Namespace.ATTR_NAME_WIDTH, atype, CMAttributeDeclaration.OPTIONAL);
-		attributes.putNamedItem(HTML40Namespace.ATTR_NAME_WIDTH, attr);
-
-		// (hspace NUMBER #IMPLIED) ... should be defined locally.
-		atype = new HTMLCMDataTypeImpl(CMDataType.NUMBER);
-		attr = new HTMLAttrDeclImpl(HTML40Namespace.ATTR_NAME_HSPACE, atype, CMAttributeDeclaration.OPTIONAL);
-		attributes.putNamedItem(HTML40Namespace.ATTR_NAME_HSPACE, attr);
-
-		// (vspace NUMBER #IMPLIED) ... should be defined locally.
-		attr = new HTMLAttrDeclImpl(HTML40Namespace.ATTR_NAME_VSPACE, atype, CMAttributeDeclaration.OPTIONAL);
-		attributes.putNamedItem(HTML40Namespace.ATTR_NAME_VSPACE, attr);
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedMENU.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedMENU.java
deleted file mode 100644
index 1957036..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedMENU.java
+++ /dev/null
@@ -1,88 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this 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.core.internal.contentmodel;
-
-
-
-import java.util.Arrays;
-
-import org.eclipse.wst.html.core.internal.provisional.HTML40Namespace;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMContent;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMGroup;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMNamedNodeMap;
-
-/**
- * MENU/DIR.
- */
-final class HedMENU extends HedListItemContainer {
-
-	/**
-	 */
-	public HedMENU(String elementName, ElementCollection collection) {
-		super(elementName, collection);
-	}
-
-	/**
-	 * MENU/DIR.
-	 * (compact (compact) #IMPLIED)
-	 */
-	protected void createAttributeDeclarations() {
-		if (attributes != null)
-			return; // already created.
-		if (attributeCollection == null)
-			return; // fatal
-
-		attributes = new CMNamedNodeMapImpl();
-
-		// %attrs;
-		attributeCollection.getAttrs(attributes);
-
-		String[] names = {HTML40Namespace.ATTR_NAME_COMPACT};
-		attributeCollection.getDeclarations(attributes, Arrays.asList(names).iterator());
-	}
-
-	/**
-	 * Exclusion.
-	 * <code>MENU/DIR</code> has the exclusion.
-	 * It is <code>%block;</code>.
-	 * %block; is:
-	 * P | %heading; | %list; | %preformatted; | DL | DIV | CENTER |
-	 * NOSCRIPT | NOFRAMES | BLOCKQUOTE | FORM | ISINDEX | HR |
-	 * TABLE | FIELDSET | ADDRESS.
-	 * %heading; is: H1 | H2 | H3 | H4 | H5 | H6.
-	 * %list; is : UL | OL | DIR | MENU.
-	 * %preformatted; is PRE.
-	 */
-	public CMContent getExclusion() {
-		if (exclusion != null)
-			return exclusion; // already created.
-		if (elementCollection == null)
-			return null;
-
-		// %block;
-		exclusion = new CMGroupImpl(CMGroup.CHOICE, 1, 1);
-		String[] names = {HTML40Namespace.ElementName.P, HTML40Namespace.ElementName.H1, HTML40Namespace.ElementName.H2, HTML40Namespace.ElementName.H3, HTML40Namespace.ElementName.H4, HTML40Namespace.ElementName.H5, HTML40Namespace.ElementName.H6, HTML40Namespace.ElementName.UL, HTML40Namespace.ElementName.OL, HTML40Namespace.ElementName.DIR, HTML40Namespace.ElementName.MENU, HTML40Namespace.ElementName.PRE, HTML40Namespace.ElementName.DL, HTML40Namespace.ElementName.DIV, HTML40Namespace.ElementName.CENTER, HTML40Namespace.ElementName.NOSCRIPT, HTML40Namespace.ElementName.NOFRAMES, HTML40Namespace.ElementName.BLOCKQUOTE, HTML40Namespace.ElementName.FORM, HTML40Namespace.ElementName.ISINDEX, HTML40Namespace.ElementName.HR, HTML40Namespace.ElementName.TABLE, HTML40Namespace.ElementName.FIELDSET, HTML40Namespace.ElementName.ADDRESS};
-		elementCollection.getDeclarations(exclusion, Arrays.asList(names).iterator());
-		return exclusion;
-	}
-
-	/**
-	 */
-	public CMNamedNodeMap getProhibitedAncestors() {
-		if (prohibitedAncestors != null)
-			return prohibitedAncestors;
-
-		String[] names = {HTML40Namespace.ElementName.DIR, HTML40Namespace.ElementName.MENU};
-		prohibitedAncestors = elementCollection.getDeclarations(names);
-
-		return prohibitedAncestors;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedMETA.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedMETA.java
deleted file mode 100644
index 3b7e008..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedMETA.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.html.core.internal.contentmodel;
-
-
-
-import java.util.Arrays;
-
-import org.eclipse.wst.html.core.internal.provisional.HTML40Namespace;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMAttributeDeclaration;
-
-/**
- * META.
- */
-final class HedMETA extends HedEmpty {
-
-	/**
-	 */
-	public HedMETA(ElementCollection collection) {
-		super(HTML40Namespace.ElementName.META, collection);
-		layoutType = LAYOUT_HIDDEN;
-	}
-
-	/**
-	 * META.
-	 * %i18n;
-	 * (http-equiv NAME #IMPLIED)
-	 * (name NAME #IMPLIED) ... should be defined locally.
-	 * (content CDATA #REQUIRED)
-	 * (scheme CDATA #IMPLIED)
-	 */
-	protected void createAttributeDeclarations() {
-		if (attributes != null)
-			return; // already created.
-		if (attributeCollection == null)
-			return; // fatal
-
-		attributes = new CMNamedNodeMapImpl();
-
-		// %i18n;
-		attributeCollection.getI18n(attributes);
-
-		// (name NAME #IMPLIED) ... should be defined locally.
-		HTMLCMDataTypeImpl atype = new HTMLCMDataTypeImpl(HTMLCMDataType.NAME);
-		HTMLAttrDeclImpl attr = new HTMLAttrDeclImpl(HTML40Namespace.ATTR_NAME_NAME, atype, CMAttributeDeclaration.OPTIONAL);
-		attributes.putNamedItem(HTML40Namespace.ATTR_NAME_NAME, attr);
-
-		String[] names = {HTML40Namespace.ATTR_NAME_HTTP_EQUIV, HTML40Namespace.ATTR_NAME_CONTENT, HTML40Namespace.ATTR_NAME_SCHEME};
-		attributeCollection.getDeclarations(attributes, Arrays.asList(names).iterator());
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedMarkChanges.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedMarkChanges.java
deleted file mode 100644
index 3cff404..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedMarkChanges.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.core.internal.contentmodel;
-
-
-
-import java.util.Arrays;
-
-import org.eclipse.wst.html.core.internal.provisional.HTML40Namespace;
-
-
-/**
- * (INS|DEL)
- */
-final class HedMarkChanges extends HedFlowContainer {
-
-	/**
-	 */
-	public HedMarkChanges(String elementName, ElementCollection collection) {
-		super(elementName, collection);
-	}
-
-	/**
-	 * %attrs;
-	 * (cite %URI; #IMPLIED)
-	 * (datetime %Datetime; #IMPLIED) 
-	 */
-	protected void createAttributeDeclarations() {
-		if (attributes != null)
-			return; // already created.
-		if (attributeCollection == null)
-			return; // fatal
-
-		attributes = new CMNamedNodeMapImpl();
-
-		// %attrs;
-		attributeCollection.getAttrs(attributes);
-
-		String[] names = {HTML40Namespace.ATTR_NAME_CITE, HTML40Namespace.ATTR_NAME_DATETIME};
-		attributeCollection.getDeclarations(attributes, Arrays.asList(names).iterator());
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedNOBR.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedNOBR.java
deleted file mode 100644
index 4e3a1a2..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedNOBR.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.html.core.internal.contentmodel;
-
-import org.eclipse.wst.html.core.internal.provisional.HTML40Namespace;
-
-
-/**
- * NOBR -- not standard tag but it is commonly used.
- */
-final class HedNOBR extends HedInlineContainer {
-
-
-	public HedNOBR(ElementCollection collection) {
-		super(HTML40Namespace.ElementName.NOBR, collection);
-		correctionType = HTMLElementDeclaration.CORRECT_DUPLICATED;
-	}
-
-	protected void createAttributeDeclarations() {
-		// No attributes is defined.
-		if (attributes != null)
-			return;
-		attributes = new CMNamedNodeMapImpl();
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedNOEMBED.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedNOEMBED.java
deleted file mode 100644
index 3d5d5fd..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedNOEMBED.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.core.internal.contentmodel;
-
-import org.eclipse.wst.html.core.internal.provisional.HTML40Namespace;
-
-
-
-/**
- * NOEMBED.
- */
-final class HedNOEMBED extends HedFlowContainer {
-
-	/**
-	 */
-	public HedNOEMBED(ElementCollection collection) {
-		super(HTML40Namespace.ElementName.NOEMBED, collection);
-	}
-
-	/**
-	 * %coreattrs;
-	 */
-	protected void createAttributeDeclarations() {
-		if (attributes != null)
-			return; // already created.
-		if (attributeCollection == null)
-			return; // fatal
-
-		attributes = new CMNamedNodeMapImpl();
-
-		// %coreattrs;
-		attributeCollection.getCore(attributes);
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedNOFRAMES.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedNOFRAMES.java
deleted file mode 100644
index 3d2d044..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedNOFRAMES.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.wst.html.core.internal.contentmodel;
-
-
-
-import org.eclipse.wst.html.core.internal.provisional.HTML40Namespace;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMContent;
-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;
-
-/**
- * NOFRAMES.
- */
-final class HedNOFRAMES extends HTMLElemDeclImpl {
-
-	/**
-	 */
-	public HedNOFRAMES(ElementCollection collection) {
-		super(HTML40Namespace.ElementName.NOFRAMES, collection);
-		typeDefinitionName = ComplexTypeDefinitionFactory.CTYPE_NOFRAMES_CONTENT;
-		layoutType = LAYOUT_HIDDEN;
-	}
-
-	/**
-	 * %attrs;
-	 */
-	protected void createAttributeDeclarations() {
-		if (attributes != null)
-			return; // already created.
-		if (attributeCollection == null)
-			return; // fatal
-
-		attributes = new CMNamedNodeMapImpl();
-
-		// %attrs;
-		attributeCollection.getAttrs(attributes);
-	}
-
-	/**
-	 * Exclusion.
-	 * <code>NOFRAMES</code> has the exclusion.
-	 * It is <code>NOFRAMES</code> itself.
-	 */
-	public CMContent getExclusion() {
-		if (exclusion != null)
-			return exclusion; // already created.
-		if (elementCollection == null)
-			return null;
-
-		exclusion = new CMGroupImpl(CMGroup.CHOICE, 1, 1);
-		CMNode label = elementCollection.getNamedItem(HTML40Namespace.ElementName.NOFRAMES);
-		if (label != null)
-			exclusion.appendChild(label);
-
-		return exclusion;
-	}
-
-	/**
-	 */
-	public CMNamedNodeMap getProhibitedAncestors() {
-		if (prohibitedAncestors != null)
-			return prohibitedAncestors;
-
-		String[] names = {HTML40Namespace.ElementName.DIR, HTML40Namespace.ElementName.MENU, HTML40Namespace.ElementName.NOFRAMES};
-		prohibitedAncestors = elementCollection.getDeclarations(names);
-
-		return prohibitedAncestors;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedNOSCRIPT.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedNOSCRIPT.java
deleted file mode 100644
index df9a403..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedNOSCRIPT.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.core.internal.contentmodel;
-
-
-
-import org.eclipse.wst.html.core.internal.provisional.HTML40Namespace;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMNamedNodeMap;
-
-/**
- * NOSCRIPT.
- */
-final class HedNOSCRIPT extends HedFlowContainer {
-
-	/**
-	 */
-	public HedNOSCRIPT(ElementCollection collection) {
-		super(HTML40Namespace.ElementName.NOSCRIPT, collection);
-		layoutType = LAYOUT_BLOCK;
-	}
-
-	/**
-	 * %attrs;
-	 */
-	protected void createAttributeDeclarations() {
-		if (attributes != null)
-			return; // already created.
-		if (attributeCollection == null)
-			return; // fatal
-
-		attributes = new CMNamedNodeMapImpl();
-
-		// %attrs;
-		attributeCollection.getAttrs(attributes);
-	}
-
-	/**
-	 */
-	public CMNamedNodeMap getProhibitedAncestors() {
-		if (prohibitedAncestors != null)
-			return prohibitedAncestors;
-
-		String[] names = {HTML40Namespace.ElementName.DIR, HTML40Namespace.ElementName.MENU};
-		prohibitedAncestors = elementCollection.getDeclarations(names);
-
-		return prohibitedAncestors;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedOBJECT.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedOBJECT.java
deleted file mode 100644
index f229abb..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedOBJECT.java
+++ /dev/null
@@ -1,86 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this 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.core.internal.contentmodel;
-
-
-
-import java.util.Arrays;
-
-import org.eclipse.wst.html.core.internal.provisional.HTML40Namespace;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMNamedNodeMap;
-
-/**
- * OBJECT.
- */
-final class HedOBJECT extends HTMLElemDeclImpl {
-
-	/**
-	 */
-	public HedOBJECT(ElementCollection collection) {
-		super(HTML40Namespace.ElementName.OBJECT, collection);
-		typeDefinitionName = ComplexTypeDefinitionFactory.CTYPE_PARAM_CONTAINER;
-		layoutType = LAYOUT_OBJECT;
-		indentChild = true;
-	}
-
-	/**
-	 * %attrs;
-	 * %reserved; ... empty.
-	 * (declare (declare) #IMPLIED)
-	 * (classid %URI; #IMPLIED)
-	 * (codebase %URI; #IMPLIED)
-	 * (data %URI; #IMPLIED)
-	 * (type %ContentType; #IMPLIED)
-	 * (codetype %ContentType; #IMPLIED)
-	 * (archive CDATA #IMPLIED)
-	 * (standby %Text; #IMPLIED)
-	 * (height %Length; #IMPLIED)
-	 * (width %Length; #IMPLIED)
-	 * (usemap %URI; #IMPLIED)
-	 * (name CDATA #IMPLIED)
-	 * (tabindex NUMBER #IMPLIED)
-	 * (align %IAlign; #IMPLIED) ... should be defined locally.
-	 * (border %Pixels; #IMPLIED)
-	 * (hspace %Pixels; #IMPLIED)
-	 * (vspace %Pixels; #IMPLIED)
-	 */
-	protected void createAttributeDeclarations() {
-		if (attributes != null)
-			return; // already created.
-		if (attributeCollection == null)
-			return; // fatal
-
-		attributes = new CMNamedNodeMapImpl();
-
-		// %attrs;
-		attributeCollection.getAttrs(attributes);
-		// %reserved; ... empty.
-
-		String[] names = {HTML40Namespace.ATTR_NAME_DECLARE, HTML40Namespace.ATTR_NAME_CLASSID, HTML40Namespace.ATTR_NAME_CODEBASE, HTML40Namespace.ATTR_NAME_DATA, HTML40Namespace.ATTR_NAME_TYPE, HTML40Namespace.ATTR_NAME_CODETYPE, HTML40Namespace.ATTR_NAME_ARCHIVE, HTML40Namespace.ATTR_NAME_STANDBY, HTML40Namespace.ATTR_NAME_HEIGHT, HTML40Namespace.ATTR_NAME_WIDTH, HTML40Namespace.ATTR_NAME_USEMAP, HTML40Namespace.ATTR_NAME_NAME, HTML40Namespace.ATTR_NAME_TABINDEX, HTML40Namespace.ATTR_NAME_BORDER, HTML40Namespace.ATTR_NAME_HSPACE, HTML40Namespace.ATTR_NAME_VSPACE};
-		attributeCollection.getDeclarations(attributes, Arrays.asList(names).iterator());
-		// %align; ... should be defined locally.
-		HTMLAttrDeclImpl attr = AttributeCollection.createAlignForImage();
-		if (attr != null)
-			attributes.putNamedItem(HTML40Namespace.ATTR_NAME_ALIGN, attr);
-	}
-
-	/**
-	 */
-	public CMNamedNodeMap getProhibitedAncestors() {
-		if (prohibitedAncestors != null)
-			return prohibitedAncestors;
-
-		String[] names = {HTML40Namespace.ElementName.PRE};
-		prohibitedAncestors = elementCollection.getDeclarations(names);
-
-		return prohibitedAncestors;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedOL.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedOL.java
deleted file mode 100644
index ad26f3a..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedOL.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.html.core.internal.contentmodel;
-
-
-
-import java.util.Arrays;
-
-import org.eclipse.wst.html.core.internal.provisional.HTML40Namespace;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMAttributeDeclaration;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMNamedNodeMap;
-
-/**
- * OL.
- */
-final class HedOL extends HedListItemContainer {
-
-	/**
-	 */
-	public HedOL(ElementCollection collection) {
-		super(HTML40Namespace.ElementName.OL, collection);
-	}
-
-	/**
-	 * OL.
-	 * (type %OLStyle; #IMPLIED) ... should be defined locally.
-	 * (compact (compact) #IMPLIED)
-	 * (start NUMBER #IMPLIED)
-	 */
-	protected void createAttributeDeclarations() {
-		if (attributes != null)
-			return; // already created.
-		if (attributeCollection == null)
-			return; // fatal
-
-		attributes = new CMNamedNodeMapImpl();
-
-		// %attrs;
-		attributeCollection.getAttrs(attributes);
-
-		// (type %OLStyle; #IMPLIED) ... should be defined locally.
-		HTMLCMDataTypeImpl atype = new HTMLCMDataTypeImpl(HTMLCMDataType.OL_STYLE);
-		HTMLAttrDeclImpl attr = new HTMLAttrDeclImpl(HTML40Namespace.ATTR_NAME_TYPE, atype, CMAttributeDeclaration.OPTIONAL);
-		attributes.putNamedItem(HTML40Namespace.ATTR_NAME_TYPE, attr);
-
-		// the rest.
-		String[] names = {HTML40Namespace.ATTR_NAME_COMPACT, HTML40Namespace.ATTR_NAME_START};
-		attributeCollection.getDeclarations(attributes, Arrays.asList(names).iterator());
-	}
-
-	/**
-	 */
-	public CMNamedNodeMap getProhibitedAncestors() {
-		if (prohibitedAncestors != null)
-			return prohibitedAncestors;
-
-		String[] names = {HTML40Namespace.ElementName.DIR, HTML40Namespace.ElementName.MENU};
-		prohibitedAncestors = elementCollection.getDeclarations(names);
-
-		return prohibitedAncestors;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedOPTGROUP.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedOPTGROUP.java
deleted file mode 100644
index 1367344..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedOPTGROUP.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.html.core.internal.contentmodel;
-
-
-
-import java.util.Arrays;
-
-import org.eclipse.wst.html.core.internal.provisional.HTML40Namespace;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMAttributeDeclaration;
-
-/**
- * OPTGROUP.
- */
-final class HedOPTGROUP extends HTMLElemDeclImpl {
-
-	/**
-	 */
-	public HedOPTGROUP(ElementCollection collection) {
-		super(HTML40Namespace.ElementName.OPTGROUP, collection);
-		typeDefinitionName = ComplexTypeDefinitionFactory.CTYPE_OPTION_CONTAINER;
-		layoutType = LAYOUT_HIDDEN;
-		indentChild = true;
-	}
-
-	/**
-	 * %attrs;
-	 * (disabled (disabled) #IMPLIED)
-	 * (label %Text; #REQUIRED) ... should be defined locally.
-	 */
-	protected void createAttributeDeclarations() {
-		if (attributes != null)
-			return; // already created.
-		attributes = new CMNamedNodeMapImpl();
-
-		// %attrs;
-		attributeCollection.getAttrs(attributes);
-		// (disabled (disabled) #IMPLIED)
-		String[] names = {HTML40Namespace.ATTR_NAME_DISABLED};
-		attributeCollection.getDeclarations(attributes, Arrays.asList(names).iterator());
-
-		// (label %Text; #REQUIRED) ... should be defined locally.
-		HTMLCMDataTypeImpl atype = new HTMLCMDataTypeImpl(HTMLCMDataType.TEXT);
-		HTMLAttrDeclImpl attr = new HTMLAttrDeclImpl(HTML40Namespace.ATTR_NAME_LABEL, atype, CMAttributeDeclaration.REQUIRED);
-		attributes.putNamedItem(HTML40Namespace.ATTR_NAME_LABEL, attr);
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedOPTION.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedOPTION.java
deleted file mode 100644
index 0568bd7..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedOPTION.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.wst.html.core.internal.contentmodel;
-
-
-
-import java.util.Arrays;
-import java.util.Iterator;
-
-import org.eclipse.wst.html.core.internal.provisional.HTML40Namespace;
-
-
-/**
- * OPTION.
- */
-final class HedOPTION extends HedPcdata {
-
-	private static String[] terminators = {HTML40Namespace.ElementName.OPTION};
-
-	/**
-	 */
-	public HedOPTION(ElementCollection collection) {
-		super(HTML40Namespace.ElementName.OPTION, collection);
-		layoutType = LAYOUT_HIDDEN;
-		omitType = OMIT_END;
-	}
-
-	/**
-	 * OPTION.
-	 * %attrs;
-	 * (selected (selected) #IMPLIED)
-	 * (disabled (disabled) #IMPLIED)
-	 * (label %Text; #IMPLIED)
-	 * (value CDATA #IMPLIED)
-	 */
-	protected void createAttributeDeclarations() {
-		if (attributes != null)
-			return; // already created.
-		if (attributeCollection == null)
-			return; // fatal
-
-		attributes = new CMNamedNodeMapImpl();
-
-		// %attrs;
-		attributeCollection.getAttrs(attributes);
-
-		String[] names = {HTML40Namespace.ATTR_NAME_SELECTED, HTML40Namespace.ATTR_NAME_DISABLED, HTML40Namespace.ATTR_NAME_LABEL, HTML40Namespace.ATTR_NAME_VALUE};
-		attributeCollection.getDeclarations(attributes, Arrays.asList(names).iterator());
-	}
-
-	/**
-	 * OPTION has terminators.
-	 * @return java.util.Iterator
-	 */
-	protected Iterator getTerminators() {
-		return Arrays.asList(terminators).iterator();
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedP.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedP.java
deleted file mode 100644
index 3ee637c..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedP.java
+++ /dev/null
@@ -1,104 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this 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.core.internal.contentmodel;
-
-
-
-import java.util.Collection;
-import java.util.Iterator;
-import java.util.Vector;
-
-import org.eclipse.wst.html.core.internal.provisional.HTML40Namespace;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMNamedNodeMap;
-
-/**
- * P.
- */
-final class HedP extends HedInlineContainer {
-
-	private static Collection terminators = null;
-
-	/**
-	 */
-	public HedP(ElementCollection collection) {
-		super(HTML40Namespace.ElementName.P, collection);
-		correctionType = CORRECT_EMPTY;
-		layoutType = LAYOUT_BLOCK;
-		omitType = OMIT_END;
-	}
-
-	/**
-	 * Create all attribute declarations.
-	 * This method is called once in the constructor of the super class.
-	 * The <code>P</code> element may have the following attributes:
-	 * <table>
-	 * <tbody>
-	 *   <tr>
-	 *     <th>NAME</th><th>TYPE</th><th>USAGE</th><th>DEFAULT (INITIAL) VALUE</th><th>MEMO</th>
-	 *   </tr>
-	 *   <tr>
-	 *     <td>%attrs;</td><td>-</td><td>-</td><td>-</td><td>-</td>
-	 *   </tr>
-	 *   <tr>
-	 *     <td>%align;</td><td>-</td><td>-</td><td>-</td><td>-</td>
-	 *   </tr>
-	 * </tbody>
-	 * </table>
-	 * <p><b>%align;</b> means <code>align (left|center|right|justify) #IMPLIED</code>.
-	 * Unfortunately, this <code>align</code> is different from one in
-	 * <code>IMG</code> or <code>TABLE</code>.  So, the attribute declaration
-	 * of <code>align</code> should be localy created and it shouldn't be registered
-	 * in a <code>HCMDocImpl</code> instance.</p>
-	 * <p>However, %align is used in sevaral times.  I wouldn't write same code
-	 * in many times.  So, I add a new utility method into <code>CMUtil</code>
-	 * to create the attribute declaration.</p>
-	 */
-	protected void createAttributeDeclarations() {
-		if (attributes != null)
-			return; // already created.
-		if (attributeCollection == null)
-			return; // fatal
-		attributes = new CMNamedNodeMapImpl();
-		// %attrs;
-		attributeCollection.getAttrs(attributes);
-		// align
-		HTMLAttrDeclImpl adec = AttributeCollection.createAlignForParagraph();
-		attributes.putNamedItem(HTML40Namespace.ATTR_NAME_ALIGN, adec);
-	}
-
-	/**
-	 */
-	public CMNamedNodeMap getProhibitedAncestors() {
-		if (prohibitedAncestors != null)
-			return prohibitedAncestors;
-		String[] names = {HTML40Namespace.ElementName.DIR, HTML40Namespace.ElementName.MENU};
-		prohibitedAncestors = elementCollection.getDeclarations(names);
-		return prohibitedAncestors;
-	}
-
-	/**
-	 * Return names of terminators.
-	 * <code>P</code> has terminators.
-	 * @return java.util.Iterator
-	 */
-	protected Iterator getTerminators() {
-		if (terminators != null)
-			return terminators.iterator();
-		//<<D217982
-		terminators = new Vector();
-		terminators.addAll(elementCollection.getNamesOfBlock());
-		terminators.add(HTML40Namespace.ElementName.LI);
-		terminators.add(HTML40Namespace.ElementName.DT);
-		terminators.add(HTML40Namespace.ElementName.DD);
-		//D217982
-		return terminators.iterator();
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedPARAM.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedPARAM.java
deleted file mode 100644
index bb44fe5..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedPARAM.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.html.core.internal.contentmodel;
-
-
-
-import java.util.Arrays;
-
-import org.eclipse.wst.html.core.internal.provisional.HTML40Namespace;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMAttributeDeclaration;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMDataType;
-
-/**
- * PARAM.
- */
-final class HedPARAM extends HedEmpty {
-
-	/**
-	 */
-	public HedPARAM(ElementCollection collection) {
-		super(HTML40Namespace.ElementName.PARAM, collection);
-		layoutType = LAYOUT_HIDDEN;
-	}
-
-	/**
-	 * PARAM.
-	 * (id ID #IMPLIED)
-	 * (name CDATA #REQUIRED) ... should be defined locally.
-	 * (value CDATA #IMPLIED)
-	 * (valuetype (DATA|REF|OBJECT) DATA)
-	 * (type %ContentType; #IMPLIED)
-	 */
-	protected void createAttributeDeclarations() {
-		if (attributes != null)
-			return; // already created.
-		if (attributeCollection == null)
-			return; // fatal
-
-		attributes = new CMNamedNodeMapImpl();
-
-		String[] names = {HTML40Namespace.ATTR_NAME_ID, HTML40Namespace.ATTR_NAME_VALUE, HTML40Namespace.ATTR_NAME_VALUETYPE, HTML40Namespace.ATTR_NAME_TYPE};
-		attributeCollection.getDeclarations(attributes, Arrays.asList(names).iterator());
-
-		// (name CDATA #REQUIRED) ... should be defined locally.
-		HTMLCMDataTypeImpl atype = new HTMLCMDataTypeImpl(CMDataType.CDATA);
-		HTMLAttrDeclImpl attr = new HTMLAttrDeclImpl(HTML40Namespace.ATTR_NAME_NAME, atype, CMAttributeDeclaration.REQUIRED);
-		attributes.putNamedItem(HTML40Namespace.ATTR_NAME_NAME, attr);
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedPRE.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedPRE.java
deleted file mode 100644
index 4e6b228..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedPRE.java
+++ /dev/null
@@ -1,91 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this 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.core.internal.contentmodel;
-
-
-
-import java.util.Arrays;
-
-import org.eclipse.wst.html.core.internal.provisional.HTML40Namespace;
-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.CMGroup;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMNamedNodeMap;
-
-/**
- * PRE.
- */
-final class HedPRE extends HedInlineContainer {
-
-	/**
-	 * PRE element should keep spaces in its source.
-	 */
-	public HedPRE(ElementCollection collection) {
-		super(HTML40Namespace.ElementName.PRE, collection);
-		// CORRECT_EMPTY - GROUP_COMPACT
-		correctionType = CORRECT_EMPTY;
-
-		keepSpaces = true;
-	}
-
-	/**
-	 * %attrs;
-	 * (width NUMBER #IMPLIED) ... should be defined locally.
-	 */
-	protected void createAttributeDeclarations() {
-		if (attributes != null)
-			return; // already created.
-		if (attributeCollection == null)
-			return; // fatal
-
-		attributes = new CMNamedNodeMapImpl();
-
-		// %attrs;
-		attributeCollection.getAttrs(attributes);
-		// (width NUMBER #IMPLIED) ... should be defined locally.
-		HTMLCMDataTypeImpl atype = new HTMLCMDataTypeImpl(CMDataType.NUMBER);
-		HTMLAttrDeclImpl attr = new HTMLAttrDeclImpl(HTML40Namespace.ATTR_NAME_WIDTH, atype, CMAttributeDeclaration.OPTIONAL);
-		attributes.putNamedItem(HTML40Namespace.ATTR_NAME_WIDTH, attr);
-	}
-
-	/**
-	 * Exclusion.
-	 * <code>PRE</code> has the exclusion.
-	 * It is <code>%pre.exclusion;</code>.
-	 * %pre.exclusion is:
-	 * IMG | OBJECT | APPLET | BIG | SMALL | SUB | SUP | FONT | BASEFONT
-	 */
-	public CMContent getExclusion() {
-		if (exclusion != null)
-			return exclusion; // already created.
-		if (elementCollection == null)
-			return null;
-
-		exclusion = new CMGroupImpl(CMGroup.CHOICE, 1, 1);
-		String[] names = {HTML40Namespace.ElementName.IMG, HTML40Namespace.ElementName.OBJECT, HTML40Namespace.ElementName.APPLET, HTML40Namespace.ElementName.BIG, HTML40Namespace.ElementName.SMALL, HTML40Namespace.ElementName.SUB, HTML40Namespace.ElementName.SUP, HTML40Namespace.ElementName.FONT, HTML40Namespace.ElementName.BASEFONT};
-		elementCollection.getDeclarations(exclusion, Arrays.asList(names).iterator());
-
-		return exclusion;
-	}
-
-	/**
-	 */
-	public CMNamedNodeMap getProhibitedAncestors() {
-		if (prohibitedAncestors != null)
-			return prohibitedAncestors;
-
-		String[] names = {HTML40Namespace.ElementName.DIR, HTML40Namespace.ElementName.MENU};
-		prohibitedAncestors = elementCollection.getDeclarations(names);
-
-		return prohibitedAncestors;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedPcdata.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedPcdata.java
deleted file mode 100644
index 7e14c31..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedPcdata.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.html.core.internal.contentmodel;
-
-
-
-import org.eclipse.wst.xml.core.internal.contentmodel.CMContent;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMElementDeclaration;
-
-/**
- * Base class for PCDATA type element declarations.<br>
- */
-abstract class HedPcdata extends HTMLElemDeclImpl {
-
-	/**
-	 */
-	public HedPcdata(String elementName, ElementCollection collection) {
-		super(elementName, collection);
-		typeDefinitionName = ComplexTypeDefinitionFactory.CTYPE_PCDATA;
-	}
-
-	/**
-	 * Content.<br>
-	 * PCDATA type always returns <code>null</code>.
-	 * <br>
-	 * @return org.eclipse.wst.xml.core.internal.contentmodel.CMContent
-	 */
-	public CMContent getContent() {
-		return null;
-	}
-
-	/**
-	 * Content type.<br>
-	 * @see org.eclipse.wst.xml.core.internal.contentmodel.CMElementDeclaration
-	 */
-	public int getContentType() {
-		return CMElementDeclaration.PCDATA;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedPhrase.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedPhrase.java
deleted file mode 100644
index 7561e1e..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedPhrase.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.wst.html.core.internal.contentmodel;
-
-
-
-/**
- * %phrase;
- */
-final class HedPhrase extends HedInlineContainer {
-
-	/**
-	 */
-	public HedPhrase(String elementName, ElementCollection collection) {
-		super(elementName, collection);
-		correctionType = HTMLElementDeclaration.CORRECT_DUPLICATED;
-	}
-
-	/**
-	 * %attrs;
-	 */
-	protected void createAttributeDeclarations() {
-		if (attributes != null)
-			return; // already created.
-		if (attributeCollection == null)
-			return; // fatal
-
-		attributes = new CMNamedNodeMapImpl();
-
-		// %attrs;
-		attributeCollection.getAttrs(attributes);
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedQ.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedQ.java
deleted file mode 100644
index 018232f..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedQ.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.core.internal.contentmodel;
-
-
-
-import java.util.Arrays;
-
-import org.eclipse.wst.html.core.internal.provisional.HTML40Namespace;
-
-
-/**
- * Q.
- */
-final class HedQ extends HedInlineContainer {
-
-	/**
-	 */
-	public HedQ(ElementCollection collection) {
-		super(HTML40Namespace.ElementName.Q, collection);
-		correctionType = CORRECT_DUPLICATED;
-	}
-
-	/**
-	 * %attrs;
-	 * (cite %URI; #IMPLIED) 
-	 */
-	protected void createAttributeDeclarations() {
-		if (attributes != null)
-			return; // already created.
-		if (attributeCollection == null)
-			return; // fatal
-		attributes = new CMNamedNodeMapImpl();
-
-		// %attrs;
-		attributeCollection.getAttrs(attributes);
-
-		String[] names = {HTML40Namespace.ATTR_NAME_CITE};
-		attributeCollection.getDeclarations(attributes, Arrays.asList(names).iterator());
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedSCRIPT.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedSCRIPT.java
deleted file mode 100644
index a279a0d..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedSCRIPT.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.wst.html.core.internal.contentmodel;
-
-
-
-import java.util.Arrays;
-
-import org.eclipse.wst.html.core.internal.provisional.HTML40Namespace;
-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;
-
-/**
- * SCRIPT.
- */
-final class HedSCRIPT extends HTMLElemDeclImpl {
-
-	/**
-	 */
-	public HedSCRIPT(ElementCollection collection) {
-		super(HTML40Namespace.ElementName.SCRIPT, collection);
-		typeDefinitionName = ComplexTypeDefinitionFactory.CTYPE_CDATA;
-		layoutType = LAYOUT_OBJECT;
-	}
-
-	/**
-	 * SCRIPT.
-	 * (charset %Charset; #IMPLIED)
-	 * (type %ContentType; #REQUIRED) ... should be defined locally.
-	 * (language CDATA #IMPLIED)
-	 * (src %URI; #IMPLIED)
-	 * (defer (defer) #IMPLIED)
-	 * (event CDATA #IMPLIED)
-	 * (for %URI; #IMPLIED)
-	 */
-	protected void createAttributeDeclarations() {
-		if (attributes != null)
-			return; // already created.
-		if (attributeCollection == null)
-			return; // fatal
-
-		attributes = new CMNamedNodeMapImpl();
-
-		String[] names = {HTML40Namespace.ATTR_NAME_CHARSET, HTML40Namespace.ATTR_NAME_LANGUAGE, HTML40Namespace.ATTR_NAME_SRC, HTML40Namespace.ATTR_NAME_DEFER, HTML40Namespace.ATTR_NAME_EVENT, HTML40Namespace.ATTR_NAME_FOR};
-		attributeCollection.getDeclarations(attributes, Arrays.asList(names).iterator());
-
-		// (type %ContentType; #REQUIRED) ... should be defined locally.
-		HTMLCMDataTypeImpl atype = new HTMLCMDataTypeImpl(HTMLCMDataType.CONTENT_TYPE);
-		atype.setImpliedValue(CMDataType.IMPLIED_VALUE_DEFAULT, "text/javascript"); //$NON-NLS-1$
-		HTMLAttrDeclImpl attr = new HTMLAttrDeclImpl(HTML40Namespace.ATTR_NAME_TYPE, atype, CMAttributeDeclaration.REQUIRED);
-		attributes.putNamedItem(HTML40Namespace.ATTR_NAME_TYPE, attr);
-	}
-
-	/**
-	 * <code>SCRIPT</code> is CDATA type.
-	 * So, the method always returns <code>null</code>.
-	 * <br>
-	 * @return org.eclipse.wst.xml.core.internal.contentmodel.CMContent
-	 */
-	public CMContent getContent() {
-		return null;
-	}
-
-	/**
-	 * CDATA content.<br>
-	 * @return int
-	 */
-	public int getContentType() {
-		return CMElementDeclaration.CDATA;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedSELECT.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedSELECT.java
deleted file mode 100644
index 8e3c3f4..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedSELECT.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.wst.html.core.internal.contentmodel;
-
-
-
-import java.util.Arrays;
-
-import org.eclipse.wst.html.core.internal.provisional.HTML40Namespace;
-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.CMNamedNodeMap;
-
-/**
- * SELECT.
- */
-final class HedSELECT extends HTMLElemDeclImpl {
-
-	/**
-	 */
-	public HedSELECT(ElementCollection collection) {
-		super(HTML40Namespace.ElementName.SELECT, collection);
-		typeDefinitionName = ComplexTypeDefinitionFactory.CTYPE_SELECT;
-		layoutType = LAYOUT_OBJECT;
-		indentChild = true;
-	}
-
-	/**
-	 * %attrs;
-	 * %reserved;
-	 * (name CDATA #IMPLIED)
-	 * (size NUMBER #IMPLIED) ... should be defined locally.
-	 * (multiple (multiple) #IMPLIED)
-	 * (disabled (disabled) #IMPLIED)
-	 * (tabindex NUMBER #IMPLIED)
-	 * (onfocus %Script; #IMPLIED)
-	 * (onblur %Script; #IMPLIED)
-	 * (onchange %Script; #IMPLIED)
-	 */
-	protected void createAttributeDeclarations() {
-		if (attributes != null)
-			return; // already created.
-		if (attributeCollection == null)
-			return; // fatal
-
-		attributes = new CMNamedNodeMapImpl();
-
-		// %attrs;
-		attributeCollection.getAttrs(attributes);
-
-		// (size NUMBER #IMPLIED) ... should be defined locally.
-		HTMLCMDataTypeImpl atype = new HTMLCMDataTypeImpl(CMDataType.NUMBER);
-		HTMLAttrDeclImpl attr = new HTMLAttrDeclImpl(HTML40Namespace.ATTR_NAME_SIZE, atype, CMAttributeDeclaration.OPTIONAL);
-		attributes.putNamedItem(HTML40Namespace.ATTR_NAME_SIZE, attr);
-
-		String[] names = {HTML40Namespace.ATTR_NAME_NAME, HTML40Namespace.ATTR_NAME_MULTIPLE, HTML40Namespace.ATTR_NAME_DISABLED, HTML40Namespace.ATTR_NAME_TABINDEX, HTML40Namespace.ATTR_NAME_ONFOCUS, HTML40Namespace.ATTR_NAME_ONBLUR, HTML40Namespace.ATTR_NAME_ONCHANGE};
-		attributeCollection.getDeclarations(attributes, Arrays.asList(names).iterator());
-	}
-
-	/**
-	 */
-	public CMNamedNodeMap getProhibitedAncestors() {
-		if (prohibitedAncestors != null)
-			return prohibitedAncestors;
-
-		String[] names = {HTML40Namespace.ElementName.BUTTON};
-		prohibitedAncestors = elementCollection.getDeclarations(names);
-
-		return prohibitedAncestors;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedSPAN.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedSPAN.java
deleted file mode 100644
index b5aaa17..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedSPAN.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.wst.html.core.internal.contentmodel;
-
-import org.eclipse.wst.html.core.internal.provisional.HTML40Namespace;
-
-
-
-/**
- * SPAN.
- */
-final class HedSPAN extends HedInlineContainer {
-
-	/**
-	 * SPAN.
-	 */
-	public HedSPAN(ElementCollection collection) {
-		super(HTML40Namespace.ElementName.SPAN, collection);
-	}
-
-	/**
-	 * %attrs;
-	 * %reserved; ... empty.
-	 */
-	protected void createAttributeDeclarations() {
-		if (attributes != null)
-			return; // already created.
-		if (attributeCollection == null)
-			return; // fatal
-
-		attributes = new CMNamedNodeMapImpl();
-
-		// %attrs;
-		attributeCollection.getAttrs(attributes);
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedSSIBase.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedSSIBase.java
deleted file mode 100644
index 6638be7..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedSSIBase.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.core.internal.contentmodel;
-
-import org.eclipse.wst.html.core.internal.provisional.HTMLCMProperties;
-
-
-
-/**
- * Base class for SSI declarations.
- */
-abstract class HedSSIBase extends HedEmpty {
-
-	/**
-	 */
-	public HedSSIBase(String elementName, ElementCollection collection) {
-		super(elementName, collection);
-		layoutType = LAYOUT_OBJECT;
-	}
-
-	/**
-	 */
-	public int getFormatType() {
-		return HTMLElementDeclaration.FORMAT_SSI;
-	}
-
-	/**
-	 */
-	public boolean supports(String propName) {
-		if (propName.equals(HTMLCMProperties.IS_SSI))
-			return true;
-		return super.supports(propName);
-	}
-
-	/*
-	 */
-	public Object getProperty(String propName) {
-		if (propName.equals(HTMLCMProperties.IS_SSI))
-			return new Boolean(true);
-		return super.getProperty(propName);
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedSSIConfig.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedSSIConfig.java
deleted file mode 100644
index 71d292c..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedSSIConfig.java
+++ /dev/null
@@ -1,48 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this 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.core.internal.contentmodel;
-
-
-
-import java.util.Arrays;
-
-import org.eclipse.wst.html.core.internal.provisional.HTML40Namespace;
-
-
-/**
- * SSI:CONFIG.
- */
-final class HedSSIConfig extends HedSSIBase {
-
-	/**
-	 */
-	public HedSSIConfig(ElementCollection collection) {
-		super(HTML40Namespace.ElementName.SSI_CONFIG, collection);
-	}
-
-	/**
-	 * SSI:CONFIG.
-	 * (errmsg CDATA #IMPLIED)
-	 * (sizefmt CDATA #IMPLIED)
-	 * (timefmt CDATA #IMPLIED)
-	 */
-	protected void createAttributeDeclarations() {
-		if (attributes != null)
-			return; // already created.
-		if (attributeCollection == null)
-			return; // fatal
-
-		attributes = new CMNamedNodeMapImpl();
-
-		String[] names = {HTML40Namespace.ATTR_NAME_ERRMSG, HTML40Namespace.ATTR_NAME_SIZEFMT, HTML40Namespace.ATTR_NAME_TIMEFMT};
-		attributeCollection.getDeclarations(attributes, Arrays.asList(names).iterator());
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedSSIEcho.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedSSIEcho.java
deleted file mode 100644
index 38c5e6d..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedSSIEcho.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.wst.html.core.internal.contentmodel;
-
-
-
-import java.util.Arrays;
-
-import org.eclipse.wst.html.core.internal.provisional.HTML40Namespace;
-
-
-/**
- * SSI:ECHO.
- */
-final class HedSSIEcho extends HedSSIBase {
-
-	/**
-	 */
-	public HedSSIEcho(ElementCollection collection) {
-		super(HTML40Namespace.ElementName.SSI_ECHO, collection);
-	}
-
-	/**
-	 * SSI:ECHO
-	 * (var CDATA #IMPLIED)
-	 */
-	protected void createAttributeDeclarations() {
-		if (attributes != null)
-			return; // already created.
-		if (attributeCollection == null)
-			return; // fatal
-
-		attributes = new CMNamedNodeMapImpl();
-
-		String[] names = {HTML40Namespace.ATTR_NAME_VAR};
-		attributeCollection.getDeclarations(attributes, Arrays.asList(names).iterator());
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedSSIExec.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedSSIExec.java
deleted file mode 100644
index b2c3c85..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedSSIExec.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.html.core.internal.contentmodel;
-
-
-
-import java.util.Arrays;
-
-import org.eclipse.wst.html.core.internal.provisional.HTML40Namespace;
-
-
-/**
- * SSI:EXEC.
- */
-final class HedSSIExec extends HedSSIBase {
-
-	/**
-	 */
-	public HedSSIExec(ElementCollection collection) {
-		super(HTML40Namespace.ElementName.SSI_EXEC, collection);
-	}
-
-	/**
-	 * SSI:EXEC
-	 * (cgi %URI; #IMPLIED)
-	 * (cmd CDATA #IMPLIED)
-	 */
-	protected void createAttributeDeclarations() {
-		if (attributes != null)
-			return; // already created.
-		if (attributeCollection == null)
-			return; // fatal
-
-		attributes = new CMNamedNodeMapImpl();
-
-		String[] names = {HTML40Namespace.ATTR_NAME_CGI, HTML40Namespace.ATTR_NAME_CMD};
-		attributeCollection.getDeclarations(attributes, Arrays.asList(names).iterator());
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedSSIFlastmod.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedSSIFlastmod.java
deleted file mode 100644
index 4a83941..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedSSIFlastmod.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.html.core.internal.contentmodel;
-
-
-
-import java.util.Arrays;
-
-import org.eclipse.wst.html.core.internal.provisional.HTML40Namespace;
-
-
-/**
- * SSI:FLASTMOD.
- */
-final class HedSSIFlastmod extends HedSSIBase {
-
-	/**
-	 */
-	public HedSSIFlastmod(ElementCollection collection) {
-		super(HTML40Namespace.ElementName.SSI_FLASTMOD, collection);
-	}
-
-	/**
-	 * SSI:FLASTMOD
-	 * (file %URI; #IMPLIED)
-	 * (virtual %URI #IMPLIED)
-	 */
-	protected void createAttributeDeclarations() {
-		if (attributes != null)
-			return; // already created.
-		if (attributeCollection == null)
-			return; // fatal
-
-		attributes = new CMNamedNodeMapImpl();
-
-		String[] names = {HTML40Namespace.ATTR_NAME_FILE, HTML40Namespace.ATTR_NAME_VIRTUAL};
-		attributeCollection.getDeclarations(attributes, Arrays.asList(names).iterator());
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedSSIFsize.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedSSIFsize.java
deleted file mode 100644
index 93f7541..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedSSIFsize.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.html.core.internal.contentmodel;
-
-
-
-import java.util.Arrays;
-
-import org.eclipse.wst.html.core.internal.provisional.HTML40Namespace;
-
-
-/**
- * SSI:FSIZE.
- */
-final class HedSSIFsize extends HedSSIBase {
-
-	/**
-	 */
-	public HedSSIFsize(ElementCollection collection) {
-		super(HTML40Namespace.ElementName.SSI_FSIZE, collection);
-	}
-
-	/**
-	 * SSI:FSIZE
-	 * (file %URI; #IMPLIED)
-	 * (virtual %URI #IMPLIED)
-	 */
-	protected void createAttributeDeclarations() {
-		if (attributes != null)
-			return; // already created.
-		if (attributeCollection == null)
-			return; // fatal
-
-		attributes = new CMNamedNodeMapImpl();
-
-		String[] names = {HTML40Namespace.ATTR_NAME_FILE, HTML40Namespace.ATTR_NAME_VIRTUAL};
-		attributeCollection.getDeclarations(attributes, Arrays.asList(names).iterator());
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedSSIInclude.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedSSIInclude.java
deleted file mode 100644
index d28a553..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedSSIInclude.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.html.core.internal.contentmodel;
-
-
-
-import java.util.Arrays;
-
-import org.eclipse.wst.html.core.internal.provisional.HTML40Namespace;
-
-
-/**
- * SSI:INCLUDE.
- */
-final class HedSSIInclude extends HedSSIBase {
-
-	/**
-	 */
-	public HedSSIInclude(ElementCollection collection) {
-		super(HTML40Namespace.ElementName.SSI_INCLUDE, collection);
-	}
-
-	/**
-	 * SSI:INCLUDE
-	 * (file %URI; #IMPLIED)
-	 * (virtual %URI #IMPLIED)
-	 */
-	protected void createAttributeDeclarations() {
-		if (attributes != null)
-			return; // already created.
-		if (attributeCollection == null)
-			return; // fatal
-
-		attributes = new CMNamedNodeMapImpl();
-
-		String[] names = {HTML40Namespace.ATTR_NAME_FILE, HTML40Namespace.ATTR_NAME_VIRTUAL};
-		attributeCollection.getDeclarations(attributes, Arrays.asList(names).iterator());
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedSSIPrintenv.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedSSIPrintenv.java
deleted file mode 100644
index 05c303d..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedSSIPrintenv.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.core.internal.contentmodel;
-
-
-
-import org.eclipse.wst.html.core.internal.provisional.HTML40Namespace;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMNamedNodeMap;
-
-/**
- * SSI:PRINTENV.
- */
-final class HedSSIPrintenv extends HedSSIBase {
-
-	/**
-	 */
-	public HedSSIPrintenv(ElementCollection collection) {
-		super(HTML40Namespace.ElementName.SSI_PRINTENV, collection);
-	}
-
-	/**
-	 */
-	protected void createAttributeDeclarations() {
-		if (attributes != null)
-			return; // already created.
-		if (attributeCollection == null)
-			return; // fatal
-
-		attributes = new CMNamedNodeMapImpl();
-	}
-
-	/**
-	 * SSI:PRINTENV has no attributes.  So, this method should
-	 * always return <code>null</code>.
-	 * Note: Since somebody doesn't expect null is returned, return the empty attribute
-	 * like a custom tag which doesn't have attributes
-	 */
-	public CMNamedNodeMap getAttributes() {
-		return super.getAttributes();
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedSSISet.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedSSISet.java
deleted file mode 100644
index ed8c41a..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedSSISet.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.html.core.internal.contentmodel;
-
-
-
-import java.util.Arrays;
-
-import org.eclipse.wst.html.core.internal.provisional.HTML40Namespace;
-
-
-/**
- * SSI:SET.
- */
-final class HedSSISet extends HedSSIBase {
-
-	/**
-	 */
-	public HedSSISet(ElementCollection collection) {
-		super(HTML40Namespace.ElementName.SSI_SET, collection);
-	}
-
-	/**
-	 * SSI:SET
-	 * (var CDATA #IMPLIED)
-	 * (value CDATA #IMPLIED)
-	 */
-	protected void createAttributeDeclarations() {
-		if (attributes != null)
-			return; // already created.
-		if (attributeCollection == null)
-			return; // fatal
-
-		attributes = new CMNamedNodeMapImpl();
-
-		String[] names = {HTML40Namespace.ATTR_NAME_VAR, HTML40Namespace.ATTR_NAME_VALUE};
-		attributeCollection.getDeclarations(attributes, Arrays.asList(names).iterator());
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedSTYLE.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedSTYLE.java
deleted file mode 100644
index 3782d5b..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedSTYLE.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.wst.html.core.internal.contentmodel;
-
-
-
-import java.util.Arrays;
-
-import org.eclipse.wst.html.core.internal.provisional.HTML40Namespace;
-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;
-
-/**
- * STYLE.
- */
-final class HedSTYLE extends HTMLElemDeclImpl {
-
-	/**
-	 */
-	public HedSTYLE(ElementCollection collection) {
-		super(HTML40Namespace.ElementName.STYLE, collection);
-		typeDefinitionName = ComplexTypeDefinitionFactory.CTYPE_CDATA;
-		layoutType = LAYOUT_HIDDEN;
-	}
-
-	/**
-	 * STYLE
-	 * %i18n;
-	 * (type %ContentType; #REQUIRED) ... should be defined locally.
-	 * (media %MediaDesc; #IMPLIED)
-	 * (title %Text; #IMPLIED)
-	 */
-	protected void createAttributeDeclarations() {
-		if (attributes != null)
-			return; // already created.
-		if (attributeCollection == null)
-			return; // fatal
-
-		attributes = new CMNamedNodeMapImpl();
-
-		// %i18n;
-		attributeCollection.getI18n(attributes);
-
-		String[] names = {HTML40Namespace.ATTR_NAME_MEDIA, HTML40Namespace.ATTR_NAME_TITLE};
-		attributeCollection.getDeclarations(attributes, Arrays.asList(names).iterator());
-		// (type %ContentType; #REQUIRED) ... should be defined locally.
-		HTMLCMDataTypeImpl atype = new HTMLCMDataTypeImpl(HTMLCMDataType.CONTENT_TYPE);
-		HTMLAttrDeclImpl attr = new HTMLAttrDeclImpl(HTML40Namespace.ATTR_NAME_TYPE, atype, CMAttributeDeclaration.REQUIRED);
-		attributes.putNamedItem(HTML40Namespace.ATTR_NAME_TYPE, attr);
-	}
-
-	/**
-	 * Content.<br>
-	 * <code>STYLE</code> is CDATA content type.  So, it always returns <code>null</code>.
-	 * @return org.eclipse.wst.xml.core.internal.contentmodel.CMContent
-	 */
-	public CMContent getContent() {
-		return null;
-	}
-
-	/**
-	 * CDATA content.<br>
-	 * @return int
-	 */
-	public int getContentType() {
-		return CMElementDeclaration.CDATA;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedScripts.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedScripts.java
deleted file mode 100644
index dab20e1..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedScripts.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.core.internal.contentmodel;
-
-
-
-import org.eclipse.wst.html.core.internal.provisional.HTML40Namespace;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMNamedNodeMap;
-
-/**
- * SUB and SUP.
- */
-final class HedScripts extends HedInlineContainer {
-
-	/**
-	 */
-	public HedScripts(String elementName, ElementCollection collection) {
-		super(elementName, collection);
-		correctionType = CORRECT_EMPTY;
-	}
-
-	/**
-	 * %attrs;
-	 */
-	protected void createAttributeDeclarations() {
-		if (attributes != null)
-			return; // already created.
-		if (attributeCollection == null)
-			return; // fatal
-
-		attributes = new CMNamedNodeMapImpl();
-
-		// %attrs;
-		attributeCollection.getAttrs(attributes);
-	}
-
-	/**
-	 */
-	public CMNamedNodeMap getProhibitedAncestors() {
-		if (prohibitedAncestors != null)
-			return prohibitedAncestors;
-
-		String[] names = {HTML40Namespace.ElementName.PRE};
-		prohibitedAncestors = elementCollection.getDeclarations(names);
-
-		return prohibitedAncestors;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedTABLE.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedTABLE.java
deleted file mode 100644
index 77aea58..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedTABLE.java
+++ /dev/null
@@ -1,90 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this 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.core.internal.contentmodel;
-
-
-
-import java.util.Arrays;
-
-import org.eclipse.wst.html.core.internal.provisional.HTML40Namespace;
-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.CMNamedNodeMap;
-
-/**
- * TABLE.
- */
-final class HedTABLE extends HTMLElemDeclImpl {
-
-	/**
-	 */
-	public HedTABLE(ElementCollection collection) {
-		super(HTML40Namespace.ElementName.TABLE, collection);
-		typeDefinitionName = ComplexTypeDefinitionFactory.CTYPE_TABLE;
-		layoutType = LAYOUT_BLOCK;
-		indentChild = true;
-	}
-
-	/**
-	 * TABLE.
-	 * %attrs;
-	 * %reserved;
-	 * (summary %Text; #IMPLIED)
-	 * (width %Length; #IMPLIED)
-	 * (border %Pixels; #IMPLIED)
-	 * (frame %TFrame; #IMPLIED)
-	 * (rules %TRules; #IMPLIED)
-	 * (cellspacing %Length; #IMPLIED)
-	 * (cellpadding %Length; #IMPLIED)
-	 * (align %TAlign; #IMPLIED)
-	 * (bgcolor %Color; #IMPLIED)
-	 * (datapagesize CDATA #IMPLIED)
-	 * (height %Pixels; #IMPLIED)
-	 * (background %URI; #IMPLIED)
-	 * (bordercolor %Color #IMPLIED) ... D205514
-	 */
-	protected void createAttributeDeclarations() {
-		if (attributes != null)
-			return; // already created.
-		if (attributeCollection == null)
-			return; // fatal
-
-		attributes = new CMNamedNodeMapImpl();
-
-		// %attrs;
-		attributeCollection.getAttrs(attributes);
-		// %reserved;
-		// ... %reserved; is empty in the current DTD.
-
-		String[] names = {HTML40Namespace.ATTR_NAME_SUMMARY, HTML40Namespace.ATTR_NAME_WIDTH, HTML40Namespace.ATTR_NAME_BORDER, HTML40Namespace.ATTR_NAME_FRAME, HTML40Namespace.ATTR_NAME_RULES, HTML40Namespace.ATTR_NAME_CELLSPACING, HTML40Namespace.ATTR_NAME_CELLPADDING, HTML40Namespace.ATTR_NAME_BGCOLOR, HTML40Namespace.ATTR_NAME_DATAPAGESIZE, HTML40Namespace.ATTR_NAME_HEIGHT, HTML40Namespace.ATTR_NAME_BACKGROUND, HTML40Namespace.ATTR_NAME_BORDERCOLOR // D205514
-		};
-		attributeCollection.getDeclarations(attributes, Arrays.asList(names).iterator());
-
-		// align (local)
-		HTMLCMDataTypeImpl atype = new HTMLCMDataTypeImpl(CMDataType.ENUM);
-		String[] alignValues = {HTML40Namespace.ATTR_VALUE_LEFT, HTML40Namespace.ATTR_VALUE_CENTER, HTML40Namespace.ATTR_VALUE_RIGHT};
-		atype.setEnumValues(alignValues);
-		HTMLAttrDeclImpl adec = new HTMLAttrDeclImpl(HTML40Namespace.ATTR_NAME_ALIGN, atype, CMAttributeDeclaration.OPTIONAL);
-		attributes.putNamedItem(HTML40Namespace.ATTR_NAME_ALIGN, adec);
-	}
-
-	/**
-	 */
-	public CMNamedNodeMap getProhibitedAncestors() {
-		if (prohibitedAncestors != null)
-			return prohibitedAncestors;
-
-		String[] names = {HTML40Namespace.ElementName.DIR, HTML40Namespace.ElementName.MENU};
-		prohibitedAncestors = elementCollection.getDeclarations(names);
-
-		return prohibitedAncestors;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedTEXTAREA.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedTEXTAREA.java
deleted file mode 100644
index 4fb0f5e..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedTEXTAREA.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.wst.html.core.internal.contentmodel;
-
-
-
-import java.util.Arrays;
-
-import org.eclipse.wst.html.core.internal.provisional.HTML40Namespace;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMNamedNodeMap;
-
-/**
- * TEXTAREA.
- */
-final class HedTEXTAREA extends HedPcdata {
-
-	/**
-	 * TEXTAREA should keep spaces in its source.
-	 */
-	public HedTEXTAREA(ElementCollection collection) {
-		super(HTML40Namespace.ElementName.TEXTAREA, collection);
-		layoutType = LAYOUT_OBJECT;
-
-		keepSpaces = true;
-	}
-
-	/**
-	 * TEXTAREA.
-	 * %attrs;
-	 * %reserved; ... empty
-	 * (name CDATA #IMPLIED)
-	 * (rows NUMBER #REQUIRED)
-	 * (cols NUMBER #REQUIRED)
-	 * (disabled (disabled) #IMPLIED)
-	 * (readonly (readonly) #IMPLIED)
-	 * (tabindex NUMBER #IMPLIED)
-	 * (accesskey %Character; #IMPLIED)
-	 * (onfocus %Script; #IMPLIED)
-	 * (onblur %Script; #IMPLIED)
-	 * (onselect %Script; #IMPLIED)
-	 * (onchange %Script; #IMPLIED)
-	 * (istyle CDATA #IMPLIED)
-	 */
-	protected void createAttributeDeclarations() {
-		if (attributes != null)
-			return; // already created.
-		if (attributeCollection == null)
-			return; // fatal
-		attributes = new CMNamedNodeMapImpl();
-
-		// %attrs;
-		attributeCollection.getAttrs(attributes);
-
-		String[] names = {HTML40Namespace.ATTR_NAME_NAME, HTML40Namespace.ATTR_NAME_ROWS, HTML40Namespace.ATTR_NAME_COLS, HTML40Namespace.ATTR_NAME_DISABLED, HTML40Namespace.ATTR_NAME_READONLY, HTML40Namespace.ATTR_NAME_TABINDEX, HTML40Namespace.ATTR_NAME_ACCESSKEY, HTML40Namespace.ATTR_NAME_ONFOCUS, HTML40Namespace.ATTR_NAME_ONBLUR, HTML40Namespace.ATTR_NAME_ONSELECT, HTML40Namespace.ATTR_NAME_ONCHANGE, HTML40Namespace.ATTR_NAME_ISTYLE};
-		attributeCollection.getDeclarations(attributes, Arrays.asList(names).iterator());
-	}
-
-	/**
-	 */
-	public CMNamedNodeMap getProhibitedAncestors() {
-		if (prohibitedAncestors != null)
-			return prohibitedAncestors;
-
-		String[] names = {HTML40Namespace.ElementName.BUTTON};
-		prohibitedAncestors = elementCollection.getDeclarations(names);
-
-		return prohibitedAncestors;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedTITLE.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedTITLE.java
deleted file mode 100644
index ae8cf19..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedTITLE.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.wst.html.core.internal.contentmodel;
-
-
-
-import java.util.Arrays;
-
-import org.eclipse.wst.html.core.internal.provisional.HTML40Namespace;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMContent;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMGroup;
-
-/**
- * TITLE.
- */
-final class HedTITLE extends HedPcdata {
-
-	/**
-	 */
-	public HedTITLE(ElementCollection collection) {
-		super(HTML40Namespace.ElementName.TITLE, collection);
-		layoutType = LAYOUT_HIDDEN;
-	}
-
-	/**
-	 * TITLE.
-	 * %i18n;
-	 */
-	protected void createAttributeDeclarations() {
-		if (attributes != null)
-			return; // already created.
-		if (attributeCollection == null)
-			return; // fatal
-
-		attributes = new CMNamedNodeMapImpl();
-
-		// %i18n;
-		attributeCollection.getI18n(attributes);
-	}
-
-	/**
-	 * Exclusion.
-	 * <code>TITLE</code> has the exclusion.
-	 * It is <code>%head.misc;</code>.
-	 * %head.misc; is <code>SCRIPT|STYLE|META|LINK|OBJECT</code>.
-	 */
-	public CMContent getExclusion() {
-		if (exclusion != null)
-			return exclusion; // already created.
-		if (elementCollection == null)
-			return null;
-
-		// (SCRIPT|STYLE|META|LINK|OBJECT)
-		exclusion = new CMGroupImpl(CMGroup.CHOICE, 1, 1);
-
-		String[] names = {HTML40Namespace.ElementName.SCRIPT, HTML40Namespace.ElementName.STYLE, HTML40Namespace.ElementName.META, HTML40Namespace.ElementName.LINK, HTML40Namespace.ElementName.OBJECT};
-		elementCollection.getDeclarations(exclusion, Arrays.asList(names).iterator());
-		return exclusion;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedTR.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedTR.java
deleted file mode 100644
index cf15cf0..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedTR.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.wst.html.core.internal.contentmodel;
-
-
-
-import java.util.Arrays;
-import java.util.Iterator;
-
-import org.eclipse.wst.html.core.internal.provisional.HTML40Namespace;
-
-
-/**
- * TR.
- */
-final class HedTR extends HTMLElemDeclImpl {
-
-	private static String[] terminators = {HTML40Namespace.ElementName.TR};
-
-	/**
-	 */
-	public HedTR(ElementCollection collection) {
-		super(HTML40Namespace.ElementName.TR, collection);
-		typeDefinitionName = ComplexTypeDefinitionFactory.CTYPE_TCELL_CONTAINER;
-		layoutType = LAYOUT_BLOCK;
-		omitType = OMIT_END;
-		indentChild = true;
-	}
-
-	/**
-	 * %attrs;
-	 * %cellhalign;
-	 * %cellvalign;
-	 * (bgcolor %Color; #IMPLIED)
-	 * (background %URI; #IMPLIED)
-	 * (bordercolor %Color #IMPLIED) ... D205514
-	 * (height %Length #IMPLIED) bug2246
-	 */
-	protected void createAttributeDeclarations() {
-		if (attributes != null)
-			return; // already created.
-		if (attributeCollection == null)
-			return; // fatal
-
-		attributes = new CMNamedNodeMapImpl();
-
-		// %attrs;
-		attributeCollection.getAttrs(attributes);
-		// %cellhalign;
-		attributeCollection.getCellhalign(attributes);
-		// %cellvalign;
-		attributeCollection.getCellvalign(attributes);
-
-		String[] names = {HTML40Namespace.ATTR_NAME_BGCOLOR, HTML40Namespace.ATTR_NAME_BACKGROUND, HTML40Namespace.ATTR_NAME_BORDERCOLOR, HTML40Namespace.ATTR_NAME_HEIGHT // D205514
-		};
-		attributeCollection.getDeclarations(attributes, Arrays.asList(names).iterator());
-	}
-
-	/**
-	 * TR has terminators.
-	 * @return java.util.Iterator
-	 */
-	protected Iterator getTerminators() {
-		return Arrays.asList(terminators).iterator();
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedTableBody.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedTableBody.java
deleted file mode 100644
index ad2e6a7..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedTableBody.java
+++ /dev/null
@@ -1,73 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this 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.core.internal.contentmodel;
-
-
-
-import java.util.Arrays;
-import java.util.Iterator;
-
-import org.eclipse.wst.html.core.internal.provisional.HTML40Namespace;
-
-
-/**
- * THEAD/TFOOT/TBODY
- */
-final class HedTableBody extends HTMLElemDeclImpl {
-
-	private static String[] terminators = {HTML40Namespace.ElementName.CAPTION, HTML40Namespace.ElementName.COL, HTML40Namespace.ElementName.COLGROUP, HTML40Namespace.ElementName.THEAD, HTML40Namespace.ElementName.TBODY, HTML40Namespace.ElementName.TFOOT};
-
-	/**
-	 */
-	public HedTableBody(String elementName, ElementCollection collection) {
-		super(elementName, collection);
-		typeDefinitionName = ComplexTypeDefinitionFactory.CTYPE_TR_CONTAINER;
-		correctionType = CORRECT_EMPTY;
-		layoutType = LAYOUT_BLOCK;
-		if (elementName == HTML40Namespace.ElementName.TBODY) {
-			omitType = OMIT_BOTH;
-		}
-		else {
-			omitType = OMIT_END;
-		}
-		indentChild = true;
-	}
-
-	/**
-	 * TBODY/TFOOT/THEAD
-	 * %attrs;
-	 * %cellhalign;
-	 * %cellvalign;
-	 */
-	protected void createAttributeDeclarations() {
-		if (attributes != null)
-			return; // already created.
-		if (attributeCollection == null)
-			return; // fatal
-
-		attributes = new CMNamedNodeMapImpl();
-
-		// %attrs;
-		attributeCollection.getAttrs(attributes);
-		// %cellhalign;
-		attributeCollection.getCellhalign(attributes);
-		// %cellvalign;
-		attributeCollection.getCellvalign(attributes);
-	}
-
-	/**
-	 * THEAD, TFOOT and TBODY have terminators.
-	 * @return java.util.Iterator
-	 */
-	protected Iterator getTerminators() {
-		return Arrays.asList(terminators).iterator();
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedTableCell.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedTableCell.java
deleted file mode 100644
index 5a791e6..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedTableCell.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.wst.html.core.internal.contentmodel;
-
-
-
-import java.util.Arrays;
-import java.util.Iterator;
-
-import org.eclipse.wst.html.core.internal.provisional.HTML40Namespace;
-
-
-/**
- * (TH | TD).
- */
-final class HedTableCell extends HedFlowContainer {
-
-	private static String[] terminators = {HTML40Namespace.ElementName.TR, HTML40Namespace.ElementName.TH, HTML40Namespace.ElementName.TD};
-
-	/**
-	 */
-	public HedTableCell(String elementName, ElementCollection collection) {
-		super(elementName, collection);
-		layoutType = LAYOUT_BLOCK;
-		omitType = OMIT_END;
-	}
-
-	/**
-	 * %attrs;
-	 * (abbr %Text; #IMPLIED)
-	 * (axis CDATA #IMPLIED)
-	 * (headers IDREFS #IMPLIED)
-	 * (scope %Scope; #IMPLIED)
-	 * (rowspan NUMBER 1)
-	 * (colspan NUMBER 1)
-	 * %cellhalign;
-	 * %cellvalign;
-	 * (nowrap (nowrap) #IMPLIED)
-	 * (bgcolor %Color; #IMPLIED)
-	 * (width %Length; #IMPLIED)
-	 * (height %Length; #IMPLIED)
-	 * (background %URI; #IMPLIED)
-	 * (bordercolor %Color #IMPLIED) ... D205514
-	 */
-	protected void createAttributeDeclarations() {
-		if (attributes != null)
-			return; // already created.
-		if (attributeCollection == null)
-			return; // fatal
-
-		attributes = new CMNamedNodeMapImpl();
-
-		// %attrs;
-		attributeCollection.getAttrs(attributes);
-		// %cellhalign;
-		attributeCollection.getCellhalign(attributes);
-		// %cellvalign;
-		attributeCollection.getCellvalign(attributes);
-
-		String[] names = {HTML40Namespace.ATTR_NAME_ABBR, HTML40Namespace.ATTR_NAME_AXIS, HTML40Namespace.ATTR_NAME_HEADERS, HTML40Namespace.ATTR_NAME_SCOPE, HTML40Namespace.ATTR_NAME_ROWSPAN, HTML40Namespace.ATTR_NAME_COLSPAN, HTML40Namespace.ATTR_NAME_NOWRAP, HTML40Namespace.ATTR_NAME_BGCOLOR, HTML40Namespace.ATTR_NAME_WIDTH, HTML40Namespace.ATTR_NAME_HEIGHT, HTML40Namespace.ATTR_NAME_BACKGROUND, HTML40Namespace.ATTR_NAME_BORDERCOLOR // D205514
-		};
-		attributeCollection.getDeclarations(attributes, Arrays.asList(names).iterator());
-	}
-
-	/**
-	 * TH and TD have terminators.
-	 * @return java.util.Iterator
-	 */
-	protected Iterator getTerminators() {
-		return Arrays.asList(terminators).iterator();
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedUL.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedUL.java
deleted file mode 100644
index 2244e67..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedUL.java
+++ /dev/null
@@ -1,73 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this 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.core.internal.contentmodel;
-
-
-
-import java.util.Arrays;
-
-import org.eclipse.wst.html.core.internal.provisional.HTML40Namespace;
-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.CMNamedNodeMap;
-
-/**
- * UL.
- */
-final class HedUL extends HedListItemContainer {
-
-	/**
-	 */
-	public HedUL(ElementCollection collection) {
-		super(HTML40Namespace.ElementName.UL, collection);
-	}
-
-	/**
-	 * UL.
-	 * (type %ULStyle; #IMPLIED) ... should be defined locally.
-	 * (compact (compact) #IMPLIED)
-	 */
-	protected void createAttributeDeclarations() {
-		if (attributes != null)
-			return; // already created.
-		if (attributeCollection == null)
-			return; // fatal
-
-		attributes = new CMNamedNodeMapImpl();
-
-		// %attrs;
-		attributeCollection.getAttrs(attributes);
-
-		// (type %ULStyle; #IMPLIED) ... should be defined locally.
-		// %ULStyle; is (disc|square|circle).
-		HTMLCMDataTypeImpl atype = new HTMLCMDataTypeImpl(CMDataType.ENUM);
-		String[] values = {HTML40Namespace.ATTR_VALUE_DISC, HTML40Namespace.ATTR_VALUE_SQUARE, HTML40Namespace.ATTR_VALUE_CIRCLE};
-		atype.setEnumValues(values);
-		HTMLAttrDeclImpl attr = new HTMLAttrDeclImpl(HTML40Namespace.ATTR_NAME_TYPE, atype, CMAttributeDeclaration.OPTIONAL);
-		attributes.putNamedItem(HTML40Namespace.ATTR_NAME_TYPE, attr);
-
-		// the rest.
-		String[] names = {HTML40Namespace.ATTR_NAME_COMPACT};
-		attributeCollection.getDeclarations(attributes, Arrays.asList(names).iterator());
-	}
-
-	/**
-	 */
-	public CMNamedNodeMap getProhibitedAncestors() {
-		if (prohibitedAncestors != null)
-			return prohibitedAncestors;
-
-		String[] names = {HTML40Namespace.ElementName.DIR, HTML40Namespace.ElementName.MENU};
-		prohibitedAncestors = elementCollection.getDeclarations(names);
-
-		return prohibitedAncestors;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedWBR.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedWBR.java
deleted file mode 100644
index 2e4e54d..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedWBR.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.html.core.internal.contentmodel;
-
-import org.eclipse.wst.html.core.internal.provisional.HTML40Namespace;
-
-
-
-final class HedWBR extends HedEmpty {
-
-	public HedWBR(ElementCollection collection) {
-		super(HTML40Namespace.ElementName.WBR, collection);
-		// LAYOUT_BREAK.
-		// same as BR.
-		layoutType = LAYOUT_BREAK;
-	}
-
-	protected void createAttributeDeclarations() {
-		// No attributes is defined.
-		if (attributes != null)
-			return;
-		attributes = new CMNamedNodeMapImpl();
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/JCMDocImpl.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/JCMDocImpl.java
deleted file mode 100644
index 0d60d50..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/JCMDocImpl.java
+++ /dev/null
@@ -1,73 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this 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.core.internal.contentmodel;
-
-
-
-import org.eclipse.wst.xml.core.internal.contentmodel.CMNamedNodeMap;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMNode;
-
-/**
- * Implementation of CMDocument for the JSP 1.1.
- */
-class JCMDocImpl extends CMNodeImpl implements JSPCMDocument {
-
-	/** Namespace for all names of elements, entities and attributes. */
-	private CMNamespaceImpl namespace = null;
-	private JSPElementCollection elements = null;
-
-	/**
-	 * HCMDocImpl constructor comment.
-	 */
-	public JCMDocImpl(String docTypeName, CMNamespaceImpl targetNamespace) {
-		super(docTypeName);
-		namespace = targetNamespace;
-		elements = new JSPElementCollection();
-	}
-
-	public HTMLElementDeclaration getElementDeclaration(String elementName) {
-		if (elements == null)
-			return null;
-		return (HTMLElementDeclaration) elements.getNamedItem(elementName);
-	}
-
-	/**
-	 * @see org.eclipse.wst.xml.core.internal.contentmodel.CMDocument
-	 */
-	public CMNamedNodeMap getElements() {
-		return elements;
-	}
-
-	/**
-	 * @see org.eclipse.wst.xml.core.internal.contentmodel.CMDocument
-	 */
-	public CMNamedNodeMap getEntities() {
-		return null;
-	}
-
-	public HTMLEntityDeclaration getEntityDeclaration(String entityName) {
-		return null;
-	}
-
-	/**
-	 * @see org.eclipse.wst.xml.core.internal.contentmodel.CMDocument
-	 */
-	public org.eclipse.wst.xml.core.internal.contentmodel.CMNamespace getNamespace() {
-		return namespace;
-	}
-
-	/**
-	 * @see org.eclipse.wst.xml.core.internal.contentmodel.CMNode
-	 */
-	public int getNodeType() {
-		return CMNode.DOCUMENT;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/JSP11Namespace.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/JSP11Namespace.java
deleted file mode 100644
index acfff3b..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/JSP11Namespace.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.html.core.internal.contentmodel;
-
-
-/**
- * JSP 1.1 Namespace. Note, this interface was 
- * copied form JSP core packages. One implication 
- * is that extra care is needed in using '==' instead 
- * of '.equals'.
- */
-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.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/JSPCMDocument.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/JSPCMDocument.java
deleted file mode 100644
index a7f37c9..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/JSPCMDocument.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.core.internal.contentmodel;
-
-
-
-/**
- * JSP extension for CMDocument.
- * This interface provides some short hand methods to get declarations
- * by a name.
- */
-public interface JSPCMDocument extends org.eclipse.wst.xml.core.internal.contentmodel.CMDocument {
-
-	/**
-	 * A short hand method to get a element declaration for a JSP element.
-	 * JSP declaration class implements HTMLElementDeclaration interface.
-	 * @param elementName java.lang.String
-	 */
-	HTMLElementDeclaration getElementDeclaration(String elementName);
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/JSPElementCollection.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/JSPElementCollection.java
deleted file mode 100644
index a2efa22..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/JSPElementCollection.java
+++ /dev/null
@@ -1,895 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this 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.core.internal.contentmodel;
-
-
-
-import java.lang.reflect.Field;
-import java.util.Arrays;
-import java.util.Enumeration;
-import java.util.Iterator;
-import java.util.Vector;
-
-import org.eclipse.wst.html.core.internal.provisional.HTMLCMProperties;
-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.CMNode;
-
-/**
- * Factory for element declarations of the JSP 1.1.
- */
-final class JSPElementCollection extends DeclCollection implements JSP11Namespace.ElementName {
-
-
-	private class TypePacket {
-		public String name = null;
-		public int content = CMElementDeclaration.EMPTY;
-		public int omit = HTMLElementDeclaration.OMIT_NONE;
-		public int lineBreak = HTMLElementDeclaration.BREAK_NONE;
-		public int layout = HTMLElementDeclaration.LAYOUT_NONE;
-		public int correct = HTMLElementDeclaration.CORRECT_NONE;
-		public int format = HTMLElementDeclaration.FORMAT_XML;
-		public boolean indentChild = false;
-
-		public TypePacket() {
-		}
-	}
-
-	/** JSP element declaration. */
-	private class ElemDecl extends CMContentImpl implements HTMLElementDeclaration, HTMLPropertyDeclaration {
-		private TypePacket type = null;
-		private CMGroupImpl content = null;
-		private CMNamedNodeMapImpl attributes = null;
-
-		public ElemDecl(TypePacket t) {
-			super(t.name, 1, 1);
-			type = t;
-		}
-
-		public void setContent(CMGroupImpl group) {
-			content = group;
-		}
-
-		public void setAttributes(CMNamedNodeMapImpl attrs) {
-			attributes = attrs;
-		}
-
-		// implementes CMNode
-		public int getNodeType() {
-			return CMNode.ELEMENT_DECLARATION;
-		}
-
-		public boolean supports(String propertyName) {
-			if (propertyName.equals(HTMLCMProperties.SHOULD_IGNORE_CASE)) {
-				return true;
-			}
-			else if (propertyName.equals(HTMLCMProperties.CONTENT_HINT)) {
-				return true;
-			}
-			else {
-				PropertyProvider pp = PropertyProviderFactory.getProvider(propertyName);
-				if (pp == null)
-					return false;
-				return pp.supports(this);
-			}
-		}
-
-		public Object getProperty(String propertyName) {
-			if (propertyName.equals(HTMLCMProperties.SHOULD_IGNORE_CASE)) {
-				return new Boolean(false); //D208839
-			}
-			else if (propertyName.equals(HTMLCMProperties.CONTENT_HINT)) {
-				String myName = getElementName();
-				if (myName == JSP11Namespace.ElementName.PLUGIN) {
-					return getNamedItem(JSP11Namespace.ElementName.PARAMS); // outer class method.
-				}
-				else if (myName == JSP11Namespace.ElementName.PARAMS) {
-					return getNamedItem(JSP11Namespace.ElementName.PARAM); // outer class method.
-				}
-				else {
-					return null;
-				}
-			}
-			else {
-				PropertyProvider pp = PropertyProviderFactory.getProvider(propertyName);
-				if (pp == null)
-					return null;
-				return pp.get(this);
-			}
-		}
-
-		// implementes CMElementDeclaration
-		public CMNamedNodeMap getAttributes() {
-			return attributes;
-		}
-
-		public CMContent getContent() {
-			return content;
-		}
-
-		public int getContentType() {
-			return type.content;
-		}
-
-		public CMDataType getDataType() {
-			return null;
-		}
-
-		public String getElementName() {
-			return getNodeName();
-		}
-
-		public CMNamedNodeMap getLocalElements() {
-			return null;
-		}
-
-		// implementes HTMLElementDeclaration
-		public HTMLAttributeDeclaration getAttributeDeclaration(String attrName) {
-			if (attributes == null)
-				return null;
-			return (HTMLAttributeDeclaration) attributes.getNamedItem(attrName);
-		}
-
-		public int getCorrectionType() {
-			return type.correct;
-		}
-
-		public CMContent getExclusion() {
-			return null;
-		}
-
-		public CMContent getInclusion() {
-			return null;
-		}
-
-		public CMNamedNodeMap getProhibitedAncestors() {
-			return EMPTY_MAP;
-		}
-
-		public int getFormatType() {
-			return type.format;
-		}
-
-		public int getLayoutType() {
-			return type.layout;
-		}
-
-		public int getLineBreakHint() {
-			return type.lineBreak;
-		}
-
-		public int getOmitType() {
-			return type.omit;
-		}
-
-		public boolean shouldTerminateAt(HTMLElementDeclaration dec) {
-			return false;
-		}
-
-		public boolean shouldKeepSpaces() {
-			return false;
-		}
-
-		public boolean shouldIndentChildSource() {
-			return type.indentChild;
-		}
-
-		public boolean isJSP() {
-			return true;
-		}
-	}
-
-	// element IDs
-	private static class Ids {
-		public static final int ID_SCRIPTLET = 0;
-		public static final int ID_EXPRESSION = 1;
-		public static final int ID_DECLARATION = 2;
-		public static final int ID_DIRECTIVE_PAGE = 3;
-		public static final int ID_DIRECTIVE_INCLUDE = 4;
-		public static final int ID_DIRECTIVE_TAGLIB = 5;
-		public static final int ID_USEBEAN = 6;
-		public static final int ID_SETPROPERTY = 7;
-		public static final int ID_GETPROPERTY = 8;
-		public static final int ID_INCLUDE = 9;
-		public static final int ID_FORWARD = 10;
-		public static final int ID_PLUGIN = 11;
-		public static final int ID_PARAMS = 12;
-		public static final int ID_FALLBACK = 13;
-		public static final int ID_PARAM = 14;
-		public static final int ID_ROOT = 15;
-		public static final int ID_TEXT = 16;
-
-		public static int getNumOfIds() {
-			if (numofids != -1)
-				return numofids;
-
-			// NOTE: If the reflection is too slow, this method should
-			// just return the literal value, like 105.
-			// -- 5/25/2001
-			Class clazz = Ids.class;
-			Field[] fields = clazz.getFields();
-			numofids = 0;
-			for (int i = 0; i < fields.length; i++) {
-				String name = fields[i].getName();
-				if (name.startsWith("ID_"))//$NON-NLS-1$
-					numofids++;
-			}
-			return numofids;
-		}
-
-		// chache the result of the reflection.
-		private static int numofids = -1;
-	}
-
-	// attribute creater
-	private class JACreater implements JSP11Namespace {
-		// attribute declaration
-		private class AttrDecl extends CMNodeImpl implements HTMLAttributeDeclaration {
-			HTMLCMDataTypeImpl type = null;
-			int usage = CMAttributeDeclaration.OPTIONAL;
-
-			// methods
-			public AttrDecl(String attrName) {
-				super(attrName);
-			}
-
-			public String getAttrName() {
-				return getNodeName();
-			}
-
-			public CMDataType getAttrType() {
-				return type;
-			}
-
-			/** @deprecated by superclass */
-			public String getDefaultValue() {
-				if (type.getImpliedValueKind() != CMDataType.IMPLIED_VALUE_DEFAULT)
-					return null;
-				return type.getImpliedValue();
-			}
-
-			/** @deprecated  by superclass */
-			public Enumeration getEnumAttr() {
-				Vector v = new Vector(Arrays.asList(type.getEnumeratedValues()));
-				return v.elements();
-			}
-
-			public int getNodeType() {
-				return CMNode.ATTRIBUTE_DECLARATION;
-			}
-
-			public int getUsage() {
-				return usage;
-			}
-
-			public boolean shouldIgnoreCase() {
-				return false;
-			}
-		}
-
-		private CMNamedNodeMapImpl declarations = null;
-
-		public JACreater() {
-			declarations = new CMNamedNodeMapImpl();
-		}
-
-		public CMNamedNodeMapImpl getDeclarations(int eid) {
-			switch (eid) {
-				case Ids.ID_DIRECTIVE_PAGE :
-					createForDirPage();
-					break;
-				case Ids.ID_DIRECTIVE_INCLUDE :
-					createForDirInclude();
-					break;
-				case Ids.ID_DIRECTIVE_TAGLIB :
-					createForDirTaglib();
-					break;
-				case Ids.ID_USEBEAN :
-					createForUseBean();
-					break;
-				case Ids.ID_SETPROPERTY :
-					createForSetProperty();
-					break;
-				case Ids.ID_GETPROPERTY :
-					createForGetProperty();
-					break;
-				case Ids.ID_INCLUDE :
-					createForInclude();
-					break;
-				case Ids.ID_FORWARD :
-					createForForward();
-					break;
-				case Ids.ID_PLUGIN :
-					createForPlugin();
-					break;
-				case Ids.ID_PARAM :
-					createForParam();
-					break;
-				case Ids.ID_ROOT :
-					createForRoot();
-					break;
-				default :
-					// should warn.
-					break;
-			}
-			return declarations;
-		}
-
-		private AttrDecl createBoolType(String name, String defValue) {
-			AttrDecl adec = new AttrDecl(name);
-			adec.type = new HTMLCMDataTypeImpl(CMDataType.ENUM);
-			String[] values = {ATTR_VALUE_TRUE, ATTR_VALUE_FALSE};
-			adec.type.setEnumValues(values);
-			adec.type.setImpliedValue(CMDataType.IMPLIED_VALUE_DEFAULT, defValue);
-			return adec;
-		}
-
-		private void createForDirPage() {
-			AttrDecl adec = null;
-			// ("language" CDATA DECLARED "java")
-			adec = new AttrDecl(ATTR_NAME_LANGUAGE);
-			adec.type = new HTMLCMDataTypeImpl(CMDataType.CDATA);
-			adec.type.setImpliedValue(CMDataType.IMPLIED_VALUE_DEFAULT, ATTR_VALUE_JAVA);
-			declarations.putNamedItem(ATTR_NAME_LANGUAGE, adec);
-
-			// ("extends" CDATA IMPLIED)
-			adec = new AttrDecl(ATTR_NAME_EXTENDS);
-			adec.type = new HTMLCMDataTypeImpl(CMDataType.CDATA);
-			declarations.putNamedItem(ATTR_NAME_EXTENDS, adec);
-
-			// ("contentType" CDATA DECLARED "text/html; ISO-8859-1")
-			adec = new AttrDecl(ATTR_NAME_CONTENT_TYPE);
-			adec.type = new HTMLCMDataTypeImpl(CMDataType.CDATA);
-			adec.type.setImpliedValue(CMDataType.IMPLIED_VALUE_DEFAULT, ATTR_VALUE_CT_DEFAULT);
-			declarations.putNamedItem(ATTR_NAME_CONTENT_TYPE, adec);
-
-			// ("import" CDATA IMPLIED)
-			adec = new AttrDecl(ATTR_NAME_IMPORT);
-			adec.type = new HTMLCMDataTypeImpl(CMDataType.CDATA);
-			declarations.putNamedItem(ATTR_NAME_IMPORT, adec);
-
-			// ("session" ENUM DECLARED (true|false) "true")
-			adec = createBoolType(ATTR_NAME_SESSION, ATTR_VALUE_TRUE);
-			if (adec != null)
-				declarations.putNamedItem(ATTR_NAME_SESSION, adec);
-
-			// ("buffer" CDATA DECLARED "8kb")
-			adec = new AttrDecl(ATTR_NAME_BUFFER);
-			adec.type = new HTMLCMDataTypeImpl(CMDataType.CDATA);
-			adec.type.setImpliedValue(CMDataType.IMPLIED_VALUE_DEFAULT, ATTR_VALUE_BUFSIZ_DEFAULT);
-			declarations.putNamedItem(ATTR_NAME_BUFFER, adec);
-
-			// ("autoFlush" ENUM DECLARED (true|false) "true")
-			adec = createBoolType(ATTR_NAME_AUTOFLUSH, ATTR_VALUE_TRUE);
-			if (adec != null)
-				declarations.putNamedItem(ATTR_NAME_AUTOFLUSH, adec);
-
-			// ("isThreadSafe" ENUM DECLARED (true|false) "true")
-			adec = createBoolType(ATTR_NAME_IS_THREAD_SAFE, ATTR_VALUE_TRUE);
-			if (adec != null)
-				declarations.putNamedItem(ATTR_NAME_IS_THREAD_SAFE, adec);
-
-			// ("info" CDATA IMPLIED)
-			adec = new AttrDecl(ATTR_NAME_INFO);
-			adec.type = new HTMLCMDataTypeImpl(CMDataType.CDATA);
-			declarations.putNamedItem(ATTR_NAME_INFO, adec);
-
-			// ("errorPage" URI IMPLIED)
-			adec = new AttrDecl(ATTR_NAME_ERROR_PAGE);
-			adec.type = new HTMLCMDataTypeImpl(CMDataType.URI);
-			declarations.putNamedItem(ATTR_NAME_ERROR_PAGE, adec);
-
-			// ("isErrorPage" ENUM DECLARED (true|false) "false")
-			adec = createBoolType(ATTR_NAME_IS_ERROR_PAGE, ATTR_VALUE_FALSE);
-			if (adec != null)
-				declarations.putNamedItem(ATTR_NAME_IS_ERROR_PAGE, adec);
-
-			// ("pageEncoding" CDATA IMPLIED)
-			adec = new AttrDecl(ATTR_NAME_PAGE_ENCODING);
-			adec.type = new HTMLCMDataTypeImpl(CMDataType.CDATA);
-			declarations.putNamedItem(ATTR_NAME_PAGE_ENCODING, adec);
-
-		}
-
-		private void createForDirInclude() {
-			// ("file" URI REQUIRED); Defect TORO:185241
-			AttrDecl adec = new AttrDecl(ATTR_NAME_FILE);
-			adec.type = new HTMLCMDataTypeImpl(CMDataType.URI);
-			adec.usage = CMAttributeDeclaration.REQUIRED;
-			declarations.putNamedItem(ATTR_NAME_FILE, adec);
-		}
-
-		private void createForDirTaglib() {
-			// ("uri" URI REQUIRED)
-			AttrDecl adec = new AttrDecl(ATTR_NAME_URI);
-			adec.type = new HTMLCMDataTypeImpl(CMDataType.URI);
-			adec.usage = CMAttributeDeclaration.REQUIRED;
-			declarations.putNamedItem(ATTR_NAME_URI, adec);
-
-			// ("prefix" CDATA REQUIRED)
-			adec = new AttrDecl(ATTR_NAME_PREFIX);
-			adec.type = new HTMLCMDataTypeImpl(CMDataType.CDATA);
-			adec.usage = CMAttributeDeclaration.REQUIRED;
-			declarations.putNamedItem(ATTR_NAME_PREFIX, adec);
-		}
-
-		private void createForUseBean() {
-			// ("id" ID REQUIRED)
-			AttrDecl adec = new AttrDecl(ATTR_NAME_ID);
-			adec.type = new HTMLCMDataTypeImpl(CMDataType.ID);
-			adec.usage = CMAttributeDeclaration.REQUIRED;
-			declarations.putNamedItem(ATTR_NAME_ID, adec);
-
-			// ("scope" ENUM DECLARED (page|session|request|application) "page")
-			adec = new AttrDecl(ATTR_NAME_SCOPE);
-			adec.type = new HTMLCMDataTypeImpl(CMDataType.ENUM);
-			String[] values = {ATTR_VALUE_PAGE, ATTR_VALUE_SESSION, ATTR_VALUE_REQUEST, ATTR_VALUE_APPLICATION};
-			adec.type.setEnumValues(values);
-			adec.type.setImpliedValue(CMDataType.IMPLIED_VALUE_DEFAULT, ATTR_VALUE_PAGE);
-			declarations.putNamedItem(ATTR_NAME_SCOPE, adec);
-
-			// ("class" CDATA IMPLIED)
-			adec = new AttrDecl(ATTR_NAME_CLASS);
-			adec.type = new HTMLCMDataTypeImpl(CMDataType.CDATA);
-			declarations.putNamedItem(ATTR_NAME_CLASS, adec);
-
-			// ("beanName" CDATA IMPLIED)
-			adec = new AttrDecl(ATTR_NAME_BEAN_NAME);
-			adec.type = new HTMLCMDataTypeImpl(CMDataType.CDATA);
-			declarations.putNamedItem(ATTR_NAME_BEAN_NAME, adec);
-
-			// ("type" CDATA IMPLIED)
-			adec = new AttrDecl(ATTR_NAME_TYPE);
-			adec.type = new HTMLCMDataTypeImpl(CMDataType.CDATA);
-			declarations.putNamedItem(ATTR_NAME_TYPE, adec);
-		}
-
-		private void createForSetProperty() {
-			// ("name" IDREF REQUIRED)
-			AttrDecl adec = new AttrDecl(ATTR_NAME_NAME);
-			adec.type = new HTMLCMDataTypeImpl(CMDataType.IDREF);
-			adec.usage = CMAttributeDeclaration.REQUIRED;
-			declarations.putNamedItem(ATTR_NAME_NAME, adec);
-
-			// ("property" CDATA REQUIRED)
-			adec = new AttrDecl(ATTR_NAME_PROPERTY);
-			adec.type = new HTMLCMDataTypeImpl(CMDataType.CDATA);
-			adec.usage = CMAttributeDeclaration.REQUIRED;
-			declarations.putNamedItem(ATTR_NAME_PROPERTY, adec);
-
-			// ("value" CDATA IMPLIED)
-			adec = new AttrDecl(ATTR_NAME_VALUE);
-			adec.type = new HTMLCMDataTypeImpl(CMDataType.CDATA);
-			declarations.putNamedItem(ATTR_NAME_VALUE, adec);
-
-			// ("param" CDATA IMPLIED)
-			adec = new AttrDecl(ATTR_NAME_PARAM);
-			adec.type = new HTMLCMDataTypeImpl(CMDataType.CDATA);
-			declarations.putNamedItem(ATTR_NAME_PARAM, adec);
-
-		}
-
-		private void createForGetProperty() {
-			// ("name" IDREF REQUIRED)
-			AttrDecl adec = new AttrDecl(ATTR_NAME_NAME);
-			adec.type = new HTMLCMDataTypeImpl(CMDataType.IDREF);
-			adec.usage = CMAttributeDeclaration.REQUIRED;
-			declarations.putNamedItem(ATTR_NAME_NAME, adec);
-
-			// ("property" CDATA REQUIRED)
-			adec = new AttrDecl(ATTR_NAME_PROPERTY);
-			adec.type = new HTMLCMDataTypeImpl(CMDataType.CDATA);
-			adec.usage = CMAttributeDeclaration.REQUIRED;
-			declarations.putNamedItem(ATTR_NAME_PROPERTY, adec);
-
-		}
-
-		private void createForInclude() {
-			AttrDecl adec = null;
-			// ("page" URI REQUIRED)
-			adec = new AttrDecl(ATTR_NAME_PAGE);
-			adec.type = new HTMLCMDataTypeImpl(CMDataType.URI);
-			adec.usage = CMAttributeDeclaration.REQUIRED;
-			declarations.putNamedItem(ATTR_NAME_PAGE, adec);
-
-			// ("flush" ENUM REQUIRED (true|false)); Defect TORO:185241
-			adec = new AttrDecl(ATTR_NAME_FLUSH);
-			adec.type = new HTMLCMDataTypeImpl(CMDataType.ENUM);
-			adec.usage = CMAttributeDeclaration.REQUIRED;
-			String[] values = {ATTR_VALUE_TRUE, ATTR_VALUE_FALSE};
-			adec.type.setEnumValues(values);
-			declarations.putNamedItem(ATTR_NAME_FLUSH, adec);
-		}
-
-		private void createForForward() {
-			// ("page" URI REQUIRED)
-			AttrDecl adec = new AttrDecl(ATTR_NAME_PAGE);
-			adec.type = new HTMLCMDataTypeImpl(CMDataType.URI);
-			adec.usage = CMAttributeDeclaration.REQUIRED;
-			declarations.putNamedItem(ATTR_NAME_PAGE, adec);
-		}
-
-		private void createForPlugin() {
-			// ("type" ENUM REQUIRED (bean|applet))
-			AttrDecl adec = new AttrDecl(ATTR_NAME_TYPE);
-			adec.type = new HTMLCMDataTypeImpl(CMDataType.ENUM);
-			adec.usage = CMAttributeDeclaration.REQUIRED;
-			String[] values = {ATTR_VALUE_BEAN, ATTR_VALUE_APPLET};
-			adec.type.setEnumValues(values);
-			declarations.putNamedItem(ATTR_NAME_TYPE, adec);
-
-			// ("code" CDATA REQUIRED)
-			adec = new AttrDecl(ATTR_NAME_CODE);
-			adec.type = new HTMLCMDataTypeImpl(CMDataType.URI);
-			adec.usage = CMAttributeDeclaration.REQUIRED;
-			declarations.putNamedItem(ATTR_NAME_CODE, adec);
-
-			// ("codebase" URI REQUIRED)
-			adec = new AttrDecl(ATTR_NAME_CODEBASE);
-			adec.type = new HTMLCMDataTypeImpl(CMDataType.URI);
-			adec.usage = CMAttributeDeclaration.REQUIRED;
-			declarations.putNamedItem(ATTR_NAME_CODEBASE, adec);
-
-			// ("align" ENUM IMPLIED (top|middle|bottom|left|right))
-			adec = new AttrDecl(ATTR_NAME_ALIGN);
-			adec.type = new HTMLCMDataTypeImpl(CMDataType.ENUM);
-			String[] aligns = {ATTR_VALUE_TOP, ATTR_VALUE_MIDDLE, ATTR_VALUE_BOTTOM, ATTR_VALUE_LEFT, ATTR_VALUE_RIGHT};
-			adec.type.setEnumValues(aligns);
-			declarations.putNamedItem(ATTR_NAME_ALIGN, adec);
-
-			// ("archive" CDATA IMPLIED)
-			adec = new AttrDecl(ATTR_NAME_ARCHIVE);
-			adec.type = new HTMLCMDataTypeImpl(CMDataType.CDATA);
-			declarations.putNamedItem(ATTR_NAME_ARCHIVE, adec);
-
-			// ("height" CDATA IMPLIED)
-			adec = new AttrDecl(ATTR_NAME_HEIGHT);
-			adec.type = new HTMLCMDataTypeImpl(CMDataType.CDATA);
-			declarations.putNamedItem(ATTR_NAME_HEIGHT, adec);
-
-			// ("hspace" CDATA IMPLIED)
-			adec = new AttrDecl(ATTR_NAME_HSPACE);
-			adec.type = new HTMLCMDataTypeImpl(CMDataType.CDATA);
-			declarations.putNamedItem(ATTR_NAME_HSPACE, adec);
-
-			// ("jreversion" CDATA DECLARED "1.1")
-			adec = new AttrDecl(ATTR_NAME_JREVERSION);
-			adec.type = new HTMLCMDataTypeImpl(CMDataType.CDATA);
-			adec.type.setImpliedValue(CMDataType.IMPLIED_VALUE_DEFAULT, ATTR_VALUE_JVER11);
-			declarations.putNamedItem(ATTR_NAME_JREVERSION, adec);
-
-			// ("name" CDATA IMPLIED)
-			adec = new AttrDecl(ATTR_NAME_NAME);
-			adec.type = new HTMLCMDataTypeImpl(CMDataType.CDATA);
-			declarations.putNamedItem(ATTR_NAME_NAME, adec);
-
-			// ("vspace" CDATA IMPLIED)
-			adec = new AttrDecl(ATTR_NAME_VSPACE);
-			adec.type = new HTMLCMDataTypeImpl(CMDataType.CDATA);
-			declarations.putNamedItem(ATTR_NAME_VSPACE, adec);
-
-			// ("width" CDATA IMPLIED)
-			adec = new AttrDecl(ATTR_NAME_WIDTH);
-			adec.type = new HTMLCMDataTypeImpl(CMDataType.CDATA);
-			declarations.putNamedItem(ATTR_NAME_WIDTH, adec);
-
-			// ("nspluginurl" URI IMPLIED)
-			adec = new AttrDecl(ATTR_NAME_NSPLUGINURL);
-			adec.type = new HTMLCMDataTypeImpl(CMDataType.URI);
-			declarations.putNamedItem(ATTR_NAME_NSPLUGINURL, adec);
-
-			// ("iepluginurl" URI IMPLIED)
-			adec = new AttrDecl(ATTR_NAME_IEPLUGINURL);
-			adec.type = new HTMLCMDataTypeImpl(CMDataType.URI);
-			declarations.putNamedItem(ATTR_NAME_IEPLUGINURL, adec);
-		}
-
-		private void createForParam() {
-			// ("name" CDATA REQUIRED)
-			AttrDecl adec = new AttrDecl(ATTR_NAME_NAME);
-			adec.type = new HTMLCMDataTypeImpl(CMDataType.CDATA);
-			adec.usage = CMAttributeDeclaration.REQUIRED;
-			declarations.putNamedItem(ATTR_NAME_NAME, adec);
-
-			// ("value" CDATA REQUIRED); Defect TORO:185241
-			adec = new AttrDecl(ATTR_NAME_VALUE);
-			adec.type = new HTMLCMDataTypeImpl(CMDataType.CDATA);
-			adec.usage = CMAttributeDeclaration.REQUIRED;
-			declarations.putNamedItem(ATTR_NAME_VALUE, adec);
-
-		}
-
-		private void createForRoot() {
-			// ("xmlns:jsp" CDATA "http://jva.sun.com/JSP/Page")
-			AttrDecl adec = new AttrDecl(ATTR_NAME_XMLNS_JSP);
-			adec.type = new HTMLCMDataTypeImpl(CMDataType.CDATA);
-			adec.type.setImpliedValue(CMDataType.IMPLIED_VALUE_DEFAULT, ATTR_VALUE_XMLNS_JSP);
-			declarations.putNamedItem(ATTR_NAME_XMLNS_JSP, adec);
-			// ("version" CDATA REQUIRED)
-			adec = new AttrDecl(ATTR_NAME_VERSION);
-			adec.type = new HTMLCMDataTypeImpl(CMDataType.CDATA);
-			adec.usage = CMAttributeDeclaration.REQUIRED;
-			declarations.putNamedItem(ATTR_NAME_VERSION, adec);
-		}
-	}
-
-	private final static CMNamedNodeMap EMPTY_MAP = new 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 Iterator() {
-				public boolean hasNext() {
-					return false;
-				}
-
-				public Object next() {
-					return null;
-				}
-
-				public void remove() {
-				}
-			};
-		}
-	};
-	private static String[] names = null;
-
-	static {
-		names = new String[Ids.getNumOfIds()];
-		names[Ids.ID_SCRIPTLET] = SCRIPTLET;
-		names[Ids.ID_EXPRESSION] = EXPRESSION;
-		names[Ids.ID_DECLARATION] = DECLARATION;
-		names[Ids.ID_DIRECTIVE_PAGE] = DIRECTIVE_PAGE;
-		names[Ids.ID_DIRECTIVE_INCLUDE] = DIRECTIVE_INCLUDE;
-		names[Ids.ID_DIRECTIVE_TAGLIB] = DIRECTIVE_TAGLIB;
-		names[Ids.ID_USEBEAN] = USEBEAN;
-		names[Ids.ID_SETPROPERTY] = SETPROPERTY;
-		names[Ids.ID_GETPROPERTY] = GETPROPERTY;
-		names[Ids.ID_INCLUDE] = INCLUDE;
-		names[Ids.ID_FORWARD] = FORWARD;
-		names[Ids.ID_PLUGIN] = PLUGIN;
-		names[Ids.ID_PARAMS] = PARAMS;
-		names[Ids.ID_FALLBACK] = FALLBACK;
-		names[Ids.ID_PARAM] = PARAM;
-		names[Ids.ID_ROOT] = ROOT;
-		names[Ids.ID_TEXT] = TEXT;
-	}
-
-	/**
-	 */
-	public JSPElementCollection() {
-		super(names, TOLERANT_CASE);
-	}
-
-	/**
-	 * @return org.eclipse.wst.xml.core.internal.contentmodel.CMNode
-	 * @param elementName java.lang.String
-	 */
-	protected CMNode create(String elementName) {
-		return createElemDecl(getID(elementName));
-	}
-
-	/**
-	 * @param eid int
-	 */
-	private CMGroupImpl createContent(int eid) {
-		if (eid == ID_UNKNOWN)
-			return null;
-
-		CMGroupImpl content = null;
-		CMNode child = null;
-
-		switch (eid) {
-			case Ids.ID_INCLUDE :
-			case Ids.ID_FORWARD :
-				// (jsp:param)*
-				content = new CMGroupImpl(CMGroup.SEQUENCE, 0, CMContentImpl.UNBOUNDED);
-				child = item(Ids.ID_PARAM);
-				if (child != null)
-					content.appendChild(child);
-				break;
-			case Ids.ID_PLUGIN :
-				// (jsp:params | jsp:fallback)?
-				content = new CMGroupImpl(CMGroup.CHOICE, 0, 1);
-				// jsp:params
-				child = item(Ids.ID_PARAMS);
-				if (child != null)
-					content.appendChild(child);
-				// jsp:fallback
-				child = item(Ids.ID_FALLBACK);
-				if (child != null)
-					content.appendChild(child);
-				break;
-			case Ids.ID_PARAMS :
-				// (jsp:param)+
-				content = new CMGroupImpl(CMGroup.SEQUENCE, 1, CMContentImpl.UNBOUNDED);
-				child = item(Ids.ID_PARAM);
-				if (child != null)
-					content.appendChild(child);
-				break;
-			case Ids.ID_ROOT :
-				// %Body;
-				// --> (jsp:text|%Directives;|%Scripts;|%Actions;)*
-				//     %Directives --> jsp:directive.page|jsp:directive.include
-				//     %Scripts; --> jsp:scriptlet|jsp:declaration|jsp:expression
-				//     %Actions --> jsp:useBean|jsp.setProperty|jsp:getProperty
-				//                  |jsp:include|jsp:forward|jsp:plugin
-				content = new CMGroupImpl(CMGroup.CHOICE, 0, CMContentImpl.UNBOUNDED);
-				int validChildren[] = {Ids.ID_TEXT,
-				// %Directves;
-							Ids.ID_DIRECTIVE_PAGE, Ids.ID_DIRECTIVE_INCLUDE,
-							// %Scripts;
-							Ids.ID_SCRIPTLET, Ids.ID_DECLARATION, Ids.ID_EXPRESSION,
-							// %Actions;
-							Ids.ID_USEBEAN, Ids.ID_SETPROPERTY, Ids.ID_GETPROPERTY, Ids.ID_INCLUDE, Ids.ID_FORWARD, Ids.ID_PLUGIN};
-				for (int i = 0; i < validChildren.length; i++) {
-					child = item(validChildren[i]);
-					if (child != null)
-						content.appendChild(child);
-				}
-				break;
-		}
-
-		return content;
-	}
-
-	/**
-	 * @param eid int
-	 */
-	private HTMLElementDeclaration createElemDecl(int eid) {
-		if (eid == ID_UNKNOWN)
-			return null;
-
-		TypePacket packet = new TypePacket();
-		switch (eid) {
-			case Ids.ID_SCRIPTLET :
-				// content, omit, lineBreak, layout, correct, format
-				// scriptlet
-				packet.name = SCRIPTLET;
-				packet.content = CMElementDeclaration.CDATA;
-				packet.layout = HTMLElementDeclaration.LAYOUT_OBJECT;
-				packet.format = HTMLElementDeclaration.FORMAT_JSP_SCRIPT;
-				break;
-			case Ids.ID_EXPRESSION :
-				// expression
-				packet.name = EXPRESSION;
-				packet.content = CMElementDeclaration.CDATA;
-				packet.layout = HTMLElementDeclaration.LAYOUT_OBJECT;
-				packet.format = HTMLElementDeclaration.FORMAT_JSP_SCRIPT;
-				break;
-			case Ids.ID_DECLARATION :
-				// declaration
-				packet.name = DECLARATION;
-				packet.content = CMElementDeclaration.CDATA;
-				packet.layout = HTMLElementDeclaration.LAYOUT_HIDDEN;
-				packet.format = HTMLElementDeclaration.FORMAT_JSP_SCRIPT;
-				break;
-			case Ids.ID_DIRECTIVE_PAGE :
-				// directive.page
-				packet.name = DIRECTIVE_PAGE;
-				packet.omit = HTMLElementDeclaration.OMIT_END;
-				packet.layout = HTMLElementDeclaration.LAYOUT_HIDDEN;
-				packet.format = HTMLElementDeclaration.FORMAT_JSP_DIRECTIVE;
-				break;
-			case Ids.ID_DIRECTIVE_INCLUDE :
-				// directive.inlcude
-				packet.name = DIRECTIVE_INCLUDE;
-				packet.omit = HTMLElementDeclaration.OMIT_END;
-				packet.layout = HTMLElementDeclaration.LAYOUT_HIDDEN;
-				packet.format = HTMLElementDeclaration.FORMAT_JSP_DIRECTIVE;
-				break;
-			case Ids.ID_DIRECTIVE_TAGLIB :
-				// directive.taglib
-				packet.name = DIRECTIVE_TAGLIB;
-				packet.omit = HTMLElementDeclaration.OMIT_END;
-				packet.layout = HTMLElementDeclaration.LAYOUT_HIDDEN;
-				packet.format = HTMLElementDeclaration.FORMAT_JSP_DIRECTIVE;
-				break;
-			case Ids.ID_USEBEAN :
-				// useBean
-				packet.name = USEBEAN;
-				packet.content = CMElementDeclaration.ANY;
-				packet.layout = HTMLElementDeclaration.LAYOUT_HIDDEN;
-				packet.indentChild = true;
-				break;
-			case Ids.ID_SETPROPERTY :
-				// setProperty
-				packet.name = SETPROPERTY;
-				packet.omit = HTMLElementDeclaration.OMIT_END;
-				packet.layout = HTMLElementDeclaration.LAYOUT_HIDDEN;
-				break;
-			case Ids.ID_GETPROPERTY :
-				// getProperty
-				packet.name = GETPROPERTY;
-				packet.omit = HTMLElementDeclaration.OMIT_END;
-				packet.layout = HTMLElementDeclaration.LAYOUT_OBJECT;
-				break;
-			case Ids.ID_INCLUDE :
-				// include
-				packet.name = INCLUDE;
-				packet.content = CMElementDeclaration.ELEMENT;
-				packet.omit = HTMLElementDeclaration.OMIT_END;
-				packet.layout = HTMLElementDeclaration.LAYOUT_OBJECT;
-				packet.indentChild = true;
-				break;
-			case Ids.ID_FORWARD :
-				// forward
-				packet.name = FORWARD;
-				packet.content = CMElementDeclaration.ELEMENT;
-				packet.omit = HTMLElementDeclaration.OMIT_END;
-				packet.layout = HTMLElementDeclaration.LAYOUT_OBJECT;
-				packet.indentChild = true;
-				break;
-			case Ids.ID_PLUGIN :
-				// plugin
-				packet.name = PLUGIN;
-				packet.content = CMElementDeclaration.ELEMENT;
-				packet.layout = HTMLElementDeclaration.LAYOUT_OBJECT;
-				packet.indentChild = true;
-				break;
-			case Ids.ID_PARAMS :
-				// params
-				packet.name = PARAMS;
-				packet.content = CMElementDeclaration.ELEMENT;
-				packet.layout = HTMLElementDeclaration.LAYOUT_HIDDEN;
-				packet.indentChild = true;
-				break;
-			case Ids.ID_FALLBACK :
-				// fallback
-				packet.name = FALLBACK;
-				packet.content = CMElementDeclaration.CDATA;
-				packet.layout = HTMLElementDeclaration.LAYOUT_HIDDEN;
-				break;
-			case Ids.ID_PARAM :
-				// param
-				packet.name = PARAM;
-				packet.omit = HTMLElementDeclaration.OMIT_END;
-				packet.layout = HTMLElementDeclaration.LAYOUT_HIDDEN;
-				break;
-			case Ids.ID_ROOT :
-				packet.name = ROOT;
-				packet.content = CMElementDeclaration.ELEMENT;
-				packet.layout = HTMLElementDeclaration.LAYOUT_HIDDEN; // same as HTML
-				break;
-			case Ids.ID_TEXT :
-				packet.name = TEXT;
-				packet.content = CMElementDeclaration.PCDATA;
-				break;
-			default :
-				// unknown ID
-				return null;
-		}
-
-		ElemDecl dec = new ElemDecl(packet);
-
-		CMGroupImpl content = createContent(eid);
-		if (content != null)
-			dec.setContent(content);
-
-		JACreater creater = new JACreater();
-		dec.setAttributes(creater.getDeclarations(eid));
-
-		return dec;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/PropertyProvider.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/PropertyProvider.java
deleted file mode 100644
index 09cba4b..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/PropertyProvider.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.core.internal.contentmodel;
-
-
-/**
- * PropertyProvider class.
- * This class is intended to be used in HTMLElementDeclaration instances.
- */
-interface PropertyProvider {
-
-	boolean supports(HTMLElementDeclaration edecl);
-
-	Object get(HTMLElementDeclaration edecl);
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/PropertyProviderFactory.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/PropertyProviderFactory.java
deleted file mode 100644
index dd5564a..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/PropertyProviderFactory.java
+++ /dev/null
@@ -1,359 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this 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.core.internal.contentmodel;
-
-import java.util.Hashtable;
-
-import org.eclipse.wst.html.core.internal.provisional.HTMLCMProperties;
-import org.eclipse.wst.xml.core.internal.contentmodel.annotation.AnnotationMap;
-
-/**
- * The factory object of PropertyProvider.
- */
-final class PropertyProviderFactory {
-
-
-	/**
-	 * DefaultProvider is intended to be used for unknown properties.
-	 * It always returns null value for any properties.
-	 */
-	class DefaultProvider implements PropertyProvider {
-		public DefaultProvider() {
-			super();
-		}
-
-		public boolean supports(HTMLElementDeclaration edecl) {
-			return false;
-		}
-
-		public Object get(HTMLElementDeclaration edecl) {
-			return null;
-		}
-	}
-
-	abstract class AbstractElementPropertyProvider implements PropertyProvider {
-		protected AbstractElementPropertyProvider() {
-			super();
-		}
-
-		public boolean supports(HTMLElementDeclaration edecl) {
-			return (edecl != null);
-		}
-
-		public Object get(HTMLElementDeclaration edecl) {
-			if (!(edecl instanceof HTMLPropertyDeclaration))
-				return null;
-			return getElementProperty((HTMLPropertyDeclaration)edecl);
-		}
-
-		abstract protected Object getElementProperty(HTMLPropertyDeclaration decl);
-	}
-
-	/*
-	 * "tagInfo"
-	 * gets documentation for the element
-	 */
-	class PPTagInfo extends AbstractElementPropertyProvider {
-		private final static String htmlAnnotationLoc = "platform:/plugin/org.eclipse.wst.html.core/data/htmref.xml"; //$NON-NLS-1$
-		protected AnnotationMap fAnnotationMap = null;
-
-		public PPTagInfo() {
-			super();
-		}
-
-		/**
-		 * Gets the annotationMap.
-		 * @return Returns a AnnotationMap
-		 */
-		protected AnnotationMap getAnnotationMap() {
-			if (fAnnotationMap == null) {
-				fAnnotationMap = new AnnotationMap();
-				try {
-					fAnnotationMap.load(htmlAnnotationLoc);
-				}
-				catch (Exception e) {
-					// no annotation available
-				}
-			}
-			return fAnnotationMap;
-		}
-
-		protected Object getElementProperty(HTMLPropertyDeclaration decl) {
-			if (decl instanceof HTMLElementDeclaration) {
-				return getAnnotationMap().getProperty(((HTMLElementDeclaration)decl).getElementName(), "tagInfo"); //$NON-NLS-1$
-			} else {
-				return null;
-			}
-		}
-	}
-
-	/*
-	 * "shouldKeepSpace"
-	 */
-	class PPShouldKeepSpace extends AbstractElementPropertyProvider {
-		public PPShouldKeepSpace() {
-			super();
-		}
-
-		protected Object getElementProperty(HTMLPropertyDeclaration decl) {
-			return new Boolean(decl.shouldKeepSpaces());
-		}
-	}
-
-	/*
-	 * "shouldIndentChildSource"
-	 */
-	class PPShouldIndentChildSource extends AbstractElementPropertyProvider {
-		public PPShouldIndentChildSource() {
-			super();
-		}
-
-		protected Object getElementProperty(HTMLPropertyDeclaration decl) {
-			return new Boolean(decl.shouldIndentChildSource());
-		}
-	}
-
-	/*
-	 * "terminators"
-	 */
-	class PPTerminators extends AbstractElementPropertyProvider {
-		public PPTerminators() {
-			super();
-		}
-
-		protected Object getElementProperty(HTMLPropertyDeclaration decl) {
-			if (! (decl instanceof HTMLElemDeclImpl)) return null;
-			return ((HTMLElemDeclImpl)decl).getTerminators();
-		}
-	}
-
-	/*
-	 * "prohibitedAncestors"
-	 */
-	class PPProhibitedAncestors extends AbstractElementPropertyProvider {
-		public PPProhibitedAncestors() {
-			super();
-		}
-
-		protected Object getElementProperty(HTMLPropertyDeclaration decl) {
-			return decl.getProhibitedAncestors();
-		}
-	}
-
-	/*
-	 * "isJSP"
-	 */
-	class PPIsJSP extends AbstractElementPropertyProvider {
-		public PPIsJSP() {
-			super();
-		}
-
-		protected Object getElementProperty(HTMLPropertyDeclaration decl) {
-			return new Boolean(decl.isJSP());
-		}
-	}
-
-	/*
-	 * "isXHTML"
-	 * HTMLElementDeclaration itself never represent any XHTML element declaration.
-	 * So, this property must be always false.
-	 */
-	class PPIsXHTML extends AbstractElementPropertyProvider {
-		public PPIsXHTML() {
-			super();
-		}
-
-		protected Object getElementProperty(HTMLPropertyDeclaration decl) {
-			return new Boolean(false);
-		}
-	}
-
-	/*
-	 * "isSSI"
-	 * Each declaration class for SSI elements must provide this property itself,
-	 * and then return true.  Other declaration must always return false.
-	 */
-	class PPIsSSI extends AbstractElementPropertyProvider {
-		public PPIsSSI() {
-			super();
-		}
-
-		protected Object getElementProperty(HTMLPropertyDeclaration decl) {
-			return new Boolean(false);
-		}
-	}
-
-	/*
-	 * "lineBreakHint"
-	 */
-	class PPLineBreakHint extends AbstractElementPropertyProvider {
-		public PPLineBreakHint() {
-			super();
-		}
-
-		protected Object getElementProperty(HTMLPropertyDeclaration decl) {
-			String hint = HTMLCMProperties.Values.BREAK_NONE;
-			switch (decl.getLineBreakHint()) {
-				case HTMLElementDeclaration.BREAK_AFTER_START :
-					hint = HTMLCMProperties.Values.BREAK_AFTER_START;
-					break;
-				case HTMLElementDeclaration.BREAK_BEFORE_START_AND_AFTER_END :
-					hint = HTMLCMProperties.Values.BREAK_BEFORE_START_AND_AFTER_END;
-					break;
-				case HTMLElementDeclaration.BREAK_NONE :
-				// nothing to do
-				default :
-					break;
-			}
-			return hint;
-		}
-	}
-
-	/*
-	 * "layoutType"
-	 */
-	class PPLayoutType extends AbstractElementPropertyProvider {
-		public PPLayoutType() {
-			super();
-		}
-
-		protected Object getElementProperty(HTMLPropertyDeclaration decl) {
-			String type = HTMLCMProperties.Values.LAYOUT_NONE;
-			switch (decl.getLayoutType()) {
-				case HTMLElementDeclaration.LAYOUT_BLOCK :
-					type = HTMLCMProperties.Values.LAYOUT_BLOCK;
-					break;
-				case HTMLElementDeclaration.LAYOUT_BREAK :
-					type = HTMLCMProperties.Values.LAYOUT_BREAK;
-					break;
-				case HTMLElementDeclaration.LAYOUT_HIDDEN :
-					type = HTMLCMProperties.Values.LAYOUT_HIDDEN;
-					break;
-				case HTMLElementDeclaration.LAYOUT_OBJECT :
-					type = HTMLCMProperties.Values.LAYOUT_OBJECT;
-					break;
-				case HTMLElementDeclaration.LAYOUT_WRAP :
-					type = HTMLCMProperties.Values.LAYOUT_WRAP;
-					break;
-				case HTMLElementDeclaration.LAYOUT_NONE :
-				// nothing to do.
-				default :
-					break;
-			}
-			return type;
-		}
-	}
-
-	/*
-	 * "omitType"
-	 */
-	class PPOmitType extends AbstractElementPropertyProvider {
-		public PPOmitType() {
-			super();
-		}
-
-		protected Object getElementProperty(HTMLPropertyDeclaration decl) {
-			String type = HTMLCMProperties.Values.OMIT_NONE;
-			switch (decl.getOmitType()) {
-				case HTMLElementDeclaration.OMIT_BOTH :
-					type = HTMLCMProperties.Values.OMIT_BOTH;
-					break;
-				case HTMLElementDeclaration.OMIT_END :
-					type = HTMLCMProperties.Values.OMIT_END;
-					break;
-				case HTMLElementDeclaration.OMIT_END_DEFAULT :
-					type = HTMLCMProperties.Values.OMIT_END_DEFAULT;
-					break;
-				case HTMLElementDeclaration.OMIT_END_MUST :
-					type = HTMLCMProperties.Values.OMIT_END_MUST;
-					break;
-				case HTMLElementDeclaration.OMIT_NONE :
-				// nothing to do.
-				default :
-					break;
-			}
-			return type;
-		}
-	}
-
-	/*
-	 * "inclusion"
-	 */
-	class PPInclusion extends AbstractElementPropertyProvider {
-		public PPInclusion() {
-			super();
-		}
-
-		protected Object getElementProperty(HTMLPropertyDeclaration decl) {
-			return decl.getInclusion();
-		}
-	}
-
-	public static PropertyProvider getProvider(String propName) {
-		PropertyProviderFactory factory = getInstance();
-		PropertyProvider pp = (PropertyProvider) factory.registry.get(propName);
-		if (pp != null)
-			return pp;
-
-		pp = factory.create(propName);
-		if (pp == null)
-			return factory.defaultProvider;
-
-		factory.registry.put(propName, pp);
-		return pp;
-	}
-
-	private static PropertyProviderFactory instance = null;
-
-	private synchronized static PropertyProviderFactory getInstance() {
-		if (instance != null)
-			return instance;
-		instance = new PropertyProviderFactory();
-		return instance;
-	}
-
-	private Hashtable registry = new Hashtable();
-	private PropertyProvider defaultProvider = new DefaultProvider();
-
-	private PropertyProviderFactory() {
-		super();
-	}
-
-	private PropertyProvider create(String propName) {
-		PropertyProvider pp = null;
-		if (propName.equals(HTMLCMProperties.IS_JSP))
-			pp = new PPIsJSP();
-		else if (propName.equals(HTMLCMProperties.IS_XHTML))
-			pp = new PPIsXHTML();
-		else if (propName.equals(HTMLCMProperties.IS_SSI))
-			pp = new PPIsSSI();
-		else if (propName.equals(HTMLCMProperties.LAYOUT_TYPE))
-			pp = new PPLayoutType();
-		else if (propName.equals(HTMLCMProperties.LINE_BREAK_HINT))
-			pp = new PPLineBreakHint();
-		else if (propName.equals(HTMLCMProperties.PROHIBITED_ANCESTORS))
-			pp = new PPProhibitedAncestors();
-		else if (propName.equals(HTMLCMProperties.SHOULD_KEEP_SPACE))
-			pp = new PPShouldKeepSpace();
-		else if (propName.equals(HTMLCMProperties.SHOULD_INDENT_CHILD_SOURCE))
-			pp = new PPShouldIndentChildSource();
-		else if (propName.equals(HTMLCMProperties.TERMINATORS))
-			pp = new PPTerminators();
-		else if (propName.equals(HTMLCMProperties.TAGINFO))
-			pp = new PPTagInfo();
-		else if (propName.equals(HTMLCMProperties.OMIT_TYPE))
-			pp = new PPOmitType();
-		else if (propName.equals(HTMLCMProperties.INCLUSION))
-			pp = new PPInclusion();
-
-		return pp;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/AttributeCollection.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/AttributeCollection.java
deleted file mode 100644
index 5d28203..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/AttributeCollection.java
+++ /dev/null
@@ -1,314 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this 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.core.internal.contentmodel.chtml;
-
-
-
-import java.util.Iterator;
-
-import org.eclipse.wst.html.core.internal.contentmodel.HTMLAttributeDeclaration;
-import org.eclipse.wst.html.core.internal.contentmodel.HTMLCMDataType;
-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.CMNode;
-
-/**
- * Factory for attribute declarations.
- */
-final class AttributeCollection extends CMNamedNodeMapImpl implements CHTMLNamespace {
-	/**
-	 * constructor.
-	 */
-	public AttributeCollection() {
-		super();
-	}
-
-	/**
-	 * Create an attribute declaration.
-	 * @param attrName java.lang.String
-	 */
-	private HTMLAttrDeclImpl create(String attrName) {
-		HTMLAttrDeclImpl attr = null;
-		HTMLCMDataTypeImpl atype = null;
-
-		if (attrName.equalsIgnoreCase(ATTR_NAME_ACTION)) {
-			// (action %URI #REQUIRED)
-			atype = new HTMLCMDataTypeImpl(CMDataType.URI);
-			attr = new HTMLAttrDeclImpl(ATTR_NAME_ACTION, atype, CMAttributeDeclaration.REQUIRED);
-
-		}
-		else if (attrName.equalsIgnoreCase(ATTR_NAME_ALT)) {
-			// (alt %Text; #REQUIRED)
-			atype = new HTMLCMDataTypeImpl(HTMLCMDataType.TEXT);
-			attr = new HTMLAttrDeclImpl(ATTR_NAME_ALT, atype, CMAttributeDeclaration.REQUIRED);
-
-		}
-		else if (attrName.equalsIgnoreCase(ATTR_NAME_BORDER)) {
-			// (border %Pixels; #IMPLIED)
-			atype = new HTMLCMDataTypeImpl(HTMLCMDataType.PIXELS);
-			attr = new HTMLAttrDeclImpl(ATTR_NAME_BORDER, atype, CMAttributeDeclaration.OPTIONAL);
-
-		}
-		else if (attrName.equalsIgnoreCase(ATTR_NAME_CHECKED)) {
-			// (checked (checked) #IMPLIED)
-			atype = new HTMLCMDataTypeImpl(CMDataType.ENUM);
-			String[] values = {ATTR_NAME_CHECKED};
-			atype.setEnumValues(values);
-			attr = new HTMLAttrDeclImpl(ATTR_NAME_CHECKED, atype, CMAttributeDeclaration.OPTIONAL);
-
-		}
-		else if (attrName.equalsIgnoreCase(ATTR_NAME_CLEAR)) {
-			// (clear (left | all | right | none) none)
-			atype = new HTMLCMDataTypeImpl(CMDataType.ENUM);
-			String[] values = {ATTR_VALUE_LEFT, ATTR_VALUE_ALL, ATTR_VALUE_RIGHT, ATTR_VALUE_NONE};
-			atype.setEnumValues(values);
-			atype.setImpliedValue(CMDataType.IMPLIED_VALUE_DEFAULT, ATTR_VALUE_NONE);
-
-			attr = new HTMLAttrDeclImpl(ATTR_NAME_CLEAR, atype, CMAttributeDeclaration.OPTIONAL);
-
-		}
-		else if (attrName.equalsIgnoreCase(ATTR_NAME_COLS)) {
-			// (cols NUMBER #REQUIRED)
-			atype = new HTMLCMDataTypeImpl(CMDataType.NUMBER);
-			attr = new HTMLAttrDeclImpl(ATTR_NAME_COLS, atype, CMAttributeDeclaration.REQUIRED);
-
-		}
-		else if (attrName.equalsIgnoreCase(ATTR_NAME_ENCTYPE)) {
-			// (enctype %ContentType; "application/x-www-form-urlencoded")
-			atype = new HTMLCMDataTypeImpl(HTMLCMDataType.CONTENT_TYPE);
-			atype.setImpliedValue(CMDataType.IMPLIED_VALUE_DEFAULT, ATTR_VALUE_WWW_FORM_URLENCODED);
-			attr = new HTMLAttrDeclImpl(ATTR_NAME_ENCTYPE, atype, CMAttributeDeclaration.OPTIONAL);
-
-		}
-		else if (attrName.equalsIgnoreCase(ATTR_NAME_HEIGHT)) {
-			// (height %Length; #IMPLIED)
-			atype = new HTMLCMDataTypeImpl(HTMLCMDataType.LENGTH);
-			attr = new HTMLAttrDeclImpl(ATTR_NAME_HEIGHT, atype, CMAttributeDeclaration.OPTIONAL);
-
-		}
-		else if (attrName.equalsIgnoreCase(ATTR_NAME_HREF)) {
-			// (href %URI; #IMPLIED)
-			atype = new HTMLCMDataTypeImpl(CMDataType.URI);
-			attr = new HTMLAttrDeclImpl(ATTR_NAME_HREF, atype, CMAttributeDeclaration.OPTIONAL);
-
-		}
-		else if (attrName.equalsIgnoreCase(ATTR_NAME_HSPACE)) {
-			// (hspace %Pixels; #IMPLIED)
-			atype = new HTMLCMDataTypeImpl(HTMLCMDataType.PIXELS);
-			attr = new HTMLAttrDeclImpl(ATTR_NAME_HSPACE, atype, CMAttributeDeclaration.OPTIONAL);
-
-		}
-		else if (attrName.equalsIgnoreCase(ATTR_NAME_HTTP_EQUIV)) {
-			// (http-equiv NAME #IMPLIED)
-			atype = new HTMLCMDataTypeImpl(HTMLCMDataType.NAME);
-			attr = new HTMLAttrDeclImpl(ATTR_NAME_HTTP_EQUIV, atype, CMAttributeDeclaration.OPTIONAL);
-
-		}
-		else if (attrName.equalsIgnoreCase(ATTR_NAME_MAXLENGTH)) {
-			// (maxlength NUMBER #IMPLIED)
-			atype = new HTMLCMDataTypeImpl(CMDataType.NUMBER);
-			attr = new HTMLAttrDeclImpl(ATTR_NAME_MAXLENGTH, atype, CMAttributeDeclaration.OPTIONAL);
-
-		}
-		else if (attrName.equalsIgnoreCase(ATTR_NAME_METHOD)) {
-			// (method (GET|POST) GET)
-			atype = new HTMLCMDataTypeImpl(CMDataType.ENUM);
-			String[] values = {ATTR_VALUE_GET, ATTR_VALUE_POST};
-			atype.setEnumValues(values);
-			atype.setImpliedValue(CMDataType.IMPLIED_VALUE_DEFAULT, ATTR_VALUE_GET);
-			attr = new HTMLAttrDeclImpl(ATTR_NAME_METHOD, atype, CMAttributeDeclaration.OPTIONAL);
-
-		}
-		else if (attrName.equalsIgnoreCase(ATTR_NAME_MULTIPLE)) {
-			// (multiple (multiple) #IMPLIED)
-			atype = new HTMLCMDataTypeImpl(CMDataType.ENUM);
-			String[] values = {ATTR_NAME_MULTIPLE};
-			atype.setEnumValues(values);
-			attr = new HTMLAttrDeclImpl(ATTR_NAME_MULTIPLE, atype, CMAttributeDeclaration.OPTIONAL);
-
-		}
-		else if (attrName.equalsIgnoreCase(ATTR_NAME_NAME)) {
-			// (name CDATA #IMPLIED)
-			atype = new HTMLCMDataTypeImpl(CMDataType.CDATA);
-			attr = new HTMLAttrDeclImpl(ATTR_NAME_NAME, atype, CMAttributeDeclaration.OPTIONAL);
-
-		}
-		else if (attrName.equalsIgnoreCase(ATTR_NAME_NOSHADE)) {
-			// (noshade (noshade) #IMPLIED)
-			atype = new HTMLCMDataTypeImpl(CMDataType.ENUM);
-			String[] values = {ATTR_NAME_NOSHADE};
-			atype.setEnumValues(values);
-			attr = new HTMLAttrDeclImpl(ATTR_NAME_NOSHADE, atype, CMAttributeDeclaration.OPTIONAL);
-
-		}
-		else if (attrName.equalsIgnoreCase(ATTR_NAME_ROWS)) {
-			// (rows NUMBER #REQUIRED)
-			atype = new HTMLCMDataTypeImpl(CMDataType.NUMBER);
-			attr = new HTMLAttrDeclImpl(ATTR_NAME_ROWS, atype, CMAttributeDeclaration.REQUIRED);
-
-		}
-		else if (attrName.equalsIgnoreCase(ATTR_NAME_SELECTED)) {
-			// (selected (selected) #IMPLIED)
-			atype = new HTMLCMDataTypeImpl(CMDataType.ENUM);
-			String[] values = {ATTR_NAME_SELECTED};
-			atype.setEnumValues(values);
-			attr = new HTMLAttrDeclImpl(ATTR_NAME_SELECTED, atype, CMAttributeDeclaration.OPTIONAL);
-
-		}
-		else if (attrName.equalsIgnoreCase(ATTR_NAME_SIZE)) {
-			// (size %Pixels; #IMPLIED)
-			atype = new HTMLCMDataTypeImpl(HTMLCMDataType.PIXELS);
-			attr = new HTMLAttrDeclImpl(ATTR_NAME_SIZE, atype, CMAttributeDeclaration.OPTIONAL);
-
-		}
-		else if (attrName.equalsIgnoreCase(ATTR_NAME_SRC)) {
-			// (src %URI; #IMPLIED)
-			// NOTE: "src" attributes are defined in several elements.
-			//		 The definition of IMG is different from others.
-			//		 So, it should be locally defined.
-			atype = new HTMLCMDataTypeImpl(CMDataType.URI);
-			attr = new HTMLAttrDeclImpl(ATTR_NAME_SRC, atype, CMAttributeDeclaration.OPTIONAL);
-
-		}
-		else if (attrName.equalsIgnoreCase(ATTR_NAME_TYPE)) {
-			// (type %CotentType; #IMPLIED)
-			atype = new HTMLCMDataTypeImpl(HTMLCMDataType.CONTENT_TYPE);
-			attr = new HTMLAttrDeclImpl(ATTR_NAME_TYPE, atype, CMAttributeDeclaration.OPTIONAL);
-
-		}
-		else if (attrName.equalsIgnoreCase(ATTR_NAME_VALUE)) {
-			// (value CDATA #IMPLIED)
-			atype = new HTMLCMDataTypeImpl(CMDataType.CDATA);
-			attr = new HTMLAttrDeclImpl(ATTR_NAME_VALUE, atype, CMAttributeDeclaration.OPTIONAL);
-
-		}
-		else if (attrName.equalsIgnoreCase(ATTR_NAME_VERSION)) {
-			// (version CDATA #FIXED '%HTML.Version;)
-			atype = new HTMLCMDataTypeImpl(CMDataType.CDATA);
-			atype.setImpliedValue(CMDataType.IMPLIED_VALUE_FIXED, ATTR_VALUE_VERSION_TRANSITIONAL);
-			attr = new HTMLAttrDeclImpl(ATTR_NAME_VERSION, atype, CMAttributeDeclaration.FIXED);
-
-		}
-		else if (attrName.equalsIgnoreCase(ATTR_NAME_WIDTH)) {
-			// (width %Length; #IMPLIED)
-			atype = new HTMLCMDataTypeImpl(HTMLCMDataType.LENGTH);
-			attr = new HTMLAttrDeclImpl(ATTR_NAME_WIDTH, atype, CMAttributeDeclaration.OPTIONAL);
-
-		}
-		else if (attrName.equalsIgnoreCase(ATTR_NAME_VSPACE)) {
-			// (vspace %Pixels; #IMPLIED)
-			atype = new HTMLCMDataTypeImpl(HTMLCMDataType.PIXELS);
-			attr = new HTMLAttrDeclImpl(ATTR_NAME_VSPACE, atype, CMAttributeDeclaration.OPTIONAL);
-
-			// <<D205514
-		}
-		else {
-			// unknown attribute; maybe error.
-			// should warn.
-			attr = null;
-		}
-
-		return attr;
-	}
-
-	/**
-	 * Get %bodycolors; declarations.
-	 */
-	public void getBodycolors(CMNamedNodeMapImpl declarations) {
-	}
-
-	/**
-	 * Get align attribute which has %IAlign; as values..
-	 */
-	public static final HTMLAttrDeclImpl createAlignForImage() {
-		// align (local)
-		HTMLCMDataTypeImpl atype = new HTMLCMDataTypeImpl(CMDataType.ENUM);
-		// set enum values
-		String[] values = {ATTR_VALUE_TOP, ATTR_VALUE_MIDDLE, ATTR_VALUE_BOTTOM, ATTR_VALUE_LEFT, ATTR_VALUE_RIGHT};
-		atype.setEnumValues(values);
-
-		HTMLAttrDeclImpl attr = new HTMLAttrDeclImpl(ATTR_NAME_ALIGN, atype, CMAttributeDeclaration.OPTIONAL);
-		return attr;
-	}
-
-	/**
-	 * Create an attribute declaration for <code>align</code>
-	 * in several elements, like <code>P</code>, <code>DIV</code>.
-	 * The values are different from attributes those have the same name
-	 * in other elements (<code>IMG</code> and <code>TABLE</code>).
-	 * So, it can't treat as global attributes.
-	 * <strong>NOTE: These attribute declaration has
-	 * no owner CMDocument instance.</strong>
-	 */
-	public static final HTMLAttrDeclImpl createAlignForParagraph() {
-		HTMLCMDataTypeImpl atype = new HTMLCMDataTypeImpl(CMDataType.ENUM);
-		// set enum values: left|center|right|justify
-		String[] values = {ATTR_VALUE_LEFT, ATTR_VALUE_CENTER, ATTR_VALUE_RIGHT,};
-		atype.setEnumValues(values);
-
-		HTMLAttrDeclImpl attr = new HTMLAttrDeclImpl(ATTR_NAME_ALIGN, atype, CMAttributeDeclaration.OPTIONAL);
-		return attr;
-	}
-
-	/**
-	 * Get %attrs; declarations.
-	 * %attrs; consists of %coreattrs;, %i18n, and %events;.
-	 */
-	public void getAttrs(CMNamedNodeMapImpl declarations) {
-	}
-
-	/**
-	 * Get %coreattrs; declarations.
-	 */
-	public void getCore(CMNamedNodeMapImpl declarations) {
-	}
-
-	/**
-	 * Get a global attribute declaration.
-	 * @param attrName java.lang.String
-	 */
-	public HTMLAttributeDeclaration getDeclaration(String attrName) {
-		CMNode cmnode = getNamedItem(attrName);
-		if (cmnode != null)
-			return (HTMLAttributeDeclaration) cmnode; // already exists.
-
-		HTMLAttrDeclImpl dec = create(attrName);
-		if (dec != null)
-			putNamedItem(attrName, dec);
-
-		return dec;
-	}
-
-	/**
-	 * Get declarations which are specified by names.
-	 * @param names java.util.Iterator
-	 */
-	public void getDeclarations(CMNamedNodeMapImpl declarations, Iterator names) {
-		while (names.hasNext()) {
-			String attrName = (String) names.next();
-			HTMLAttributeDeclaration dec = getDeclaration(attrName);
-			if (dec != null)
-				declarations.putNamedItem(attrName, dec);
-		}
-	}
-
-	/**
-	 * Get %events; declarations.
-	 */
-	public void getEvents(CMNamedNodeMapImpl declarations) {
-	}
-
-	/**
-	 * Get %i18n; declarations.
-	 */
-	public void getI18n(CMNamedNodeMapImpl declarations) {
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/CHCMDocImpl.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/CHCMDocImpl.java
deleted file mode 100644
index 5ebf483..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/CHCMDocImpl.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.wst.html.core.internal.contentmodel.chtml;
-
-
-
-import org.eclipse.wst.html.core.internal.contentmodel.HTMLCMDocument;
-import org.eclipse.wst.html.core.internal.contentmodel.HTMLElementDeclaration;
-import org.eclipse.wst.html.core.internal.contentmodel.HTMLEntityDeclaration;
-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;
-
-/**
- * CMDocument implementation for the HTML.
- */
-public class CHCMDocImpl extends CMNodeImpl implements HTMLCMDocument {
-
-	/** Namespace for all names of elements, entities and attributes. */
-	private CMNamespace namespace = null;
-	private ElementCollection elements = null;
-	private EntityCollection entities = null;
-	private AttributeCollection attributes = null;
-
-	/**
-	 */
-	public CHCMDocImpl(String docTypeName, CMNamespace targetNamespace) {
-		super(docTypeName);
-		namespace = targetNamespace;
-		attributes = new AttributeCollection();
-		elements = new ElementCollection(attributes);
-		entities = new EntityCollection();
-	}
-
-	AttributeCollection getAttributes() {
-		return attributes;
-	}
-
-	public HTMLElementDeclaration getElementDeclaration(String elementName) {
-		if (elements == null)
-			return null;
-		return (HTMLElementDeclaration) elements.getNamedItem(elementName);
-	}
-
-	public CMNamedNodeMap getElements() {
-		return elements;
-	}
-
-	public CMNamedNodeMap getEntities() {
-		return entities;
-	}
-
-	public HTMLEntityDeclaration getEntityDeclaration(String entityName) {
-		if (entities == null)
-			return null;
-		return (HTMLEntityDeclaration) entities.getNamedItem(entityName);
-	}
-
-	/**
-	 * @see org.eclipse.wst.xml.core.internal.contentmodel.CMDocument
-	 */
-	public org.eclipse.wst.xml.core.internal.contentmodel.CMNamespace getNamespace() {
-		return namespace;
-	}
-
-	/**
-	 * @see org.eclipse.wst.xml.core.internal.contentmodel.CMNode
-	 */
-	public int getNodeType() {
-		return CMNode.DOCUMENT;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/CHTMLNamespace.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/CHTMLNamespace.java
deleted file mode 100644
index 95d5c21..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/CHTMLNamespace.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.html.core.internal.contentmodel.chtml;
-
-import org.eclipse.wst.html.core.internal.provisional.HTML40Namespace;
-
-
-
-/**
- * Provide all names defined in the HTML 4.0? specification.
- */
-public interface CHTMLNamespace {
-
-	// Element names
-	public static interface ElementName {
-		public static final String A = HTML40Namespace.ElementName.A;
-		public static final String ADDRESS = HTML40Namespace.ElementName.ADDRESS;
-		public static final String BASE = HTML40Namespace.ElementName.BASE;
-		public static final String BLOCKQUOTE = HTML40Namespace.ElementName.BLOCKQUOTE;
-		public static final String BODY = HTML40Namespace.ElementName.BODY;
-		public static final String BR = HTML40Namespace.ElementName.BR;
-		public static final String CENTER = HTML40Namespace.ElementName.CENTER;
-		public static final String DD = HTML40Namespace.ElementName.DD;
-		public static final String DIR = HTML40Namespace.ElementName.DIR;
-		public static final String DIV = HTML40Namespace.ElementName.DIV;
-		public static final String DL = HTML40Namespace.ElementName.DL;
-		public static final String DT = HTML40Namespace.ElementName.DT;
-		public static final String FORM = HTML40Namespace.ElementName.FORM;
-		public static final String H1 = HTML40Namespace.ElementName.H1;
-		public static final String H2 = HTML40Namespace.ElementName.H2;
-		public static final String H3 = HTML40Namespace.ElementName.H3;
-		public static final String H4 = HTML40Namespace.ElementName.H4;
-		public static final String H5 = HTML40Namespace.ElementName.H5;
-		public static final String H6 = HTML40Namespace.ElementName.H6;
-		public static final String HEAD = HTML40Namespace.ElementName.HEAD;
-		public static final String HR = HTML40Namespace.ElementName.HR;
-		public static final String HTML = HTML40Namespace.ElementName.HTML;
-		public static final String IMG = HTML40Namespace.ElementName.IMG;
-		public static final String INPUT = HTML40Namespace.ElementName.INPUT;
-		public static final String LI = HTML40Namespace.ElementName.LI;
-		public static final String MENU = HTML40Namespace.ElementName.MENU;
-		public static final String META = HTML40Namespace.ElementName.META;
-		public static final String OL = HTML40Namespace.ElementName.OL;
-		public static final String OPTION = HTML40Namespace.ElementName.OPTION;
-		public static final String P = HTML40Namespace.ElementName.P;
-		public static final String PRE = HTML40Namespace.ElementName.PRE;
-		public static final String SELECT = HTML40Namespace.ElementName.SELECT;
-		public static final String TEXTAREA = HTML40Namespace.ElementName.TEXTAREA;
-		public static final String TITLE = HTML40Namespace.ElementName.TITLE;
-		public static final String UL = HTML40Namespace.ElementName.UL;
-		public static final String SSI_CONFIG = HTML40Namespace.ElementName.SSI_CONFIG;
-		public static final String SSI_ECHO = HTML40Namespace.ElementName.SSI_ECHO;
-		public static final String SSI_EXEC = HTML40Namespace.ElementName.SSI_EXEC;
-		public static final String SSI_FSIZE = HTML40Namespace.ElementName.SSI_FSIZE;
-		public static final String SSI_FLASTMOD = HTML40Namespace.ElementName.SSI_FLASTMOD;
-		public static final String SSI_INCLUDE = HTML40Namespace.ElementName.SSI_INCLUDE;
-		public static final String SSI_PRINTENV = HTML40Namespace.ElementName.SSI_PRINTENV;
-		public static final String SSI_SET = HTML40Namespace.ElementName.SSI_SET;
-	}
-
-	// Character Entities
-	public static interface EntityName {
-	}
-
-	// global attribute names
-	public static final String ATTR_NAME_VERSION = HTML40Namespace.ATTR_NAME_VERSION;
-	public static final String ATTR_NAME_SRC = HTML40Namespace.ATTR_NAME_SRC;
-	public static final String ATTR_NAME_ALT = HTML40Namespace.ATTR_NAME_ALT;
-	public static final String ATTR_NAME_HEIGHT = HTML40Namespace.ATTR_NAME_HEIGHT;
-	public static final String ATTR_NAME_WIDTH = HTML40Namespace.ATTR_NAME_WIDTH;
-	public static final String ATTR_NAME_ALIGN = HTML40Namespace.ATTR_NAME_ALIGN;
-	public static final String ATTR_NAME_BORDER = HTML40Namespace.ATTR_NAME_BORDER;
-	public static final String ATTR_NAME_HSPACE = HTML40Namespace.ATTR_NAME_HSPACE;
-	public static final String ATTR_NAME_VSPACE = HTML40Namespace.ATTR_NAME_VSPACE;
-	public static final String ATTR_NAME_NAME = HTML40Namespace.ATTR_NAME_NAME;
-	public static final String ATTR_NAME_CLEAR = HTML40Namespace.ATTR_NAME_CLEAR;
-	public static final String ATTR_NAME_NOSHADE = HTML40Namespace.ATTR_NAME_NOSHADE;
-	public static final String ATTR_NAME_CHECKED = HTML40Namespace.ATTR_NAME_CHECKED;
-	public static final String ATTR_NAME_MAXLENGTH = HTML40Namespace.ATTR_NAME_MAXLENGTH;
-	public static final String ATTR_NAME_ISTYLE = HTML40Namespace.ATTR_NAME_ISTYLE;
-	public static final String ATTR_NAME_HTTP_EQUIV = HTML40Namespace.ATTR_NAME_HTTP_EQUIV;
-	public static final String ATTR_NAME_CONTENT = HTML40Namespace.ATTR_NAME_CONTENT;
-
-	public static final String ATTR_NAME_HREF = HTML40Namespace.ATTR_NAME_HREF;
-	public static final String ATTR_NAME_MULTIPLE = HTML40Namespace.ATTR_NAME_MULTIPLE;
-	public static final String ATTR_NAME_SELECTED = HTML40Namespace.ATTR_NAME_SELECTED;
-	public static final String ATTR_NAME_ROWS = HTML40Namespace.ATTR_NAME_ROWS;
-	public static final String ATTR_NAME_COLS = HTML40Namespace.ATTR_NAME_COLS;
-	public static final String ATTR_NAME_ACTION = HTML40Namespace.ATTR_NAME_ACTION;
-	public static final String ATTR_NAME_METHOD = HTML40Namespace.ATTR_NAME_METHOD;
-	public static final String ATTR_NAME_ENCTYPE = HTML40Namespace.ATTR_NAME_ENCTYPE;
-	public static final String ATTR_NAME_SIZE = HTML40Namespace.ATTR_NAME_SIZE;
-	public static final String ATTR_NAME_TYPE = HTML40Namespace.ATTR_NAME_TYPE;
-	public static final String ATTR_NAME_VALUE = HTML40Namespace.ATTR_NAME_VALUE;
-
-
-
-	public static final String ATTR_NAME_ERRMSG = HTML40Namespace.ATTR_NAME_ERRMSG;
-	public static final String ATTR_NAME_SIZEFMT = HTML40Namespace.ATTR_NAME_SIZEFMT;
-	public static final String ATTR_NAME_TIMEFMT = HTML40Namespace.ATTR_NAME_TIMEFMT;
-	public static final String ATTR_NAME_VAR = HTML40Namespace.ATTR_NAME_VAR;
-	public static final String ATTR_NAME_CGI = HTML40Namespace.ATTR_NAME_CGI;
-	public static final String ATTR_NAME_CMD = HTML40Namespace.ATTR_NAME_CMD;
-	public static final String ATTR_NAME_FILE = HTML40Namespace.ATTR_NAME_FILE;
-	public static final String ATTR_NAME_VIRTUAL = HTML40Namespace.ATTR_NAME_VIRTUAL;
-
-	// global attribute values; mainly used in enumeration.
-	public static final String ATTR_VALUE_VERSION_TRANSITIONAL = "-//W3C//DTD Compact HTML 1.0 Draft//EN"; //$NON-NLS-1$
-	//   for align (top|middle|bottom|left|right)
-	public static final String ATTR_VALUE_TOP = HTML40Namespace.ATTR_VALUE_TOP;
-	public static final String ATTR_VALUE_MIDDLE = HTML40Namespace.ATTR_VALUE_MIDDLE;
-	public static final String ATTR_VALUE_BOTTOM = HTML40Namespace.ATTR_VALUE_BOTTOM;
-	public static final String ATTR_VALUE_LEFT = HTML40Namespace.ATTR_VALUE_LEFT;
-	public static final String ATTR_VALUE_CENTER = HTML40Namespace.ATTR_VALUE_CENTER;
-	public static final String ATTR_VALUE_RIGHT = HTML40Namespace.ATTR_VALUE_RIGHT;
-	//   for clear (left|all|right|none): left and right are already defined above.
-	public static final String ATTR_VALUE_ALL = HTML40Namespace.ATTR_VALUE_ALL;
-	public static final String ATTR_VALUE_NONE = HTML40Namespace.ATTR_VALUE_NONE;
-	//   for type of INPUT
-	//       (text | password | checkbox | radio | submit | reset |
-	//        file | hidden | image | button)
-	public static final String ATTR_VALUE_TEXT = HTML40Namespace.ATTR_VALUE_TEXT;
-	public static final String ATTR_VALUE_PASSWORD = HTML40Namespace.ATTR_VALUE_PASSWORD;
-	public static final String ATTR_VALUE_CHECKBOX = HTML40Namespace.ATTR_VALUE_CHECKBOX;
-	public static final String ATTR_VALUE_RADIO = HTML40Namespace.ATTR_VALUE_RADIO;
-	public static final String ATTR_VALUE_SUBMIT = HTML40Namespace.ATTR_VALUE_SUBMIT;
-	public static final String ATTR_VALUE_RESET = HTML40Namespace.ATTR_VALUE_RESET;
-	public static final String ATTR_VALUE_HIDDEN = HTML40Namespace.ATTR_VALUE_HIDDEN;
-	//   for span, colspan, rowspan
-	public static final String ATTR_VALUE_1 = HTML40Namespace.ATTR_VALUE_1;
-	//   for frameborder
-	public static final String ATTR_VALUE_0 = HTML40Namespace.ATTR_VALUE_0;
-	//   for method of FORM
-	public static final String ATTR_VALUE_GET = HTML40Namespace.ATTR_VALUE_GET;
-	public static final String ATTR_VALUE_POST = HTML40Namespace.ATTR_VALUE_POST;
-	public static final String ATTR_VALUE_WWW_FORM_URLENCODED = HTML40Namespace.ATTR_VALUE_WWW_FORM_URLENCODED;
-	//   for behaviro of MARQUEE
-	public static final String ATTR_VALUE_SCROLL = HTML40Namespace.ATTR_VALUE_SCROLL;
-	public static final String ATTR_VALUE_SLIDE = HTML40Namespace.ATTR_VALUE_SLIDE;
-	public static final String ATTR_VALUE_ALTERNATE = HTML40Namespace.ATTR_VALUE_ALTERNATE;
-	//   for direction of MARQUEE
-	public static final String ATTR_VALUE_UP = HTML40Namespace.ATTR_VALUE_UP;
-	public static final String ATTR_VALUE_DOWN = HTML40Namespace.ATTR_VALUE_DOWN;
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/CMContentImpl.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/CMContentImpl.java
deleted file mode 100644
index 28b7966..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/CMContentImpl.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.core.internal.contentmodel.chtml;
-
-
-
-/**
- * Implementation of CMContent for HTML CM.
- */
-abstract class CMContentImpl extends CMNodeImpl implements org.eclipse.wst.xml.core.internal.contentmodel.CMContent {
-
-	public static final int UNBOUNDED = -1;
-	/**  -1: it's UNBOUNDED. */
-	private int maxOccur = UNBOUNDED;
-	/**  0: it's OPTIONAL, 1, it's REQUIRED. */
-	private int minOccur = 0;
-
-	/**
-	 * The primary consturctor.
-	 * Use this one for usual cases.<br>
-	 */
-	public CMContentImpl(String name, int min, int max) {
-		super(name);
-		minOccur = min;
-		maxOccur = max;
-	}
-
-	/**
-	 * 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;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/CMGroupImpl.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/CMGroupImpl.java
deleted file mode 100644
index 812b3ed..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/CMGroupImpl.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.core.internal.contentmodel.chtml;
-
-
-
-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;
-
-/**
- */
-class CMGroupImpl extends CMContentImpl implements CMGroup {
-
-	private int operator = CMGroup.SEQUENCE;
-	private CMNodeListImpl children = null;
-
-	/**
-	 * CMGroupImpl constructor comment.
-	 */
-	public CMGroupImpl(int op, int minOccur, int maxOccur) {
-		super(null, minOccur, maxOccur);
-		switch (op) {
-			case CMGroup.ALL :
-			case CMGroup.CHOICE :
-			case CMGroup.SEQUENCE :
-				operator = op;
-				break;
-			default :
-				// should warn.
-				break;
-		}
-	}
-
-	/**
-	 * @return org.eclipse.wst.xml.core.internal.contentmodel.CMNode
-	 * @param org.eclipse.wst.xml.core.internal.contentmodel.CMNode
-	 */
-	protected CMNode appendChild(CMNode child) {
-		if (child == null)
-			return null;
-		if (children == null)
-			children = new CMNodeListImpl();
-		return children.appendNode(child);
-	}
-
-	/**
-	 * @return org.eclipse.wst.xml.core.internal.contentmodel.CMNodeList
-	 */
-	public CMNodeList getChildNodes() {
-		return children;
-	}
-
-	/**
-	 * getNodeType method
-	 * @return int
-	 *
-	 * Returns one of :
-	 * ELEMENT_DECLARATION, ATTRIBUTE_DECLARATION, GROUP, ENTITY_DECLARATION.
-	 */
-	public int getNodeType() {
-		return CMNode.GROUP;
-	}
-
-	/**
-	 * getOperation method
-	 * @return int
-	 *
-	 * Returns one of :
-	 * ALONE (a), SEQUENCE (a,b), CHOICE (a|b), ALL (a&b).
-	 */
-	public int getOperator() {
-		return operator;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/CMNamedNodeMapImpl.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/CMNamedNodeMapImpl.java
deleted file mode 100644
index a32cdfd..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/CMNamedNodeMapImpl.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.html.core.internal.contentmodel.chtml;
-
-
-
-import java.util.Iterator;
-
-import org.eclipse.wst.xml.core.internal.contentmodel.CMNode;
-
-/**
- * An implementation of the CMNamedNodeMap interface.
- * This class is intented to be used as a container of attribute declarations.
- * If someone wants to use this class for other purpose, he must pay attention
- * to the fact that this class is tolerant of the key name case.  That is, this
- * class does not distinguish "name", "NAME", and "Name" as a key name.
- */
-class CMNamedNodeMapImpl implements org.eclipse.wst.xml.core.internal.contentmodel.CMNamedNodeMap {
-
-	private java.util.Hashtable items = null;
-
-	/**
-	 */
-	public CMNamedNodeMapImpl() {
-		super();
-		items = new java.util.Hashtable();
-	}
-
-	/**
-	 * getLength method
-	 * @return int
-	 */
-	public int getLength() {
-		return items.size();
-	}
-
-	/**
-	 * getNamedItem method
-	 * @return CMNode <code>null</code> for unknown keys.
-	 * @param name java.lang.String
-	 */
-	public CMNode getNamedItem(String name) {
-		String cookedName = makeCanonicalForm(name);
-		if (!items.containsKey(cookedName))
-			return null;
-		return (CMNode) items.get(cookedName);
-	}
-
-	/**
-	 * item method
-	 * @return CMNode
-	 * @param index int
-	 */
-	public CMNode item(int index) {
-		Iterator iter = iterator();
-		while (iter.hasNext()) {
-			CMNode node = (CMNode) iter.next();
-			if (--index < 0)
-				return node;
-		}
-		return null;
-	}
-
-	/**
-	 * @return java.util.Iterator
-	 */
-	public Iterator iterator() {
-		return items.values().iterator();
-	}
-
-	/**
-	 * @return java.lang.String
-	 * @param rawForm java.lang.String
-	 */
-	private String makeCanonicalForm(String rawForm) {
-		return rawForm.toUpperCase();
-	}
-
-	/**
-	 * @param key java.lang.String
-	 * @param item java.lang.String
-	 */
-	void putNamedItem(String name, CMNode item) {
-		String cookedName = makeCanonicalForm(name);
-		if (items.containsKey(cookedName))
-			return; // already registered.
-		items.put(cookedName, item);
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/CMNodeImpl.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/CMNodeImpl.java
deleted file mode 100644
index c383848..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/CMNodeImpl.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
- *******************************************************************************/
-package org.eclipse.wst.html.core.internal.contentmodel.chtml;
-
-import org.eclipse.wst.html.core.internal.provisional.HTMLCMProperties;
-
-
-
-/**
- */
-abstract class CMNodeImpl implements org.eclipse.wst.xml.core.internal.contentmodel.CMNode {
-
-	private java.lang.String name = null;
-
-	/**
-	 * CMNodeImpl constructor comment.
-	 */
-	public CMNodeImpl(String nm) {
-		super();
-		name = nm;
-	}
-
-	/**
-	 * getNodeName method
-	 * @return java.lang.String
-	 */
-	public String getNodeName() {
-		return name;
-	}
-
-	/**
-	 * getProperty method
-	 * @return java.lang.Object
-	 *
-	 * Returns the object property desciped by the propertyName
-	 *
-	 */
-	public Object getProperty(String propertyName) {
-		if (propertyName.equals(HTMLCMProperties.IS_XHTML))
-			return new Boolean(false);
-		return null;
-	}
-
-	/**
-	 * supports method
-	 * @return boolean
-	 *
-	 * Returns true if the CMNode supports a specified property
-	 *
-	 */
-	public boolean supports(String propertyName) {
-		if (propertyName.equals(HTMLCMProperties.IS_XHTML))
-			return true;
-		return false;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/CMNodeListImpl.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/CMNodeListImpl.java
deleted file mode 100644
index 3e4404a..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/CMNodeListImpl.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.html.core.internal.contentmodel.chtml;
-
-
-
-import org.eclipse.wst.xml.core.internal.contentmodel.CMNode;
-
-/**
- * Analog of dom.NodeList for CM.
- */
-class CMNodeListImpl implements org.eclipse.wst.xml.core.internal.contentmodel.CMNodeList {
-
-	private java.util.Vector nodes = null;
-
-	/**
-	 * CMNodeListImpl constructor comment.
-	 */
-	public CMNodeListImpl() {
-		super();
-		nodes = new java.util.Vector();
-	}
-
-	/**
-	 * @return org.eclipse.wst.xml.core.internal.contentmodel.CMNode
-	 * @param node org.eclipse.wst.xml.core.internal.contentmodel.CMNode
-	 */
-	protected CMNode appendNode(CMNode node) {
-		nodes.addElement(node);
-		return 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.elementAt(index);
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/ComplexTypeDefinition.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/ComplexTypeDefinition.java
deleted file mode 100644
index a0c2dfd..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/ComplexTypeDefinition.java
+++ /dev/null
@@ -1,76 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this 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.core.internal.contentmodel.chtml;
-
-
-
-import org.eclipse.wst.html.core.internal.contentmodel.HTMLElementDeclaration;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMGroup;
-
-/**
- * This class is intended to represent a complex type definition
- * in XML Schema.<br>
- */
-abstract class ComplexTypeDefinition {
-
-	protected CMGroupImpl content = null;
-	protected ElementCollection collection = null;
-	protected String primaryCandidateName = null;
-
-	/**
-	 * ComplexTypeDefinition constructor comment.
-	 */
-	public ComplexTypeDefinition(ElementCollection elementCollection) {
-		super();
-		collection = elementCollection;
-		createContent();
-	}
-
-	/**
-	 * Create an actual content model.
-	 * This method should be called once and only once in the constructor.<br>
-	 */
-	protected abstract void createContent();
-
-	/**
-	 * @return org.eclipse.wst.xml.core.internal.contentmodel.CMGroup
-	 */
-	public CMGroup getContent() {
-		return content;
-	}
-
-	/**
-	 * @return int; Should be one of ANY, EMPTY, ELEMENT, MIXED, PCDATA, CDATA,
-	 * those are defined in CMElementDeclaration.
-	 */
-	/* NOTE: Do we need LOGICAL type?
-	 * -- 3/7/2001
-	 */
-	public abstract int getContentType();
-
-	/**
-	 * Get content hint.
-	 */
-	public HTMLElementDeclaration getPrimaryCandidate() {
-		if (primaryCandidateName == null)
-			return null;
-		return (HTMLElementDeclaration) collection.getNamedItem(primaryCandidateName);
-	}
-
-	/**
-	 * Name of complex type definition.
-	 * Each singleton must know its own name.
-	 * All names should be defined in
-	 * {@link <code>ComplexTypeDefinitionFactory</code>} as constants.<br>
-	 * @return java.lang.String
-	 */
-	public abstract String getTypeName();
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/ComplexTypeDefinitionFactory.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/ComplexTypeDefinitionFactory.java
deleted file mode 100644
index 5f346bf..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/ComplexTypeDefinitionFactory.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.wst.html.core.internal.contentmodel.chtml;
-
-
-
-/**
- * Factory of ComplexTypeDefinition.
- */
-final class ComplexTypeDefinitionFactory {
-
-	private static ComplexTypeDefinitionFactory instance = null;
-	private java.util.Hashtable definitions = null;
-	// constants for complex type name
-	/** for ADDRESS. */
-	public final static String CTYPE_ADDRESS = "CTYPE_ADDRESS";//$NON-NLS-1$
-	/** CDATA content. No ComplexTypeDefinition instance shuld be created. */
-	public final static String CTYPE_CDATA = "CTYPE_CDATA";//$NON-NLS-1$
-	/** col group content. COL* */
-	public final static String CTYPE_COLUMN_GROUP = "CTYPE_COLUMN_GROUP";//$NON-NLS-1$
-	/** for DL. */
-	public final static String CTYPE_DEFINITION_LIST = "CTYPE_DEFINITION_LIST";//$NON-NLS-1$
-	/** for EMBED. */
-	public final static String CTYPE_EMBED = "CTYPE_EMBED";//$NON-NLS-1$
-	/** empty content. No ComplexTypeDefinition instance should be created. */
-	public final static String CTYPE_EMPTY = "CTYPE_EMPTY";//$NON-NLS-1$
-	/** for FIELDSET. */
-	public final static String CTYPE_FIELDSET = "CTYPE_FIELDSET";//$NON-NLS-1$
-	/** for FRAMESET. */
-	public final static String CTYPE_FRAMESET = "CTYPE_FRAMESET";//$NON-NLS-1$
-	/** flow content. (%flow;)* */
-	public final static String CTYPE_FLOW_CONTAINER = "CTYPE_FLOW_CONTAINER";//$NON-NLS-1$
-	/** html content. HEAD, (FRAMESET|BODY) */
-	public final static String CTYPE_HTML = "CTYPE_HTML";//$NON-NLS-1$
-	/** head content. TITLE & ISINDEX? & BASE? */
-	public final static String CTYPE_HEAD = "CTYPE_HEAD";//$NON-NLS-1$
-	/** inline content. (%inline;)* */
-	public final static String CTYPE_INLINE_CONTAINER = "CTYPE_INLINE_CONTAINER";//$NON-NLS-1$
-	/** list item container. (LI)+ */
-	public final static String CTYPE_LI_CONTAINER = "CTYPE_LI_CONTAINER";//$NON-NLS-1$
-	/** for MAP. */
-	public final static String CTYPE_MAP = "CTYPE_MAP";//$NON-NLS-1$
-	/** noframes content. */
-	public final static String CTYPE_NOFRAMES_CONTENT = "CTYPE_NOFRAMES_CONTENT";//$NON-NLS-1$
-	/** for OPTGROUP. */
-	public final static String CTYPE_OPTION_CONTAINER = "CTYPE_OPTION_CONTAINER";//$NON-NLS-1$
-	/** param container. For OBJECT/APPLET. */
-	public final static String CTYPE_PARAM_CONTAINER = "CTYPE_PARAM_CONTAINER";//$NON-NLS-1$
-	/** PCDATA content. No ComplexTypeDefinition instance shuld be created. */
-	public final static String CTYPE_PCDATA = "CTYPE_PCDATA";//$NON-NLS-1$
-	/** for SELECT. */
-	public final static String CTYPE_SELECT = "CTYPE_SELECT";//$NON-NLS-1$
-	/** table content. CAPTION?, (COL*|COLGROUP*), THEAD?, TFOOT?, TBODY+ */
-	public final static String CTYPE_TABLE = "CTYPE_TABLE";//$NON-NLS-1$
-	/** table cell contaier. (TH|TD)+ */
-	public final static String CTYPE_TCELL_CONTAINER = "CTYPE_TCELL_CONTAINER";//$NON-NLS-1$
-	/** table record container. (TR)+ */
-	public final static String CTYPE_TR_CONTAINER = "CTYPE_TR_CONTAINER";//$NON-NLS-1$
-
-	/**
-	 * ComplexTypeDefinitionFactory constructor comment.
-	 */
-	private ComplexTypeDefinitionFactory() {
-		super();
-		definitions = new java.util.Hashtable();
-	}
-
-	/**
-	 * Factory method for ComplexTypeDefinition.
-	 * Each instance created in this method must be registered into
-	 * the map with its name.
-	 * @param definitionName java.lang.String
-	 * @param elementCollection ElementCollection
-	 */
-	public ComplexTypeDefinition createTypeDefinition(String definitionName, ElementCollection elementCollection) {
-		if (definitions.containsKey(definitionName)) {
-			return (ComplexTypeDefinition) definitions.get(definitionName);
-		}
-
-		ComplexTypeDefinition def = null;
-		if (definitionName == CTYPE_ADDRESS) {
-			def = new CtdAddress(elementCollection);
-
-		}
-		else if (definitionName == CTYPE_DEFINITION_LIST) {
-			def = new CtdDl(elementCollection);
-
-		}
-		else if (definitionName == CTYPE_FLOW_CONTAINER) {
-			def = new CtdFlowContainer(elementCollection);
-
-		}
-		else if (definitionName == CTYPE_HEAD) {
-			def = new CtdHead(elementCollection);
-
-		}
-		else if (definitionName == CTYPE_HTML) {
-			def = new CtdHtml(elementCollection);
-
-		}
-		else if (definitionName == CTYPE_INLINE_CONTAINER) {
-			def = new CtdInlineContainer(elementCollection);
-
-		}
-		else if (definitionName == CTYPE_LI_CONTAINER) {
-			def = new CtdLiContainer(elementCollection);
-
-
-		}
-		else if (definitionName == CTYPE_OPTION_CONTAINER) {
-			def = new CtdOptionContainer(elementCollection);
-
-		}
-		else if (definitionName == CTYPE_SELECT) {
-			def = new CtdSelect(elementCollection);
-
-		}
-		else {
-			def = null;
-		}
-		if (def == null)
-			return null; // fail to create.
-		definitions.put(definitionName, def);
-		return def;
-	}
-
-	/**
-	 * For singleton.<br>
-	 */
-	public synchronized static ComplexTypeDefinitionFactory getInstance() {
-		if (instance != null)
-			return instance;
-		instance = new ComplexTypeDefinitionFactory();
-		return instance;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/CtdAddress.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/CtdAddress.java
deleted file mode 100644
index 84796f4..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/CtdAddress.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.html.core.internal.contentmodel.chtml;
-
-
-
-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;
-
-/**
- * for ADDRESS.
- */
-final class CtdAddress extends ComplexTypeDefinition {
-
-	/**
-	 * @param elementCollection ElementCollection
-	 */
-	public CtdAddress(ElementCollection elementCollection) {
-		super(elementCollection);
-	}
-
-	/**
-	 * ((%inline) | P)*.
-	 */
-	protected void createContent() {
-		if (content != null)
-			return; // already created.
-		if (collection == null)
-			return;
-
-		// ( | )*
-		content = new CMGroupImpl(CMGroup.CHOICE, 0, CMContentImpl.UNBOUNDED);
-		// (%inline)
-		CMGroupImpl inlines = new CMGroupImpl(CMGroup.CHOICE, 1, 1);
-		if (inlines == null)
-			return;
-		collection.getInline(inlines);
-		content.appendChild(inlines);
-		// P
-		CMNode p = collection.getNamedItem(CHTMLNamespace.ElementName.P);
-		if (p != null)
-			content.appendChild(p);
-	}
-
-	/**
-	 * ((%inline) | P)*.
-	 * Because %inline; contains #PCDATA, the type is MIXED.
-	 * @return int; Should be one of ANY, EMPTY, ELEMENT, MIXED, PCDATA, CDATA,
-	 * those are defined in CMElementDeclaration.
-	 */
-	public int getContentType() {
-		return CMElementDeclaration.MIXED;
-	}
-
-	/**
-	 * @return java.lang.String
-	 */
-	public String getTypeName() {
-		return ComplexTypeDefinitionFactory.CTYPE_ADDRESS;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/CtdDl.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/CtdDl.java
deleted file mode 100644
index dcfb159..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/CtdDl.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.wst.html.core.internal.contentmodel.chtml;
-
-
-
-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;
-
-/**
- * for DL.
- */
-final class CtdDl extends ComplexTypeDefinition {
-
-	/**
-	 * @param elementCollection ElementCollection
-	 */
-	public CtdDl(ElementCollection elementCollection) {
-		super(elementCollection);
-		primaryCandidateName = CHTMLNamespace.ElementName.DT;
-	}
-
-	/**
-	 * (DT | DD)+
-	 */
-	protected void createContent() {
-		if (content != null)
-			return; // already created.
-		if (collection == null)
-			return;
-
-		// ( | )+
-		content = new CMGroupImpl(CMGroup.CHOICE, 1, CMContentImpl.UNBOUNDED);
-		// DT
-		CMNode dec = collection.getNamedItem(CHTMLNamespace.ElementName.DT);
-		if (dec != null)
-			content.appendChild(dec);
-		// DD
-		dec = collection.getNamedItem(CHTMLNamespace.ElementName.DD);
-		if (dec != null)
-			content.appendChild(dec);
-	}
-
-	/**
-	 * (DT | DD)+.
-	 * @return int; Should be one of ANY, EMPTY, ELEMENT, MIXED, PCDATA, CDATA,
-	 * those are defined in CMElementDeclaration.
-	 */
-	public int getContentType() {
-		return CMElementDeclaration.ELEMENT;
-	}
-
-	/**
-	 * @return java.lang.String
-	 */
-	public String getTypeName() {
-		return ComplexTypeDefinitionFactory.CTYPE_DEFINITION_LIST;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/CtdFlowContainer.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/CtdFlowContainer.java
deleted file mode 100644
index ee94d62..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/CtdFlowContainer.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.core.internal.contentmodel.chtml;
-
-
-
-import org.eclipse.wst.xml.core.internal.contentmodel.CMElementDeclaration;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMGroup;
-
-/**
- * Complex type definition for containers of <code>%flow;</code>.
- */
-final class CtdFlowContainer extends ComplexTypeDefinition {
-
-	/**
-	 */
-	public CtdFlowContainer(ElementCollection elementCollection) {
-		super(elementCollection);
-	}
-
-	/**
-	 * (%flow;)*
-	 */
-	protected void createContent() {
-		if (content != null)
-			return; // already created.
-		if (collection == null)
-			return;
-
-		content = new CMGroupImpl(CMGroup.CHOICE, 0, CMContentImpl.UNBOUNDED);
-		collection.getFlow(content);
-	}
-
-	public int getContentType() {
-		return CMElementDeclaration.MIXED;
-	}
-
-	public String getTypeName() {
-		return ComplexTypeDefinitionFactory.CTYPE_FLOW_CONTAINER;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/CtdHead.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/CtdHead.java
deleted file mode 100644
index 5361c3a..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/CtdHead.java
+++ /dev/null
@@ -1,174 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this 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.core.internal.contentmodel.chtml;
-
-
-
-import java.util.Arrays;
-
-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;
-
-/**
- * Complex type definition for the head content.
- * Content Model: (TITLE & ISINDEX? & BASE?)
- */
-final class CtdHead extends ComplexTypeDefinition {
-
-	/**
-	 */
-	public CtdHead(ElementCollection elementCollection) {
-		super(elementCollection);
-		primaryCandidateName = CHTMLNamespace.ElementName.TITLE;
-	}
-
-	/**
-	 * for HEAD.
-	 * To avoid using inclusion, the content model comes from the XHTML 1.0.
-	 *
-	 * (%head.misc;, ((title, %head.misc;, (base, %head.misc;)?) | (base, %head.misc;, (title, %head.misc;))))
-	 * And %head.misc; is:
-	 * (script|style|meta|link|object|isindex)*
-	 *
-	 * 0: (%head.misc, A)
-	 * A: (B | C)
-	 * B: (title, %head.misc;, D)
-	 * C: (base, %head.misc;, E)
-	 * D: (base, %head.misc;)?
-	 * E: (title, %head.misc;)
-	 */
-	protected void createContent() {
-		if (content != null)
-			return; // already created.
-		if (collection == null)
-			return;
-
-		// At 1st, create %head.misc; content.
-		// %head.misc;
-		//   ( | )*
-		CMGroupImpl misc = new CMGroupImpl(CMGroup.CHOICE, 0, CMContentImpl.UNBOUNDED);
-		if (misc == null)
-			return;
-		String[] names = {CHTMLNamespace.ElementName.META,};
-		collection.getDeclarations(misc, Arrays.asList(names).iterator());
-		// 2nd, get a title
-		CMNode title = collection.getNamedItem(CHTMLNamespace.ElementName.TITLE);
-		// 3rd, get a base
-		CMNode base = collection.getNamedItem(CHTMLNamespace.ElementName.BASE);
-		if (title == null || base == null)
-			return;
-
-		// Top level content is a sequence of %head.misc; and A.
-		// 0: (%head.misc;, A)
-		//   create a sequence
-		content = new CMGroupImpl(CMGroup.SEQUENCE, 1, 1);
-		if (content == null)
-			return;
-		//   append %head.misc;
-		content.appendChild(misc);
-		//   create A and append it to the top level.
-		{
-			// A is a choice of B and C.
-			// A: (B | C)
-			//   create a choice
-			CMGroupImpl gA = new CMGroupImpl(CMGroup.CHOICE, 1, 1);
-			if (gA == null)
-				return;
-			//   append A to the top level.
-			content.appendChild(gA);
-
-			// create B and append it to A
-			{
-				// B is a sequence of title, %head.misc;, and D.
-				// B: (title, %head.misc;, D)
-				//   create a sequence
-				CMGroupImpl gB = new CMGroupImpl(CMGroup.SEQUENCE, 1, 1);
-				if (gB == null)
-					return;
-				//   append B to A.
-				gA.appendChild(gB);
-
-				//   append title to B
-				gB.appendChild(title);
-				//   append %head.misc; to B
-				gB.appendChild(misc);
-				//   create D and append it to B.
-				{
-					// D is a sequence of base, %head.misc;.
-					// D: (base, %head.misc;)?
-					//   create a sequence
-					CMGroupImpl gD = new CMGroupImpl(CMGroup.SEQUENCE, 0, 1);
-					if (gD == null)
-						return;
-					//   append D to B.
-					gB.appendChild(gD);
-
-					//   append base to D
-					gD.appendChild(base);
-					//   append %head.misc; to D.
-					gD.appendChild(misc);
-				}
-			}
-			// create C and append it to A
-			{
-				// C is a sequence of base, %head.misc;, and E
-				// C: (base, %head.misc;, E)
-				//   create a sequence
-				CMGroupImpl gC = new CMGroupImpl(CMGroup.SEQUENCE, 1, 1);
-				if (gC == null)
-					return;
-				//   append C to A.
-				gA.appendChild(gC);
-
-				//   append base to C
-				gC.appendChild(base);
-				//   append %head.misc; to C
-				gC.appendChild(misc);
-
-				//   create E and append it to C.
-				{
-					// E is a sequence of title and %head.misc;.
-					// E: (title, %head.misc;)
-					//   create a sequence
-					CMGroupImpl gE = new CMGroupImpl(CMGroup.SEQUENCE, 1, 1);
-					if (gE == null)
-						return;
-					//   append E to C.
-					gC.appendChild(gE);
-
-					//   append title to E
-					gE.appendChild(title);
-					//   append %head.misc; to E.
-					gE.appendChild(misc);
-				}
-			}
-		}
-	}
-
-	/**
-	 * Element content.<br>
-	 */
-	public int getContentType() {
-		return CMElementDeclaration.ELEMENT;
-	}
-
-	/**
-	 * Name of complex type definition.
-	 * Each singleton must know its own name.
-	 * All names should be defined in
-	 * {@link <code>ComplexTypeDefinitionFactory</code>} as constants.<br>
-	 * @return java.lang.String
-	 */
-	public String getTypeName() {
-		return ComplexTypeDefinitionFactory.CTYPE_HEAD;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/CtdHtml.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/CtdHtml.java
deleted file mode 100644
index 72bab17..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/CtdHtml.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.wst.html.core.internal.contentmodel.chtml;
-
-
-
-import java.util.Arrays;
-
-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;
-
-/**
- * Complex type definition for <code>HTML</code>.<br>
- * Content Model:
- * HEAD, (FRAMESET|BODY)<br>
- */
-final class CtdHtml extends ComplexTypeDefinition {
-
-	/**
-	 */
-	public CtdHtml(ElementCollection elementCollection) {
-		super(elementCollection);
-		primaryCandidateName = CHTMLNamespace.ElementName.HEAD;
-	}
-
-	/**
-	 * (%html.content;).
-	 * %html.content; is HEAD, (FRAMESET | BODY).
-	 */
-	protected void createContent() {
-		if (content != null)
-			return; // already created.
-		if (collection == null)
-			return;
-
-		// ( )
-		content = new CMGroupImpl(CMGroup.SEQUENCE, 1, 1);
-		if (content == null)
-			return;
-
-		// HEAD
-		CMNode edec = collection.getNamedItem(CHTMLNamespace.ElementName.HEAD);
-		if (edec != null)
-			content.appendChild(edec);
-
-		// ( | )
-		CMGroupImpl group = new CMGroupImpl(CMGroup.CHOICE, 1, 1);
-		content.appendChild(group);
-
-		// FRAMESET, BODY
-		String[] names = {CHTMLNamespace.ElementName.BODY};
-		collection.getDeclarations(group, Arrays.asList(names).iterator());
-	}
-
-	/**
-	 * Element content.
-	 */
-	public int getContentType() {
-		return CMElementDeclaration.ELEMENT;
-	}
-
-	public String getTypeName() {
-		return ComplexTypeDefinitionFactory.CTYPE_HTML;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/CtdInlineContainer.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/CtdInlineContainer.java
deleted file mode 100644
index 973944a..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/CtdInlineContainer.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.core.internal.contentmodel.chtml;
-
-
-
-import org.eclipse.wst.xml.core.internal.contentmodel.CMElementDeclaration;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMGroup;
-
-/**
- * Complex type definition for (%inline;)*.
- */
-final class CtdInlineContainer extends ComplexTypeDefinition {
-
-	/**
-	 * @param elementCollection ElementCollection
-	 */
-	public CtdInlineContainer(ElementCollection elementCollection) {
-		super(elementCollection);
-	}
-
-	/**
-	 * (%inline)*.
-	 */
-	protected void createContent() {
-		if (content != null)
-			return; // already created.
-		if (collection == null)
-			return;
-
-		content = new CMGroupImpl(CMGroup.CHOICE, 0, CMContentImpl.UNBOUNDED);
-		collection.getInline(content);
-	}
-
-	public int getContentType() {
-		return CMElementDeclaration.MIXED;
-	}
-
-	public String getTypeName() {
-		return ComplexTypeDefinitionFactory.CTYPE_INLINE_CONTAINER;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/CtdLiContainer.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/CtdLiContainer.java
deleted file mode 100644
index 8e4716a..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/CtdLiContainer.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.wst.html.core.internal.contentmodel.chtml;
-
-
-
-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;
-
-/**
- * List item container.
- * (LI)+
- */
-final class CtdLiContainer extends ComplexTypeDefinition {
-
-	/**
-	 * @param elemenCollection ElementCollection
-	 */
-	public CtdLiContainer(ElementCollection elementCollection) {
-		super(elementCollection);
-		primaryCandidateName = CHTMLNamespace.ElementName.LI;
-	}
-
-	/**
-	 * (LI)+.
-	 */
-	protected void createContent() {
-		if (content != null)
-			return; // already created.
-		if (collection == null)
-			return;
-
-		// (LI)+
-		content = new CMGroupImpl(CMGroup.SEQUENCE, 1, CMContentImpl.UNBOUNDED);
-		CMNode li = collection.getNamedItem(CHTMLNamespace.ElementName.LI);
-		if (li != null)
-			content.appendChild(li);
-	}
-
-	/**
-	 * ELEMENT content.<br>
-	 * @return int; Should be one of ANY, EMPTY, ELEMENT, MIXED, PCDATA, CDATA,
-	 * those are defined in CMElementDeclaration.
-	 */
-	public int getContentType() {
-		return CMElementDeclaration.ELEMENT;
-	}
-
-	/**
-	 * Name of complex type definition.
-	 * Each singleton must know its own name.
-	 * All names should be defined in
-	 * {@link <code>ComplexTypeDefinitionFactory</code>} as constants.<br>
-	 * @return java.lang.String
-	 */
-	public String getTypeName() {
-		return ComplexTypeDefinitionFactory.CTYPE_LI_CONTAINER;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/CtdOptionContainer.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/CtdOptionContainer.java
deleted file mode 100644
index b1e0a54..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/CtdOptionContainer.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.wst.html.core.internal.contentmodel.chtml;
-
-
-
-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;
-
-/**
- * OPTION container.
- * (OPTION)+
- */
-final class CtdOptionContainer extends ComplexTypeDefinition {
-
-	/**
-	 * @param elementCollection ElementCollection
-	 */
-	public CtdOptionContainer(ElementCollection elementCollection) {
-		super(elementCollection);
-		primaryCandidateName = CHTMLNamespace.ElementName.OPTION;
-	}
-
-	/**
-	 * (OPTION)+.
-	 */
-	protected void createContent() {
-		if (content != null)
-			return; // already created.
-		if (collection == null)
-			return;
-
-		// ( )+
-		content = new CMGroupImpl(CMGroup.SEQUENCE, 1, CMContentImpl.UNBOUNDED);
-		// OPTION
-		CMNode dec = collection.getNamedItem(CHTMLNamespace.ElementName.OPTION);
-		if (dec != null)
-			content.appendChild(dec);
-	}
-
-	/**
-	 * (OPTION)+
-	 * @return int; Should be one of ANY, EMPTY, ELEMENT, MIXED, PCDATA, CDATA,
-	 * those are defined in CMElementDeclaration.
-	 */
-	public int getContentType() {
-		return CMElementDeclaration.ELEMENT;
-	}
-
-	/**
-	 * Name of complex type definition.
-	 * Each singleton must know its own name.
-	 * All names should be defined in
-	 * {@link <code>ComplexTypeDefinitionFactory</code>} as constants.<br>
-	 * @return java.lang.String
-	 */
-	public String getTypeName() {
-		return ComplexTypeDefinitionFactory.CTYPE_OPTION_CONTAINER;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/CtdSelect.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/CtdSelect.java
deleted file mode 100644
index cc0d61e..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/CtdSelect.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
- *******************************************************************************/
-package org.eclipse.wst.html.core.internal.contentmodel.chtml;
-
-
-
-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;
-
-/**
- * for SELECT.
- */
-final class CtdSelect extends ComplexTypeDefinition {
-
-	/**
-	 * @param elementCollection ElementCollection
-	 */
-	public CtdSelect(ElementCollection elementCollection) {
-		super(elementCollection);
-		primaryCandidateName = CHTMLNamespace.ElementName.OPTION;
-	}
-
-	/**
-	 * (OPTGROUP | OPTION)+.
-	 */
-	protected void createContent() {
-		if (content != null)
-			return; // already created.
-		if (collection == null)
-			return;
-
-		// ( | )+
-		content = new CMGroupImpl(CMGroup.CHOICE, 1, CMContentImpl.UNBOUNDED);
-		// OPTION
-		CMNode dec = collection.getNamedItem(CHTMLNamespace.ElementName.OPTION);
-		if (dec != null)
-			content.appendChild(dec);
-	}
-
-	/**
-	 * (OPTGROUP | OPTION)+.
-	 * @return int; Should be one of ANY, EMPTY, ELEMENT, MIXED, PCDATA, CDATA,
-	 * those are defined in CMElementDeclaration.
-	 */
-	public int getContentType() {
-		return CMElementDeclaration.ELEMENT;
-	}
-
-	/**
-	 * @return java.lang.String
-	 */
-	public String getTypeName() {
-		return ComplexTypeDefinitionFactory.CTYPE_SELECT;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/DeclCollection.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/DeclCollection.java
deleted file mode 100644
index 2b56527..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/DeclCollection.java
+++ /dev/null
@@ -1,234 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this 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.core.internal.contentmodel.chtml;
-
-
-
-import java.util.HashMap;
-import java.util.Iterator;
-
-import org.eclipse.wst.xml.core.internal.contentmodel.CMNamedNodeMap;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMNode;
-
-/**
- */
-abstract class DeclCollection implements CMNamedNodeMap {
-
-
-	protected class DualMap {
-		public DualMap() {
-			super();
-		}
-
-		public DualMap(Object[] objects) {
-			super();
-			initialize(objects);
-		}
-
-		public int size() {
-			return table.length;
-		}
-
-		public Object getValue(int key) {
-			if (!isValidIndex(key))
-				return null;
-			return table[key];
-		}
-
-		public int getKey(Object value) {
-			Integer keyObj = (Integer) map.get(value);
-			if (keyObj == null)
-				return ID_UNKNOWN;
-			return keyObj.intValue();
-		}
-
-		protected void initialize(Object[] objects) {
-			if (objects == null)
-				return;
-			table = objects;
-			map = new HashMap();
-			for (int key = 0; key < objects.length; key++) {
-				Object value = table[key];
-				map.put(value, new Integer(key));
-			}
-		}
-
-		private Object[] table = null;
-		private HashMap map = null;
-
-		private boolean isValidIndex(int index) {
-			return index >= 0 && index < table.length;
-		}
-	}
-
-	protected class TolerantStringDualMap extends DualMap {
-		public TolerantStringDualMap(String[] names) {
-			super();
-			Object[] objects = new Object[names.length];
-			for (int i = 0; i < names.length; i++) {
-				objects[i] = makeCanonicalForm(names[i]);
-			}
-			initialize(objects);
-		}
-
-		public int getKey(Object value) {
-			try {
-				String name = (String) value;
-				return super.getKey(makeCanonicalForm(name));
-			}
-			catch (ClassCastException e) {
-				return ID_UNKNOWN;
-			}
-		}
-
-		private String makeCanonicalForm(String raw) {
-			return raw.toUpperCase();
-		}
-	}
-
-	private class DeclIterator implements Iterator {
-		public DeclIterator() {
-			maxid = fDecls.length - 1;
-		}
-
-		public boolean hasNext() {
-			return id < maxid;
-		}
-
-		public Object next() {
-			if (!hasNext())
-				return null;
-			return item(++id);
-		}
-
-		public void remove() { /* nothing should be done. */
-		}
-
-		private int id = -1;
-		private int maxid = -1;
-	}
-
-	CMNode[] fDecls = null;
-	protected final static boolean STRICT_CASE = false;
-	protected final static boolean TOLERANT_CASE = true;
-	protected final static int ID_UNKNOWN = -1;
-	private DualMap fMap = null;
-
-	/**
-	 */
-	public DeclCollection(String[] names, boolean tolerant) {
-		super();
-		fDecls = new CMNode[names.length];
-		if (tolerant) {
-			fMap = new TolerantStringDualMap(names);
-		}
-		else {
-			fMap = new DualMap(names);
-		}
-	}
-
-	/**
-	 * @return org.eclipse.wst.xml.core.internal.contentmodel.CMNode
-	 * @param id int
-	 */
-	protected abstract CMNode create(String name);
-
-	/**
-	 */
-	public CMNamedNodeMap getDeclarations(String[] names) {
-		CMNamedNodeMapImpl map = new CMNamedNodeMapImpl();
-		for (int i = 0; i < names.length; i++) {
-			String name = names[i];
-			CMNode node = getNamedItem(name);
-			if (node == null)
-				continue;
-			map.putNamedItem(name, node);
-		}
-		return map;
-	}
-
-	public void getDeclarations(CMGroupImpl group, Iterator names) {
-		while (names.hasNext()) {
-			String entityName = (String) names.next();
-			CMNode dec = getNamedItem(entityName);
-			if (dec != null)
-				group.appendChild(dec);
-		}
-	}
-
-	/**
-	 * Map name to id.
-	 * @return int
-	 * @param name java.lang.String
-	 */
-	protected int getID(String name) {
-		return fMap.getKey(name);
-	}
-
-	/**
-	 * getLength method
-	 * @return int
-	 */
-	public int getLength() {
-		return fDecls.length;
-	}
-
-	/**
-	 * @return java.lang.String
-	 * @param id int
-	 */
-	protected String getName(int id) {
-		return (String) fMap.getValue(id);
-	}
-
-	/**
-	 * getNamedItem method
-	 * @return CMNode
-	 * @param name java.lang.String
-	 */
-	public CMNode getNamedItem(String name) {
-		int id = getID(name);
-		if (!isValidID(id))
-			return null;
-		return item(id);
-	}
-
-	/**
-	 * @return boolean
-	 * @param id int
-	 */
-	private boolean isValidID(int id) {
-		return id >= 0 && id < fDecls.length;
-	}
-
-	/**
-	 * item method
-	 * @return CMNode
-	 * @param index int
-	 */
-	public CMNode item(int index) {
-		if (!isValidID(index))
-			return null;
-		CMNode decl = fDecls[index];
-		if (decl != null)
-			return decl; // already exist.
-
-		decl = create(getName(index));
-		fDecls[index] = decl;
-		return decl;
-	}
-
-	/**
-	 */
-	public Iterator iterator() {
-		return new DeclIterator();
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/ElementCollection.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/ElementCollection.java
deleted file mode 100644
index bf5ad46..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/ElementCollection.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.wst.html.core.internal.contentmodel.chtml;
-
-
-
-import java.lang.reflect.Field;
-import java.util.Arrays;
-import java.util.Collection;
-import java.util.Vector;
-
-import org.eclipse.wst.xml.core.internal.contentmodel.CMNode;
-
-/**
- * Factory for element declarations.
- */
-final class ElementCollection extends DeclCollection implements org.eclipse.wst.html.core.internal.provisional.HTML40Namespace.ElementName {
-
-
-	// Element IDs
-	private static class Ids {
-		public static final int ID_A = 0;
-		public static final int ID_ADDRESS = 1;
-		public static final int ID_BASE = 2;
-		public static final int ID_BLOCKQUOTE = 3;
-		public static final int ID_BODY = 4;
-		public static final int ID_BR = 5;
-		public static final int ID_CENTER = 6;
-		public static final int ID_DD = 7;
-		public static final int ID_DIR = 8;
-		public static final int ID_DIV = 9;
-		public static final int ID_DL = 10;
-		public static final int ID_DT = 11;
-		public static final int ID_FORM = 12;
-		public static final int ID_H1 = 13;
-		public static final int ID_H2 = 14;
-		public static final int ID_H3 = 15;
-		public static final int ID_H4 = 16;
-		public static final int ID_H5 = 17;
-		public static final int ID_H6 = 18;
-		public static final int ID_HEAD = 19;
-		public static final int ID_HR = 20;
-		public static final int ID_HTML = 21;
-		public static final int ID_IMG = 22;
-		public static final int ID_INPUT = 23;
-		public static final int ID_LI = 24;
-		public static final int ID_MENU = 25;
-		public static final int ID_META = 26;
-		public static final int ID_OL = 27;
-		public static final int ID_OPTION = 28;
-		public static final int ID_P = 29;
-		public static final int ID_PRE = 30;
-		public static final int ID_SELECT = 31;
-		public static final int ID_TEXTAREA = 32;
-		public static final int ID_TITLE = 33;
-		public static final int ID_UL = 34;
-		public static final int ID_SSI_CONFIG = 35;
-		public static final int ID_SSI_ECHO = 36;
-		public static final int ID_SSI_EXEC = 37;
-		public static final int ID_SSI_FSIZE = 38;
-		public static final int ID_SSI_FLASTMOD = 39;
-		public static final int ID_SSI_INCLUDE = 40;
-		public static final int ID_SSI_PRINTENV = 41;
-		public static final int ID_SSI_SET = 42;
-
-		public static int getNumOfIds() {
-			if (numofids != -1)
-				return numofids;
-
-			// NOTE: If the reflection is too slow, this method should
-			// just return the literal value, like 105.
-			// -- 5/25/2001
-			Class clazz = Ids.class;
-			Field[] fields = clazz.getFields();
-			numofids = 0;
-			for (int i = 0; i < fields.length; i++) {
-				String name = fields[i].getName();
-				if (name.startsWith("ID_"))//$NON-NLS-1$
-					numofids++;
-			}
-			return numofids;
-		}
-
-		// chache the result of the reflection.
-		private static int numofids = -1;
-	}
-
-	/** %formctl;. INPUT | SELECT | TEXTAREA */
-	private static final String[] FORMCTL = {INPUT, SELECT, TEXTAREA};
-	/** %phrase;.
-	 * DFN
-	 */
-	private static final String[] PHRASE = {DFN};
-	/** %special;.
-	 * A | IMG | BR
-	 */
-	private static final String[] SPECIAL = {A, IMG, BR};
-	/** %heading;. H[1-6] */
-	private static final String[] HEADING = {H1, H2, H3, H4, H5, H6};
-	/** %list;. UL | OL | DIR | MENU */
-	private static final String[] LIST = {UL, OL, DIR, MENU};
-	/** %preformatted;. PRE */
-	private static final String[] PREFORMATTED = {PRE};
-	private AttributeCollection attributeCollection = null;
-	private static String[] names = null;
-
-	static {
-		names = new String[Ids.getNumOfIds()];
-		names[Ids.ID_A] = A;
-		names[Ids.ID_ADDRESS] = ADDRESS;
-		names[Ids.ID_BASE] = BASE;
-		names[Ids.ID_BLOCKQUOTE] = BLOCKQUOTE;
-		names[Ids.ID_BODY] = BODY;
-		names[Ids.ID_BR] = BR;
-		names[Ids.ID_CENTER] = CENTER;
-		names[Ids.ID_DD] = DD;
-		names[Ids.ID_DIR] = DIR;
-		names[Ids.ID_DIV] = DIV;
-		names[Ids.ID_DL] = DL;
-		names[Ids.ID_DT] = DT;
-		names[Ids.ID_FORM] = FORM;
-		names[Ids.ID_H1] = H1;
-		names[Ids.ID_H2] = H2;
-		names[Ids.ID_H3] = H3;
-		names[Ids.ID_H4] = H4;
-		names[Ids.ID_H5] = H5;
-		names[Ids.ID_H6] = H6;
-		names[Ids.ID_HEAD] = HEAD;
-		names[Ids.ID_HR] = HR;
-		names[Ids.ID_HTML] = HTML;
-		names[Ids.ID_IMG] = IMG;
-		names[Ids.ID_INPUT] = INPUT;
-		names[Ids.ID_LI] = LI;
-		names[Ids.ID_MENU] = MENU;
-		names[Ids.ID_META] = META;
-		names[Ids.ID_OL] = OL;
-		names[Ids.ID_OPTION] = OPTION;
-		names[Ids.ID_P] = P;
-		names[Ids.ID_PRE] = PRE;
-		names[Ids.ID_SELECT] = SELECT;
-		names[Ids.ID_TEXTAREA] = TEXTAREA;
-		names[Ids.ID_TITLE] = TITLE;
-		names[Ids.ID_UL] = UL;
-		names[Ids.ID_SSI_CONFIG] = SSI_CONFIG;
-		names[Ids.ID_SSI_ECHO] = SSI_ECHO;
-		names[Ids.ID_SSI_EXEC] = SSI_EXEC;
-		names[Ids.ID_SSI_FSIZE] = SSI_FSIZE;
-		names[Ids.ID_SSI_FLASTMOD] = SSI_FLASTMOD;
-		names[Ids.ID_SSI_INCLUDE] = SSI_INCLUDE;
-		names[Ids.ID_SSI_PRINTENV] = SSI_PRINTENV;
-		names[Ids.ID_SSI_SET] = SSI_SET;
-	}
-
-	/**
-	 */
-	public ElementCollection(AttributeCollection collection) {
-		super(names, TOLERANT_CASE);
-		attributeCollection = collection;
-	}
-
-	/**
-	 * Actually creates HTMLElementDeclaration instance.
-	 * @return HTMLElementDeclaration
-	 */
-	protected CMNode create(String elementName) {
-		HTMLElemDeclImpl edec = null;
-
-		if (elementName.equalsIgnoreCase(A)) {
-			edec = new HedA(this);
-
-		}
-		else if (elementName.equalsIgnoreCase(ADDRESS)) {
-			edec = new HedADDRESS(this);
-
-		}
-		else if (elementName.equalsIgnoreCase(BASE)) {
-			edec = new HedBASE(this);
-
-		}
-		else if (elementName.equalsIgnoreCase(BLOCKQUOTE)) {
-			edec = new HedBLOCKQUOTE(this);
-
-		}
-		else if (elementName.equalsIgnoreCase(BODY)) {
-			edec = new HedBODY(this);
-
-		}
-		else if (elementName.equalsIgnoreCase(BR)) {
-			edec = new HedBR(this);
-
-		}
-		else if (elementName.equalsIgnoreCase(CENTER)) {
-			edec = new HedCENTER(this);
-
-		}
-		else if (elementName.equalsIgnoreCase(DD)) {
-			edec = new HedDD(this);
-
-		}
-		else if (elementName.equalsIgnoreCase(DIR)) {
-			edec = new HedMENU(DIR, this);
-
-		}
-		else if (elementName.equalsIgnoreCase(DIV)) {
-			edec = new HedDIV(this);
-
-		}
-		else if (elementName.equalsIgnoreCase(DL)) {
-			edec = new HedDL(this);
-
-		}
-		else if (elementName.equalsIgnoreCase(DT)) {
-			edec = new HedDT(this);
-
-		}
-		else if (elementName.equalsIgnoreCase(FORM)) {
-			edec = new HedFORM(this);
-
-		}
-		else if (elementName.equalsIgnoreCase(H1)) {
-			edec = new HedHeading(H1, this);
-
-		}
-		else if (elementName.equalsIgnoreCase(H2)) {
-			edec = new HedHeading(H2, this);
-
-		}
-		else if (elementName.equalsIgnoreCase(H3)) {
-			edec = new HedHeading(H3, this);
-
-		}
-		else if (elementName.equalsIgnoreCase(H4)) {
-			edec = new HedHeading(H4, this);
-
-		}
-		else if (elementName.equalsIgnoreCase(H5)) {
-			edec = new HedHeading(H5, this);
-
-		}
-		else if (elementName.equalsIgnoreCase(H6)) {
-			edec = new HedHeading(H6, this);
-
-		}
-		else if (elementName.equalsIgnoreCase(HEAD)) {
-			edec = new HedHEAD(this);
-
-		}
-		else if (elementName.equalsIgnoreCase(HR)) {
-			edec = new HedHR(this);
-
-		}
-		else if (elementName.equalsIgnoreCase(HTML)) {
-			edec = new HedHTML(this);
-
-		}
-		else if (elementName.equalsIgnoreCase(IMG)) {
-			edec = new HedIMG(this);
-
-		}
-		else if (elementName.equalsIgnoreCase(INPUT)) {
-			edec = new HedINPUT(this);
-
-		}
-		else if (elementName.equalsIgnoreCase(LI)) {
-			edec = new HedLI(this);
-
-		}
-		else if (elementName.equalsIgnoreCase(MENU)) {
-			edec = new HedMENU(MENU, this);
-
-		}
-		else if (elementName.equalsIgnoreCase(META)) {
-			edec = new HedMETA(this);
-
-		}
-		else if (elementName.equalsIgnoreCase(OL)) {
-			edec = new HedOL(this);
-
-		}
-		else if (elementName.equalsIgnoreCase(OPTION)) {
-			edec = new HedOPTION(this);
-
-		}
-		else if (elementName.equalsIgnoreCase(P)) {
-			edec = new HedP(this);
-
-		}
-		else if (elementName.equalsIgnoreCase(PRE)) {
-			edec = new HedPRE(this);
-
-		}
-		else if (elementName.equalsIgnoreCase(SELECT)) {
-			edec = new HedSELECT(this);
-
-		}
-		else if (elementName.equalsIgnoreCase(TEXTAREA)) {
-			edec = new HedTEXTAREA(this);
-
-		}
-		else if (elementName.equalsIgnoreCase(TITLE)) {
-			edec = new HedTITLE(this);
-
-		}
-		else if (elementName.equalsIgnoreCase(UL)) {
-			edec = new HedUL(this);
-
-		}
-		else if (elementName.equalsIgnoreCase(SSI_CONFIG)) {
-			edec = new HedSSIConfig(this);
-
-		}
-		else if (elementName.equalsIgnoreCase(SSI_ECHO)) {
-			edec = new HedSSIEcho(this);
-
-		}
-		else if (elementName.equalsIgnoreCase(SSI_EXEC)) {
-			edec = new HedSSIExec(this);
-
-		}
-		else if (elementName.equalsIgnoreCase(SSI_FSIZE)) {
-			edec = new HedSSIFsize(this);
-
-		}
-		else if (elementName.equalsIgnoreCase(SSI_FLASTMOD)) {
-			edec = new HedSSIFlastmod(this);
-
-		}
-		else if (elementName.equalsIgnoreCase(SSI_INCLUDE)) {
-			edec = new HedSSIInclude(this);
-
-		}
-		else if (elementName.equalsIgnoreCase(SSI_PRINTENV)) {
-			edec = new HedSSIPrintenv(this);
-
-		}
-		else if (elementName.equalsIgnoreCase(SSI_SET)) {
-			edec = new HedSSISet(this);
-
-		} // unknown
-		else {
-			// NOTE: We don't define the UNKNOWN element declaration.
-			// <code>null</code> for a declaration is a sign of
-			// the target element is unknown.
-			// -- 3/9/2001
-			edec = null;
-		}
-		return edec;
-	}
-
-	public AttributeCollection getAttributeCollection() {
-		return attributeCollection;
-	}
-
-	/**
-	 */
-	public final Collection getNamesOfBlock() {
-		// P | %list | %preformatted | DL | DIV | CENTER | BLOCKQUOTE | FORM | HR
-		String[] blockMisc = {P, DL, DIV, CENTER, BLOCKQUOTE, FORM, HR,};
-		Vector blockNames = new Vector(Arrays.asList(blockMisc));
-		// %heading;
-		blockNames.addAll(Arrays.asList(HEADING));
-		// %list;
-		blockNames.addAll(Arrays.asList(LIST));
-		// %preformatted;
-		blockNames.addAll(Arrays.asList(PREFORMATTED));
-
-		return blockNames;
-	}
-
-	/**
-	 * %block;.
-	 * %block; is:
-	 * P | %heading; | %list; | %preformatted; | DL | DIV | CENTER |
-	 * NOSCRIPT | NOFRAMES | BLOCKQUOTE | FORM | ISINDEX | HR |
-	 * TABLE | FIELDSET | ADDRESS.<br>
-	 * @param group CMGroupImpl Return values.
-	 */
-	public final void getBlock(CMGroupImpl group) {
-		if (group == null)
-			return;
-		getDeclarations(group, getNamesOfBlock().iterator());
-	}
-
-	/**
-	 * Create element declarations and store them
-	 * into a <code>CMGroupImpl</code> instance.
-	 * @param group CMGroupImpl Return values.
-	 */
-	public final void getFlow(CMGroupImpl group) {
-		if (group == null)
-			return;
-		getBlock(group);
-		getInline(group);
-	}
-
-	/**
-	 * Create element declarations and store them into a <code>CMGroupImpl</code>
-	 * instance.<br>
-	 * @param group CMGroupImpl Return values.
-	 */
-	public final void getFontstyle(CMGroupImpl group) {
-		return;
-	}
-
-	/**
-	 * Create element declarations and store them into a <code>CMGroupImpl</code>
-	 * instance.<br>
-	 * @param group CMGroupImpl Return values.
-	 */
-	public final void getFormctrl(CMGroupImpl group) {
-		if (group == null)
-			return;
-		getDeclarations(group, Arrays.asList(FORMCTL).iterator());
-	}
-
-	/**
-	 * %heading;.
-	 * @param group CMGroupImpl Return values.
-	 */
-	public final void getHeading(CMGroupImpl group) {
-		if (group == null)
-			return;
-
-		getDeclarations(group, Arrays.asList(HEADING).iterator());
-	}
-
-	/**
-	 * Create element declarations and store them
-	 * into a <code>CMGroupImpl</code> instance.
-	 * @param group CMGroupImpl Return values.
-	 */
-	public final void getInline(CMGroupImpl group) {
-		if (group == null)
-			return;
-		getFontstyle(group);
-		getPhrase(group);
-		getSpecial(group);
-		getFormctrl(group);
-	}
-
-	/**
-	 * %list;.
-	 * @param group CMGroupImpl Return values.
-	 */
-	public final void getList(CMGroupImpl group) {
-		if (group == null)
-			return;
-
-		getDeclarations(group, Arrays.asList(LIST).iterator());
-	}
-
-	/**
-	 * Create element declarations and store them into a <code>CMGroupImpl</code>
-	 * instance.<br>
-	 * @param group CMGroupImpl Return values.
-	 */
-	public final void getPhrase(CMGroupImpl group) {
-		if (group == null)
-			return;
-		getDeclarations(group, Arrays.asList(PHRASE).iterator());
-	}
-
-	/**
-	 * %preformatted;
-	 * @param group CMGroupImpl Return values.
-	 */
-	public final void getPreformatted(CMGroupImpl group) {
-		if (group == null)
-			return;
-
-		getDeclarations(group, Arrays.asList(PREFORMATTED).iterator());
-	}
-
-	/**
-	 * Create element declarations and store them into a <code>CMGroupImpl</code>
-	 * instance.<br>
-	 * @param group CMGroupImpl Return values.
-	 */
-	public final void getSpecial(CMGroupImpl group) {
-		if (group == null)
-			return;
-		getDeclarations(group, Arrays.asList(SPECIAL).iterator());
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/EntityCollection.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/EntityCollection.java
deleted file mode 100644
index 7b44593..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/EntityCollection.java
+++ /dev/null
@@ -1,837 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this 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.core.internal.contentmodel.chtml;
-
-
-
-import java.lang.reflect.Field;
-
-import org.eclipse.wst.xml.core.internal.contentmodel.CMNode;
-
-/**
- * Factory for entity declarations.
- */
-final class EntityCollection extends DeclCollection implements org.eclipse.wst.html.core.internal.provisional.HTML40Namespace.EntityName {
-
-
-	private static class Ids {
-		public static final int ID_AACUTE_L = 0;
-		public static final int ID_AACUTE_U = 1;
-		public static final int ID_ACIRC_L = 2;
-		public static final int ID_ACIRC_U = 3;
-		public static final int ID_ACUTE = 4;
-		public static final int ID_AELIG_L = 5;
-		public static final int ID_AELIG_U = 6;
-		public static final int ID_AGRAVE_L = 7;
-		public static final int ID_AGRAVE_U = 8;
-		public static final int ID_ALEFSYM = 9;
-		public static final int ID_ALPHA_L = 10;
-		public static final int ID_ALPHA_U = 11;
-		public static final int ID_AMP = 12;
-		public static final int ID_AND = 13;
-		public static final int ID_ANG = 14;
-		public static final int ID_ARING_L = 15;
-		public static final int ID_ARING_U = 16;
-		public static final int ID_ASYMP = 17;
-		public static final int ID_ATILDE_L = 18;
-		public static final int ID_ATILDE_U = 19;
-		public static final int ID_AUML_L = 20;
-		public static final int ID_AUML_U = 21;
-		public static final int ID_BDQUO = 22;
-		public static final int ID_BETA_L = 23;
-		public static final int ID_BETA_U = 24;
-		public static final int ID_BRVBAR = 25;
-		public static final int ID_BULL = 26;
-		public static final int ID_CAP = 27;
-		public static final int ID_CCEDIL_L = 28;
-		public static final int ID_CCEDIL_U = 29;
-		public static final int ID_CEDIL = 30;
-		public static final int ID_CENT = 31;
-		public static final int ID_CHI_L = 32;
-		public static final int ID_CHI_U = 33;
-		public static final int ID_CIRC = 34;
-		public static final int ID_CLUBS = 35;
-		public static final int ID_CONG = 36;
-		public static final int ID_COPY = 37;
-		public static final int ID_CRARR = 38;
-		public static final int ID_CUP = 39;
-		public static final int ID_CURREN = 40;
-		public static final int ID_DAGGER_L = 41;
-		public static final int ID_DAGGER_U = 42;
-		public static final int ID_DARR_L = 43;
-		public static final int ID_DARR_U = 44;
-		public static final int ID_DEG = 45;
-		public static final int ID_DELTA_L = 46;
-		public static final int ID_DELTA_U = 47;
-		public static final int ID_DIAMS = 48;
-		public static final int ID_DIVIDE = 49;
-		public static final int ID_EACUTE_L = 50;
-		public static final int ID_EACUTE_U = 51;
-		public static final int ID_ECIRC_L = 52;
-		public static final int ID_ECIRC_U = 53;
-		public static final int ID_EGRAVE_L = 54;
-		public static final int ID_EGRAVE_U = 55;
-		public static final int ID_EMPTY = 56;
-		public static final int ID_EMSP = 57;
-		public static final int ID_ENSP = 58;
-		public static final int ID_EPSILON_L = 59;
-		public static final int ID_EPSILON_U = 60;
-		public static final int ID_EQUIV = 61;
-		public static final int ID_ETA_L = 62;
-		public static final int ID_ETA_U = 63;
-		public static final int ID_ETH_L = 64;
-		public static final int ID_ETH_U = 65;
-		public static final int ID_EUML_L = 66;
-		public static final int ID_EUML_U = 67;
-		public static final int ID_EURO = 68;
-		public static final int ID_EXIST = 69;
-		public static final int ID_FNOF = 70;
-		public static final int ID_FORALL = 71;
-		public static final int ID_FRAC12 = 72;
-		public static final int ID_FRAC14 = 73;
-		public static final int ID_FRAC34 = 74;
-		public static final int ID_FRASL = 75;
-		public static final int ID_GAMMA_L = 76;
-		public static final int ID_GAMMA_U = 77;
-		public static final int ID_GE = 78;
-		public static final int ID_GT = 79;
-		public static final int ID_HARR_L = 80;
-		public static final int ID_HARR_U = 81;
-		public static final int ID_HEARTS = 82;
-		public static final int ID_HELLIP = 83;
-		public static final int ID_IACUTE_L = 84;
-		public static final int ID_IACUTE_U = 85;
-		public static final int ID_ICIRC_L = 86;
-		public static final int ID_ICIRC_U = 87;
-		public static final int ID_IEXCL = 88;
-		public static final int ID_IGRAVE_L = 89;
-		public static final int ID_IGRAVE_U = 90;
-		public static final int ID_IMAGE = 91;
-		public static final int ID_INFIN = 92;
-		public static final int ID_INT = 93;
-		public static final int ID_IOTA_L = 94;
-		public static final int ID_IOTA_U = 95;
-		public static final int ID_IQUEST = 96;
-		public static final int ID_ISIN = 97;
-		public static final int ID_IUML_L = 98;
-		public static final int ID_IUML_U = 99;
-		public static final int ID_KAPPA_L = 100;
-		public static final int ID_KAPPA_U = 101;
-		public static final int ID_LAMBDA_L = 102;
-		public static final int ID_LAMBDA_U = 103;
-		public static final int ID_LANG = 104;
-		public static final int ID_LAQUO = 105;
-		public static final int ID_LARR_L = 106;
-		public static final int ID_LARR_U = 107;
-		public static final int ID_LCEIL = 108;
-		public static final int ID_LDQUO = 109;
-		public static final int ID_LE = 110;
-		public static final int ID_LFLOOR = 111;
-		public static final int ID_LOWAST = 112;
-		public static final int ID_LOZ = 113;
-		public static final int ID_LRM = 114;
-		public static final int ID_LSAQUO = 115;
-		public static final int ID_LSQUO = 116;
-		public static final int ID_LT = 117;
-		public static final int ID_MACR = 118;
-		public static final int ID_MDASH = 119;
-		public static final int ID_MICRO = 120;
-		public static final int ID_MIDDOT = 121;
-		public static final int ID_MINUS = 122;
-		public static final int ID_MU_L = 123;
-		public static final int ID_MU_U = 124;
-		public static final int ID_NABLA = 125;
-		public static final int ID_NBSP = 126;
-		public static final int ID_NDASH = 127;
-		public static final int ID_NE = 128;
-		public static final int ID_NI = 129;
-		public static final int ID_NOT = 130;
-		public static final int ID_NOTIN = 131;
-		public static final int ID_NSUB = 132;
-		public static final int ID_NTILDE_L = 133;
-		public static final int ID_NTILDE_U = 134;
-		public static final int ID_NU_L = 135;
-		public static final int ID_NU_U = 136;
-		public static final int ID_OACUTE_L = 137;
-		public static final int ID_OACUTE_U = 138;
-		public static final int ID_OCIRC_L = 139;
-		public static final int ID_OCIRC_U = 140;
-		public static final int ID_OELIG_L = 141;
-		public static final int ID_OELIG_U = 142;
-		public static final int ID_OGRAVE_L = 143;
-		public static final int ID_OGRAVE_U = 144;
-		public static final int ID_OLINE = 145;
-		public static final int ID_OMEGA_L = 146;
-		public static final int ID_OMEGA_U = 147;
-		public static final int ID_OMICRON_L = 148;
-		public static final int ID_OMICRON_U = 149;
-		public static final int ID_OPLUS = 150;
-		public static final int ID_OR = 151;
-		public static final int ID_ORDF = 152;
-		public static final int ID_ORDM = 153;
-		public static final int ID_OSLASH_L = 154;
-		public static final int ID_OSLASH_U = 155;
-		public static final int ID_OTILDE_L = 156;
-		public static final int ID_OTILDE_U = 157;
-		public static final int ID_OTIMES = 158;
-		public static final int ID_OUML_L = 159;
-		public static final int ID_OUML_U = 160;
-		public static final int ID_PARA = 161;
-		public static final int ID_PART = 162;
-		public static final int ID_PERMIL = 163;
-		public static final int ID_PERP = 164;
-		public static final int ID_PHI_L = 165;
-		public static final int ID_PHI_U = 166;
-		public static final int ID_PIV = 167;
-		public static final int ID_PI_L = 168;
-		public static final int ID_PI_U = 169;
-		public static final int ID_PLUSMN = 170;
-		public static final int ID_POUND = 171;
-		public static final int ID_PRIME_L = 172;
-		public static final int ID_PRIME_U = 173;
-		public static final int ID_PROD = 174;
-		public static final int ID_PROP = 175;
-		public static final int ID_PSI_L = 176;
-		public static final int ID_PSI_U = 177;
-		public static final int ID_QUOT = 178;
-		public static final int ID_RADIC = 179;
-		public static final int ID_RANG = 180;
-		public static final int ID_RAQUO = 181;
-		public static final int ID_RARR_L = 182;
-		public static final int ID_RARR_U = 183;
-		public static final int ID_RCEIL = 184;
-		public static final int ID_RDQUO = 185;
-		public static final int ID_REAL = 186;
-		public static final int ID_REG = 187;
-		public static final int ID_RFLOOR = 188;
-		public static final int ID_RHO_L = 189;
-		public static final int ID_RHO_U = 190;
-		public static final int ID_RLM = 191;
-		public static final int ID_RSAQUO = 192;
-		public static final int ID_RSQUO = 193;
-		public static final int ID_SBQUO = 194;
-		public static final int ID_SCARON_L = 195;
-		public static final int ID_SCARON_U = 196;
-		public static final int ID_SDOT = 197;
-		public static final int ID_SECT = 198;
-		public static final int ID_SHY = 199;
-		public static final int ID_SIGMAF = 200;
-		public static final int ID_SIGMA_L = 201;
-		public static final int ID_SIGMA_U = 202;
-		public static final int ID_SIM = 203;
-		public static final int ID_SPADES = 204;
-		public static final int ID_SUB = 205;
-		public static final int ID_SUBE = 206;
-		public static final int ID_SUM = 207;
-		public static final int ID_SUP = 208;
-		public static final int ID_SUP1 = 209;
-		public static final int ID_SUP2 = 210;
-		public static final int ID_SUP3 = 211;
-		public static final int ID_SUPE = 212;
-		public static final int ID_SZLIG = 213;
-		public static final int ID_TAU_L = 214;
-		public static final int ID_TAU_U = 215;
-		public static final int ID_THERE4 = 216;
-		public static final int ID_THETASYM = 217;
-		public static final int ID_THETA_L = 218;
-		public static final int ID_THETA_U = 219;
-		public static final int ID_THINSP = 220;
-		public static final int ID_THORN_L = 221;
-		public static final int ID_THORN_U = 222;
-		public static final int ID_TILDE = 223;
-		public static final int ID_TIMES = 224;
-		public static final int ID_TRADE = 225;
-		public static final int ID_UACUTE_L = 226;
-		public static final int ID_UACUTE_U = 227;
-		public static final int ID_UARR_L = 228;
-		public static final int ID_UARR_U = 229;
-		public static final int ID_UCIRC_L = 230;
-		public static final int ID_UCIRC_U = 231;
-		public static final int ID_UGRAVE_L = 232;
-		public static final int ID_UGRAVE_U = 233;
-		public static final int ID_UML = 234;
-		public static final int ID_UPSIH = 235;
-		public static final int ID_UPSILON_L = 236;
-		public static final int ID_UPSILON_U = 237;
-		public static final int ID_UUML_L = 238;
-		public static final int ID_UUML_U = 239;
-		public static final int ID_WEIERP = 240;
-		public static final int ID_XI_L = 241;
-		public static final int ID_XI_U = 242;
-		public static final int ID_YACUTE_L = 243;
-		public static final int ID_YACUTE_U = 244;
-		public static final int ID_YEN = 245;
-		public static final int ID_YUML_L = 246;
-		public static final int ID_YUML_U = 247;
-		public static final int ID_ZETA_L = 248;
-		public static final int ID_ZETA_U = 249;
-		public static final int ID_ZWJ = 250;
-		public static final int ID_ZWNJ = 251;
-
-		public static int getNumOfIds() {
-			if (numofids != -1)
-				return numofids;
-
-			// NOTE: If the reflection is too slow, this method should
-			// just return the literal value, like 252.
-			// -- 5/24/2001
-			Class clazz = Ids.class;
-			Field[] fields = clazz.getFields();
-			numofids = 0;
-			for (int i = 0; i < fields.length; i++) {
-				String name = fields[i].getName();
-				if (name.startsWith("ID_"))//$NON-NLS-1$
-					numofids++;
-			}
-			return numofids;
-		}
-
-		// chache the result of the reflection.
-		private static int numofids = -1;
-	}
-
-	private static String[] names = null;
-
-	static {
-		names = new String[Ids.getNumOfIds()];
-		names[Ids.ID_AACUTE_L] = AACUTE_L;
-		names[Ids.ID_AACUTE_U] = AACUTE_U;
-		names[Ids.ID_ACIRC_L] = ACIRC_L;
-		names[Ids.ID_ACIRC_U] = ACIRC_U;
-		names[Ids.ID_ACUTE] = ACUTE;
-		names[Ids.ID_AELIG_L] = AELIG_L;
-		names[Ids.ID_AELIG_U] = AELIG_U;
-		names[Ids.ID_AGRAVE_L] = AGRAVE_L;
-		names[Ids.ID_AGRAVE_U] = AGRAVE_U;
-		names[Ids.ID_ALEFSYM] = ALEFSYM;
-		names[Ids.ID_ALPHA_L] = ALPHA_L;
-		names[Ids.ID_ALPHA_U] = ALPHA_U;
-		names[Ids.ID_AMP] = AMP;
-		names[Ids.ID_AND] = AND;
-		names[Ids.ID_ANG] = ANG;
-		names[Ids.ID_ARING_L] = ARING_L;
-		names[Ids.ID_ARING_U] = ARING_U;
-		names[Ids.ID_ASYMP] = ASYMP;
-		names[Ids.ID_ATILDE_L] = ATILDE_L;
-		names[Ids.ID_ATILDE_U] = ATILDE_U;
-		names[Ids.ID_AUML_L] = AUML_L;
-		names[Ids.ID_AUML_U] = AUML_U;
-		names[Ids.ID_BDQUO] = BDQUO;
-		names[Ids.ID_BETA_L] = BETA_L;
-		names[Ids.ID_BETA_U] = BETA_U;
-		names[Ids.ID_BRVBAR] = BRVBAR;
-		names[Ids.ID_BULL] = BULL;
-		names[Ids.ID_CAP] = CAP;
-		names[Ids.ID_CCEDIL_L] = CCEDIL_L;
-		names[Ids.ID_CCEDIL_U] = CCEDIL_U;
-		names[Ids.ID_CEDIL] = CEDIL;
-		names[Ids.ID_CENT] = CENT;
-		names[Ids.ID_CHI_L] = CHI_L;
-		names[Ids.ID_CHI_U] = CHI_U;
-		names[Ids.ID_CIRC] = CIRC;
-		names[Ids.ID_CLUBS] = CLUBS;
-		names[Ids.ID_CONG] = CONG;
-		names[Ids.ID_COPY] = COPY;
-		names[Ids.ID_CRARR] = CRARR;
-		names[Ids.ID_CUP] = CUP;
-		names[Ids.ID_CURREN] = CURREN;
-		names[Ids.ID_DAGGER_L] = DAGGER_L;
-		names[Ids.ID_DAGGER_U] = DAGGER_U;
-		names[Ids.ID_DARR_L] = DARR_L;
-		names[Ids.ID_DARR_U] = DARR_U;
-		names[Ids.ID_DEG] = DEG;
-		names[Ids.ID_DELTA_L] = DELTA_L;
-		names[Ids.ID_DELTA_U] = DELTA_U;
-		names[Ids.ID_DIAMS] = DIAMS;
-		names[Ids.ID_DIVIDE] = DIVIDE;
-		names[Ids.ID_EACUTE_L] = EACUTE_L;
-		names[Ids.ID_EACUTE_U] = EACUTE_U;
-		names[Ids.ID_ECIRC_L] = ECIRC_L;
-		names[Ids.ID_ECIRC_U] = ECIRC_U;
-		names[Ids.ID_EGRAVE_L] = EGRAVE_L;
-		names[Ids.ID_EGRAVE_U] = EGRAVE_U;
-		names[Ids.ID_EMPTY] = EMPTY;
-		names[Ids.ID_EMSP] = EMSP;
-		names[Ids.ID_ENSP] = ENSP;
-		names[Ids.ID_EPSILON_L] = EPSILON_L;
-		names[Ids.ID_EPSILON_U] = EPSILON_U;
-		names[Ids.ID_EQUIV] = EQUIV;
-		names[Ids.ID_ETA_L] = ETA_L;
-		names[Ids.ID_ETA_U] = ETA_U;
-		names[Ids.ID_ETH_L] = ETH_L;
-		names[Ids.ID_ETH_U] = ETH_U;
-		names[Ids.ID_EUML_L] = EUML_L;
-		names[Ids.ID_EUML_U] = EUML_U;
-		names[Ids.ID_EURO] = EURO;
-		names[Ids.ID_EXIST] = EXIST;
-		names[Ids.ID_FNOF] = FNOF;
-		names[Ids.ID_FORALL] = FORALL;
-		names[Ids.ID_FRAC12] = FRAC12;
-		names[Ids.ID_FRAC14] = FRAC14;
-		names[Ids.ID_FRAC34] = FRAC34;
-		names[Ids.ID_FRASL] = FRASL;
-		names[Ids.ID_GAMMA_L] = GAMMA_L;
-		names[Ids.ID_GAMMA_U] = GAMMA_U;
-		names[Ids.ID_GE] = GE;
-		names[Ids.ID_GT] = GT;
-		names[Ids.ID_HARR_L] = HARR_L;
-		names[Ids.ID_HARR_U] = HARR_U;
-		names[Ids.ID_HEARTS] = HEARTS;
-		names[Ids.ID_HELLIP] = HELLIP;
-		names[Ids.ID_IACUTE_L] = IACUTE_L;
-		names[Ids.ID_IACUTE_U] = IACUTE_U;
-		names[Ids.ID_ICIRC_L] = ICIRC_L;
-		names[Ids.ID_ICIRC_U] = ICIRC_U;
-		names[Ids.ID_IEXCL] = IEXCL;
-		names[Ids.ID_IGRAVE_L] = IGRAVE_L;
-		names[Ids.ID_IGRAVE_U] = IGRAVE_U;
-		names[Ids.ID_IMAGE] = IMAGE;
-		names[Ids.ID_INFIN] = INFIN;
-		names[Ids.ID_INT] = INT;
-		names[Ids.ID_IOTA_L] = IOTA_L;
-		names[Ids.ID_IOTA_U] = IOTA_U;
-		names[Ids.ID_IQUEST] = IQUEST;
-		names[Ids.ID_ISIN] = ISIN;
-		names[Ids.ID_IUML_L] = IUML_L;
-		names[Ids.ID_IUML_U] = IUML_U;
-		names[Ids.ID_KAPPA_L] = KAPPA_L;
-		names[Ids.ID_KAPPA_U] = KAPPA_U;
-		names[Ids.ID_LAMBDA_L] = LAMBDA_L;
-		names[Ids.ID_LAMBDA_U] = LAMBDA_U;
-		names[Ids.ID_LANG] = LANG;
-		names[Ids.ID_LAQUO] = LAQUO;
-		names[Ids.ID_LARR_L] = LARR_L;
-		names[Ids.ID_LARR_U] = LARR_U;
-		names[Ids.ID_LCEIL] = LCEIL;
-		names[Ids.ID_LDQUO] = LDQUO;
-		names[Ids.ID_LE] = LE;
-		names[Ids.ID_LFLOOR] = LFLOOR;
-		names[Ids.ID_LOWAST] = LOWAST;
-		names[Ids.ID_LOZ] = LOZ;
-		names[Ids.ID_LRM] = LRM;
-		names[Ids.ID_LSAQUO] = LSAQUO;
-		names[Ids.ID_LSQUO] = LSQUO;
-		names[Ids.ID_LT] = LT;
-		names[Ids.ID_MACR] = MACR;
-		names[Ids.ID_MDASH] = MDASH;
-		names[Ids.ID_MICRO] = MICRO;
-		names[Ids.ID_MIDDOT] = MIDDOT;
-		names[Ids.ID_MINUS] = MINUS;
-		names[Ids.ID_MU_L] = MU_L;
-		names[Ids.ID_MU_U] = MU_U;
-		names[Ids.ID_NABLA] = NABLA;
-		names[Ids.ID_NBSP] = NBSP;
-		names[Ids.ID_NDASH] = NDASH;
-		names[Ids.ID_NE] = NE;
-		names[Ids.ID_NI] = NI;
-		names[Ids.ID_NOT] = NOT;
-		names[Ids.ID_NOTIN] = NOTIN;
-		names[Ids.ID_NSUB] = NSUB;
-		names[Ids.ID_NTILDE_L] = NTILDE_L;
-		names[Ids.ID_NTILDE_U] = NTILDE_U;
-		names[Ids.ID_NU_L] = NU_L;
-		names[Ids.ID_NU_U] = NU_U;
-		names[Ids.ID_OACUTE_L] = OACUTE_L;
-		names[Ids.ID_OACUTE_U] = OACUTE_U;
-		names[Ids.ID_OCIRC_L] = OCIRC_L;
-		names[Ids.ID_OCIRC_U] = OCIRC_U;
-		names[Ids.ID_OELIG_L] = OELIG_L;
-		names[Ids.ID_OELIG_U] = OELIG_U;
-		names[Ids.ID_OGRAVE_L] = OGRAVE_L;
-		names[Ids.ID_OGRAVE_U] = OGRAVE_U;
-		names[Ids.ID_OLINE] = OLINE;
-		names[Ids.ID_OMEGA_L] = OMEGA_L;
-		names[Ids.ID_OMEGA_U] = OMEGA_U;
-		names[Ids.ID_OMICRON_L] = OMICRON_L;
-		names[Ids.ID_OMICRON_U] = OMICRON_U;
-		names[Ids.ID_OPLUS] = OPLUS;
-		names[Ids.ID_OR] = OR;
-		names[Ids.ID_ORDF] = ORDF;
-		names[Ids.ID_ORDM] = ORDM;
-		names[Ids.ID_OSLASH_L] = OSLASH_L;
-		names[Ids.ID_OSLASH_U] = OSLASH_U;
-		names[Ids.ID_OTILDE_L] = OTILDE_L;
-		names[Ids.ID_OTILDE_U] = OTILDE_U;
-		names[Ids.ID_OTIMES] = OTIMES;
-		names[Ids.ID_OUML_L] = OUML_L;
-		names[Ids.ID_OUML_U] = OUML_U;
-		names[Ids.ID_PARA] = PARA;
-		names[Ids.ID_PART] = PART;
-		names[Ids.ID_PERMIL] = PERMIL;
-		names[Ids.ID_PERP] = PERP;
-		names[Ids.ID_PHI_L] = PHI_L;
-		names[Ids.ID_PHI_U] = PHI_U;
-		names[Ids.ID_PIV] = PIV;
-		names[Ids.ID_PI_L] = PI_L;
-		names[Ids.ID_PI_U] = PI_U;
-		names[Ids.ID_PLUSMN] = PLUSMN;
-		names[Ids.ID_POUND] = POUND;
-		names[Ids.ID_PRIME_L] = PRIME_L;
-		names[Ids.ID_PRIME_U] = PRIME_U;
-		names[Ids.ID_PROD] = PROD;
-		names[Ids.ID_PROP] = PROP;
-		names[Ids.ID_PSI_L] = PSI_L;
-		names[Ids.ID_PSI_U] = PSI_U;
-		names[Ids.ID_QUOT] = QUOT;
-		names[Ids.ID_RADIC] = RADIC;
-		names[Ids.ID_RANG] = RANG;
-		names[Ids.ID_RAQUO] = RAQUO;
-		names[Ids.ID_RARR_L] = RARR_L;
-		names[Ids.ID_RARR_U] = RARR_U;
-		names[Ids.ID_RCEIL] = RCEIL;
-		names[Ids.ID_RDQUO] = RDQUO;
-		names[Ids.ID_REAL] = REAL;
-		names[Ids.ID_REG] = REG;
-		names[Ids.ID_RFLOOR] = RFLOOR;
-		names[Ids.ID_RHO_L] = RHO_L;
-		names[Ids.ID_RHO_U] = RHO_U;
-		names[Ids.ID_RLM] = RLM;
-		names[Ids.ID_RSAQUO] = RSAQUO;
-		names[Ids.ID_RSQUO] = RSQUO;
-		names[Ids.ID_SBQUO] = SBQUO;
-		names[Ids.ID_SCARON_L] = SCARON_L;
-		names[Ids.ID_SCARON_U] = SCARON_U;
-		names[Ids.ID_SDOT] = SDOT;
-		names[Ids.ID_SECT] = SECT;
-		names[Ids.ID_SHY] = SHY;
-		names[Ids.ID_SIGMAF] = SIGMAF;
-		names[Ids.ID_SIGMA_L] = SIGMA_L;
-		names[Ids.ID_SIGMA_U] = SIGMA_U;
-		names[Ids.ID_SIM] = SIM;
-		names[Ids.ID_SPADES] = SPADES;
-		names[Ids.ID_SUB] = SUB;
-		names[Ids.ID_SUBE] = SUBE;
-		names[Ids.ID_SUM] = SUM;
-		names[Ids.ID_SUP] = SUP;
-		names[Ids.ID_SUP1] = SUP1;
-		names[Ids.ID_SUP2] = SUP2;
-		names[Ids.ID_SUP3] = SUP3;
-		names[Ids.ID_SUPE] = SUPE;
-		names[Ids.ID_SZLIG] = SZLIG;
-		names[Ids.ID_TAU_L] = TAU_L;
-		names[Ids.ID_TAU_U] = TAU_U;
-		names[Ids.ID_THERE4] = THERE4;
-		names[Ids.ID_THETASYM] = THETASYM;
-		names[Ids.ID_THETA_L] = THETA_L;
-		names[Ids.ID_THETA_U] = THETA_U;
-		names[Ids.ID_THINSP] = THINSP;
-		names[Ids.ID_THORN_L] = THORN_L;
-		names[Ids.ID_THORN_U] = THORN_U;
-		names[Ids.ID_TILDE] = TILDE;
-		names[Ids.ID_TIMES] = TIMES;
-		names[Ids.ID_TRADE] = TRADE;
-		names[Ids.ID_UACUTE_L] = UACUTE_L;
-		names[Ids.ID_UACUTE_U] = UACUTE_U;
-		names[Ids.ID_UARR_L] = UARR_L;
-		names[Ids.ID_UARR_U] = UARR_U;
-		names[Ids.ID_UCIRC_L] = UCIRC_L;
-		names[Ids.ID_UCIRC_U] = UCIRC_U;
-		names[Ids.ID_UGRAVE_L] = UGRAVE_L;
-		names[Ids.ID_UGRAVE_U] = UGRAVE_U;
-		names[Ids.ID_UML] = UML;
-		names[Ids.ID_UPSIH] = UPSIH;
-		names[Ids.ID_UPSILON_L] = UPSILON_L;
-		names[Ids.ID_UPSILON_U] = UPSILON_U;
-		names[Ids.ID_UUML_L] = UUML_L;
-		names[Ids.ID_UUML_U] = UUML_U;
-		names[Ids.ID_WEIERP] = WEIERP;
-		names[Ids.ID_XI_L] = XI_L;
-		names[Ids.ID_XI_U] = XI_U;
-		names[Ids.ID_YACUTE_L] = YACUTE_L;
-		names[Ids.ID_YACUTE_U] = YACUTE_U;
-		names[Ids.ID_YEN] = YEN;
-		names[Ids.ID_YUML_L] = YUML_L;
-		names[Ids.ID_YUML_U] = YUML_U;
-		names[Ids.ID_ZETA_L] = ZETA_L;
-		names[Ids.ID_ZETA_U] = ZETA_U;
-		names[Ids.ID_ZWJ] = ZWJ;
-		names[Ids.ID_ZWNJ] = ZWNJ;
-	}
-	private static char[] values = null;
-
-	static {
-		values = new char[Ids.getNumOfIds()];
-		values[Ids.ID_AACUTE_L] = 225;
-		values[Ids.ID_AACUTE_U] = 193;
-		values[Ids.ID_ACIRC_L] = 226;
-		values[Ids.ID_ACIRC_U] = 194;
-		values[Ids.ID_ACUTE] = 180;
-		values[Ids.ID_AELIG_L] = 230;
-		values[Ids.ID_AELIG_U] = 198;
-		values[Ids.ID_AGRAVE_L] = 224;
-		values[Ids.ID_AGRAVE_U] = 192;
-		values[Ids.ID_ALEFSYM] = 8501;
-		values[Ids.ID_ALPHA_L] = 945;
-		values[Ids.ID_ALPHA_U] = 913;
-		values[Ids.ID_AMP] = 38;
-		values[Ids.ID_AND] = 8743;
-		values[Ids.ID_ANG] = 8736;
-		values[Ids.ID_ARING_L] = 229;
-		values[Ids.ID_ARING_U] = 197;
-		values[Ids.ID_ASYMP] = 8776;
-		values[Ids.ID_ATILDE_L] = 227;
-		values[Ids.ID_ATILDE_U] = 195;
-		values[Ids.ID_AUML_L] = 228;
-		values[Ids.ID_AUML_U] = 196;
-		values[Ids.ID_BDQUO] = 8222;
-		values[Ids.ID_BETA_L] = 946;
-		values[Ids.ID_BETA_U] = 914;
-		values[Ids.ID_BRVBAR] = 166;
-		values[Ids.ID_BULL] = 8226;
-		values[Ids.ID_CAP] = 8745;
-		values[Ids.ID_CCEDIL_L] = 231;
-		values[Ids.ID_CCEDIL_U] = 199;
-		values[Ids.ID_CEDIL] = 184;
-		values[Ids.ID_CENT] = 162;
-		values[Ids.ID_CHI_L] = 967;
-		values[Ids.ID_CHI_U] = 935;
-		values[Ids.ID_CIRC] = 710;
-		values[Ids.ID_CLUBS] = 9827;
-		values[Ids.ID_CONG] = 8773;
-		values[Ids.ID_COPY] = 169;
-		values[Ids.ID_CRARR] = 8629;
-		values[Ids.ID_CUP] = 8746;
-		values[Ids.ID_CURREN] = 164;
-		values[Ids.ID_DAGGER_L] = 8224;
-		values[Ids.ID_DAGGER_U] = 8225;
-		values[Ids.ID_DARR_L] = 8595;
-		values[Ids.ID_DARR_U] = 8659;
-		values[Ids.ID_DEG] = 176;
-		values[Ids.ID_DELTA_L] = 948;
-		values[Ids.ID_DELTA_U] = 916;
-		values[Ids.ID_DIAMS] = 9830;
-		values[Ids.ID_DIVIDE] = 247;
-		values[Ids.ID_EACUTE_L] = 233;
-		values[Ids.ID_EACUTE_U] = 201;
-		values[Ids.ID_ECIRC_L] = 234;
-		values[Ids.ID_ECIRC_U] = 202;
-		values[Ids.ID_EGRAVE_L] = 232;
-		values[Ids.ID_EGRAVE_U] = 200;
-		values[Ids.ID_EMPTY] = 8709;
-		values[Ids.ID_EMSP] = 8195;
-		values[Ids.ID_ENSP] = 8194;
-		values[Ids.ID_EPSILON_L] = 949;
-		values[Ids.ID_EPSILON_U] = 917;
-		values[Ids.ID_EQUIV] = 8801;
-		values[Ids.ID_ETA_L] = 951;
-		values[Ids.ID_ETA_U] = 919;
-		values[Ids.ID_ETH_L] = 240;
-		values[Ids.ID_ETH_U] = 208;
-		values[Ids.ID_EUML_L] = 235;
-		values[Ids.ID_EUML_U] = 203;
-		values[Ids.ID_EURO] = 8364;
-		values[Ids.ID_EXIST] = 8707;
-		values[Ids.ID_FNOF] = 402;
-		values[Ids.ID_FORALL] = 8704;
-		values[Ids.ID_FRAC12] = 189;
-		values[Ids.ID_FRAC14] = 188;
-		values[Ids.ID_FRAC34] = 190;
-		values[Ids.ID_FRASL] = 8260;
-		values[Ids.ID_GAMMA_L] = 947;
-		values[Ids.ID_GAMMA_U] = 915;
-		values[Ids.ID_GE] = 8805;
-		values[Ids.ID_GT] = 62;
-		values[Ids.ID_HARR_L] = 8596;
-		values[Ids.ID_HARR_U] = 8660;
-		values[Ids.ID_HEARTS] = 9829;
-		values[Ids.ID_HELLIP] = 8230;
-		values[Ids.ID_IACUTE_L] = 237;
-		values[Ids.ID_IACUTE_U] = 205;
-		values[Ids.ID_ICIRC_L] = 238;
-		values[Ids.ID_ICIRC_U] = 206;
-		values[Ids.ID_IEXCL] = 161;
-		values[Ids.ID_IGRAVE_L] = 236;
-		values[Ids.ID_IGRAVE_U] = 204;
-		values[Ids.ID_IMAGE] = 8465;
-		values[Ids.ID_INFIN] = 8734;
-		values[Ids.ID_INT] = 8747;
-		values[Ids.ID_IOTA_L] = 953;
-		values[Ids.ID_IOTA_U] = 921;
-		values[Ids.ID_IQUEST] = 191;
-		values[Ids.ID_ISIN] = 8712;
-		values[Ids.ID_IUML_L] = 239;
-		values[Ids.ID_IUML_U] = 207;
-		values[Ids.ID_KAPPA_L] = 954;
-		values[Ids.ID_KAPPA_U] = 922;
-		values[Ids.ID_LAMBDA_L] = 955;
-		values[Ids.ID_LAMBDA_U] = 923;
-		values[Ids.ID_LANG] = 9001;
-		values[Ids.ID_LAQUO] = 171;
-		values[Ids.ID_LARR_L] = 8592;
-		values[Ids.ID_LARR_U] = 8656;
-		values[Ids.ID_LCEIL] = 8968;
-		values[Ids.ID_LDQUO] = 8220;
-		values[Ids.ID_LE] = 8804;
-		values[Ids.ID_LFLOOR] = 8970;
-		values[Ids.ID_LOWAST] = 8727;
-		values[Ids.ID_LOZ] = 9674;
-		values[Ids.ID_LRM] = 8206;
-		values[Ids.ID_LSAQUO] = 8249;
-		values[Ids.ID_LSQUO] = 8216;
-		values[Ids.ID_LT] = 60;
-		values[Ids.ID_MACR] = 175;
-		values[Ids.ID_MDASH] = 8212;
-		values[Ids.ID_MICRO] = 181;
-		values[Ids.ID_MIDDOT] = 183;
-		values[Ids.ID_MINUS] = 8722;
-		values[Ids.ID_MU_L] = 956;
-		values[Ids.ID_MU_U] = 924;
-		values[Ids.ID_NABLA] = 8711;
-		values[Ids.ID_NBSP] = 160;
-		values[Ids.ID_NDASH] = 8211;
-		values[Ids.ID_NE] = 8800;
-		values[Ids.ID_NI] = 8715;
-		values[Ids.ID_NOT] = 172;
-		values[Ids.ID_NOTIN] = 8713;
-		values[Ids.ID_NSUB] = 8836;
-		values[Ids.ID_NTILDE_L] = 241;
-		values[Ids.ID_NTILDE_U] = 209;
-		values[Ids.ID_NU_L] = 957;
-		values[Ids.ID_NU_U] = 925;
-		values[Ids.ID_OACUTE_L] = 243;
-		values[Ids.ID_OACUTE_U] = 211;
-		values[Ids.ID_OCIRC_L] = 244;
-		values[Ids.ID_OCIRC_U] = 212;
-		values[Ids.ID_OELIG_L] = 339;
-		values[Ids.ID_OELIG_U] = 338;
-		values[Ids.ID_OGRAVE_L] = 242;
-		values[Ids.ID_OGRAVE_U] = 210;
-		values[Ids.ID_OLINE] = 8254;
-		values[Ids.ID_OMEGA_L] = 969;
-		values[Ids.ID_OMEGA_U] = 937;
-		values[Ids.ID_OMICRON_L] = 959;
-		values[Ids.ID_OMICRON_U] = 927;
-		values[Ids.ID_OPLUS] = 8853;
-		values[Ids.ID_OR] = 8744;
-		values[Ids.ID_ORDF] = 170;
-		values[Ids.ID_ORDM] = 186;
-		values[Ids.ID_OSLASH_L] = 248;
-		values[Ids.ID_OSLASH_U] = 216;
-		values[Ids.ID_OTILDE_L] = 245;
-		values[Ids.ID_OTILDE_U] = 213;
-		values[Ids.ID_OTIMES] = 8855;
-		values[Ids.ID_OUML_L] = 246;
-		values[Ids.ID_OUML_U] = 214;
-		values[Ids.ID_PARA] = 182;
-		values[Ids.ID_PART] = 8706;
-		values[Ids.ID_PERMIL] = 8240;
-		values[Ids.ID_PERP] = 8869;
-		values[Ids.ID_PHI_L] = 966;
-		values[Ids.ID_PHI_U] = 934;
-		values[Ids.ID_PIV] = 982;
-		values[Ids.ID_PI_L] = 960;
-		values[Ids.ID_PI_U] = 928;
-		values[Ids.ID_PLUSMN] = 177;
-		values[Ids.ID_POUND] = 163;
-		values[Ids.ID_PRIME_L] = 8242;
-		values[Ids.ID_PRIME_U] = 8243;
-		values[Ids.ID_PROD] = 8719;
-		values[Ids.ID_PROP] = 8733;
-		values[Ids.ID_PSI_L] = 968;
-		values[Ids.ID_PSI_U] = 936;
-		values[Ids.ID_QUOT] = 34;
-		values[Ids.ID_RADIC] = 8730;
-		values[Ids.ID_RANG] = 9002;
-		values[Ids.ID_RAQUO] = 187;
-		values[Ids.ID_RARR_L] = 8594;
-		values[Ids.ID_RARR_U] = 8658;
-		values[Ids.ID_RCEIL] = 8969;
-		values[Ids.ID_RDQUO] = 8221;
-		values[Ids.ID_REAL] = 8476;
-		values[Ids.ID_REG] = 174;
-		values[Ids.ID_RFLOOR] = 8971;
-		values[Ids.ID_RHO_L] = 961;
-		values[Ids.ID_RHO_U] = 929;
-		values[Ids.ID_RLM] = 8207;
-		values[Ids.ID_RSAQUO] = 8250;
-		values[Ids.ID_RSQUO] = 8217;
-		values[Ids.ID_SBQUO] = 8218;
-		values[Ids.ID_SCARON_L] = 353;
-		values[Ids.ID_SCARON_U] = 352;
-		values[Ids.ID_SDOT] = 8901;
-		values[Ids.ID_SECT] = 167;
-		values[Ids.ID_SHY] = 173;
-		values[Ids.ID_SIGMAF] = 962;
-		values[Ids.ID_SIGMA_L] = 963;
-		values[Ids.ID_SIGMA_U] = 931;
-		values[Ids.ID_SIM] = 8764;
-		values[Ids.ID_SPADES] = 9824;
-		values[Ids.ID_SUB] = 8834;
-		values[Ids.ID_SUBE] = 8838;
-		values[Ids.ID_SUM] = 8721;
-		values[Ids.ID_SUP] = 8835;
-		values[Ids.ID_SUP1] = 185;
-		values[Ids.ID_SUP2] = 178;
-		values[Ids.ID_SUP3] = 179;
-		values[Ids.ID_SUPE] = 8839;
-		values[Ids.ID_SZLIG] = 223;
-		values[Ids.ID_TAU_L] = 964;
-		values[Ids.ID_TAU_U] = 932;
-		values[Ids.ID_THERE4] = 8756;
-		values[Ids.ID_THETASYM] = 977;
-		values[Ids.ID_THETA_L] = 952;
-		values[Ids.ID_THETA_U] = 920;
-		values[Ids.ID_THINSP] = 8201;
-		values[Ids.ID_THORN_L] = 254;
-		values[Ids.ID_THORN_U] = 222;
-		values[Ids.ID_TILDE] = 732;
-		values[Ids.ID_TIMES] = 215;
-		values[Ids.ID_TRADE] = 8482;
-		values[Ids.ID_UACUTE_L] = 250;
-		values[Ids.ID_UACUTE_U] = 218;
-		values[Ids.ID_UARR_L] = 8593;
-		values[Ids.ID_UARR_U] = 8657;
-		values[Ids.ID_UCIRC_L] = 251;
-		values[Ids.ID_UCIRC_U] = 219;
-		values[Ids.ID_UGRAVE_L] = 249;
-		values[Ids.ID_UGRAVE_U] = 217;
-		values[Ids.ID_UML] = 168;
-		values[Ids.ID_UPSIH] = 978;
-		values[Ids.ID_UPSILON_L] = 965;
-		values[Ids.ID_UPSILON_U] = 933;
-		values[Ids.ID_UUML_L] = 252;
-		values[Ids.ID_UUML_U] = 220;
-		values[Ids.ID_WEIERP] = 8472;
-		values[Ids.ID_XI_L] = 958;
-		values[Ids.ID_XI_U] = 926;
-		values[Ids.ID_YACUTE_L] = 253;
-		values[Ids.ID_YACUTE_U] = 221;
-		values[Ids.ID_YEN] = 165;
-		values[Ids.ID_YUML_L] = 255;
-		values[Ids.ID_YUML_U] = 376;
-		values[Ids.ID_ZETA_L] = 950;
-		values[Ids.ID_ZETA_U] = 918;
-		values[Ids.ID_ZWJ] = 8205;
-		values[Ids.ID_ZWNJ] = 8204;
-	}
-
-	/**
-	 */
-	public EntityCollection() {
-		super(names, STRICT_CASE);
-	}
-
-	/**
-	 * Create an entity declaration.
-	 * @return org.eclipse.wst.xml.core.internal.contentmodel.CMNode
-	 * @param attrName java.lang.String
-	 */
-	protected CMNode create(String entityName) {
-		int id = getID(entityName);
-		if (id == ID_UNKNOWN)
-			return null;
-
-		String value = String.valueOf(values[id]);
-		HTMLEntityDeclImpl dec = new HTMLEntityDeclImpl(entityName, value);
-
-		return dec;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/HTMLAttrDeclImpl.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/HTMLAttrDeclImpl.java
deleted file mode 100644
index 505d662..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/HTMLAttrDeclImpl.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.wst.html.core.internal.contentmodel.chtml;
-
-
-
-import java.util.Arrays;
-import java.util.Enumeration;
-import java.util.Vector;
-
-import org.eclipse.wst.html.core.internal.contentmodel.HTMLAttributeDeclaration;
-import org.eclipse.wst.html.core.internal.provisional.HTMLCMProperties;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMDataType;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMNode;
-
-/**
- * Implementation class of {@link <code>HTMLAttributeDeclaration</code>} interface.<br>
- */
-class HTMLAttrDeclImpl extends CMNodeImpl implements HTMLAttributeDeclaration {
-
-	private HTMLCMDataTypeImpl type = null;
-	private int usage = 0;
-
-	/**
-	 */
-	public HTMLAttrDeclImpl(String attrName, HTMLCMDataTypeImpl valueType, int valueUsage) {
-		super(attrName);
-		this.type = valueType;
-
-		switch (valueUsage) {
-			case OPTIONAL :
-			case REQUIRED :
-			case FIXED :
-			case PROHIBITED :
-				this.usage = valueUsage;
-				break;
-			default :
-				// should warn...
-				this.usage = OPTIONAL; // fall back
-				break;
-		}
-	}
-
-	/**
-	 * getAttrName method
-	 * @return java.lang.String
-	 */
-	public String getAttrName() {
-		return getNodeName();
-	}
-
-	/**
-	 * getAttrType method
-	 * @return CMDataType
-	 */
-	public CMDataType getAttrType() {
-		return type;
-	}
-
-	/**
-	 * @deprecated in superclass
-	 */
-	public String getDefaultValue() {
-		if (type.getImpliedValueKind() != CMDataType.IMPLIED_VALUE_DEFAULT)
-			return null;
-		return type.getImpliedValue();
-	}
-
-	/**
-	 * @deprecated in superclass
-	 */
-	public Enumeration getEnumAttr() {
-		Vector v = new Vector(Arrays.asList(type.getEnumeratedValues()));
-		return v.elements();
-	}
-
-	/**
-	 * getNodeType method
-	 * @return int
-	 *
-	 * Returns one of :
-	 * ELEMENT_DECLARATION, ATTRIBUTE_DECLARATION, GROUP, ENTITY_DECLARATION.
-	 */
-	public int getNodeType() {
-		return CMNode.ATTRIBUTE_DECLARATION;
-	}
-
-	/**
-	 * @return int
-	 */
-	public int getUsage() {
-		return usage;
-	}
-
-	/**
-	 */
-	public boolean supports(String propertyName) {
-		if (propertyName.equals(HTMLCMProperties.SHOULD_IGNORE_CASE))
-			return true;
-		return super.supports(propertyName);
-	}
-
-	/**
-	 */
-	public Object getProperty(String propertyName) {
-		if (propertyName.equals(HTMLCMProperties.SHOULD_IGNORE_CASE))
-			return new Boolean(true);
-		return super.getProperty(propertyName);
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/HTMLCMDataTypeImpl.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/HTMLCMDataTypeImpl.java
deleted file mode 100644
index 64931b6..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/HTMLCMDataTypeImpl.java
+++ /dev/null
@@ -1,126 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this 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.core.internal.contentmodel.chtml;
-
-import org.eclipse.wst.html.core.internal.contentmodel.HTMLCMDataType;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMNode;
-
-
-
-/**
- */
-class HTMLCMDataTypeImpl extends CMNodeImpl implements HTMLCMDataType {
-
-	private int impliedValueKind = IMPLIED_VALUE_NONE;
-	private String impliedValue = null;
-	private final static String[] emptyArray = new String[0];
-	private String[] enumValues = emptyArray;
-	private String instanceValue = null;
-
-	/**
-	 * HTMLCMDataTypeImpl constructor comment.
-	 * @param nm java.lang.String
-	 */
-	public HTMLCMDataTypeImpl(String typeName) {
-		super(typeName);
-	}
-
-	/**
-	 * HTMLCMDataTypeImpl constructor comment.
-	 * @param nm java.lang.String
-	 */
-	public HTMLCMDataTypeImpl(String typeName, String instanceValue) {
-		super(typeName);
-		this.instanceValue = instanceValue;
-	}
-
-	/**
-	 * 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 instanceValue;
-	}
-
-	/**
-	 * @see org.eclipse.wst.xml.core.internal.contentmodel.CMDataType
-	 */
-	public String getDataTypeName() {
-		return getNodeName();
-	}
-
-	/**
-	 * getTypeName method
-	 * @return java.lang.String[]
-	 *
-	 */
-	public String[] getEnumeratedValues() {
-		return enumValues;
-	}
-
-	/**
-	 * getTypeName method
-	 * @return java.lang.String  
-	 *
-	 * Returns the implied value or null if none exists.
-	 */
-	public String getImpliedValue() {
-		return impliedValue;
-	}
-
-	/**
-	 * getImpliedValueKind method
-	 * @return int
-	 *
-	 * Returns one of :
-	 * IMPLIED_VALUE_NONE, IMPLIED_VALUE_FIXED, IMPLIED_VALUE_DEFAULT.
-	 */
-	public int getImpliedValueKind() {
-		return impliedValueKind;
-	}
-
-	/**
-	 * @see org.eclipse.wst.xml.core.internal.contentmodel.CMNode
-	 */
-	public int getNodeType() {
-		return CMNode.DATA_TYPE;
-	}
-
-	/**
-	 */
-	void setEnumValues(String[] values) {
-		enumValues = new String[values.length];
-		for (int i = 0; i < values.length; i++) {
-			enumValues[i] = values[i];
-		}
-	}
-
-	/**
-	 * package scope.
-	 */
-	void setImpliedValue(int kind, String value) {
-		switch (kind) {
-			case IMPLIED_VALUE_FIXED :
-			case IMPLIED_VALUE_DEFAULT :
-				impliedValueKind = kind;
-				impliedValue = value;
-				break;
-			case IMPLIED_VALUE_NONE :
-			default :
-				impliedValueKind = IMPLIED_VALUE_NONE;
-				impliedValue = null; // maybe a null string?
-				break;
-		}
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/HTMLCMNode.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/HTMLCMNode.java
deleted file mode 100644
index a1e555a..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/HTMLCMNode.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.html.core.internal.contentmodel.chtml;
-
-
-/**
- * In HTML Documents, name and value of an attribute/element/entity
- * should be treated ignoring theirs case.  However, in XML documents,
- * they should be distinguished with sensitiveness of their case.
- * CMNode is basically designed to represent DTDs or Schemas for XML
- * documents.  So, it doesn't have interfaces to retrieve such information.
- * However, declarations in the HTML CM should provide such information.
- * This intermediate interface is intended to provide whether ignore cases
- * or not.<br>
- */
-interface HTMLCMNode extends org.eclipse.wst.xml.core.internal.contentmodel.CMNode {
-
-	/**
-	 * Returns <code>true</code>, if declaration is for HTML attribute/element/entity.
-	 * Otherwise, returns <code>false</code>.
-	 * @return boolean
-	 */
-	boolean shouldIgnoreCase();
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/HTMLElemDeclImpl.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/HTMLElemDeclImpl.java
deleted file mode 100644
index 759294d..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/HTMLElemDeclImpl.java
+++ /dev/null
@@ -1,369 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this 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.core.internal.contentmodel.chtml;
-
-
-
-import java.util.Iterator;
-
-import org.eclipse.wst.html.core.internal.contentmodel.HTMLAttributeDeclaration;
-import org.eclipse.wst.html.core.internal.contentmodel.HTMLElementDeclaration;
-import org.eclipse.wst.html.core.internal.contentmodel.HTMLPropertyDeclaration;
-import org.eclipse.wst.html.core.internal.provisional.HTMLCMProperties;
-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.CMNamedNodeMap;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMNode;
-
-/**
- * Base class for all Hed???? classes.
- */
-abstract class HTMLElemDeclImpl extends CMContentImpl implements HTMLElementDeclaration, HTMLPropertyDeclaration {
-
-	// DTD
-	protected CMNamedNodeMapImpl attributes = null;
-	protected String typeDefinitionName = ComplexTypeDefinitionFactory.CTYPE_EMPTY;
-	/** Never access this field directly.  Instead, use getComplexTypeDefinition method. */
-	private ComplexTypeDefinition typeDefinition = null;
-	protected CMGroupImpl inclusion = null;
-	protected CMGroupImpl exclusion = null;
-	// advanced information
-	protected CMNamedNodeMap prohibitedAncestors = null;
-	protected int correctionType = CORRECT_NONE;
-	protected int formatType = FORMAT_HTML;
-	protected int layoutType = LAYOUT_NONE;
-	protected int omitType = OMIT_NONE;
-	protected boolean keepSpaces = false;
-	protected boolean indentChild = false;
-	protected ElementCollection elementCollection = null;
-	protected AttributeCollection attributeCollection = null;
-	protected final static CMNamedNodeMap EMPTY_MAP = new 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 Iterator() {
-				public boolean hasNext() {
-					return false;
-				}
-
-				public Object next() {
-					return null;
-				}
-
-				public void remove() {
-				}
-			};
-		}
-	};
-
-	/**
-	 * HTMLElemDeclImpl constructor.
-	 * In the HTML DTD, an element declaration has no specification
-	 * for its occurrence.  Occurrence is specifed in content model, like
-	 * <code>(LI)+</code>.  To avoid confusion (and complexity),
-	 * occurrence of an element declaration is always 1 (it means, min = 1 and
-	 * max = 1).  Instead, occurrence of CMGroup represents actual occurrence
-	 * of the content.
-	 * <br>
-	 * @param name java.lang.String
-	 */
-	public HTMLElemDeclImpl(String elementName, ElementCollection collection) {
-		super(elementName, 1, 1);
-		elementCollection = collection;
-		attributeCollection = collection.getAttributeCollection();
-	}
-
-	/**
-	 */
-	protected abstract void createAttributeDeclarations();
-
-	private ComplexTypeDefinition createComplexTypeDefinition() {
-		if (typeDefinitionName.equals(ComplexTypeDefinitionFactory.CTYPE_CDATA) || typeDefinitionName.equals(ComplexTypeDefinitionFactory.CTYPE_EMPTY) || typeDefinitionName.equals(ComplexTypeDefinitionFactory.CTYPE_PCDATA))
-			return null;
-
-		ComplexTypeDefinitionFactory factory = ComplexTypeDefinitionFactory.getInstance();
-		if (factory == null)
-			return null; // fatal error.
-
-		ComplexTypeDefinition def = factory.createTypeDefinition(typeDefinitionName, elementCollection);
-		return def;
-	}
-
-	/**
-	 * Get an attribute declaration.
-	 */
-	public HTMLAttributeDeclaration getAttributeDeclaration(String attrName) {
-		if (attributes == null) {
-			createAttributeDeclarations();
-			if (attributes == null)
-				return null; // fail to create
-		}
-
-		CMNode cmnode = attributes.getNamedItem(attrName);
-		if (cmnode == null) {
-			return null;
-		}
-		else {
-			return (HTMLAttributeDeclaration) cmnode; // already exists.
-		}
-	}
-
-	/**
-	 * @see org.eclipse.wst.xml.core.internal.contentmodel.CMElementDeclaration
-	 */
-	public CMNamedNodeMap getAttributes() {
-		if (attributes == null)
-			createAttributeDeclarations(); // lazy eval.
-		return attributes;
-	}
-
-	/**
-	 * Get an instance of complex type definition.
-	 */
-	private ComplexTypeDefinition getComplexTypeDefinition() {
-		if (typeDefinition == null)
-			typeDefinition = createComplexTypeDefinition();
-		return typeDefinition;
-	}
-
-	/**
-	 * Content.<br>
-	 * Element declarations which type is EMPTY or CDATA (maybe PCDATA)
-	 * <strong>MUST</strong> override this method and always return null.
-	 * This default implementation always tries to create a complex type definition
-	 * instance and access to it.
-	 * <br>
-	 * @see org.eclipse.wst.xml.core.internal.contentmodel.CMElementDeclaration
-	 */
-	public CMContent getContent() {
-		ComplexTypeDefinition def = getComplexTypeDefinition(); // lazy eval.
-		return (def != null) ? def.getContent() : null;
-	}
-
-	/**
-	 * Content type.<br>
-	 * Element declarations which type is EMPTY or CDATA (maybe PCDATA)
-	 * <strong>MUST</strong> override this method and return an appropriate type.
-	 * This default implementation always tries to create a complex type definition
-	 * instance and access to it.
-	 * <br>
-	 * @see org.eclipse.wst.xml.core.internal.contentmodel.CMElementDeclaration
-	 */
-	public int getContentType() {
-		ComplexTypeDefinition def = getComplexTypeDefinition(); // lazy eval.
-		return (def != null) ? def.getContentType() : CMElementDeclaration.CDATA;
-	}
-
-	/**
-	 * @see HTMLElementDeclaration#getCorrectionType
-	 */
-	public int getCorrectionType() {
-		return correctionType;
-	}
-
-	/**
-	 * HTML element doesn't have any data type.  So, this method always
-	 * returns <code>null</code>.<br>
-	 * @see org.eclipse.wst.xml.core.internal.contentmodel.CMElementDeclaration
-	 */
-	public CMDataType getDataType() {
-		return null;
-	}
-
-	/**
-	 * @see org.eclipse.wst.xml.core.internal.contentmodel.CMElementDeclaration
-	 */
-	public String getElementName() {
-		return getNodeName();
-	}
-
-	/**
-	 * Exclusion.
-	 * Almost elements don't have a exclusion.
-	 * Only classes those have exclusion should override this method.
-	 */
-	public CMContent getExclusion() {
-		return null;
-	}
-
-	/**
-	 * Default format type is <code>FORMAT_HTML</code>.<br>
-	 */
-	public int getFormatType() {
-		return formatType;
-	}
-
-	/**
-	 * Inclusion.
-	 * Almost elements don't have a inclusion.
-	 * Only classes those have inclusion should override this method.
-	 */
-	public CMContent getInclusion() {
-		return null;
-	}
-
-	/**
-	 */
-	public int getLayoutType() {
-		return layoutType;
-	}
-
-	/**
-	 * Line break hint is strongly related to layout type.
-	 * Indeed, in the C++DOM, it is determined from layout type only.
-	 * So, this implementation, as the default implementation for all declarations,
-	 * also determines from layout type only.<br>
-	 * @return int
-	 */
-	public int getLineBreakHint() {
-		switch (getLayoutType()) {
-			case HTMLElementDeclaration.LAYOUT_BLOCK :
-				return HTMLElementDeclaration.BREAK_BEFORE_START_AND_AFTER_END;
-			case HTMLElementDeclaration.LAYOUT_BREAK :
-				return HTMLElementDeclaration.BREAK_AFTER_START;
-			case HTMLElementDeclaration.LAYOUT_HIDDEN :
-				return HTMLElementDeclaration.BREAK_BEFORE_START_AND_AFTER_END;
-			default :
-				return HTMLElementDeclaration.BREAK_NONE;
-		}
-	}
-
-	/**
-	 * No HTML element has local elements.  So, this method always
-	 * returns an empty map.
-	 * @see org.eclipse.wst.xml.core.internal.contentmodel.CMElementDeclaration
-	 */
-	public CMNamedNodeMap getLocalElements() {
-		return EMPTY_MAP;
-	}
-
-	/**
-	 * @see org.eclipse.wst.xml.core.internal.contentmodel.CMNode
-	 */
-	public int getNodeType() {
-		return CMNode.ELEMENT_DECLARATION;
-	}
-
-	/**
-	 */
-	public int getOmitType() {
-		return omitType;
-	}
-
-	/**
-	 */
-	public CMNamedNodeMap getProhibitedAncestors() {
-		return EMPTY_MAP;
-	}
-
-	/**
-	 */
-	public boolean supports(String propertyName) {
-		if (propertyName.equals(HTMLCMProperties.SHOULD_IGNORE_CASE)) {
-			return true;
-		}
-		else if (propertyName.equals(HTMLCMProperties.CONTENT_HINT)) {
-			ComplexTypeDefinition def = getComplexTypeDefinition();
-			return (def != null);
-		}
-		else {
-			PropertyProvider pp = PropertyProviderFactory.getProvider(propertyName);
-			if (pp == null)
-				return false;
-			return pp.supports(this);
-		}
-
-	}
-
-	/**
-	 */
-	public Object getProperty(String propertyName) {
-		if (propertyName.equals(HTMLCMProperties.SHOULD_IGNORE_CASE)) {
-			return new Boolean(true);
-		}
-		else if (propertyName.equals(HTMLCMProperties.CONTENT_HINT)) {
-			ComplexTypeDefinition def = getComplexTypeDefinition();
-			return (def != null) ? def.getPrimaryCandidate() : null;
-		}
-		else {
-			PropertyProvider pp = PropertyProviderFactory.getProvider(propertyName);
-			if (pp == null)
-				return null;
-			return pp.get(this);
-		}
-	}
-
-	/**
-	 * Return element names which terminates this element.<br>
-	 * @return java.util.Iterator
-	 */
-	protected Iterator getTerminators() {
-		return null;
-	}
-
-	/**
-	 * return true when the element is a JSP element.
-	 */
-	public boolean isJSP() {
-		return false;
-	}
-
-	/**
-	 * In some elements, such as APPLET, a source generator should indent child
-	 * elements that their parents.  That is, a source generator should generate
-	 * source  of APPLET and PARAMS like this:
-	 * <PRE>
-	 *   &lt;APPLET ...&gt;
-	 *     &lt;PARAM ... &gt;
-	 *     &lt;PARAM ... &gt;
-	 *   &lt;/APPLET&gt;
-	 * <PRE>
-	 * @return boolean
-	 */
-	public boolean shouldIndentChildSource() {
-		return indentChild;
-	}
-
-	/**
-	 * Most of elements can compact spaces in their child text nodes.
-	 * Some special elements should keep them in their source.
-	 * @return boolean
-	 */
-	public boolean shouldKeepSpaces() {
-		return keepSpaces;
-	}
-
-	/**
-	 * @return boolean
-	 */
-	public boolean shouldTerminateAt(HTMLElementDeclaration nextElement) {
-		Iterator i = getTerminators();
-		if (i == null)
-			return false;
-		String nextName = nextElement.getElementName();
-		while (i.hasNext()) {
-			if (nextName.equals(i.next()))
-				return true;
-		}
-		return false;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/HTMLEntityDeclImpl.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/HTMLEntityDeclImpl.java
deleted file mode 100644
index c63d2a8..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/HTMLEntityDeclImpl.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.wst.html.core.internal.contentmodel.chtml;
-
-import org.eclipse.wst.html.core.internal.contentmodel.HTMLEntityDeclaration;
-import org.eclipse.wst.html.core.internal.provisional.HTMLCMProperties;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMNode;
-
-
-
-/**
- */
-class HTMLEntityDeclImpl extends CMNodeImpl implements HTMLEntityDeclaration {
-
-	private java.lang.String value = null;
-
-	/**
-	 * CMEntityDeclImpl constructor comment.
-	 * @param entityName java.lang.String; Entity name.
-	 * @param entityValue java.lang.String; Value string.
-	 */
-	public HTMLEntityDeclImpl(String entityName, String entityValue) {
-		super(entityName);
-		value = entityValue;
-	}
-
-	/**
-	 * getName method
-	 * @return java.lang.String
-	 */
-	public String getName() {
-		return getNodeName();
-	}
-
-	/**
-	 * Get CMNode type.<br>
-	 * @return int; Always return ENTITY_DECLARATION.
-	 */
-	public int getNodeType() {
-		return CMNode.ENTITY_DECLARATION;
-	}
-
-	/**
-	 * getValue method
-	 * @return java.lang.String
-	 */
-	public String getValue() {
-		return value;
-	}
-
-	/**
-	 */
-	public boolean supports(String propertyName) {
-		if (propertyName.equals(HTMLCMProperties.SHOULD_IGNORE_CASE))
-			return true;
-		return super.supports(propertyName);
-	}
-
-	/**
-	 * Entities in HTML documents are always treated with ignoring cases.
-	 * Because no special entities are defined in JSP 1.0, this method
-	 * can always return <code>true</code>.<br>
-	 */
-	public Object getProperty(String propertyName) {
-		if (propertyName.equals(HTMLCMProperties.SHOULD_IGNORE_CASE))
-			return new Boolean(true);
-		return super.getProperty(propertyName);
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/HedA.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/HedA.java
deleted file mode 100644
index 455ca28..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/HedA.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.wst.html.core.internal.contentmodel.chtml;
-
-
-
-import java.util.Arrays;
-
-import org.eclipse.wst.xml.core.internal.contentmodel.CMContent;
-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;
-
-/**
- * A.
- */
-final class HedA extends HedInlineContainer {
-
-	/**
-	 */
-	public HedA(ElementCollection collection) {
-		super(CHTMLNamespace.ElementName.A, collection);
-		// CORRECT_EMPTY - GROUP_COMPACT
-		correctionType = CORRECT_EMPTY;
-	}
-
-	/**
-	 * %attrs;
-	 * (charset %Charset; #IMPLIED)
-	 * (type %ContentType; #IMPLIED)
-	 * (name CDATA #IMPLIED)
-	 * (href %URI; #IMPLIED)
-	 * (hreflang %LanguageCode; #IMPLIED)
-	 * (target %FrameTarget; #IMPLIED)
-	 * (rel %LinkTypes; #IMPLIED)
-	 * (rev %LinkTypes; #IMPLIED)
-	 * (accesskey %Character; #IMPLIED)
-	 * (directkey %Character; #IMPLIED)
-	 * (shape %Shape; rect)
-	 * (coords %Coords; #IMPLIED)
-	 * (tabindex NUMBER #IMPLIED)
-	 * (onfocus %Script; #IMPLIED)
-	 * (onblur %Script; #IMPLIED) 
-	 */
-	protected void createAttributeDeclarations() {
-		if (attributes != null)
-			return; // already created.
-		if (attributeCollection == null)
-			return; // fatal
-
-		attributes = new CMNamedNodeMapImpl();
-
-		// %attrs;
-		attributeCollection.getAttrs(attributes);
-
-		String[] names = {CHTMLNamespace.ATTR_NAME_NAME, CHTMLNamespace.ATTR_NAME_HREF,};
-		attributeCollection.getDeclarations(attributes, Arrays.asList(names).iterator());
-	}
-
-	/**
-	 * Exclusion.
-	 * <code>A</code> has the exclusion.
-	 * It is <code>A</code> itself.
-	 */
-	public CMContent getExclusion() {
-		if (exclusion != null)
-			return exclusion; // already created.
-		if (elementCollection == null)
-			return null;
-
-		exclusion = new CMGroupImpl(CMGroup.CHOICE, 1, 1);
-		CMNode a = elementCollection.getNamedItem(CHTMLNamespace.ElementName.A);
-		if (a != null)
-			exclusion.appendChild(a);
-
-		return exclusion;
-	}
-
-	/**
-	 */
-	public CMNamedNodeMap getProhibitedAncestors() {
-		if (prohibitedAncestors != null)
-			return prohibitedAncestors;
-
-		String[] names = {CHTMLNamespace.ElementName.A,};
-		prohibitedAncestors = elementCollection.getDeclarations(names);
-
-		return prohibitedAncestors;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/HedADDRESS.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/HedADDRESS.java
deleted file mode 100644
index 55579d8..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/HedADDRESS.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.html.core.internal.contentmodel.chtml;
-
-
-
-import org.eclipse.wst.xml.core.internal.contentmodel.CMNamedNodeMap;
-
-/**
- * ADDRESS.
- */
-final class HedADDRESS extends HTMLElemDeclImpl {
-
-	/**
-	 */
-	public HedADDRESS(ElementCollection collection) {
-		super(CHTMLNamespace.ElementName.ADDRESS, collection);
-		typeDefinitionName = ComplexTypeDefinitionFactory.CTYPE_ADDRESS;
-		correctionType = CORRECT_EMPTY;
-		layoutType = LAYOUT_BLOCK;
-	}
-
-	/**
-	 * %attrs;
-	 */
-	protected void createAttributeDeclarations() {
-		if (attributes != null)
-			return; // already created.
-		if (attributeCollection == null)
-			return; // fatal
-
-		attributes = new CMNamedNodeMapImpl();
-
-		// %attrs;
-		attributeCollection.getAttrs(attributes);
-	}
-
-	/**
-	 */
-	public CMNamedNodeMap getProhibitedAncestors() {
-		if (prohibitedAncestors != null)
-			return prohibitedAncestors;
-
-		String[] names = {CHTMLNamespace.ElementName.DIR, CHTMLNamespace.ElementName.MENU};
-		prohibitedAncestors = elementCollection.getDeclarations(names);
-
-		return prohibitedAncestors;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/HedBASE.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/HedBASE.java
deleted file mode 100644
index ab2c816..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/HedBASE.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.html.core.internal.contentmodel.chtml;
-
-
-
-import java.util.Arrays;
-
-/**
- * BASE.
- */
-final class HedBASE extends HedEmpty {
-
-	/**
-	 */
-	public HedBASE(ElementCollection collection) {
-		super(CHTMLNamespace.ElementName.BASE, collection);
-		// LAYOUT_HIDDEN.
-		// Because, BASE is GROUP_HIDDEN in the C++DOM/DTDParser.cpp.
-		layoutType = LAYOUT_HIDDEN;
-	}
-
-	/**
-	 * BASE.
-	 * (href %URI; #IMPLIED)
-	 * (target %FrameTarget; #IMPLIED)
-	 */
-	protected void createAttributeDeclarations() {
-		if (attributes != null)
-			return; // already created.
-		if (attributeCollection == null)
-			return; // fatal
-
-		attributes = new CMNamedNodeMapImpl();
-
-		String[] names = {CHTMLNamespace.ATTR_NAME_HREF,};
-		attributeCollection.getDeclarations(attributes, Arrays.asList(names).iterator());
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/HedBLOCKQUOTE.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/HedBLOCKQUOTE.java
deleted file mode 100644
index 818156e..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/HedBLOCKQUOTE.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.html.core.internal.contentmodel.chtml;
-
-
-
-import org.eclipse.wst.xml.core.internal.contentmodel.CMNamedNodeMap;
-
-/**
- * BLOCKQUOTE.
- */
-final class HedBLOCKQUOTE extends HedFlowContainer {
-
-	/**
-	 */
-	public HedBLOCKQUOTE(ElementCollection collection) {
-		super(CHTMLNamespace.ElementName.BLOCKQUOTE, collection);
-		correctionType = CORRECT_EMPTY;
-		layoutType = LAYOUT_BLOCK;
-	}
-
-	/**
-	 * %attrs;
-	 * (cite %URI; #IMPLIED) 
-	 */
-	protected void createAttributeDeclarations() {
-		if (attributes != null)
-			return; // already created.
-		if (attributeCollection == null)
-			return; // fatal
-
-		attributes = new CMNamedNodeMapImpl();
-
-		// %attrs;
-		attributeCollection.getAttrs(attributes);
-	}
-
-	/**
-	 */
-	public CMNamedNodeMap getProhibitedAncestors() {
-		if (prohibitedAncestors != null)
-			return prohibitedAncestors;
-
-		String[] names = {CHTMLNamespace.ElementName.DIR, CHTMLNamespace.ElementName.MENU};
-		prohibitedAncestors = elementCollection.getDeclarations(names);
-
-		return prohibitedAncestors;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/HedBODY.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/HedBODY.java
deleted file mode 100644
index 992288f..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/HedBODY.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.wst.html.core.internal.contentmodel.chtml;
-
-
-
-import java.util.Arrays;
-import java.util.Iterator;
-
-/**
- * BODY.
- */
-final class HedBODY extends HedFlowContainer {
-
-	private static String[] terminators = {CHTMLNamespace.ElementName.HEAD, CHTMLNamespace.ElementName.BODY, CHTMLNamespace.ElementName.HTML};
-
-	/**
-	 */
-	public HedBODY(ElementCollection collection) {
-		super(CHTMLNamespace.ElementName.BODY, collection);
-		layoutType = LAYOUT_BLOCK;
-		omitType = OMIT_BOTH;
-	}
-
-	/**
-	 * %attrs;
-	 * %bodycolors;
-	 * (onload %Script; #IMPLIED)
-	 * (onunload %Script; #IMPLIED)
-	 * (background %URI; #IMPLIED)
-	 * (marginwidth %Pixels; #IMPLIED) ... D205514
-	 * (marginheight %Pixels; #IMPLIED) .. D205514
-	 * (topmargin, CDATA, #IMPLIED) ...... D205514
-	 * (bottommargin, CDATA, #IMPLIED) ... D205514
-	 * (leftmargin, CDATA, #IMPLIED) ..... D205514
-	 * (rightmargin, CDATA, #IMPLIED) .... D205514
-	 */
-	protected void createAttributeDeclarations() {
-		if (attributes != null)
-			return; // already created.
-		if (attributeCollection == null)
-			return; // fatal
-
-		attributes = new CMNamedNodeMapImpl();
-
-		// %attrs;
-		attributeCollection.getAttrs(attributes);
-		// %bodycolors;
-		attributeCollection.getBodycolors(attributes);
-
-	}
-
-	/**
-	 * BODY has terminators.
-	 * @return java.util.Iterator
-	 */
-	protected Iterator getTerminators() {
-		return Arrays.asList(terminators).iterator();
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/HedBR.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/HedBR.java
deleted file mode 100644
index 30ef48b..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/HedBR.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.html.core.internal.contentmodel.chtml;
-
-import org.eclipse.wst.html.core.internal.contentmodel.HTMLAttributeDeclaration;
-
-
-
-/**
- * BR.
- */
-final class HedBR extends HedEmpty {
-
-	/**
-	 */
-	public HedBR(ElementCollection collection) {
-		super(CHTMLNamespace.ElementName.BR, collection);
-		// LAYOUT_BREAK.
-		// Because, BR is GROUP_BREAK in the C++DOM/DTDParser.cpp.
-		layoutType = LAYOUT_BREAK;
-	}
-
-	/**
-	 * BR.
-	 * %coreattrs;
-	 * (clear (left | all | right | none) none)
-	 */
-	protected void createAttributeDeclarations() {
-		if (attributes != null)
-			return; // already created.
-		if (attributeCollection == null)
-			return; // fatal
-
-		attributes = new CMNamedNodeMapImpl();
-
-		// %coreattrs;
-		attributeCollection.getCore(attributes);
-		// clear
-		HTMLAttributeDeclaration attr = attributeCollection.getDeclaration(CHTMLNamespace.ATTR_NAME_CLEAR);
-		if (attr != null)
-			attributes.putNamedItem(CHTMLNamespace.ATTR_NAME_CLEAR, attr);
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/HedCENTER.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/HedCENTER.java
deleted file mode 100644
index c2c60d6..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/HedCENTER.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.html.core.internal.contentmodel.chtml;
-
-
-
-import org.eclipse.wst.xml.core.internal.contentmodel.CMNamedNodeMap;
-
-/**
- * CENTER.
- */
-final class HedCENTER extends HedFlowContainer {
-
-	/**
-	 */
-	public HedCENTER(ElementCollection collection) {
-		super(CHTMLNamespace.ElementName.CENTER, collection);
-		layoutType = LAYOUT_BLOCK;
-	}
-
-	/**
-	 * %attrs;
-	 */
-	protected void createAttributeDeclarations() {
-		if (attributes != null)
-			return; // already created.
-		if (attributeCollection == null)
-			return; // fatal
-
-		attributes = new CMNamedNodeMapImpl();
-
-		// %attrs;
-		attributeCollection.getAttrs(attributes);
-	}
-
-	/**
-	 */
-	public CMNamedNodeMap getProhibitedAncestors() {
-		if (prohibitedAncestors != null)
-			return prohibitedAncestors;
-
-		String[] names = {CHTMLNamespace.ElementName.DIR, CHTMLNamespace.ElementName.MENU};
-		prohibitedAncestors = elementCollection.getDeclarations(names);
-
-		return prohibitedAncestors;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/HedDD.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/HedDD.java
deleted file mode 100644
index a5da292..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/HedDD.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.core.internal.contentmodel.chtml;
-
-
-
-import java.util.Arrays;
-import java.util.Iterator;
-
-/**
- * DD.
- */
-final class HedDD extends HedFlowContainer {
-
-	private static String[] terminators = {CHTMLNamespace.ElementName.DT, CHTMLNamespace.ElementName.DD};
-
-	/**
-	 */
-	public HedDD(ElementCollection collection) {
-		super(CHTMLNamespace.ElementName.DD, collection);
-		correctionType = CORRECT_EMPTY;
-		layoutType = LAYOUT_BLOCK;
-		omitType = OMIT_END_DEFAULT;
-	}
-
-	/**
-	 * %attrs;
-	 */
-	protected void createAttributeDeclarations() {
-		if (attributes != null)
-			return; // already created.
-		if (attributeCollection == null)
-			return; // fatal
-
-		attributes = new CMNamedNodeMapImpl();
-
-		// %attrs;
-		attributeCollection.getAttrs(attributes);
-	}
-
-	/**
-	 * DD has terminators.
-	 * @return java.util.Iterator
-	 */
-	protected Iterator getTerminators() {
-		return Arrays.asList(terminators).iterator();
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/HedDIV.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/HedDIV.java
deleted file mode 100644
index adb56c2..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/HedDIV.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.html.core.internal.contentmodel.chtml;
-
-
-
-import org.eclipse.wst.xml.core.internal.contentmodel.CMNamedNodeMap;
-
-/**
- * DIV.
- */
-final class HedDIV extends HedFlowContainer {
-
-	/**
-	 */
-	public HedDIV(ElementCollection collection) {
-		super(CHTMLNamespace.ElementName.DIV, collection);
-		layoutType = LAYOUT_BLOCK;
-	}
-
-	/**
-	 * %attrs;
-	 * %align;
-	 * %reserved;
-	 */
-	protected void createAttributeDeclarations() {
-		if (attributes != null)
-			return; // already created.
-		if (attributeCollection == null)
-			return; // fatal
-
-		attributes = new CMNamedNodeMapImpl();
-
-		// %attrs;
-		attributeCollection.getAttrs(attributes);
-		// %align;
-		HTMLAttrDeclImpl attr = AttributeCollection.createAlignForParagraph();
-		if (attr != null)
-			attributes.putNamedItem(CHTMLNamespace.ATTR_NAME_ALIGN, attr);
-		// %reserved; ... empty
-	}
-
-	/**
-	 */
-	public CMNamedNodeMap getProhibitedAncestors() {
-		if (prohibitedAncestors != null)
-			return prohibitedAncestors;
-
-		String[] names = {CHTMLNamespace.ElementName.DIR, CHTMLNamespace.ElementName.MENU};
-		prohibitedAncestors = elementCollection.getDeclarations(names);
-
-		return prohibitedAncestors;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/HedDL.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/HedDL.java
deleted file mode 100644
index c09c9ac..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/HedDL.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.html.core.internal.contentmodel.chtml;
-
-
-
-import org.eclipse.wst.xml.core.internal.contentmodel.CMNamedNodeMap;
-
-/**
- * DL.
- */
-final class HedDL extends HTMLElemDeclImpl {
-
-	/**
-	 */
-	public HedDL(ElementCollection collection) {
-		super(CHTMLNamespace.ElementName.DL, collection);
-		typeDefinitionName = ComplexTypeDefinitionFactory.CTYPE_DEFINITION_LIST;
-		correctionType = CORRECT_EMPTY;
-		layoutType = LAYOUT_BLOCK;
-		indentChild = true;
-	}
-
-	/**
-	 * %arrays;
-	 * (compact (compact) #IMPLIED)
-	 */
-	protected void createAttributeDeclarations() {
-		if (attributes != null)
-			return; // already created.
-		if (attributeCollection == null)
-			return; // fatal
-		attributes = new CMNamedNodeMapImpl();
-
-		// %attrs;
-		attributeCollection.getAttrs(attributes);
-
-	}
-
-	/**
-	 */
-	public CMNamedNodeMap getProhibitedAncestors() {
-		if (prohibitedAncestors != null)
-			return prohibitedAncestors;
-
-		String[] names = {CHTMLNamespace.ElementName.DIR, CHTMLNamespace.ElementName.MENU};
-		prohibitedAncestors = elementCollection.getDeclarations(names);
-
-		return prohibitedAncestors;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/HedDT.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/HedDT.java
deleted file mode 100644
index e12c4c4..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/HedDT.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.core.internal.contentmodel.chtml;
-
-
-
-import java.util.Arrays;
-import java.util.Iterator;
-
-/**
- * DT.
- */
-final class HedDT extends HedInlineContainer {
-
-	private static String[] terminators = {CHTMLNamespace.ElementName.DT, CHTMLNamespace.ElementName.DD};
-
-	/**
-	 */
-	public HedDT(ElementCollection collection) {
-		super(CHTMLNamespace.ElementName.DT, collection);
-		correctionType = CORRECT_EMPTY;
-		layoutType = LAYOUT_BLOCK;
-		omitType = OMIT_END_DEFAULT;
-	}
-
-	/**
-	 * %attrs;
-	 */
-	protected void createAttributeDeclarations() {
-		if (attributes != null)
-			return; // already created.
-		if (attributeCollection == null)
-			return; // fatal
-
-		attributes = new CMNamedNodeMapImpl();
-
-		// %attrs;
-		attributeCollection.getAttrs(attributes);
-	}
-
-	/**
-	 * DT has terminators.
-	 * @return java.util.Iterator
-	 */
-	protected Iterator getTerminators() {
-		return Arrays.asList(terminators).iterator();
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/HedEmpty.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/HedEmpty.java
deleted file mode 100644
index 92c30da..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/HedEmpty.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.core.internal.contentmodel.chtml;
-
-
-
-import org.eclipse.wst.xml.core.internal.contentmodel.CMContent;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMElementDeclaration;
-
-/**
- * Base class for EMPTY type element declarations.
- */
-abstract class HedEmpty extends HTMLElemDeclImpl {
-
-	/**
-	 */
-	public HedEmpty(String elementName, ElementCollection collection) {
-		super(elementName, collection);
-		typeDefinitionName = ComplexTypeDefinitionFactory.CTYPE_EMPTY;
-		// EMPTY type has no end tag.
-		omitType = OMIT_END_MUST;
-	}
-
-	/**
-	 * Content.<br>
-	 * EMPTY type always returns <code>null</code>.
-	 * <br>
-	 * @return org.eclipse.wst.xml.core.internal.contentmodel.CMContent
-	 */
-	public CMContent getContent() {
-		return null;
-	}
-
-	/**
-	 * Content type.<br>
-	 * @see org.eclipse.wst.xml.core.internal.contentmodel.CMElementDeclaration
-	 */
-	public int getContentType() {
-		return CMElementDeclaration.EMPTY;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/HedFORM.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/HedFORM.java
deleted file mode 100644
index 599ca9a..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/HedFORM.java
+++ /dev/null
@@ -1,91 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this 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.core.internal.contentmodel.chtml;
-
-
-
-import java.util.Arrays;
-
-import org.eclipse.wst.xml.core.internal.contentmodel.CMContent;
-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;
-
-/**
- * FORM.
- */
-final class HedFORM extends HedFlowContainer {
-
-	/**
-	 */
-	public HedFORM(ElementCollection collection) {
-		super(CHTMLNamespace.ElementName.FORM, collection);
-		layoutType = LAYOUT_BLOCK;
-	}
-
-	/**
-	 * %attrs;
-	 * (action %URI; #REQUIRED)
-	 * (method (GET|POST) GET)
-	 * (enctype %ContentType; "application/x-www-form-urlencoded")
-	 * (accept %ContentTypes; #IMPLIED)
-	 * (name CDATA #IMPLIED)
-	 * (onsubmit %Script; #IMPLIED)
-	 * (onreset %Script; #IMPLIED)
-	 * (target %FrameTarget; #IMPLIED)
-	 * (accept-charset %Charsets; #IMPLIED)
-	 */
-	protected void createAttributeDeclarations() {
-		if (attributes != null)
-			return; // already created.
-		if (attributeCollection == null)
-			return; // fatal
-
-		attributes = new CMNamedNodeMapImpl();
-
-		// %attrs;
-		attributeCollection.getAttrs(attributes);
-
-		String[] names = {CHTMLNamespace.ATTR_NAME_ACTION, CHTMLNamespace.ATTR_NAME_METHOD, CHTMLNamespace.ATTR_NAME_ENCTYPE, CHTMLNamespace.ATTR_NAME_NAME,};
-		attributeCollection.getDeclarations(attributes, Arrays.asList(names).iterator());
-	}
-
-	/**
-	 * Exclusion.
-	 * <code>FORM</code> has the exclusion.
-	 * It is <code>FORM</code> itself.
-	 */
-	public CMContent getExclusion() {
-		if (exclusion != null)
-			return exclusion; // already created.
-		if (elementCollection == null)
-			return null; // fatal
-
-		exclusion = new CMGroupImpl(CMGroup.CHOICE, 1, 1);
-		CMNode form = elementCollection.getNamedItem(CHTMLNamespace.ElementName.FORM);
-		if (form != null)
-			exclusion.appendChild(form);
-
-		return exclusion;
-	}
-
-	/**
-	 */
-	public CMNamedNodeMap getProhibitedAncestors() {
-		if (prohibitedAncestors != null)
-			return prohibitedAncestors;
-
-		String[] names = {CHTMLNamespace.ElementName.DIR, CHTMLNamespace.ElementName.FORM, CHTMLNamespace.ElementName.MENU};
-		prohibitedAncestors = elementCollection.getDeclarations(names);
-
-		return prohibitedAncestors;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/HedFlowContainer.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/HedFlowContainer.java
deleted file mode 100644
index 99f307b..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/HedFlowContainer.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.html.core.internal.contentmodel.chtml;
-
-
-
-/**
- * Base class for (%flow;)* containers.
- */
-abstract class HedFlowContainer extends HTMLElemDeclImpl {
-
-	/**
-	 */
-	public HedFlowContainer(String elementName, ElementCollection collection) {
-		super(elementName, collection);
-		typeDefinitionName = ComplexTypeDefinitionFactory.CTYPE_FLOW_CONTAINER;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/HedHEAD.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/HedHEAD.java
deleted file mode 100644
index 2366dce..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/HedHEAD.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.wst.html.core.internal.contentmodel.chtml;
-
-
-
-import java.util.Arrays;
-import java.util.Iterator;
-
-/**
- * HTML.
- */
-final class HedHEAD extends HTMLElemDeclImpl {
-
-	private static String[] terminators = {CHTMLNamespace.ElementName.HEAD, CHTMLNamespace.ElementName.BODY, CHTMLNamespace.ElementName.HTML};
-
-	/**
-	 */
-	public HedHEAD(ElementCollection collection) {
-		super(CHTMLNamespace.ElementName.HEAD, collection);
-		typeDefinitionName = ComplexTypeDefinitionFactory.CTYPE_HEAD;
-		layoutType = LAYOUT_HIDDEN;
-		omitType = OMIT_BOTH;
-	}
-
-	/**
-	 * Create all attribute declarations.
-	 * This method is called once in the constructor of the super class.
-	 * The <code>HEAD</code> element may have the following attributes:
-	 * <table>
-	 * <tbody>
-	 *   <tr>
-	 *     <th>NAME</th><th>TYPE</th><th>USAGE</th><th>DEFAULT (INITIAL) VALUE</th><th>MEMO</th>
-	 *   </tr>
-	 *   <tr>
-	 *     <td>%i18n;</td><td>-</td><td>-</td><td>-</td><td>-</td>
-	 *   </tr>
-	 *   <tr>
-	 *     <td>profile</td><td>URI</td><td>#IMPLIED</td><td>N/A</td><td>-</td>
-	 *   </tr>
-	 * </tbody>
-	 * </table>
-	 */
-	protected void createAttributeDeclarations() {
-		if (attributes != null)
-			return; // already created.
-		if (attributeCollection == null)
-			return; // fatal
-
-		attributes = new CMNamedNodeMapImpl();
-
-		// %i18n;
-		attributeCollection.getI18n(attributes);
-	}
-
-	/**
-	 * HEAD has terminators.
-	 * @return java.util.Iterator
-	 */
-	protected Iterator getTerminators() {
-		return Arrays.asList(terminators).iterator();
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/HedHR.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/HedHR.java
deleted file mode 100644
index ed65ab3..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/HedHR.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.core.internal.contentmodel.chtml;
-
-
-
-import java.util.Arrays;
-
-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.CMNamedNodeMap;
-
-/**
- * HR.
- */
-final class HedHR extends HedEmpty {
-
-	/**
-	 */
-	public HedHR(ElementCollection collection) {
-		super(CHTMLNamespace.ElementName.HR, collection);
-		layoutType = LAYOUT_BLOCK;
-	}
-
-	/**
-	 * %attrs
-	 * (align (left|center|right) #IMPLIED) ... should be defined locally.
-	 * (noshade (noshade) #IMPLIED)
-	 * (size %Pixels; #IMPLIED)
-	 * (width %Length; #IMPLIED)
-	 * (color %Color; #IMPLIED) ... D205514
-	 */
-	protected void createAttributeDeclarations() {
-		if (attributes != null)
-			return; // already created.
-		if (attributeCollection == null)
-			return; // fatal
-
-		attributes = new CMNamedNodeMapImpl();
-
-		// %attrs;
-		attributeCollection.getAttrs(attributes);
-
-		// (align (left|center|right) #IMPLIED) ... should be defined locally.
-		HTMLCMDataTypeImpl atype = new HTMLCMDataTypeImpl(CMDataType.ENUM);
-		String[] values = {CHTMLNamespace.ATTR_VALUE_LEFT, CHTMLNamespace.ATTR_VALUE_CENTER, CHTMLNamespace.ATTR_VALUE_RIGHT};
-		atype.setEnumValues(values);
-		HTMLAttrDeclImpl attr = new HTMLAttrDeclImpl(CHTMLNamespace.ATTR_NAME_ALIGN, atype, CMAttributeDeclaration.OPTIONAL);
-		attributes.putNamedItem(CHTMLNamespace.ATTR_NAME_ALIGN, attr);
-
-		// the rest.
-		String[] names = {CHTMLNamespace.ATTR_NAME_NOSHADE, CHTMLNamespace.ATTR_NAME_SIZE, CHTMLNamespace.ATTR_NAME_WIDTH,};
-		attributeCollection.getDeclarations(attributes, Arrays.asList(names).iterator());
-	}
-
-	/**
-	 */
-	public CMNamedNodeMap getProhibitedAncestors() {
-		if (prohibitedAncestors != null)
-			return prohibitedAncestors;
-
-		String[] names = {CHTMLNamespace.ElementName.DIR, CHTMLNamespace.ElementName.MENU};
-		prohibitedAncestors = elementCollection.getDeclarations(names);
-
-		return prohibitedAncestors;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/HedHTML.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/HedHTML.java
deleted file mode 100644
index a6243d2..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/HedHTML.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.wst.html.core.internal.contentmodel.chtml;
-
-
-
-import java.util.Arrays;
-import java.util.Iterator;
-
-import org.eclipse.wst.html.core.internal.contentmodel.HTMLAttributeDeclaration;
-
-
-/**
- * HTML.
- */
-final class HedHTML extends HTMLElemDeclImpl {
-
-	private static String[] terminators = {CHTMLNamespace.ElementName.HTML};
-
-	/**
-	 */
-	public HedHTML(ElementCollection collection) {
-		super(CHTMLNamespace.ElementName.HTML, collection);
-		typeDefinitionName = ComplexTypeDefinitionFactory.CTYPE_HTML;
-		layoutType = LAYOUT_HIDDEN;
-		omitType = OMIT_BOTH;
-	}
-
-	/**
-	 * Create all attribute declarations.
-	 * This method is called once in the constructor of the super class.
-	 * The <code>HTML</code> element may have the following attributes:
-	 * <table>
-	 * <tbody>
-	 *   <tr>
-	 *     <th>NAME</th><th>TYPE</th><th>USAGE</th><th>DEFAULT (INITIAL) VALUE</th><th>MEMO</th>
-	 *   </tr>
-	 *   <tr>
-	 *     <td><code>%i18n;</code></td><td>-</td><td>-</td><td>-</td>
-	 *     <td>{@link PDCMDocImpl#getAttrDeclarationsI18n}</td>
-	 *   </tr>
-	 *   <tr>
-	 *     <td>version</td><td>CDATA</td><td>#FIXED</td>
-	 *     <td>{@link HTML_VERSION_TRANSITIONAL}</td><td>deplecated in HTML4.01</td>
-	 *   </tr>
-	 * </tbody>
-	 * </table><br>
-	 */
-	protected void createAttributeDeclarations() {
-		if (attributes != null)
-			return; // already created.
-		if (attributeCollection == null)
-			return; // fatal
-
-		attributes = new CMNamedNodeMapImpl();
-
-		// %i18n;
-		attributeCollection.getI18n(attributes);
-		// version
-		HTMLAttributeDeclaration adec = attributeCollection.getDeclaration(CHTMLNamespace.ATTR_NAME_VERSION);
-		if (adec != null)
-			attributes.putNamedItem(CHTMLNamespace.ATTR_NAME_VERSION, adec);
-	}
-
-	/**
-	 * HTML has terminators.
-	 * @return java.util.Iterator
-	 */
-	protected Iterator getTerminators() {
-		return Arrays.asList(terminators).iterator();
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/HedHeading.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/HedHeading.java
deleted file mode 100644
index 398e97a..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/HedHeading.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.wst.html.core.internal.contentmodel.chtml;
-
-
-
-import org.eclipse.wst.xml.core.internal.contentmodel.CMNamedNodeMap;
-
-/**
- * H[1-6].
- */
-final class HedHeading extends HedInlineContainer {
-
-	/**
-	 */
-	public HedHeading(String elementName, ElementCollection collection) {
-		super(elementName, collection);
-		correctionType = CORRECT_EMPTY;
-		layoutType = LAYOUT_BLOCK;
-	}
-
-	/**
-	 * Create all attribute declarations.
-	 * This method is called once in the constructor of the super class.
-	 * The <code>H1</code> element may have the following attributes:
-	 * <table>
-	 * <tbody>
-	 *   <tr>
-	 *     <th>NAME</th><th>TYPE</th><th>USAGE</th><th>DEFAULT (INITIAL) VALUE</th><th>MEMO</th>
-	 *   </tr>
-	 *   <tr>
-	 *     <td>%attrs;</td><td>-</td><td>-</td><td>-</td><td>-</td>
-	 *   </tr>
-	 *   <tr>
-	 *     <td>%align;</td><td>-</td><td>-</td><td>-</td><td>-</td>
-	 *   </tr>
-	 * </tbody>
-	 * </table>
-	 * <p><b>%align;</b> means <code>align (left|center|right|justify) #IMPLIED</code>.
-	 * Unfortunately, this <code>align</code> is different from one in
-	 * <code>IMG</code> or <code>TABLE</code>.  So, the attribute declaration
-	 * of <code>align</code> should be localy created and it shouldn't be registered
-	 * in a <code>HCMDocImpl</code> instance.</p>
-	 * <p>However, %align is used in sevaral times.  I wouldn't write same code
-	 * in many times.  So, I add a new utility method into <code>CMUtil</code>
-	 * to create the attribute declaration.</p>
-	 * <br>
-	 */
-	protected void createAttributeDeclarations() {
-		if (attributes != null)
-			return; // already created.
-		if (attributeCollection == null)
-			return; // fatal
-
-		attributes = new CMNamedNodeMapImpl();
-
-		// %attrs;
-		attributeCollection.getAttrs(attributes);
-		// align
-		HTMLAttrDeclImpl attr = AttributeCollection.createAlignForParagraph();
-		if (attr != null)
-			attributes.putNamedItem(CHTMLNamespace.ATTR_NAME_ALIGN, attr);
-	}
-
-	/**
-	 */
-	public CMNamedNodeMap getProhibitedAncestors() {
-		if (prohibitedAncestors != null)
-			return prohibitedAncestors;
-
-		String[] names = {CHTMLNamespace.ElementName.DIR, CHTMLNamespace.ElementName.MENU};
-		prohibitedAncestors = elementCollection.getDeclarations(names);
-
-		return prohibitedAncestors;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/HedIMG.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/HedIMG.java
deleted file mode 100644
index ae95384..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/HedIMG.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.wst.html.core.internal.contentmodel.chtml;
-
-
-
-import java.util.Arrays;
-
-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.CMNamedNodeMap;
-
-/**
- * IMG.
- */
-final class HedIMG extends HedEmpty {
-
-	/**
-	 */
-	public HedIMG(ElementCollection collection) {
-		super(CHTMLNamespace.ElementName.IMG, collection);
-		layoutType = LAYOUT_OBJECT;
-	}
-
-	/**
-	 * IMG.
-	 * %attrs;
-	 * (src %URI; #REQUIRED): should be defined locally.
-	 * (alt %Text; #REQUIRED)
-	 * (longdesc %URI; #IMPLIED)
-	 * (name CDATA #IMPLIED)
-	 * (height %Length; #IMPLIED)
-	 * (width %Length; #IMPLIED)
-	 * (usemap %URI; #IMPLIED)
-	 * (ismap (ismap) #IMPLIED)
-	 * (align %IAlign; #IMPLIED): should be defined locally.
-	 * (border %Pixels; #IMPLIED)
-	 * (hspace %Pixels; #IMPLIED)
-	 * (vspace %Pixels; #IMPLIED)
-	 * (mapfile %URI; #IMPLIED)
-	 */
-	protected void createAttributeDeclarations() {
-		if (attributes != null)
-			return; // already created.
-		if (attributeCollection == null)
-			return; // fatal
-
-		attributes = new CMNamedNodeMapImpl();
-
-		// %attrs;
-		attributeCollection.getAttrs(attributes);
-
-		// (src %URI; #REQUIRED): should be defined locally.
-		HTMLCMDataTypeImpl atype = null;
-		HTMLAttrDeclImpl attr = null;
-		atype = new HTMLCMDataTypeImpl(CMDataType.URI);
-		attr = new HTMLAttrDeclImpl(CHTMLNamespace.ATTR_NAME_SRC, atype, CMAttributeDeclaration.REQUIRED);
-		attributes.putNamedItem(CHTMLNamespace.ATTR_NAME_SRC, attr);
-
-		String[] names = {CHTMLNamespace.ATTR_NAME_ALT, CHTMLNamespace.ATTR_NAME_NAME, CHTMLNamespace.ATTR_NAME_HEIGHT, CHTMLNamespace.ATTR_NAME_WIDTH, CHTMLNamespace.ATTR_NAME_BORDER, CHTMLNamespace.ATTR_NAME_HSPACE, CHTMLNamespace.ATTR_NAME_VSPACE,};
-		attributeCollection.getDeclarations(attributes, Arrays.asList(names).iterator());
-
-		// align (local); should be defined locally.
-		attr = AttributeCollection.createAlignForImage();
-		attributes.putNamedItem(CHTMLNamespace.ATTR_NAME_ALIGN, attr);
-	}
-
-	/**
-	 */
-	public CMNamedNodeMap getProhibitedAncestors() {
-		if (prohibitedAncestors != null)
-			return prohibitedAncestors;
-
-		String[] names = {CHTMLNamespace.ElementName.PRE};
-		prohibitedAncestors = elementCollection.getDeclarations(names);
-
-		return prohibitedAncestors;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/HedINPUT.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/HedINPUT.java
deleted file mode 100644
index bf0951c..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/HedINPUT.java
+++ /dev/null
@@ -1,108 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this 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.core.internal.contentmodel.chtml;
-
-
-
-import java.util.Arrays;
-
-import org.eclipse.wst.xml.core.internal.contentmodel.CMAttributeDeclaration;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMDataType;
-
-/**
- * INPUT.
- */
-final class HedINPUT extends HedEmpty {
-
-	/**
-	 */
-	public HedINPUT(ElementCollection collection) {
-		super(CHTMLNamespace.ElementName.INPUT, collection);
-		layoutType = LAYOUT_OBJECT;
-	}
-
-	/**
-	 * INPUT.
-	 * %attrs;
-	 * (type %InputType; TEXT) ... should be defined locally.
-	 * (name CDATA #IMPLIED)
-	 * (value CDATA #IMPLIED)
-	 * (checked (checked) #IMPLIED)
-	 * (disabled (disabled) #IMPLIED)
-	 * (readonly (readonly) #IMPLIED)
-	 * (size CDATA #IMPLIED) ... should be defined locally.
-	 * (maxlength NUMBER #IMPLIED)
-	 * (src %URI; #IMPLIED)
-	 * (alt CDATA #IMPLIED) ... should be defined locally.
-	 * (usemap %URI; #IMPLIED)
-	 * (ismap (ismap) #IMPLIED)
-	 * (tabindex NUMBER #IMPLIED)
-	 * (accesskey %Character; #IMPLIED)
-	 * (onfocus %Script; #IMPLIED)
-	 * (onblur %Script; #IMPLIED)
-	 * (onselect %Script; #IMPLIED)
-	 * (onchange %Script; #IMPLIED)
-	 * (accept %ContentTypes; #IMPLIED)
-	 * (align %IAlign; #IMPLIED) ... should be defined locally.
-	 * (istyle CDATA #IMPLIED)
-	 * <<D215684
-	 * (width CDATA; #IMPLIED)
-	 * (height CDATA; #IMPLIED)
-	 * (border CDATA; #IMPLIED)
-	 * D215684
-	 */
-	protected void createAttributeDeclarations() {
-		if (attributes != null)
-			return; // already created.
-		if (attributeCollection == null)
-			return; // fatal
-
-		attributes = new CMNamedNodeMapImpl();
-
-		// %attrs;
-		attributeCollection.getAttrs(attributes);
-
-		HTMLCMDataTypeImpl atype = null;
-		HTMLAttrDeclImpl attr = null;
-		// (type %InputType; TEXT) ... should be defined locally.
-		// NOTE: %InputType is ENUM;
-		// (text | password | checkbox | radio | submit | reset |
-		//  file | hidden | image | button)
-		atype = new HTMLCMDataTypeImpl(CMDataType.ENUM);
-		String[] values = {CHTMLNamespace.ATTR_VALUE_TEXT, CHTMLNamespace.ATTR_VALUE_PASSWORD, CHTMLNamespace.ATTR_VALUE_CHECKBOX, CHTMLNamespace.ATTR_VALUE_RADIO, CHTMLNamespace.ATTR_VALUE_SUBMIT, CHTMLNamespace.ATTR_VALUE_RESET, CHTMLNamespace.ATTR_VALUE_HIDDEN,};
-		atype.setEnumValues(values);
-		atype.setImpliedValue(CMDataType.IMPLIED_VALUE_DEFAULT, CHTMLNamespace.ATTR_VALUE_TEXT);
-		attr = new HTMLAttrDeclImpl(CHTMLNamespace.ATTR_NAME_TYPE, atype, CMAttributeDeclaration.OPTIONAL);
-		attributes.putNamedItem(CHTMLNamespace.ATTR_NAME_TYPE, attr);
-
-		// (size CDATA #IMPLIED) ... should be defined locally.
-		atype = new HTMLCMDataTypeImpl(CMDataType.CDATA);
-		attr = new HTMLAttrDeclImpl(CHTMLNamespace.ATTR_NAME_SIZE, atype, CMAttributeDeclaration.OPTIONAL);
-		attributes.putNamedItem(CHTMLNamespace.ATTR_NAME_SIZE, attr);
-
-		// (alt CDATA #IMPLIED) ... should be defined locally.
-		atype = new HTMLCMDataTypeImpl(CMDataType.CDATA);
-		attr = new HTMLAttrDeclImpl(CHTMLNamespace.ATTR_NAME_ALT, atype, CMAttributeDeclaration.OPTIONAL);
-		attributes.putNamedItem(CHTMLNamespace.ATTR_NAME_ALT, attr);
-
-		// (align %IAlign; #IMPLIED) ... should be defined locally.
-		attr = AttributeCollection.createAlignForImage();
-		attributes.putNamedItem(CHTMLNamespace.ATTR_NAME_ALIGN, attr);
-
-		// the rest.
-		String[] names = {CHTMLNamespace.ATTR_NAME_NAME, CHTMLNamespace.ATTR_NAME_VALUE, CHTMLNamespace.ATTR_NAME_CHECKED, CHTMLNamespace.ATTR_NAME_SIZE, CHTMLNamespace.ATTR_NAME_MAXLENGTH, CHTMLNamespace.ATTR_NAME_SRC, CHTMLNamespace.ATTR_NAME_ALT, CHTMLNamespace.ATTR_NAME_ALIGN, CHTMLNamespace.ATTR_NAME_ISTYLE,
-		//<<D215684
-					CHTMLNamespace.ATTR_NAME_WIDTH, CHTMLNamespace.ATTR_NAME_HEIGHT, CHTMLNamespace.ATTR_NAME_BORDER
-		//<D215684
-		};
-		attributeCollection.getDeclarations(attributes, Arrays.asList(names).iterator());
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/HedInlineContainer.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/HedInlineContainer.java
deleted file mode 100644
index 99f14c9..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/HedInlineContainer.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.core.internal.contentmodel.chtml;
-
-
-
-/**
- * Base class for (%inline;)* containers.
- */
-abstract class HedInlineContainer extends HTMLElemDeclImpl {
-
-	/**
-	 * HedInlineContainer.
-	 * @param elementName java.lang.String
-	 * @param collection ElementCollection
-	 */
-	public HedInlineContainer(String elementName, ElementCollection collection) {
-		super(elementName, collection);
-		typeDefinitionName = ComplexTypeDefinitionFactory.CTYPE_INLINE_CONTAINER;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/HedLI.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/HedLI.java
deleted file mode 100644
index 6a3a344..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/HedLI.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.core.internal.contentmodel.chtml;
-
-
-
-import java.util.Arrays;
-import java.util.Iterator;
-
-/**
- * LI.
- */
-final class HedLI extends HedFlowContainer {
-
-	private static String[] terminators = {CHTMLNamespace.ElementName.LI};
-
-	/**
-	 */
-	public HedLI(ElementCollection collection) {
-		super(CHTMLNamespace.ElementName.LI, collection);
-		layoutType = LAYOUT_BLOCK;
-		omitType = OMIT_END_DEFAULT;
-	}
-
-	/**
-	 * %attrs;
-	 * (type %LIStyle; #IMPLIED) ... should be defined locally.
-	 * (value NUMBER #IMPLIED) ... should be defined locally.
-	 */
-	protected void createAttributeDeclarations() {
-		if (attributes != null)
-			return; // already created.
-		if (attributeCollection == null)
-			return; // fatal
-
-		attributes = new CMNamedNodeMapImpl();
-
-		// %attrs;
-		attributeCollection.getAttrs(attributes);
-
-	}
-
-	/**
-	 * LI has terminators.
-	 * @return java.util.Iterator
-	 */
-	protected Iterator getTerminators() {
-		return Arrays.asList(terminators).iterator();
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/HedListItemContainer.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/HedListItemContainer.java
deleted file mode 100644
index 9e457c7..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/HedListItemContainer.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.core.internal.contentmodel.chtml;
-
-
-
-/**
- * Base class for list item container declarations.
- * - OL, UL, MENU, DIR.
- */
-abstract class HedListItemContainer extends HTMLElemDeclImpl {
-
-	/**
-	 */
-	public HedListItemContainer(String elementName, ElementCollection collection) {
-		super(elementName, collection);
-		typeDefinitionName = ComplexTypeDefinitionFactory.CTYPE_LI_CONTAINER;
-		correctionType = CORRECT_EMPTY;
-		layoutType = LAYOUT_BLOCK;
-		indentChild = true;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/HedMENU.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/HedMENU.java
deleted file mode 100644
index 581d954..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/HedMENU.java
+++ /dev/null
@@ -1,86 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this 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.core.internal.contentmodel.chtml;
-
-
-
-import java.util.Arrays;
-
-import org.eclipse.wst.xml.core.internal.contentmodel.CMContent;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMGroup;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMNamedNodeMap;
-
-/**
- * MENU/DIR.
- */
-final class HedMENU extends HedListItemContainer {
-
-	/**
-	 */
-	public HedMENU(String elementName, ElementCollection collection) {
-		super(elementName, collection);
-	}
-
-	/**
-	 * MENU/DIR.
-	 * (compact (compact) #IMPLIED)
-	 */
-	protected void createAttributeDeclarations() {
-		if (attributes != null)
-			return; // already created.
-		if (attributeCollection == null)
-			return; // fatal
-
-		attributes = new CMNamedNodeMapImpl();
-
-		// %attrs;
-		attributeCollection.getAttrs(attributes);
-
-	}
-
-	/**
-	 * Exclusion.
-	 * <code>MENU/DIR</code> has the exclusion.
-	 * It is <code>%block;</code>.
-	 * %block; is:
-	 * P | %heading; | %list; | %preformatted; | DL | DIV | CENTER |
-	 * NOSCRIPT | NOFRAMES | BLOCKQUOTE | FORM | ISINDEX | HR |
-	 * TABLE | FIELDSET | ADDRESS.
-	 * %heading; is: H1 | H2 | H3 | H4 | H5 | H6.
-	 * %list; is : UL | OL | DIR | MENU.
-	 * %preformatted; is PRE.
-	 * <br>
-	 */
-	public CMContent getExclusion() {
-		if (exclusion != null)
-			return exclusion; // already created.
-		if (elementCollection == null)
-			return null;
-
-		// %block;
-		exclusion = new CMGroupImpl(CMGroup.CHOICE, 1, 1);
-		String[] names = {CHTMLNamespace.ElementName.P, CHTMLNamespace.ElementName.H1, CHTMLNamespace.ElementName.H2, CHTMLNamespace.ElementName.H3, CHTMLNamespace.ElementName.H4, CHTMLNamespace.ElementName.H5, CHTMLNamespace.ElementName.H6, CHTMLNamespace.ElementName.UL, CHTMLNamespace.ElementName.OL, CHTMLNamespace.ElementName.DIR, CHTMLNamespace.ElementName.MENU, CHTMLNamespace.ElementName.PRE, CHTMLNamespace.ElementName.DL, CHTMLNamespace.ElementName.DIV, CHTMLNamespace.ElementName.CENTER, CHTMLNamespace.ElementName.BLOCKQUOTE, CHTMLNamespace.ElementName.FORM, CHTMLNamespace.ElementName.HR, CHTMLNamespace.ElementName.ADDRESS};
-		elementCollection.getDeclarations(exclusion, Arrays.asList(names).iterator());
-		return exclusion;
-	}
-
-	/**
-	 */
-	public CMNamedNodeMap getProhibitedAncestors() {
-		if (prohibitedAncestors != null)
-			return prohibitedAncestors;
-
-		String[] names = {CHTMLNamespace.ElementName.DIR, CHTMLNamespace.ElementName.MENU};
-		prohibitedAncestors = elementCollection.getDeclarations(names);
-
-		return prohibitedAncestors;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/HedMETA.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/HedMETA.java
deleted file mode 100644
index 882eca9..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/HedMETA.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.wst.html.core.internal.contentmodel.chtml;
-
-
-
-import java.util.Arrays;
-
-import org.eclipse.wst.html.core.internal.contentmodel.HTMLCMDataType;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMAttributeDeclaration;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMDataType;
-
-/**
- * META.
- */
-final class HedMETA extends HedEmpty {
-
-	/**
-	 */
-	public HedMETA(ElementCollection collection) {
-		super(CHTMLNamespace.ElementName.META, collection);
-		layoutType = LAYOUT_HIDDEN;
-	}
-
-	/**
-	 * META.
-	 * %i18n;
-	 * (http-equiv NAME #IMPLIED)
-	 * (name NAME #IMPLIED) ... should be defined locally.
-	 * (content CDATA #REQUIRED)
-	 * (scheme CDATA #IMPLIED)
-	 */
-	protected void createAttributeDeclarations() {
-		if (attributes != null)
-			return; // already created.
-		if (attributeCollection == null)
-			return; // fatal
-
-		attributes = new CMNamedNodeMapImpl();
-
-		// %i18n;
-		attributeCollection.getI18n(attributes);
-
-		// (name NAME #IMPLIED) ... should be defined locally.
-		HTMLCMDataTypeImpl atype = new HTMLCMDataTypeImpl(HTMLCMDataType.NAME);
-		HTMLAttrDeclImpl attr = new HTMLAttrDeclImpl(CHTMLNamespace.ATTR_NAME_NAME, atype, CMAttributeDeclaration.OPTIONAL);
-		attributes.putNamedItem(CHTMLNamespace.ATTR_NAME_NAME, attr);
-
-		// 249493
-		atype = new HTMLCMDataTypeImpl(CMDataType.CDATA);
-		attr = new HTMLAttrDeclImpl(CHTMLNamespace.ATTR_NAME_CONTENT, atype, CMAttributeDeclaration.OPTIONAL);
-		attributes.putNamedItem(CHTMLNamespace.ATTR_NAME_CONTENT, attr);
-
-		String[] names = {CHTMLNamespace.ATTR_NAME_HTTP_EQUIV,
-		//		CHTMLNamespace.ATTR_NAME_CONTENT
-		};
-		attributeCollection.getDeclarations(attributes, Arrays.asList(names).iterator());
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/HedOL.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/HedOL.java
deleted file mode 100644
index b2583d0..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/HedOL.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.core.internal.contentmodel.chtml;
-
-
-
-import org.eclipse.wst.xml.core.internal.contentmodel.CMNamedNodeMap;
-
-/**
- * OL.
- */
-final class HedOL extends HedListItemContainer {
-
-	/**
-	 */
-	public HedOL(ElementCollection collection) {
-		super(CHTMLNamespace.ElementName.OL, collection);
-	}
-
-	/**
-	 * OL.
-	 * (type %OLStyle; #IMPLIED) ... should be defined locally.
-	 * (compact (compact) #IMPLIED)
-	 * (start NUMBER #IMPLIED)
-	 */
-	protected void createAttributeDeclarations() {
-		if (attributes != null)
-			return; // already created.
-		if (attributeCollection == null)
-			return; // fatal
-
-		attributes = new CMNamedNodeMapImpl();
-
-		// %attrs;
-		attributeCollection.getAttrs(attributes);
-
-	}
-
-	/**
-	 */
-	public CMNamedNodeMap getProhibitedAncestors() {
-		if (prohibitedAncestors != null)
-			return prohibitedAncestors;
-
-		String[] names = {CHTMLNamespace.ElementName.DIR, CHTMLNamespace.ElementName.MENU};
-		prohibitedAncestors = elementCollection.getDeclarations(names);
-
-		return prohibitedAncestors;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/HedOPTION.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/HedOPTION.java
deleted file mode 100644
index 84a081d..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/HedOPTION.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.core.internal.contentmodel.chtml;
-
-
-
-import java.util.Arrays;
-import java.util.Iterator;
-
-/**
- * OPTION.
- */
-final class HedOPTION extends HedPcdata {
-
-	private static String[] terminators = {CHTMLNamespace.ElementName.OPTION};
-
-	/**
-	 */
-	public HedOPTION(ElementCollection collection) {
-		super(CHTMLNamespace.ElementName.OPTION, collection);
-		layoutType = LAYOUT_HIDDEN;
-		omitType = OMIT_END;
-	}
-
-	/**
-	 * OPTION.
-	 * %attrs;
-	 * (selected (selected) #IMPLIED)
-	 * (disabled (disabled) #IMPLIED)
-	 * (label %Text; #IMPLIED)
-	 * (value CDATA #IMPLIED)
-	 */
-	protected void createAttributeDeclarations() {
-		if (attributes != null)
-			return; // already created.
-		if (attributeCollection == null)
-			return; // fatal
-
-		attributes = new CMNamedNodeMapImpl();
-
-		// %attrs;
-		attributeCollection.getAttrs(attributes);
-
-		String[] names = {CHTMLNamespace.ATTR_NAME_SELECTED, CHTMLNamespace.ATTR_NAME_VALUE};
-		attributeCollection.getDeclarations(attributes, Arrays.asList(names).iterator());
-	}
-
-	/**
-	 * OPTION has terminators.
-	 * @return java.util.Iterator
-	 */
-	protected Iterator getTerminators() {
-		return Arrays.asList(terminators).iterator();
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/HedP.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/HedP.java
deleted file mode 100644
index eb056eb..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/HedP.java
+++ /dev/null
@@ -1,104 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this 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.core.internal.contentmodel.chtml;
-
-
-
-import java.util.Collection;
-import java.util.Iterator;
-import java.util.Vector;
-
-import org.eclipse.wst.xml.core.internal.contentmodel.CMNamedNodeMap;
-
-/**
- * P.
- */
-final class HedP extends HedInlineContainer {
-
-	private static Collection terminators = null;
-
-	/**
-	 */
-	public HedP(ElementCollection collection) {
-		super(CHTMLNamespace.ElementName.P, collection);
-		correctionType = CORRECT_EMPTY;
-		layoutType = LAYOUT_BLOCK;
-		omitType = OMIT_END;
-	}
-
-	/**
-	 * Create all attribute declarations.
-	 * This method is called once in the constructor of the super class.
-	 * The <code>P</code> element may have the following attributes:
-	 * <table>
-	 * <tbody>
-	 *   <tr>
-	 *     <th>NAME</th><th>TYPE</th><th>USAGE</th><th>DEFAULT (INITIAL) VALUE</th><th>MEMO</th>
-	 *   </tr>
-	 *   <tr>
-	 *     <td>%attrs;</td><td>-</td><td>-</td><td>-</td><td>-</td>
-	 *   </tr>
-	 *   <tr>
-	 *     <td>%align;</td><td>-</td><td>-</td><td>-</td><td>-</td>
-	 *   </tr>
-	 * </tbody>
-	 * </table>
-	 * <p><b>%align;</b> means <code>align (left|center|right|justify) #IMPLIED</code>.
-	 * Unfortunately, this <code>align</code> is different from one in
-	 * <code>IMG</code> or <code>TABLE</code>.  So, the attribute declaration
-	 * of <code>align</code> should be localy created and it shouldn't be registered
-	 * in a <code>HCMDocImpl</code> instance.</p>
-	 * <p>However, %align is used in sevaral times.  I wouldn't write same code
-	 * in many times.  So, I add a new utility method into <code>CMUtil</code>
-	 * to create the attribute declaration.</p>
-	 * <br>
-	 */
-	protected void createAttributeDeclarations() {
-		if (attributes != null)
-			return; // already created.
-		if (attributeCollection == null)
-			return; // fatal
-		attributes = new CMNamedNodeMapImpl();
-		// %attrs;
-		attributeCollection.getAttrs(attributes);
-		// align
-		HTMLAttrDeclImpl adec = AttributeCollection.createAlignForParagraph();
-		attributes.putNamedItem(CHTMLNamespace.ATTR_NAME_ALIGN, adec);
-	}
-
-	/**
-	 */
-	public CMNamedNodeMap getProhibitedAncestors() {
-		if (prohibitedAncestors != null)
-			return prohibitedAncestors;
-		String[] names = {CHTMLNamespace.ElementName.DIR, CHTMLNamespace.ElementName.MENU};
-		prohibitedAncestors = elementCollection.getDeclarations(names);
-		return prohibitedAncestors;
-	}
-
-	/**
-	 * Return names of terminators.
-	 * <code>P</code> has terminators.
-	 * @return java.util.Iterator
-	 */
-	protected Iterator getTerminators() {
-		if (terminators != null)
-			return terminators.iterator();
-		//<<D217982
-		terminators = new Vector();
-		terminators.addAll(elementCollection.getNamesOfBlock());
-		terminators.add(CHTMLNamespace.ElementName.LI);
-		terminators.add(CHTMLNamespace.ElementName.DT);
-		terminators.add(CHTMLNamespace.ElementName.DD);
-		//D217982
-		return terminators.iterator();
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/HedPRE.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/HedPRE.java
deleted file mode 100644
index 99f5975..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/HedPRE.java
+++ /dev/null
@@ -1,90 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this 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.core.internal.contentmodel.chtml;
-
-
-
-import java.util.Arrays;
-
-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.CMGroup;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMNamedNodeMap;
-
-/**
- * PRE.
- */
-final class HedPRE extends HedInlineContainer {
-
-	/**
-	 * PRE element should keep spaces in its source.
-	 */
-	public HedPRE(ElementCollection collection) {
-		super(CHTMLNamespace.ElementName.PRE, collection);
-		// CORRECT_EMPTY - GROUP_COMPACT
-		correctionType = CORRECT_EMPTY;
-
-		keepSpaces = true;
-	}
-
-	/**
-	 * %attrs;
-	 * (width NUMBER #IMPLIED) ... should be defined locally.
-	 */
-	protected void createAttributeDeclarations() {
-		if (attributes != null)
-			return; // already created.
-		if (attributeCollection == null)
-			return; // fatal
-
-		attributes = new CMNamedNodeMapImpl();
-
-		// %attrs;
-		attributeCollection.getAttrs(attributes);
-		// (width NUMBER #IMPLIED) ... should be defined locally.
-		HTMLCMDataTypeImpl atype = new HTMLCMDataTypeImpl(CMDataType.NUMBER);
-		HTMLAttrDeclImpl attr = new HTMLAttrDeclImpl(CHTMLNamespace.ATTR_NAME_WIDTH, atype, CMAttributeDeclaration.OPTIONAL);
-		attributes.putNamedItem(CHTMLNamespace.ATTR_NAME_WIDTH, attr);
-	}
-
-	/**
-	 * Exclusion.
-	 * <code>PRE</code> has the exclusion.
-	 * It is <code>%pre.exclusion;</code>.
-	 * %pre.exclusion is:
-	 * IMG | OBJECT | APPLET | BIG | SMALL | SUB | SUP | FONT | BASEFONT
-	 */
-	public CMContent getExclusion() {
-		if (exclusion != null)
-			return exclusion; // already created.
-		if (elementCollection == null)
-			return null;
-
-		exclusion = new CMGroupImpl(CMGroup.CHOICE, 1, 1);
-		String[] names = {CHTMLNamespace.ElementName.IMG,};
-		elementCollection.getDeclarations(exclusion, Arrays.asList(names).iterator());
-
-		return exclusion;
-	}
-
-	/**
-	 */
-	public CMNamedNodeMap getProhibitedAncestors() {
-		if (prohibitedAncestors != null)
-			return prohibitedAncestors;
-
-		String[] names = {CHTMLNamespace.ElementName.DIR, CHTMLNamespace.ElementName.MENU};
-		prohibitedAncestors = elementCollection.getDeclarations(names);
-
-		return prohibitedAncestors;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/HedPcdata.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/HedPcdata.java
deleted file mode 100644
index 15b13c3..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/HedPcdata.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.html.core.internal.contentmodel.chtml;
-
-
-
-import org.eclipse.wst.xml.core.internal.contentmodel.CMContent;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMElementDeclaration;
-
-/**
- * Base class for PCDATA type element declarations.<br>
- */
-abstract class HedPcdata extends HTMLElemDeclImpl {
-
-	/**
-	 */
-	public HedPcdata(String elementName, ElementCollection collection) {
-		super(elementName, collection);
-		typeDefinitionName = ComplexTypeDefinitionFactory.CTYPE_PCDATA;
-	}
-
-	/**
-	 * Content.<br>
-	 * PCDATA type always returns <code>null</code>.
-	 * <br>
-	 * @return org.eclipse.wst.xml.core.internal.contentmodel.CMContent
-	 */
-	public CMContent getContent() {
-		return null;
-	}
-
-	/**
-	 * Content type.<br>
-	 * @see org.eclipse.wst.xml.core.internal.contentmodel.CMElementDeclaration
-	 */
-	public int getContentType() {
-		return CMElementDeclaration.PCDATA;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/HedSELECT.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/HedSELECT.java
deleted file mode 100644
index cbd0bb8..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/HedSELECT.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.html.core.internal.contentmodel.chtml;
-
-
-
-import java.util.Arrays;
-
-import org.eclipse.wst.xml.core.internal.contentmodel.CMAttributeDeclaration;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMDataType;
-
-/**
- * SELECT.
- */
-final class HedSELECT extends HTMLElemDeclImpl {
-
-	/**
-	 */
-	public HedSELECT(ElementCollection collection) {
-		super(CHTMLNamespace.ElementName.SELECT, collection);
-		typeDefinitionName = ComplexTypeDefinitionFactory.CTYPE_SELECT;
-		layoutType = LAYOUT_OBJECT;
-		indentChild = true;
-	}
-
-	/**
-	 * %attrs;
-	 * %reserved;
-	 * (name CDATA #IMPLIED)
-	 * (size NUMBER #IMPLIED) ... should be defined locally.
-	 * (multiple (multiple) #IMPLIED)
-	 * (disabled (disabled) #IMPLIED)
-	 * (tabindex NUMBER #IMPLIED)
-	 * (onfocus %Script; #IMPLIED)
-	 * (onblur %Script; #IMPLIED)
-	 * (onchange %Script; #IMPLIED)
-	 */
-	protected void createAttributeDeclarations() {
-		if (attributes != null)
-			return; // already created.
-		if (attributeCollection == null)
-			return; // fatal
-
-		attributes = new CMNamedNodeMapImpl();
-
-		// %attrs;
-		attributeCollection.getAttrs(attributes);
-
-		// (size NUMBER #IMPLIED) ... should be defined locally.
-		HTMLCMDataTypeImpl atype = new HTMLCMDataTypeImpl(CMDataType.NUMBER);
-		HTMLAttrDeclImpl attr = new HTMLAttrDeclImpl(CHTMLNamespace.ATTR_NAME_SIZE, atype, CMAttributeDeclaration.OPTIONAL);
-		attributes.putNamedItem(CHTMLNamespace.ATTR_NAME_SIZE, attr);
-
-		String[] names = {CHTMLNamespace.ATTR_NAME_NAME, CHTMLNamespace.ATTR_NAME_MULTIPLE,};
-		attributeCollection.getDeclarations(attributes, Arrays.asList(names).iterator());
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/HedSSIBase.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/HedSSIBase.java
deleted file mode 100644
index b0e0bd3..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/HedSSIBase.java
+++ /dev/null
@@ -1,52 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this 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.core.internal.contentmodel.chtml;
-
-import org.eclipse.wst.html.core.internal.contentmodel.HTMLElementDeclaration;
-import org.eclipse.wst.html.core.internal.provisional.HTMLCMProperties;
-
-
-
-
-/**
- * Base class for SSI declarations.
- */
-abstract class HedSSIBase extends HedEmpty {
-
-	/**
-	 */
-	public HedSSIBase(String elementName, ElementCollection collection) {
-		super(elementName, collection);
-		layoutType = LAYOUT_OBJECT;
-	}
-
-	/**
-	 */
-	public int getFormatType() {
-		return HTMLElementDeclaration.FORMAT_SSI;
-	}
-
-	/**
-	 */
-	public boolean supports(String propName) {
-		if (propName.equals(HTMLCMProperties.IS_SSI))
-			return true;
-		return super.supports(propName);
-	}
-
-	/*
-	 */
-	public Object getProperty(String propName) {
-		if (propName.equals(HTMLCMProperties.IS_SSI))
-			return new Boolean(true);
-		return super.getProperty(propName);
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/HedSSIConfig.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/HedSSIConfig.java
deleted file mode 100644
index d5e92e3..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/HedSSIConfig.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.html.core.internal.contentmodel.chtml;
-
-
-
-import java.util.Arrays;
-
-/**
- * SSI:CONFIG.
- */
-final class HedSSIConfig extends HedSSIBase {
-
-	/**
-	 */
-	public HedSSIConfig(ElementCollection collection) {
-		super(CHTMLNamespace.ElementName.SSI_CONFIG, collection);
-	}
-
-	/**
-	 * SSI:CONFIG.
-	 * (errmsg CDATA #IMPLIED)
-	 * (sizefmt CDATA #IMPLIED)
-	 * (timefmt CDATA #IMPLIED)
-	 */
-	protected void createAttributeDeclarations() {
-		if (attributes != null)
-			return; // already created.
-		if (attributeCollection == null)
-			return; // fatal
-
-		attributes = new CMNamedNodeMapImpl();
-
-		String[] names = {CHTMLNamespace.ATTR_NAME_ERRMSG, CHTMLNamespace.ATTR_NAME_SIZEFMT, CHTMLNamespace.ATTR_NAME_TIMEFMT};
-		attributeCollection.getDeclarations(attributes, Arrays.asList(names).iterator());
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/HedSSIEcho.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/HedSSIEcho.java
deleted file mode 100644
index 3cf3f7c..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/HedSSIEcho.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.core.internal.contentmodel.chtml;
-
-
-
-import java.util.Arrays;
-
-/**
- * SSI:ECHO.
- */
-final class HedSSIEcho extends HedSSIBase {
-
-	/**
-	 */
-	public HedSSIEcho(ElementCollection collection) {
-		super(CHTMLNamespace.ElementName.SSI_ECHO, collection);
-	}
-
-	/**
-	 * SSI:ECHO
-	 * (var CDATA #IMPLIED)
-	 */
-	protected void createAttributeDeclarations() {
-		if (attributes != null)
-			return; // already created.
-		if (attributeCollection == null)
-			return; // fatal
-
-		attributes = new CMNamedNodeMapImpl();
-
-		String[] names = {CHTMLNamespace.ATTR_NAME_VAR};
-		attributeCollection.getDeclarations(attributes, Arrays.asList(names).iterator());
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/HedSSIExec.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/HedSSIExec.java
deleted file mode 100644
index e97cb5d..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/HedSSIExec.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.wst.html.core.internal.contentmodel.chtml;
-
-
-
-import java.util.Arrays;
-
-/**
- * SSI:EXEC.
- */
-final class HedSSIExec extends HedSSIBase {
-
-	/**
-	 */
-	public HedSSIExec(ElementCollection collection) {
-		super(CHTMLNamespace.ElementName.SSI_EXEC, collection);
-	}
-
-	/**
-	 * SSI:EXEC
-	 * (cgi %URI; #IMPLIED)
-	 * (cmd CDATA #IMPLIED)
-	 */
-	protected void createAttributeDeclarations() {
-		if (attributes != null)
-			return; // already created.
-		if (attributeCollection == null)
-			return; // fatal
-
-		attributes = new CMNamedNodeMapImpl();
-
-		String[] names = {CHTMLNamespace.ATTR_NAME_CGI, CHTMLNamespace.ATTR_NAME_CMD};
-		attributeCollection.getDeclarations(attributes, Arrays.asList(names).iterator());
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/HedSSIFlastmod.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/HedSSIFlastmod.java
deleted file mode 100644
index 75eaf9d..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/HedSSIFlastmod.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.wst.html.core.internal.contentmodel.chtml;
-
-
-
-import java.util.Arrays;
-
-/**
- * SSI:FLASTMOD.
- */
-final class HedSSIFlastmod extends HedSSIBase {
-
-	/**
-	 */
-	public HedSSIFlastmod(ElementCollection collection) {
-		super(CHTMLNamespace.ElementName.SSI_FLASTMOD, collection);
-	}
-
-	/**
-	 * SSI:FLASTMOD
-	 * (file %URI; #IMPLIED)
-	 * (virtual %URI #IMPLIED)
-	 */
-	protected void createAttributeDeclarations() {
-		if (attributes != null)
-			return; // already created.
-		if (attributeCollection == null)
-			return; // fatal
-
-		attributes = new CMNamedNodeMapImpl();
-
-		String[] names = {CHTMLNamespace.ATTR_NAME_FILE, CHTMLNamespace.ATTR_NAME_VIRTUAL};
-		attributeCollection.getDeclarations(attributes, Arrays.asList(names).iterator());
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/HedSSIFsize.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/HedSSIFsize.java
deleted file mode 100644
index 3fbf3c1..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/HedSSIFsize.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.wst.html.core.internal.contentmodel.chtml;
-
-
-
-import java.util.Arrays;
-
-/**
- * SSI:FSIZE.
- */
-final class HedSSIFsize extends HedSSIBase {
-
-	/**
-	 */
-	public HedSSIFsize(ElementCollection collection) {
-		super(CHTMLNamespace.ElementName.SSI_FSIZE, collection);
-	}
-
-	/**
-	 * SSI:FSIZE
-	 * (file %URI; #IMPLIED)
-	 * (virtual %URI #IMPLIED)
-	 */
-	protected void createAttributeDeclarations() {
-		if (attributes != null)
-			return; // already created.
-		if (attributeCollection == null)
-			return; // fatal
-
-		attributes = new CMNamedNodeMapImpl();
-
-		String[] names = {CHTMLNamespace.ATTR_NAME_FILE, CHTMLNamespace.ATTR_NAME_VIRTUAL};
-		attributeCollection.getDeclarations(attributes, Arrays.asList(names).iterator());
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/HedSSIInclude.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/HedSSIInclude.java
deleted file mode 100644
index 4788b5e..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/HedSSIInclude.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.wst.html.core.internal.contentmodel.chtml;
-
-
-
-import java.util.Arrays;
-
-/**
- * SSI:INCLUDE.
- */
-final class HedSSIInclude extends HedSSIBase {
-
-	/**
-	 */
-	public HedSSIInclude(ElementCollection collection) {
-		super(CHTMLNamespace.ElementName.SSI_INCLUDE, collection);
-	}
-
-	/**
-	 * SSI:INCLUDE
-	 * (file %URI; #IMPLIED)
-	 * (virtual %URI #IMPLIED)
-	 */
-	protected void createAttributeDeclarations() {
-		if (attributes != null)
-			return; // already created.
-		if (attributeCollection == null)
-			return; // fatal
-
-		attributes = new CMNamedNodeMapImpl();
-
-		String[] names = {CHTMLNamespace.ATTR_NAME_FILE, CHTMLNamespace.ATTR_NAME_VIRTUAL};
-		attributeCollection.getDeclarations(attributes, Arrays.asList(names).iterator());
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/HedSSIPrintenv.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/HedSSIPrintenv.java
deleted file mode 100644
index 0064a4f..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/HedSSIPrintenv.java
+++ /dev/null
@@ -1,48 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this 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.core.internal.contentmodel.chtml;
-
-
-
-import org.eclipse.wst.xml.core.internal.contentmodel.CMNamedNodeMap;
-
-/**
- * SSI:PRINTENV.
- */
-final class HedSSIPrintenv extends HedSSIBase {
-
-	/**
-	 */
-	public HedSSIPrintenv(ElementCollection collection) {
-		super(CHTMLNamespace.ElementName.SSI_PRINTENV, collection);
-	}
-
-	/**
-	 */
-	protected void createAttributeDeclarations() {
-		if (attributes != null)
-			return; // already created.
-		if (attributeCollection == null)
-			return; // fatal
-
-		attributes = new CMNamedNodeMapImpl();
-	}
-
-	/**
-	 * SSI:PRINTENV has no attributes.  So, this method should
-	 * always return <code>null</code>.
-	 * Note: Since somebody doesn't expect null is returned, return the empty attribute
-	 * like a custom tag which doesn't have attributes
-	 */
-	public CMNamedNodeMap getAttributes() {
-		return super.getAttributes();
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/HedSSISet.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/HedSSISet.java
deleted file mode 100644
index e1a8e1d..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/HedSSISet.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.wst.html.core.internal.contentmodel.chtml;
-
-
-
-import java.util.Arrays;
-
-/**
- * SSI:SET.
- */
-final class HedSSISet extends HedSSIBase {
-
-	/**
-	 */
-	public HedSSISet(ElementCollection collection) {
-		super(CHTMLNamespace.ElementName.SSI_SET, collection);
-	}
-
-	/**
-	 * SSI:SET
-	 * (var CDATA #IMPLIED)
-	 * (value CDATA #IMPLIED)
-	 */
-	protected void createAttributeDeclarations() {
-		if (attributes != null)
-			return; // already created.
-		if (attributeCollection == null)
-			return; // fatal
-
-		attributes = new CMNamedNodeMapImpl();
-
-		String[] names = {CHTMLNamespace.ATTR_NAME_VAR, CHTMLNamespace.ATTR_NAME_VALUE};
-		attributeCollection.getDeclarations(attributes, Arrays.asList(names).iterator());
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/HedTEXTAREA.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/HedTEXTAREA.java
deleted file mode 100644
index bef9535..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/HedTEXTAREA.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.html.core.internal.contentmodel.chtml;
-
-
-
-import java.util.Arrays;
-
-/**
- * TEXTAREA.
- */
-final class HedTEXTAREA extends HedPcdata {
-
-	/**
-	 * TEXTAREA should keep spaces in its source.
-	 */
-	public HedTEXTAREA(ElementCollection collection) {
-		super(CHTMLNamespace.ElementName.TEXTAREA, collection);
-		layoutType = LAYOUT_OBJECT;
-
-		keepSpaces = true;
-	}
-
-	/**
-	 * TEXTAREA.
-	 * %attrs;
-	 * %reserved; ... empty
-	 * (name CDATA #IMPLIED)
-	 * (rows NUMBER #REQUIRED)
-	 * (cols NUMBER #REQUIRED)
-	 * (disabled (disabled) #IMPLIED)
-	 * (readonly (readonly) #IMPLIED)
-	 * (tabindex NUMBER #IMPLIED)
-	 * (accesskey %Character; #IMPLIED)
-	 * (onfocus %Script; #IMPLIED)
-	 * (onblur %Script; #IMPLIED)
-	 * (onselect %Script; #IMPLIED)
-	 * (onchange %Script; #IMPLIED)
-	 * (istyle CDATA #IMPLIED)
-	 */
-	protected void createAttributeDeclarations() {
-		if (attributes != null)
-			return; // already created.
-		if (attributeCollection == null)
-			return; // fatal
-		attributes = new CMNamedNodeMapImpl();
-
-		// %attrs;
-		attributeCollection.getAttrs(attributes);
-
-		String[] names = {CHTMLNamespace.ATTR_NAME_NAME, CHTMLNamespace.ATTR_NAME_ROWS, CHTMLNamespace.ATTR_NAME_COLS, CHTMLNamespace.ATTR_NAME_ISTYLE};
-		attributeCollection.getDeclarations(attributes, Arrays.asList(names).iterator());
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/HedTITLE.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/HedTITLE.java
deleted file mode 100644
index 007bf35..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/HedTITLE.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.wst.html.core.internal.contentmodel.chtml;
-
-
-
-import java.util.Arrays;
-
-import org.eclipse.wst.xml.core.internal.contentmodel.CMContent;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMGroup;
-
-/**
- * TITLE.
- */
-final class HedTITLE extends HedPcdata {
-
-	/**
-	 */
-	public HedTITLE(ElementCollection collection) {
-		super(CHTMLNamespace.ElementName.TITLE, collection);
-		layoutType = LAYOUT_HIDDEN;
-	}
-
-	/**
-	 * TITLE.
-	 * %i18n;
-	 */
-	protected void createAttributeDeclarations() {
-		if (attributes != null)
-			return; // already created.
-		if (attributeCollection == null)
-			return; // fatal
-
-		attributes = new CMNamedNodeMapImpl();
-
-		// %i18n;
-		attributeCollection.getI18n(attributes);
-	}
-
-	/**
-	 * Exclusion.
-	 * <code>TITLE</code> has the exclusion.
-	 * It is <code>%head.misc;</code>.
-	 * %head.misc; is <code>SCRIPT|STYLE|META|LINK|OBJECT</code>.
-	 * <br>
-	 */
-	public CMContent getExclusion() {
-		if (exclusion != null)
-			return exclusion; // already created.
-		if (elementCollection == null)
-			return null;
-
-		// (SCRIPT|STYLE|META|LINK|OBJECT)
-		exclusion = new CMGroupImpl(CMGroup.CHOICE, 1, 1);
-
-		String[] names = {CHTMLNamespace.ElementName.META,};
-		elementCollection.getDeclarations(exclusion, Arrays.asList(names).iterator());
-		return exclusion;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/HedUL.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/HedUL.java
deleted file mode 100644
index 15ddbc1..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/HedUL.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.html.core.internal.contentmodel.chtml;
-
-
-
-import org.eclipse.wst.xml.core.internal.contentmodel.CMNamedNodeMap;
-
-/**
- * UL.
- */
-final class HedUL extends HedListItemContainer {
-
-	/**
-	 */
-	public HedUL(ElementCollection collection) {
-		super(CHTMLNamespace.ElementName.UL, collection);
-	}
-
-	/**
-	 * UL.
-	 * (type %ULStyle; #IMPLIED) ... should be defined locally.
-	 * (compact (compact) #IMPLIED)
-	 */
-	protected void createAttributeDeclarations() {
-		if (attributes != null)
-			return; // already created.
-		if (attributeCollection == null)
-			return; // fatal
-
-		attributes = new CMNamedNodeMapImpl();
-
-		// %attrs;
-		attributeCollection.getAttrs(attributes);
-
-	}
-
-	/**
-	 */
-	public CMNamedNodeMap getProhibitedAncestors() {
-		if (prohibitedAncestors != null)
-			return prohibitedAncestors;
-
-		String[] names = {CHTMLNamespace.ElementName.DIR, CHTMLNamespace.ElementName.MENU};
-		prohibitedAncestors = elementCollection.getDeclarations(names);
-
-		return prohibitedAncestors;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/PropertyProvider.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/PropertyProvider.java
deleted file mode 100644
index 6ed567d..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/PropertyProvider.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.html.core.internal.contentmodel.chtml;
-
-import org.eclipse.wst.html.core.internal.contentmodel.HTMLElementDeclaration;
-
-
-
-/**
- * PropertyProvider class.
- * This class is intended to be used in HTMLElementDeclaration instances.
- */
-interface PropertyProvider {
-
-	boolean supports(HTMLElementDeclaration edecl);
-
-	Object get(HTMLElementDeclaration edecl);
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/PropertyProviderFactory.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/PropertyProviderFactory.java
deleted file mode 100644
index f37df45..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/PropertyProviderFactory.java
+++ /dev/null
@@ -1,363 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this 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.core.internal.contentmodel.chtml;
-
-import java.util.Hashtable;
-
-import org.eclipse.wst.html.core.internal.contentmodel.HTMLElementDeclaration;
-import org.eclipse.wst.html.core.internal.contentmodel.HTMLPropertyDeclaration;
-import org.eclipse.wst.html.core.internal.provisional.HTMLCMProperties;
-import org.eclipse.wst.xml.core.internal.contentmodel.annotation.AnnotationMap;
-
-/**
- * The factory object of PropertyProvider.
- */
-final class PropertyProviderFactory {
-
-
-	/**
-	 * DefaultProvider is intended to be used for unknown properties.
-	 * It always returns null value for any properties.
-	 */
-	class DefaultProvider implements PropertyProvider {
-		public DefaultProvider() {
-			super();
-		}
-
-		public boolean supports(HTMLElementDeclaration edecl) {
-			return false;
-		}
-
-		public Object get(HTMLElementDeclaration edecl) {
-			return null;
-		}
-	}
-
-	abstract class AbstractElementPropertyProvider implements PropertyProvider {
-		protected AbstractElementPropertyProvider() {
-			super();
-		}
-
-		public boolean supports(HTMLElementDeclaration edecl) {
-			return (edecl != null);
-		}
-
-		public Object get(HTMLElementDeclaration edecl) {
-			if (!(edecl instanceof HTMLPropertyDeclaration))
-				return null;
-			return getElementProperty((HTMLPropertyDeclaration)edecl);
-		}
-
-		abstract protected Object getElementProperty(HTMLPropertyDeclaration decl);
-	}
-
-	/*
-	 * "tagInfo"
-	 * gets documentation for the element
-	 */
-	class PPTagInfo extends AbstractElementPropertyProvider {
-		private final static String htmlAnnotationLoc = "platform:/plugin/org.eclipse.wst.html.core/data/htmref.xml"; //$NON-NLS-1$
-		protected AnnotationMap fAnnotationMap = null;
-
-		public PPTagInfo() {
-			super();
-		}
-
-		/**
-		 * Gets the annotationMap.
-		 * @return Returns a AnnotationMap
-		 */
-		protected AnnotationMap getAnnotationMap() {
-			if (fAnnotationMap == null) {
-				fAnnotationMap = new AnnotationMap();
-				try {
-					fAnnotationMap.load(htmlAnnotationLoc);
-				}
-				catch (Exception e) {
-					// no annotation available
-				}
-			}
-			return fAnnotationMap;
-		}
-
-		protected Object getElementProperty(HTMLPropertyDeclaration decl) {
-			if (decl instanceof HTMLElementDeclaration) {
-				return getAnnotationMap().getProperty(((HTMLElementDeclaration)decl).getElementName(), "tagInfo"); //$NON-NLS-1$
-			} else {
-				return null;
-			}
-		}
-	}
-
-	/*
-	 * "shouldKeepSpace"
-	 */
-	class PPShouldKeepSpace extends AbstractElementPropertyProvider {
-		public PPShouldKeepSpace() {
-			super();
-		}
-
-		protected Object getElementProperty(HTMLPropertyDeclaration decl) {
-			return new Boolean(decl.shouldKeepSpaces());
-		}
-	}
-
-	/*
-	 * "shouldIndentChildSource"
-	 */
-	class PPShouldIndentChildSource extends AbstractElementPropertyProvider {
-		public PPShouldIndentChildSource() {
-			super();
-		}
-
-		protected Object getElementProperty(HTMLPropertyDeclaration decl) {
-			return new Boolean(decl.shouldIndentChildSource());
-		}
-	}
-
-	/*
-	 * "terminators"
-	 */
-	class PPTerminators extends AbstractElementPropertyProvider {
-		public PPTerminators() {
-			super();
-		}
-
-		protected Object getElementProperty(HTMLPropertyDeclaration decl) {
-			if (decl == null)
-				return null;
-			if (! (decl instanceof HTMLElemDeclImpl)) return null;
-			return ((HTMLElemDeclImpl)decl).getTerminators();
-		}
-	}
-
-	/*
-	 * "prohibitedAncestors"
-	 */
-	class PPProhibitedAncestors extends AbstractElementPropertyProvider {
-		public PPProhibitedAncestors() {
-			super();
-		}
-
-		protected Object getElementProperty(HTMLPropertyDeclaration decl) {
-			return decl.getProhibitedAncestors();
-		}
-	}
-
-	/*
-	 * "isJSP"
-	 */
-	class PPIsJSP extends AbstractElementPropertyProvider {
-		public PPIsJSP() {
-			super();
-		}
-
-		protected Object getElementProperty(HTMLPropertyDeclaration decl) {
-			return new Boolean(decl.isJSP());
-		}
-	}
-
-	/*
-	 * "isXHTML"
-	 * HTMLElementDeclaration itself never represent any XHTML element declaration.
-	 * So, this property must be always false.
-	 */
-	class PPIsXHTML extends AbstractElementPropertyProvider {
-		public PPIsXHTML() {
-			super();
-		}
-
-		protected Object getElementProperty(HTMLPropertyDeclaration decl) {
-			return new Boolean(false);
-		}
-	}
-
-	/*
-	 * "isSSI"
-	 * Each declaration class for SSI elements must provide this property itself,
-	 * and then return true.  Other declaration must always return false.
-	 */
-	class PPIsSSI extends AbstractElementPropertyProvider {
-		public PPIsSSI() {
-			super();
-		}
-
-		protected Object getElementProperty(HTMLPropertyDeclaration decl) {
-			return new Boolean(false);
-		}
-	}
-
-	/*
-	 * "lineBreakHint"
-	 */
-	class PPLineBreakHint extends AbstractElementPropertyProvider {
-		public PPLineBreakHint() {
-			super();
-		}
-
-		protected Object getElementProperty(HTMLPropertyDeclaration decl) {
-			String hint = HTMLCMProperties.Values.BREAK_NONE;
-			switch (decl.getLineBreakHint()) {
-				case HTMLElementDeclaration.BREAK_AFTER_START :
-					hint = HTMLCMProperties.Values.BREAK_AFTER_START;
-					break;
-				case HTMLElementDeclaration.BREAK_BEFORE_START_AND_AFTER_END :
-					hint = HTMLCMProperties.Values.BREAK_BEFORE_START_AND_AFTER_END;
-					break;
-				case HTMLElementDeclaration.BREAK_NONE :
-				// nothing to do
-				default :
-					break;
-			}
-			return hint;
-		}
-	}
-
-	/*
-	 * "layoutType"
-	 */
-	class PPLayoutType extends AbstractElementPropertyProvider {
-		public PPLayoutType() {
-			super();
-		}
-
-		protected Object getElementProperty(HTMLPropertyDeclaration decl) {
-			String type = HTMLCMProperties.Values.LAYOUT_NONE;
-			switch (decl.getLayoutType()) {
-				case HTMLElementDeclaration.LAYOUT_BLOCK :
-					type = HTMLCMProperties.Values.LAYOUT_BLOCK;
-					break;
-				case HTMLElementDeclaration.LAYOUT_BREAK :
-					type = HTMLCMProperties.Values.LAYOUT_BREAK;
-					break;
-				case HTMLElementDeclaration.LAYOUT_HIDDEN :
-					type = HTMLCMProperties.Values.LAYOUT_HIDDEN;
-					break;
-				case HTMLElementDeclaration.LAYOUT_OBJECT :
-					type = HTMLCMProperties.Values.LAYOUT_OBJECT;
-					break;
-				case HTMLElementDeclaration.LAYOUT_WRAP :
-					type = HTMLCMProperties.Values.LAYOUT_WRAP;
-					break;
-				case HTMLElementDeclaration.LAYOUT_NONE :
-				// nothing to do.
-				default :
-					break;
-			}
-			return type;
-		}
-	}
-
-	/*
-	 * "omitType"
-	 */
-	class PPOmitType extends AbstractElementPropertyProvider {
-		public PPOmitType() {
-			super();
-		}
-
-		protected Object getElementProperty(HTMLPropertyDeclaration decl) {
-			String type = HTMLCMProperties.Values.OMIT_NONE;
-			switch (decl.getOmitType()) {
-				case HTMLElementDeclaration.OMIT_BOTH :
-					type = HTMLCMProperties.Values.OMIT_BOTH;
-					break;
-				case HTMLElementDeclaration.OMIT_END :
-					type = HTMLCMProperties.Values.OMIT_END;
-					break;
-				case HTMLElementDeclaration.OMIT_END_DEFAULT :
-					type = HTMLCMProperties.Values.OMIT_END_DEFAULT;
-					break;
-				case HTMLElementDeclaration.OMIT_END_MUST :
-					type = HTMLCMProperties.Values.OMIT_END_MUST;
-					break;
-				case HTMLElementDeclaration.OMIT_NONE :
-				// nothing to do.
-				default :
-					break;
-			}
-			return type;
-		}
-	}
-
-	/*
-	 * "inclusion"
-	 */
-	class PPInclusion extends AbstractElementPropertyProvider {
-		public PPInclusion() {
-			super();
-		}
-
-		protected Object getElementProperty(HTMLPropertyDeclaration decl) {
-			return decl.getInclusion();
-		}
-	}
-
-	public static PropertyProvider getProvider(String propName) {
-		PropertyProviderFactory factory = getInstance();
-		PropertyProvider pp = (PropertyProvider) factory.registry.get(propName);
-		if (pp != null)
-			return pp;
-
-		pp = factory.create(propName);
-		if (pp == null)
-			return factory.defaultProvider;
-
-		factory.registry.put(propName, pp);
-		return pp;
-	}
-
-	private static PropertyProviderFactory instance = null;
-
-	private synchronized static PropertyProviderFactory getInstance() {
-		if (instance != null)
-			return instance;
-		instance = new PropertyProviderFactory();
-		return instance;
-	}
-
-	private Hashtable registry = new Hashtable();
-	private PropertyProvider defaultProvider = new DefaultProvider();
-
-	private PropertyProviderFactory() {
-		super();
-	}
-
-	private PropertyProvider create(String propName) {
-		PropertyProvider pp = null;
-		if (propName.equals(HTMLCMProperties.IS_JSP))
-			pp = new PPIsJSP();
-		else if (propName.equals(HTMLCMProperties.IS_XHTML))
-			pp = new PPIsXHTML();
-		else if (propName.equals(HTMLCMProperties.IS_SSI))
-			pp = new PPIsSSI();
-		else if (propName.equals(HTMLCMProperties.LAYOUT_TYPE))
-			pp = new PPLayoutType();
-		else if (propName.equals(HTMLCMProperties.LINE_BREAK_HINT))
-			pp = new PPLineBreakHint();
-		else if (propName.equals(HTMLCMProperties.PROHIBITED_ANCESTORS))
-			pp = new PPProhibitedAncestors();
-		else if (propName.equals(HTMLCMProperties.SHOULD_KEEP_SPACE))
-			pp = new PPShouldKeepSpace();
-		else if (propName.equals(HTMLCMProperties.SHOULD_INDENT_CHILD_SOURCE))
-			pp = new PPShouldIndentChildSource();
-		else if (propName.equals(HTMLCMProperties.TERMINATORS))
-			pp = new PPTerminators();
-		else if (propName.equals(HTMLCMProperties.TAGINFO))
-			pp = new PPTagInfo();
-		else if (propName.equals(HTMLCMProperties.OMIT_TYPE))
-			pp = new PPOmitType();
-		else if (propName.equals(HTMLCMProperties.INCLUSION))
-			pp = new PPInclusion();
-
-		return pp;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/ssi/SSICMDocumentFactory.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/ssi/SSICMDocumentFactory.java
deleted file mode 100644
index 949941f..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/ssi/SSICMDocumentFactory.java
+++ /dev/null
@@ -1,158 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this 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.core.internal.contentmodel.ssi;
-
-import java.util.Hashtable;
-import java.util.Iterator;
-
-import org.eclipse.wst.html.core.internal.contentmodel.HTMLCMDocumentFactory;
-import org.eclipse.wst.html.core.internal.provisional.HTML40Namespace;
-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;
-import org.eclipse.wst.xml.core.internal.provisional.contentmodel.CMDocType;
-
-/**
- * CMDocument factory for SSI documents.
- */
-public final class SSICMDocumentFactory {
-
-	private final static String PREFIX = "SSI";//$NON-NLS-1$
-	private final static String DOC_TYPE_NAME = "SSI";//$NON-NLS-1$
-
-	static class CMNamespaceImpl implements CMNamespace {
-		public CMNamespaceImpl() {
-			super();
-		}
-
-		public String getPrefix() {
-			return PREFIX;
-		}
-
-		public String getURI() {
-			return ""; //$NON-NLS-1$
-		}
-
-		public String getNodeName() {
-			return DOC_TYPE_NAME;
-		}
-
-		public int getNodeType() {
-			return CMNode.NAME_SPACE;
-		}
-
-		public boolean supports(String propertyName) {
-			return false;
-		}
-
-		public Object getProperty(String propertyName) {
-			return null;
-		}
-
-	}
-
-	static class CMDocImpl implements CMDocument {
-		private static CMDocument hcm = HTMLCMDocumentFactory.getCMDocument(CMDocType.HTML_DOC_TYPE);
-
-		static class Elements implements CMNamedNodeMap {
-			private static String[] names = {HTML40Namespace.ElementName.SSI_CONFIG, HTML40Namespace.ElementName.SSI_ECHO, HTML40Namespace.ElementName.SSI_EXEC, HTML40Namespace.ElementName.SSI_FSIZE, HTML40Namespace.ElementName.SSI_FLASTMOD, HTML40Namespace.ElementName.SSI_INCLUDE, HTML40Namespace.ElementName.SSI_PRINTENV, HTML40Namespace.ElementName.SSI_SET};
-			private Hashtable map = new Hashtable();
-
-			public Elements() {
-				CMNamedNodeMap elems = hcm.getElements();
-				for (int i = 0; i < names.length; i++) {
-					String name = names[i];
-					CMElementDeclaration dec = (CMElementDeclaration) elems.getNamedItem(name);
-					if (dec != null)
-						map.put(name, dec);
-				}
-			}
-
-			public int getLength() {
-				return map.size();
-			}
-
-			public CMNode getNamedItem(String name) {
-				String cooked = getCanonicalName(name);
-				if (!map.containsKey(cooked))
-					return null;
-				return (CMNode) map.get(cooked);
-			}
-
-			public CMNode item(int index) {
-				Iterator iter = iterator();
-				while (iter.hasNext()) {
-					Object node = iter.next();
-					if (--index < 0)
-						return (CMNode) node;
-				}
-				return null;
-			}
-
-			public Iterator iterator() {
-				return map.values().iterator();
-			}
-
-			private String getCanonicalName(String rawName) {
-				return rawName.toUpperCase();
-			}
-		}
-
-		static private Elements elements = new Elements();
-
-
-		public CMDocImpl() {
-			super();
-		}
-
-		public String getNodeName() {
-			return ""; //$NON-NLS-1$
-		}
-
-		public int getNodeType() {
-			return CMNode.DOCUMENT;
-		}
-
-		public CMNamedNodeMap getElements() {
-			return elements;
-		}
-
-		public CMNamedNodeMap getEntities() {
-			return null;
-		}
-
-		public CMNamespace getNamespace() {
-			return ssins;
-		}
-
-		public Object getProperty(String propertyName) {
-			return null;
-		}
-
-		public boolean supports(String propertyName) {
-			return false;
-		}
-	}
-
-	private static CMNamespace ssins = new CMNamespaceImpl();
-	private static CMDocument mycm = new CMDocImpl();
-
-	private SSICMDocumentFactory() {
-		super();
-	}
-
-	public static CMDocument getCMDocument() {
-		return mycm;
-	}
-
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contenttype/AbstractResourceEncodingDetector.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contenttype/AbstractResourceEncodingDetector.java
deleted file mode 100644
index 0e62a88..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/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.html.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.html.core/src/org/eclipse/wst/html/core/internal/contenttype/ContentDescriberForHTML.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contenttype/ContentDescriberForHTML.java
deleted file mode 100644
index b1c5906..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contenttype/ContentDescriberForHTML.java
+++ /dev/null
@@ -1,197 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this 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.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 final class ContentDescriberForHTML implements ITextContentDescriber {
-
-	final private static QualifiedName[] SUPPORTED_OPTIONS = {IContentDescription.CHARSET, IContentDescription.BYTE_ORDER_MARK, IContentDescriptionExtended.DETECTED_CHARSET, IContentDescriptionExtended.UNSUPPORTED_CHARSET, IContentDescriptionExtended.APPROPRIATE_DEFAULT};
-	private IResourceCharsetDetector resourceCharsetDetector;
-
-	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;
-	}
-
-	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;
-	}
-
-	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 IResourceCharsetDetector getDetector() {
-		if (resourceCharsetDetector == null) {
-			resourceCharsetDetector = new HTMLResourceEncodingDetector();
-		}
-		return resourceCharsetDetector;
-	}
-
-	/**
-	 * @param description
-	 * @param detector
-	 * @throws IOException
-	 */
-	private 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;
-	}
-
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contenttype/EncodingGuesser.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contenttype/EncodingGuesser.java
deleted file mode 100644
index be7f3a0..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contenttype/EncodingGuesser.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.html.core.internal.contenttype;
-
-/**
- * 
- * This is ported from PageDesigner's hpbcom/Kanji.cpp's
- * Kanji::guess_kanji_code(),
- *  
- */
-public class EncodingGuesser {
-	private static final int ASCII = 0; // ASCII
-	// ISO-2022-JP
-	private static final int ASCII_IN = 8; // This is after ISO2022's change
-	// Shift-JIS
-	private static final int EUC_HALFKANA = 6; // This is Half Kana in EUC-JP
-	private static final int EUC_JP = 3; // This is EUC-JP
-	private static final int ISO2022_JP = 4; // This is ISO-2022-JP
-	private static final int JIS_HALFKANA = 7; // THis is Half Kana in
-	private static final byte KT_EUC1 = 0x40;
-	private static final byte KT_EUC2 = (byte) 0x80;
-	// ASCII
-	private static final byte KT_JIN = 0x01;
-	private static final byte KT_JOUT = 0x02;
-	//	private static final byte KT_ESC = 0x04;
-	//	private static final byte KT_JIS = 0x08;
-	private static final byte KT_SFT1 = 0x10;
-	private static final byte KT_SFT2 = 0x20;
-	private static final byte ktype[] = {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 00 */
-	0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 10 */
-	0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x08, 0x08, 0x09, 0x08, 0x08, 0x08, /* !"#$%&' *//* " */
-	0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, /* ()*+,-./ */
-	0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, /* 01234567 */
-	0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, /* 89:; <=>? */
-	0x29, 0x28, 0x2b, 0x28, 0x28, 0x28, 0x28, 0x28, /* @ABCDEFG */
-	0x2a, 0x28, 0x2a, 0x28, 0x28, 0x28, 0x28, 0x28, /* HIJKLMNO */
-	0x28, 0x28, 0x28, 0x28, 0x28, 0x28, 0x28, 0x28, /* PQRSTUVW */
-	0x28, 0x28, 0x28, 0x28, 0x28, 0x28, 0x28, 0x28, /* XYZ[\]^_ */
-	0x28, 0x28, 0x28, 0x28, 0x28, 0x28, 0x28, 0x28, /* abcdefg */
-	0x28, 0x28, 0x28, 0x28, 0x28, 0x28, 0x28, 0x28, /* hijklmno */
-	0x28, 0x28, 0x28, 0x28, 0x28, 0x28, 0x28, 0x28, /* pqrstuvw */
-	0x28, 0x28, 0x28, 0x28, 0x28, 0x28, 0x28, 0x00, /* xyz{|}~ */
-	0x20, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, /* 80 */
-	0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, /* 90 */
-	0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x20, (byte) 0xe0, (byte) 0xe0, (byte) 0xe0, (byte) 0xe0, (byte) 0xe0, (byte) 0xe0, (byte) 0xe0, /* A0 */
-	(byte) 0xe0, (byte) 0xe0, (byte) 0xe0, (byte) 0xe0, (byte) 0xe0, (byte) 0xe0, (byte) 0xe0, (byte) 0xe0, (byte) 0xe0, (byte) 0xe0, (byte) 0xe0, (byte) 0xe0, (byte) 0xe0, (byte) 0xe0, (byte) 0xe0, (byte) 0xe0, /* B0 */
-	(byte) 0xe0, (byte) 0xe0, (byte) 0xe0, (byte) 0xe0, (byte) 0xe0, (byte) 0xe0, (byte) 0xe0, (byte) 0xe0, (byte) 0xe0, (byte) 0xe0, (byte) 0xe0, (byte) 0xe0, (byte) 0xe0, (byte) 0xe0, (byte) 0xe0, (byte) 0xe0, /* C0 */
-	(byte) 0xe0, (byte) 0xe0, (byte) 0xe0, (byte) 0xe0, (byte) 0xe0, (byte) 0xe0, (byte) 0xe0, (byte) 0xe0, (byte) 0xe0, (byte) 0xe0, (byte) 0xe0, (byte) 0xe0, (byte) 0xe0, (byte) 0xe0, (byte) 0xe0, (byte) 0xe0, /* D0 */
-	(byte) 0xe0, (byte) 0xe0, (byte) 0xe0, (byte) 0xe0, (byte) 0xe0, (byte) 0xe0, (byte) 0xe0, (byte) 0xe0, (byte) 0xf0, (byte) 0xf0, (byte) 0xf0, (byte) 0xf0, (byte) 0xf0, (byte) 0xf0, (byte) 0xf0, (byte) 0xf0, /* E0 */
-	(byte) 0xf0, (byte) 0xf0, (byte) 0xf0, (byte) 0xf0, (byte) 0xf0, (byte) 0xf0, (byte) 0xf0, (byte) 0xf0, (byte) 0xf0, (byte) 0xf0, (byte) 0xf0, (byte) 0xf0, (byte) 0xf0, (byte) 0xf0, (byte) 0xf0, (byte) 0xf0, /* F0 */
-	(byte) 0xf0, (byte) 0xf0, (byte) 0xf0, (byte) 0xf0, (byte) 0xf0, (byte) 0xc0, (byte) 0xc0, 0x00,};
-	//	private static final int ISO8859_1 = 1; // ISO-1
-	private static final int SHIFT_JIS = 2; // This is Shift-JIS
-	private static final int SJIS_HALFKANA = 5; // This is Half Kana in
-
-	/**
-	 * Currently, only Japanese encodings are supported.
-	 */
-	private static final int UNKNOWN = -1; // Unknown
-
-	/**
-	 * @return java.lang.String
-	 * @param code
-	 *            int
-	 * 
-	 * Convert private int to IANA Encoding name.
-	 */
-	private static String convertToIANAEncodingName(int code) {
-		String encoding = null;
-
-		switch (code) {
-			case SHIFT_JIS :
-			case SJIS_HALFKANA :
-				encoding = "Shift_JIS";//$NON-NLS-1$
-				break;
-			case EUC_JP :
-			case EUC_HALFKANA :
-				encoding = "EUC-JP";//$NON-NLS-1$
-				break;
-			case ISO2022_JP :
-			case JIS_HALFKANA :
-				encoding = "ISO-2022-JP";//$NON-NLS-1$
-			default :
-				break;
-		}
-
-		return encoding;
-	}
-
-	/**
-	 * Return guessed Java Encoding name target: bytes to be inspected length:
-	 * length of target
-	 */
-	public static String guessEncoding(byte[] target, int length) {
-		int code = UNKNOWN;
-
-		// Currently, only Japanese is supported.
-		String system_ctype = java.util.Locale.getDefault().getLanguage();
-		String jp_ctype = java.util.Locale.JAPANESE.getLanguage();
-		if (system_ctype.compareTo(jp_ctype) == 0) {
-			// Ok, I'm under ja_JP.
-			code = ASCII;
-			int pos = 0;
-			while ((code == ASCII) && (length > 0)) {
-				int ch1 = target[pos];
-				ch1 = ch1 & 0x000000FF;
-				int ch2 = (length >= 2) ? target[pos + 1] : 0;
-				ch2 = ch2 & 0x000000FF;
-				int ch3 = (length >= 3) ? target[pos + 2] : 0;
-				ch3 = ch3 & 0x000000FF;
-				code = guessJapaneseKanjiCode(ch1, ch2, ch3, 0);
-				pos++;
-				length--;
-			}
-			switch (code) {
-				case ISO2022_JP :
-				case JIS_HALFKANA :
-					code = ISO2022_JP;
-					break;
-				case EUC_JP :
-					code = EUC_JP;
-					break;
-				default :
-					code = SHIFT_JIS;
-			}
-		}
-		return (convertToIANAEncodingName(code));
-	}
-
-	/**
-	 * Guess the encoding. halfkana_flag = 0x01 ( detect SJIS half kana )
-	 * halfkana_flag = 0x02 ( detect EUC half kana )
-	 */
-	private static int guessJapaneseKanjiCode(int ch1, int ch2, int ch3, int halfkana_flag) {
-		boolean sjis_hankaku_flag = ((halfkana_flag & 0x01) != 0) ? true : false;
-		boolean euc_hankaku_flag = ((halfkana_flag & 0x02) != 0) ? true : false;
-
-		if (ch1 == 0)
-			return UNKNOWN;
-		if (sjis_hankaku_flag && ch1 >= 0xa1 && ch1 <= 0xdf)
-			return SJIS_HALFKANA;
-		else if (euc_hankaku_flag && ch1 == 0x8e && ch2 >= 0xa1 && ch2 <= 0xdf)
-			return EUC_HALFKANA;
-		else if (((ktype[ch1] & KT_SFT1) != 0) && ((ktype[ch2] & KT_SFT2) != 0))
-			return SHIFT_JIS;
-		else if (((ktype[ch1] & KT_EUC1) != 0) && ((ktype[ch2] & KT_EUC2) != 0))
-			return EUC_JP;
-		else if (ch1 == 0x1b && ((ktype[ch2] & KT_JIN) != 0))
-			return ISO2022_JP;
-		else if (ch1 >= 0xa1 && ch1 <= 0xdf)
-			return SJIS_HALFKANA;
-		else if (ch1 == 0x1b && ch2 == 0x28/* '(' */&& ch3 == 0x49/* 'I' */)
-			return JIS_HALFKANA;
-		else if (ch1 == 0x1b && ch2 == 0x28/* '(' */&& ((ktype[ch3] & KT_JOUT) != 0))
-			return ASCII_IN;
-
-		return ASCII;
-	}
-
-	public EncodingGuesser() {
-		super();
-	}
-}
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contenttype/HTMLHeadTokenizer.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contenttype/HTMLHeadTokenizer.java
deleted file mode 100644
index dc68f67..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contenttype/HTMLHeadTokenizer.java
+++ /dev/null
@@ -1,1690 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.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 1/27/04 6:41 PM */
-
-/*nlsXXX*/  
-package org.eclipse.wst.html.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 1/27/04 6:41 PM from the specification file
- * <tt>file:/D:/DevTimeSupport/HeadParsers/HTMLHeadTokenizer/HTMLHeadTokenizer.jflex</tt>
- */
-public class HTMLHeadTokenizer {
-
-	/** this character denotes the end of file */
-	final public static int YYEOF = -1;
-
-	/** lexical states */
-	final public static int ST_META_TAG = 4;
-	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 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\22\1\0\1\40\2\0" + "\1\44\1\0\1\43\5\0\1\34\1\0\1\42\13\0\1\45\1\12" + "\1\10\1\31\1\13\1\0\1\21\1\0\1\24\1\26\1\17\1\0" + "\1\30\1\32\1\27\2\0\1\16\1\15\1\23\1\25\1\33\1\35" + "\2\0\1\20\1\36\1\37\1\0\1\14\1\41\7\0\1\21\1\0" + "\1\24\1\26\1\17\1\0\1\30\1\32\1\27\2\0\1\16\1\15" + "\1\23\1\25\1\33\1\35\2\0\1\20\1\36\1\37\1\0\1\14" + "\1\41\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;
-
-
-	/** the number of characters up to the start of the matched text */
-	private int yychar;
-
-
-	/** 
-	 * 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 = 8000;
-	StringBuffer string = new StringBuffer();
-	// state stack for easier state handling
-	private IntStack fStateStack = new IntStack();
-	private String valueText = null;
-	boolean foundContentTypeValue = false;
-
-
-
-	public HTMLHeadTokenizer() {
-		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;
-
-
-		/* the number of characters up to the start of the matched text */
-		yychar = 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 HTMLHeadTokenizer(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 HTMLHeadTokenizer(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 < 174) {
-			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 :
-									case 18 :
-										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 15 :
-										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 25 :
-										yy_isFinal = true;
-										yy_noLookAhead = true;
-										yy_state = 17;
-										break yy_forNext;
-									case 26 :
-										yy_isFinal = true;
-										yy_state = 18;
-										break yy_forNext;
-									case 34 :
-										yy_isFinal = true;
-										yy_state = 19;
-										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 :
-									case 18 :
-										yy_isFinal = true;
-										yy_state = 21;
-										break yy_forNext;
-									case 7 :
-										yy_isFinal = true;
-										yy_state = 22;
-										break yy_forNext;
-									case 32 :
-										yy_isFinal = true;
-										yy_noLookAhead = true;
-										yy_state = 23;
-										break yy_forNext;
-									case 35 :
-										yy_isFinal = true;
-										yy_noLookAhead = 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 :
-									case 10 :
-									case 25 :
-										yy_isFinal = true;
-										yy_noLookAhead = true;
-										yy_state = 26;
-										break yy_forNext;
-									case 11 :
-									case 34 :
-										yy_isFinal = true;
-										yy_state = 27;
-										break yy_forNext;
-									case 32 :
-										yy_isFinal = true;
-										yy_noLookAhead = true;
-										yy_state = 28;
-										break yy_forNext;
-									default :
-										yy_isFinal = true;
-										yy_noLookAhead = true;
-										yy_state = 25;
-										break yy_forNext;
-								}
-
-							case 6 :
-								switch (yy_input) {
-									case 7 :
-									case 9 :
-									case 10 :
-									case 25 :
-										yy_isFinal = true;
-										yy_noLookAhead = true;
-										yy_state = 26;
-										break yy_forNext;
-									case 34 :
-										yy_isFinal = true;
-										yy_state = 27;
-										break yy_forNext;
-									case 35 :
-										yy_isFinal = true;
-										yy_noLookAhead = true;
-										yy_state = 28;
-										break yy_forNext;
-									case 36 :
-										yy_isFinal = true;
-										yy_state = 29;
-										break yy_forNext;
-									default :
-										yy_isFinal = true;
-										yy_noLookAhead = true;
-										yy_state = 25;
-										break yy_forNext;
-								}
-
-							case 7 :
-								switch (yy_input) {
-									case 10 :
-									case 25 :
-										yy_isFinal = true;
-										yy_noLookAhead = true;
-										yy_state = 26;
-										break yy_forNext;
-									case 34 :
-										yy_isFinal = true;
-										yy_state = 27;
-										break yy_forNext;
-									case 11 :
-										yy_isFinal = true;
-										yy_state = 29;
-										break yy_forNext;
-									case 6 :
-									case 7 :
-									case 9 :
-									case 18 :
-										yy_isFinal = true;
-										yy_noLookAhead = true;
-										yy_state = 30;
-										break yy_forNext;
-									case 32 :
-									case 35 :
-										yy_isFinal = true;
-										yy_noLookAhead = true;
-										yy_state = 31;
-										break yy_forNext;
-									case 37 :
-										yy_isFinal = true;
-										yy_state = 32;
-										break yy_forNext;
-									default :
-										yy_isFinal = true;
-										yy_noLookAhead = true;
-										yy_state = 25;
-										break yy_forNext;
-								}
-
-							case 9 :
-								switch (yy_input) {
-									case 2 :
-										yy_isFinal = true;
-										yy_noLookAhead = true;
-										yy_state = 33;
-										break yy_forNext;
-									default :
-										break yy_forAction;
-								}
-
-							case 10 :
-								switch (yy_input) {
-									case 1 :
-										yy_isFinal = true;
-										yy_noLookAhead = true;
-										yy_state = 34;
-										break yy_forNext;
-									default :
-										break yy_forAction;
-								}
-
-							case 11 :
-								switch (yy_input) {
-									case 4 :
-										yy_state = 35;
-										break yy_forNext;
-									default :
-										break yy_forAction;
-								}
-
-							case 12 :
-								switch (yy_input) {
-									case 13 :
-										yy_state = 36;
-										break yy_forNext;
-									default :
-										break yy_forAction;
-								}
-
-							case 13 :
-								switch (yy_input) {
-									case 6 :
-									case 7 :
-									case 9 :
-									case 18 :
-										yy_state = 37;
-										break yy_forNext;
-									case 10 :
-										yy_state = 38;
-										break yy_forNext;
-									default :
-										break yy_forAction;
-								}
-
-							case 14 :
-								switch (yy_input) {
-									case 13 :
-										yy_state = 36;
-										break yy_forNext;
-									case 11 :
-										yy_state = 39;
-										break yy_forNext;
-									default :
-										break yy_forAction;
-								}
-
-							case 15 :
-								switch (yy_input) {
-									case 25 :
-										yy_isFinal = true;
-										yy_noLookAhead = true;
-										yy_state = 40;
-										break yy_forNext;
-									default :
-										break yy_forAction;
-								}
-
-							case 16 :
-								switch (yy_input) {
-									case 19 :
-										yy_state = 41;
-										break yy_forNext;
-									default :
-										break yy_forAction;
-								}
-
-							case 18 :
-								switch (yy_input) {
-									case 16 :
-										yy_state = 42;
-										break yy_forNext;
-									default :
-										break yy_forAction;
-								}
-
-							case 19 :
-								switch (yy_input) {
-									case 25 :
-										yy_isFinal = true;
-										yy_noLookAhead = true;
-										yy_state = 43;
-										break yy_forNext;
-									default :
-										break yy_forAction;
-								}
-
-							case 21 :
-								switch (yy_input) {
-									case 6 :
-									case 9 :
-									case 18 :
-										yy_isFinal = true;
-										yy_state = 21;
-										break yy_forNext;
-									case 7 :
-										yy_state = 44;
-										break yy_forNext;
-									default :
-										yy_isFinal = true;
-										yy_noLookAhead = true;
-										yy_state = 20;
-										break yy_forNext;
-								}
-
-							case 22 :
-								switch (yy_input) {
-									case 6 :
-									case 9 :
-									case 18 :
-										yy_isFinal = true;
-										yy_state = 21;
-										break yy_forNext;
-									case 7 :
-										yy_state = 44;
-										break yy_forNext;
-									default :
-										yy_isFinal = true;
-										yy_noLookAhead = true;
-										yy_state = 20;
-										break yy_forNext;
-								}
-
-							case 27 :
-								switch (yy_input) {
-									case 25 :
-										yy_isFinal = true;
-										yy_noLookAhead = true;
-										yy_state = 45;
-										break yy_forNext;
-									default :
-										break yy_forAction;
-								}
-
-							case 29 :
-								switch (yy_input) {
-									case 25 :
-										yy_isFinal = true;
-										yy_noLookAhead = true;
-										yy_state = 46;
-										break yy_forNext;
-									default :
-										break yy_forAction;
-								}
-
-							case 32 :
-								switch (yy_input) {
-									case 6 :
-									case 7 :
-									case 9 :
-									case 18 :
-										yy_isFinal = true;
-										yy_state = 32;
-										break yy_forNext;
-									default :
-										break yy_forAction;
-								}
-
-							case 35 :
-								switch (yy_input) {
-									case 5 :
-										yy_isFinal = true;
-										yy_noLookAhead = true;
-										yy_state = 47;
-										break yy_forNext;
-									default :
-										break yy_forAction;
-								}
-
-							case 36 :
-								switch (yy_input) {
-									case 15 :
-										yy_state = 48;
-										break yy_forNext;
-									default :
-										break yy_forAction;
-								}
-
-							case 37 :
-								switch (yy_input) {
-									case 6 :
-									case 7 :
-									case 9 :
-									case 18 :
-										yy_state = 37;
-										break yy_forNext;
-									case 10 :
-										yy_state = 38;
-										break yy_forNext;
-									default :
-										break yy_forAction;
-								}
-
-							case 38 :
-								switch (yy_input) {
-									case 11 :
-										yy_state = 39;
-										break yy_forNext;
-									default :
-										break yy_forAction;
-								}
-
-							case 39 :
-								switch (yy_input) {
-									case 12 :
-										yy_state = 49;
-										break yy_forNext;
-									default :
-										break yy_forAction;
-								}
-
-							case 41 :
-								switch (yy_input) {
-									case 20 :
-										yy_state = 50;
-										break yy_forNext;
-									default :
-										break yy_forAction;
-								}
-
-							case 42 :
-								switch (yy_input) {
-									case 16 :
-										yy_state = 51;
-										break yy_forNext;
-									default :
-										break yy_forAction;
-								}
-
-							case 44 :
-								switch (yy_input) {
-									case 6 :
-									case 9 :
-									case 18 :
-										yy_isFinal = true;
-										yy_state = 21;
-										break yy_forNext;
-									case 7 :
-										yy_state = 44;
-										break yy_forNext;
-									default :
-										yy_isFinal = true;
-										yy_noLookAhead = true;
-										yy_state = 20;
-										break yy_forNext;
-								}
-
-							case 48 :
-								switch (yy_input) {
-									case 16 :
-										yy_state = 52;
-										break yy_forNext;
-									default :
-										break yy_forAction;
-								}
-
-							case 49 :
-								switch (yy_input) {
-									case 13 :
-										yy_state = 53;
-										break yy_forNext;
-									default :
-										break yy_forAction;
-								}
-
-							case 50 :
-								switch (yy_input) {
-									case 21 :
-										yy_state = 54;
-										break yy_forNext;
-									default :
-										break yy_forAction;
-								}
-
-							case 51 :
-								switch (yy_input) {
-									case 27 :
-										yy_state = 55;
-										break yy_forNext;
-									default :
-										break yy_forAction;
-								}
-
-							case 52 :
-								switch (yy_input) {
-									case 17 :
-										yy_state = 56;
-										break yy_forNext;
-									default :
-										break yy_forAction;
-								}
-
-							case 53 :
-								switch (yy_input) {
-									case 14 :
-										yy_state = 57;
-										break yy_forNext;
-									default :
-										break yy_forAction;
-								}
-
-							case 54 :
-								switch (yy_input) {
-									case 22 :
-										yy_state = 58;
-										break yy_forNext;
-									default :
-										break yy_forAction;
-								}
-
-							case 55 :
-								switch (yy_input) {
-									case 28 :
-										yy_state = 59;
-										break yy_forNext;
-									default :
-										break yy_forAction;
-								}
-
-							case 56 :
-								switch (yy_input) {
-									case 18 :
-										yy_isFinal = true;
-										yy_noLookAhead = true;
-										yy_state = 60;
-										break yy_forNext;
-									default :
-										break yy_forAction;
-								}
-
-							case 57 :
-								switch (yy_input) {
-									case 6 :
-									case 7 :
-									case 9 :
-									case 18 :
-										yy_isFinal = true;
-										yy_state = 61;
-										break yy_forNext;
-									default :
-										break yy_forAction;
-								}
-
-							case 58 :
-								switch (yy_input) {
-									case 23 :
-										yy_state = 62;
-										break yy_forNext;
-									default :
-										break yy_forAction;
-								}
-
-							case 59 :
-								switch (yy_input) {
-									case 15 :
-										yy_state = 63;
-										break yy_forNext;
-									default :
-										break yy_forAction;
-								}
-
-							case 61 :
-								switch (yy_input) {
-									case 6 :
-									case 7 :
-									case 9 :
-									case 18 :
-										yy_isFinal = true;
-										yy_state = 61;
-										break yy_forNext;
-									default :
-										break yy_forAction;
-								}
-
-							case 62 :
-								switch (yy_input) {
-									case 19 :
-										yy_state = 64;
-										break yy_forNext;
-									default :
-										break yy_forAction;
-								}
-
-							case 63 :
-								switch (yy_input) {
-									case 29 :
-										yy_state = 65;
-										break yy_forNext;
-									default :
-										break yy_forAction;
-								}
-
-							case 64 :
-								switch (yy_input) {
-									case 24 :
-										yy_state = 66;
-										break yy_forNext;
-									default :
-										break yy_forAction;
-								}
-
-							case 65 :
-								switch (yy_input) {
-									case 30 :
-										yy_state = 67;
-										break yy_forNext;
-									default :
-										break yy_forAction;
-								}
-
-							case 66 :
-								switch (yy_input) {
-									case 6 :
-									case 7 :
-									case 9 :
-									case 18 :
-										yy_state = 66;
-										break yy_forNext;
-									case 8 :
-										yy_isFinal = true;
-										yy_state = 68;
-										break yy_forNext;
-									default :
-										break yy_forAction;
-								}
-
-							case 67 :
-								switch (yy_input) {
-									case 23 :
-										yy_state = 69;
-										break yy_forNext;
-									default :
-										break yy_forAction;
-								}
-
-							case 68 :
-								switch (yy_input) {
-									case 6 :
-									case 7 :
-									case 9 :
-									case 18 :
-										yy_isFinal = true;
-										yy_state = 68;
-										break yy_forNext;
-									default :
-										break yy_forAction;
-								}
-
-							case 69 :
-								switch (yy_input) {
-									case 31 :
-										yy_state = 70;
-										break yy_forNext;
-									default :
-										break yy_forAction;
-								}
-
-							case 70 :
-								switch (yy_input) {
-									case 6 :
-									case 7 :
-									case 9 :
-									case 18 :
-										yy_state = 70;
-										break yy_forNext;
-									case 8 :
-										yy_state = 71;
-										break yy_forNext;
-									default :
-										break yy_forAction;
-								}
-
-							case 71 :
-								switch (yy_input) {
-									case 6 :
-									case 7 :
-									case 9 :
-									case 18 :
-										yy_state = 71;
-										break yy_forNext;
-									case 20 :
-										yy_state = 72;
-										break yy_forNext;
-									case 32 :
-										yy_state = 73;
-										break yy_forNext;
-									default :
-										break yy_forAction;
-								}
-
-							case 72 :
-								switch (yy_input) {
-									case 21 :
-										yy_state = 74;
-										break yy_forNext;
-									default :
-										break yy_forAction;
-								}
-
-							case 73 :
-								switch (yy_input) {
-									case 20 :
-										yy_state = 72;
-										break yy_forNext;
-									default :
-										break yy_forAction;
-								}
-
-							case 74 :
-								switch (yy_input) {
-									case 19 :
-										yy_state = 75;
-										break yy_forNext;
-									default :
-										break yy_forAction;
-								}
-
-							case 75 :
-								switch (yy_input) {
-									case 16 :
-										yy_state = 76;
-										break yy_forNext;
-									default :
-										break yy_forAction;
-								}
-
-							case 76 :
-								switch (yy_input) {
-									case 15 :
-										yy_state = 77;
-										break yy_forNext;
-									default :
-										break yy_forAction;
-								}
-
-							case 77 :
-								switch (yy_input) {
-									case 19 :
-										yy_state = 78;
-										break yy_forNext;
-									default :
-										break yy_forAction;
-								}
-
-							case 78 :
-								switch (yy_input) {
-									case 16 :
-										yy_state = 79;
-										break yy_forNext;
-									default :
-										break yy_forAction;
-								}
-
-							case 79 :
-								switch (yy_input) {
-									case 28 :
-										yy_state = 80;
-										break yy_forNext;
-									default :
-										break yy_forAction;
-								}
-
-							case 80 :
-								switch (yy_input) {
-									case 16 :
-										yy_state = 81;
-										break yy_forNext;
-									default :
-										break yy_forAction;
-								}
-
-							case 81 :
-								switch (yy_input) {
-									case 33 :
-										yy_state = 82;
-										break yy_forNext;
-									default :
-										break yy_forAction;
-								}
-
-							case 82 :
-								switch (yy_input) {
-									case 27 :
-										yy_state = 83;
-										break yy_forNext;
-									default :
-										break yy_forAction;
-								}
-
-							case 83 :
-								switch (yy_input) {
-									case 15 :
-										yy_state = 84;
-										break yy_forNext;
-									default :
-										break yy_forAction;
-								}
-
-							case 84 :
-								switch (yy_input) {
-									case 6 :
-									case 7 :
-									case 9 :
-									case 18 :
-										yy_state = 85;
-										break yy_forNext;
-									case 32 :
-										yy_state = 86;
-										break yy_forNext;
-									default :
-										break yy_forAction;
-								}
-
-							case 85 :
-								switch (yy_input) {
-									case 6 :
-									case 7 :
-									case 9 :
-									case 18 :
-										yy_state = 85;
-										break yy_forNext;
-									case 20 :
-										yy_state = 87;
-										break yy_forNext;
-									default :
-										break yy_forAction;
-								}
-
-							case 86 :
-								switch (yy_input) {
-									case 6 :
-									case 7 :
-									case 9 :
-									case 18 :
-										yy_state = 85;
-										break yy_forNext;
-									default :
-										break yy_forAction;
-								}
-
-							case 87 :
-								switch (yy_input) {
-									case 21 :
-										yy_state = 88;
-										break yy_forNext;
-									default :
-										break yy_forAction;
-								}
-
-							case 88 :
-								switch (yy_input) {
-									case 19 :
-										yy_state = 89;
-										break yy_forNext;
-									default :
-										break yy_forAction;
-								}
-
-							case 89 :
-								switch (yy_input) {
-									case 16 :
-										yy_state = 90;
-										break yy_forNext;
-									default :
-										break yy_forAction;
-								}
-
-							case 90 :
-								switch (yy_input) {
-									case 15 :
-										yy_state = 91;
-										break yy_forNext;
-									default :
-										break yy_forAction;
-								}
-
-							case 91 :
-								switch (yy_input) {
-									case 19 :
-										yy_state = 92;
-										break yy_forNext;
-									default :
-										break yy_forAction;
-								}
-
-							case 92 :
-								switch (yy_input) {
-									case 16 :
-										yy_state = 93;
-										break yy_forNext;
-									default :
-										break yy_forAction;
-								}
-
-							case 93 :
-								switch (yy_input) {
-									case 6 :
-									case 7 :
-									case 9 :
-									case 18 :
-										yy_state = 93;
-										break yy_forNext;
-									case 8 :
-										yy_isFinal = true;
-										yy_state = 94;
-										break yy_forNext;
-									default :
-										break yy_forAction;
-								}
-
-							case 94 :
-								switch (yy_input) {
-									case 6 :
-									case 7 :
-									case 9 :
-									case 18 :
-										yy_isFinal = true;
-										yy_state = 94;
-										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 26 :
-					{
-						yypushback(1);
-						popState();
-						valueText = string.toString();
-						return EncodingParserConstants.InvalidTerminatedStringValue;
-					}
-				case 96 :
-					break;
-				case 20 :
-				case 21 :
-					{
-						yypushback(1);
-						yybegin(UnDelimitedString);
-						string.setLength(0);
-					}
-				case 97 :
-					break;
-				case 17 :
-					{
-						yybegin(YYINITIAL);
-						if (foundContentTypeValue)
-							hasMore = false;
-						return HTMLHeadTokenizerConstants.MetaTagEnd;
-					}
-				case 98 :
-					break;
-				case 31 :
-					{
-						yypushback(1);
-						popState();
-						valueText = string.toString();
-						return EncodingParserConstants.InvalidTermintatedUnDelimitedStringValue;
-					}
-				case 99 :
-					break;
-				case 43 :
-					{
-						yybegin(YYINITIAL);
-						if (foundContentTypeValue)
-							hasMore = false;
-						return HTMLHeadTokenizerConstants.MetaTagEnd;
-					}
-				case 100 :
-					break;
-				case 45 :
-					{
-						yypushback(2);
-						popState();
-						valueText = string.toString();
-						return EncodingParserConstants.InvalidTerminatedStringValue;
-					}
-				case 101 :
-					break;
-				case 46 :
-					{
-						yypushback(2);
-						popState();
-						valueText = string.toString();
-						return EncodingParserConstants.InvalidTerminatedStringValue;
-					}
-				case 102 :
-					break;
-				case 61 :
-					{
-						if (yychar == 0) {
-							yybegin(ST_XMLDecl);
-							return XMLHeadTokenizerConstants.XMLDeclStart;
-						}
-					}
-				case 103 :
-					break;
-				case 8 :
-				case 9 :
-				case 10 :
-				case 11 :
-				case 12 :
-				case 13 :
-				case 14 :
-				case 15 :
-				case 16 :
-				case 18 :
-				case 19 :
-				case 22 :
-					{
-						if (yychar > MAX_TO_SCAN) {
-							hasMore = false;
-							return EncodingParserConstants.MAX_CHARS_REACHED;
-						}
-					}
-				case 104 :
-					break;
-				case 60 :
-					{
-						yybegin(ST_META_TAG);
-						return HTMLHeadTokenizerConstants.MetaTagStart;
-					}
-				case 105 :
-					break;
-				case 40 :
-					{
-						yybegin(YYINITIAL);
-						return XMLHeadTokenizerConstants.XMLDeclEnd;
-					}
-				case 106 :
-					break;
-				case 94 :
-					{
-						pushCurrentState();
-						yybegin(QuotedAttributeValue);
-						foundContentTypeValue = true;
-						return HTMLHeadTokenizerConstants.MetaTagContentType;
-					}
-				case 107 :
-					break;
-				case 68 :
-					{
-						pushCurrentState();
-						yybegin(QuotedAttributeValue);
-						return XMLHeadTokenizerConstants.XMLDelEncoding;
-					}
-				case 108 :
-					break;
-				case 33 :
-					{
-						hasMore = false;
-						return EncodingParserConstants.UTF16BE;
-					}
-				case 109 :
-					break;
-				case 34 :
-					{
-						hasMore = false;
-						return EncodingParserConstants.UTF16LE;
-					}
-				case 110 :
-					break;
-				case 47 :
-					{
-						hasMore = false;
-						return EncodingParserConstants.UTF83ByteBOM;
-					}
-				case 111 :
-					break;
-				case 28 :
-					{
-						popState();
-						valueText = string.toString();
-						return EncodingParserConstants.StringValue;
-					}
-				case 112 :
-					break;
-				case 25 :
-				case 27 :
-				case 29 :
-				case 32 :
-					{
-						string.append(yytext());
-					}
-				case 113 :
-					break;
-				case 24 :
-					{
-						yybegin(SQ_STRING);
-						string.setLength(0);
-					}
-				case 114 :
-					break;
-				case 23 :
-					{
-						yybegin(DQ_STRING);
-						string.setLength(0);
-					}
-				case 115 :
-					break;
-				case 30 :
-					{
-						yypushback(1);
-						popState();
-						valueText = string.toString();
-						return EncodingParserConstants.UnDelimitedStringValue;
-					}
-				case 116 :
-					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++) {
-			HTMLHeadTokenizer scanner = null;
-			try {
-				scanner = new HTMLHeadTokenizer(new java.io.FileReader(argv[i]));
-			}
-			catch (java.io.FileNotFoundException e) {
-				System.out.println("File not found : \"" + argv[i] + "\"");
-				System.exit(1);
-			}
-			catch (ArrayIndexOutOfBoundsException e) {
-				System.out.println("Usage : java HTMLHeadTokenizer <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);
-			}
-		}
-	}
-
-
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contenttype/HTMLHeadTokenizerConstants.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contenttype/HTMLHeadTokenizerConstants.java
deleted file mode 100644
index 938bcde..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contenttype/HTMLHeadTokenizerConstants.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.wst.html.core.internal.contenttype;
-
-
-public interface HTMLHeadTokenizerConstants {
-
-	String MetaTagEnd = "MetaTagEnd"; //$NON-NLS-1$
-	String MetaTagStart = "MetaTagStart"; //$NON-NLS-1$
-	String MetaTagContentType = "MetaTagContentType"; //$NON-NLS-1$
-
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contenttype/HTMLResourceEncodingDetector.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contenttype/HTMLResourceEncodingDetector.java
deleted file mode 100644
index bff2219..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contenttype/HTMLResourceEncodingDetector.java
+++ /dev/null
@@ -1,187 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this 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.core.internal.contenttype;
-
-import java.io.IOException;
-import java.util.regex.Pattern;
-
-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.xml.core.internal.contenttype.EncodingParserConstants;
-
-public class HTMLResourceEncodingDetector extends AbstractResourceEncodingDetector implements IResourceCharsetDetector {
-
-	private HTMLHeadTokenizer fTokenizer;
-
-	/**
-	 * There is no spec defined encoding for HTML (historically), so null is
-	 * returned.
-	 */
-	public String getSpecDefaultEncoding() {
-		return null;
-	}
-
-	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;
-	}
-
-	/**
-	 * @return Returns the tokenizer.
-	 */
-	private HTMLHeadTokenizer getTokenizer() {
-		// TODO: need to work on 'reset' in tokenizer, so new instance isn't
-		// always needed
-		//if (fTokenizer == null) {
-		fTokenizer = new HTMLHeadTokenizer();
-		//		}
-		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 {
-		checkInContent();
-		if (fEncodingMemento == null) {
-			checkHeuristics();
-		}
-	}
-
-	/**
-	 *  
-	 */
-	private void checkHeuristics() throws IOException {
-		boolean noHeuristic = false;
-		String heuristicEncoding = null;
-		try {
-			fReader.reset();
-			fReader.mark(CodedIO.MAX_MARK_SIZE);
-			byte[] bytes = new byte[CodedIO.MAX_MARK_SIZE];
-			int nRead = 0;
-			for (int i = 0; i < bytes.length; i++) {
-				if (fReader.ready()) {
-					int oneByte = fReader.read();
-					nRead++;
-					if (oneByte <= 0xFF) {
-						bytes[i] = (byte) oneByte;
-					}
-					else {
-						noHeuristic = true;
-						break;
-					}
-				}
-				else {
-					break;
-				}
-			}
-			if (!noHeuristic) {
-				heuristicEncoding = EncodingGuesser.guessEncoding(bytes, nRead);
-			}
-		}
-		catch (IOException e) {
-			// if any IO exception, then not a heuristic case
-		}
-		finally {
-			fReader.reset();
-		}
-		if (heuristicEncoding != null) {
-			createEncodingMemento(heuristicEncoding, EncodingMemento.GUESSED_ENCODING_FROM_STREAM);
-		}
-
-	}
-
-	private void checkInContent() throws IOException {
-		HTMLHeadTokenizer tokenizer = getTokenizer();
-		tokenizer.reset(fReader);
-		HeadParserToken token = null;
-		String tokenType = null;
-		String contentTypeValue = null;
-		do {
-			token = tokenizer.getNextToken();
-			tokenType = token.getType();
-			if (canHandleAsUnicodeStream(tokenType)) {
-				// side effect of canHandle is to create appropriate
-				// memento
-			}
-			else if (tokenType == HTMLHeadTokenizerConstants.MetaTagContentType) {
-				if (tokenizer.hasMoreTokens()) {
-					HeadParserToken valueToken = tokenizer.getNextToken();
-					String valueTokenType = valueToken.getType();
-					if (isLegalString(valueTokenType)) {
-						contentTypeValue = valueToken.getText();
-
-					}
-				}
-			}
-
-		}
-		while (tokenizer.hasMoreTokens());
-		if (contentTypeValue != null) {
-			parseContentTypeValue(contentTypeValue);
-		}
-	}
-
-	private void parseContentTypeValue(String contentType) {
-		String charset = null;
-		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()) {
-							charset = parts[0].substring(eqpos);
-							charset = charset.trim();
-						}
-					}
-				}
-			}
-			else {
-				//fContentType = parts[0];
-			}
-		}
-		if (parts.length > 1) {
-			charset = parts[1];
-		}
-		
-		if (charset != null && charset.length() > 0) {
-			createEncodingMemento(charset, EncodingMemento.FOUND_ENCODING_IN_CONTENT);
-		}
-	}
-
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contenttype/HeadParserToken.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contenttype/HeadParserToken.java
deleted file mode 100644
index ffd0406..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/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.html.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.html.core/src/org/eclipse/wst/html/core/internal/contenttype/IntStack.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contenttype/IntStack.java
deleted file mode 100644
index 5006745..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/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.html.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.html.core/src/org/eclipse/wst/html/core/internal/contenttype/NullMemento.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contenttype/NullMemento.java
deleted file mode 100644
index 5e22af0..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/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.html.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.html.core/src/org/eclipse/wst/html/core/internal/document/DOMStyleModelImpl.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/document/DOMStyleModelImpl.java
deleted file mode 100644
index 7dbc200..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/document/DOMStyleModelImpl.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
- *******************************************************************************/
-/*
- * Created on Sep 2, 2003
- *
- * To change the template for this generated file go to
- * Window>Preferences>Java>Code Generation>Code and Comments
- */
-package org.eclipse.wst.html.core.internal.document;
-
-import org.eclipse.wst.xml.core.internal.document.DOMModelImpl;
-import org.w3c.dom.Document;
-
-/**
- * @author davidw
- *
- * To change the template for this generated type comment go to
- * Window>Preferences>Java>Code Generation>Code and Comments
- */
-public class DOMStyleModelImpl extends DOMModelImpl {
-	public DOMStyleModelImpl() {
-		// remember, the document is created in super constructor, 
-		// via internalCreateDocument
-		super();
-	}
-
-	public void releaseFromEdit() {
-		releaseStyleSheets();
-		super.releaseFromEdit();
-	}
-
-	/**
-	 */
-	public void releaseFromRead() {
-		releaseStyleSheets();
-		super.releaseFromRead();
-	}
-
-	private void releaseStyleSheets() {
-		if (!isShared()) {
-			Document doc = getDocument();
-			if (doc instanceof DocumentStyleImpl) {
-				((DocumentStyleImpl) doc).releaseStyleSheets();
-			}
-		}
-	}
-
-	/**
-	 * createDocument method
-	 * @return org.w3c.dom.Document
-	 */
-	protected Document internalCreateDocument() {
-		DocumentStyleImpl document = new DocumentStyleImpl();
-		document.setModel(this);
-		return document;
-	}
-
-
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/document/DocumentStyleImpl.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/document/DocumentStyleImpl.java
deleted file mode 100644
index ff46210..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/document/DocumentStyleImpl.java
+++ /dev/null
@@ -1,96 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.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 2, 2003
- *
- * To change the template for this generated file go to
- * Window>Preferences>Java>Code Generation>Code and Comments
- */
-package org.eclipse.wst.html.core.internal.document;
-
-import org.eclipse.wst.css.core.internal.provisional.adapters.IStyleSheetListAdapter;
-import org.eclipse.wst.sse.core.internal.provisional.INodeAdapter;
-import org.eclipse.wst.xml.core.internal.document.DocumentImpl;
-import org.eclipse.wst.xml.core.internal.provisional.document.IDOMDocument;
-import org.eclipse.wst.xml.core.internal.provisional.document.IDOMModel;
-import org.w3c.dom.DOMException;
-import org.w3c.dom.Element;
-import org.w3c.dom.Node;
-import org.w3c.dom.css.CSSStyleDeclaration;
-import org.w3c.dom.css.DocumentCSS;
-import org.w3c.dom.stylesheets.StyleSheetList;
-
-/**
- * @author davidw
- *
- * To change the template for this generated type comment go to
- * Window>Preferences>Java>Code Generation>Code and Comments
- */
-public class DocumentStyleImpl extends DocumentImpl implements IDOMDocument, DocumentCSS {
-	public DocumentStyleImpl() {
-		super();
-	}
-
-	protected DocumentStyleImpl(DocumentImpl that) {
-		super(that);
-	}
-
-	public CSSStyleDeclaration getOverrideStyle(Element element, String pseudoName) {
-		INodeAdapter adapter = getAdapterFor(IStyleSheetListAdapter.class);
-		if (adapter == null)
-			return null;
-		return ((IStyleSheetListAdapter) adapter).getOverrideStyle(element, pseudoName);
-	}
-
-	public StyleSheetList getStyleSheets() {
-		INodeAdapter adapter = getAdapterFor(IStyleSheetListAdapter.class);
-		if (adapter == null)
-			return null;
-		return ((IStyleSheetListAdapter) adapter).getStyleSheets();
-	}
-
-	protected void releaseStyleSheets() {
-		INodeAdapter adapter = getExistingAdapter(IStyleSheetListAdapter.class);
-		if (adapter == null)
-			return;
-		((IStyleSheetListAdapter) adapter).releaseStyleSheets();
-	}
-
-	/**
-	 * createElement method
-	 * @return org.w3c.dom.Element
-	 * @param tagName java.lang.String
-	 */
-	public Element createElement(String tagName) throws DOMException {
-		checkTagNameValidity(tagName);
-
-		ElementStyleImpl element = new ElementStyleImpl();
-		element.setOwnerDocument(this);
-		element.setTagName(tagName);
-		return element;
-	}
-
-	/**
-	 * cloneNode method
-	 * @return org.w3c.dom.Node
-	 * @param deep boolean
-	 */
-	public Node cloneNode(boolean deep) {
-		DocumentStyleImpl cloned = new DocumentStyleImpl(this);
-		if (deep)
-			cloned.importChildNodes(this, true);
-		return cloned;
-	}
-
-	protected void setModel(IDOMModel model) {
-		super.setModel(model);
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/document/ElementStyleImpl.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/document/ElementStyleImpl.java
deleted file mode 100644
index 943218b..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/document/ElementStyleImpl.java
+++ /dev/null
@@ -1,73 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.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 2, 2003
- *
- * To change the template for this generated file go to
- * Window>Preferences>Java>Code Generation>Code and Comments
- */
-package org.eclipse.wst.html.core.internal.document;
-
-import org.eclipse.wst.css.core.internal.provisional.adapters.IStyleDeclarationAdapter;
-import org.eclipse.wst.css.core.internal.provisional.adapters.IStyleSheetAdapter;
-import org.eclipse.wst.sse.core.internal.provisional.INodeAdapter;
-import org.eclipse.wst.xml.core.internal.document.ElementImpl;
-import org.eclipse.wst.xml.core.internal.provisional.document.IDOMElement;
-import org.w3c.dom.Document;
-import org.w3c.dom.Node;
-import org.w3c.dom.css.CSSStyleDeclaration;
-import org.w3c.dom.css.ElementCSSInlineStyle;
-import org.w3c.dom.stylesheets.LinkStyle;
-import org.w3c.dom.stylesheets.StyleSheet;
-
-public class ElementStyleImpl extends ElementImpl implements IDOMElement, ElementCSSInlineStyle, LinkStyle {
-	public ElementStyleImpl() {
-		super();
-	}
-
-	public ElementStyleImpl(ElementImpl that) {
-		super(that);
-	}
-
-	public StyleSheet getSheet() {
-		INodeAdapter adapter = getAdapterFor(IStyleSheetAdapter.class);
-		if (adapter == null)
-			return null;
-		if (!(adapter instanceof IStyleSheetAdapter))
-			return null;
-		return ((IStyleSheetAdapter) adapter).getSheet();
-	}
-
-	public CSSStyleDeclaration getStyle() {
-		INodeAdapter adapter = getAdapterFor(IStyleDeclarationAdapter.class);
-		if (adapter == null)
-			return null;
-		if (!(adapter instanceof IStyleDeclarationAdapter))
-			return null;
-		return ((IStyleDeclarationAdapter) adapter).getStyle();
-	}
-
-	protected void setOwnerDocument(Document ownerDocument) {
-		super.setOwnerDocument(ownerDocument);
-	}
-
-	protected void setTagName(String tagName) {
-		super.setTagName(tagName);
-	}
-
-	public Node cloneNode(boolean deep) {
-		ElementImpl cloned = new ElementStyleImpl(this);
-		if (deep)
-			cloneChildNodes(cloned, deep);
-		return cloned;
-	}
-
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/document/HTMLConverter.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/document/HTMLConverter.java
deleted file mode 100644
index 4207f6f..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/document/HTMLConverter.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.wst.html.core.internal.document;
-
-import java.io.ByteArrayInputStream;
-import java.io.IOException;
-import java.io.InputStream;
-import java.io.OutputStream;
-import java.io.UnsupportedEncodingException;
-
-import org.eclipse.core.resources.IFile;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.wst.html.core.internal.cleanup.HTMLCleanupProcessorImpl;
-import org.eclipse.wst.html.core.internal.preferences.HTMLCorePreferenceNames;
-import org.eclipse.wst.sse.core.internal.cleanup.IStructuredCleanupPreferences;
-import org.eclipse.wst.sse.core.internal.provisional.IModelManager;
-import org.eclipse.wst.sse.core.internal.provisional.IStructuredModel;
-import org.eclipse.wst.sse.core.internal.provisional.StructuredModelManager;
-import org.eclipse.wst.sse.core.internal.provisional.text.IStructuredDocument;
-import org.eclipse.wst.xml.core.internal.provisional.document.IDOMDocument;
-import org.eclipse.wst.xml.core.internal.provisional.document.IDOMDocumentType;
-import org.eclipse.wst.xml.core.internal.provisional.document.IDOMModel;
-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 HTMLConverter {
-
-	/**
-	 */
-	public HTMLConverter() {
-		super();
-
-	}
-
-	public void cleanupModel(IDOMModel model) {
-		if (model == null)
-			return;
-
-		HTMLCleanupProcessorImpl processor = new HTMLCleanupProcessorImpl();
-		IStructuredCleanupPreferences pref = processor.getCleanupPreferences();
-
-		// backup options
-		boolean compressEmptyElementTags = pref.getCompressEmptyElementTags();
-		boolean insertRequiredAttrs = pref.getInsertRequiredAttrs();
-		boolean insertMissingTags = pref.getInsertMissingTags();
-		boolean quoteAttrValues = pref.getQuoteAttrValues();
-		boolean formatSource = pref.getFormatSource();
-		int tagNameCase = pref.getTagNameCase();
-		int attrNameCase = pref.getAttrNameCase();
-
-		// setup options
-		pref.setCompressEmptyElementTags(true);
-		pref.setInsertRequiredAttrs(true);
-		pref.setInsertMissingTags(true);
-		pref.setQuoteAttrValues(true);
-		pref.setFormatSource(false);
-		if (model.getDocument().isXMLType()) { // XHTML
-			pref.setTagNameCase(HTMLCorePreferenceNames.LOWER);
-			pref.setAttrNameCase(HTMLCorePreferenceNames.LOWER);
-		}
-		else {
-			pref.setTagNameCase(HTMLCorePreferenceNames.ASIS);
-			pref.setAttrNameCase(HTMLCorePreferenceNames.ASIS);
-		}
-
-		processor.cleanupModel(model);
-
-		// set back options
-		pref.setCompressEmptyElementTags(compressEmptyElementTags);
-		pref.setInsertRequiredAttrs(insertRequiredAttrs);
-		pref.setInsertMissingTags(insertMissingTags);
-		pref.setQuoteAttrValues(quoteAttrValues);
-		pref.setFormatSource(formatSource);
-		pref.setTagNameCase(tagNameCase);
-		pref.setAttrNameCase(attrNameCase);
-	}
-
-	/**
-	 * declaratoin: "data" for XML declaration, such as "version=\"1.0\""
-	 * publicId: publicId for DOCTYPE declaration
-	 */
-	public void convert(IDOMModel model, String declaration, String publicId) {
-		if (model == null)
-			return;
-		setDeclaration(model, declaration, publicId);
-		cleanupModel(model);
-	}
-
-	/**
-	 * declaratoin: "data" for XML declaration, such as "version=\"1.0\""
-	 * publicId: publicId for DOCTYPE declaration
-	 */
-	public void convert(InputStream input, OutputStream output, String declaration, String publicId) throws UnsupportedEncodingException, IOException, CoreException {
-		IDOMModel model = readModel(input);
-		if (model == null)
-			return;
-		try {
-			convert(model, declaration, publicId);
-			writeModel(model, output);
-		}
-		finally {
-			if (model != null)
-				model.releaseFromEdit();
-		}
-	}
-
-	/**
-	 * declaratoin: "data" for XML declaration, such as "version=\"1.0\""
-	 * publicId: publicId for DOCTYPE declaration
-	 */
-	public void convert(IFile file, String declaration, String publicId) throws IOException, CoreException {
-		IDOMModel model = readModel(file);
-		if (model == null)
-			return;
-		try {
-			convert(model, declaration, publicId);
-			writeModel(model, file);
-		}
-		finally {
-			if (model != null)
-				model.releaseFromEdit();
-		}
-	}
-
-	/**
-	 */
-	private static void insertBreak(IDOMModel model, Node node) {
-		if (model == null || node == null)
-			return;
-		if (node.getNodeType() == Node.TEXT_NODE)
-			return;
-
-		// get delimiter string
-		IStructuredDocument structuredDocument = model.getStructuredDocument();
-		if (structuredDocument == null)
-			return;
-		String delim = structuredDocument.getLineDelimiter();
-		if (delim == null || delim.length() == 0)
-			return;
-
-		Node parent = node.getParentNode();
-		if (parent == null)
-			return;
-		Document document = node.getOwnerDocument();
-		if (document == null)
-			return;
-		Text text = document.createTextNode(delim);
-		parent.insertBefore(text, node);
-	}
-
-	/**
-	 */
-	private IDOMModel readModel(InputStream input) throws IOException, UnsupportedEncodingException {
-		if (input == null)
-			return null;
-		// create temporary model
-		String id = input.toString() + ".html"; //$NON-NLS-1$
-		IModelManager manager = StructuredModelManager.getModelManager();
-		IStructuredModel model = manager.getModelForEdit(id, input, null);
-		if (!(model instanceof IDOMModel)) {
-			if (model == null)
-				model.releaseFromEdit();
-			return null;
-		}
-		return (IDOMModel) model;
-	}
-
-	/**
-	 */
-	private IDOMModel readModel(IFile file) throws IOException, CoreException {
-		if (file == null)
-			return null;
-		IModelManager manager = StructuredModelManager.getModelManager();
-		IStructuredModel model = manager.getModelForEdit(file);
-		if (!(model instanceof IDOMModel)) {
-			if (model != null)
-				model.releaseFromEdit();
-			return null;
-		}
-		return (IDOMModel) model;
-	}
-
-	/**
-	 */
-	public void setDeclaration(IDOMModel model, String declaration, String publicId) {
-		if (model == null)
-			return;
-		IDOMDocument document = model.getDocument();
-		if (document == null)
-			return;
-
-		try {
-			model.aboutToChangeModel();
-
-			ProcessingInstruction pi = null;
-			Node child = document.getFirstChild();
-			if (child != null && child.getNodeType() == Node.PROCESSING_INSTRUCTION_NODE) {
-				String target = child.getNodeName();
-				if (target != null && target.equals("xml")) { //$NON-NLS-1$
-					pi = (ProcessingInstruction) child;
-					child = child.getNextSibling();
-				}
-			}
-			IDOMDocumentType docType = (IDOMDocumentType) document.getDoctype();
-
-			if (declaration != null) {
-				if (pi != null) {
-					pi.setData(declaration);
-				}
-				else {
-					pi = document.createProcessingInstruction("xml", declaration); //$NON-NLS-1$
-					document.insertBefore(pi, child);
-					insertBreak(model, child);
-				}
-			}
-
-			if (publicId != null) {
-				HTMLDocumentTypeEntry entry = HTMLDocumentTypeRegistry.getInstance().getEntry(publicId);
-				String name = (entry != null ? entry.getName() : null);
-				if (name == null || name.length() == 0)
-					name = "HTML"; // default //$NON-NLS-1$
-				if (docType != null) {
-					if (!name.equals(docType.getName())) { // replace
-						Node parent = docType.getParentNode();
-						child = docType;
-						docType = (IDOMDocumentType) document.createDoctype(name);
-						parent.insertBefore(docType, child);
-						parent.removeChild(child);
-					}
-				}
-				else {
-					docType = (IDOMDocumentType) document.createDoctype(name);
-					document.insertBefore(docType, child);
-					insertBreak(model, child);
-				}
-				docType.setPublicId(publicId);
-				if (entry != null) {
-					String systemId = entry.getSystemId();
-					if (systemId != null)
-						docType.setSystemId(systemId);
-					String namespaceURI = entry.getNamespaceURI();
-					if (namespaceURI != null) {
-						Element element = document.getDocumentElement();
-						if (element != null) {
-							element.setAttribute("xmlns", namespaceURI); //$NON-NLS-1$
-						}
-					}
-				}
-			}
-		}
-		finally {
-			model.changedModel();
-		}
-	}
-
-	/**
-	 */
-	private void writeModel(IDOMModel model, OutputStream output) throws UnsupportedEncodingException, IOException, CoreException {
-		if (model == null || output == null)
-			return;
-		model.save();
-	}
-
-	/**
-	 */
-	private void writeModel(IDOMModel model, IFile file) throws IOException, CoreException {
-		if (model == null || file == null)
-			return;
-		IStructuredDocument structuredDocument = model.getStructuredDocument();
-		if (structuredDocument == null)
-			return;
-		//ByteArrayOutputStream output = null;
-		ByteArrayInputStream input = null;
-		try {
-			//output = new
-			// ByteArrayOutputStream(structuredDocument.getLength());
-			model.save();
-			//input = new ByteArrayInputStream(output.toByteArray());
-			//file.setContents(input, true, true, null);
-		}
-		finally {
-			//			if (output != null)
-			//				output.close();
-			if (input != null)
-				input.close();
-		}
-
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/document/HTMLDocumentTypeAdapter.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/document/HTMLDocumentTypeAdapter.java
deleted file mode 100644
index b03fe03..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/document/HTMLDocumentTypeAdapter.java
+++ /dev/null
@@ -1,303 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this 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.core.internal.document;
-
-
-
-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.wst.sse.core.internal.provisional.INodeNotifier;
-import org.eclipse.wst.sse.core.internal.provisional.IStructuredModel;
-import org.eclipse.wst.sse.ui.internal.provisional.contentproperties.ContentSettings;
-import org.eclipse.wst.sse.ui.internal.provisional.contentproperties.ContentSettingsChangeSubject;
-import org.eclipse.wst.sse.ui.internal.provisional.contentproperties.IContentSettings;
-import org.eclipse.wst.sse.ui.internal.provisional.contentproperties.IContentSettingsListener;
-import org.eclipse.wst.xml.core.internal.document.DocumentTypeAdapter;
-import org.eclipse.wst.xml.core.internal.document.DocumentTypeAdapterImpl;
-import org.eclipse.wst.xml.core.internal.provisional.document.IDOMDocument;
-import org.eclipse.wst.xml.core.internal.provisional.document.IDOMDocumentType;
-import org.eclipse.wst.xml.core.internal.provisional.document.IDOMModel;
-import org.w3c.dom.DOMImplementation;
-import org.w3c.dom.Document;
-import org.w3c.dom.DocumentType;
-import org.w3c.dom.Node;
-
-/**
- */
-public class HTMLDocumentTypeAdapter extends DocumentTypeAdapterImpl implements IContentSettingsListener, HTMLDocumentTypeConstants {
-
-	private HTMLDocumentTypeAdapterFactory factory = null;
-	private HTMLDocumentTypeEntry entry = null;
-	private boolean isXMLType = false;
-	private final static String XML = "xml"; //$NON-NLS-1$
-	private final static String XHTML = "xhtml"; //$NON-NLS-1$
-	private final static String WML = "wml"; //$NON-NLS-1$
-
-
-	/**
-	 */
-	protected HTMLDocumentTypeAdapter() {
-		super();
-	}
-
-	/**
-	 */
-	protected HTMLDocumentTypeAdapter(IDOMDocument document, HTMLDocumentTypeAdapterFactory factory) {
-		super(document);
-
-		this.factory = factory;
-
-		// initialize
-		documentTypeChanged();
-
-		ContentSettingsChangeSubject.getSubject().addListener(this);
-	}
-
-	/**
-	 */
-	public void contentSettingsChanged(IResource resource) {
-		if (resource == null)
-			return;
-		IDOMDocument document = getDocument();
-		if (document == null)
-			return;
-		IDOMModel model = document.getModel();
-		if (model == null)
-			return;
-		IFile file = getFile(model);
-		if (file == null)
-			return;
-		IProject project = file.getProject();
-		if (project == null)
-			return;
-		if (!project.equals(resource.getProject()))
-			return;
-		documentTypeChanged();
-	}
-
-	/**
-	 */
-	private void documentTypeChanged() {
-		IDOMDocument document = getDocument();
-		if (document == null)
-			return; // error
-		IDOMModel model = document.getModel();
-		if (model == null)
-			return; // error
-
-		IFile file = getFile(model);
-
-		// find DOCTYPE delcaration and Public ID
-		String publicId = null;
-		DocumentType newDocumentType = findDocumentType(document);
-		if (newDocumentType != null) {
-			publicId = newDocumentType.getPublicId();
-		} else {
-			// lookup default set by contentsettings
-			publicId = getDefaultPublicId(file);
-		}
-
-		// lookup DOCTYPE registry
-		HTMLDocumentTypeEntry newEntry = null;
-		if (publicId != null) {
-			newEntry = HTMLDocumentTypeRegistry.getInstance().getEntry(publicId);
-		}
-
-		boolean newXMLType = (newEntry != null ? newEntry.isXMLType() : false);
-		boolean newWMLType = (newEntry != null ? newEntry.isWMLType() : false);
-
-		if (!newXMLType) {
-			// find XML declaration
-			if (findXMLNode(document) != null) {
-				newXMLType = true;
-			}
-
-			// check file extension
-			if (file != null) {
-				String ext = file.getFileExtension();
-				if (ext != null && ext.equalsIgnoreCase(XHTML)) {
-					newXMLType = true;
-				}
-
-				if (ext != null && ext.equalsIgnoreCase(WML)) {
-					newXMLType = true;
-					newWMLType = true;
-				}
-			}
-
-		}
-
-		if (newEntry == null) {
-			// lookup system default
-			if (newXMLType && newDocumentType == null) {
-				// use default XHTML, if it's XML and no document type
-				// declared
-				if (newWMLType)
-					newEntry = HTMLDocumentTypeRegistry.getInstance().getDefaultEntry(HTMLDocumentTypeRegistry.DEFAULT_WML);
-				else
-					newEntry = HTMLDocumentTypeRegistry.getInstance().getDefaultEntry(HTMLDocumentTypeRegistry.DEFAULT_XHTML);
-
-			} else {
-				newEntry = HTMLDocumentTypeRegistry.getInstance().getDefaultEntry(HTMLDocumentTypeRegistry.DEFAULT_HTML);
-			}
-			if (newEntry == null)
-				return; // error
-		}
-
-		if (newDocumentType == null) {
-			DocumentType oldDocumentType = getDocumentType();
-			if (oldDocumentType == null || oldDocumentType.getName() != newEntry.getName()) {
-				// create implicit DocumentType
-				DOMImplementation impl = document.getImplementation();
-				if (impl != null) {
-					String name = newEntry.getName();
-					publicId = newEntry.getPublicId();
-					String systemId = newEntry.getSystemId();
-					newDocumentType = impl.createDocumentType(name, publicId, systemId);
-				}
-			}
-		}
-
-		boolean notify = false;
-		if (this.entry != null) { // do not notify on initialization
-			notify = (newEntry != this.entry || newXMLType != this.isXMLType);
-		}
-
-		if (newDocumentType != null)
-			setDocumentType(newDocumentType);
-		this.entry = newEntry;
-		this.isXMLType = newXMLType;
-
-		if (notify)
-			notifyDocumentTypeChanged();
-	}
-
-	/**
-	 */
-	private IDOMDocumentType findDocumentType(IDOMDocument document) {
-		IDOMDocumentType documentType = (IDOMDocumentType) document.getDoctype();
-		if (documentType != null && documentType.getExistingAdapter(DocumentTypeAdapter.class) == null) {
-			// watch future changes
-			documentType.addAdapter(this);
-		}
-		return documentType;
-	}
-
-	/**
-	 */
-	private Node findXMLNode(Document document) {
-		for (Node child = document.getFirstChild(); child != null; child = child.getNextSibling()) {
-			if (child.getNodeType() != Node.PROCESSING_INSTRUCTION_NODE)
-				continue;
-			String target = child.getNodeName();
-			if (target != null && target.equals(XML)) {
-				return child;
-			}
-		}
-		return null;
-	}
-
-	/**
-	 */
-	public int getAttrNameCase() {
-		if (isXMLType())
-			return LOWER_CASE; // XHTML
-		return this.factory.getAttrNameCase();
-	}
-
-	/**
-	 */
-	private String getDefaultPublicId(IFile file) {
-		if (file == null)
-			return null;
-		IProject project = file.getProject();
-		if (project == null)
-			return null;
-		IContentSettings settings = ContentSettings.getInstance();
-		if (settings == null)
-			return null;
-		String publicId = settings.getProperty(file, IContentSettings.HTML_DOCUMENT_TYPE);
-		if (publicId == null || publicId.length() == 0) {
-			// look up project default
-			publicId = settings.getProperty(project, IContentSettings.HTML_DOCUMENT_TYPE);
-		}
-		return publicId;
-	}
-
-	private IFile getFile(IStructuredModel model) {
-		IFile result = null;
-		String location = model.getBaseLocation();
-		if (location != null) {
-			IPath path = new Path(location);
-			if (!path.toFile().exists() && path.segmentCount() > 1) {
-				result = ResourcesPlugin.getWorkspace().getRoot().getFile(path);
-			}
-		}
-		return result;
-	}
-
-	/**
-	 */
-	public int getTagNameCase() {
-		if (isXMLType())
-			return LOWER_CASE; // XHTML
-		return this.factory.getTagNameCase();
-	}
-
-	/**
-	 */
-	public boolean hasFeature(String feature) {
-		if (feature == null)
-			return false;
-		if (feature.equals(HTML))
-			return true;
-		if (feature.equals(SSI))
-			return true;
-		if (feature.equals(FRAMESET)) {
-			if (this.entry == null)
-				return false;
-			return this.entry.hasFrameset();
-		}
-		return false;
-	}
-
-	/**
-	 */
-	public boolean isXMLType() {
-		return this.isXMLType;
-	}
-
-	/**
-	 */
-	public void notifyChanged(INodeNotifier notifier, int eventType, Object changedFeature, Object oldValue, Object newValue, int pos) {
-		if (notifier == null)
-			return;
-		if (notifier instanceof IDOMDocument) {
-			if (eventType != INodeNotifier.STRUCTURE_CHANGED)
-				return;
-		} else {
-			if (eventType != INodeNotifier.CHANGE)
-				return;
-		}
-		documentTypeChanged();
-	}
-
-	/**
-	 */
-	public void release() {
-		ContentSettingsChangeSubject.getSubject().removeListener(this);
-		super.release();
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/document/HTMLDocumentTypeAdapterFactory.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/document/HTMLDocumentTypeAdapterFactory.java
deleted file mode 100644
index 997f0f7..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/document/HTMLDocumentTypeAdapterFactory.java
+++ /dev/null
@@ -1,145 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this 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.core.internal.document;
-
-
-
-import org.eclipse.core.runtime.Preferences;
-import org.eclipse.wst.html.core.internal.HTMLCorePlugin;
-import org.eclipse.wst.html.core.internal.preferences.HTMLCorePreferenceNames;
-import org.eclipse.wst.sse.core.internal.provisional.INodeAdapter;
-import org.eclipse.wst.sse.core.internal.provisional.INodeAdapterFactory;
-import org.eclipse.wst.sse.core.internal.provisional.INodeNotifier;
-import org.eclipse.wst.xml.core.internal.document.DocumentTypeAdapter;
-import org.eclipse.wst.xml.core.internal.provisional.document.IDOMDocument;
-
-/**
- */
-public class HTMLDocumentTypeAdapterFactory implements INodeAdapterFactory, Preferences.IPropertyChangeListener {
-
-	private int tagNameCase = DocumentTypeAdapter.UPPER_CASE;
-	private int attrNameCase = DocumentTypeAdapter.LOWER_CASE;
-	private Preferences preferences = null;
-
-	// for removal later on release()
-	private DocumentTypeAdapter fAdapter = null;
-	private INodeNotifier fNotifier = null;
-	
-	/**
-	 */
-	public HTMLDocumentTypeAdapterFactory() {
-		super();
-		this.preferences = HTMLCorePlugin.getDefault().getPluginPreferences();
-		//this.store = CommonPreferencesPlugin.getDefault().getPreferenceStore(ContentTypeRegistry.HTML_ID);
-		if (this.preferences != null) {
-			updateCases(); // initialize
-			this.preferences.addPropertyChangeListener(this);
-		}
-	}
-
-	/**
-	 * Method that returns the adapter associated with the given object.
-	 * It may be a singleton or not ... depending on the needs of the INodeAdapter  ...
-	 * but in general it is recommended for an adapter to be stateless, 
-	 * so the efficiencies of a singleton can be gained.
-	 *
-	 * The implementation of this method should call addAdapter on the adapted
-	 * object with the correct instance of the adapter.
-	 */
-	public INodeAdapter adapt(INodeNotifier notifier) {
-		// https://bugs.eclipse.org/bugs/show_bug.cgi?id=85484
-		
-		// remove old adapter, or else they may collect
-		DocumentTypeAdapter oldAdapter = (DocumentTypeAdapter)notifier.getExistingAdapter(DocumentTypeAdapter.class);
-		if(oldAdapter != null) {
-			oldAdapter.release();
-			notifier.removeAdapter(oldAdapter);
-		}
-		
-		DocumentTypeAdapter adapter = null;
-//		if (adapter != null && adapter instanceof HTMLDocumentTypeAdapter)
-//			return adapter;
-		if (!(notifier instanceof IDOMDocument))
-			return null;
-		adapter = new HTMLDocumentTypeAdapter((IDOMDocument) notifier, this);
-		notifier.addAdapter(adapter);
-		
-		fAdapter = adapter;
-		fNotifier = notifier;
-		
-		return adapter;
-	}
-
-	/**
-	 */
-	public int getAttrNameCase() {
-		return this.attrNameCase;
-	}
-
-	/**
-	 */
-	public int getTagNameCase() {
-		return this.tagNameCase;
-	}
-
-	/**
-	 */
-	public boolean isFactoryForType(Object type) {
-		return (type == DocumentTypeAdapter.class);
-	}
-
-	/**
-	 */
-	public void propertyChange(Preferences.PropertyChangeEvent event) {
-		if (event == null)
-			return;
-		String property = event.getProperty();
-		if (property == null)
-			return;
-
-		if (property.equals(HTMLCorePreferenceNames.TAG_NAME_CASE) || property.equals(HTMLCorePreferenceNames.ATTR_NAME_CASE)) {
-			updateCases();
-		}
-	}
-
-	/**
-	 */
-	private void updateCases() {
-		this.tagNameCase = DocumentTypeAdapter.UPPER_CASE;
-		this.attrNameCase = DocumentTypeAdapter.LOWER_CASE;
-
-		if (this.preferences == null)
-			return;
-
-		if (this.preferences.getInt(HTMLCorePreferenceNames.TAG_NAME_CASE) == HTMLCorePreferenceNames.LOWER) {
-			this.tagNameCase = DocumentTypeAdapter.LOWER_CASE;
-		}
-		if (this.preferences.getInt(HTMLCorePreferenceNames.ATTR_NAME_CASE) == HTMLCorePreferenceNames.UPPER) {
-			this.attrNameCase = DocumentTypeAdapter.UPPER_CASE;
-		}
-	}
-
-	/**
-	 */
-	public void release() {
-	    if(fAdapter != null && fNotifier != null) {
-	        fAdapter.release();
-	        fNotifier.removeAdapter(fAdapter);
-	    }	
-	}
-
-	/**
-	 * <ol>verriding copy method
-	 */
-	public INodeAdapterFactory copy() {
-		return new HTMLDocumentTypeAdapterFactory();
-	}
-} 
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/document/HTMLDocumentTypeConstants.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/document/HTMLDocumentTypeConstants.java
deleted file mode 100644
index abc3284..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/document/HTMLDocumentTypeConstants.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.html.core.internal.document;
-
-public interface HTMLDocumentTypeConstants {
-
-	public final static String HTML = "HTML"; //$NON-NLS-1$
-	public final static String FRAMESET = "FRAMESET"; //$NON-NLS-1$
-	public final static String SSI = "SSI"; //$NON-NLS-1$
-
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/document/HTMLDocumentTypeEntry.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/document/HTMLDocumentTypeEntry.java
deleted file mode 100644
index c8a51b3..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/document/HTMLDocumentTypeEntry.java
+++ /dev/null
@@ -1,126 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this 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.core.internal.document;
-
-
-
-/**
- */
-public class HTMLDocumentTypeEntry {
-
-	private String name;
-	private String publicId;
-	private String systemId;
-	private String namespaceURI;
-	private boolean isXMLType;
-	private boolean isXHTMLType;
-	private boolean isWMLType;
-	private boolean hasFrameset;
-	private String displayName;
-	private boolean isDefaultXHTML;
-	private boolean isDefaultWML;
-	private static String XHTML_NAME = "html"; //$NON-NLS-1$
-	private static String HTML_NAME = "HTML"; //$NON-NLS-1$
-
-	/**
-	 */
-	private HTMLDocumentTypeEntry() {
-		super();
-	}
-
-	/**
-	 */
-	public HTMLDocumentTypeEntry(String name, String publicId, String systemId, String namespaceURI, boolean isXHTMLType, boolean hasFrameset, String displayName, boolean isDefaultXHTML, boolean isDefaultWML, boolean isWMLType) {
-		super();
-
-		if (name != null && name.length() > 0) {
-			this.name = name;
-		}
-		else {
-			if (isXMLType)
-				this.name = XHTML_NAME;// need code for wml?
-			else
-				this.name = HTML_NAME;
-		}
-		this.publicId = publicId;
-		this.systemId = systemId;
-		this.namespaceURI = namespaceURI;
-		this.isXMLType = isXHTMLType | isWMLType;
-		this.hasFrameset = hasFrameset;
-		this.displayName = displayName;
-		this.isDefaultXHTML = isDefaultXHTML;
-		this.isDefaultWML = isDefaultWML;
-		this.isXHTMLType = isXHTMLType;
-		this.isWMLType = isWMLType;
-	}
-
-	/**
-	 */
-	public final String getName() {
-		return this.name;
-	}
-
-	/**
-	 */
-	public final String getNamespaceURI() {
-		return this.namespaceURI;
-	}
-
-	/**
-	 */
-	public final String getPublicId() {
-		return this.publicId;
-	}
-
-	/**
-	 */
-	public final String getSystemId() {
-		return this.systemId;
-	}
-
-	/**
-	 */
-	public final boolean isXMLType() {
-		return this.isXMLType;
-	}
-
-	/**
-	 */
-	public final boolean hasFrameset() {
-		return this.hasFrameset;
-	}
-
-	/**
-	 */
-	public final String getDisplayName() {
-		return this.displayName;
-	}
-
-	/**
-	 */
-	public final boolean isDefaultXHTML() {
-		return this.isDefaultXHTML;
-	}
-
-	public final boolean isDefaultWML() {
-		return this.isDefaultWML;
-	}
-
-
-	public final boolean isXHTMLType() {
-		return isXHTMLType;
-	}
-
-	public final boolean isWMLType() {
-		return isWMLType;
-	}
-
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/document/HTMLDocumentTypeRegistry.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/document/HTMLDocumentTypeRegistry.java
deleted file mode 100644
index 6f9cd0c..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/document/HTMLDocumentTypeRegistry.java
+++ /dev/null
@@ -1,139 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this 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.core.internal.document;
-
-
-
-import java.util.Enumeration;
-import java.util.Hashtable;
-
-/**
- */
-public class HTMLDocumentTypeRegistry {
-
-	private static HTMLDocumentTypeRegistry instance = null;
-	private Hashtable entries = null;
-	private HTMLDocumentTypeEntry defaultEntry = null;
-	private HTMLDocumentTypeEntry defaultXHTMLEntry = null;
-	private HTMLDocumentTypeEntry defaultWMLEntry = null;
-	private HTMLDocumentTypeEntry defaultCHTMLEntry = null;
-
-	final static int DEFAULT_HTML = 0;
-	final static int DEFAULT_XHTML = 1;
-	final static int DEFAULT_WML = 2;
-	final static int DEFAULT_CHTML = 3;
-
-	public static final String CHTML_PUBLIC_ID = "-//W3C//DTD Compact HTML 1.0 Draft//EN";//$NON-NLS-1$
-
-	/**
-	 */
-	private HTMLDocumentTypeRegistry() {
-		super();
-
-		this.entries = new Hashtable();
-		// HTML 4.01
-		String name = "HTML";//$NON-NLS-1$
-		String publicId = "-//W3C//DTD HTML 4.01 Transitional//EN";//$NON-NLS-1$
-		String displayName = "HTML 4.01 Transitional"; //$NON-NLS-1$
-		this.defaultEntry = new HTMLDocumentTypeEntry(name, publicId, null, null, false, false, displayName, false, false, false);
-		this.entries.put(publicId, this.defaultEntry);
-		publicId = "-//W3C//DTD HTML 4.01//EN";//$NON-NLS-1$
-		displayName = "HTML 4.01 Strict"; //$NON-NLS-1$
-		this.entries.put(publicId, new HTMLDocumentTypeEntry(name, publicId, null, null, false, false, displayName, false, false, false));
-		publicId = "-//W3C//DTD HTML 4.01 Frameset//EN";//$NON-NLS-1$
-		displayName = "HTML 4.01 Frameset"; //$NON-NLS-1$
-		this.entries.put(publicId, new HTMLDocumentTypeEntry(name, publicId, null, null, false, true, displayName, false, false, false));
-		// CHTML
-		name = "HTML";//$NON-NLS-1$
-		publicId = CHTML_PUBLIC_ID;
-		displayName = "Compact HTML 1.0 Draft"; //$NON-NLS-1$
-		this.defaultCHTMLEntry = new HTMLDocumentTypeEntry(name, publicId, null, null, false, false, displayName, false, false, false);
-		this.entries.put(publicId, this.defaultCHTMLEntry);
-
-		HTMLDocumentTypeRegistryReader reader = new HTMLDocumentTypeRegistryReader();
-		if (reader != null)
-			reader.readRegistry(this);
-	}
-
-	/**
-	 */
-	void regist(String pid, HTMLDocumentTypeEntry doctype) {
-		if (pid == null || doctype == null)
-			return;
-		this.entries.put(pid, doctype);
-		if (this.defaultXHTMLEntry == null) {
-			if (doctype.isDefaultXHTML())
-				this.defaultXHTMLEntry = doctype;
-		}
-		if (this.defaultWMLEntry == null) {
-			if (doctype.isDefaultWML())
-				this.defaultWMLEntry = doctype;
-		}
-	}
-
-	/**
-	 * 
-	 */
-	public HTMLDocumentTypeEntry getDefaultEntry(int type) {
-		HTMLDocumentTypeEntry entry = null;
-		switch (type) {
-			case DEFAULT_XHTML :
-				entry = this.defaultXHTMLEntry;
-				break;
-			case DEFAULT_WML :
-				entry = this.defaultWMLEntry;
-				break;
-			case DEFAULT_CHTML :
-				entry = this.defaultCHTMLEntry;
-				break;
-			case DEFAULT_HTML :
-			default :
-				entry = this.defaultEntry;
-				break;
-		}
-		return entry;
-	}
-
-	/**
-	 * 
-	 */
-	public HTMLDocumentTypeEntry getDefaultEntry() {
-		return this.defaultEntry;
-	}
-
-	/**
-	 */
-	public HTMLDocumentTypeEntry getXHTMLDefaultEntry() {
-		return this.defaultXHTMLEntry;
-	}
-
-	/**
-	 */
-	public Enumeration getEntries() {
-		return this.entries.elements();
-	}
-
-	/**
-	 */
-	public HTMLDocumentTypeEntry getEntry(String publicId) {
-		if (publicId == null)
-			return null;
-		return (HTMLDocumentTypeEntry) this.entries.get(publicId);
-	}
-
-	/**
-	 */
-	public synchronized static HTMLDocumentTypeRegistry getInstance() {
-		if (instance == null)
-			instance = new HTMLDocumentTypeRegistry();
-		return instance;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/document/HTMLDocumentTypeRegistryReader.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/document/HTMLDocumentTypeRegistryReader.java
deleted file mode 100644
index 2dbf6ed..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/document/HTMLDocumentTypeRegistryReader.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.wst.html.core.internal.document;
-
-import org.eclipse.core.runtime.IConfigurationElement;
-import org.eclipse.core.runtime.IExtensionPoint;
-import org.eclipse.core.runtime.IExtensionRegistry;
-import org.eclipse.core.runtime.Platform;
-
-/**
- */
-class HTMLDocumentTypeRegistryReader {
-
-	//
-	private final static String PLUGIN_ID = "org.eclipse.wst.sse.core"; //$NON-NLS-1$
-	private final static String EXTENSION_POINT_ID = "documentTypes"; //$NON-NLS-1$
-	private final static String TAG_NAME = "documentType"; //$NON-NLS-1$
-	private final static String ATT_PID = "publicID"; //$NON-NLS-1$
-	private final static String ATT_SID = "systemID"; //$NON-NLS-1$
-	private final static String ATT_IS_XHTML = "isXHTML"; //$NON-NLS-1$
-	private final static String ATT_IS_WML = "isWML"; //$NON-NLS-1$
-	private final static String ATT_HAS_FRAMESET = "hasFrameset"; //$NON-NLS-1$
-	private final static String ATT_NSURI = "namespaceURI"; //$NON-NLS-1$
-	private final static String ATT_ENAME = "elementName"; //$NON-NLS-1$
-	private final static String ATT_DNAME = "displayName"; //$NON-NLS-1$
-	private final static String ATT_IS_DEFAULT_XHTML = "defaultXHTML"; //$NON-NLS-1$
-	private final static String ATT_IS_DEFAULT_WML = "defaultWML"; //$NON-NLS-1$
-	private final static String ATV_TRUE = "true"; //$NON-NLS-1$
-	private final static String ATV_NULL_STRING = ""; //$NON-NLS-1$
-
-	/**
-	 */
-	HTMLDocumentTypeRegistryReader() {
-		super();
-	}
-
-	/**
-	 */
-	void readRegistry(HTMLDocumentTypeRegistry reg) {
-		if (reg == null)
-			return;
-		IExtensionRegistry registry = Platform.getExtensionRegistry();
-		IExtensionPoint point = registry.getExtensionPoint(PLUGIN_ID, EXTENSION_POINT_ID);
-		if (point != null) {
-			IConfigurationElement[] elements = point.getConfigurationElements();
-			for (int i = 0; i < elements.length; i++) {
-				HTMLDocumentTypeEntry doctype = readElement(elements[i]);
-				// null can be returned if there's an error reading the element
-				if (doctype != null) {
-					reg.regist(doctype.getPublicId(), doctype);
-				}
-			}
-		}
-	}
-
-	/**
-	 */
-	private HTMLDocumentTypeEntry readElement(IConfigurationElement element) {
-		HTMLDocumentTypeEntry doctype = null;
-		String pid = null;
-		String sid = null;
-		String nsuri = null;
-		String root = null;
-		boolean xhtml = true;
-		boolean frameset = false;
-		String dname = null;
-		boolean defaultXhtml = false;
-		boolean defaultWML = false;
-		boolean isWML = false;
-
-		if (element.getName().equals(TAG_NAME)) {
-			pid = element.getAttribute(ATT_PID);
-			// publicID attribute is mandatory.
-			if (pid == null || pid.equals(ATV_NULL_STRING))
-				return null;
-
-			sid = element.getAttribute(ATT_SID);
-			nsuri = element.getAttribute(ATT_NSURI);
-			root = element.getAttribute(ATT_ENAME);
-			xhtml = getBoolean(element, ATT_IS_XHTML);
-			frameset = getBoolean(element, ATT_HAS_FRAMESET);
-			dname = element.getAttribute(ATT_DNAME);
-			defaultXhtml = getBoolean(element, ATT_IS_DEFAULT_XHTML);
-			defaultWML = getBoolean(element, ATT_IS_DEFAULT_WML);
-			isWML = getBoolean(element, ATT_IS_WML);
-			doctype = new HTMLDocumentTypeEntry(root, pid, sid, nsuri, xhtml, frameset, dname, defaultXhtml, defaultWML, isWML);
-		}
-		return doctype;
-	}
-
-	/**
-	 */
-	private boolean getBoolean(IConfigurationElement element, String att) {
-		String value = element.getAttribute(att);
-		if (value != null && value.equals(ATV_TRUE))
-			return true;
-		return false;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/document/HTMLModelParserAdapter.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/document/HTMLModelParserAdapter.java
deleted file mode 100644
index 7b76801..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/document/HTMLModelParserAdapter.java
+++ /dev/null
@@ -1,354 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this 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.core.internal.document;
-
-
-
-import org.eclipse.wst.html.core.internal.contentmodel.HTMLElementDeclaration;
-import org.eclipse.wst.html.core.internal.provisional.HTML40Namespace;
-import org.eclipse.wst.html.core.internal.provisional.HTMLCMProperties;
-import org.eclipse.wst.sse.core.internal.provisional.INodeNotifier;
-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.CMNodeList;
-import org.eclipse.wst.xml.core.internal.document.CMNodeUtil;
-import org.eclipse.wst.xml.core.internal.document.ModelParserAdapter;
-import org.eclipse.wst.xml.core.internal.document.TagAdapter;
-import org.eclipse.wst.xml.core.internal.provisional.document.IDOMElement;
-import org.eclipse.wst.xml.core.internal.provisional.document.IDOMText;
-import org.w3c.dom.Document;
-import org.w3c.dom.Element;
-import org.w3c.dom.Node;
-
-/**
- * HTMLDocumentImpl class
- */
-public class HTMLModelParserAdapter implements ModelParserAdapter {
-	/**
-	 * note: I made public, temparily, so could be used by JSPLoader
-	 */
-	protected HTMLModelParserAdapter() {
-		super();
-	}
-
-	private boolean shouldTerminateAt(CMElementDeclaration parent, CMElementDeclaration child) {
-		if (!parent.supports(HTMLCMProperties.TERMINATORS))
-			return false;
-		java.util.Iterator i = (java.util.Iterator) parent.getProperty(HTMLCMProperties.TERMINATORS);
-		if (i == null)
-			return false;
-		String nextName = child.getElementName();
-		while (i.hasNext()) {
-			// NOTE: CMElementDeclaration of child is not always HTMLCMElementDeclaration.
-			// It might be one of based on DTD (for XHTML element).  So, comparison must
-			// be performed ignoring case.
-			// -- 3/20/2002
-			String terminator = (String) i.next();
-			if (terminator == null)
-				continue;
-			if (nextName.equalsIgnoreCase(terminator))
-				return true;
-		}
-		return false;
-	}
-
-	/**
-	 */
-	public boolean canContain(Element element, Node child) {
-		if (element == null || child == null)
-			return false;
-		IDOMElement impl = (IDOMElement) element;
-
-		if (child.getNodeType() == Node.ELEMENT_NODE) {
-			if (!impl.isGlobalTag())
-				return true; // non HTML tag
-			IDOMElement childElement = (IDOMElement) child;
-
-			CMElementDeclaration myDec = CMNodeUtil.getElementDeclaration(element);
-			if (myDec == null)
-				return true;
-			//if (!(myDec instanceof HTMLElementDeclaration)) return true;
-			if (myDec.getContentType() == CMElementDeclaration.EMPTY)
-				return false;
-
-			if (!childElement.isGlobalTag())
-				return true; // non HTML tag
-			CMElementDeclaration childDec = CMNodeUtil.getElementDeclaration(childElement);
-			if (childDec == null)
-				return true;
-			//if (!(childDec instanceof HTMLElementDeclaration)) return true;
-
-			if (myDec instanceof HTMLElementDeclaration) {
-				if (((Boolean) ((HTMLElementDeclaration) myDec).getProperty(HTMLCMProperties.IS_JSP)).booleanValue())
-					return true;
-			}
-			if (shouldTerminateAt(myDec, childDec) && !isValidChild(myDec, childDec)) {
-				return false;
-			}
-
-			String tagName = impl.getTagName();
-			if (tagName == null)
-				return true;
-			String childName = childElement.getTagName();
-			if (childName == null)
-				return true;
-			if (!impl.hasStartTag() && !impl.hasEndTag()) {
-				// implicit element
-				if (tagName.equalsIgnoreCase(childElement.getTagName()))
-					return false;
-				if (tagName.equalsIgnoreCase(HTML40Namespace.ElementName.HEAD)) {
-					if (!childName.equalsIgnoreCase(HTML40Namespace.ElementName.META) && !childName.equalsIgnoreCase(HTML40Namespace.ElementName.TITLE) && !childName.equalsIgnoreCase(HTML40Namespace.ElementName.LINK) && !childName.equalsIgnoreCase(HTML40Namespace.ElementName.STYLE) && !childName.equalsIgnoreCase(HTML40Namespace.ElementName.BASE) && !childName.equalsIgnoreCase(HTML40Namespace.ElementName.ISINDEX)) {
-						return false;
-					}
-				}
-
-				Node parent = element.getParentNode();
-				if (parent != null && parent.getNodeType() == Node.ELEMENT_NODE) {
-					IDOMElement parentElement = (IDOMElement) parent;
-					if (!parentElement.hasStartTag() && !parentElement.hasEndTag()) {
-						if (!canContain(parentElement, child))
-							return false;
-					}
-				}
-				return true;
-			}
-
-			// contexual termination for TABLE content tags
-			boolean isTableContent = false;
-			if (childName.equalsIgnoreCase(HTML40Namespace.ElementName.TBODY) || childName.equalsIgnoreCase(HTML40Namespace.ElementName.THEAD) || childName.equalsIgnoreCase(HTML40Namespace.ElementName.TFOOT)) {
-				if (tagName.equalsIgnoreCase(HTML40Namespace.ElementName.TABLE))
-					return true;
-				isTableContent = true;
-			}
-			else if (childName.equalsIgnoreCase(HTML40Namespace.ElementName.TR)) {
-				if (tagName.equalsIgnoreCase(HTML40Namespace.ElementName.TBODY) || tagName.equalsIgnoreCase(HTML40Namespace.ElementName.THEAD) || tagName.equalsIgnoreCase(HTML40Namespace.ElementName.TFOOT) || tagName.equalsIgnoreCase(HTML40Namespace.ElementName.TABLE))
-					return true;
-				isTableContent = true;
-			}
-			else if (childName.equalsIgnoreCase(HTML40Namespace.ElementName.TD) || childName.equalsIgnoreCase(HTML40Namespace.ElementName.TH)) {
-				if (tagName.equalsIgnoreCase(HTML40Namespace.ElementName.TR) || tagName.equalsIgnoreCase(HTML40Namespace.ElementName.TBODY) || tagName.equalsIgnoreCase(HTML40Namespace.ElementName.THEAD) || tagName.equalsIgnoreCase(HTML40Namespace.ElementName.TFOOT) || tagName.equalsIgnoreCase(HTML40Namespace.ElementName.TABLE))
-					return true;
-				isTableContent = true;
-			}
-			if (isTableContent) {
-				// TABLE content tags should terminate non TABLE content tags,
-				// if in TABLE
-				for (Node parent = element.getParentNode(); parent != null; parent = parent.getParentNode()) {
-					if (parent.getNodeType() != Node.ELEMENT_NODE)
-						break;
-					IDOMElement parentElement = (IDOMElement) parent;
-					String parentName = parentElement.getTagName();
-					if (parentName == null)
-						continue;
-					if (parentName.equalsIgnoreCase(HTML40Namespace.ElementName.TABLE))
-						return false;
-				}
-			}
-			if (tagName.equalsIgnoreCase(HTML40Namespace.ElementName.EMBED)) {
-				if (!childName.equalsIgnoreCase(HTML40Namespace.ElementName.NOEMBED))
-					return false;
-			}
-		}
-		else if (child.getNodeType() == Node.TEXT_NODE) {
-			String tagName = impl.getTagName();
-			if (tagName != null && tagName.equalsIgnoreCase(HTML40Namespace.ElementName.EMBED)) {
-				IDOMText text = (IDOMText) child;
-				if (!text.isElementContentWhitespace())
-					return false;
-			}
-		}
-		else if (child.getNodeType() == Node.DOCUMENT_TYPE_NODE) {
-			if (impl.isImplicitTag())
-				return false;
-		}
-
-		return true;
-	}
-
-	/**
-	 */
-	public boolean canBeImplicitTag(Element element) {
-		return false;
-	}
-
-	/**
-	 */
-	public boolean canBeImplicitTag(Element element, Node child) {
-		return false;
-	}
-
-	/**
-	 */
-	public Element createCommentElement(Document document, String data, boolean isJSPTag) {
-		if (document == null || data == null || data.length() == 0)
-			return null;
-
-		return createMetaElement(document, data, isJSPTag);
-	}
-
-	/**
-	 * This routine create an implicit Element for given parent and child,
-	 * such as HTML, BODY, HEAD, and TBODY for HTML document.
-	 */
-	public Element createImplicitElement(Document document, Node parent, Node child) {
-		return null;
-	}
-
-	/**
-	 */
-	private Element createMetaElement(Document document, String data, boolean isJSPTag) {
-		if (data == null || data.length() == 0)
-			return null;
-
-		TagScanner scanner = new TagScanner(data, 0, true); // one line
-		String name = scanner.nextName();
-		if (name == null || !name.equalsIgnoreCase(MetaData.METADATA))
-			return null;
-
-		String type = null;
-		boolean isStartSpan = false;
-		boolean isEndSpan = false;
-		name = scanner.nextName();
-		while (name != null) {
-			String value = scanner.nextValue();
-			if (name.equalsIgnoreCase(MetaData.TYPE)) {
-				if (value == null)
-					return null;
-				if (value.equalsIgnoreCase(MetaData.DESIGNER_CONTROL)) {
-					type = MetaData.DESIGNER_CONTROL;
-				}
-				else if (value.equalsIgnoreCase(MetaData.DYNAMIC_DATA)) {
-					type = MetaData.DYNAMIC_DATA;
-				}
-				else if (value.equalsIgnoreCase(MetaData.AUTHOR_TIME_VISUAL)) {
-					type = MetaData.AUTHOR_TIME_VISUAL;
-				}
-				else if (value.equalsIgnoreCase(MetaData.ANNOTATION)) {
-					type = MetaData.ANNOTATION;
-				}
-				else {
-					return null;
-				}
-			}
-			else if (name.equalsIgnoreCase(MetaData.STARTSPAN)) {
-				isStartSpan = true;
-			}
-			else if (name.equalsIgnoreCase(MetaData.ENDSPAN)) {
-				if (!isStartSpan)
-					isEndSpan = true;
-			}
-			name = scanner.nextName();
-		}
-		if (type == null)
-			return null;
-		if (!isStartSpan && !isEndSpan)
-			return null;
-		String metaData = null;
-		int offset = scanner.getNextOffset(); // skip new line
-		if (offset < data.length())
-			metaData = data.substring(offset);
-		if (metaData == null)
-			metaData = new String();
-
-		IDOMElement element = (IDOMElement) document.createElement(MetaData.PREFIX + type);
-
-		MetaDataAdapter adapter = new MetaDataAdapter(type);
-		if (isStartSpan) {
-			if (metaData != null)
-				adapter.setData(metaData);
-		}
-		else {
-			if (metaData != null)
-				adapter.setEndData(metaData);
-		}
-		element.addAdapter(adapter);
-		adapter.setElement(element);
-		element.setJSPTag(isJSPTag);
-
-		return element;
-	}
-
-	/**
-	 */
-	public String getFindRootName(String tagName) {
-		if (tagName == null)
-			return null;
-		// tag matching should not beyond TABLE tag except BODY tag
-		if (tagName.equalsIgnoreCase(HTML40Namespace.ElementName.BODY))
-			return null;
-		return HTML40Namespace.ElementName.TABLE;
-	}
-
-	/**
-	 */
-	public boolean isAdapterForType(Object type) {
-		return (type == ModelParserAdapter.class);
-	}
-
-	/**
-	 */
-	public boolean isEndTag(IDOMElement element) {
-		TagAdapter adapter = (TagAdapter) element.getExistingAdapter(TagAdapter.class);
-		if (adapter != null)
-			return adapter.isEndTag();
-		return element.isEndTag();
-	}
-
-	/**
-	 */
-	public void notifyChanged(INodeNotifier notifier, int eventType, Object changedFeature, Object oldValue, Object newValue, int pos) {
-	}
-
-	private static boolean isValidChild(CMElementDeclaration parent, CMElementDeclaration child) {
-		if (parent == null || child == null)
-			return false;
-		CMContent content = parent.getContent();
-		if (content == null)
-			return false;
-		return isChild(content, child);
-	}
-
-	/**
-	 */
-	private static boolean isChild(CMContent content, CMElementDeclaration target) {
-		switch (content.getNodeType()) {
-			case CMNode.ELEMENT_DECLARATION :
-				return isSameDeclaration((CMElementDeclaration) content, target);
-			case CMNode.GROUP :
-				CMNodeList children = ((CMGroup) content).getChildNodes();
-				for (int i = 0; i < children.getLength(); i++) {
-					CMNode child = children.item(i);
-					switch (child.getNodeType()) {
-						case CMNode.ELEMENT_DECLARATION :
-							if (isSameDeclaration((CMElementDeclaration) child, target))
-								return true;
-							continue; // Go next child.
-						case CMNode.GROUP :
-							if (isChild((CMContent) child, target))
-								return true;
-							continue; // Go next child.
-						default :
-							continue; // Go next child.
-					}
-				}
-		}
-		return false;
-	}
-
-	/**
-	 */
-	private static boolean isSameDeclaration(CMElementDeclaration aDec, CMElementDeclaration otherDec) {
-		return aDec.getElementName() == otherDec.getElementName();
-	}
-
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/document/HTMLModelParserAdapterFactory.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/document/HTMLModelParserAdapterFactory.java
deleted file mode 100644
index c2dd4d0..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/document/HTMLModelParserAdapterFactory.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.html.core.internal.document;
-
-
-
-import org.eclipse.wst.sse.core.internal.provisional.INodeAdapter;
-import org.eclipse.wst.sse.core.internal.provisional.INodeAdapterFactory;
-import org.eclipse.wst.sse.core.internal.provisional.INodeNotifier;
-import org.eclipse.wst.xml.core.internal.document.ModelParserAdapter;
-
-/**
- */
-public class HTMLModelParserAdapterFactory implements INodeAdapterFactory {
-
-	private static HTMLModelParserAdapterFactory instance = null;
-
-	/**
-	 */
-	private HTMLModelParserAdapterFactory() {
-		super();
-	}
-
-	/**
-	 * Method that returns the adapter associated with the given object.
-	 * It may be a singleton or not ... depending on the needs of the INodeAdapter  ...
-	 * but in general it is recommended for an adapter to be stateless, 
-	 * so the efficiencies of a singleton can be gained.
-	 *
-	 * The implementation of this method should call addAdapter on the adapted
-	 * object with the correct instance of the adapter.
-	 */
-	public INodeAdapter adapt(INodeNotifier notifier) {
-		return new HTMLModelParserAdapter();
-	}
-
-	/**
-	 */
-	public synchronized static HTMLModelParserAdapterFactory getInstance() {
-		if (instance == null)
-			instance = new HTMLModelParserAdapterFactory();
-		return instance;
-	}
-
-	/**
-	 */
-	public boolean isFactoryForType(Object type) {
-		return (type == ModelParserAdapter.class);
-	}
-
-	/**
-	 */
-	public void release() {
-	}
-
-	/**
-	 * Overriding copy method
-	 */
-	public INodeAdapterFactory copy() {
-		return getInstance();
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/document/MetaData.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/document/MetaData.java
deleted file mode 100644
index 132e18b..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/document/MetaData.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.core.internal.document;
-
-
-
-/**
- */
-public interface MetaData {
-
-	static final String METADATA = "METADATA";//$NON-NLS-1$
-	static final String TYPE = "type";//$NON-NLS-1$
-	static final String STARTSPAN = "startspan";//$NON-NLS-1$
-	static final String ENDSPAN = "endspan";//$NON-NLS-1$
-	static final String DESIGNER_CONTROL = "DesignerControl";//$NON-NLS-1$
-	static final String DYNAMIC_DATA = "DynamicData";//$NON-NLS-1$
-	static final String AUTHOR_TIME_VISUAL = "AuthorTimeVisual";//$NON-NLS-1$
-	static final String ANNOTATION = "Annotation";//$NON-NLS-1$
-	static final String PREFIX = "METADATA:";//$NON-NLS-1$
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/document/MetaDataAdapter.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/document/MetaDataAdapter.java
deleted file mode 100644
index 4fc4ca9..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/document/MetaDataAdapter.java
+++ /dev/null
@@ -1,301 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this 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.core.internal.document;
-
-
-
-import java.util.Iterator;
-
-import org.eclipse.wst.sse.core.internal.provisional.INodeNotifier;
-import org.eclipse.wst.sse.core.internal.provisional.text.IStructuredDocument;
-import org.eclipse.wst.sse.core.internal.provisional.text.IStructuredDocumentRegion;
-import org.eclipse.wst.sse.core.internal.provisional.text.ITextRegion;
-import org.eclipse.wst.sse.core.internal.provisional.text.ITextRegionList;
-import org.eclipse.wst.xml.core.internal.document.TagAdapter;
-import org.eclipse.wst.xml.core.internal.provisional.document.IDOMElement;
-import org.eclipse.wst.xml.core.internal.provisional.document.IDOMModel;
-import org.eclipse.wst.xml.core.internal.regions.DOMRegionContext;
-
-/**
- */
-public class MetaDataAdapter implements TagAdapter, MetaData {
-
-	private IDOMElement element = null;
-	private String type = null;
-	private String data = null;
-	private String endData = null;
-
-	/**
-	 */
-	public MetaDataAdapter(String type) {
-		super();
-
-		if (type != null) {
-			if (type.equals(ANNOTATION)) {
-				this.type = ANNOTATION;
-			}
-			else if (type.equals(AUTHOR_TIME_VISUAL)) {
-				this.type = AUTHOR_TIME_VISUAL;
-			}
-			else {
-				this.type = type;
-			}
-		}
-	}
-
-	/**
-	 */
-	private String getData(IStructuredDocumentRegion flatNode) {
-		if (flatNode == null)
-			return null;
-		ITextRegionList regions = flatNode.getRegions();
-		if (regions == null)
-			return null;
-
-		String data = null;
-		Iterator e = regions.iterator();
-		while (e.hasNext()) {
-			ITextRegion region = (ITextRegion) e.next();
-			String regionType = region.getType();
-			if (isCommentText(regionType)) {
-				data = flatNode.getText(region);
-				break;
-			}
-		}
-		if (data == null)
-			return null;
-		int length = data.length();
-		int offset = 0;
-		for (; offset < length; offset++) {
-			char c = data.charAt(offset);
-			if (c == '\r' || c == '\n') {
-				offset++;
-				break;
-			}
-		}
-		for (; offset < length; offset++) {
-			char c = data.charAt(offset);
-			if (c != '\r' && c != '\n') {
-				break;
-			}
-		}
-		return data.substring(offset);
-	}
-
-	private boolean isCommentText(String regionType) {
-		boolean result = false;
-		result = isDOMComment(regionType) || isNestedContentComment(regionType);
-		return result;
-	}
-
-	/**
-	 * 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 isNestedContentComment(String regionType) {
-		final String JSP_COMMENT_TEXT = "JSP_COMMENT_TEXT"; //$NON-NLS-1$
-		return regionType.equals(JSP_COMMENT_TEXT);
-	}
-
-	private boolean isDOMComment(String regionType) {
-		return regionType == DOMRegionContext.XML_COMMENT_TEXT;
-	}
-
-	public String getData() {
-		if (this.element == null)
-			return null;
-		IStructuredDocumentRegion flatNode = this.element.getStartStructuredDocumentRegion();
-		if (flatNode == null)
-			return null;
-		if (this.data != null)
-			return this.data;
-		return getData(flatNode);
-	}
-
-	/**
-	 */
-	private String getDelimiter(IDOMModel model) {
-		String delim = null;
-		if (model != null) {
-			IStructuredDocument structuredDocument = model.getStructuredDocument();
-			if (structuredDocument != null)
-				delim = structuredDocument.getLineDelimiter();
-		}
-		if (delim == null)
-			delim = "\r\n";//$NON-NLS-1$
-		return delim;
-	}
-
-	/**
-	 */
-	public String getEndData() {
-		if (this.element == null)
-			return null;
-		IStructuredDocumentRegion flatNode = this.element.getEndStructuredDocumentRegion();
-		if (flatNode == null)
-			return null;
-		if (this.endData != null)
-			return this.endData;
-		return getData(flatNode);
-	}
-
-	/**
-	 */
-	public String getEndTag(IDOMElement element) {
-		StringBuffer buffer = new StringBuffer();
-		if (element.isJSPTag())
-			buffer.append("<%--");//$NON-NLS-1$
-		else
-			buffer.append("<!--");//$NON-NLS-1$
-		buffer.append(METADATA);
-		buffer.append(' ');
-		buffer.append(TYPE);
-		buffer.append("=\"");//$NON-NLS-1$
-		buffer.append(this.type);
-		buffer.append("\" ");//$NON-NLS-1$
-		buffer.append(MetaData.ENDSPAN);
-		String data = getEndData();
-		if (data != null && data.length() > 0) {
-			String delim = getDelimiter(element.getModel());
-			buffer.append(delim);
-			buffer.append(data);
-			buffer.append(delim);
-		}
-		if (element.isJSPTag())
-			buffer.append("--%>");//$NON-NLS-1$
-		else
-			buffer.append("-->");//$NON-NLS-1$
-
-		return buffer.toString();
-	}
-
-	/**
-	 */
-	public String getStartTag(IDOMElement element) {
-		StringBuffer buffer = new StringBuffer();
-		if (element.isJSPTag())
-			buffer.append("<%--");//$NON-NLS-1$
-		else
-			buffer.append("<!--");//$NON-NLS-1$
-		buffer.append(METADATA);
-		buffer.append(' ');
-		buffer.append(TYPE);
-		buffer.append("=\"");//$NON-NLS-1$
-		buffer.append(this.type);
-		buffer.append("\" ");//$NON-NLS-1$
-		buffer.append(MetaData.STARTSPAN);
-		String data = getData();
-		if (data != null && data.length() > 0) {
-			String delim = getDelimiter(element.getModel());
-			buffer.append(delim);
-			buffer.append(data);
-			buffer.append(delim);
-		}
-		if (element.isJSPTag())
-			buffer.append("--%>");//$NON-NLS-1$
-		else
-			buffer.append("-->");//$NON-NLS-1$
-
-		return buffer.toString();
-	}
-
-	/**
-	 */
-	public String getType() {
-		return this.type;
-	}
-
-	/**
-	 */
-	public boolean isAdapterForType(Object type) {
-		return (type == TagAdapter.class || type == MetaDataAdapter.class);
-	}
-
-	/**
-	 */
-	public boolean isEndTag() {
-		if (this.element == null)
-			return false;
-		if (this.element.hasStartTag())
-			return false;
-		if (this.element.hasEndTag())
-			return true;
-		if (this.data != null)
-			return false;
-		return (this.endData != null);
-	}
-
-	/**
-	 */
-	public boolean isRuntimeContainer() {
-		return (this.type == ANNOTATION || this.type == AUTHOR_TIME_VISUAL);
-	}
-
-	/**
-	 */
-	public void notifyChanged(INodeNotifier notifier, int eventType, Object changedFeature, Object oldValue, Object newValue, int pos) {
-	}
-
-	/**
-	 */
-	public void setData(String data) {
-		this.data = data;
-
-		if (this.element != null)
-			this.element.notifyStartTagChanged();
-	}
-
-	/**
-	 */
-	public void setEndData(String data) {
-		this.endData = data;
-
-		if (this.element != null)
-			this.element.notifyEndTagChanged();
-	}
-
-	/**
-	 */
-	public void setElement(IDOMElement element) {
-		this.element = element;
-
-		if (this.element != null) {
-			this.element.setCommentTag(true);
-			if (this.type != MetaData.ANNOTATION) {
-				this.element.setJSPTag(true);
-			}
-		}
-	}
-
-	/**
-	 */
-	public void setRuntimeSource(String source) {
-		if (source == null)
-			return;
-		if (this.element == null)
-			return;
-		if (isRuntimeContainer())
-			return;
-
-		IDOMModel model = this.element.getModel();
-		if (model == null)
-			return;
-		IStructuredDocument structuredDocument = model.getStructuredDocument();
-		if (structuredDocument == null)
-			return;
-		int offset = this.element.getStartEndOffset();
-		int end = this.element.getEndStartOffset();
-		int length = end - offset;
-		structuredDocument.replaceText(model, offset, length, source);
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/document/TagScanner.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/document/TagScanner.java
deleted file mode 100644
index 17e0bb1..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/document/TagScanner.java
+++ /dev/null
@@ -1,166 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this 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.core.internal.document;
-
-
-
-/**
- */
-class TagScanner {
-
-	private String tag = null;
-	private int offset = 0;
-	private int length = 0;
-	private boolean oneLine = false;
-
-	/**
-	 */
-	TagScanner(String tag, int offset) {
-		super();
-
-		this.tag = tag;
-		this.offset = offset;
-		if (tag != null)
-			this.length = tag.length();
-	}
-
-	/**
-	 */
-	TagScanner(String tag, int offset, boolean oneLine) {
-		this(tag, offset);
-
-		this.oneLine = oneLine;
-	}
-
-	/**
-	 */
-	int getNextOffset() {
-		for (; this.offset < this.length; this.offset++) {
-			char c = this.tag.charAt(this.offset);
-			if (!isEnd(c))
-				break;
-		}
-		return this.offset;
-	}
-
-	/**
-	 */
-	int getOffset() {
-		return this.offset;
-	}
-
-	/**
-	 */
-	private final boolean isEnd(char c) {
-		return (this.oneLine && (c == '\r' || c == '\n'));
-	}
-
-	/**
-	 */
-	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 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;
-	}
-
-	/**
-	 */
-	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;
-
-		return this.tag.substring(nameOffset, this.offset);
-	}
-
-	/**
-	 */
-	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;
-
-		return this.tag.substring(valueOffset, valueEnd);
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/document/UnknownTagAdapter.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/document/UnknownTagAdapter.java
deleted file mode 100644
index c6fcf4a..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/document/UnknownTagAdapter.java
+++ /dev/null
@@ -1,82 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this 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.core.internal.document;
-
-
-
-import org.eclipse.wst.sse.core.internal.provisional.INodeNotifier;
-import org.eclipse.wst.xml.core.internal.document.TagAdapter;
-import org.eclipse.wst.xml.core.internal.provisional.document.IDOMElement;
-
-/**
- */
-public class UnknownTagAdapter implements TagAdapter {
-
-	private String startTag = null;
-	private String endTag = null;
-
-	/**
-	 */
-	public UnknownTagAdapter() {
-		super();
-	}
-
-	/**
-	 */
-	public String getEndTag(IDOMElement element) {
-		String tag = null;
-		if (this.endTag != null) {
-			tag = this.endTag;
-			this.endTag = null;
-		}
-		return tag;
-	}
-
-	/**
-	 */
-	public String getStartTag(IDOMElement element) {
-		String tag = null;
-		if (this.startTag != null) {
-			tag = this.startTag;
-			this.startTag = null;
-		}
-		return tag;
-	}
-
-	/**
-	 */
-	public boolean isAdapterForType(Object type) {
-		return (type == TagAdapter.class);
-	}
-
-	/**
-	 */
-	public boolean isEndTag() {
-		return false;
-	}
-
-	/**
-	 */
-	public void notifyChanged(INodeNotifier notifier, int eventType, Object changedFeature, Object oldValue, Object newValue, int pos) {
-	}
-
-	/**
-	 */
-	public void setEndTag(String endTag) {
-		this.endTag = endTag;
-	}
-
-	/**
-	 */
-	public void setStartTag(String startTag) {
-		this.startTag = startTag;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/encoding/HTMLDocumentCharsetDetector.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/encoding/HTMLDocumentCharsetDetector.java
deleted file mode 100644
index a0242c9..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/encoding/HTMLDocumentCharsetDetector.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.core.internal.encoding;
-
-import org.eclipse.jface.text.IDocument;
-import org.eclipse.wst.html.core.internal.contenttype.HTMLResourceEncodingDetector;
-import org.eclipse.wst.sse.core.internal.document.DocumentReader;
-import org.eclipse.wst.sse.core.internal.document.IDocumentCharsetDetector;
-
-/**
- * This class parses beginning portion of HTML file to get the encoding value
- * in a META tag. Example:
- * <META http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
- * 
- * Note: even though, technically, a META tag must come in a <HEAD>tag, we
- * don't check for that, under the assumption that whatever, or whereever, the
- * the first <META>tag is, it is the one intended to be used by the user, and
- * they may just be trying to repair the error. The HTML validator will tell
- * them if its in the wrong location.
- *  
- */
-public class HTMLDocumentCharsetDetector extends HTMLResourceEncodingDetector implements IDocumentCharsetDetector {
-
-
-	public HTMLDocumentCharsetDetector() {
-		super();
-	}
-
-	public void set(IDocument document) {
-		set(new DocumentReader(document, 0));
-
-
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/encoding/HTMLDocumentLoader.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/encoding/HTMLDocumentLoader.java
deleted file mode 100644
index 43a50a9..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/encoding/HTMLDocumentLoader.java
+++ /dev/null
@@ -1,161 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this 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.core.internal.encoding;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import org.eclipse.jface.text.IDocumentPartitioner;
-import org.eclipse.wst.html.core.internal.contenttype.EncodingGuesser;
-import org.eclipse.wst.html.core.internal.document.HTMLDocumentTypeAdapterFactory;
-import org.eclipse.wst.html.core.internal.document.HTMLModelParserAdapterFactory;
-import org.eclipse.wst.html.core.internal.htmlcss.HTMLStyleSelectorAdapterFactory;
-import org.eclipse.wst.html.core.internal.htmlcss.StyleAdapterFactory;
-import org.eclipse.wst.html.core.internal.modelquery.ModelQueryAdapterFactoryForHTML;
-import org.eclipse.wst.html.core.internal.provisional.contenttype.ContentTypeIdForHTML;
-import org.eclipse.wst.html.core.internal.text.StructuredTextPartitionerForHTML;
-import org.eclipse.wst.sse.core.internal.PropagatingAdapter;
-import org.eclipse.wst.sse.core.internal.document.AbstractDocumentLoader;
-import org.eclipse.wst.sse.core.internal.document.IDocumentCharsetDetector;
-import org.eclipse.wst.sse.core.internal.document.IDocumentLoader;
-import org.eclipse.wst.sse.core.internal.document.StructuredDocumentFactory;
-import org.eclipse.wst.sse.core.internal.encoding.ContentTypeEncodingPreferences;
-import org.eclipse.wst.sse.core.internal.ltk.parser.BlockMarker;
-import org.eclipse.wst.sse.core.internal.ltk.parser.RegionParser;
-import org.eclipse.wst.sse.core.internal.provisional.INodeAdapterFactory;
-import org.eclipse.wst.sse.core.internal.provisional.INodeNotifier;
-import org.eclipse.wst.sse.core.internal.provisional.IStructuredModel;
-import org.eclipse.wst.sse.core.internal.provisional.document.IEncodedDocument;
-import org.eclipse.wst.sse.core.internal.provisional.text.IStructuredDocument;
-import org.eclipse.wst.sse.core.internal.text.BasicStructuredDocument;
-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.propagate.PropagatingAdapterFactoryImpl;
-import org.eclipse.wst.xml.core.internal.provisional.document.IDOMModel;
-import org.eclipse.wst.xml.core.internal.regions.DOMRegionContext;
-
-public class HTMLDocumentLoader extends AbstractDocumentLoader {
-
-	public HTMLDocumentLoader() {
-		super();
-	}
-
-	/**
-	 * Convenience method to add tag names using BlockMarker object
-	 */
-	protected void addHTMLishTag(XMLSourceParser parser, String tagname) {
-		BlockMarker bm = new BlockMarker(tagname, null, DOMRegionContext.BLOCK_TEXT, false);
-		parser.addBlockMarker(bm);
-	}
-
-	/**
-	 * Default encoding. For HTML, there is no spec.
-	 */
-	protected String getSpecDefaultEncoding() {
-		return null;
-	}
-
-	/**
-	 * @return java.lang.String
-	 * @param string
-	 *            byte[]
-	 * @param length
-	 *            int
-	 * 
-	 * Do automatic encoding detection by guess
-	 */
-	protected String getEncodingNameByGuess(byte[] string, int length) {
-		final String ianaEnc = EncodingGuesser.guessEncoding(string, length);
-		return ianaEnc;
-	}
-
-	/*
-	 * @see AbstractLoader#createNewStructuredDocument()
-	 */
-	protected IEncodedDocument newEncodedDocument() {
-		IStructuredDocument structuredDocument = StructuredDocumentFactory.getNewStructuredDocumentInstance(getParser());
-		((BasicStructuredDocument) structuredDocument).setReParser(new XMLStructuredDocumentReParser());
-
-		return structuredDocument;
-	}
-
-	/*
-	 * @see IModelLoader#getParser()
-	 */
-	public RegionParser getParser() {
-		XMLSourceParser parser = new XMLSourceParser();
-		// for the "static HTML" case, we need to initialize
-		// Blocktags here.
-		addHTMLishTag(parser, "script"); //$NON-NLS-1$
-		addHTMLishTag(parser, "style"); //$NON-NLS-1$
-		return parser;
-	}
-
-	/**
-	 * This method must return those factories which must be attached to the
-	 * structuredModel before content is applied.
-	 */
-	public List getAdapterFactories() {
-		List result = new ArrayList();
-		INodeAdapterFactory factory = null;
-		factory = StyleAdapterFactory.getInstance();
-		result.add(factory);
-		factory = HTMLStyleSelectorAdapterFactory.getInstance();
-		result.add(factory);
-		factory = new HTMLDocumentTypeAdapterFactory();
-		result.add(factory);
-		factory = HTMLModelParserAdapterFactory.getInstance();
-		result.add(factory);
-		//
-		factory = new ModelQueryAdapterFactoryForHTML();
-		result.add(factory);
-
-		factory = new PropagatingAdapterFactoryImpl();
-		result.add(factory);
-
-
-		return result;
-	}
-
-	protected String getPreferredNewLineDelimiter() {
-		return ContentTypeEncodingPreferences.getPreferredNewLineDelimiter(ContentTypeIdForHTML.ContentTypeID_HTML);
-	}
-
-	public IDocumentCharsetDetector getDocumentEncodingDetector() {
-		if (fDocumentEncodingDetector == null) {
-			fDocumentEncodingDetector = new HTMLDocumentCharsetDetector();
-		}
-		return fDocumentEncodingDetector;
-	}
-
-	protected void preLoadAdapt(IStructuredModel structuredModel) {
-		// DMW: just added this preload on 8/16/2002
-		// I noticed the ProagatingAdapterFactory was being added,
-		// that that the ProagatingAdapterAdapter was not being
-		// preload adapted -- I'm assuing it ALWAYS has to be.
-		IDOMModel domModel = (IDOMModel) 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);
-	}
-
-	public IDocumentPartitioner getDefaultDocumentPartitioner() {
-		return new StructuredTextPartitionerForHTML();
-	}
-
-	public IDocumentLoader newInstance() {
-		return new HTMLDocumentLoader();
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/encoding/HTMLModelLoader.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/encoding/HTMLModelLoader.java
deleted file mode 100644
index 0f84fc8..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/encoding/HTMLModelLoader.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.html.core.internal.encoding;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import org.eclipse.wst.html.core.internal.document.DOMStyleModelImpl;
-import org.eclipse.wst.html.core.internal.document.HTMLDocumentTypeAdapterFactory;
-import org.eclipse.wst.html.core.internal.document.HTMLModelParserAdapterFactory;
-import org.eclipse.wst.html.core.internal.htmlcss.HTMLStyleSelectorAdapterFactory;
-import org.eclipse.wst.html.core.internal.htmlcss.StyleAdapterFactory;
-import org.eclipse.wst.html.core.internal.modelquery.ModelQueryAdapterFactoryForHTML;
-import org.eclipse.wst.sse.core.internal.PropagatingAdapter;
-import org.eclipse.wst.sse.core.internal.document.IDocumentLoader;
-import org.eclipse.wst.sse.core.internal.ltk.parser.BlockMarker;
-import org.eclipse.wst.sse.core.internal.model.AbstractModelLoader;
-import org.eclipse.wst.sse.core.internal.provisional.IModelLoader;
-import org.eclipse.wst.sse.core.internal.provisional.INodeAdapterFactory;
-import org.eclipse.wst.sse.core.internal.provisional.INodeNotifier;
-import org.eclipse.wst.sse.core.internal.provisional.IStructuredModel;
-import org.eclipse.wst.sse.core.internal.util.Debug;
-import org.eclipse.wst.xml.core.internal.DebugAdapterFactory;
-import org.eclipse.wst.xml.core.internal.parser.XMLSourceParser;
-import org.eclipse.wst.xml.core.internal.propagate.PropagatingAdapterFactoryImpl;
-import org.eclipse.wst.xml.core.internal.provisional.document.IDOMModel;
-import org.eclipse.wst.xml.core.internal.regions.DOMRegionContext;
-
-public class HTMLModelLoader extends AbstractModelLoader {
-
-
-	public HTMLModelLoader() {
-		super();
-	}
-
-	/**
-	 * Convenience method to add tag names using BlockMarker object
-	 */
-	protected void addHTMLishTag(XMLSourceParser parser, String tagname) {
-		BlockMarker bm = new BlockMarker(tagname, null, DOMRegionContext.BLOCK_TEXT, false);
-		parser.addBlockMarker(bm);
-	}
-
-	public IStructuredModel newModel() {
-		DOMStyleModelImpl model = new DOMStyleModelImpl();
-		return model;
-	}
-
-	/**
-	 * This method must return those factories which must be attached to the
-	 * structuredModel before content is applied.
-	 */
-	public List getAdapterFactories() {
-		List result = new ArrayList();
-		INodeAdapterFactory factory = null;
-		factory = StyleAdapterFactory.getInstance();
-		result.add(factory);
-		factory = HTMLStyleSelectorAdapterFactory.getInstance();
-		result.add(factory);
-		factory = new HTMLDocumentTypeAdapterFactory();
-		result.add(factory);
-		factory = HTMLModelParserAdapterFactory.getInstance();
-		result.add(factory);
-		//
-		factory = new ModelQueryAdapterFactoryForHTML();
-		result.add(factory);
-
-		factory = new PropagatingAdapterFactoryImpl();
-		result.add(factory);
-		
-
-		return result;
-	}
-
-	protected void preLoadAdapt(IStructuredModel structuredModel) {
-		super.preLoadAdapt(structuredModel);
-		// DMW: just added this preload on 8/16/2002
-		// I noticed the ProagatingAdapterFactory was being added,
-		// that that the ProagatingAdapterAdapter was not being
-		// preload adapted -- I'm assuing it ALWAYS has to be.
-		IDOMModel domModel = (IDOMModel) 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());
-		}	}
-
-	public IModelLoader newInstance() {
-		return new HTMLModelLoader();
-	}
-
-	public IDocumentLoader getDocumentLoader() {
-		if (documentLoaderInstance == null) {
-			documentLoaderInstance = new HTMLDocumentLoader();
-		}
-		return documentLoaderInstance;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/format/EmbeddedCSSFormatter.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/format/EmbeddedCSSFormatter.java
deleted file mode 100644
index 294906c..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/format/EmbeddedCSSFormatter.java
+++ /dev/null
@@ -1,90 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this 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.core.internal.format;
-
-
-
-import org.eclipse.wst.css.core.internal.format.CSSSourceFormatter;
-import org.eclipse.wst.css.core.internal.provisional.adapters.IStyleSheetAdapter;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSModel;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSNode;
-import org.eclipse.wst.html.core.internal.provisional.HTMLFormatContraints;
-import org.eclipse.wst.sse.core.internal.provisional.INodeAdapter;
-import org.eclipse.wst.sse.core.internal.provisional.INodeNotifier;
-import org.eclipse.wst.xml.core.internal.provisional.document.IDOMNode;
-import org.eclipse.wst.xml.core.internal.provisional.document.IDOMText;
-
-// nakamori_TODO: check and remove
-
-public class EmbeddedCSSFormatter extends HTMLFormatter {
-
-	//private IAdapterFactory factory = new CSSSourceFormatterFactory(CSSSourceFormatter.class, true);
-	/**
-	 */
-	protected EmbeddedCSSFormatter() {
-		super();
-	}
-
-	/**
-	 */
-	protected void formatNode(IDOMNode node, HTMLFormatContraints contraints) {
-		if (node == null)
-			return;
-		IDOMText text = (IDOMText) node;
-
-		String source = getCSSContent(node);
-		if (source == null) { // fallback
-			source = text.getSource();
-		}
-
-		int offset = text.getStartOffset();
-		int length = text.getEndOffset() - offset;
-		replaceSource(text.getModel(), offset, length, source);
-		setWidth(contraints, source);
-	}
-
-	/**
-	 */
-	private String getCSSContent(IDOMNode text) {
-		ICSSModel model = getCSSModel(text);
-		if (model == null)
-			return null;
-		ICSSNode document = model.getDocument();
-		if (document == null)
-			return null;
-		INodeNotifier notifier = (INodeNotifier) document;
-		INodeAdapter adapter = notifier.getAdapterFor(CSSSourceFormatter.class);
-		if (adapter == null)
-			return null;
-		CSSSourceFormatter formatter = (CSSSourceFormatter) adapter;
-		StringBuffer buffer = formatter.format(document);
-		if (buffer == null)
-			return null;
-		return buffer.toString();
-	}
-
-	/**
-	 */
-	private ICSSModel getCSSModel(IDOMNode text) {
-		if (text == null)
-			return null;
-		INodeNotifier notifier = (INodeNotifier) text.getParentNode();
-		if (notifier == null)
-			return null;
-		INodeAdapter adapter = notifier.getAdapterFor(IStyleSheetAdapter.class);
-		if (adapter == null)
-			return null;
-		if (!(adapter instanceof IStyleSheetAdapter))
-			return null;
-		IStyleSheetAdapter styleAdapter = (IStyleSheetAdapter) adapter;
-		return styleAdapter.getModel();
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/format/HTMLElementFormatter.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/format/HTMLElementFormatter.java
deleted file mode 100644
index 27fcc9b..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/format/HTMLElementFormatter.java
+++ /dev/null
@@ -1,356 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this 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.core.internal.format;
-
-import java.util.Iterator;
-
-import org.eclipse.wst.css.core.internal.format.CSSSourceFormatter;
-import org.eclipse.wst.css.core.internal.provisional.adapters.IStyleDeclarationAdapter;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSModel;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSNode;
-import org.eclipse.wst.html.core.internal.provisional.HTMLFormatContraints;
-import org.eclipse.wst.sse.core.internal.provisional.INodeAdapter;
-import org.eclipse.wst.sse.core.internal.provisional.INodeNotifier;
-import org.eclipse.wst.sse.core.internal.provisional.text.IStructuredDocumentRegion;
-import org.eclipse.wst.sse.core.internal.provisional.text.ITextRegion;
-import org.eclipse.wst.sse.core.internal.provisional.text.ITextRegionList;
-import org.eclipse.wst.xml.core.internal.provisional.document.IDOMElement;
-import org.eclipse.wst.xml.core.internal.provisional.document.IDOMNode;
-import org.eclipse.wst.xml.core.internal.provisional.format.IStructuredFormatPreferencesXML;
-import org.eclipse.wst.xml.core.internal.regions.DOMRegionContext;
-import org.w3c.dom.Attr;
-import org.w3c.dom.NamedNodeMap;
-
-// nakamori_TODO: check and remove CSS formatting
-
-public class HTMLElementFormatter extends HTMLFormatter {
-
-	/**
-	 */
-	protected HTMLElementFormatter() {
-		super();
-	}
-
-	/**
-	 */
-	private void compressTailingSpaces(IStructuredDocumentRegion flatNode, ITextRegion region) {
-		int offset = region.getTextEnd();
-		int count = region.getEnd() - offset;
-		if (count == 1) {
-			String source = flatNode.getFullText(region);
-			int start = region.getStart();
-			if (source != null && source.charAt(offset - start) == ' ') {
-				// nothing to do
-				return;
-			}
-		}
-		replaceSource(flatNode, offset, count, " ");//$NON-NLS-1$
-	}
-
-	/**
-	 */
-	private void formatEndTag(IDOMElement element, HTMLFormatContraints contraints) {
-		IStructuredDocumentRegion endStructuredDocumentRegion = element.getEndStructuredDocumentRegion();
-		if (endStructuredDocumentRegion == null)
-			return;
-
-		if (element.isJSPTag() || element.isCommentTag()) {
-			String endTag = endStructuredDocumentRegion.getText();
-			if (endTag != null && endTag.length() > 0) {
-				setWidth(contraints, endTag);
-			}
-			return;
-		}
-
-		ITextRegion prevRegion = null;
-		ITextRegionList regions = endStructuredDocumentRegion.getRegions();
-		Iterator e = regions.iterator();
-		while (e.hasNext()) {
-			ITextRegion region = (ITextRegion) e.next();
-			if (region == null)
-				continue;
-			String regionType = region.getType();
-			if (regionType == DOMRegionContext.XML_TAG_NAME || isNestedTag(regionType)) {
-				if (prevRegion != null && prevRegion.getType() == DOMRegionContext.XML_END_TAG_OPEN) {
-					removeTailingSpaces(endStructuredDocumentRegion, prevRegion);
-				}
-			}
-			else if (regionType == DOMRegionContext.XML_TAG_CLOSE) {
-				if (prevRegion != null && (prevRegion.getType() == DOMRegionContext.XML_TAG_NAME || isNestedRootTag(prevRegion.getType()))) {
-					removeTailingSpaces(endStructuredDocumentRegion, prevRegion);
-				}
-			}
-			prevRegion = region;
-		}
-		if (prevRegion != null && (prevRegion.getType() == DOMRegionContext.XML_TAG_NAME || isNestedRootTag(prevRegion.getType()))) {
-			removeTailingSpaces(endStructuredDocumentRegion, prevRegion);
-		}
-
-		String newEndTag = endStructuredDocumentRegion.getText();
-		if (newEndTag != null && newEndTag.length() > 0) {
-			setWidth(contraints, newEndTag);
-		}
-	}
-
-	/**
-	 */
-	protected void formatNode(IDOMNode node, HTMLFormatContraints contraints) {
-		if (node == null)
-			return;
-		IDOMElement element = (IDOMElement) node;
-
-		formatStartTag(element, contraints);
-
-		formatChildNodes(element, contraints);
-
-		formatEndTag(element, contraints);
-	}
-
-	/**
-	 */
-	private void formatStartTag(IDOMElement element, HTMLFormatContraints contraints) {
-		IStructuredDocumentRegion startStructuredDocumentRegion = element.getStartStructuredDocumentRegion();
-		if (startStructuredDocumentRegion == null)
-			return;
-
-		// We should format attributes in JSPTag?
-		// if (element.isJSPTag() || element.isCommentTag()) {
-		if (element.isCommentTag()) {
-			String startTag = startStructuredDocumentRegion.getText();
-			if (startTag != null && startTag.length() > 0) {
-				setWidth(contraints, startTag);
-			}
-			return;
-		}
-
-		// first process style attribute
-		if (element.isGlobalTag()) {
-			Attr attr = element.getAttributeNode("style");//$NON-NLS-1$
-			if (attr != null)
-				formatStyleAttr(attr);
-		}
-		boolean insertBreak = false;
-		insertBreak = ((IStructuredFormatPreferencesXML) getFormatPreferences()).getSplitMultiAttrs();
-
-		if (insertBreak) {
-			NamedNodeMap attributes = element.getAttributes();
-			if (attributes == null || attributes.getLength() < 2)
-				insertBreak = false;
-		}
-		String breakSpaces = getBreakSpaces(element);
-		String indent = getIndent();
-		if (indent != null && indent.length() > 0) {
-			breakSpaces += indent;
-		}
-		ITextRegion lastBreakRegion = null;
-
-		ITextRegion prevRegion = null;
-		ITextRegionList regions = startStructuredDocumentRegion.getRegions();
-		Iterator e = regions.iterator();
-		while (e.hasNext()) {
-			ITextRegion region = (ITextRegion) e.next();
-			if (region == null)
-				continue;
-
-			ITextRegion breakRegion = null;
-
-			String regionType = region.getType();
-			if (regionType == DOMRegionContext.XML_TAG_NAME || isNestedTag(regionType)) {
-				if (prevRegion != null && prevRegion.getType() == DOMRegionContext.XML_TAG_OPEN) {
-					removeTailingSpaces(startStructuredDocumentRegion, prevRegion);
-				}
-				breakRegion = region;
-			}
-			else if (regionType == DOMRegionContext.XML_TAG_ATTRIBUTE_NAME) {
-				if (prevRegion != null && (prevRegion.getType() == DOMRegionContext.XML_TAG_ATTRIBUTE_NAME || prevRegion.getType() == DOMRegionContext.XML_TAG_ATTRIBUTE_EQUALS)) {
-					// attribute name without value
-					breakRegion = prevRegion;
-				}
-			}
-			else if (regionType == DOMRegionContext.XML_TAG_ATTRIBUTE_EQUALS) {
-				if (prevRegion != null && prevRegion.getType() == DOMRegionContext.XML_TAG_ATTRIBUTE_NAME) {
-					removeTailingSpaces(startStructuredDocumentRegion, prevRegion);
-				}
-			}
-			else if (regionType == DOMRegionContext.XML_TAG_ATTRIBUTE_VALUE) {
-				if (prevRegion != null && prevRegion.getType() == DOMRegionContext.XML_TAG_ATTRIBUTE_EQUALS) {
-					removeTailingSpaces(startStructuredDocumentRegion, prevRegion);
-				}
-				breakRegion = region;
-			}
-			else if (regionType == DOMRegionContext.XML_TAG_CLOSE || regionType == DOMRegionContext.XML_EMPTY_TAG_CLOSE) {
-				if (prevRegion != null && (prevRegion.getType() == DOMRegionContext.XML_TAG_ATTRIBUTE_NAME || prevRegion.getType() == DOMRegionContext.XML_TAG_ATTRIBUTE_EQUALS)) {
-					// attribute name without value
-					breakRegion = prevRegion;
-				}
-			}
-
-			if (breakRegion != null) {
-				int end = breakRegion.getTextEnd();
-				if (lastBreakRegion != null) {
-					int offset = lastBreakRegion.getEnd();
-					int count = end - offset;
-					if (insertBreak || !isWidthAvailable(contraints, count + 1)) {
-						replaceTailingSpaces(startStructuredDocumentRegion, lastBreakRegion, breakSpaces);
-						setWidth(contraints, breakSpaces);
-					}
-					else {
-						compressTailingSpaces(startStructuredDocumentRegion, lastBreakRegion);
-						addWidth(contraints, 1);
-					}
-					addWidth(contraints, count);
-				}
-				else {
-					addWidth(contraints, end);
-				}
-				lastBreakRegion = breakRegion;
-			}
-
-			prevRegion = region;
-		}
-		if (prevRegion != null && (prevRegion.getType() == DOMRegionContext.XML_TAG_ATTRIBUTE_NAME || prevRegion.getType() == DOMRegionContext.XML_TAG_ATTRIBUTE_EQUALS)) {
-			// attribute name without value
-			int end = prevRegion.getTextEnd();
-			if (lastBreakRegion != null) {
-				int offset = lastBreakRegion.getEnd();
-				int count = end - offset;
-				if (insertBreak || !isWidthAvailable(contraints, count + 1)) {
-					replaceTailingSpaces(startStructuredDocumentRegion, lastBreakRegion, breakSpaces);
-					setWidth(contraints, breakSpaces);
-				}
-				else {
-					compressTailingSpaces(startStructuredDocumentRegion, lastBreakRegion);
-					addWidth(contraints, 1);
-				}
-				addWidth(contraints, count);
-			}
-			else {
-				addWidth(contraints, end);
-			}
-			lastBreakRegion = prevRegion;
-		}
-
-		if (lastBreakRegion != null) {
-			int offset = lastBreakRegion.getTextEnd();
-			int count = startStructuredDocumentRegion.getLength() - offset;
-			if (prevRegion != null && prevRegion.getType() == DOMRegionContext.XML_EMPTY_TAG_CLOSE) {
-				compressTailingSpaces(startStructuredDocumentRegion, lastBreakRegion);
-				count++;
-			}
-			else
-				removeTailingSpaces(startStructuredDocumentRegion, lastBreakRegion);
-			addWidth(contraints, count);
-		}
-		else {
-			addWidth(contraints, startStructuredDocumentRegion.getLength());
-		}
-	}
-
-	/**
-	 * 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 isNestedTag(String regionType) {
-		final String JSP_ROOT_TAG_NAME = "JSP_ROOT_TAG_NAME"; //$NON-NLS-1$
-		final String JSP_DIRECTIVE_NAME = "JSP_DIRECTIVE_NAME"; //$NON-NLS-1$
-		boolean result = regionType.equals(JSP_ROOT_TAG_NAME) || regionType.equals(JSP_DIRECTIVE_NAME);
-		return result;
-	}
-
-	/**
-	 * 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 isNestedRootTag(String regionType) {
-		final String JSP_ROOT_TAG_NAME = "JSP_ROOT_TAG_NAME"; //$NON-NLS-1$
-		boolean result = regionType.equals(JSP_ROOT_TAG_NAME);
-		return result;
-	}
-
-
-	/**
-	 */
-	private void formatStyleAttr(Attr attr) {
-		if (attr == null)
-			return;
-		String value = getCSSValue(attr);
-		if (value == null)
-			return;
-		String oldValue = ((IDOMNode) attr).getValueSource();
-		if (oldValue != null && value.equals(oldValue))
-			return;
-		attr.setValue(value);
-	}
-
-	/**
-	 */
-	private ICSSModel getCSSModel(Attr attr) {
-		if (attr == null)
-			return null;
-		INodeNotifier notifier = (INodeNotifier) attr.getOwnerElement();
-		if (notifier == null)
-			return null;
-		INodeAdapter adapter = notifier.getAdapterFor(IStyleDeclarationAdapter.class);
-		if (adapter == null)
-			return null;
-		if (!(adapter instanceof IStyleDeclarationAdapter))
-			return null;
-		IStyleDeclarationAdapter styleAdapter = (IStyleDeclarationAdapter) adapter;
-		return styleAdapter.getModel();
-	}
-
-	/**
-	 */
-	private String getCSSValue(Attr attr) {
-		ICSSModel model = getCSSModel(attr);
-		if (model == null)
-			return null;
-		ICSSNode document = model.getDocument();
-		if (document == null)
-			return null;
-		INodeNotifier notifier = (INodeNotifier) document;
-		INodeAdapter adapter = notifier.getAdapterFor(CSSSourceFormatter.class);
-		if (adapter == null)
-			return null;
-		CSSSourceFormatter formatter = (CSSSourceFormatter) adapter;
-		StringBuffer buffer = formatter.format(document);
-		if (buffer == null)
-			return null;
-		return buffer.toString();
-	}
-
-	/**
-	 */
-	private void removeTailingSpaces(IStructuredDocumentRegion flatNode, ITextRegion region) {
-		int offset = region.getTextEnd();
-		int count = region.getEnd() - offset;
-		if (count <= 0)
-			return;
-		replaceSource(flatNode, offset, count, null);
-	}
-
-	/**
-	 */
-	private void replaceTailingSpaces(IStructuredDocumentRegion flatNode, ITextRegion region, String spaces) {
-		int offset = region.getTextEnd();
-		int count = region.getEnd() - offset;
-		if (count == spaces.length()) {
-			String source = flatNode.getFullText(region);
-			if (source != null && source.endsWith(spaces)) {
-				// nothing to do
-				return;
-			}
-		}
-		replaceSource(flatNode, offset, count, spaces);
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/format/HTMLFormatContraintsImpl.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/format/HTMLFormatContraintsImpl.java
deleted file mode 100644
index c650384..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/format/HTMLFormatContraintsImpl.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.core.internal.format;
-
-import org.eclipse.wst.html.core.internal.provisional.HTMLFormatContraints;
-import org.eclipse.wst.sse.core.internal.format.StructuredFormatContraints;
-
-/**
- * @deprecated
- * Please un-deprecate this if Page Designer thinks they are needed.
- */
-public class HTMLFormatContraintsImpl extends StructuredFormatContraints implements HTMLFormatContraints {
-	protected int fAvailableLineWidth;
-
-	/**
-	 * @deprecated
-	 * 	It's very hard to keep the available line width accurate.
-	 * 	Sometimes a node wants to start on a new line, sometimes it doesn't.
-	 * 	It's best for the node to figure out the available line width on the fly.
-	 */
-	public int getAvailableLineWidth() {
-		return fAvailableLineWidth;
-	}
-
-	/**
-	 * @deprecated
-	 * 	It's very hard to keep the available line width accurate.
-	 * 	Sometimes a node wants to start on a new line, sometimes it doesn't.
-	 * 	It's best for the node to figure out the available line width on the fly.
-	 */
-	public void setAvailableLineWidth(int availableLineWidth) {
-		fAvailableLineWidth = availableLineWidth;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/format/HTMLFormatProcessorImpl.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/format/HTMLFormatProcessorImpl.java
deleted file mode 100644
index 4a8da5d..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/format/HTMLFormatProcessorImpl.java
+++ /dev/null
@@ -1,61 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this 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.core.internal.format;
-
-import org.eclipse.core.runtime.Preferences;
-import org.eclipse.wst.html.core.internal.HTMLCorePlugin;
-import org.eclipse.wst.html.core.internal.preferences.HTMLCorePreferenceNames;
-import org.eclipse.wst.sse.core.internal.format.IStructuredFormatPreferences;
-import org.eclipse.wst.sse.core.internal.format.IStructuredFormatter;
-import org.eclipse.wst.xml.core.internal.provisional.format.FormatProcessorXML;
-import org.eclipse.wst.xml.core.internal.provisional.format.IStructuredFormatPreferencesXML;
-import org.eclipse.wst.xml.core.internal.provisional.format.StructuredFormatPreferencesXML;
-import org.w3c.dom.Node;
-
-public class HTMLFormatProcessorImpl extends FormatProcessorXML {
-	protected String getFileExtension() {
-		return "html"; //$NON-NLS-1$
-	}
-
-	protected IStructuredFormatter getFormatter(Node node) {
-		IStructuredFormatter formatter = HTMLFormatterFactory.getInstance().createFormatter(node, getFormatPreferences());
-
-		return formatter;
-	}
-
-	public IStructuredFormatPreferences getFormatPreferences() {
-		if (fFormatPreferences == null) {
-			fFormatPreferences = new StructuredFormatPreferencesXML();
-
-			Preferences preferences = HTMLCorePlugin.getDefault().getPluginPreferences();
-			if (preferences != null) {
-				fFormatPreferences.setLineWidth(preferences.getInt(HTMLCorePreferenceNames.LINE_WIDTH));
-				((IStructuredFormatPreferencesXML) fFormatPreferences).setSplitMultiAttrs(preferences.getBoolean(HTMLCorePreferenceNames.SPLIT_MULTI_ATTRS));
-				fFormatPreferences.setClearAllBlankLines(preferences.getBoolean(HTMLCorePreferenceNames.CLEAR_ALL_BLANK_LINES));
-
-				String indentChar = " "; //$NON-NLS-1$
-				String indentCharPref = preferences.getString(HTMLCorePreferenceNames.INDENTATION_CHAR);
-				if (HTMLCorePreferenceNames.TAB.equals(indentCharPref)) {
-					indentChar = "\t"; //$NON-NLS-1$
-				}
-				int indentationWidth = preferences.getInt(HTMLCorePreferenceNames.INDENTATION_SIZE);
-
-				String indent = ""; //$NON-NLS-1$
-				for (int i = 0; i < indentationWidth; i++) {
-					indent += indentChar;
-				}
-				fFormatPreferences.setIndent(indent);
-			}
-		}
-
-		return fFormatPreferences;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/format/HTMLFormatter.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/format/HTMLFormatter.java
deleted file mode 100644
index a026d66..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/format/HTMLFormatter.java
+++ /dev/null
@@ -1,651 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this 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.core.internal.format;
-
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.core.runtime.Preferences;
-import org.eclipse.jface.text.BadLocationException;
-import org.eclipse.wst.html.core.internal.HTMLCorePlugin;
-import org.eclipse.wst.html.core.internal.preferences.HTMLCorePreferenceNames;
-import org.eclipse.wst.html.core.internal.provisional.HTMLCMProperties;
-import org.eclipse.wst.html.core.internal.provisional.HTMLFormatContraints;
-import org.eclipse.wst.sse.core.internal.format.IStructuredFormatContraints;
-import org.eclipse.wst.sse.core.internal.format.IStructuredFormatPreferences;
-import org.eclipse.wst.sse.core.internal.format.IStructuredFormatter;
-import org.eclipse.wst.sse.core.internal.provisional.text.IStructuredDocument;
-import org.eclipse.wst.sse.core.internal.provisional.text.IStructuredDocumentRegion;
-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.provisional.document.IDOMElement;
-import org.eclipse.wst.xml.core.internal.provisional.document.IDOMModel;
-import org.eclipse.wst.xml.core.internal.provisional.document.IDOMNode;
-import org.eclipse.wst.xml.core.internal.provisional.format.IStructuredFormatPreferencesXML;
-import org.eclipse.wst.xml.core.internal.provisional.format.StructuredFormatPreferencesXML;
-import org.w3c.dom.Document;
-import org.w3c.dom.Element;
-import org.w3c.dom.Node;
-
-public class HTMLFormatter implements IStructuredFormatter {
-
-	private static final String HTML_NAME = "html";//$NON-NLS-1$
-	private static final String BODY_NAME = "BODY";//$NON-NLS-1$
-
-	/**
-	 */
-	protected void addWidth(HTMLFormatContraints contraints, int width) {
-		if (contraints == null)
-			return;
-		if (!splitLines() || getLineWidth() < 0)
-			return;
-
-		int availableWidth = contraints.getAvailableLineWidth() - width;
-		if (availableWidth < 0)
-			availableWidth = 0;
-		contraints.setAvailableLineWidth(availableWidth);
-	}
-
-	/**
-	 */
-	protected boolean canFormatChild(Node node) {
-		while (node != null) {
-			if (node.getNodeType() != Node.ELEMENT_NODE)
-				return true;
-			CMElementDeclaration decl = getElementDeclaration((Element) node);
-			if (decl != null) {
-				if (decl.getContentType() == CMElementDeclaration.CDATA)
-					return false;
-				if (decl.supports(HTMLCMProperties.SHOULD_KEEP_SPACE)) {
-					boolean shouldKeepSpace = ((Boolean) decl.getProperty(HTMLCMProperties.SHOULD_KEEP_SPACE)).booleanValue();
-					if (shouldKeepSpace)
-						return false;
-				}
-			}
-			node = node.getParentNode();
-		}
-		return false;
-	}
-
-	/**
-	 */
-	protected boolean canInsertBreakAfter(CMElementDeclaration decl) {
-		if (decl == null)
-			return false;
-		if (!decl.supports(HTMLCMProperties.LINE_BREAK_HINT))
-			return false;
-		String hint = (String) decl.getProperty(HTMLCMProperties.LINE_BREAK_HINT);
-		if (hint == null)
-			return false;
-		return (hint.equals(HTMLCMProperties.Values.BREAK_BEFORE_START_AND_AFTER_END) || hint.equals(HTMLCMProperties.Values.BREAK_AFTER_START));
-	}
-
-	/**
-	 */
-	protected boolean canInsertBreakAfter(Node node) {
-		if (node == null)
-			return false;
-		Node parent = node.getParentNode();
-		if (parent == null)
-			return false;
-		Node next = node.getNextSibling();
-
-		if (parent.getNodeType() == Node.DOCUMENT_NODE) {
-			if (node.getNodeType() == Node.ELEMENT_NODE) {
-				// do not insert break after unclosed tag
-				if (!((IDOMElement) node).isClosed())
-					return false;
-			}
-			return true;
-		}
-		else if (parent.getNodeType() == Node.ELEMENT_NODE) {
-			IDOMElement element = (IDOMElement) parent;
-			// do not insert break before missing end tag
-			if (next == null && element.getEndStructuredDocumentRegion() == null)
-				return false;
-
-			// insert line break under non-HTML elements including JSP elements
-			if (element.getPrefix() != null)
-				return true;
-
-			CMElementDeclaration decl = getElementDeclaration(element);
-			if (decl != null) {
-				if (decl.getContentType() == CMElementDeclaration.ELEMENT)
-					return true;
-				String tagName = element.getTagName();
-				// special for direct children under BODY
-				if (tagName != null && tagName.equalsIgnoreCase(BODY_NAME))
-					return true;
-			}
-		}
-
-		if (node.getNodeType() == Node.ELEMENT_NODE) {
-			IDOMElement element = (IDOMElement) node;
-			CMElementDeclaration decl = getElementDeclaration(element);
-			if (canInsertBreakAfter(decl)) {
-				// spcial for BR
-				return canFormatChild(parent);
-			}
-		}
-		if (next != null && next.getNodeType() == Node.ELEMENT_NODE) {
-			CMElementDeclaration decl = getElementDeclaration((Element) next);
-			if (canInsertBreakBefore(decl))
-				return true;
-		}
-		return false;
-	}
-
-	/**
-	 */
-	protected boolean canInsertBreakBefore(CMElementDeclaration decl) {
-		if (decl == null)
-			return false;
-		if (!decl.supports(HTMLCMProperties.LINE_BREAK_HINT))
-			return false;
-		String hint = (String) decl.getProperty(HTMLCMProperties.LINE_BREAK_HINT);
-		if (hint == null)
-			return false;
-		return hint.equals(HTMLCMProperties.Values.BREAK_BEFORE_START_AND_AFTER_END);
-	}
-
-	/**
-	 */
-	protected boolean canInsertBreakBefore(Node node) {
-		if (node == null)
-			return false;
-		Node parent = node.getParentNode();
-		if (parent == null)
-			return false;
-		Node prev = node.getPreviousSibling();
-
-		if (parent.getNodeType() == Node.DOCUMENT_NODE) {
-			if (prev == null)
-				return false;
-			return true;
-		}
-		else if (parent.getNodeType() == Node.ELEMENT_NODE) {
-			IDOMElement element = (IDOMElement) parent;
-			// do not insert break after missing start tag
-			if (prev == null && element.getStartStructuredDocumentRegion() == null)
-				return false;
-
-			// insert line break under non-HTML elements including JSP elements
-			if (element.getPrefix() != null)
-				return true;
-
-			CMElementDeclaration decl = getElementDeclaration(element);
-			if (decl != null) {
-				if (decl.getContentType() == CMElementDeclaration.ELEMENT)
-					return true;
-				String tagName = element.getTagName();
-				// special for direct children under BODY
-				if (tagName != null && tagName.equalsIgnoreCase(BODY_NAME))
-					return true;
-			}
-		}
-
-		if (node.getNodeType() == Node.ELEMENT_NODE) {
-			CMElementDeclaration decl = getElementDeclaration((Element) node);
-			if (canInsertBreakBefore(decl))
-				return true;
-		}
-		if (prev != null && prev.getNodeType() == Node.ELEMENT_NODE) {
-			CMElementDeclaration decl = getElementDeclaration((Element) prev);
-			if (canInsertBreakAfter(decl)) {
-				// spcial for BR
-				return canFormatChild(parent);
-			}
-		}
-		return false;
-	}
-
-	/**
-	 */
-	public void format(Node node) {
-		format(node, getFormatContraints());
-	}
-
-	/**
-	 */
-	public void format(Node node, IStructuredFormatContraints contraints) {
-		if (node instanceof IDOMNode && contraints instanceof HTMLFormatContraints)
-			format((IDOMNode) node, (HTMLFormatContraints) contraints);
-	}
-
-	public void format(IDOMNode node, HTMLFormatContraints contraints) {
-		if (node == null)
-			return;
-		if (node.getParentNode() == null)
-			return; // do not format removed node
-
-		setWidth(contraints, node);
-
-		if (canInsertBreakBefore(node))
-			insertBreakBefore(node, contraints);
-
-		formatNode(node, contraints);
-
-		if (canInsertBreakAfter(node))
-			insertBreakAfter(node, contraints);
-	}
-
-	/**
-	 */
-	protected void formatChildNodes(IDOMNode node, HTMLFormatContraints contraints) {
-		if (node == null)
-			return;
-		if (!node.hasChildNodes())
-			return;
-
-		// concat adjacent texts
-		node.normalize();
-
-		// disable sibling indent during formatting all the children
-		boolean indent = false;
-		if (contraints != null) {
-			indent = contraints.getFormatWithSiblingIndent();
-			contraints.setFormatWithSiblingIndent(false);
-		}
-
-		boolean insertBreak = true;
-		IDOMNode child = (IDOMNode) node.getFirstChild();
-		while (child != null) {
-			if (child.getParentNode() != node)
-				break;
-			IDOMNode next = (IDOMNode) child.getNextSibling();
-
-			if (insertBreak && canInsertBreakBefore(child)) {
-				insertBreakBefore(child, contraints);
-			}
-
-			IStructuredFormatter formatter = HTMLFormatterFactory.getInstance().createFormatter(child, getFormatPreferences());
-			if (formatter != null) {
-				if (formatter instanceof HTMLFormatter) {
-					HTMLFormatter htmlFormatter = (HTMLFormatter) formatter;
-					htmlFormatter.formatNode(child, contraints);
-				}
-				else {
-					formatter.format(child);
-				}
-			}
-
-			if (canInsertBreakAfter(child)) {
-				insertBreakAfter(child, contraints);
-				insertBreak = false; // not to insert twice
-			}
-			else {
-				insertBreak = true;
-			}
-
-			child = next;
-		}
-
-		if (contraints != null)
-			contraints.setFormatWithSiblingIndent(indent);
-	}
-
-	/**
-	 */
-	protected void formatNode(IDOMNode node, HTMLFormatContraints contraints) {
-		if (node == null)
-			return;
-
-		if (node.hasChildNodes()) { // container
-			formatChildNodes(node, contraints);
-		}
-		else { // leaf
-			IStructuredDocumentRegion flatNode = node.getStartStructuredDocumentRegion();
-			if (flatNode != null) {
-				String source = flatNode.getText();
-				if (source != null && source.length() > 0) {
-					setWidth(contraints, source);
-				}
-			}
-		}
-	}
-
-	/**
-	 */
-	protected String getBreakSpaces(Node node) {
-		if (node == null)
-			return null;
-		StringBuffer buffer = new StringBuffer();
-
-		String delim = ((IDOMNode) node).getModel().getStructuredDocument().getLineDelimiter();
-		if (delim != null && delim.length() > 0)
-			buffer.append(delim);
-
-		String indent = getIndent();
-		if (indent != null && indent.length() > 0) {
-			for (Node parent = node.getParentNode(); parent != null; parent = parent.getParentNode()) {
-				if (parent.getNodeType() != Node.ELEMENT_NODE)
-					break;
-				// ignore omitted tag
-				if (((IDOMNode) parent).getStartStructuredDocumentRegion() == null)
-					continue;
-
-				IDOMElement element = (IDOMElement) parent;
-				if (element.getPrefix() != null) {
-					String localName = element.getLocalName();
-					// special for html:html
-					if (localName != null && !localName.equals(HTML_NAME)) {
-						buffer.append(indent);
-					}
-					continue;
-				}
-
-				CMElementDeclaration decl = getElementDeclaration(element);
-				if (decl != null && decl.supports(HTMLCMProperties.SHOULD_INDENT_CHILD_SOURCE)) {
-					boolean shouldIndent = ((Boolean) decl.getProperty(HTMLCMProperties.SHOULD_INDENT_CHILD_SOURCE)).booleanValue();
-					if (shouldIndent)
-						buffer.append(indent);
-				}
-
-			}
-		}
-
-		return buffer.toString();
-	}
-
-	/**
-	 */
-	protected String getIndent() {
-		return getFormatPreferences().getIndent();
-	}
-
-	/**
-	 */
-	protected int getLineWidth() {
-		return getFormatPreferences().getLineWidth();
-	}
-
-	/**
-	 */
-	protected CMElementDeclaration getElementDeclaration(Element element) {
-		if (element == null)
-			return null;
-		Document document = element.getOwnerDocument();
-		if (document == null)
-			return null;
-		ModelQuery modelQuery = ModelQueryUtil.getModelQuery(document);
-		if (modelQuery == null)
-			return null;
-		return modelQuery.getCMElementDeclaration(element);
-	}
-
-	/**
-	 */
-	protected void insertBreakAfter(IDOMNode node, HTMLFormatContraints contraints) {
-		if (node == null)
-			return;
-		if (node.getNodeType() == Node.TEXT_NODE)
-			return;
-		Node parent = node.getParentNode();
-		if (parent == null)
-			return;
-		Node next = node.getNextSibling();
-
-		String spaces = null;
-		if (next == null) { // last spaces
-			// use parent indent for the end tag
-			spaces = getBreakSpaces(parent);
-		}
-		else if (next.getNodeType() == Node.TEXT_NODE) {
-			if (contraints != null && contraints.getFormatWithSiblingIndent()) {
-				IDOMNode text = (IDOMNode) next;
-				IStructuredFormatter formatter = HTMLFormatterFactory.getInstance().createFormatter(text, getFormatPreferences());
-				if (formatter instanceof HTMLTextFormatter) {
-					HTMLTextFormatter textFormatter = (HTMLTextFormatter) formatter;
-					textFormatter.formatText(text, contraints, HTMLTextFormatter.FORMAT_HEAD);
-				}
-			}
-			return;
-		}
-		else {
-			spaces = getBreakSpaces(node);
-		}
-		if (spaces == null || spaces.length() == 0)
-			return;
-
-		replaceSource(node.getModel(), node.getEndOffset(), 0, spaces);
-		setWidth(contraints, spaces);
-	}
-
-	/**
-	 */
-	protected void insertBreakBefore(IDOMNode node, HTMLFormatContraints contraints) {
-		if (node == null)
-			return;
-		if (node.getNodeType() == Node.TEXT_NODE)
-			return;
-		Node parent = node.getParentNode();
-		if (parent == null)
-			return;
-		Node prev = node.getPreviousSibling();
-
-		String spaces = null;
-		if (prev != null && prev.getNodeType() == Node.TEXT_NODE) {
-			if (contraints != null && contraints.getFormatWithSiblingIndent()) {
-				IDOMNode text = (IDOMNode) prev;
-				IStructuredFormatter formatter = HTMLFormatterFactory.getInstance().createFormatter(text, getFormatPreferences());
-				if (formatter instanceof HTMLTextFormatter) {
-					HTMLTextFormatter textFormatter = (HTMLTextFormatter) formatter;
-					textFormatter.formatText(text, contraints, HTMLTextFormatter.FORMAT_TAIL);
-				}
-			}
-			return;
-		}
-		else {
-			spaces = getBreakSpaces(node);
-		}
-		if (spaces == null || spaces.length() == 0)
-			return;
-
-		replaceSource(node.getModel(), node.getStartOffset(), 0, spaces);
-		setWidth(contraints, spaces);
-	}
-
-	/**
-	 */
-	protected boolean isWidthAvailable(HTMLFormatContraints contraints, int width) {
-		if (contraints == null)
-			return true;
-		if (!splitLines() || getLineWidth() < 0)
-			return true;
-		return (contraints.getAvailableLineWidth() >= width);
-	}
-
-	/**
-	 */
-	protected boolean keepBlankLines(HTMLFormatContraints contraints) {
-		if (contraints == null)
-			return true;
-		return (!contraints.getClearAllBlankLines());
-	}
-
-	/**
-	 */
-	protected void replaceSource(IStructuredDocumentRegion flatNode, int offset, int length, String source) {
-		if (flatNode == null)
-			return;
-		IStructuredDocument structuredDocument = flatNode.getParentDocument();
-		if (structuredDocument == null)
-			return;
-		if (source == null)
-			source = new String();
-		int startOffset = flatNode.getStartOffset();
-		if (structuredDocument.containsReadOnly(startOffset + offset, length))
-			return;
-		// We use 'structuredDocument' as the requester object just so this and the other
-		// format-related 'repalceText' (in replaceSource) can use the same requester.
-		// Otherwise, if requester is not identical, 
-		// the undo group gets "broken" into multiple pieces based
-		// on the requesters being different. Technically, any unique, common
-		// requester object would work.
-		structuredDocument.replaceText(structuredDocument, startOffset + offset, length, source);
-	}
-
-	/**
-	 */
-	protected void replaceSource(IDOMModel model, int offset, int length, String source) {
-		if (model == null)
-			return;
-		IStructuredDocument structuredDocument = model.getStructuredDocument();
-		if (structuredDocument == null)
-			return;
-		if (source == null)
-			source = new String();
-		if (structuredDocument.containsReadOnly(offset, length))
-			return;
-		// We use 'structuredDocument' as the requester object just so this and the other
-		// format-related 'repalceText' (in replaceSource) can use the same requester.
-		// Otherwise, if requester is not identical, 
-		// the undo group gets "broken" into multiple pieces based
-		// on the requesters being different. Technically, any unique, common
-		// requester object would work. 
-		structuredDocument.replaceText(structuredDocument, offset, length, source);
-	}
-
-	/**
-	 */
-	protected void setWidth(HTMLFormatContraints contraints, String source) {
-		if (contraints == null)
-			return;
-		if (source == null)
-			return;
-		int length = source.length();
-		if (length == 0)
-			return;
-
-		if (!splitLines())
-			return;
-		int lineWidth = getLineWidth();
-		if (lineWidth < 0)
-			return;
-
-		int offset = source.lastIndexOf('\n');
-		int offset2 = source.lastIndexOf('\r');
-		if (offset2 > offset)
-			offset = offset2;
-		if (offset >= 0)
-			offset++;
-
-		int availableWidth = 0;
-		if (offset >= 0) {
-			availableWidth = lineWidth - (length - offset);
-		}
-		else {
-			availableWidth = contraints.getAvailableLineWidth() - length;
-		}
-		if (availableWidth < 0)
-			availableWidth = 0;
-		contraints.setAvailableLineWidth(availableWidth);
-	}
-
-	/**
-	 */
-	protected void setWidth(HTMLFormatContraints contraints, Node node) {
-		if (contraints == null)
-			return;
-		if (node == null)
-			return;
-		IStructuredDocument structuredDocument = ((IDOMNode) node).getStructuredDocument();
-		if (structuredDocument == null)
-			return; // error
-
-		if (!splitLines())
-			return;
-		int lineWidth = getLineWidth();
-		if (lineWidth < 0)
-			return;
-
-		int offset = ((IDOMNode) node).getStartOffset();
-		int line = structuredDocument.getLineOfOffset(offset);
-		int lineOffset = 0;
-		try {
-			lineOffset = structuredDocument.getLineOffset(line);
-		}
-		catch (BadLocationException ex) {
-			return; // error
-		}
-		if (lineOffset > offset)
-			return; // error
-
-		int availableWidth = lineWidth - (offset - lineOffset);
-		if (availableWidth < 0)
-			availableWidth = 0;
-
-		contraints.setAvailableLineWidth(availableWidth);
-	}
-
-	/**
-	 */
-	protected boolean splitLines() {
-		return true;//getFormatPreferences().getSplitLines();
-	}
-
-	protected IStructuredFormatPreferences fFormatPreferences = null;
-	protected HTMLFormatContraints fFormatContraints = null;
-	protected IProgressMonitor fProgressMonitor = null;
-
-	//public void format(XMLNode node, FormatContraints formatContraints) {
-	//	if (formatContraints.getFormatWithSiblingIndent())
-	//		formatContraints.setCurrentIndent(getSiblingIndent(node));
-	//
-	//	formatNode(node, formatContraints);
-	//}
-
-	public void setFormatPreferences(IStructuredFormatPreferences formatPreferences) {
-		fFormatPreferences = formatPreferences;
-	}
-
-	public IStructuredFormatPreferences getFormatPreferences() {
-		if (fFormatPreferences == null) {
-			fFormatPreferences = new StructuredFormatPreferencesXML();
-
-			Preferences preferences = HTMLCorePlugin.getDefault().getPluginPreferences();
-			if (preferences != null) {
-				fFormatPreferences.setLineWidth(preferences.getInt(HTMLCorePreferenceNames.LINE_WIDTH));
-				((IStructuredFormatPreferencesXML) fFormatPreferences).setSplitMultiAttrs(preferences.getBoolean(HTMLCorePreferenceNames.SPLIT_MULTI_ATTRS));
-				fFormatPreferences.setClearAllBlankLines(preferences.getBoolean(HTMLCorePreferenceNames.CLEAR_ALL_BLANK_LINES));
-
-				String indentChar = " "; //$NON-NLS-1$
-				String indentCharPref = preferences.getString(HTMLCorePreferenceNames.INDENTATION_CHAR);
-				if (HTMLCorePreferenceNames.TAB.equals(indentCharPref)) {
-					indentChar = "\t"; //$NON-NLS-1$
-				}
-				int indentationWidth = preferences.getInt(HTMLCorePreferenceNames.INDENTATION_SIZE);
-
-				String indent = ""; //$NON-NLS-1$
-				for (int i = 0; i < indentationWidth; i++) {
-					indent += indentChar;
-				}
-				fFormatPreferences.setIndent(indent);
-			}
-		}
-
-		return fFormatPreferences;
-	}
-
-	public IStructuredFormatContraints getFormatContraints() {
-		if (fFormatContraints == null) {
-			fFormatContraints = new HTMLFormatContraintsImpl();
-
-			fFormatContraints.setAvailableLineWidth(getFormatPreferences().getLineWidth());
-			fFormatContraints.setClearAllBlankLines(getFormatPreferences().getClearAllBlankLines());
-		}
-
-		return fFormatContraints;
-	}
-
-	public void setProgressMonitor(IProgressMonitor progressMonitor) {
-		fProgressMonitor = progressMonitor;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/format/HTMLFormatterFactory.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/format/HTMLFormatterFactory.java
deleted file mode 100644
index eff9cd9..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/format/HTMLFormatterFactory.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.html.core.internal.format;
-
-import org.eclipse.core.runtime.Preferences;
-import org.eclipse.wst.html.core.internal.HTMLCorePlugin;
-import org.eclipse.wst.html.core.internal.preferences.HTMLCorePreferenceNames;
-import org.eclipse.wst.sse.core.internal.format.IStructuredFormatPreferences;
-import org.eclipse.wst.sse.core.internal.format.IStructuredFormatter;
-import org.eclipse.wst.xml.core.internal.provisional.format.IStructuredFormatPreferencesXML;
-import org.eclipse.wst.xml.core.internal.provisional.format.StructuredFormatPreferencesXML;
-import org.w3c.dom.Node;
-
-// nakamori_TODO: check and remove CSS formatting
-
-class HTMLFormatterFactory {
-	private static HTMLFormatterFactory fInstance = null;
-	protected IStructuredFormatPreferencesXML fFormatPreferences = null;
-
-	static synchronized HTMLFormatterFactory getInstance() {
-		if (fInstance == null) {
-			fInstance = new HTMLFormatterFactory();
-		}
-		return fInstance;
-	}
-
-	protected IStructuredFormatter createFormatter(Node node, IStructuredFormatPreferences formatPreferences) {
-		IStructuredFormatter formatter = null;
-
-		switch (node.getNodeType()) {
-			case Node.ELEMENT_NODE :
-				formatter = new HTMLElementFormatter();
-				break;
-			case Node.TEXT_NODE :
-				if (isEmbeddedCSS(node)) {
-					formatter = new EmbeddedCSSFormatter();
-				}
-				else {
-					formatter = new HTMLTextFormatter();
-				}
-				break;
-			default :
-				formatter = new HTMLFormatter();
-				break;
-		}
-
-		// init FormatPreferences
-		formatter.setFormatPreferences(formatPreferences);
-
-		return formatter;
-	}
-
-	/**
-	 */
-	private boolean isEmbeddedCSS(Node node) {
-		if (node == null)
-			return false;
-		Node parent = node.getParentNode();
-		if (parent == null)
-			return false;
-		if (parent.getNodeType() != Node.ELEMENT_NODE)
-			return false;
-		String name = parent.getNodeName();
-		if (name == null)
-			return false;
-		return name.equalsIgnoreCase("STYLE");//$NON-NLS-1$
-	}
-
-
-	private HTMLFormatterFactory() {
-		super();
-	}
-
-	protected IStructuredFormatPreferencesXML getFormatPreferences() {
-		if (fFormatPreferences == null) {
-			fFormatPreferences = new StructuredFormatPreferencesXML();
-
-			Preferences preferences = HTMLCorePlugin.getDefault().getPluginPreferences();
-			if (preferences != null) {
-				fFormatPreferences.setLineWidth(preferences.getInt(HTMLCorePreferenceNames.LINE_WIDTH));
-				fFormatPreferences.setSplitMultiAttrs(preferences.getBoolean(HTMLCorePreferenceNames.SPLIT_MULTI_ATTRS));
-				fFormatPreferences.setClearAllBlankLines(preferences.getBoolean(HTMLCorePreferenceNames.CLEAR_ALL_BLANK_LINES));
-
-				String indentChar = " "; //$NON-NLS-1$
-				String indentCharPref = preferences.getString(HTMLCorePreferenceNames.INDENTATION_CHAR);
-				if (HTMLCorePreferenceNames.TAB.equals(indentCharPref)) {
-					indentChar = "\t"; //$NON-NLS-1$
-				}
-				int indentationWidth = preferences.getInt(HTMLCorePreferenceNames.INDENTATION_SIZE);
-
-				String indent = ""; //$NON-NLS-1$
-				for (int i = 0; i < indentationWidth; i++) {
-					indent += indentChar;
-				}
-				fFormatPreferences.setIndent(indent);
-			}
-		}
-
-		return fFormatPreferences;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/format/HTMLTextFormatter.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/format/HTMLTextFormatter.java
deleted file mode 100644
index a152f82..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/format/HTMLTextFormatter.java
+++ /dev/null
@@ -1,299 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this 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.core.internal.format;
-
-
-
-import org.eclipse.wst.html.core.internal.provisional.HTMLCMProperties;
-import org.eclipse.wst.html.core.internal.provisional.HTMLFormatContraints;
-import org.eclipse.wst.sse.core.internal.provisional.text.IStructuredDocumentRegion;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMElementDeclaration;
-import org.eclipse.wst.xml.core.internal.provisional.document.IDOMElement;
-import org.eclipse.wst.xml.core.internal.provisional.document.IDOMNode;
-import org.eclipse.wst.xml.core.internal.provisional.document.IDOMText;
-import org.eclipse.wst.xml.core.internal.regions.DOMRegionContext;
-import org.w3c.dom.Element;
-import org.w3c.dom.Node;
-
-public class HTMLTextFormatter extends HTMLFormatter {
-
-	public static int FORMAT_ALL = 0;
-	public static int FORMAT_HEAD = 1;
-	public static int FORMAT_TAIL = 2;
-
-	/**
-	 */
-	protected HTMLTextFormatter() {
-		super();
-	}
-
-	/**
-	 */
-	private boolean canFormatText(IDOMText text) {
-		if (text == null)
-			return false;
-
-		IStructuredDocumentRegion flatNode = text.getFirstStructuredDocumentRegion();
-		if (flatNode != null) {
-			String type = flatNode.getType();
-			if (isUnparsedRegion(type))
-				return false;
-		}
-
-		Node parent = text.getParentNode();
-		if (parent != null && parent.getNodeType() == Node.ELEMENT_NODE) {
-			IDOMElement element = (IDOMElement) parent;
-			if (!element.isGlobalTag() && !text.isElementContentWhitespace())
-				return false;
-		}
-
-		return canFormatChild(parent);
-	}
-
-	private boolean isUnparsedRegion(String type) {
-		boolean result = isNestedScannedRegion(type) || isBlockScannedRegion(type);
-		return result;
-	}
-
-	private boolean isBlockScannedRegion(String type) {
-		return type == DOMRegionContext.BLOCK_TEXT;
-	}
-
-	/**
-	 * 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 isNestedScannedRegion(String type) {
-		final String JSP_CONTENT = "JSP_CONTENT"; //$NON-NLS-1$
-		return type.equals(JSP_CONTENT);
-	}
-
-	/**
-	 */
-	private boolean canRemoveHeadingSpaces(IDOMNode node) {
-		if (node == null)
-			return false;
-		if (node.getPreviousSibling() != null)
-			return false;
-		Node parent = node.getParentNode();
-		if (parent == null || parent.getNodeType() != Node.ELEMENT_NODE)
-			return false;
-
-		CMElementDeclaration decl = getElementDeclaration((Element) parent);
-		if (decl == null || (!decl.supports(HTMLCMProperties.LINE_BREAK_HINT)))
-			return false;
-		String hint = (String) decl.getProperty(HTMLCMProperties.LINE_BREAK_HINT);
-		return hint.equals(HTMLCMProperties.Values.BREAK_BEFORE_START_AND_AFTER_END);
-	}
-
-	/**
-	 */
-	private boolean canRemoveTailingSpaces(IDOMNode node) {
-		if (node == null)
-			return false;
-		if (node.getNextSibling() != null)
-			return false;
-		Node parent = node.getParentNode();
-		if (parent == null || parent.getNodeType() != Node.ELEMENT_NODE)
-			return false;
-
-		CMElementDeclaration decl = getElementDeclaration((Element) parent);
-		if (decl == null || (!decl.supports(HTMLCMProperties.LINE_BREAK_HINT)))
-			return false;
-		String hint = (String) decl.getProperty(HTMLCMProperties.LINE_BREAK_HINT);
-		return hint.equals(HTMLCMProperties.Values.BREAK_BEFORE_START_AND_AFTER_END);
-	}
-
-	/**
-	 */
-	protected void formatNode(IDOMNode node, HTMLFormatContraints contraints) {
-		formatText(node, contraints, FORMAT_ALL); // full format
-	}
-
-	/**
-	 */
-	protected void formatText(IDOMNode node, HTMLFormatContraints contraints, int mode) {
-		if (node == null)
-			return;
-		Node parent = node.getParentNode();
-		if (parent == null)
-			return;
-
-		IDOMText text = (IDOMText) node;
-		String source = text.getSource();
-
-		if (!canFormatText(text)) {
-			setWidth(contraints, source);
-			return;
-		}
-
-		int offset = text.getStartOffset();
-		int length = text.getEndOffset() - offset;
-
-		// format adjacent text at once
-		if (mode == FORMAT_HEAD) {
-			Node next = node.getNextSibling();
-			while (next != null && next.getNodeType() == Node.TEXT_NODE) {
-				IDOMText nextText = (IDOMText) next;
-				length += (nextText.getEndOffset() - nextText.getStartOffset());
-				String nextSource = nextText.getSource();
-				if (nextSource != null && nextSource.length() > 0) {
-					if (source == null)
-						source = nextSource;
-					else
-						source += nextSource;
-				}
-				next = next.getNextSibling();
-			}
-		}
-		else if (mode == FORMAT_TAIL) {
-			Node prev = node.getPreviousSibling();
-			while (prev != null && prev.getNodeType() == Node.TEXT_NODE) {
-				IDOMText prevText = (IDOMText) prev;
-				offset = prevText.getStartOffset();
-				length += (prevText.getEndOffset() - offset);
-				String prevSource = prevText.getSource();
-				if (prevSource != null && prevSource.length() > 0) {
-					if (source == null)
-						source = prevSource;
-					else
-						source = prevSource + source;
-				}
-				prev = prev.getPreviousSibling();
-			}
-		}
-
-		SpaceConverter converter = new SpaceConverter(source, keepBlankLines(contraints));
-
-		int wordLength = converter.nextWord();
-		if (wordLength == 0) { // only spaces
-			if (!converter.hasSpaces())
-				return; // empty
-			boolean removeSpaces = false;
-			if (parent.getNodeType() == Node.ELEMENT_NODE) {
-				// check if tags are omitted
-				IDOMNode element = (IDOMNode) parent;
-				if (node.getPreviousSibling() == null && element.getStartStructuredDocumentRegion() == null) {
-					removeSpaces = true;
-				}
-				else if (node.getNextSibling() == null && element.getEndStructuredDocumentRegion() == null) {
-					removeSpaces = true;
-				}
-			}
-			if (removeSpaces) {
-				converter.replaceSpaces(null);
-			}
-			else if (!isWidthAvailable(contraints, 2) || canInsertBreakAfter(node) || canInsertBreakBefore(node)) {
-				String spaces = null;
-				if (node.getNextSibling() == null) { // last spaces
-					// use parent indent for the end tag
-					spaces = getBreakSpaces(parent);
-				}
-				else {
-					spaces = getBreakSpaces(node);
-				}
-				converter.replaceSpaces(spaces);
-				setWidth(contraints, spaces);
-			}
-			else if (canRemoveHeadingSpaces(node) || canRemoveTailingSpaces(node)) {
-				converter.replaceSpaces(null);
-			}
-			else {
-				converter.compressSpaces();
-				addWidth(contraints, 1);
-			}
-		}
-		else {
-			String breakSpaces = null;
-
-			// format heading spaces
-			boolean hasSpaces = converter.hasSpaces();
-			if (mode == FORMAT_TAIL) {
-				// keep spaces as is
-				addWidth(contraints, converter.getSpaceCount());
-			}
-			else if ((hasSpaces && !isWidthAvailable(contraints, wordLength + 1)) || canInsertBreakBefore(node)) {
-				breakSpaces = getBreakSpaces(node);
-				converter.replaceSpaces(breakSpaces);
-				setWidth(contraints, breakSpaces);
-			}
-			else {
-				if (hasSpaces) {
-					if (canRemoveHeadingSpaces(node)) {
-						converter.replaceSpaces(null);
-					}
-					else {
-						converter.compressSpaces();
-						addWidth(contraints, 1);
-					}
-				}
-			}
-			addWidth(contraints, wordLength);
-
-			// format middle
-			wordLength = converter.nextWord();
-			while (wordLength > 0) {
-				if (mode != FORMAT_ALL) {
-					// keep spaces as is
-					addWidth(contraints, converter.getSpaceCount());
-				}
-				else if (!isWidthAvailable(contraints, wordLength + 1)) {
-					if (breakSpaces == null)
-						breakSpaces = getBreakSpaces(node);
-					converter.replaceSpaces(breakSpaces);
-					setWidth(contraints, breakSpaces);
-				}
-				else {
-					converter.compressSpaces();
-					addWidth(contraints, 1);
-				}
-				addWidth(contraints, wordLength);
-				wordLength = converter.nextWord();
-			}
-
-			// format tailing spaces
-			hasSpaces = converter.hasSpaces();
-			if (mode == FORMAT_HEAD) {
-				// keep spaces as is
-				addWidth(contraints, converter.getSpaceCount());
-			}
-			else if ((hasSpaces && !isWidthAvailable(contraints, 2)) || canInsertBreakAfter(node)) {
-				if (node.getNextSibling() == null) { // last test
-					// use parent indent for the end tag
-					breakSpaces = getBreakSpaces(parent);
-				}
-				else {
-					if (breakSpaces == null)
-						breakSpaces = getBreakSpaces(node);
-				}
-				converter.replaceSpaces(breakSpaces);
-				setWidth(contraints, breakSpaces);
-			}
-			else {
-				if (hasSpaces) {
-					if (canRemoveTailingSpaces(node)) {
-						converter.replaceSpaces(null);
-					}
-					else {
-						converter.compressSpaces();
-						addWidth(contraints, 1);
-					}
-				}
-			}
-		}
-
-		if (converter.isModified()) {
-			source = converter.getSource();
-			replaceSource(text.getModel(), offset, length, source);
-		}
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/format/SpaceConverter.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/format/SpaceConverter.java
deleted file mode 100644
index a7b6f66..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/format/SpaceConverter.java
+++ /dev/null
@@ -1,233 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this 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.core.internal.format;
-
-
-
-final class SpaceConverter {
-
-	private String source = null;
-	private int length = 0;
-	private int startOffset = 0;
-	private int endOffset = 0;
-	private int spaceCount = 0;
-	private int wordCount = 0;
-	private StringBuffer buffer = null;
-	private int lastOffset = 0;
-	private boolean keepBlankLines = false;
-
-	/**
-	 */
-	public SpaceConverter(String source) {
-		super();
-
-		if (source == null) {
-			this.source = new String();
-		}
-		else {
-			this.source = source;
-			this.length = source.length();
-		}
-	}
-
-	/**
-	 */
-	public SpaceConverter(String source, boolean keepBlankLines) {
-		super();
-
-		if (source == null) {
-			this.source = new String();
-		}
-		else {
-			this.source = source;
-			this.length = source.length();
-		}
-		this.keepBlankLines = keepBlankLines;
-	}
-
-	/**
-	 */
-	public void compressSpaces() {
-		if (this.spaceCount == 0)
-			return;
-		if (this.spaceCount == 1 && this.source.charAt(this.startOffset) == ' ')
-			return;
-
-		if (this.buffer == null)
-			this.buffer = new StringBuffer();
-		if (this.startOffset > this.lastOffset) {
-			this.buffer.append(this.source.substring(this.lastOffset, this.startOffset));
-		}
-
-		this.buffer.append(' ');
-
-		this.lastOffset = this.startOffset + this.spaceCount;
-	}
-
-	/**
-	 */
-	public String getSource() {
-		if (this.buffer == null)
-			this.buffer = new StringBuffer();
-		if (this.length > this.lastOffset) {
-			this.buffer.append(this.source.substring(this.lastOffset, this.length));
-		}
-		return this.buffer.toString();
-	}
-
-	/**
-	 */
-	public int getSpaceCount() {
-		return this.spaceCount;
-	}
-
-	/**
-	 */
-	public boolean hasSpaces() {
-		return (this.spaceCount > 0);
-	}
-
-	/**
-	 */
-	public boolean isModified() {
-		return (this.buffer != null);
-	}
-
-	/**
-	 * Add number of the old blank lines to new space string
-	 */
-	private static String mergeBlankLines(String newSpaces, String oldSpaces) {
-		if (newSpaces == null || newSpaces.length() == 0)
-			return newSpaces;
-		if (oldSpaces == null)
-			return newSpaces;
-
-		// count old new lines
-		int newLineCount = 0;
-		int oldLength = oldSpaces.length();
-		for (int i = 0; i < oldLength; i++) {
-			char c = oldSpaces.charAt(i);
-			if (c == '\r') {
-				newLineCount++;
-				if (i + 1 < oldLength) {
-					c = oldSpaces.charAt(i + 1);
-					if (c == '\n')
-						i++;
-				}
-			}
-			else {
-				if (c == '\n')
-					newLineCount++;
-			}
-		}
-		if (newLineCount < 2)
-			return newSpaces; // no blank line
-
-		// here assuming newSpaces starts with a new line if any
-		String delim = null;
-		char d = newSpaces.charAt(0);
-		if (d == '\r') {
-			if (newSpaces.length() > 1 && newSpaces.charAt(1) == '\n')
-				delim = "\r\n";//$NON-NLS-1$
-			else
-				delim = "\r";//$NON-NLS-1$
-		}
-		else {
-			if (d == '\n')
-				delim = "\n";//$NON-NLS-1$
-			else
-				return newSpaces; // no new line
-		}
-
-		newLineCount--;
-		StringBuffer buffer = new StringBuffer(newSpaces.length() + newLineCount * 2);
-		while (newLineCount > 0) {
-			buffer.append(delim);
-			newLineCount--;
-		}
-		buffer.append(newSpaces);
-		return buffer.toString();
-	}
-
-	/**
-	 */
-	public int nextWord() {
-		if (this.endOffset == this.length) {
-			this.startOffset = this.endOffset;
-			this.spaceCount = 0;
-			this.wordCount = 0;
-			return 0;
-		}
-
-		this.startOffset = this.endOffset;
-		int i = this.startOffset;
-		for (; i < this.length; i++) {
-			if (!Character.isWhitespace(this.source.charAt(i)))
-				break;
-		}
-		this.spaceCount = i - this.startOffset;
-
-		int wordOffset = i;
-		for (; i < this.length; i++) {
-			if (Character.isWhitespace(this.source.charAt(i)))
-				break;
-		}
-		this.wordCount = i - wordOffset;
-		this.endOffset = i;
-
-		return this.wordCount;
-	}
-
-	/**
-	 */
-	public void replaceSpaces(String spaces) {
-		int spaceLength = (spaces != null ? spaces.length() : 0);
-		String oldSpaces = null;
-		if (spaceLength == this.spaceCount) {
-			if (spaceLength == 0)
-				return;
-			if (this.startOffset == 0) {
-				if (this.source.startsWith(spaces))
-					return;
-			}
-			else if (this.endOffset == this.length) {
-				if (this.source.endsWith(spaces))
-					return;
-			}
-			else {
-				int textOffset = this.startOffset + this.spaceCount;
-				oldSpaces = this.source.substring(this.startOffset, textOffset);
-				if (oldSpaces.equals(spaces))
-					return;
-			}
-		}
-		if (this.keepBlankLines && this.spaceCount > 0) {
-			if (oldSpaces == null) {
-				int textOffset = this.startOffset + this.spaceCount;
-				oldSpaces = this.source.substring(this.startOffset, textOffset);
-			}
-			if (oldSpaces != null) {
-				spaces = mergeBlankLines(spaces, oldSpaces);
-			}
-		}
-
-		if (this.buffer == null)
-			this.buffer = new StringBuffer();
-		if (this.startOffset > this.lastOffset) {
-			this.buffer.append(this.source.substring(this.lastOffset, this.startOffset));
-		}
-
-		if (spaceLength > 0)
-			this.buffer.append(spaces);
-
-		this.lastOffset = this.startOffset + this.spaceCount;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/htmlcss/AbstractCSSModelAdapter.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/htmlcss/AbstractCSSModelAdapter.java
deleted file mode 100644
index aa1be40..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/htmlcss/AbstractCSSModelAdapter.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.wst.html.core.internal.htmlcss;
-
-import java.util.Collection;
-import java.util.Iterator;
-
-import org.eclipse.wst.css.core.internal.document.CSSModelImpl;
-import org.eclipse.wst.css.core.internal.provisional.adapters.ICSSModelAdapter;
-import org.eclipse.wst.css.core.internal.provisional.contenttype.ContentTypeIdForCSS;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSModel;
-import org.eclipse.wst.sse.core.internal.provisional.INodeAdapter;
-import org.eclipse.wst.sse.core.internal.provisional.INodeNotifier;
-import org.eclipse.wst.sse.core.internal.provisional.IStructuredModel;
-import org.eclipse.wst.xml.core.internal.provisional.document.IDOMNode;
-import org.w3c.dom.Element;
-
-/**
- */
-public abstract class AbstractCSSModelAdapter implements ICSSModelAdapter {
-	private final static String CSS_ID = ContentTypeIdForCSS.ContentTypeID_CSS;
-
-	private Element element = null;
-	private ICSSModel model = null;
-
-	/**
-	 */
-	AbstractCSSModelAdapter() {
-		super();
-	}
-
-	/**
-	 */
-	protected ICSSModel createModel() {
-		// create embedded CSS model (not for external CSS)
-		if (getElement() == null)
-			return null;
-		IStructuredModel baseModel = ((IDOMNode) getElement()).getModel();
-		ICSSModel newModel = (ICSSModel) baseModel.getModelManager().createUnManagedStructuredModelFor(CSS_ID);
-		((CSSModelImpl) newModel).setOwnerDOMNode(getElement());
-		return newModel;
-	}
-
-	/**
-	 */
-	public Element getElement() {
-		return this.element;
-	}
-
-	/**
-	 */
-	protected ICSSModel getExistingModel() {
-		return this.model;
-	}
-
-	/**
-	 */
-	protected void notifyStyleChanged(Element target) {
-		INodeNotifier notifier = (INodeNotifier) target;
-		if (notifier == null)
-			return;
-		Collection adapters = notifier.getAdapters();
-		if (adapters == null)
-			return;
-		Iterator it = adapters.iterator();
-		if (it == null)
-			return;
-		while (it.hasNext()) {
-			INodeAdapter adapter = (INodeAdapter) it.next();
-			if (adapter instanceof StyleListener) {
-				StyleListener listener = (StyleListener) adapter;
-				listener.styleChanged();
-			}
-		}
-	}
-
-	/**
-	 */
-	void setElement(Element element) {
-		this.element = element;
-	}
-
-	/**
-	 * check 
-	 * 1. If attributes of element is valid (type,rel ...)
-	 * 2. If content model supports this element / attribute (future ?)
-	 */
-	protected boolean isValidAttribute() {
-		return (getElement() != null);
-	}
-
-	/**
-	 */
-	protected void setModel(ICSSModel model) {
-		this.model = model;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/htmlcss/AbstractStyleSheetAdapter.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/htmlcss/AbstractStyleSheetAdapter.java
deleted file mode 100644
index a2daac2..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/htmlcss/AbstractStyleSheetAdapter.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.html.core.internal.htmlcss;
-
-import java.util.Collection;
-import java.util.HashSet;
-import java.util.Iterator;
-
-import org.eclipse.wst.css.core.internal.event.ICSSStyleListener;
-import org.eclipse.wst.css.core.internal.provisional.adapters.IModelProvideAdapter;
-import org.eclipse.wst.css.core.internal.provisional.adapters.IStyleSheetAdapter;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSModel;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSNode;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSSelector;
-import org.eclipse.wst.css.core.internal.util.ImportedCollector;
-import org.eclipse.wst.sse.core.internal.provisional.INodeAdapter;
-import org.eclipse.wst.sse.core.internal.provisional.INodeNotifier;
-import org.eclipse.wst.xml.core.internal.document.XMLModelNotifier;
-import org.eclipse.wst.xml.core.internal.provisional.document.IDOMModel;
-import org.eclipse.wst.xml.core.internal.provisional.document.IDOMNode;
-import org.w3c.dom.Document;
-import org.w3c.dom.Element;
-import org.w3c.dom.Node;
-import org.w3c.dom.stylesheets.DocumentStyle;
-import org.w3c.dom.stylesheets.StyleSheet;
-import org.w3c.dom.stylesheets.StyleSheetList;
-import org.w3c.dom.traversal.DocumentTraversal;
-import org.w3c.dom.traversal.NodeFilter;
-import org.w3c.dom.traversal.NodeIterator;
-
-/**
- */
-public abstract class AbstractStyleSheetAdapter extends AbstractCSSModelAdapter implements ICSSStyleListener, IStyleSheetAdapter {
-
-	// this variable to hold the class is just a VAJava trick.
-	// it improves performance in VAJava by minimizing class loading.
-	private final Class StyleSheetAdapterClass = IStyleSheetAdapter.class;
-	private Collection styleChangedNodes;
-
-	/**
-	 */
-	protected AbstractStyleSheetAdapter() {
-		super();
-	}
-
-	/**
-	 */
-	protected ICSSModel createModel() {
-		ICSSModel newModel = super.createModel();
-		if (newModel != null) {
-			// get ModelProvideAdapter
-			IModelProvideAdapter adapter = (IModelProvideAdapter) ((INodeNotifier) getElement()).getAdapterFor(IModelProvideAdapter.class);
-			// notify adapter
-			if (adapter != null)
-				adapter.modelProvided(newModel);
-		}
-		return newModel;
-	}
-
-	/**
-	 */
-	public StyleSheet getSheet() {
-		ICSSModel model = getModel();
-		if (model == null)
-			return null;
-		return (StyleSheet) model.getDocument();
-	}
-
-	/**
-	 * 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 == StyleSheetAdapterClass);
-	}
-
-	/**
-	 */
-	public void released() {
-		ICSSModel currentModel = getModel();
-
-		// get ModelProvideAdapter
-		IModelProvideAdapter adapter = (IModelProvideAdapter) ((INodeNotifier) getElement()).getAdapterFor(IModelProvideAdapter.class);
-
-		setElement(null);
-		setModel(null);
-
-		if (adapter != null)
-			adapter.modelReleased(currentModel);
-
-		if (currentModel != null)
-			currentModel.releaseFromRead();
-	}
-
-	/**
-	 */
-	public void removed() {
-		ICSSModel currentModel = getModel();
-
-		setModel(null);
-
-		// get ModelProvideAdapter
-		IModelProvideAdapter adapter = (IModelProvideAdapter) ((INodeNotifier) getElement()).getAdapterFor(IModelProvideAdapter.class);
-		if (adapter != null)
-			adapter.modelRemoved(currentModel);
-
-		if (currentModel != null)
-			currentModel.releaseFromRead();
-	}
-
-
-	public void styleChanged(ICSSModel srcModel, ICSSSelector[] removed, ICSSSelector[] added, String media) {
-		Element element = getElement();
-		if (element == null)
-			return; // might released
-		Document doc = element.getOwnerDocument();
-		if (doc == null)
-			return; // error
-
-		// to notify GEF tree 
-		if (doc instanceof INodeNotifier) {
-			Collection adapters = ((INodeNotifier) doc).getAdapters();
-			if (adapters == null)
-				return;
-			Iterator it = adapters.iterator();
-			if (it == null)
-				return;
-			while (it.hasNext()) {
-				INodeAdapter adapter = (INodeAdapter) it.next();
-				if (adapter instanceof ICSSStyleListener) {
-					((ICSSStyleListener) adapter).styleChanged(srcModel, removed, added, media);
-				}
-			}
-		}
-		//
-
-		if (styleChangedNodes == null) {
-			styleChangedNodes = new HashSet();
-		}
-
-		try {
-			int removedSelNum = removed != null ? removed.length : 0;
-			int addedSelNum = added != null ? added.length : 0;
-
-			NodeIterator iter = ((DocumentTraversal) doc).createNodeIterator(doc, NodeFilter.SHOW_ELEMENT, null, true);
-			Node node;
-			while ((node = iter.nextNode()) != null) {
-				if (node.getNodeType() == Node.ELEMENT_NODE) {
-					Element elm = (Element) node;
-					boolean match = false;
-					int i;
-					for (i = 0; i < removedSelNum && !match; i++) {
-						match = removed[i].match(elm, null);
-					}
-					for (i = 0; i < addedSelNum && !match; i++) {
-						match = added[i].match(elm, null);
-					}
-					if (match) {
-						if (!styleChangedNodes.contains(elm))
-							styleChangedNodes.add(elm);
-						// notifyStyleChanged(elm);
-					}
-				}
-			}
-		}
-		catch (ClassCastException ex) {
-			// Document doesn't implement DocumentTraversal...
-		}
-
-	}
-
-	
-	public void styleUpdate(ICSSModel srcModel) {
-		IDOMNode node = (IDOMNode) getElement();
-		if (node == null)
-			return;
-		IDOMModel model = node.getModel();
-		if (model == null)
-			return;
-		XMLModelNotifier notifier = model.getModelNotifier();
-		if (notifier == null)
-			return;
-
-		// before updating, all sub-models should be loaded!
-		DocumentStyle document = (DocumentStyle) model.getDocument();
-		StyleSheetList styles = document.getStyleSheets();
-		if (styles != null) {
-			int n = styles.getLength();
-			ImportedCollector trav = new ImportedCollector();
-			for (int i = 0; i < n; i++) {
-				org.w3c.dom.stylesheets.StyleSheet sheet = styles.item(i);
-				if (sheet instanceof ICSSNode)
-					trav.apply((ICSSNode) sheet);
-			}
-		}
-
-		// flash style changed events
-		if (styleChangedNodes != null) {
-			Object[] elements = styleChangedNodes.toArray();
-			for (int i = 0; elements != null && i < elements.length; i++)
-				notifyStyleChanged((Element) elements[i]);
-			styleChangedNodes.clear();
-		}
-
-		// to notify GEF tree 
-		if (document instanceof INodeNotifier) {
-			Collection adapters = ((INodeNotifier) document).getAdapters();
-			if (adapters == null)
-				return;
-			Iterator it = adapters.iterator();
-			if (it == null)
-				return;
-			while (it.hasNext()) {
-				INodeAdapter adapter = (INodeAdapter) it.next();
-				if (adapter instanceof ICSSStyleListener) {
-					((ICSSStyleListener) adapter).styleUpdate(srcModel);
-				}
-			}
-		}
-
-		notifier.propertyChanged(node);
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/htmlcss/CSSQueryContext.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/htmlcss/CSSQueryContext.java
deleted file mode 100644
index 6572ae6..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/htmlcss/CSSQueryContext.java
+++ /dev/null
@@ -1,137 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this 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.core.internal.htmlcss;
-
-
-
-import java.util.Enumeration;
-
-import org.eclipse.wst.css.core.internal.contentmodel.PropCMProperty;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSStyleDeclItem;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSStyleDeclaration;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSValue;
-import org.eclipse.wst.css.core.internal.util.CSSLinkConverter;
-import org.eclipse.wst.css.core.internal.util.declaration.CSSPropertyContext;
-
-/**
- */
-class CSSQueryContext extends CSSPropertyContext {
-
-	/**
-	 */
-	public CSSQueryContext() {
-		super();
-	}
-
-	/**
-	 */
-	public CSSQueryContext(ICSSStyleDeclaration decl) {
-		super(decl);
-	}
-
-	/**
-	 *
-	 */
-	public void applyFull(ICSSStyleDeclaration decl) {
-		if (decl == null)
-			return;
-		Enumeration keys = fProperties.keys();
-		while (keys.hasMoreElements()) {
-			Object key = keys.nextElement();
-			Object val = fProperties.get(key);
-
-			if (val instanceof CSSQueryDeclarationData) {
-				ICSSStyleDeclItem declItem = ((CSSQueryDeclarationData) val).getDeclItem();
-				if (declItem.getLength() <= 0) {
-					ICSSStyleDeclItem itemToRemove = decl.getDeclItemNode(key.toString());
-					if (itemToRemove != null) {
-						decl.removeDeclItemNode(itemToRemove);
-					}
-				}
-				else {
-					decl.setDeclItemNode(declItem);
-				}
-			}
-			else {
-				String value = (val instanceof ICSSValue) ? ((ICSSValue) val).getCSSValueText() : val.toString();
-
-				if (value == null || value.length() <= 0) {
-					ICSSStyleDeclItem itemToRemove = decl.getDeclItemNode(key.toString());
-					if (itemToRemove != null) {
-						decl.removeDeclItemNode(itemToRemove);
-					}
-				}
-				else {
-					decl.setProperty(key.toString(), value, null);
-				}
-			}
-		}
-	}
-
-	/**
-	 */
-	private boolean check(String propName, boolean important, int specificity) {
-		Object current = fProperties.get(propName);
-		if (current != null && current instanceof CSSQueryValueData) {
-			CSSQueryValueData currentValue = (CSSQueryValueData) current;
-			if ((!important && currentValue.important) || (currentValue.getSpecificity() > specificity)) {
-				return false;
-			}
-		}
-		return true;
-	}
-
-	/**
-	 */
-	public void overrideWithExpand(ICSSStyleDeclaration decl, int specificity) {
-		if (decl == null)
-			return;
-
-		CSSLinkConverter conv = new CSSLinkConverter(decl.getOwnerDocument().getModel());
-
-		int nProperties = decl.getLength();
-		for (int i = 0; i < nProperties; i++) {
-			String propName = decl.item(i);
-			if (propName != null) {
-				String propN = propName.trim().toLowerCase();
-				if (propN.length() != 0) {
-					PropCMProperty prop = PropCMProperty.getInstanceOf(propN);
-					String priority = decl.getPropertyPriority(propName);
-					boolean important = priority != null && priority.length() > 0;
-					if (prop != null && prop.isShorthand()) {
-						// expand shorthand property
-						CSSQueryContext context = new CSSQueryContext();
-						expandToLeaf(prop, decl.getPropertyValue(propName), context);
-
-						Enumeration properties = context.properties();
-						while (properties.hasMoreElements()) {
-							propN = properties.nextElement().toString();
-							if (check(propN, important, specificity)) {
-								fProperties.put(propN, new CSSQueryValueData(conv.toAbsolute(context.get(propN)), important, specificity));
-							}
-						}
-					}
-					else {
-						if (check(propN, important, specificity)) {
-							ICSSStyleDeclItem declItem = (ICSSStyleDeclItem) decl.getDeclItemNode(propName).cloneNode(true);
-							int nValues = declItem.getLength();
-							for (int j = 0; j < nValues; j++) {
-								conv.toAbsolute(declItem.item(j));
-							}
-							declItem.setPriority(null);
-							fProperties.put(propN, new CSSQueryDeclarationData(declItem, important, specificity));
-						}
-					}
-				}
-			}
-		}
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/htmlcss/CSSQueryDeclarationData.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/htmlcss/CSSQueryDeclarationData.java
deleted file mode 100644
index a156d20..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/htmlcss/CSSQueryDeclarationData.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.wst.html.core.internal.htmlcss;
-
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSStyleDeclItem;
-
-
-
-/**
- */
-public class CSSQueryDeclarationData extends CSSQueryValueData {
-
-
-	ICSSStyleDeclItem declItem;
-
-	public CSSQueryDeclarationData(ICSSStyleDeclItem declItem, boolean imp, int specificity) {
-		super(null, imp, specificity);
-		this.declItem = declItem;
-	}
-
-	/**
-	 */
-	ICSSStyleDeclItem getDeclItem() {
-		return declItem;
-	}
-
-	/**
-	 */
-	public String toString() {
-		if (value == null && declItem != null) {
-			value = declItem.getCSSValueText();
-		}
-		return value;
-	}
-
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/htmlcss/CSSQueryTraverser.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/htmlcss/CSSQueryTraverser.java
deleted file mode 100644
index 04f6b6d..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/htmlcss/CSSQueryTraverser.java
+++ /dev/null
@@ -1,115 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this 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.core.internal.htmlcss;
-
-
-
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSNode;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSSelector;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSSelectorList;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSStyleDeclaration;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSStyleRule;
-import org.eclipse.wst.css.core.internal.util.AbstractCssTraverser;
-import org.eclipse.wst.css.core.internal.util.CSSStyleDeclarationFactory;
-import org.w3c.dom.Element;
-import org.w3c.dom.css.ElementCSSInlineStyle;
-
-/**
- */
-public class CSSQueryTraverser extends AbstractCssTraverser {
-
-	private Element element;
-	private String pseudoName;
-	private CSSQueryContext context = null;
-	ICSSStyleDeclaration decl = null;
-
-	/**
-	 */
-	public ICSSStyleDeclaration getDeclaration() {
-		try {
-			ICSSStyleDeclaration inlineStyle = (ICSSStyleDeclaration) ((ElementCSSInlineStyle) element).getStyle();
-			if (inlineStyle != null) {
-				if (context == null) {
-					context = new CSSQueryContext();
-				}
-				context.overrideWithExpand(inlineStyle, 10000);
-				// style attribute's specificity is 100 (in CSS2 spec.) and
-				// our implement use 100 as base number (see CSSSelector.java)
-			}
-		}
-		catch (ClassCastException ex) {
-			// element is not ElementCSSInlineStyle ???
-		}
-		if (context == null)
-			return null;
-
-		if (decl == null)
-			decl = CSSStyleDeclarationFactory.getInstance().createStyleDeclaration();
-		context.applyFull(decl);
-		return decl;
-	}
-
-	/**
-	 */
-	private void overwriteDeclaration(ICSSStyleDeclaration d, int specificity) {
-		if (d == null)
-			return;
-		if (context == null)
-			context = new CSSQueryContext();
-		context.overrideWithExpand(d, specificity);
-	}
-
-	/**
-	 */
-	protected short postNode(ICSSNode node) {
-		return TRAV_CONT;
-	}
-
-	/**
-	 */
-	protected short preNode(ICSSNode node) {
-		if (node instanceof ICSSStyleRule) {
-			// style rule
-			ICSSStyleRule style = (ICSSStyleRule) node;
-			ICSSSelectorList list = style.getSelectors();
-			int nSelectors = list.getLength();
-			int maxSpecificity = -1;
-			for (int iSelector = 0; iSelector < nSelectors; iSelector++) {
-				// Check each Selector Lists
-				ICSSSelector selector = list.getSelector(iSelector);
-				int specificity = selector.getSpecificity();
-				if (maxSpecificity < specificity && selector.match(element, pseudoName)) {
-					maxSpecificity = specificity;
-				}
-			}
-			if (maxSpecificity >= 0) {
-				// apply this style to the element
-				overwriteDeclaration((ICSSStyleDeclaration) style.getStyle(), maxSpecificity);
-			}
-			return TRAV_PRUNE;
-		}
-		return TRAV_CONT;
-	}
-
-	/**
-	 */
-	private void resetContext() {
-		context = null;
-	}
-
-	/**
-	 */
-	public void setElement(Element element, String pseudoName) {
-		this.element = element;
-		this.pseudoName = pseudoName;
-		resetContext();
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/htmlcss/CSSQueryValueData.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/htmlcss/CSSQueryValueData.java
deleted file mode 100644
index edd74cd..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/htmlcss/CSSQueryValueData.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.html.core.internal.htmlcss;
-
-import org.eclipse.wst.css.core.internal.util.declaration.ValueData;
-
-
-
-/**
- */
-class CSSQueryValueData extends ValueData {
-
-	private int specificity;
-
-	/**
-	 */
-	public CSSQueryValueData() {
-		super();
-	}
-
-	/**
-	 */
-	public CSSQueryValueData(String val, boolean imp) {
-		super(val, imp);
-	}
-
-	/**
-	 */
-	public CSSQueryValueData(String val, boolean imp, int specificity) {
-		super(val, imp);
-		this.specificity = specificity;
-	}
-
-	/**
-	 */
-	int getSpecificity() {
-		return specificity;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/htmlcss/HTMLDocumentAdapter.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/htmlcss/HTMLDocumentAdapter.java
deleted file mode 100644
index 3aed14c..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/htmlcss/HTMLDocumentAdapter.java
+++ /dev/null
@@ -1,398 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this 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.core.internal.htmlcss;
-
-
-
-import java.util.ArrayList;
-import java.util.Collection;
-import java.util.Enumeration;
-import java.util.Iterator;
-import java.util.List;
-import java.util.Vector;
-
-import org.eclipse.wst.css.core.internal.provisional.adapters.IStyleSheetAdapter;
-import org.eclipse.wst.css.core.internal.provisional.adapters.IStyleSheetListAdapter;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSImportRule;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSModel;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSNode;
-import org.eclipse.wst.css.core.internal.util.CSSClassTraverser;
-import org.eclipse.wst.css.core.internal.util.ImportRuleCollector;
-import org.eclipse.wst.html.core.internal.contentmodel.JSP11Namespace;
-import org.eclipse.wst.html.core.internal.provisional.HTML40Namespace;
-import org.eclipse.wst.sse.core.internal.provisional.INodeAdapter;
-import org.eclipse.wst.sse.core.internal.provisional.INodeNotifier;
-import org.eclipse.wst.xml.core.internal.provisional.document.IDOMElement;
-import org.w3c.dom.Document;
-import org.w3c.dom.Element;
-import org.w3c.dom.Node;
-import org.w3c.dom.css.CSSStyleDeclaration;
-import org.w3c.dom.stylesheets.StyleSheet;
-import org.w3c.dom.stylesheets.StyleSheetList;
-
-
-
-/**
- */
-public class HTMLDocumentAdapter implements IStyleSheetListAdapter, StyleSheetList {
-
-	private Document document = null;
-	private Vector styleAdapters = null;
-	private Vector oldStyleAdapters = null;
-
-	/**
-	 */
-	HTMLDocumentAdapter() {
-		super();
-	}
-
-	/**
-	 */
-	private void addStyleSheet(Element node) {
-		IDOMElement element = (IDOMElement) node;
-		String tagName = element.getTagName();
-		if (tagName == null)
-			return;
-		boolean isContainer = false;
-		if (tagName.equalsIgnoreCase(HTML40Namespace.ElementName.HTML) || tagName.equalsIgnoreCase(HTML40Namespace.ElementName.HEAD) || tagName.equalsIgnoreCase(HTML40Namespace.ElementName.NOSCRIPT) || tagName.equalsIgnoreCase(HTML40Namespace.ElementName.BASE) || tagName.equalsIgnoreCase(JSP11Namespace.ElementName.ROOT) || (!element.isGlobalTag() && element.isContainer())) {
-			isContainer = true;
-		}
-		else if (element.isCommentTag()) {
-			Node parent = element.getParentNode();
-			if (parent == element.getOwnerDocument()) {
-				// This condition is too severe, actually do not work for JSF template.
-				// But above (! globalTag() && isContainer()) cover JSF template + tpl template
-				isContainer = true;
-			}
-			else if (parent.getNodeType() == Node.ELEMENT_NODE) {
-				tagName = ((Element) parent).getTagName();
-				if (tagName != null && tagName.equalsIgnoreCase(HTML40Namespace.ElementName.HEAD)) {
-					isContainer = true;
-				}
-			}
-		}
-
-		else {
-			String localName = element.getLocalName();
-			if (localName != null && localName.equalsIgnoreCase(HTML40Namespace.ElementName.HTML)) {
-				// taglib html tag
-				isContainer = true;
-			}
-			else {
-				INodeNotifier notifier = element;
-				INodeAdapter adapter = notifier.getAdapterFor(IStyleSheetAdapter.class);
-				if (adapter != null && adapter instanceof IStyleSheetAdapter) {
-					this.styleAdapters.addElement(adapter);
-				}
-			}
-		}
-		if (isContainer) {
-			INodeNotifier notifier = element;
-			if (notifier.getExistingAdapter(IStyleSheetListAdapter.class) == null) {
-				notifier.addAdapter(this);
-			}
-			for (Node child = element.getFirstChild(); child != null; child = child.getNextSibling()) {
-				if (child.getNodeType() != Node.ELEMENT_NODE)
-					continue;
-				addStyleSheet((Element) child);
-			}
-		}
-	}
-
-	/**
-	 */
-	void childReplaced() {
-		if (this.styleAdapters == null)
-			return;
-
-		// backup old adapters to be released on updating in getStyleSheets()
-		this.oldStyleAdapters = this.styleAdapters;
-		// invalidate the list
-		this.styleAdapters = null;
-
-		notifyStyleSheetsChanged(this.document);
-	}
-
-	/**
-	 */
-	public Enumeration getClasses() {
-		StyleSheetList sheetList = getStyleSheets();
-		int nSheets = sheetList.getLength();
-
-		final ArrayList classes = new ArrayList();
-
-		CSSClassTraverser traverser = new CSSClassTraverser();
-		traverser.setTraverseImported(true);
-
-		for (int i = 0; i < nSheets; i++) {
-			org.w3c.dom.stylesheets.StyleSheet sheet = sheetList.item(i);
-			if (sheet instanceof ICSSNode) {
-				traverser.apply((ICSSNode) sheet);
-			}
-		}
-		classes.addAll(traverser.getClassNames());
-
-		return new Enumeration() {
-			int i = 0;
-
-			public boolean hasMoreElements() {
-				return i < classes.size();
-			}
-
-			public Object nextElement() {
-				return classes.get(i++);
-			}
-		};
-	}
-
-	/**
-	 */
-	private List getValidAdapters() {
-		Vector validAdapters = new Vector();
-		if (this.styleAdapters != null) {
-			Iterator i = this.styleAdapters.iterator();
-			while (i.hasNext()) {
-				Object obj = i.next();
-				if (obj instanceof AbstractStyleSheetAdapter && ((AbstractStyleSheetAdapter) obj).isValidAttribute()) {
-					validAdapters.add(obj);
-				}
-			}
-		}
-		return validAdapters;
-	}
-
-	/**
-	 */
-	public int getLength() {
-		return getValidAdapters().size();
-	}
-
-	/**
-	 */
-	public CSSStyleDeclaration getOverrideStyle(Element element, String pseudoName) {
-		StyleSheetList ssl = getStyleSheets();
-		int numStyles = ssl.getLength();
-
-		CSSQueryTraverser query = new CSSQueryTraverser();
-		query.setTraverseImported(true);
-		query.setTraverseImportFirst(true);
-		query.setElement(element, pseudoName);
-
-		for (int i = 0; i < numStyles; i++) {
-			// loop for styles (<style> and <link>)
-			org.w3c.dom.stylesheets.StyleSheet ss = ssl.item(i);
-
-			try {
-				query.apply((ICSSNode) ss);
-			}
-			catch (ClassCastException ex) {
-				// I can handle only CSS style
-			}
-		}
-
-		return query.getDeclaration();
-	}
-
-	/**
-	 */
-	public StyleSheetList getStyleSheets() {
-		if (this.styleAdapters == null) {
-			if (this.document == null)
-				return null;
-
-			this.styleAdapters = new Vector();
-			for (Node child = this.document.getFirstChild(); child != null; child = child.getNextSibling()) {
-				if (child.getNodeType() != Node.ELEMENT_NODE)
-					continue;
-				addStyleSheet((Element) child);
-			}
-
-			removeOldStyleSheets();
-		}
-		return this;
-	}
-
-	/**
-	 * 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 == IStyleSheetListAdapter.class);
-	}
-
-	/**
-	 */
-	public StyleSheet item(int index) {
-		if (this.styleAdapters == null)
-			return null;
-
-		List validAdapters = getValidAdapters();
-
-		if (index < 0 || index >= validAdapters.size())
-			return null;
-		org.w3c.dom.stylesheets.StyleSheet sheet = ((IStyleSheetAdapter) validAdapters.get(index)).getSheet();
-		if (sheet == null) {// for LINK element whose link is broken
-			ICSSModel model = ((AbstractStyleSheetAdapter) this.styleAdapters.elementAt(index)).createModel();
-			sheet = ((model != null) ? (StyleSheet) model.getDocument() : null);
-		}
-		return sheet;
-	}
-
-	/**
-	 */
-	public void notifyChanged(INodeNotifier notifier, int eventType, Object changedFeature, Object oldValue, Object newValue, int pos) {
-		Node node = null;
-		switch (eventType) {
-			case INodeNotifier.ADD :
-				node = (Node) newValue;
-				break;
-			case INodeNotifier.REMOVE :
-				node = (Node) oldValue;
-				break;
-			case INodeNotifier.CHANGE :
-				node = (Node) notifier;
-				break;
-			default :
-				break;
-		}
-		if (node == null || node.getNodeType() != Node.ELEMENT_NODE)
-			return;
-		IDOMElement element = (IDOMElement) node;
-		String tagName = element.getTagName();
-		if (tagName == null)
-			return;
-
-		if (eventType == INodeNotifier.CHANGE) {
-			if (tagName.equalsIgnoreCase(HTML40Namespace.ElementName.BASE)) {
-				refreshAdapters();
-			}
-		}
-		else {
-			if (tagName.equalsIgnoreCase(HTML40Namespace.ElementName.HTML) || tagName.equalsIgnoreCase(HTML40Namespace.ElementName.HEAD) || tagName.equalsIgnoreCase(HTML40Namespace.ElementName.STYLE) || tagName.equalsIgnoreCase(HTML40Namespace.ElementName.LINK) || tagName.equalsIgnoreCase(HTML40Namespace.ElementName.NOSCRIPT) || tagName.equalsIgnoreCase(JSP11Namespace.ElementName.ROOT) || element.isCommentTag() || (!element.isGlobalTag() && element.isContainer())) {
-				childReplaced();
-			}
-			else if (tagName.equalsIgnoreCase(HTML40Namespace.ElementName.BASE)) {
-				refreshAdapters();
-			}
-			else {
-				String localName = element.getLocalName();
-				if (localName != null && localName.equalsIgnoreCase(HTML40Namespace.ElementName.HTML)) {
-					// taglib html tag
-					childReplaced();
-				}
-			}
-		}
-	}
-
-	/**
-	 * reload LINK / @import if BASE changed
-	 */
-	private void refreshAdapters() {
-		Iterator iAdapter = this.styleAdapters.iterator();
-		while (iAdapter.hasNext()) {
-			Object adapter = iAdapter.next();
-			if (adapter instanceof LinkElementAdapter) {
-				((LinkElementAdapter) adapter).refreshSheet();
-			}
-			else if (adapter instanceof StyleElementAdapter) {
-				ICSSModel model = ((StyleElementAdapter) adapter).getModel();
-				ImportRuleCollector trav = new ImportRuleCollector();
-				trav.apply(model);
-				Iterator iRule = trav.getRules().iterator();
-				while (iRule.hasNext()) {
-					ICSSImportRule rule = (ICSSImportRule) iRule.next();
-					rule.refreshStyleSheet();
-				}
-			}
-		}
-	}
-
-	/**
-	 */
-	private void notifyStyleSheetsChanged(Document target) {
-		INodeNotifier notifier = (INodeNotifier) target;
-		if (notifier == null)
-			return;
-		Collection adapters = notifier.getAdapters();
-		if (adapters == null)
-			return;
-		Iterator it = adapters.iterator();
-		if (it == null)
-			return;
-		while (it.hasNext()) {
-			INodeAdapter adapter = (INodeAdapter) it.next();
-			if (adapter instanceof StyleListener) {
-				StyleListener listener = (StyleListener) adapter;
-				listener.styleChanged();
-			}
-		}
-	}
-
-	/**
-	 */
-	private void releaseOldStyleSheets() {
-		if (this.oldStyleAdapters == null)
-			return;
-		Iterator it = this.oldStyleAdapters.iterator();
-		while (it.hasNext()) {
-			IStyleSheetAdapter adapter = (IStyleSheetAdapter) it.next();
-			if (adapter == null)
-				continue;
-			// if the same adapter is in the current list,
-			// do not release
-			if (this.styleAdapters != null && this.styleAdapters.contains(adapter))
-				continue;
-			adapter.released();
-		}
-		this.oldStyleAdapters = null;
-	}
-
-	/**
-	 */
-	public void releaseStyleSheets() {
-		releaseOldStyleSheets();
-
-		if (this.styleAdapters == null)
-			return;
-		Iterator it = this.styleAdapters.iterator();
-		while (it.hasNext()) {
-			IStyleSheetAdapter adapter = (IStyleSheetAdapter) it.next();
-			if (adapter != null)
-				adapter.released();
-		}
-		this.styleAdapters = null;
-	}
-
-	/**
-	 */
-	private void removeOldStyleSheets() {
-		if (this.oldStyleAdapters == null)
-			return;
-		Iterator it = this.oldStyleAdapters.iterator();
-		while (it.hasNext()) {
-			IStyleSheetAdapter adapter = (IStyleSheetAdapter) it.next();
-			if (adapter == null)
-				continue;
-			// if the same adapter is in the current list,
-			// do not release
-			if (this.styleAdapters != null && this.styleAdapters.contains(adapter))
-				continue;
-			adapter.removed();
-		}
-		this.oldStyleAdapters = null;
-	}
-
-	/**
-	 */
-	void setDocument(Document document) {
-		this.document = document;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/htmlcss/HTMLStyleSelectorAdapter.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/htmlcss/HTMLStyleSelectorAdapter.java
deleted file mode 100644
index ba48234..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/htmlcss/HTMLStyleSelectorAdapter.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.html.core.internal.htmlcss;
-
-
-
-import java.util.StringTokenizer;
-
-import org.eclipse.wst.css.core.internal.provisional.adapters.IStyleSelectorAdapter;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSSimpleSelector;
-import org.eclipse.wst.sse.core.internal.provisional.INodeNotifier;
-import org.w3c.dom.Element;
-
-/**
- * Insert the type's description here.
- */
-public class HTMLStyleSelectorAdapter implements IStyleSelectorAdapter {
-
-	static private HTMLStyleSelectorAdapter instance;
-	private Object toMatch = IStyleSelectorAdapter.class;
-
-	public synchronized static HTMLStyleSelectorAdapter getInstance() {
-		if (instance == null) {
-			instance = new HTMLStyleSelectorAdapter();
-		}
-		return instance;
-	}
-
-	public boolean isAdapterForType(Object type) {
-		return type == toMatch;
-	}
-
-	public boolean match(ICSSSimpleSelector selector, Element element, String pseudoName) {
-		if (element == null)
-			return false;
-		int i;
-		String key;
-
-		// PseudoName
-		i = selector.getNumOfPseudoNames();
-		if (i > 0) {
-			if (pseudoName == null || pseudoName.length() == 0)
-				return false;
-			for (i = i - 1; i >= 0; i--) {
-				if (pseudoName.equalsIgnoreCase(selector.getPseudoName(i))) {
-					break;
-				}
-			}
-			if (i < 0)
-				return false;
-		}
-
-		// check tag name
-		if (!selector.isUniversal() && !element.getNodeName().equalsIgnoreCase(selector.getName()))
-			return false;
-
-		// check id
-		i = selector.getNumOfIDs();
-		if (i > 0) {
-			if (i > 1)
-				return false;
-			key = element.getAttribute("id");//$NON-NLS-1$
-			if (key == null)
-				return false;
-			if (!selector.getID(0).equals(key))
-				return false;
-		}
-
-		// check class
-		i = selector.getNumOfClasses();
-		if (i > 0) {
-			key = element.getAttribute("class");//$NON-NLS-1$
-			if (key == null)
-				return false;
-			StringTokenizer tokenizer = new StringTokenizer(key);
-			for (i = i - 1; i >= 0; i--) {
-				boolean ok = false;
-				while (tokenizer.hasMoreTokens()) {
-					if (selector.getClass(i).equals(tokenizer.nextToken())) {
-						ok = true;
-						break;
-					}
-				}
-				if (!ok)
-					return false;
-			}
-		}
-
-		// check attributes
-		for (i = selector.getNumOfAttributes() - 1; i >= 0; i--) {
-			StringTokenizer tokenizer = new StringTokenizer(selector.getAttribute(i), "=~| \t\r\n\f");//$NON-NLS-1$
-			int countTokens = tokenizer.countTokens();
-			if (countTokens > 0) {
-				String attrValue = element.getAttribute(tokenizer.nextToken());
-				if (attrValue == null)
-					return false;
-				if (countTokens > 1) {
-					String token = tokenizer.nextToken("= \t\r\n\f");//$NON-NLS-1$
-					StringTokenizer attrValueTokenizer = null;
-					if (token.equals("~")) {//$NON-NLS-1$
-						attrValueTokenizer = new StringTokenizer(attrValue);
-					}
-					else if (token.equals("|")) {//$NON-NLS-1$
-						attrValueTokenizer = new StringTokenizer(attrValue, "-");//$NON-NLS-1$
-					}
-					if (attrValueTokenizer != null) {
-						if (tokenizer.hasMoreTokens()) {
-							token = tokenizer.nextToken();
-							boolean ok = false;
-							while (attrValueTokenizer.hasMoreTokens()) {
-								if (token.equals(attrValueTokenizer.nextToken())) {
-									ok = true;
-									break;
-								}
-							}
-							if (!ok)
-								return false;
-						}
-					}
-					else {
-						if (!attrValue.equals(token))
-							return false;
-					}
-				}
-			}
-		}
-
-		return true;
-	}
-
-	public void notifyChanged(INodeNotifier notifier, int eventType, Object changedFeature, Object oldValue, Object newValue, int pos) {
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/htmlcss/HTMLStyleSelectorAdapterFactory.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/htmlcss/HTMLStyleSelectorAdapterFactory.java
deleted file mode 100644
index 4c66fbf..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/htmlcss/HTMLStyleSelectorAdapterFactory.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.wst.html.core.internal.htmlcss;
-
-
-
-import org.eclipse.wst.css.core.internal.provisional.adapters.IStyleSelectorAdapter;
-import org.eclipse.wst.sse.core.internal.provisional.INodeAdapter;
-import org.eclipse.wst.sse.core.internal.provisional.INodeAdapterFactory;
-import org.eclipse.wst.sse.core.internal.provisional.INodeNotifier;
-
-/**
- * Insert the type's description here.
- */
-public class HTMLStyleSelectorAdapterFactory implements INodeAdapterFactory {
-
-	private static HTMLStyleSelectorAdapterFactory instance;
-	private Object toMatch = IStyleSelectorAdapter.class;
-
-	/**
-	 * CSSModelProvideAdapterFactory constructor comment.
-	 */
-	public HTMLStyleSelectorAdapterFactory() {
-		super();
-	}
-
-	/**
-	 * Method that returns the adapter associated with the given object.
-	 * It may be a singleton or not ... depending on the needs of the INodeAdapter  ...
-	 * but in general it is recommended for an adapter to be stateless, 
-	 * so the efficiencies of a singleton can be gained.
-	 *
-	 * The implementation of this method should call addAdapter on the adapted
-	 * object with the correct instance of the adapter.
-	 */
-	public INodeAdapter adapt(INodeNotifier notifier) {
-		INodeAdapter adapter = notifier.getExistingAdapter(IStyleSelectorAdapter.class);
-		if (adapter != null)
-			return adapter;
-		adapter = HTMLStyleSelectorAdapter.getInstance();
-		notifier.addAdapter(adapter);
-		return adapter;
-	}
-
-	public synchronized static HTMLStyleSelectorAdapterFactory getInstance() {
-		if (instance == null)
-			instance = new HTMLStyleSelectorAdapterFactory();
-		return instance;
-	}
-
-	/**
-	 * isFactoryForType method comment.
-	 */
-	public boolean isFactoryForType(Object type) {
-		return type == toMatch;
-	}
-
-	public void release() {
-		// default is to do nothing
-	}
-
-	/**
-	 * Overriding copy method
-	 */
-	public INodeAdapterFactory copy() {
-		return getInstance();
-	}
-
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/htmlcss/LinkElementAdapter.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/htmlcss/LinkElementAdapter.java
deleted file mode 100644
index 3156ed7..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/htmlcss/LinkElementAdapter.java
+++ /dev/null
@@ -1,272 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this 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.core.internal.htmlcss;
-import java.io.IOException;
-import java.io.UnsupportedEncodingException;
-
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.core.runtime.Path;
-import org.eclipse.wst.css.core.internal.provisional.adapters.IModelProvideAdapter;
-import org.eclipse.wst.css.core.internal.provisional.adapters.IStyleSheetListAdapter;
-import org.eclipse.wst.css.core.internal.provisional.contenttype.ContentTypeIdForCSS;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSModel;
-import org.eclipse.wst.sse.core.internal.provisional.INodeNotifier;
-import org.eclipse.wst.sse.core.internal.provisional.IStructuredModel;
-import org.eclipse.wst.sse.core.internal.util.URIResolver;
-import org.eclipse.wst.xml.core.internal.provisional.document.IDOMModel;
-import org.eclipse.wst.xml.core.internal.provisional.document.IDOMNode;
-import org.w3c.dom.Attr;
-import org.w3c.dom.Document;
-import org.w3c.dom.Element;
-
-/**
- */
-public class LinkElementAdapter extends AbstractStyleSheetAdapter {
-
-	private final static String CSS_ID = ContentTypeIdForCSS.ContentTypeID_CSS;
-	private boolean replaceModel = true;
-	// this variable to hold the class is just a VAJava trick.
-	// it improves performance in VAJava by minimizing class loading.
-	private final Class ModelProvideAdapterClass = IModelProvideAdapter.class;
-
-	/**
-	 */
-	protected LinkElementAdapter() {
-		super();
-	}
-
-	/**
-	 */
-	private void attrReplaced() {
-		this.replaceModel = true;
-
-		Element element = getElement();
-		if (element == null)
-			return; // error
-		Document document = element.getOwnerDocument();
-		if (document == null)
-			return; // error
-		INodeNotifier notifier = (INodeNotifier) document;
-		HTMLDocumentAdapter adapter = (HTMLDocumentAdapter) notifier.getAdapterFor(IStyleSheetListAdapter.class);
-		if (adapter == null)
-			return;
-		adapter.childReplaced();
-	}
-
-	protected ICSSModel createModel() {
-		// create phantom(broken link) external CSS model
-		if (getElement() == null)
-			return null;
-		IStructuredModel baseModel = ((IDOMNode) getElement()).getModel();
-		ICSSModel newModel = (ICSSModel) baseModel.getModelManager().createUnManagedStructuredModelFor(CSS_ID);
-
-		// calculate base location and set
-		// get resolver in Model
-		URIResolver resolver = baseModel.getResolver();
-
-		// resolve to absolute url : this need not exact location of css file. It is important that absurl is not null. 
-		String ref = getElement().getAttribute(org.eclipse.wst.html.core.internal.provisional.HTML40Namespace.ATTR_NAME_HREF);
-		String absurl = (resolver != null && ref != null) ? resolver.getLocationByURI(ref, true) : null;
-		if ((absurl == null) || (absurl.length() == 0)) {
-			IPath basePath = new Path(baseModel.getBaseLocation());
-			URLHelper helper = new URLHelper(basePath.removeLastSegments(1).toString());
-			absurl = helper.toAbsolute(ref == null ? "" : ref);//$NON-NLS-1$
-		}
-		if ((absurl == null) || (absurl.length() == 0)) {
-			absurl = ref;
-		}
-		if (absurl == null) {
-			absurl = "";//$NON-NLS-1$
-		}
-		newModel.setBaseLocation(absurl);
-
-		// set style listener
-		newModel.addStyleListener(this);
-
-		return newModel;
-	}
-
-	/**
-	 */
-	public ICSSModel getModel() {
-		ICSSModel model = getExistingModel();
-		if (this.replaceModel) {
-			ICSSModel oldModel = model;
-
-			model = retrieveModel();
-			setModel(model);
-
-			// release old model
-			if (oldModel != null) {
-				// get ModelProvideAdapter
-				IModelProvideAdapter adapter = (IModelProvideAdapter) ((INodeNotifier) getElement()).getAdapterFor(IModelProvideAdapter.class);
-				adapter.modelRemoved(oldModel);
-
-				oldModel.releaseFromRead();
-
-			}
-			this.replaceModel = false;
-		}
-		return model;
-	}
-
-	/**
-	 */
-	public void notifyChanged(INodeNotifier notifier, int eventType, Object changedFeature, Object oldValue, Object newValue, int pos) {
-		if (eventType != INodeNotifier.CHANGE)
-			return;
-		Attr attr = (Attr) changedFeature;
-		if (attr == null)
-			return;
-		String name = attr.getName();
-		if (name.equalsIgnoreCase("rel") || //$NON-NLS-1$
-					name.equalsIgnoreCase("type") || //$NON-NLS-1$	
-					name.equalsIgnoreCase("href")) {//$NON-NLS-1$
-			attrReplaced();
-		}
-	}
-
-	/**
-	 */
-	public void refreshSheet() {
-		if (!replaceModel) {
-			removed();
-			replaceModel = true;
-
-			IDOMNode node = (IDOMNode) getElement();
-			if (node != null) {
-				node.notify(INodeNotifier.CHANGE, getElement().getAttributeNode(org.eclipse.wst.html.core.internal.provisional.HTML40Namespace.ATTR_NAME_HREF), null, null, node.getStartOffset());
-			}
-		}
-	}
-
-	/**
-	 */
-	public void released() {
-		ICSSModel model = getExistingModel();
-		if (model != null) {
-			try {
-				// get ModelProvideAdapter
-				IModelProvideAdapter adapter = (IModelProvideAdapter) ((INodeNotifier) getElement()).getAdapterFor(IModelProvideAdapter.class);
-
-				// set element to null first, so that no document wide updates
-				setElement(null);
-				setModel(null);
-
-				if (adapter != null)
-					adapter.modelReleased(model);
-			}
-			finally {
-				model.releaseFromRead();
-			}
-		}
-		this.replaceModel = false;
-	}
-
-	/**
-	 */
-	public void removed() {
-		ICSSModel model = getExistingModel();
-		if (model != null) {
-			try {
-				setModel(null);
-
-				// get ModelProvideAdapter
-				IModelProvideAdapter adapter = (IModelProvideAdapter) ((INodeNotifier) getElement()).getAdapterFor(IModelProvideAdapter.class);
-				if (adapter != null)
-					adapter.modelRemoved(model);
-			}
-			finally {
-				model.releaseFromRead();
-			}
-		}
-		this.replaceModel = false;
-	}
-
-	/**
-	 */
-	protected boolean isValidAttribute() {
-		Element element = getElement();
-		if (element == null)
-			return false;
-		String rel = element.getAttribute("rel");//$NON-NLS-1$
-		if (rel == null || !rel.equalsIgnoreCase("stylesheet"))//$NON-NLS-1$
-			return false;
-		String type = element.getAttribute("type");//$NON-NLS-1$
-		if (type != null && !type.equalsIgnoreCase("text/css"))//$NON-NLS-1$
-			return false;
-		String href = element.getAttribute("href");//$NON-NLS-1$
-		if (href == null || href.length() == 0)
-			return false;
-		return true;
-	}
-
-	/**
-	 */
-	private ICSSModel retrieveModel() {
-		if (!isValidAttribute()) {
-			return null;
-		}
-
-		// null,attr check is done in isValidAttribute()
-		Element element = getElement();
-		String href = element.getAttribute("href");//$NON-NLS-1$
-
-		IDOMModel baseModel = ((IDOMNode) element).getModel();
-		if (baseModel == null)
-			return null;
-		Object id = baseModel.getId();
-		if (!(id instanceof String))
-			return null;
-		//String base = (String)id;
-
-		// get ModelProvideAdapter
-		IModelProvideAdapter adapter = (IModelProvideAdapter) ((INodeNotifier) getElement()).getAdapterFor(ModelProvideAdapterClass);
-
-		URLModelProvider provider = new URLModelProvider();
-		try {
-			IStructuredModel newModel = provider.getModelForRead(baseModel, href);
-			if (newModel == null)
-				return null;
-			if (!(newModel instanceof ICSSModel)) {
-				newModel.releaseFromRead();
-				return null;
-			}
-
-			// notify adapter
-			if (adapter != null)
-				adapter.modelProvided(newModel);
-
-			return (ICSSModel) newModel;
-		}
-		catch (UnsupportedEncodingException e) {
-		}
-		catch (IOException e) {
-		}
-
-		return null;
-	}
-
-	/**
-	 */
-	protected void setModel(ICSSModel model) {
-		ICSSModel oldModel = getExistingModel();
-		if (model == oldModel)
-			return;
-		super.setModel(model);
-		if (this.replaceModel)
-			this.replaceModel = false;
-		if (oldModel != null)
-			oldModel.removeStyleListener(this);
-		if (model != null)
-			model.addStyleListener(this);
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/htmlcss/StyleAdapterFactory.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/htmlcss/StyleAdapterFactory.java
deleted file mode 100644
index 83318df..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/htmlcss/StyleAdapterFactory.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.wst.html.core.internal.htmlcss;
-
-
-
-import org.eclipse.wst.css.core.internal.provisional.adapters.IStyleDeclarationAdapter;
-import org.eclipse.wst.css.core.internal.provisional.adapters.IStyleSheetAdapter;
-import org.eclipse.wst.css.core.internal.provisional.adapters.IStyleSheetListAdapter;
-import org.eclipse.wst.html.core.internal.provisional.HTML40Namespace;
-import org.eclipse.wst.sse.core.internal.provisional.INodeAdapter;
-import org.eclipse.wst.sse.core.internal.provisional.INodeAdapterFactory;
-import org.eclipse.wst.sse.core.internal.provisional.INodeNotifier;
-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.eclipse.wst.xml.core.internal.contentmodel.modelquery.ModelQuery;
-import org.eclipse.wst.xml.core.internal.modelquery.ModelQueryUtil;
-import org.w3c.dom.Document;
-import org.w3c.dom.Element;
-import org.w3c.dom.Node;
-
-/**
- */
-public class StyleAdapterFactory implements INodeAdapterFactory {
-
-	private static StyleAdapterFactory instance = null;
-
-	//	private static String CSS_CONTENT_TYPE = "text/css";//$NON-NLS-1$
-	/**
-	 */
-	private StyleAdapterFactory() {
-		super();
-	}
-
-	/**
-	 */
-	public INodeAdapter adapt(INodeNotifier notifier) {
-		if (notifier == null)
-			return null;
-
-		Node node = (Node) notifier;
-		short nodeType = node.getNodeType();
-		if (nodeType == Node.DOCUMENT_NODE) {
-			INodeAdapter adapter = notifier.getExistingAdapter(IStyleSheetListAdapter.class);
-			if (adapter != null)
-				return adapter;
-			HTMLDocumentAdapter newAdapter = new HTMLDocumentAdapter();
-			newAdapter.setDocument((Document) node);
-			notifier.addAdapter(newAdapter);
-			return newAdapter;
-		}
-		if (nodeType != Node.ELEMENT_NODE)
-			return null;
-
-		Element element = (Element) node;
-		String tagName = element.getTagName();
-		if (tagName.equalsIgnoreCase(HTML40Namespace.ElementName.STYLE)) {
-			if (!isTagAvailable(element.getOwnerDocument(), HTML40Namespace.ElementName.STYLE)) {
-				return null;
-			}
-			//		String type = element.getAttribute(HTML40Namespace.ATTR_NAME_TYPE);
-			//		if (type != null && ! type.equalsIgnoreCase(CSS_CONTENT_TYPE)) {
-			//			return null;
-			//		}
-			INodeAdapter adapter = notifier.getExistingAdapter(IStyleSheetAdapter.class);
-			if (adapter != null)
-				return adapter;
-			StyleElementAdapter newAdapter = new StyleElementAdapter();
-			newAdapter.setElement(element);
-			notifier.addAdapter(newAdapter);
-			return newAdapter;
-		}
-		else if (tagName.equalsIgnoreCase(HTML40Namespace.ElementName.LINK)) {
-			if (!isTagAvailable(element.getOwnerDocument(), HTML40Namespace.ElementName.LINK)) {
-				return null;
-			}
-			INodeAdapter adapter = notifier.getExistingAdapter(IStyleSheetAdapter.class);
-			if (adapter != null)
-				return adapter;
-			LinkElementAdapter newAdapter = new LinkElementAdapter();
-			newAdapter.setElement(element);
-			notifier.addAdapter(newAdapter);
-			return newAdapter;
-		}
-
-		INodeAdapter adapter = notifier.getExistingAdapter(IStyleDeclarationAdapter.class);
-		if (adapter != null)
-			return adapter;
-
-		if (!isAttributeAvailable(element, HTML40Namespace.ATTR_NAME_STYLE)) {
-			return null;
-		}
-		StyleAttrAdapter newAdapter = new StyleAttrAdapter();
-		newAdapter.setElement(element);
-		notifier.addAdapter(newAdapter);
-		return newAdapter;
-	}
-
-	/**
-	 */
-	public synchronized static StyleAdapterFactory getInstance() {
-		if (instance == null)
-			instance = new StyleAdapterFactory();
-		return instance;
-	}
-
-	/**
-	 */
-	public boolean isFactoryForType(Object type) {
-		return (type == IStyleSheetAdapter.class || type == IStyleDeclarationAdapter.class || type == IStyleSheetListAdapter.class);
-	}
-
-	public void release() {
-		// default is to do nothing
-	}
-
-	private static boolean isTagAvailable(Document document, String elementName) {
-		ModelQuery modelQuery = ModelQueryUtil.getModelQuery(document);
-		if (modelQuery != null) {
-			CMDocument cmdoc = modelQuery.getCorrespondingCMDocument(document);
-			CMNamedNodeMap map = cmdoc.getElements();
-			if ((CMElementDeclaration) map.getNamedItem(elementName) != null) {
-				return true;
-			}
-		}
-
-		return false;
-	}
-
-	private static boolean isAttributeAvailable(Element element, String attrName) {
-		ModelQuery modelQuery = ModelQueryUtil.getModelQuery(element.getOwnerDocument());
-		if (modelQuery != null) {
-			CMElementDeclaration decl = modelQuery.getCMElementDeclaration(element);
-			if (decl != null) {
-				CMNamedNodeMap map = decl.getAttributes();
-				if ((CMAttributeDeclaration) map.getNamedItem(attrName) != null) {
-					return true;
-				}
-			}
-		}
-
-		return false;
-	}
-
-	/**
-	 * Overriding Object's clone() method
-	 */
-	public INodeAdapterFactory copy() {
-		return getInstance();
-	}
-
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/htmlcss/StyleAttrAdapter.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/htmlcss/StyleAttrAdapter.java
deleted file mode 100644
index db14d1c..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/htmlcss/StyleAttrAdapter.java
+++ /dev/null
@@ -1,248 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this 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.core.internal.htmlcss;
-
-
-
-import org.eclipse.wst.css.core.internal.parser.CSSSourceParser;
-import org.eclipse.wst.css.core.internal.provisional.adapters.IStyleDeclarationAdapter;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSModel;
-import org.eclipse.wst.sse.core.internal.ltk.parser.RegionParser;
-import org.eclipse.wst.sse.core.internal.provisional.INodeNotifier;
-import org.eclipse.wst.sse.core.internal.provisional.events.IStructuredDocumentListener;
-import org.eclipse.wst.sse.core.internal.provisional.events.NewDocumentEvent;
-import org.eclipse.wst.sse.core.internal.provisional.events.NoChangeEvent;
-import org.eclipse.wst.sse.core.internal.provisional.events.RegionChangedEvent;
-import org.eclipse.wst.sse.core.internal.provisional.events.RegionsReplacedEvent;
-import org.eclipse.wst.sse.core.internal.provisional.events.StructuredDocumentRegionsReplacedEvent;
-import org.eclipse.wst.sse.core.internal.provisional.text.IStructuredDocument;
-import org.eclipse.wst.sse.core.internal.provisional.text.IStructuredDocumentRegion;
-import org.eclipse.wst.sse.core.internal.provisional.text.IStructuredDocumentRegionList;
-import org.eclipse.wst.xml.core.internal.provisional.document.IDOMNode;
-import org.w3c.dom.Attr;
-import org.w3c.dom.Document;
-import org.w3c.dom.Element;
-import org.w3c.dom.css.CSSStyleDeclaration;
-
-/**
- */
-public class StyleAttrAdapter extends AbstractCSSModelAdapter implements IStructuredDocumentListener, IStyleDeclarationAdapter {
-
-	private boolean ignoreNotification = false;
-	private final static String STYLE = "style";//$NON-NLS-1$
-
-	/**
-	 */
-	StyleAttrAdapter() {
-		super();
-	}
-
-	/**
-	 */
-	public ICSSModel getModel() {
-		ICSSModel model = getExistingModel();
-		if (model == null && isModelNecessary()) {
-			model = createModel();
-			if (model == null)
-				return null;
-			
-			IStructuredDocument structuredDocument = model.getStructuredDocument();
-			if (structuredDocument == null)
-				return null;
-
-			RegionParser parser = structuredDocument.getParser();
-			if (parser instanceof CSSSourceParser) {
-				((CSSSourceParser)parser).setParserMode(CSSSourceParser.MODE_DECLARATION);
-			} else {
-				return null;
-			}
-			
-			structuredDocument.addDocumentChangedListener(this);
-
-			setModel(model); // need to set before valueChanged()
-			valueChanged();
-		}
-		if (model != null && !isModelNecessary()) {
-			model = null;
-			valueChanged();
-		}
-		return model;
-	}
-
-	/**
-	 */
-	public CSSStyleDeclaration getStyle() {
-		ICSSModel model = getModel();
-		if (model == null)
-			return null;
-		return (CSSStyleDeclaration) model.getDocument();
-	}
-
-	/**
-	 * 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 == IStyleDeclarationAdapter.class);
-	}
-
-	/**
-	 */
-	public void newModel(NewDocumentEvent event) {
-		if (event == null)
-			return;
-		if (event.getOriginalRequester() == this)
-			return;
-
-		setValue();
-	}
-
-	/**
-	 */
-	public void noChange(NoChangeEvent structuredDocumentEvent) {
-	}
-
-	/**
-	 */
-	public void nodesReplaced(StructuredDocumentRegionsReplacedEvent event) {
-		if (event == null)
-			return;
-		if (event.getOriginalRequester() == this)
-			return;
-
-		setValue();
-	}
-
-	/**
-	 */
-	public void notifyChanged(INodeNotifier notifier, int eventType, Object changedFeature, Object oldValue, Object newValue, int pos) {
-		if (this.ignoreNotification)
-			return;
-
-		if (eventType != INodeNotifier.CHANGE)
-			return;
-		Attr attr = (Attr) changedFeature;
-		if (attr == null)
-			return;
-		String name = attr.getName();
-		if (name.equalsIgnoreCase(STYLE)) {
-			valueChanged();
-		}
-	}
-
-	/**
-	 */
-	public void regionChanged(RegionChangedEvent event) {
-		if (event == null)
-			return;
-		if (event.getOriginalRequester() == this)
-			return;
-
-		setValue();
-	}
-
-	/**
-	 */
-	public void regionsReplaced(RegionsReplacedEvent event) {
-		if (event == null)
-			return;
-		if (event.getOriginalRequester() == this)
-			return;
-
-		setValue();
-	}
-
-	/**
-	 */
-	private void setValue() {
-		Element element = getElement();
-		if (element == null)
-			return;
-		ICSSModel model = getExistingModel();
-		if (model == null)
-			return;
-		IStructuredDocument structuredDocument = model.getStructuredDocument();
-		if (structuredDocument == null)
-			return;
-
-		String value = null;
-		IStructuredDocumentRegionList flatNodes = structuredDocument.getRegionList();
-		if (flatNodes != null) {
-			int count = flatNodes.getLength();
-			if (count > 0) {
-				StringBuffer buffer = new StringBuffer();
-				for (int i = 0; i < count; i++) {
-					IStructuredDocumentRegion flatNode = flatNodes.item(i);
-					if (flatNode == null)
-						continue;
-					buffer.append(flatNode.getText());
-				}
-				value = buffer.toString();
-			}
-		}
-
-		this.ignoreNotification = true;
-		if (value == null || value.length() == 0) {
-			element.removeAttribute(STYLE);
-		}
-		else {
-			Attr attr = element.getAttributeNode(STYLE);
-			if (attr != null) {
-				((IDOMNode) attr).setValueSource(value);
-			}
-			else {
-				Document document = element.getOwnerDocument();
-				attr = document.createAttribute(STYLE);
-				((IDOMNode) attr).setValueSource(value);
-				element.setAttributeNode(attr);
-			}
-		}
-		this.ignoreNotification = false;
-
-		notifyStyleChanged(element);
-	}
-
-	/**
-	 */
-	private void valueChanged() {
-		Element element = getElement();
-		if (element == null)
-			return;
-		if (!isModelNecessary()) { // removed
-			setModel(null);
-
-			notifyStyleChanged(element);
-			return;
-		}
-
-		ICSSModel model = getExistingModel();
-		if (model == null)
-			return; // defer
-		IStructuredDocument structuredDocument = model.getStructuredDocument();
-		if (structuredDocument == null)
-			return; // error
-
-		String value = null;
-		Attr attr = element.getAttributeNode(org.eclipse.wst.html.core.internal.provisional.HTML40Namespace.ATTR_NAME_STYLE);
-		if (attr != null)
-			value = ((IDOMNode) attr).getValueSource();
-		structuredDocument.setText(this, value);
-
-		notifyStyleChanged(element);
-	}
-
-	/**
-	 * @return boolean
-	 */
-	private boolean isModelNecessary() {
-		return getElement() != null && getElement().getAttributeNode(org.eclipse.wst.html.core.internal.provisional.HTML40Namespace.ATTR_NAME_STYLE) != null;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/htmlcss/StyleElementAdapter.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/htmlcss/StyleElementAdapter.java
deleted file mode 100644
index 73e378f..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/htmlcss/StyleElementAdapter.java
+++ /dev/null
@@ -1,411 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this 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.core.internal.htmlcss;
-
-
-
-import org.eclipse.wst.css.core.internal.provisional.adapters.IModelProvideAdapter;
-import org.eclipse.wst.css.core.internal.provisional.adapters.IStyleSheetListAdapter;
-import org.eclipse.wst.css.core.internal.provisional.document.ICSSModel;
-import org.eclipse.wst.html.core.internal.provisional.HTML40Namespace;
-import org.eclipse.wst.sse.core.internal.provisional.INodeNotifier;
-import org.eclipse.wst.sse.core.internal.provisional.events.IStructuredDocumentListener;
-import org.eclipse.wst.sse.core.internal.provisional.events.NewDocumentEvent;
-import org.eclipse.wst.sse.core.internal.provisional.events.NoChangeEvent;
-import org.eclipse.wst.sse.core.internal.provisional.events.RegionChangedEvent;
-import org.eclipse.wst.sse.core.internal.provisional.events.RegionsReplacedEvent;
-import org.eclipse.wst.sse.core.internal.provisional.events.StructuredDocumentRegionsReplacedEvent;
-import org.eclipse.wst.sse.core.internal.provisional.text.IStructuredDocument;
-import org.eclipse.wst.sse.core.internal.provisional.text.IStructuredDocumentRegion;
-import org.eclipse.wst.sse.core.internal.provisional.text.IStructuredDocumentRegionList;
-import org.eclipse.wst.xml.core.internal.provisional.document.IDOMModel;
-import org.eclipse.wst.xml.core.internal.provisional.document.IDOMNode;
-import org.w3c.dom.Attr;
-import org.w3c.dom.Document;
-import org.w3c.dom.Element;
-import org.w3c.dom.Node;
-
-/**
- */
-public class StyleElementAdapter extends AbstractStyleSheetAdapter implements IStructuredDocumentListener {
-
-	private boolean replaceModel = true;
-	private boolean ignoreNotification = false;
-
-	/**
-	 */
-	protected StyleElementAdapter() {
-		super();
-	}
-
-	/**
-	 * Preparation of applying changes from CSS sub-model to HTML model
-	 */
-	private void changeStructuredDocumentRegion(IStructuredDocumentRegion flatNode) {
-		if (flatNode == null)
-			return;
-		Element element = getElement();
-		if (element == null)
-			return;
-		ICSSModel model = getExistingModel();
-		if (model == null)
-			return;
-		IStructuredDocument structuredDocument = model.getStructuredDocument();
-		if (structuredDocument == null)
-			return;
-
-		// get old content length
-		Node child = element.getFirstChild();
-		if (child == null || child.getNodeType() != Node.TEXT_NODE)
-			return;
-		IDOMNode content = (IDOMNode) child;
-		int oldLength = content.getEndOffset() - content.getStartOffset();
-
-		// get new content length
-		int newLength = 0;
-		IStructuredDocumentRegionList flatNodes = structuredDocument.getRegionList();
-		if (flatNodes != null) {
-			int count = flatNodes.getLength();
-			if (count > 0) {
-				IStructuredDocumentRegion last = flatNodes.item(count - 1);
-				if (last != null)
-					newLength = last.getEnd();
-			}
-		}
-
-		int offset = flatNode.getStart();
-		int end = flatNode.getEnd();
-		int diff = oldLength - newLength;
-		int length = end - offset + diff;
-		String data = flatNode.getText();
-
-		replaceData(offset, length, data);
-	}
-
-	/**
-	 * Apply changes from HTML model to CSS sub-model
-	 */
-	private void contentChanged() {
-		Element element = getElement();
-		if (element == null)
-			return;
-		ICSSModel model = getExistingModel();
-		if (model == null)
-			return;
-		IStructuredDocument structuredDocument = model.getStructuredDocument();
-		if (structuredDocument == null)
-			return;
-
-		String data = null;
-		Node child = element.getFirstChild();
-		if (child != null && child.getNodeType() == Node.TEXT_NODE && child.getNextSibling() == null) {
-			data = child.getNodeValue();
-		}
-		if (data == null)
-			data = "";//$NON-NLS-1$
-
-		// minimize replace range
-		int start = 0, end = 0;
-		String oldData = structuredDocument.get();
-		if (oldData == null)
-			oldData = "";//$NON-NLS-1$
-
-		// search differenct character position from first
-		for (; start < oldData.length() && start < data.length(); start++)
-			if (oldData.charAt(start) != data.charAt(start))
-				break;
-
-		if (start == oldData.length() && start == data.length())
-			return; // no change
-		else if (start == oldData.length()) {
-			structuredDocument.replaceText(getRequesterH2C(), start, 0, data.substring(start)); // append text to last
-		}
-		else if (start == data.length()) {
-			structuredDocument.replaceText(getRequesterH2C(), start, oldData.length() - start, ""); // remove text of last //$NON-NLS-1$
-		}
-		else {
-			// search differenct character position from last
-			for (; start < oldData.length() - end && start < data.length() - end; end++) {
-				if (oldData.charAt(oldData.length() - end - 1) != data.charAt(data.length() - end - 1))
-					break;
-			}
-			structuredDocument.replaceText(getRequesterH2C(), start, oldData.length() - end - start, data.substring(start, data.length() - end));
-		}
-
-	}
-
-	/**
-	 */
-	public ICSSModel getModel() {
-		ICSSModel model = getExistingModel();
-		if (this.replaceModel) {
-			ICSSModel oldModel = model;
-			model = createModel();
-
-			setModel(model); // need to set before contentChanged()
-			contentChanged();
-
-			if (oldModel != null) {
-				// get ModelProvideAdapter
-				IModelProvideAdapter adapter = (IModelProvideAdapter) ((INodeNotifier) getElement()).getAdapterFor(IModelProvideAdapter.class);
-				if (adapter != null) {
-					adapter.modelRemoved(oldModel);
-				}
-			}
-
-			this.replaceModel = false;
-		}
-		return model;
-	}
-
-	/**
-	 */
-	protected boolean isValidAttribute() {
-		Element element = getElement();
-		if (element == null) {
-			return false;
-		}
-		String type = element.getAttribute(HTML40Namespace.ATTR_NAME_TYPE);
-		if (type != null && type.length() > 0 &&!type.equalsIgnoreCase("text/css")) { //$NON-NLS-1$
-			return false;
-		}
-		return true;
-	}
-
-	/**
-	 */
-	protected ICSSModel createModel() {
-		if (!isValidAttribute()) {
-			return null;
-		}
-
-		ICSSModel model = super.createModel();
-		IStructuredDocument structuredDocument = model.getStructuredDocument();
-		if (structuredDocument == null)
-			return null;
-		structuredDocument.addDocumentChangedListener(this);
-
-		return model;
-	}
-
-	/**
-	 */
-	//  public ICSSModel getModel() {
-	//  	ICSSModel model = getExistingModel();
-	//  	if (model == null) {
-	//  		model = createModel();
-	//  		if (model == null) return null;
-	//  		IStructuredDocument structuredDocument = model.getStructuredDocument();
-	//  		if (structuredDocument == null) return null;
-	//  		structuredDocument.addModelChangedListener(this);
-	//  		setModel(model); // need to set before contentChanged()
-	//  		contentChanged();
-	//  	}
-	//  	return model;
-	//  }
-	/**
-	 */
-	private Object getRequesterH2C() {
-		return (getElement() != null && ((IDOMNode) getElement()).getModel() != null) ? (Object) ((IDOMNode) getElement()).getModel() : this;
-	}
-
-	/**
-	 */
-	private Object getRequesterC2H() {
-		return (getModel() != null) ? (Object) getModel() : this;
-	}
-
-	/**
-	 * Implementing IStructuredDocumentListener's method
-	 * Event from CSS Flat Model
-	 */
-	public void newModel(NewDocumentEvent event) {
-		if (event == null)
-			return;
-		if (event.getOriginalRequester() == getRequesterH2C())
-			return;
-		IStructuredDocument structuredDocument = event.getStructuredDocument();
-		if (structuredDocument == null)
-			return;
-		IStructuredDocumentRegionList flatNodes = structuredDocument.getRegionList();
-		if (flatNodes == null)
-			return;
-
-		replaceStructuredDocumentRegions(flatNodes, null);
-	}
-
-	/**
-	 * Implementing IStructuredDocumentListener's method
-	 * Event from CSS Flat Model
-	 */
-	public void noChange(NoChangeEvent structuredDocumentEvent) {
-	}
-
-	/**
-	 * Implementing IStructuredDocumentListener's method
-	 * Event from CSS Flat Model
-	 */
-	public void nodesReplaced(StructuredDocumentRegionsReplacedEvent event) {
-		if (event == null)
-			return;
-		if (event.getOriginalRequester() == getRequesterH2C())
-			return;
-		IStructuredDocumentRegionList oldStructuredDocumentRegions = event.getOldStructuredDocumentRegions();
-		IStructuredDocumentRegionList newStructuredDocumentRegions = event.getNewStructuredDocumentRegions();
-		if (oldStructuredDocumentRegions == null && newStructuredDocumentRegions == null)
-			return;
-
-		replaceStructuredDocumentRegions(newStructuredDocumentRegions, oldStructuredDocumentRegions);
-	}
-
-	/**
-	 * Overriding INodeAdapter's method
-	 * Event from <STYLE> element
-	 */
-	public void notifyChanged(INodeNotifier notifier, int eventType, Object changedFeature, Object oldValue, Object newValue, int pos) {
-		if (this.ignoreNotification)
-			return;
-
-		if (eventType == INodeNotifier.ADD || eventType == INodeNotifier.REMOVE || eventType == INodeNotifier.CONTENT_CHANGED) {
-			contentChanged();
-		}
-		else if (eventType == INodeNotifier.CHANGE) {
-			Attr attr = (Attr) changedFeature;
-			if (attr == null)
-				return;
-			String name = attr.getName();
-			if (name.equalsIgnoreCase("type")) { //$NON-NLS-1$
-				this.replaceModel = true;
-
-				Element element = getElement();
-				if (element == null) {
-					return;
-				}
-				Document document = element.getOwnerDocument();
-				if (document == null) {
-					return;
-				}
-				HTMLDocumentAdapter adapter = (HTMLDocumentAdapter) ((INodeNotifier) document).getAdapterFor(IStyleSheetListAdapter.class);
-				if (adapter != null) {
-					adapter.childReplaced();
-				}
-			}
-		}
-	}
-
-	/**
-	 * Implementing IStructuredDocumentListener's method
-	 * Event from CSS Flat Model
-	 */
-	public void regionChanged(RegionChangedEvent event) {
-		if (event == null)
-			return;
-		if (event.getOriginalRequester() == getRequesterH2C())
-			return;
-		IStructuredDocumentRegion flatNode = event.getStructuredDocumentRegion();
-		if (flatNode == null)
-			return;
-
-		changeStructuredDocumentRegion(flatNode);
-	}
-
-	/**
-	 * Implementing IStructuredDocumentListener's method
-	 * Event from CSS Flat Model
-	 */
-	public void regionsReplaced(RegionsReplacedEvent event) {
-		if (event == null)
-			return;
-		if (event.getOriginalRequester() == getRequesterH2C())
-			return;
-		IStructuredDocumentRegion flatNode = event.getStructuredDocumentRegion();
-		if (flatNode == null)
-			return;
-
-		changeStructuredDocumentRegion(flatNode);
-	}
-
-	/**
-	 * Apply changes from CSS sub-model to HTML model
-	 */
-	private void replaceData(int offset, int length, String data) {
-		IDOMNode element = (IDOMNode) getElement();
-		if (element == null)
-			return;
-		IDOMModel ownerModel = element.getModel();
-		if (ownerModel == null)
-			return;
-		IStructuredDocument structuredDocument = ownerModel.getStructuredDocument();
-		if (structuredDocument == null)
-			return;
-		IStructuredDocumentRegion flatNode = element.getStartStructuredDocumentRegion();
-		if (flatNode == null)
-			return;
-
-		int contentOffset = flatNode.getEndOffset();
-		if (data == null)
-			data = "";//$NON-NLS-1$
-
-		this.ignoreNotification = true;
-		structuredDocument.replaceText(getRequesterC2H(), contentOffset + offset, length, data);
-		this.ignoreNotification = false;
-	}
-
-	/**
-	 * Preparation of applying changes from CSS sub-model to HTML model
-	 */
-	private void replaceStructuredDocumentRegions(IStructuredDocumentRegionList newStructuredDocumentRegions, IStructuredDocumentRegionList oldStructuredDocumentRegions) {
-		int offset = 0;
-		int length = 0;
-		if (oldStructuredDocumentRegions != null) {
-			int count = oldStructuredDocumentRegions.getLength();
-			if (count > 0) {
-				IStructuredDocumentRegion first = oldStructuredDocumentRegions.item(0);
-				if (first != null)
-					offset = first.getStart();
-				IStructuredDocumentRegion last = oldStructuredDocumentRegions.item(count - 1);
-				if (last != null)
-					length = last.getEnd() - offset;
-			}
-		}
-		String data = null;
-		if (newStructuredDocumentRegions != null) {
-			int count = newStructuredDocumentRegions.getLength();
-			if (count > 0) {
-				StringBuffer buffer = new StringBuffer();
-				for (int i = 0; i < count; i++) {
-					IStructuredDocumentRegion flatNode = newStructuredDocumentRegions.item(i);
-					if (flatNode == null)
-						continue;
-					buffer.append(flatNode.getText());
-					if (i == 0)
-						offset = flatNode.getStart();
-				}
-				data = buffer.toString();
-			}
-		}
-
-		replaceData(offset, length, data);
-	}
-
-	/**
-	 */
-	protected void setModel(ICSSModel model) {
-		ICSSModel oldModel = getExistingModel();
-		if (model == oldModel)
-			return;
-		super.setModel(model);
-		if (oldModel != null)
-			oldModel.removeStyleListener(this);
-		if (model != null)
-			model.addStyleListener(this);
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/htmlcss/StyleListener.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/htmlcss/StyleListener.java
deleted file mode 100644
index bc8d16f..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/htmlcss/StyleListener.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.core.internal.htmlcss;
-
-
-
-/**
- */
-public interface StyleListener {
-
-	/**
-	 */
-	void styleChanged();
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/htmlcss/URLHelper.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/htmlcss/URLHelper.java
deleted file mode 100644
index 9413d68..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/htmlcss/URLHelper.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.html.core.internal.htmlcss;
-
-/**
- * @deprecated 
- */
-public class URLHelper extends org.eclipse.wst.css.core.internal.util.URLHelper {
-
-	/**
-	 * @param baseUrl
-	 */
-	public URLHelper(String baseUrl) {
-		super(baseUrl);
-	}
-
-	/**
-	 * @param baseUrl
-	 * @param docRoot
-	 */
-	public URLHelper(String baseUrl, String docRoot) {
-		super(baseUrl, docRoot);
-	}
-
-}
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/htmlcss/URLModelProvider.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/htmlcss/URLModelProvider.java
deleted file mode 100644
index 83baf5b..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/htmlcss/URLModelProvider.java
+++ /dev/null
@@ -1,445 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this 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.core.internal.htmlcss;
-
-
-
-import java.io.FileInputStream;
-import java.io.FileNotFoundException;
-import java.io.IOException;
-import java.io.InputStream;
-import java.io.UnsupportedEncodingException;
-import java.nio.charset.UnsupportedCharsetException;
-
-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.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.wst.html.core.internal.document.HTMLDocumentTypeConstants;
-import org.eclipse.wst.sse.core.internal.encoding.EncodingRule;
-import org.eclipse.wst.sse.core.internal.provisional.IModelManager;
-import org.eclipse.wst.sse.core.internal.provisional.IStructuredModel;
-import org.eclipse.wst.sse.core.internal.provisional.StructuredModelManager;
-import org.eclipse.wst.sse.core.internal.provisional.exceptions.ResourceAlreadyExists;
-import org.eclipse.wst.sse.core.internal.provisional.exceptions.ResourceInUse;
-import org.eclipse.wst.sse.core.internal.util.PathHelper;
-import org.eclipse.wst.sse.core.internal.util.ProjectResolver;
-import org.eclipse.wst.sse.core.internal.util.URIResolver;
-import org.eclipse.wst.xml.core.internal.document.DocumentTypeAdapter;
-import org.eclipse.wst.xml.core.internal.provisional.document.IDOMDocument;
-import org.eclipse.wst.xml.core.internal.provisional.document.IDOMModel;
-import org.w3c.dom.NamedNodeMap;
-import org.w3c.dom.Node;
-import org.w3c.dom.NodeList;
-
-// TODO when this class is removed from .core, PathHelper and URLHelper class
-// also can be removed.
-
-/**
- */
-public class URLModelProvider {
-
-	private static final int GET_MODEL_FOR_READ = 1;
-	//	private static final int GET_NEW_MODEL_FOR_READ = 2;
-	private static final int GET_MODEL_FOR_EDIT = 3;
-	//	private static final int GET_NEW_MODEL_FOR_EDIT = 4;
-	//	private static final int READ_BUFFER_SIZE = 4096;
-	// IModelManager
-	private IModelManager modelManager = null;
-
-	/**
-	 */
-	public URLModelProvider() {
-		super();
-
-		// obtain model manager
-		modelManager = StructuredModelManager.getModelManager();
-	}
-
-	/**
-	 * Calculate ID from a filename. This must be same as
-	 * FileModelProvider.calculateId(IFile)
-	 */
-	private static String calculateId(IPath fullIPath) {
-		return fullIPath.toString();
-	}
-
-	/**
-	 * <code>baseModel</code>: the model containing the link
-	 * <code>ref</code>: the link URL string
-	 */
-	private IStructuredModel getCommonModelFor(final IStructuredModel baseModel, final String ref, final int which) throws IOException {
-		// first, create absolute url
-		String absURL = resolveURI(baseModel, ref, true);
-		if ((absURL == null) || (absURL.length() == 0)) {
-			return null;
-		}
-
-		// need to remove file:// scheme if necessary
-		try {
-			final java.net.URL aURL = new java.net.URL(absURL);
-			// An actual URL was given, only file:/// is supported
-			// resolve it by finding the file it points to
-			if (!aURL.getProtocol().equals("platform")) { //$NON-NLS-1$
-				if (aURL.getProtocol().equals("file") && (aURL.getHost().equals("localhost") || aURL.getHost().length() == 0)) {//$NON-NLS-2$//$NON-NLS-1$
-					absURL = aURL.getFile();
-					final IPath ipath = new Path(absURL);
-					//  if path has a device, and if it begins with
-					// IPath.SEPARATOR, remove it
-					final String device = ipath.getDevice();
-					if ((device != null) && (device.length() > 0)) {
-						if (device.charAt(0) == IPath.SEPARATOR) {
-							final String newDevice = device.substring(1);
-							absURL = ipath.setDevice(newDevice).toString();
-						}
-					}
-
-				}
-			}
-		}
-		catch (java.net.MalformedURLException mfuExc) {
-		}
-
-
-		// next, decide project
-		IProject project = null;
-		final IPath fullIPath = new Path(absURL);
-		IWorkspaceRoot workspace = ResourcesPlugin.getWorkspace().getRoot();
-		IContainer container = workspace.getContainerForLocation(fullIPath);
-		if (container != null) {
-			// fullIPath doesn't exist in workspace
-			project = container.getProject();
-		}
-
-		// If HTML document has a link to an extern CSS which is not in
-		// IProject
-		// workspace.getContainerForLoation() may return null. We need to take
-		// care
-		// of this case
-
-		// now, get absURL's IFile
-		if ((project != null) && (project.getLocation().isPrefixOf(fullIPath) == false)) {
-			// it's at outside of Project
-			return null;
-		}
-
-		IStructuredModel model = null;
-		if (project != null) {
-			IPath filePath = fullIPath.removeFirstSegments(project.getLocation().segmentCount());
-			IFile file = (filePath != null && !filePath.isEmpty()) ? project.getFile(filePath) : null;
-			if (file == null) {
-				return null;
-			}
-
-			// obtain model
-			if (which == GET_MODEL_FOR_EDIT) {
-				model = getModelForEdit(file);
-			}
-			else if (which == GET_MODEL_FOR_READ) {
-				model = getModelForRead(file);
-			}
-
-			// setting synchronization stamp is IModelManager's client's
-			// responsibility
-			if (model != null && model.getSynchronizationStamp() == IResource.NULL_STAMP)
-				model.resetSynchronizationStamp(file);
-		}
-		else {
-			String id = null;
-			InputStream inStream = null;
-			// obtain resolver
-			URIResolver resolver = (project != null) ? (URIResolver) project.getAdapter(URIResolver.class) : null;
-			if (resolver == null) {
-				// ProjectResolver can take care of the case if project is
-				// null.
-				resolver = new ProjectResolver(project);
-			}
-			if (resolver == null) {
-				return null;
-			}
-
-			// there is no project. we can't expect IProject help to create
-			// id/inputStream
-			java.io.File file = fullIPath.toFile();
-
-			// obatin id
-			id = calculateId(fullIPath);
-
-			// obtain InputStream
-			try {
-				inStream = new FileInputStream(file);
-			}
-			catch (FileNotFoundException fnfe) {
-				// the file does not exist, or we don't have read permission
-				return null;
-			}
-
-			// obtain model
-			try {
-				if (which == GET_MODEL_FOR_EDIT) {
-					model = getModelManager().getModelForEdit(id, inStream, resolver);
-				}
-				else if (which == GET_MODEL_FOR_READ) {
-					model = getModelManager().getModelForRead(id, inStream, resolver);
-				}
-			}
-			catch (UnsupportedEncodingException ue) {
-			}
-			catch (IOException ioe) {
-			}
-			finally {
-				// close now !
-				if (inStream != null) {
-					inStream.close();
-				}
-			}
-		}
-
-
-		// set locationid
-		if (model != null && model.getBaseLocation() == null) {
-			model.setBaseLocation(fullIPath.toString());
-		}
-
-		return model;
-	}
-
-	/**
-	 * <code>baseModel</code>: the model containing the link
-	 * <code>ref</code>: the link URL string
-	 */
-	public IStructuredModel getModelForEdit(IStructuredModel baseModel, String ref) throws IOException {
-		return getCommonModelFor(baseModel, ref, GET_MODEL_FOR_EDIT);
-	}
-
-	/**
-	 */
-	private IStructuredModel getModelForEdit(IFile file) throws IOException {
-		if (file == null)
-			return null;
-		IModelManager manager = getModelManager();
-
-		// create a fake InputStream
-		IStructuredModel model = null;
-		try {
-			model = manager.getModelForEdit(file);
-		}
-		catch (UnsupportedCharsetException ex) {
-			try {
-				model = manager.getModelForEdit(file, EncodingRule.FORCE_DEFAULT);
-			}
-			catch (IOException ioe) {
-			}
-			catch (CoreException ce) {
-			}
-		}
-		catch (CoreException ce) {
-		}
-		return model;
-	}
-
-	/**
-	 * <code>baseModel</code>: the model containing the link
-	 * <code>ref</code>: the link URL string
-	 */
-	public IStructuredModel getModelForRead(IStructuredModel baseModel, String ref) throws UnsupportedEncodingException, IOException {
-		return getCommonModelFor(baseModel, ref, GET_MODEL_FOR_READ);
-	}
-
-	/**
-	 */
-	private IStructuredModel getModelForRead(IFile file) throws IOException {
-		if (file == null)
-			return null;
-		IModelManager manager = getModelManager();
-
-		// create a fake InputStream
-		IStructuredModel model = null;
-		try {
-			model = manager.getModelForRead(file);
-		}
-		catch (UnsupportedCharsetException ex) {
-			try {
-				model = manager.getModelForRead(file, EncodingRule.FORCE_DEFAULT);
-			}
-			catch (IOException ioe) {
-			}
-			catch (CoreException ce) {
-			}
-		}
-		catch (CoreException ce) {
-		}
-		return model;
-	}
-
-	/**
-	 */
-	private IModelManager getModelManager() {
-		return modelManager;
-	}
-
-	public IStructuredModel getNewModelForEdit(IFile iFile) {
-		if (iFile == null)
-			return null;
-		IModelManager manager = getModelManager();
-		if (manager == null)
-			return null;
-
-		IStructuredModel model = null;
-		try {
-			model = manager.getNewModelForEdit(iFile, false);
-		}
-		catch (IOException ex) {
-		}
-		catch (ResourceInUse riu) {
-		}
-		catch (ResourceAlreadyExists rae) {
-		}
-		catch (CoreException ce) {
-		}
-		return model;
-	}
-
-	public IStructuredModel getNewModelForRead(IFile iFile) {
-		if (iFile == null)
-			return null;
-		IModelManager manager = getModelManager();
-		if (manager == null)
-			return null;
-
-		IStructuredModel model = null;
-		try {
-			model = manager.getNewModelForEdit(iFile, false);
-		}
-		catch (IOException ex) {
-		}
-		catch (ResourceInUse riu) {
-		}
-		catch (ResourceAlreadyExists rae) {
-		}
-		catch (CoreException ce) {
-		}
-		return model;
-	}
-
-	/**
-	 * Utility to check the model is HTML family or not
-	 */
-	static private boolean isHTMLFamily(IStructuredModel model) {
-		if (model instanceof IDOMModel) {
-			IDOMDocument document = ((IDOMModel) model).getDocument();
-			DocumentTypeAdapter adapter = (DocumentTypeAdapter) document.getAdapterFor(DocumentTypeAdapter.class);
-			if (adapter != null)
-				return adapter.hasFeature(HTMLDocumentTypeConstants.HTML);
-		}
-		return false;
-	}
-
-	/**
-	 * <code>baseModel</code>: the model containing the link
-	 * <code>ref</code>: the link URL string
-	 * <code>resolveCrossProjectLinks</code>: If resolveCrossProjectLinks
-	 * is set to true, then this method will properly resolve the URI if it is
-	 * a valid URI pointing to another (appropriate) project.
-	 */
-	public static String resolveURI(IStructuredModel baseModel, String ref, boolean resolveCrossProjectLinks) {
-		if (baseModel == null)
-			return null;
-		// for HTML, 'href' attribute value of BASE element
-		// should be used, if exists any
-		String baseHref = null;
-		// dmw_TODO needs to be changed to handle a content model
-		// of HTML or XHTML
-		if (isHTMLFamily(baseModel)) {
-			final IDOMModel xmlmodel = (IDOMModel) baseModel;
-			final IDOMDocument doc = xmlmodel.getDocument();
-			// look for <BASE> w/ href
-			final NodeList nl = doc.getElementsByTagName("BASE");//$NON-NLS-1$
-			if ((nl != null) && (nl.getLength() > 0)) {
-				// per each <BASE>
-				for (int i = 0; i < nl.getLength(); i++) {
-					final Node baseNode = nl.item(i);
-					if (baseNode != null) {
-						// get all attrs
-						final NamedNodeMap attrNodes = baseNode.getAttributes();
-						if (attrNodes != null) {
-							final Node attrNode = attrNodes.getNamedItem("HREF");//$NON-NLS-1$
-							if (attrNode != null) {
-								// found href=""
-								final String attrValue = attrNode.getNodeValue();
-								if (attrValue != null) {
-									baseHref = attrValue.trim();
-								}
-							}
-						}
-					}
-					// what if there are multiple <BASE> tags ??
-					if (baseHref != null) {
-						break;
-					}
-				}
-			}
-		}
-
-		// get resolver in Model
-		final URIResolver resolver = baseModel.getResolver();
-
-		// resolve to absolute url
-		final String absurl = (resolver != null) ? ((baseHref != null) ? resolver.getLocationByURI(ref, baseHref, resolveCrossProjectLinks) : resolver.getLocationByURI(ref, resolveCrossProjectLinks)) : null;
-		if ((resolver != null) && (absurl == null) && (ref != null) && (ref.trim().length() > 0) && (ref.trim().charAt(0) == '/')) {
-			// to reach here means :
-			//    ref is a Docroot relative
-			//    resolver can't resolve ref
-			// so that href is a broken and should not create model
-			return null;
-		}
-		if ((absurl != null) && (absurl.length() > 0)) {
-			return absurl;
-		}
-
-		// maybe ref is at outside of the Project
-		// obtain docroot;
-		final IContainer container = (resolver != null) ? resolver.getRootLocation() : null;
-		String docroot = null;
-		if (container != null) {
-			docroot = container.getLocation().toString();
-		}
-		if (docroot == null) {
-			docroot = baseModel.getBaseLocation();
-		}
-		if (docroot == null) {
-			// should not be
-			return null;
-		}
-
-		// obtain document url
-		String modelBaseLocation = baseModel.getBaseLocation();
-		if ((modelBaseLocation == null) || (modelBaseLocation.length() == 0)) {
-			// fallback...
-			modelBaseLocation = baseModel.getId();
-		}
-		if ((modelBaseLocation == null) || (modelBaseLocation.length() == 0)) {
-			// i can't resolve uri !
-			return null;
-		}
-
-		// resolve url
-		URLHelper helper = new URLHelper(PathHelper.getContainingFolderPath(modelBaseLocation), PathHelper.getContainingFolderPath(PathHelper.appendTrailingURLSlash(docroot)));
-		return helper.toAbsolute(ref);
-	}
-
-}
-
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/modelhandler/EmbeddedHTML.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/modelhandler/EmbeddedHTML.java
deleted file mode 100644
index ef7311c..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/modelhandler/EmbeddedHTML.java
+++ /dev/null
@@ -1,166 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this 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.core.internal.modelhandler;
-
-import java.util.ArrayList;
-import java.util.HashSet;
-import java.util.Iterator;
-import java.util.List;
-
-import org.eclipse.wst.css.core.internal.provisional.adapters.IStyleSelectorAdapter;
-import org.eclipse.wst.html.core.internal.document.HTMLDocumentTypeAdapterFactory;
-import org.eclipse.wst.html.core.internal.document.HTMLModelParserAdapterFactory;
-import org.eclipse.wst.html.core.internal.htmlcss.HTMLStyleSelectorAdapterFactory;
-import org.eclipse.wst.html.core.internal.htmlcss.StyleAdapterFactory;
-import org.eclipse.wst.html.core.internal.modelquery.ModelQueryAdapterFactoryForEmbeddedHTML;
-import org.eclipse.wst.sse.core.internal.ltk.modelhandler.EmbeddedTypeHandler;
-import org.eclipse.wst.sse.core.internal.ltk.parser.BlockMarker;
-import org.eclipse.wst.sse.core.internal.ltk.parser.BlockTagParser;
-import org.eclipse.wst.sse.core.internal.ltk.parser.JSPCapableParser;
-import org.eclipse.wst.sse.core.internal.model.FactoryRegistry;
-import org.eclipse.wst.sse.core.internal.provisional.INodeAdapterFactory;
-import org.eclipse.wst.sse.core.internal.util.Assert;
-import org.eclipse.wst.xml.core.internal.document.DocumentTypeAdapter;
-import org.eclipse.wst.xml.core.internal.document.ModelParserAdapter;
-import org.eclipse.wst.xml.core.internal.regions.DOMRegionContext;
-
-public class EmbeddedHTML implements EmbeddedTypeHandler {
-	public String ContentTypeID_EmbeddedHTML = "org.eclipse.wst.html.core.internal.contenttype.EmbeddedHTML"; //$NON-NLS-1$
-
-	// saved for removal later
-	private HashSet fLocalFactories = new HashSet();
-
-	private List supportedMimeTypes;
-
-	/**
-	 * Constructor for EmbeddedHTML.
-	 */
-	public EmbeddedHTML() {
-		super();
-	}
-
-	/**
-	 * Convenience method to add tag names using BlockMarker object
-	 */
-	protected void addHTMLishTag(BlockTagParser parser, String tagname) {
-		BlockMarker bm = new BlockMarker(tagname, null, DOMRegionContext.BLOCK_TEXT, false);
-		parser.addBlockMarker(bm);
-	}
-
-	/**
-	 * @see EmbeddedContentType#getFamilyId()
-	 */
-	public String getFamilyId() {
-		return ModelHandlerForHTML.AssociatedContentTypeID;
-	}
-
-	/*
-	 * Only "model side" embedded factories can be added here.
-	 */
-	public List getAdapterFactories() {
-		List factories = new ArrayList();
-		factories.add(new ModelQueryAdapterFactoryForEmbeddedHTML());
-		// factories.addAll(PluginContributedFactoryReader.getInstance().getFactories(this));
-		return factories;
-	}
-
-	/*
-	 * @see EmbeddedContentType#initializeParser(RegionParser)
-	 */
-	public void initializeParser(JSPCapableParser parser) {
-		addHTMLishTag(parser, "script"); //$NON-NLS-1$
-		addHTMLishTag(parser, "style"); //$NON-NLS-1$
-	}
-
-	public List getSupportedMimeTypes() {
-		if (supportedMimeTypes == null) {
-			supportedMimeTypes = new ArrayList();
-			supportedMimeTypes.add("text/html"); //$NON-NLS-1$
-			supportedMimeTypes.add("text/xhtml"); //$NON-NLS-1$
-			supportedMimeTypes.add("application/xhtml+xml"); //$NON-NLS-1$
-			supportedMimeTypes.add("application/xml"); //$NON-NLS-1$
-			supportedMimeTypes.add("text/vnd.wap.wml"); //$NON-NLS-1$
-		}
-		return supportedMimeTypes;
-	}
-
-	public void initializeFactoryRegistry(FactoryRegistry registry) {
-		Assert.isNotNull(registry);
-
-		INodeAdapterFactory factory = null;
-		if (!registry.contains(DocumentTypeAdapter.class)) {
-			factory = new HTMLDocumentTypeAdapterFactory();
-			registry.addFactory(factory);
-			fLocalFactories.add(factory);
-		}
-		if (!registry.contains(ModelParserAdapter.class)) {
-			factory = HTMLModelParserAdapterFactory.getInstance();
-			registry.addFactory(factory);
-			factory = StyleAdapterFactory.getInstance();
-		}
-		if (!registry.contains(IStyleSelectorAdapter.class)) {
-			registry.addFactory(factory);
-			factory = HTMLStyleSelectorAdapterFactory.getInstance();
-			registry.addFactory(factory);
-		}
-	}
-
-	public void uninitializeFactoryRegistry(FactoryRegistry registry) {
-		Assert.isNotNull(registry);
-		
-        if (!fLocalFactories.isEmpty()) {
-            Iterator it = fLocalFactories.iterator();
-            while (it.hasNext()) {
-                INodeAdapterFactory af = (INodeAdapterFactory) it.next();
-                af.release();
-                registry.removeFactory(af);
-            }
-        }
-		fLocalFactories.clear();
-//		// note this BIG assumption about factory singletons!
-//		// for this particular list, they are, but may not
-//		// be in future.
-//
-//		IAdapterFactory factory = new HTMLDocumentTypeAdapterFactory();
-//		factory.release();
-//		registry.removeFactory(factory);
-//
-//		factory = HTMLModelParserAdapterFactory.getInstance();
-//		factory.release();
-//		registry.removeFactory(factory);
-//
-//		factory = StyleAdapterFactory.getInstance();
-//		factory.release();
-//		registry.removeFactory(factory);
-//
-//		factory = HTMLStyleSelectorAdapterFactory.getInstance();
-//		factory.release();
-//		registry.removeFactory(factory);
-	}
-
-	public void uninitializeParser(JSPCapableParser parser) {
-		// I'm assuming block markers are unique based on name only
-		// we add these as full BlockMarkers, but remove based on name alone.
-		parser.removeBlockMarker("script"); //$NON-NLS-1$
-		parser.removeBlockMarker("script"); //$NON-NLS-1$
-	}
-
-	public EmbeddedTypeHandler newInstance() {
-		return new EmbeddedHTML();
-	}
-
-	/**
-	 * will someday be controlled via extension point
-	 */
-	public boolean isDefault() {
-		return true;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/modelhandler/ModelHandlerForHTML.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/modelhandler/ModelHandlerForHTML.java
deleted file mode 100644
index 06cc15a..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/modelhandler/ModelHandlerForHTML.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.html.core.internal.modelhandler;
-
-import org.eclipse.wst.html.core.internal.encoding.HTMLDocumentCharsetDetector;
-import org.eclipse.wst.html.core.internal.encoding.HTMLDocumentLoader;
-import org.eclipse.wst.html.core.internal.encoding.HTMLModelLoader;
-import org.eclipse.wst.sse.core.internal.document.IDocumentCharsetDetector;
-import org.eclipse.wst.sse.core.internal.document.IDocumentLoader;
-import org.eclipse.wst.sse.core.internal.ltk.modelhandler.AbstractModelHandler;
-import org.eclipse.wst.sse.core.internal.ltk.modelhandler.IModelHandler;
-import org.eclipse.wst.sse.core.internal.provisional.IModelLoader;
-
-public class ModelHandlerForHTML 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.wst.html.core.htmlsource"; //$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_HTML = "org.eclipse.wst.html.core.modelhandler"; //$NON-NLS-1$
-
-
-	public ModelHandlerForHTML() {
-		super();
-		setId(ModelHandlerID_HTML);
-		setAssociatedContentTypeId(AssociatedContentTypeID);
-	}
-
-	public IModelLoader getModelLoader() {
-		return new HTMLModelLoader();
-	}
-
-	public IDocumentCharsetDetector getEncodingDetector() {
-		return new HTMLDocumentCharsetDetector();
-	}
-
-	public IDocumentLoader getDocumentLoader() {
-		return new HTMLDocumentLoader();
-	}
-
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/modelquery/CMAttributeDeclarationBuddySystem.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/modelquery/CMAttributeDeclarationBuddySystem.java
deleted file mode 100644
index ae41f91..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/modelquery/CMAttributeDeclarationBuddySystem.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.wst.html.core.internal.modelquery;
-
-import java.util.Enumeration;
-
-import org.eclipse.wst.xml.core.internal.contentmodel.CMAttributeDeclaration;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMDataType;
-
-/**
- */
-class CMAttributeDeclarationBuddySystem extends CMNodeBuddySystem implements CMAttributeDeclaration {
-
-
-	public CMAttributeDeclarationBuddySystem(CMAttributeDeclaration self, CMAttributeDeclaration buddy, boolean isXHTML) {
-		super(self, buddy, isXHTML);
-	}
-
-	/*
-	 * @see CMAttributeDeclaration#getAttrName()
-	 */
-	public String getAttrName() {
-		return getSelf().getAttrName();
-	}
-
-	/*
-	 * @see CMAttributeDeclaration#getAttrType()
-	 */
-	public CMDataType getAttrType() {
-		return getSelf().getAttrType();
-	}
-
-	/*
-	 * @see CMAttributeDeclaration#getDefaultValue()
-	 * @deprecated in superclass
-	 */
-	public String getDefaultValue() {
-		return getSelf().getDefaultValue();
-	}
-
-	/*
-	 * @see CMAttributeDeclaration#getEnumAttr()
-	 * @deprecated in superclass
-	 */
-	public Enumeration getEnumAttr() {
-		return getSelf().getEnumAttr();
-	}
-
-	/*
-	 * @see CMAttributeDeclaration#getUsage()
-	 */
-	public int getUsage() {
-		return getSelf().getUsage();
-	}
-
-	private CMAttributeDeclaration getSelf() {
-		return (CMAttributeDeclaration) self;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/modelquery/CMDocumentForBuddySystem.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/modelquery/CMDocumentForBuddySystem.java
deleted file mode 100644
index 0f8f13e..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/modelquery/CMDocumentForBuddySystem.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.wst.html.core.internal.modelquery;
-
-import java.util.Iterator;
-
-import org.eclipse.wst.html.core.internal.contentmodel.HTMLCMDocumentFactory;
-import org.eclipse.wst.html.core.internal.contentmodel.ssi.SSICMDocumentFactory;
-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;
-import org.eclipse.wst.xml.core.internal.provisional.contentmodel.CMDocType;
-
-/**
- */
-class CMDocumentForBuddySystem extends CMNodeBuddySystem implements CMDocument {
-
-
-	private static CMDocument getHTMLCMDocument() {
-		return HTMLCMDocumentFactory.getCMDocument(CMDocType.HTML_DOC_TYPE);
-	}
-
-	class Elements extends CMNamedNodeMapForBuddySystem {
-		public Elements(CMNamedNodeMap elements, boolean isXHTML) {
-			super(isXHTML);
-			makeBuddySystem(elements);
-			addSSIDecls();
-		}
-
-		protected String getKeyName(CMNode original) {
-			CMElementDeclaration edecl = getDecl(original);
-			if (edecl == null)
-				return null;
-			return edecl.getElementName();
-		}
-
-		protected CMNode createBuddySystem(CMNode original) {
-			CMElementDeclaration edecl = getDecl(original);
-			return new CMElementDeclarationBuddySystem(edecl, isXHTML());
-		}
-
-		private CMElementDeclaration getDecl(CMNode cmnode) {
-			if (cmnode == null)
-				return null;
-			if (cmnode.getNodeType() != CMNode.ELEMENT_DECLARATION)
-				return null;
-			return (CMElementDeclaration) cmnode;
-		}
-
-		private void addSSIDecls() {
-			CMDocument ssi = SSICMDocumentFactory.getCMDocument();
-			if (ssi == null)
-				return;
-			CMNamedNodeMap elements = ssi.getElements();
-			Iterator i = elements.iterator();
-			while (i.hasNext()) {
-				CMElementDeclaration decl = (CMElementDeclaration) i.next();
-				if (decl == null)
-					continue;
-				put(decl.getElementName(), decl);
-			}
-		}
-	}
-
-	private Elements elements = null;
-
-	public CMDocumentForBuddySystem(CMDocument self, boolean isXHTML) {
-		super(self, getHTMLCMDocument(), isXHTML);
-	}
-
-	/*
-	 * @see CMDocument#getElements()
-	 */
-	public CMNamedNodeMap getElements() {
-		if (elements != null)
-			return elements;
-		CMDocument cmdoc = getSelf();
-		if (cmdoc == null)
-			return null;
-		elements = new Elements(cmdoc.getElements(), isXHTML);
-		return elements;
-	}
-
-	/*
-	 * @see CMDocument#getEntities()
-	 */
-	public CMNamedNodeMap getEntities() {
-		CMDocument cmdoc = getSelf();
-		if (cmdoc == null)
-			return null;
-		return cmdoc.getEntities();
-	}
-
-	/*
-	 * @see CMDocument#getNamespace()
-	 */
-	public CMNamespace getNamespace() {
-		CMDocument cmdoc = getSelf();
-		if (cmdoc == null)
-			return null;
-		return cmdoc.getNamespace();
-	}
-
-	private CMDocument getSelf() {
-		if (self.getNodeType() != CMNode.DOCUMENT)
-			return null;
-		return (CMDocument) self;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/modelquery/CMElementDeclarationBuddySystem.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/modelquery/CMElementDeclarationBuddySystem.java
deleted file mode 100644
index c71b4e0..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/modelquery/CMElementDeclarationBuddySystem.java
+++ /dev/null
@@ -1,201 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this 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.core.internal.modelquery;
-
-
-import org.eclipse.wst.html.core.internal.contentmodel.HTMLCMDocumentFactory;
-import org.eclipse.wst.html.core.internal.provisional.HTMLCMProperties;
-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.CMNamedNodeMap;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMNode;
-import org.eclipse.wst.xml.core.internal.provisional.contentmodel.CMDocType;
-
-/**
- */
-class CMElementDeclarationBuddySystem extends CMNodeBuddySystem implements CMElementDeclaration {
-
-
-	private static CMDocument htmlcm = HTMLCMDocumentFactory.getCMDocument(CMDocType.HTML_DOC_TYPE);
-
-	private static CMElementDeclaration getHTMLCMElemDecl(CMElementDeclaration original) {
-		CMElementDeclaration buddy = null;
-		if (htmlcm != null) {
-			CMNamedNodeMap elems = htmlcm.getElements();
-			if (elems != null) {
-				buddy = (CMElementDeclaration) elems.getNamedItem(original.getElementName());
-			}
-		}
-		return buddy;
-	}
-
-	private class Attrs extends CMNamedNodeMapForBuddySystem {
-		private CMNamedNodeMap buddyAttrs = null;
-
-		public Attrs(CMNamedNodeMap attrs, CMNamedNodeMap buddyAttrs, boolean isXHTML) {
-			super(isXHTML);
-			this.buddyAttrs = buddyAttrs;
-			makeBuddySystem(attrs);
-		}
-
-		protected String getKeyName(CMNode original) {
-			CMAttributeDeclaration adecl = getDecl(original);
-			if (adecl == null)
-				return null;
-			return adecl.getAttrName();
-		}
-
-		protected CMNode createBuddySystem(CMNode original) {
-			CMAttributeDeclaration adecl = getDecl(original);
-			if (adecl == null)
-				return null;
-			CMAttributeDeclaration buddy = null;
-			if (buddyAttrs != null) {
-				buddy = (CMAttributeDeclaration) buddyAttrs.getNamedItem(adecl.getAttrName());
-			}
-			return new CMAttributeDeclarationBuddySystem(adecl, buddy, isXHTML());
-		}
-
-		private CMAttributeDeclaration getDecl(CMNode cmnode) {
-			if (cmnode == null)
-				return null;
-			if (cmnode.getNodeType() != CMNode.ATTRIBUTE_DECLARATION)
-				return null;
-			return (CMAttributeDeclaration) cmnode;
-		}
-	}
-
-	private Attrs attributes = null;
-
-	public CMElementDeclarationBuddySystem(CMElementDeclaration self, boolean isXHTML) {
-		super(self, getHTMLCMElemDecl(self), isXHTML);
-	}
-
-	/*
-	 * @see CMElementDeclaration#getAttributes()
-	 */
-	public CMNamedNodeMap getAttributes() {
-		if (attributes != null)
-			return attributes;
-		CMElementDeclaration edecl = getSelf();
-		if (edecl == null)
-			return null;
-		CMElementDeclaration htmlDecl = getBuddy();
-		CMNamedNodeMap htmlAttrs = (htmlDecl == null) ? null : htmlDecl.getAttributes();
-		attributes = new Attrs(edecl.getAttributes(), htmlAttrs, isXHTML);
-		return attributes;
-	}
-
-	/*
-	 * @see CMElementDeclaration#getContent()
-	 */
-	public CMContent getContent() {
-		CMElementDeclaration edecl = getSelf();
-		if (edecl == null)
-			return null;
-		return edecl.getContent();
-	}
-
-	/*
-	 * @see CMElementDeclaration#getContentType()
-	 */
-	public int getContentType() {
-		CMElementDeclaration edecl = getSelf();
-		if (edecl == null)
-			return CMElementDeclaration.ANY;
-		return edecl.getContentType();
-	}
-
-	/*
-	 * @see CMElementDeclaration#getElementName()
-	 */
-	public String getElementName() {
-		CMElementDeclaration edecl = getSelf();
-		if (edecl == null)
-			return null;
-		return edecl.getElementName();
-	}
-
-	/*
-	 * @see CMElementDeclaration#getDataType()
-	 */
-	public CMDataType getDataType() {
-		CMElementDeclaration edecl = getSelf();
-		if (edecl == null)
-			return null;
-		return edecl.getDataType();
-	}
-
-	/*
-	 * @see CMElementDeclaration#getLocalElements()
-	 */
-	public CMNamedNodeMap getLocalElements() {
-		CMElementDeclaration edecl = getSelf();
-		if (edecl == null)
-			return null;
-		return edecl.getLocalElements();
-	}
-
-	/*
-	 * @see CMContent#getMaxOccur()
-	 */
-	public int getMaxOccur() {
-		CMElementDeclaration edecl = getSelf();
-		if (edecl == null)
-			return -1;
-		return edecl.getMaxOccur();
-	}
-
-	/*
-	 * @see CMContent#getMinOccur()
-	 */
-	public int getMinOccur() {
-		CMElementDeclaration edecl = getSelf();
-		if (edecl == null)
-			return -1;
-		return edecl.getMinOccur();
-	}
-
-	/*
-	 * @see CMNode#supports(String)
-	 */
-	public boolean supports(String propertyName) {
-		if (isXHTML && propertyName.equals(HTMLCMProperties.OMIT_TYPE))
-			return true;
-		return super.supports(propertyName);
-	}
-
-	/*
-	 * @see CMNode#getProperty(String)
-	 */
-	public Object getProperty(String propertyName) {
-		if (isXHTML && propertyName.equals(HTMLCMProperties.OMIT_TYPE))
-			return HTMLCMProperties.Values.OMIT_NONE;
-		return super.getProperty(propertyName);
-	}
-
-	private CMElementDeclaration getSelf() {
-		if (self.getNodeType() != CMNode.ELEMENT_DECLARATION)
-			return null;
-		return (CMElementDeclaration) self;
-	}
-
-	private CMElementDeclaration getBuddy() {
-		if (buddy == null)
-			return null;
-		if (buddy.getNodeType() != CMNode.ELEMENT_DECLARATION)
-			return null;
-		return (CMElementDeclaration) buddy;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/modelquery/CMNamedNodeMapForBuddySystem.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/modelquery/CMNamedNodeMapForBuddySystem.java
deleted file mode 100644
index 643daa6..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/modelquery/CMNamedNodeMapForBuddySystem.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.html.core.internal.modelquery;
-
-
-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;
-
-/**
- */
-abstract class CMNamedNodeMapForBuddySystem implements CMNamedNodeMap {
-
-
-	private boolean isXHTML = false;
-	private Hashtable map = new Hashtable();
-
-	/**
-	 * Constructor of CMNamedNodeMapForBuddySystem.
-	 * CAUTION: Each derived class must call 'makeBuddySystem' method in its
-	 * constructor to build up its contents.
-	 */
-	public CMNamedNodeMapForBuddySystem(boolean isXHTML) {
-		super();
-		this.isXHTML = isXHTML;
-	}
-
-	/*
-	 * @see CMNamedNodeMap#getLength()
-	 */
-	public int getLength() {
-		return map.size();
-	}
-
-	/*
-	 * @see CMNamedNodeMap#getNamedItem(String)
-	 */
-	public CMNode getNamedItem(String name) {
-		String key = canonicalName(name);
-		if (!map.containsKey(key))
-			return null;
-		return (CMNode) map.get(key);
-	}
-
-	/*
-	 * @see CMNamedNodeMap#item(int)
-	 */
-	public CMNode item(int index) {
-		Iterator iter = iterator();
-		while (iter.hasNext()) {
-			Object node = iter.next();
-			if (--index < 0)
-				return (CMNode) node;
-		}
-		return null;
-	}
-
-	/*
-	 * @see CMNamedNodeMap#iterator()
-	 */
-	public Iterator iterator() {
-		return map.values().iterator();
-	}
-
-	/* package scope. */
-	void put(String name, CMNode cmnode) {
-		if (name == null || cmnode == null)
-			return;
-		map.put(canonicalName(name), cmnode);
-	}
-
-	abstract protected String getKeyName(CMNode original);
-
-	abstract protected CMNode createBuddySystem(CMNode original);
-
-	protected boolean isXHTML() {
-		return isXHTML;
-	}
-
-	/**
-	 * Each derived class must call this method in its constructor
-	 * to build up its contents.
-	 */
-	protected void makeBuddySystem(CMNamedNodeMap original) {
-		Iterator i = original.iterator();
-		if (i == null)
-			return;
-		while (i.hasNext()) {
-			CMNode org = (CMNode) i.next();
-			String key = getKeyName(org);
-			CMNode newNode = createBuddySystem(org);
-			put(key, newNode);
-		}
-	}
-
-	private String canonicalName(String name) {
-		return name.toUpperCase();
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/modelquery/CMNodeBuddySystem.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/modelquery/CMNodeBuddySystem.java
deleted file mode 100644
index b7a8be7..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/modelquery/CMNodeBuddySystem.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.wst.html.core.internal.modelquery;
-
-import org.eclipse.wst.html.core.internal.provisional.HTMLCMProperties;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMNode;
-
-/**
- */
-class CMNodeBuddySystem implements CMNode {
-
-
-	protected boolean isXHTML = false;
-	protected CMNode self = null;
-	protected CMNode buddy = null;
-
-	public CMNodeBuddySystem(CMNode self, CMNode buddy, boolean isXHTML) {
-		super();
-		this.self = self;
-		this.buddy = buddy;
-		this.isXHTML = isXHTML;
-	}
-
-	/*
-	 * @see CMNode#getNodeName()
-	 */
-	public String getNodeName() {
-		return self.getNodeName();
-	}
-
-	/*
-	 * @see CMNode#getNodeType()
-	 */
-	public int getNodeType() {
-		return self.getNodeType();
-	}
-
-	/*
-	 * @see CMNode#supports(String)
-	 */
-	public boolean supports(String propertyName) {
-		if (propertyName.equals(HTMLCMProperties.SHOULD_IGNORE_CASE))
-			return true;
-		if (propertyName.equals(HTMLCMProperties.IS_XHTML))
-			return true;
-		if (buddy == null)
-			return false;
-		return buddy.supports(propertyName);
-	}
-
-	/*
-	 * @see CMNode#getProperty(String)
-	 */
-	public Object getProperty(String propertyName) {
-		if (propertyName.equals(HTMLCMProperties.SHOULD_IGNORE_CASE)) {
-			return new Boolean(!isXHTML);
-		}
-		if (propertyName.equals(HTMLCMProperties.IS_XHTML)) {
-			return new Boolean(isXHTML);
-		}
-
-		if (buddy == null || (!buddy.supports(propertyName)))
-			return null;
-		return buddy.getProperty(propertyName);
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/modelquery/DocumentQuery.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/modelquery/DocumentQuery.java
deleted file mode 100644
index e72c263..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/modelquery/DocumentQuery.java
+++ /dev/null
@@ -1,200 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this 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.core.internal.modelquery;
-
-import org.w3c.dom.Document;
-import org.w3c.dom.Node;
-import org.w3c.dom.ranges.Range;
-
-/**
- */
-public interface DocumentQuery {
-
-	/**
-	 * isRenderRoot() returns true if - node is BODY element (both explicit
-	 * and implicit) - node is portalhtml:body element - node is Document node
-	 * and the document is treated as fragment (with BODY context) Note that
-	 * in editing a fragment file, Document node should be treated as a
-	 * substitute of BODY element.
-	 */
-	boolean isRenderRoot(Node node);
-
-	/**
-	 * isHeadCorrespondent() returns true if - node is HEAD element (both
-	 * explicit and implicit) - node is portalhtml:head element - node is
-	 * Document node and the document is treated as fragment (with HEAD
-	 * context) Note that in editing a fragment file (with HEAD context),
-	 * Document node should be treated as a substitute of HEAD element.
-	 */
-	boolean isHeadCorrespondent(Node node);
-
-	/**
-	 * Implicit BODY element will be gone in V6 SED model. So page designer
-	 * provides an API to get a range whose content nodes are rendered in
-	 * design view. getRenderRootRange() returns - a range from BODY's first
-	 * to its last (if the document has BODY element) - a range form
-	 * Document's first to its last (if the document is fragment with BODY
-	 * context) - null (if the document is fragment with HEAD context) [The
-	 * following cases will be supported since V6] - a range from a custom
-	 * tag's first to its last (if the document has a custom tag which
-	 * generates BODY element at runtime) - a range from Document's
-	 * appropirate offset to its last (if the document does not have explicit
-	 * BODY/HTML) - a range from HTML element's appropriate offset to its last
-	 * (if the document does not have explicit BODY but have explicit HTML)
-	 * 
-	 * @param doc
-	 * @return
-	 */
-	Range getRenderRootRange(Document doc);
-
-	/**
-	 * Implicit HEAD element will be gone in V6 SED model. So page designer
-	 * provides an API to get a range whose content nodes are treated as HEAD
-	 * element's child. getHeadCorrespondentRange() returns - a range from
-	 * HEAD's first to its last (if the document has HEAD element) - a range
-	 * form Document's first to its last (if the document is fragment with
-	 * HEAD context) - null (if the document is fragment with BODY context)
-	 * [The following cases will be supported since V6] - a range from a
-	 * custom tag's first to its last (if the document has a custom tag which
-	 * generates HEAD element at runtime) - a range from Document's first to
-	 * appropirate offset (if the document does not have explicit HEAD/HTML) -
-	 * a range from HTML element's first to appropriate offset (if the
-	 * document does not have explicit HEAD but have explicit HTML)
-	 * 
-	 * @param doc
-	 * @return
-	 */
-	Range getHeadCorrespondentRange(Document doc);
-
-	/**
-	 * getRenderRootNode() with [create=false] returns - BODY element if this
-	 * document is not fragment and has BODY element - null if this document
-	 * is not fragment and does not have BODY element - Document node if this
-	 * document is fragment with BODY context - null if this document is
-	 * fragment with HEAD context [The following cases will be supported since
-	 * V6] - a custom tag which generates BODY tag at runtime - Document node
-	 * or HTML element if this document is not fragment but does not have
-	 * explicit BODY element getRenderRootNode() with [create=true] returns -
-	 * BODY element if this document is not fragment and has BODY element (no
-	 * modifictation) - newly created BODY element if this document is not
-	 * fragment but does not have BODY element - Document node if this
-	 * document is fragment with BODY context (no modifictation) [The
-	 * following cases will be supported since V6] - a custom tag which
-	 * generates BODY tag at runtime (no modifictation) - newly created BODY
-	 * element if this document is not fragment but does not have explicit
-	 * BODY element getRenderRootNode() throws HTMLCommandException (since V6)
-	 * if - this document is fragment with HEAD context and - "create"
-	 * parameter is true Note that in editing a fragment file, Document node
-	 * should be treated as a substitute of BODY element.
-	 * 
-	 * @param childOrDocument
-	 * @param create
-	 * @return
-	 */
-	Node getRenderRootNode(Node childOrDocument, boolean create);
-
-	/**
-	 * getHeadCorrespondentNode() with [create=false] returns - HEAD element
-	 * if this document is not fragment and has HEAD element - null if this
-	 * document is not fragment and does not have HEAD element - Document node
-	 * if this document is fragment with HEAD context - null if this document
-	 * is fragment with BODY context [The following cases will be supported
-	 * since V6] - a custom tag which generates HEAD tag at runtime - Document
-	 * node or HTML element if this document is not fragment but does not have
-	 * explicit HEAD element getHeadCorrespondentNode() with [create=true]
-	 * returns - HEAD element if this document is not fragment and has HEAD
-	 * element (no modifictation) - newly created HEAD element if this
-	 * document is not fragment but does not have HEAD element - Document node
-	 * if this document is fragment with HEAD context (no modifictation) [The
-	 * following cases will be supported since V6] - a custom tag which
-	 * generates HEAD tag at runtime (no modifictation) - newly created HEAD
-	 * element if this document is not fragment but does not have explicit
-	 * HEAD element getHeadCorrespondentNode() throws HTMLCommandException
-	 * (since V6) if - this document is fragment with BODY context and -
-	 * "create" parameter is true Note that in editing a fragment file,
-	 * Document node should be treated as a substitute of HEAD element.
-	 * 
-	 * @param childOrDocument
-	 * @param create
-	 * @return
-	 */
-	Node getHeadCorrespondentNode(Node childOrDocument, boolean create);
-
-	/**
-	 * getHtmlCorrespondentNode() throws HTMLCommandException (since V6) if -
-	 * this document is fragment and "create" parameter is true
-	 * 
-	 * @param childOrDocument
-	 * @param create
-	 * @return
-	 */
-	Node getHtmlCorrespondentNode(Node childOrDocument, boolean create);
-
-	/**
-	 * This inner class is intended for insertion target. please use this like
-	 * the following : DocumentQuery.InsertionTarget ins;
-	 * ins.getParent().insertBefore(youInsertionNode, ins.getRef());
-	 */
-	public class InsertionTarget {
-		private final Node parent;
-		private final Node ref;
-
-		public InsertionTarget(Node parent, Node ref) {
-			this.parent = parent;
-			this.ref = ref;
-		}
-
-		public Node getParent() {
-			return parent;
-		}
-
-		public Node getRef() {
-			return ref;
-		}
-	}
-
-	/**
-	 * getHeadInsertionTarget() returns appropriate insetion target location
-	 * for HEAD child tags such as <script>, <style>, <meta>etc. Basically
-	 * this function returns <HEAD>tag's the last position. Note that this
-	 * would not create actual <HEAD>tag when the document does not have it.
-	 * <HEAD>is omittable tag so this function returns appropriate position
-	 * to which implicit <HEAD>can be inserted, if the document has no
-	 * <HEAD>.
-	 * 
-	 * @param doc
-	 * @return
-	 */
-	InsertionTarget getHeadInsertionTarget(Document doc);
-
-	/**
-	 * getPageInsertionTarget() returns appropriate insetion target location
-	 * for page-level markups, such as JSP directives, usebean tags or <html>
-	 * tag. Basically this function returns just before <HTML>tag. Note that
-	 * this would not create actual <HTML>tag when the document does not have
-	 * it. In such case, this function returns a position just before the
-	 * meaningful tags such as HTML/JSP elements.
-	 * 
-	 * @param doc
-	 * @return
-	 */
-	InsertionTarget getPageInsertionTarget(Document doc);
-
-	/**
-	 * isFragment() returns whether the document is fragment or complete
-	 * document
-	 * 
-	 * @param doc
-	 * @return
-	 */
-	boolean isFragment(Document doc);
-
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/modelquery/ElementDeclarationAdapter.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/modelquery/ElementDeclarationAdapter.java
deleted file mode 100644
index 23e396d..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/modelquery/ElementDeclarationAdapter.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.core.internal.modelquery;
-
-
-
-import org.eclipse.wst.sse.core.internal.provisional.INodeAdapter;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMElementDeclaration;
-
-/**
- */
-public interface ElementDeclarationAdapter extends INodeAdapter {
-
-	/**
-	 */
-	CMElementDeclaration getDeclaration();
-
-	/**
-	 */
-	void setDeclaration(CMElementDeclaration declaration);
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/modelquery/ElementDeclarationAdapterFactory.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/modelquery/ElementDeclarationAdapterFactory.java
deleted file mode 100644
index a4981cb..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/modelquery/ElementDeclarationAdapterFactory.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.wst.html.core.internal.modelquery;
-
-
-
-import org.eclipse.wst.sse.core.internal.provisional.INodeAdapter;
-import org.eclipse.wst.sse.core.internal.provisional.INodeAdapterFactory;
-import org.eclipse.wst.sse.core.internal.provisional.INodeNotifier;
-
-/**
- */
-public class ElementDeclarationAdapterFactory implements INodeAdapterFactory {
-
-	private static ElementDeclarationAdapterFactory instance = null;
-
-	/**
-	 */
-	private ElementDeclarationAdapterFactory() {
-		super();
-	}
-
-	/**
-	 */
-	public INodeAdapter adapt(INodeNotifier notifier) {
-		if (notifier == null)
-			return null;
-		INodeAdapter adapter = notifier.getExistingAdapter(ElementDeclarationAdapter.class);
-		if (adapter != null)
-			return adapter;
-		adapter = new HTMLElementDeclarationAdapter();
-		notifier.addAdapter(adapter);
-		return adapter;
-	}
-
-	/**
-	 */
-	public synchronized static ElementDeclarationAdapterFactory getInstance() {
-		if (instance == null)
-			instance = new ElementDeclarationAdapterFactory();
-		return instance;
-	}
-
-	/**
-	 */
-	public boolean isFactoryForType(Object type) {
-		return (type == ElementDeclarationAdapter.class);
-	}
-
-	public void release() {
-		// default is to do nothing
-	}
-
-	/**
-	 * Overriding copy method
-	 */
-	public INodeAdapterFactory copy() {
-		return getInstance();
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/modelquery/HMQUtil.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/modelquery/HMQUtil.java
deleted file mode 100644
index 42ddb16..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/modelquery/HMQUtil.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.html.core.internal.modelquery;
-
-import java.util.Collection;
-import java.util.Hashtable;
-import java.util.Iterator;
-import java.util.Vector;
-
-import org.eclipse.wst.html.core.internal.provisional.HTMLCMProperties;
-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.CMNodeList;
-import org.eclipse.wst.xml.core.internal.contentmodel.modelquery.ModelQuery;
-import org.eclipse.wst.xml.core.internal.modelquery.ModelQueryUtil;
-import org.w3c.dom.Document;
-import org.w3c.dom.Element;
-import org.w3c.dom.Node;
-
-public final class HMQUtil {
-
-	private final static Vector nullVector = new Vector();
-
-	/* HMQUtil class must not instantiate. */
-	private HMQUtil() {
-		super();
-	}
-
-	/* gather all element declarations in inclusion of each parent of the target. 
-	 * the inclusion of the target is also gathered. */
-	public static Collection getInclusions(Element target) {
-		if (target == null)
-			return nullVector;
-		Collection inclusions = gatherInclusions(getAncestorDeclarations(target));
-
-		Hashtable availables = new Hashtable();
-		Iterator iter = inclusions.iterator();
-		while (iter.hasNext()) {
-			CMContent inclusion = (CMContent) iter.next();
-			switch (inclusion.getNodeType()) {
-				case CMNode.GROUP :
-					extractDeclarations(availables, (CMGroup) inclusion);
-					break;
-				case CMNode.ELEMENT_DECLARATION :
-					addInclusion(availables, (CMElementDeclaration) inclusion);
-					break;
-			}
-		}
-
-		return availables.values();
-	}
-
-	private static Collection getAncestorDeclarations(Element target) {
-		Vector ancestors = new Vector();
-
-		Document doc = target.getOwnerDocument();
-		ModelQuery query = ModelQueryUtil.getModelQuery(doc);
-		CMElementDeclaration decl = query.getCMElementDeclaration(target);
-		ancestors.add(decl);
-
-		Element parent = getParent(target);
-		while (parent != null) {
-			decl = query.getCMElementDeclaration(parent);
-			if (decl != null)
-				ancestors.add(decl);
-			parent = getParent(parent);
-		}
-		return ancestors;
-	}
-
-	private static void addInclusion(Hashtable availables, CMElementDeclaration decl) {
-		String name = decl.getElementName();
-		if (availables.containsKey(name))
-			return;
-		availables.put(name, decl);
-	}
-
-	private static Collection gatherInclusions(Collection ancestors) {
-		Vector inclusions = new Vector();
-		Iterator iter = ancestors.iterator();
-		while (iter.hasNext()) {
-			CMElementDeclaration decl = (CMElementDeclaration) iter.next();
-			if (decl.supports(HTMLCMProperties.INCLUSION)) {
-				CMContent inclusion = (CMContent) decl.getProperty(HTMLCMProperties.INCLUSION);
-				if (inclusion != null)
-					inclusions.add(inclusion);
-			}
-		}
-		return inclusions;
-	}
-
-	private static Element getParent(Node target) {
-		Node parent = target.getParentNode();
-		while (parent != null) {
-			if (parent.getNodeType() == Node.ELEMENT_NODE)
-				return (Element) parent;
-			parent = parent.getParentNode();
-		}
-		return null;
-	}
-
-	private static void extractDeclarations(Hashtable availables, CMGroup group) {
-		CMNodeList content = group.getChildNodes();
-		for (int i = 0; i < content.getLength(); i++) {
-			CMNode cmn = content.item(i);
-			if (cmn == null || cmn.getNodeType() != CMNode.ELEMENT_DECLARATION)
-				continue;
-			addInclusion(availables, (CMElementDeclaration) cmn);
-		}
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/modelquery/HTMLElementDeclarationAdapter.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/modelquery/HTMLElementDeclarationAdapter.java
deleted file mode 100644
index 8797f54..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/modelquery/HTMLElementDeclarationAdapter.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.wst.html.core.internal.modelquery;
-
-
-
-import org.eclipse.wst.sse.core.internal.provisional.INodeNotifier;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMElementDeclaration;
-
-/**
- */
-public class HTMLElementDeclarationAdapter implements ElementDeclarationAdapter {
-
-	private CMElementDeclaration declaration = null;
-
-	/**
-	 */
-	public HTMLElementDeclarationAdapter() {
-		super();
-	}
-
-	/**
-	 */
-	public CMElementDeclaration getDeclaration() {
-		return this.declaration;
-	}
-
-	/**
-	 * 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 == ElementDeclarationAdapter.class);
-	}
-
-	/**
-	 */
-	public void notifyChanged(INodeNotifier notifier, int eventType, Object changedFeature, Object oldValue, Object newValue, int pos) {
-	}
-
-	/**
-	 */
-	public void setDeclaration(CMElementDeclaration declaration) {
-		this.declaration = declaration;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/modelquery/HTMLModelQueryAssociationProvider.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/modelquery/HTMLModelQueryAssociationProvider.java
deleted file mode 100644
index 4b1ddcb..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/modelquery/HTMLModelQueryAssociationProvider.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.wst.html.core.internal.modelquery;
-
-
-
-import org.eclipse.wst.xml.core.internal.contentmodel.modelqueryimpl.SimpleAssociationProvider;
-import org.eclipse.wst.xml.core.internal.contentmodel.util.CMDocumentCache;
-import org.eclipse.wst.xml.uriresolver.internal.util.IdResolver;
-
-/**
- */
-public class HTMLModelQueryAssociationProvider extends SimpleAssociationProvider {
-
-	/**
-	 * @param modelQueryCMProvider org.eclipse.wst.xml.core.internal.contentmodel.modelquery.ModelQueryCMProvider
-	 */
-	public HTMLModelQueryAssociationProvider(CMDocumentCache cache, IdResolver idResolver) {
-		super(new HTMLModelQueryCMProvider(cache, idResolver));
-	}
-
-	// MIWA: We cannot cache a CMElementDeclaration any more.  Because, when the DOCTYPE
-	// was changed, CMDocument would be changed.  Then, a cached CMElementDeclaration
-	// would be invalid.  If some performance problems occurs, we consider a smarter
-	// cache mechanism.
-	//
-	//	public CMElementDeclaration getCMElementDeclaration(Element element) {
-	//		// check if element declaration is cached
-	//		INodeNotifier notifier = (INodeNotifier) element;
-	//		ElementDeclarationAdapter adapter = (ElementDeclarationAdapter) notifier.getExistingAdapter(ElementDeclarationAdapter.class);
-	//		if (adapter != null)
-	//			return adapter.getDeclaration();
-	//
-	//		CMElementDeclaration decl = super.getCMElementDeclaration(element);
-	//
-	//		// cache HTML element declaration only
-	//		if (decl != null && decl instanceof HTMLElementDeclaration) {
-	//			IAdapterFactory factory = ElementDeclarationAdapterFactory.getInstance();
-	//			adapter = (ElementDeclarationAdapter) factory.adapt(notifier);
-	//			if (adapter != null)
-	//				adapter.setDeclaration(decl);
-	//		}
-	//
-	//		return decl;
-	//	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/modelquery/HTMLModelQueryCMProvider.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/modelquery/HTMLModelQueryCMProvider.java
deleted file mode 100644
index 824cf5d..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/modelquery/HTMLModelQueryCMProvider.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.wst.html.core.internal.modelquery;
-
-
-import java.util.Hashtable;
-
-import org.eclipse.wst.html.core.internal.contentmodel.HTMLCMDocumentFactory;
-import org.eclipse.wst.html.core.internal.document.HTMLDocumentTypeEntry;
-import org.eclipse.wst.html.core.internal.document.HTMLDocumentTypeRegistry;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMDocument;
-import org.eclipse.wst.xml.core.internal.contentmodel.modelquery.ModelQueryCMProvider;
-import org.eclipse.wst.xml.core.internal.contentmodel.util.CMDocumentCache;
-import org.eclipse.wst.xml.core.internal.provisional.contentmodel.CMDocType;
-import org.eclipse.wst.xml.core.internal.provisional.document.IDOMDocument;
-import org.eclipse.wst.xml.uriresolver.internal.util.IdResolver;
-import org.w3c.dom.Document;
-import org.w3c.dom.DocumentType;
-import org.w3c.dom.Node;
-
-/**
- * CMDocument provider for HTML and XHTML documents.
- */
-public class HTMLModelQueryCMProvider implements ModelQueryCMProvider {
-
-
-	private static CMDocument staticHTML = HTMLCMDocumentFactory.getCMDocument(CMDocType.HTML_DOC_TYPE);
-	private static CMDocument staticCHTML = HTMLCMDocumentFactory.getCMDocument(CMDocType.CHTML_DOC_TYPE);
-	private static HTMLDocumentTypeRegistry doctypeRegistry = HTMLDocumentTypeRegistry.getInstance();
-	private static Hashtable buddyCache = new Hashtable();
-
-	private XHTMLAssociationProvider xhtmlassoc = null;
-
-	public HTMLModelQueryCMProvider(CMDocumentCache cache, IdResolver idResolver) {
-		super();
-		xhtmlassoc = new XHTMLAssociationProvider(cache, idResolver);
-	}
-
-	/**
-	 * 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) {
-		IDOMDocument owner = getOwnerXMLDocument(node);
-		if (owner == null)
-			return null;
-
-		String pid = getPublicId(owner);
-		if (pid == null)
-			return staticHTML;
-
-		HTMLDocumentTypeEntry entry = doctypeRegistry.getEntry(pid);
-		if (entry == null)
-			return staticHTML;
-
-		pid = entry.getPublicId();
-		CMDocument dtdcm = xhtmlassoc.getXHTMLCMDocument(pid, entry.getSystemId());
-		if (dtdcm == null) {
-			if (pid != null && pid.equals(HTMLDocumentTypeRegistry.CHTML_PUBLIC_ID)) {
-				return staticCHTML;
-			}
-			return staticHTML;
-		}
-
-		CMDocument buddycm = (CMDocument) buddyCache.get(pid);
-		if (buddycm != null)
-			return buddycm;
-
-		buddycm = new CMDocumentForBuddySystem(dtdcm, entry.isXMLType());
-		buddyCache.put(pid, buddycm);
-		return buddycm;
-	}
-
-	// private methods
-	private IDOMDocument getOwnerXMLDocument(Node node) {
-		if (node == null)
-			return null;
-		Document owner = (node.getNodeType() == Node.DOCUMENT_NODE) ? (Document) node : node.getOwnerDocument();
-		if (owner == null)
-			return null;
-		if (!(owner instanceof IDOMDocument))
-			return null;
-		return (IDOMDocument) owner;
-	}
-
-	private String getPublicId(IDOMDocument doc) {
-		if (doc == null)
-			return null;
-		DocumentType doctype = doc.getDoctype();
-		return (doctype != null) ? doctype.getPublicId() : doc.getDocumentTypeId();
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/modelquery/HTMLModelQueryImpl.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/modelquery/HTMLModelQueryImpl.java
deleted file mode 100644
index 8fe47c8..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/modelquery/HTMLModelQueryImpl.java
+++ /dev/null
@@ -1,140 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this 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.core.internal.modelquery;
-
-
-import java.util.List;
-import java.util.Vector;
-
-import org.eclipse.wst.html.core.internal.provisional.HTMLCMProperties;
-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.modelqueryimpl.ModelQueryImpl;
-import org.eclipse.wst.xml.core.internal.contentmodel.util.CMDocumentCache;
-import org.eclipse.wst.xml.core.internal.provisional.document.IDOMElement;
-import org.eclipse.wst.xml.core.internal.ssemodelquery.MovableModelQuery;
-import org.eclipse.wst.xml.uriresolver.internal.util.IdResolver;
-import org.w3c.dom.Element;
-import org.w3c.dom.Node;
-
-
-public class HTMLModelQueryImpl extends ModelQueryImpl implements MovableModelQuery {
-
-	protected CMDocumentCache fCache = null;
-
-	public HTMLModelQueryImpl(CMDocumentCache cache, IdResolver idResolver) {
-		super(new HTMLModelQueryAssociationProvider(cache, idResolver));
-		fCache = cache;
-	}
-
-	public List getAvailableContent(Element element, CMElementDeclaration ed, int includeOptions) {
-		List originalCandidates = super.getAvailableContent(element, ed, includeOptions);
-		if ((includeOptions & INCLUDE_CHILD_NODES) == 0)
-			return originalCandidates;
-		// When the target document is XHTML, it is waste to find inclusions,
-		// since inclusion is available in HTML only.
-		if (!ed.supports(HTMLCMProperties.IS_XHTML))
-			return originalCandidates;
-		
-		Boolean isXhtml = Boolean.FALSE;
-		isXhtml = (Boolean) ed.getProperty(HTMLCMProperties.IS_XHTML);
-		if (isXhtml != null && isXhtml.booleanValue())
-			return originalCandidates;
-
-		// OK, the target is surely a HTML element, so it may have inclusion.
-		// Try to find it.
-		Vector candidates = new Vector(originalCandidates);
-
-		switch (ed.getContentType()) {
-			case CMElementDeclaration.ANY :
-			case CMElementDeclaration.ELEMENT :
-			case CMElementDeclaration.MIXED :
-				// do enumerate inclusions.
-				candidates.addAll(HMQUtil.getInclusions(element));
-				break;
-			case CMElementDeclaration.EMPTY :
-			case CMElementDeclaration.PCDATA :
-			case CMElementDeclaration.CDATA :
-			default :
-				// should not add any inclusions.
-				// so, nothing to do here.
-				break;
-		}
-		// If the current element does not available, it is impossible
-		// to filter out exclusion.
-		if (element == null)
-			return candidates;
-
-		// Now, the time to check exclusion.
-		Vector content = new Vector(candidates.size());
-		for (int i = 0; i < candidates.size(); i++) {
-			CMElementDeclaration candidate = (CMElementDeclaration) candidates.elementAt(i);
-			if (candidate == null)
-				continue;
-			if (isExcluded(candidate, element))
-				continue;
-			content.add(candidate);
-		}
-
-		return content;
-	}
-
-	/**
-	 * @see MovableModelQuery#setIdResolver(IdResolver)
-	 */
-	public void setIdResolver(IdResolver newIdResolver) {
-		modelQueryAssociationProvider = new HTMLModelQueryAssociationProvider(fCache, newIdResolver);
-	}
-
-	// utilities
-	private static boolean isExcluded(CMElementDeclaration candidate, Element target) {
-		CMNamedNodeMap prohibited = getProhibitedAncestors(candidate);
-		if (prohibited == null)
-			return false;
-		Element parent = target;
-		while (parent != null) {
-			CMNode pdec = prohibited.getNamedItem(parent.getNodeName());
-			if (pdec != null)
-				return true;
-			parent = getExplicitParentElement(parent);
-		}
-		return false;
-	}
-
-	private static CMNamedNodeMap getProhibitedAncestors(CMElementDeclaration dec) {
-		if (!dec.supports(HTMLCMProperties.PROHIBITED_ANCESTORS))
-			return null;
-		return (CMNamedNodeMap) dec.getProperty(HTMLCMProperties.PROHIBITED_ANCESTORS);
-	}
-
-	/* get an ancestor element ignoring implicit ones. */
-	private static Element getExplicitParentElement(Node child) {
-		if (child == null)
-			return null;
-
-		Node p = child.getParentNode();
-		while (p != null) {
-			if (p.getNodeType() == Node.ELEMENT_NODE) {
-				if (p instanceof IDOMElement) {
-					if (((IDOMElement) p).isImplicitTag()) {
-						p = p.getParentNode();
-						continue;
-					}
-				}
-				return (Element) p;
-			}
-			p = p.getParentNode();
-		}
-		return null;
-	}
-
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/modelquery/ModelQueryAdapterFactoryForEmbeddedHTML.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/modelquery/ModelQueryAdapterFactoryForEmbeddedHTML.java
deleted file mode 100644
index c5fe198..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/modelquery/ModelQueryAdapterFactoryForEmbeddedHTML.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.html.core.internal.modelquery;
-
-
-
-import org.eclipse.wst.sse.core.internal.provisional.INodeAdapter;
-import org.eclipse.wst.sse.core.internal.provisional.INodeNotifier;
-import org.eclipse.wst.xml.core.internal.ssemodelquery.ModelQueryAdapter;
-
-public class ModelQueryAdapterFactoryForEmbeddedHTML extends ModelQueryAdapterFactoryForHTML {
-
-
-	/**
-	 * Constructor for ModelQueryAdapterFactoryForEmbeddedHTML.
-	 */
-	public ModelQueryAdapterFactoryForEmbeddedHTML() {
-		this(ModelQueryAdapter.class, false);
-	}
-
-	/**
-	 * Constructor for ModelQueryAdapterFactoryForEmbeddedHTML.
-	 * @param adapterKey
-	 * @param registerAdapters
-	 */
-	protected ModelQueryAdapterFactoryForEmbeddedHTML(Object adapterKey, boolean registerAdapters) {
-		super(adapterKey, registerAdapters);
-	}
-
-	/**
-	 * @see org.eclipse.wst.sse.core.internal.provisional.INodeAdapterFactory#adapt(INodeNotifier)
-	 */
-	public INodeAdapter adapt(INodeNotifier object) {
-		if (object == null)
-			return null;
-		return adaptNew(object);
-	}
-
-	public Object clone() throws CloneNotSupportedException {
-
-		return new ModelQueryAdapterFactoryForEmbeddedHTML(this.adapterKey, this.shouldRegisterAdapter);
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/modelquery/ModelQueryAdapterFactoryForHTML.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/modelquery/ModelQueryAdapterFactoryForHTML.java
deleted file mode 100644
index 3eb561d..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/modelquery/ModelQueryAdapterFactoryForHTML.java
+++ /dev/null
@@ -1,175 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this 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.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.internal.provisional.AbstractAdapterFactory;
-import org.eclipse.wst.sse.core.internal.provisional.IModelStateListener;
-import org.eclipse.wst.sse.core.internal.provisional.INodeAdapter;
-import org.eclipse.wst.sse.core.internal.provisional.INodeAdapterFactory;
-import org.eclipse.wst.sse.core.internal.provisional.INodeNotifier;
-import org.eclipse.wst.sse.core.internal.provisional.IStructuredModel;
-import org.eclipse.wst.sse.core.internal.util.Debug;
-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.provisional.document.IDOMNode;
-import org.eclipse.wst.xml.core.internal.ssemodelquery.ModelQueryAdapter;
-import org.eclipse.wst.xml.core.internal.ssemodelquery.ModelQueryAdapterImpl;
-import org.eclipse.wst.xml.uriresolver.internal.util.IdResolver;
-
-/**
- * Creates a ModelQueryAdapter for HTML models
- */
-public class ModelQueryAdapterFactoryForHTML extends AbstractAdapterFactory implements IModelStateListener {
-
-	protected ModelQueryAdapterImpl modelQueryAdapterImpl;
-	protected IStructuredModel stateNotifier = null;
-
-	/**
-	 * ModelQueryAdapterFactoryForHTML constructor comment.
-	 */
-	public ModelQueryAdapterFactoryForHTML() {
-		this(ModelQueryAdapter.class, true);
-	}
-
-	/**
-	 * ModelQueryAdapterFactoryForHTML constructor comment.
-	 * 
-	 * @param adapterKey
-	 *            java.lang.Object
-	 * @param registerAdapters
-	 *            boolean
-	 */
-	public ModelQueryAdapterFactoryForHTML(Object adapterKey, boolean registerAdapters) {
-		super(adapterKey, registerAdapters);
-	}
-
-	/**
-	 * createAdapter method comment.
-	 */
-	protected INodeAdapter createAdapter(INodeNotifier target) {
-
-		if (Debug.displayInfo)
-			System.out.println("-----------------------ModelQueryAdapterFactoryForHTML.createAdapter" + target); //$NON-NLS-1$
-		if (modelQueryAdapterImpl == null) {
-			if (target instanceof IDOMNode) {
-				IDOMNode xmlNode = (IDOMNode) target;
-				IStructuredModel model = stateNotifier = xmlNode.getModel();
-				stateNotifier.addModelStateListener(this);
-				String baseLocation = null;
-				String modelsBaseLocation = model.getBaseLocation();
-				if (modelsBaseLocation != null) {
-					File file = new Path(modelsBaseLocation).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 (Debug.displayInfo)
-					System.out.println("----------------ModelQueryAdapterFactoryForHTML... baseLocation : " + baseLocation); //$NON-NLS-1$
-
-				CMDocumentCache cmDocumentCache = new CMDocumentCache();
-				IdResolver idResolver = new XMLCatalogIdResolver(baseLocation, model.getResolver());
-				ModelQuery modelQuery = new HTMLModelQueryImpl(cmDocumentCache, idResolver);
-				modelQuery.setEditMode(ModelQuery.EDIT_MODE_UNCONSTRAINED);
-				modelQueryAdapterImpl = new ModelQueryAdapterImpl(cmDocumentCache, modelQuery, idResolver);
-			}
-		}
-		return modelQueryAdapterImpl;
-	}
-
-	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()));
-	}
-
-	/**
-	 * @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();
-	}
-
-	public INodeAdapterFactory copy() {
-
-		return new ModelQueryAdapterFactoryForHTML(this.adapterKey, this.shouldRegisterAdapter);
-	}
-
-	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.wst.html.core/src/org/eclipse/wst/html/core/internal/modelquery/XHTMLAssociationProvider.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/modelquery/XHTMLAssociationProvider.java
deleted file mode 100644
index ea52bbd..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/modelquery/XHTMLAssociationProvider.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.html.core.internal.modelquery;
-
-
-import org.eclipse.wst.xml.core.internal.contentmodel.CMDocument;
-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.internal.util.IdResolver;
-import org.w3c.dom.Document;
-
-/**
- * A Class to provide an association between XHTML documents and DTDs for
- * XHTML. This class is intended to be used only in HTMLModelQueryCMProvider.
- */
-/*
- * This class closely resemble XMLModelQueryAssociationProvider.
- */
-class XHTMLAssociationProvider extends XMLAssociationProvider {
-
-	protected IdResolver idResolver = null;
-	private String fCachedGrammerURI;
-	private String fCachedPublicID;
-	private String fCachedSystemID;
-	private static final boolean USE_QUICK_CACHE = true;
-
-	public XHTMLAssociationProvider(CMDocumentCache cache, IdResolver idResolver) {
-		super(cache);
-		this.idResolver = idResolver;
-	}
-
-	/**
-	 * 
-	 * @param publicId
-	 * @param systemId
-	 * @return
-	 */
-	public CMDocument getXHTMLCMDocument(String publicId, String systemId) {
-		String grammerURI = null;
-		if (USE_QUICK_CACHE) { 
-			// In parsing a document, we get many identiical requests to this
-			// method, so instead of looking up (resolving) grammerURI each
-			// time,
-			// we'll just return previously cached one. Probably not worth
-			// have a
-			// more complex cache than that.
-			if (fCachedGrammerURI != null && fCachedPublicID.equals(publicId) && fCachedSystemID.equals(systemId)) {
-				grammerURI = fCachedGrammerURI;
-			}
-			else {
-				grammerURI = idResolver.resolveId(publicId, systemId);
-				fCachedGrammerURI = grammerURI;
-				fCachedPublicID = publicId;
-				fCachedSystemID = systemId;
-			}
-		}
-		else {
-			grammerURI = idResolver.resolveId(publicId, systemId);
-		}
-
-		if (grammerURI == null)
-			return null;
-		
-		// https://bugs.eclipse.org/bugs/show_bug.cgi?id=88896
-		// previously called the deprecated 2 argument form of getCMDocument, which eventually
-		// resulted in empty string for type, which I don't think the infrastructure was prepared 
-		// for. So, I deleted deprecated methods, and switched to null. 
-		// 'null' means to "create based on uri"
-		// and 'dtd' would work to mean load only those registered as dtd's
-		// CMDocument cmDocument = documentManager.getCMDocument(publicId, grammerURI);
-		//CMDocument cmDocument = documentManager.getCMDocument(publicId, grammerURI, "dtd");
-		CMDocument cmDocument = documentManager.getCMDocument(publicId, grammerURI, null);
-		return cmDocument;
-	}
-
-	/**
-	 */
-	protected String resolveGrammarURI(Document document, String publicId, String systemId) {
-		return idResolver.resolveId(publicId, systemId);
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/preferences/HTMLCorePreferenceInitializer.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/preferences/HTMLCorePreferenceInitializer.java
deleted file mode 100644
index 1683e1c..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/preferences/HTMLCorePreferenceInitializer.java
+++ /dev/null
@@ -1,59 +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.core.internal.preferences;
-
-import org.eclipse.core.runtime.preferences.AbstractPreferenceInitializer;
-import org.eclipse.core.runtime.preferences.DefaultScope;
-import org.eclipse.core.runtime.preferences.IEclipsePreferences;
-import org.eclipse.wst.html.core.internal.HTMLCorePlugin;
-import org.eclipse.wst.sse.core.internal.encoding.CommonCharsetNames;
-import org.eclipse.wst.sse.core.internal.encoding.CommonEncodingPreferenceNames;
-
-/**
- * Sets default values for HTML Core preferences
- */
-public class HTMLCorePreferenceInitializer extends AbstractPreferenceInitializer {
-
-	public void initializeDefaultPreferences() {
-		IEclipsePreferences node = new DefaultScope().getNode(HTMLCorePlugin.getDefault().getBundle().getSymbolicName());
-
-		// formatting preferences
-		node.putInt(HTMLCorePreferenceNames.LINE_WIDTH, 72);
-		node.putBoolean(HTMLCorePreferenceNames.CLEAR_ALL_BLANK_LINES, false);
-		node.put(HTMLCorePreferenceNames.INDENTATION_CHAR, HTMLCorePreferenceNames.TAB);
-		node.putInt(HTMLCorePreferenceNames.INDENTATION_SIZE, 1);
-		node.putBoolean(HTMLCorePreferenceNames.SPLIT_MULTI_ATTRS, false);
-
-		// cleanup preferences
-		node.putInt(HTMLCorePreferenceNames.CLEANUP_TAG_NAME_CASE, HTMLCorePreferenceNames.ASIS);
-		node.putInt(HTMLCorePreferenceNames.CLEANUP_ATTR_NAME_CASE, HTMLCorePreferenceNames.ASIS);
-		// node.putBoolean(HTMLCorePreferenceNames.COMPRESS_EMPTY_ELEMENT_TAGS,
-		// true);
-		node.putBoolean(HTMLCorePreferenceNames.INSERT_REQUIRED_ATTRS, true);
-		node.putBoolean(HTMLCorePreferenceNames.INSERT_MISSING_TAGS, true);
-		node.putBoolean(HTMLCorePreferenceNames.QUOTE_ATTR_VALUES, true);
-		node.putBoolean(HTMLCorePreferenceNames.FORMAT_SOURCE, true);
-		node.putBoolean(HTMLCorePreferenceNames.CONVERT_EOL_CODES, false);
-
-		// code generation preferences
-		node.put(CommonEncodingPreferenceNames.INPUT_CODESET, ""); //$NON-NLS-1$
-		String defaultEnc = "UTF-8";//$NON-NLS-1$
-		String systemEnc = System.getProperty("file.encoding"); //$NON-NLS-1$
-		if (systemEnc != null) {
-			defaultEnc = CommonCharsetNames.getPreferredDefaultIanaName(systemEnc, "UTF-8");//$NON-NLS-1$
-		}
-		node.put(CommonEncodingPreferenceNames.OUTPUT_CODESET, defaultEnc);
-		node.put(CommonEncodingPreferenceNames.END_OF_LINE_CODE, ""); //$NON-NLS-1$
-
-		node.putInt(HTMLCorePreferenceNames.TAG_NAME_CASE, HTMLCorePreferenceNames.LOWER);
-		node.putInt(HTMLCorePreferenceNames.ATTR_NAME_CASE, HTMLCorePreferenceNames.LOWER);
-	}
-}
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/preferences/HTMLCorePreferenceNames.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/preferences/HTMLCorePreferenceNames.java
deleted file mode 100644
index e424d55..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/preferences/HTMLCorePreferenceNames.java
+++ /dev/null
@@ -1,214 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.html.core.internal.preferences;
-
-/**
- * Common preference keys used by HTML core
- * 
- * @since 1.0
- */
-public class HTMLCorePreferenceNames {
-	private HTMLCorePreferenceNames() {
-		// empty private constructor so users cannot instantiate class
-	}
-
-	/**
-	 * The maximum width of a line before a line split is needed.
-	 * <p>
-	 * Value is of type <code>Integer</code>.
-	 * </p>
-	 */
-	public static final String LINE_WIDTH = "lineWidth";//$NON-NLS-1$
-
-	/**
-	 * Indicates if all blanks lines should be cleared during formatting.
-	 * Blank lines will be kept when false.
-	 * <p>
-	 * Value is of type <code>Boolean</code>.
-	 * </p>
-	 */
-	public static final String CLEAR_ALL_BLANK_LINES = "clearAllBlankLines";//$NON-NLS-1$
-
-	/**
-	 * The number of #INDENTATION_CHAR for 1 indentation.
-	 * <p>
-	 * Value is of type <code>Integer</code>.
-	 * </p>
-	 */
-	public static final String INDENTATION_SIZE = "indentationSize";//$NON-NLS-1$
-
-	/**
-	 * The character used for indentation.
-	 * <p>
-	 * Value is of type <code>String</code>.<br />
-	 * Possible values: {TAB, SPACE}
-	 * </p>
-	 */
-	public static final String INDENTATION_CHAR = "indentationChar";//$NON-NLS-1$
-
-	/**
-	 * Possible value for the preference #INDENTATION_CHAR. Indicates to use
-	 * tab character when formatting.
-	 * 
-	 * @see #SPACE
-	 * @see #INDENTATION_CHAR
-	 */
-	public static final String TAB = "tab"; //$NON-NLS-1$
-
-	/**
-	 * Possible value for the preference #INDENTATION_CHAR. Indicates to use
-	 * space character when formatting.
-	 * 
-	 * @see #TAB
-	 * @see #INDENTATION_CHAR
-	 */
-	public static final String SPACE = "space"; //$NON-NLS-1$
-
-	/**
-	 * Indicates if tags with multiple attributes should be formatted
-	 * (splitting each attr on a new line).
-	 * <p>
-	 * Value is of type <code>Boolean</code>.
-	 * </p>
-	 */
-	public static final String SPLIT_MULTI_ATTRS = "splitMultiAttrs";//$NON-NLS-1$
-
-	/**
-	 * Indicates whether or not cleanup processor should format source.
-	 * <p>
-	 * Value is of type <code>Boolean</code>.
-	 * </p>
-	 */
-	public static final String FORMAT_SOURCE = "formatSource";//$NON-NLS-1$
-
-	/**
-	 * Indicates whether or not empty elements should be compressed during
-	 * cleanup.
-	 * <p>
-	 * Value is of type <code>Boolean</code>.
-	 * </p>
-	 */
-	public static final String COMPRESS_EMPTY_ELEMENT_TAGS = "compressEmptyElementTags";//$NON-NLS-1$
-
-	/**
-	 * Indicates whether or not to insert required attributes during cleanup.
-	 * <p>
-	 * Value is of type <code>Boolean</code>.
-	 * </p>
-	 */
-	public static final String INSERT_REQUIRED_ATTRS = "insertRequiredAttrs";//$NON-NLS-1$
-
-	/**
-	 * Indicates whether or not to insert missing tags during cleanup.
-	 * <p>
-	 * Value is of type <code>Boolean</code>.
-	 * </p>
-	 */
-	public static final String INSERT_MISSING_TAGS = "insertMissingTags";//$NON-NLS-1$
-
-	/**
-	 * Indicates whether or not to quote all attribute values during cleanup.
-	 * <p>
-	 * Value is of type <code>Boolean</code>.
-	 * </p>
-	 */
-	public static final String QUOTE_ATTR_VALUES = "quoteAttrValues";//$NON-NLS-1$
-
-	/**
-	 * Indicates whether or not to convert all line delimiters during cleanup.
-	 * <p>
-	 * Value is of type <code>Boolean</code>.
-	 * </p>
-	 */
-	public static final String CONVERT_EOL_CODES = "convertEOLCodes";//$NON-NLS-1$
-
-	/**
-	 * Indicates the line delimiter to use during cleanup if converting line
-	 * delimiters.
-	 * <p>
-	 * Value is of type <code>String</code>.<br />
-	 * Possible values: {CR, CRLF, LF, NO_TRANSLATION}
-	 * </p>
-	 * 
-	 */
-	public static final String CLEANUP_EOL_CODE = "cleanupEOLCode";//$NON-NLS-1$
-
-	/**
-	 * Indicates case to use on all tag names during cleanup.
-	 * <p>
-	 * Value is of type <code>Integer</code>.<br />
-	 * Possible values: {LOWER, UPPER, ASIS}
-	 * </p>
-	 */
-	public static final String CLEANUP_TAG_NAME_CASE = "cleanupTagNameCase";//$NON-NLS-1$
-
-	/**
-	 * Indicates case to use on all attribute names during cleanup.
-	 * <p>
-	 * Value is of type <code>Integer</code>.<br />
-	 * Possible values: {LOWER, UPPER, ASIS}
-	 * </p>
-	 */
-	public static final String CLEANUP_ATTR_NAME_CASE = "cleanupAttrNameCase";//$NON-NLS-1$
-
-	/**
-	 * Preferred markup case for tag names in code generation
-	 * <p>
-	 * Value is of type <code>Integer</code>.<br />
-	 * Possible values: {LOWER, UPPER}
-	 * </p>
-	 */
-	public static final String TAG_NAME_CASE = "tagNameCase";//$NON-NLS-1$
-
-	/**
-	 * Preferred markup case for attribute names in code generation
-	 * <p>
-	 * Value is of type <code>Integer</code>.<br />
-	 * Possible values: {LOWER, UPPER}
-	 * </p>
-	 */
-	public static final String ATTR_NAME_CASE = "attrNameCase";//$NON-NLS-1$
-
-	/**
-	 * Possible value for the preference #TAG_NAME_CASE or #ATTR_NAME_CASE.
-	 * Indicates to leave case as is.
-	 * 
-	 * @see #LOWER
-	 * @see #UPPER
-	 * @see #TAG_NAME_CASE
-	 * @see #ATTR_NAME_CASE
-	 */
-	public static final int ASIS = 0;
-
-	/**
-	 * Possible value for the preference #TAG_NAME_CASE or #ATTR_NAME_CASE.
-	 * Indicates to make name lowercase.
-	 * 
-	 * @see #ASIS
-	 * @see #UPPER
-	 * @see #TAG_NAME_CASE
-	 * @see #ATTR_NAME_CASE
-	 */
-	public static final int LOWER = 1;
-
-	/**
-	 * Possible value for the preference #TAG_NAME_CASE or #ATTR_NAME_CASE.
-	 * Indicates to make name uppercase.
-	 * 
-	 * @see #LOWER
-	 * @see #ASIS
-	 * @see #TAG_NAME_CASE
-	 * @see #ATTR_NAME_CASE
-	 */
-	public static final int UPPER = 2;
-}
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/provisional/HTML40Namespace.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/provisional/HTML40Namespace.java
deleted file mode 100644
index 9c944f0..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/provisional/HTML40Namespace.java
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/provisional/HTMLCMProperties.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/provisional/HTMLCMProperties.java
deleted file mode 100644
index 5396cd6..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/provisional/HTMLCMProperties.java
+++ /dev/null
@@ -1,116 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this 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.core.internal.provisional;
-
-
-/**
- * HTMLCMProperties defines all property names and pre-defined values in HTML CM.
- * All of those properties can be retreived from element declarations of HTML CM
- * via CMNode#getProperty(String propName).
- */
-public interface HTMLCMProperties {
-
-	/**
-	 * "shouldIgnoreCase" returns java.lang.Boolean object.
-	 */
-	public static final String SHOULD_IGNORE_CASE = "shouldIgnoreCase";//$NON-NLS-1$
-	/**
-	 * "shouldKeepSpace" returns java.lang.Boolean object.
-	 */
-	public static final String SHOULD_KEEP_SPACE = "shouldKeepSpace";//$NON-NLS-1$
-	/**
-	 * "indentChildSource" returns java.lang.Boolean object.
-	 */
-	public static final String SHOULD_INDENT_CHILD_SOURCE = "shouldIndentChildSource";//$NON-NLS-1$
-	/**
-	 * "terminators" returns java.util.Iterator (an array of String objects).
-	 */
-	public static final String TERMINATORS = "terminators";//$NON-NLS-1$
-	/**
-	 * "contentHint" returns CMElementDeclaration instnace.
-	 */
-	public static final String CONTENT_HINT = "contentHint";//$NON-NLS-1$
-	/**
-	 * "prohibitedAncestors" returns org.eclipse.wst.xml.core.internal.contentmodel.CMNamedNodeMap.
-	 */
-	public static final String PROHIBITED_ANCESTORS = "prohibitedAncestors";//$NON-NLS-1$
-	/**
-	 * "isJSP" returns java.lang.Boolean object.
-	 */
-	public static final String IS_JSP = "isJSP";//$NON-NLS-1$
-	/**
-	 * "isXHTML" returns java.lang.Boolean object.
-	 */
-	public static final String IS_XHTML = "isXHTML";//$NON-NLS-1$
-	/**
-	 * "isSSI" returns java.lang.Boolean object.
-	 */
-	public static final String IS_SSI = "isSSI";//$NON-NLS-1$
-	/**
-	 * "lineBreakHint" returns String (one of pre-defined values in Values).
-	 */
-	public static final String LINE_BREAK_HINT = "lineBreakHint";//$NON-NLS-1$
-	/**
-	 * "layoutType" returns String (one of pre-defined values in Values).
-	 */
-	public static final String LAYOUT_TYPE = "layoutType";//$NON-NLS-1$
-	/**
-	 * "tagInfo" returns String (documentation for this element).
-	 */
-	public static final String TAGINFO = "tagInfo";//$NON-NLS-1$
-	/**
-	 * "omitType" returns String (one of pre-defined values in Values).
-	 */
-	public static final String OMIT_TYPE = "omitType";//$NON-NLS-1$
-	/**
-	 * "inclusion" returns org.eclipse.wst.xml.core.internal.contentmodel.CMContent.
-	 */
-	public static final String INCLUSION = "inclusion";//$NON-NLS-1$
-	/**
-	 * "isScriptable" returns java.lang.Boolean object.
-	 */
-	public static final String IS_SCRIPTABLE = "isScriptable"; //$NON-NLS-1$
-
-	public static interface Values {
-		/*
-		 * for LINE_BREAK_HINT = "lineBreakHint".
-		 */
-		public static final String BREAK_NONE = "breakNone";//$NON-NLS-1$
-		public static final String BREAK_AFTER_START = "breakAfterStart";//$NON-NLS-1$
-		public static final String BREAK_BEFORE_START_AND_AFTER_END = "breakBeforeStartAndAfterEnd";//$NON-NLS-1$
-		/*
-		 * for LAYOUT_TYPE = "layoutType"
-		 */
-		public static final String LAYOUT_BLOCK = "layoutBlock";//$NON-NLS-1$
-		/** BR */
-		public static final String LAYOUT_BREAK = "layoutBreak";//$NON-NLS-1$
-		/** Hidden object; like HTML or HEAD */
-		public static final String LAYOUT_HIDDEN = "layoutHidden";//$NON-NLS-1$
-		public static final String LAYOUT_NONE = "layoutNone";//$NON-NLS-1$
-		/** No wrap object; like IMG, APPLET,... */
-		public static final String LAYOUT_OBJECT = "layoutObject";//$NON-NLS-1$
-		public static final String LAYOUT_WRAP = "layoutWrap";//$NON-NLS-1$
-		/*
-		 * for OMIT_TYPE = "omitType"
-		 */
-		/** Not ommisible. */
-		public static final String OMIT_NONE = "omitNone";//$NON-NLS-1$
-		/** Both tags are ommisible. */
-		public static final String OMIT_BOTH = "omitBoth";//$NON-NLS-1$
-		/** The end tag is ommisible. */
-		public static final String OMIT_END = "omitEnd";//$NON-NLS-1$
-		/** The end tag is ommitted when created. */
-		public static final String OMIT_END_DEFAULT = "omitEndDefault";//$NON-NLS-1$
-		/** The end tag must be omitted. */
-		public static final String OMIT_END_MUST = "omitEndMust";//$NON-NLS-1$
-
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/provisional/HTMLFilesPreferenceNames.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/provisional/HTMLFilesPreferenceNames.java
deleted file mode 100644
index fe2b4ea..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/provisional/HTMLFilesPreferenceNames.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.html.core.internal.provisional;
-
-import org.eclipse.core.runtime.IProduct;
-import org.eclipse.core.runtime.Platform;
-
-/**
- * @deprecated not used in WTP
- */
-public interface HTMLFilesPreferenceNames {
-
-	static final String DEFAULT_SUFFIX = "defaultSuffix";//$NON-NLS-1$
-	static final String HTML_SUFFIX = "html";//$NON-NLS-1$
-	static final String GENERATE_DOCUMENT_TYPE = "generateDocumentType";//$NON-NLS-1$
-	static final String GENERATE_GENERATOR = "generateGenerator";//$NON-NLS-1$
-	// added this as a potential way to handle changing
-	// product names "up" the stack. Note, not declared final 
-	// to avoid getting 'inlined' by compiler.
-	static IProduct product = Platform.getProduct();
-	// Platform.getProduct() is spec'd so it might return null.
-	// Its expected for any final product it would not be, so we'll return 
-	// "WTP" for development/interim builds. No need to translate. 
-	static String GENERATOR = (product == null) ? "WTP": product.getName(); //$NON-NLS-1$
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/provisional/HTMLFormatContraints.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/provisional/HTMLFormatContraints.java
deleted file mode 100644
index a4cde9f..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/provisional/HTMLFormatContraints.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.core.internal.provisional;
-
-import org.eclipse.wst.sse.core.internal.format.IStructuredFormatContraints;
-
-/**
- * @deprecated
- * Please un-deprecate this if Page Designer thinks they are needed.
- */
-public interface HTMLFormatContraints extends IStructuredFormatContraints {
-	/**
-	 * @deprecated
-	 * 	It's very hard to keep the available line width accurate.
-	 * 	Sometimes a node wants to start on a new line, sometimes it doesn't.
-	 * 	It's best for the node to figure out the available line width on the fly.
-	 */
-	int getAvailableLineWidth();
-
-	/**
-	 * @deprecated
-	 * 	It's very hard to keep the available line width accurate.
-	 * 	Sometimes a node wants to start on a new line, sometimes it doesn't.
-	 * 	It's best for the node to figure out the available line width on the fly.
-	 */
-	void setAvailableLineWidth(int availableLineWidth);
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/provisional/PreferenceNames.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/provisional/PreferenceNames.java
deleted file mode 100644
index 530c28d..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/provisional/PreferenceNames.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.core.internal.provisional;
-
-
-public interface PreferenceNames {
-
-	String TRUE = "true"; //$NON-NLS-1$
-	String FALSE = "false"; //$NON-NLS-1$
-	String YES = "yes"; //$NON-NLS-1$
-	String NO = "no"; //$NON-NLS-1$
-
-
-	String SETTINGS = "settings"; //$NON-NLS-1$
-
-	String TREEVIEW = "treeview"; //$NON-NLS-1$
-	String DEFAULT_DEPTH = "defaultdepth"; //$NON-NLS-1$
-
-	String ASIS = "as-is"; //$NON-NLS-1$
-	String LOWER = "lower"; //$NON-NLS-1$
-	String UPPER = "upper"; //$NON-NLS-1$
-
-	String PREFERRED_CASE = "preferred-case"; //$NON-NLS-1$
-	String TAGNAME = "tagname"; //$NON-NLS-1$
-	String ATTRIBUTENAME = "attributename"; //$NON-NLS-1$
-
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/provisional/contenttype/ContentTypeIdForHTML.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/provisional/contenttype/ContentTypeIdForHTML.java
deleted file mode 100644
index d01304d..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/provisional/contenttype/ContentTypeIdForHTML.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.core.internal.provisional.contenttype;
-
-/**
- * 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 class ContentTypeIdForHTML {
-	/**
-	 * The value of the contenttype id field must match what is specified in
-	 * plugin.xml file. Note: this value is intentially not declared as final,
-	 * so it will not be inlined.
-	 */
-	public final static String ContentTypeID_HTML = getConstantString();
-
-	/**
-	 * Don't allow instantiation.
-	 */
-	private ContentTypeIdForHTML() {
-		super();
-	}
-
-	static String getConstantString() {
-		return "org.eclipse.wst.html.core.htmlsource"; //$NON-NLS-1$
-	}
-
-}
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/provisional/text/IHTMLPartitionTypes.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/provisional/text/IHTMLPartitionTypes.java
deleted file mode 100644
index 60d619c..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/provisional/text/IHTMLPartitionTypes.java
+++ /dev/null
@@ -1,21 +0,0 @@
-package org.eclipse.wst.html.core.internal.provisional.text;
-
-
-/**
- * This interface is not intended to be implemented. It defines the partition
- * types for HTML. Clients should reference the partition type Strings defined
- * here directly.
- * 
- * @since 1.0
- */
-public interface IHTMLPartitionTypes {
-
-	String HTML_DEFAULT = "org.eclipse.wst.html.HTML_DEFAULT"; //$NON-NLS-1$
-	String HTML_DECLARATION = "org.eclipse.wst.html.HTML_DECLARATION"; //$NON-NLS-1$
-	String HTML_COMMENT = "org.eclipse.wst.html.HTML_COMMENT"; //$NON-NLS-1$
-
-	String SCRIPT = "org.eclipse.wst.html.SCRIPT"; //$NON-NLS-1$
-	String STYLE = "org.eclipse.wst.html.STYLE"; //$NON-NLS-1$
-
-	// ISSUE: I think meta tag areas are here too?
-}
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/text/StructuredTextPartitionerForHTML.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/text/StructuredTextPartitionerForHTML.java
deleted file mode 100644
index a1bbb41..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/text/StructuredTextPartitionerForHTML.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.wst.html.core.internal.text;
-
-import java.util.Locale;
-
-import org.eclipse.jface.text.IDocumentPartitioner;
-import org.eclipse.wst.css.core.internal.provisional.text.ICSSPartitionTypes;
-import org.eclipse.wst.html.core.internal.provisional.HTML40Namespace;
-import org.eclipse.wst.html.core.internal.provisional.text.IHTMLPartitionTypes;
-import org.eclipse.wst.sse.core.internal.parser.ForeignRegion;
-import org.eclipse.wst.sse.core.internal.provisional.text.IStructuredDocumentRegion;
-import org.eclipse.wst.sse.core.internal.provisional.text.IStructuredTextPartitioner;
-import org.eclipse.wst.sse.core.internal.provisional.text.ITextRegion;
-import org.eclipse.wst.sse.core.internal.provisional.text.ITextRegionList;
-import org.eclipse.wst.sse.core.internal.text.rules.IStructuredTypedRegion;
-import org.eclipse.wst.sse.core.internal.util.ScriptLanguageKeys;
-import org.eclipse.wst.sse.core.internal.util.StringUtils;
-import org.eclipse.wst.xml.core.internal.regions.DOMRegionContext;
-import org.eclipse.wst.xml.core.internal.text.rules.StructuredTextPartitionerForXML;
-
-/**
- * Document partitioner for HTML. Client-side scripts of type JavaScript are
- * reported as ST_SCRIPT, all others for <script language="foo" type="foo2">
- * as SCRIPT.language:FOO and SCRIPT.type:FOO2.
- */
-public class StructuredTextPartitionerForHTML extends StructuredTextPartitionerForXML implements IStructuredTextPartitioner {
-
-	private final static String[] configuredContentTypes = new String[]{IHTMLPartitionTypes.HTML_DEFAULT, IHTMLPartitionTypes.HTML_DECLARATION, IHTMLPartitionTypes.HTML_COMMENT, IHTMLPartitionTypes.SCRIPT, ICSSPartitionTypes.STYLE};
-
-	public static final String JAVASCRIPT = "javascript"; //$NON-NLS-1$
-	public static final String JAVASCRIPT_APPLICATION = "application/x-javascript"; //$NON-NLS-1$
-
-	public StructuredTextPartitionerForHTML() {
-		super();
-	}
-
-	public IStructuredTypedRegion createPartition(int offset, int length, String type) {
-		if (type == IHTMLPartitionTypes.SCRIPT) {
-			IStructuredDocumentRegion node = structuredDocument.getRegionAtCharacterOffset(offset);
-			if (node != null) {
-				String stype = getScriptingPartitionType(node);
-				return super.createPartition(offset, length, stype);
-			}
-		}
-		return super.createPartition(offset, length, type);
-	}
-
-	protected void setInternalPartition(int offset, int length, String type) {
-		String localType = type;
-		if (type == IHTMLPartitionTypes.SCRIPT) {
-			IStructuredDocumentRegion node = structuredDocument.getRegionAtCharacterOffset(offset);
-			if (node != null) {
-				localType = getScriptingPartitionType(node);
-			}
-		}
-		super.setInternalPartition(offset, length, localType);
-	}
-
-	private String getScriptingPartitionType(IStructuredDocumentRegion coreNode) {
-		String language = null;
-		String type = null;
-		String result = IHTMLPartitionTypes.SCRIPT;
-		IStructuredDocumentRegion node = coreNode;
-		ITextRegion attrNameRegion = null;
-		while (node != null && isValidScriptingRegionType(node.getType())) {
-			node = node.getPrevious();
-		}
-
-		ITextRegionList regions = node.getRegions();
-		if (regions.size() > 4 && regions.get(1).getType() == DOMRegionContext.XML_TAG_NAME) {
-			ITextRegion potentialLanguageRegion = regions.get(1);
-			String potentialLanguageString = node.getText(potentialLanguageRegion);
-			if (potentialLanguageString.equalsIgnoreCase(HTML40Namespace.ElementName.SCRIPT)) {
-				for (int i = 0; i < regions.size(); i++) {
-					ITextRegion region = regions.get(i);
-					String regionType = region.getType();
-					if (regionType == DOMRegionContext.XML_TAG_ATTRIBUTE_NAME)
-						attrNameRegion = region;
-					else if (regionType == DOMRegionContext.XML_TAG_ATTRIBUTE_VALUE) {
-						String attrName = node.getText(attrNameRegion);
-						if (attrName.equalsIgnoreCase(HTML40Namespace.ATTR_NAME_LANGUAGE))
-							language = StringUtils.strip(node.getText(region));
-						else if (attrName.equalsIgnoreCase(HTML40Namespace.ATTR_NAME_TYPE)) {
-							type = StringUtils.strip(node.getText(region));
-							break;
-						}
-						attrNameRegion = null;
-					}
-				}
-			}
-		}
-		if (type != null)
-			result = lookupScriptType(type);
-		else if (language != null)
-			result = lookupScriptLanguage(language);
-		return result;
-	}
-
-	private boolean isValidScriptingRegionType(String type) {
-		return type == DOMRegionContext.BLOCK_TEXT || type == DOMRegionContext.XML_CDATA_OPEN || type == DOMRegionContext.XML_CDATA_TEXT || type == DOMRegionContext.XML_CDATA_CLOSE;
-	}
-
-	protected void initLegalContentTypes() {
-		fSupportedTypes = getConfiguredContentTypes();
-	}
-
-	private 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 IHTMLPartitionTypes.SCRIPT;
-		return IHTMLPartitionTypes.SCRIPT + ".type." + type.toUpperCase(Locale.ENGLISH); //$NON-NLS-1$
-	}
-
-	private String lookupScriptLanguage(String language) {
-		for (int i = 0; i < ScriptLanguageKeys.JAVASCRIPT_LANGUAGE_KEYS.length; i++)
-			if (ScriptLanguageKeys.JAVASCRIPT_LANGUAGE_KEYS[i].equalsIgnoreCase(language))
-				return IHTMLPartitionTypes.SCRIPT;
-		return IHTMLPartitionTypes.SCRIPT + ".language." + language.toUpperCase(Locale.ENGLISH); //$NON-NLS-1$
-	}
-
-	public String getPartitionType(ITextRegion region, int offset) {
-		String result = null;
-		if (region.getType() == DOMRegionContext.XML_COMMENT_TEXT || region.getType() == DOMRegionContext.XML_COMMENT_OPEN)
-			result = IHTMLPartitionTypes.HTML_COMMENT;
-		else if (region.getType() == DOMRegionContext.XML_DOCTYPE_DECLARATION || region.getType() == DOMRegionContext.XML_DECLARATION_OPEN)
-			result = IHTMLPartitionTypes.HTML_DECLARATION;
-		else
-			result = super.getPartitionType(region, offset);
-		return result;
-	}
-
-	public String getPartitionTypeBetween(IStructuredDocumentRegion previousNode, IStructuredDocumentRegion nextNode) {
-		
-		ITextRegion previousStartTagNameRegion = null;
-		ITextRegion nextEndTagNameRegion = null;
-		
-		ITextRegion[] regions = previousNode.getRegions().toArray();
-		for (int i = 0; i < regions.length; i++) {
-			if(regions[i].getType() == DOMRegionContext.XML_TAG_NAME) {
-				previousStartTagNameRegion = regions[i];
-				break;
-			}
-		}
-		regions = nextNode.getRegions().toArray();
-		for (int i = 0; i < regions.length; i++) {
-			if(regions[i].getType() == DOMRegionContext.XML_TAG_NAME) {
-				nextEndTagNameRegion = regions[i];
-				break;
-			}
-		}
-		
-		if(previousStartTagNameRegion == null || nextEndTagNameRegion == null)
-			return IHTMLPartitionTypes.HTML_DEFAULT;
-		
-		String name1 = previousNode.getText(previousStartTagNameRegion);
-		String name2 = nextNode.getText(nextEndTagNameRegion);
-		if (name1.equalsIgnoreCase(HTML40Namespace.ElementName.SCRIPT) && name2.equalsIgnoreCase(HTML40Namespace.ElementName.SCRIPT))
-			//			return ST_SCRIPT;
-			return getScriptingPartitionType(structuredDocument.getRegionAtCharacterOffset(previousNode.getStartOffset(previousStartTagNameRegion)));
-		else if (name1.equalsIgnoreCase(HTML40Namespace.ElementName.STYLE) && name2.equalsIgnoreCase(HTML40Namespace.ElementName.STYLE))
-			return ICSSPartitionTypes.STYLE;
-		return super.getPartitionTypeBetween(previousNode, nextNode);
-	}
-
-
-	protected String getPartitionType(ForeignRegion region, int offset) {
-		String tagname = region.getSurroundingTag();
-		String result = null;
-		// tagname should not be null,
-		// but see https://w3.opensource.ibm.com/bugzilla/show_bug.cgi?id=4911
-		if (tagname == null) {
-			result = getUnknown();
-		}
-		else if (tagname.equalsIgnoreCase(HTML40Namespace.ElementName.SCRIPT))
-			result = IHTMLPartitionTypes.SCRIPT;
-		else if (tagname.equalsIgnoreCase(HTML40Namespace.ElementName.STYLE))
-			result = ICSSPartitionTypes.STYLE;
-		else
-			result = super.getPartitionType(region, offset);
-
-		return result;
-	}
-
-	public String getDefaultPartitionType() {
-		return IHTMLPartitionTypes.HTML_DEFAULT;
-	}
-
-	public IDocumentPartitioner newInstance() {
-		return new StructuredTextPartitionerForHTML();
-	}
-
-	/**
-	 * @return
-	 */
-	public static String[] getConfiguredContentTypes() {
-		return configuredContentTypes;
-	}
-
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/validate/AbstractErrorInfo.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/validate/AbstractErrorInfo.java
deleted file mode 100644
index b9b4d93..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/validate/AbstractErrorInfo.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.core.internal.validate;
-
-abstract class AbstractErrorInfo implements ErrorInfo, ErrorState {
-
-
-	private int state = NONE_ERROR;
-	private Segment seg = null;
-
-	public AbstractErrorInfo(int state, Segment seg) {
-		super();
-		this.state = state;
-		this.seg = seg;
-	}
-
-	abstract public String getHint();
-
-	abstract public short getTargetType();
-
-	public int getLength() {
-		return (seg == null) ? 0 : seg.getLength();
-	}
-
-	public int getOffset() {
-		return (seg == null) ? 0 : seg.getOffset();
-	}
-
-	public int getState() {
-		return this.state;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/validate/CMUtil.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/validate/CMUtil.java
deleted file mode 100644
index a8af2e5..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/validate/CMUtil.java
+++ /dev/null
@@ -1,200 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this 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.core.internal.validate;
-
-
-import java.util.Iterator;
-
-import org.eclipse.wst.html.core.internal.modelquery.HMQUtil;
-import org.eclipse.wst.html.core.internal.provisional.HTMLCMProperties;
-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.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.modelquery.ModelQueryUtil;
-import org.eclipse.wst.xml.core.internal.provisional.document.IDOMElement;
-import org.w3c.dom.Document;
-import org.w3c.dom.Element;
-
-final class CMUtil {
-
-	/**
-	 * Never instantiate!
-	 */
-	private CMUtil() {
-		super();
-	}
-
-	/**
-	 * You cannot always retrieve HTMLElementDeclaration via an Element instance.
-	 * Because, it occasionally a JSP custom tag. -- 9/7/2001
-	 */
-	public static CMElementDeclaration getDeclaration(Element target) {
-		Document doc = target.getOwnerDocument();
-		ModelQuery query = ModelQueryUtil.getModelQuery(doc);
-		return query.getCMElementDeclaration(target);
-	}
-
-	/**
-	 */
-	public static boolean isCaseSensitive(CMElementDeclaration decl) {
-		if (decl == null || (!decl.supports(HTMLCMProperties.SHOULD_IGNORE_CASE)))
-			return false;
-		return !((Boolean) decl.getProperty(HTMLCMProperties.SHOULD_IGNORE_CASE)).booleanValue();
-	}
-
-	/**
-	 */
-	private static boolean isChild(CMContent content, CMElementDeclaration target) {
-		switch (content.getNodeType()) {
-			case CMNode.ELEMENT_DECLARATION :
-				if (isWholeTagOmissible((CMElementDeclaration) content))
-					if (isChild(((CMElementDeclaration) content).getContent(), target))
-						return true;
-				return isSameDeclaration((CMElementDeclaration) content, target);
-			case CMNode.GROUP :
-				CMNodeList children = ((CMGroup) content).getChildNodes();
-				for (int i = 0; i < children.getLength(); i++) {
-					CMNode child = children.item(i);
-					switch (child.getNodeType()) {
-						case CMNode.ELEMENT_DECLARATION :
-							if (isWholeTagOmissible((CMElementDeclaration) child))
-								if (isChild(((CMElementDeclaration) child).getContent(), target))
-									return true;
-							if (isSameDeclaration((CMElementDeclaration) child, target))
-								return true;
-							continue; // Go next child.
-						case CMNode.GROUP :
-							if (isChild((CMContent) child, target))
-								return true;
-							continue; // Go next child.
-						default :
-							continue; // Go next child.
-					}
-				}
-		}
-		return false;
-	}
-
-	/**
-	 */
-	public static boolean isEndTagOmissible(CMElementDeclaration decl) {
-		if (!(decl.supports(HTMLCMProperties.OMIT_TYPE)))
-			return false;
-		String omitType = (String) decl.getProperty(HTMLCMProperties.OMIT_TYPE);
-		return !omitType.equals(HTMLCMProperties.Values.OMIT_NONE);
-	}
-
-	/**
-	 */
-	public static boolean isWholeTagOmissible(CMElementDeclaration decl) {
-		if (!(decl.supports(HTMLCMProperties.OMIT_TYPE)))
-			return false;
-		String omitType = (String) decl.getProperty(HTMLCMProperties.OMIT_TYPE);
-		return omitType.equals(HTMLCMProperties.Values.OMIT_BOTH);
-	}
-	
-	/**
-	 */
-	public static boolean isJSP(CMElementDeclaration decl) {
-		if (!decl.supports(HTMLCMProperties.IS_JSP))
-			return false;
-		return ((Boolean) decl.getProperty(HTMLCMProperties.IS_JSP)).booleanValue();
-	}
-
-	/**
-	 */
-	public static boolean isXHTML(CMElementDeclaration decl) {
-		if (!decl.supports(HTMLCMProperties.IS_XHTML))
-			return false;
-		return ((Boolean) decl.getProperty(HTMLCMProperties.IS_XHTML)).booleanValue();
-	}
-
-	/**
-	 * The method to distinguish HTML and XHTML from other mark up.
-	 * This method returns true if the target is,
-	 * (1) not JSP,
-	 * (2) not SSI.
-	 */
-	public static boolean isHTML(CMElementDeclaration decl) {
-		return (!isJSP(decl)) && (!isSSI(decl));
-	}
-
-	/**
-	 */
-	private static boolean isSameDeclaration(CMElementDeclaration aDec, CMElementDeclaration otherDec) {
-		return aDec.getElementName() == otherDec.getElementName();
-	}
-
-	/**
-	 */
-	public static boolean isSSI(CMElementDeclaration edec) {
-		if (edec == null)
-			return false;
-		if (!edec.supports(HTMLCMProperties.IS_SSI))
-			return false;
-		return ((Boolean) edec.getProperty(HTMLCMProperties.IS_SSI)).booleanValue();
-	}
-
-	/**
-	 * Call this method only when the parent content type is one of
-	 * the following: ANY, ELEMENT, or MIXED.
-	 */
-	public static boolean isValidChild(CMElementDeclaration parent, CMElementDeclaration child) {
-		if (parent == null || child == null)
-			return false;
-		if (isHTML(parent) && (!isHTML(child)))
-			return true;
-		CMContent content = parent.getContent();
-		if (content == null)
-			return false;
-		return isChild(content, child);
-	}
-
-	public static boolean isForeign(Element target) {
-		if (!(target instanceof IDOMElement))
-			return true;
-		IDOMElement element = (IDOMElement) target;
-		return !element.isGlobalTag();
-	}
-
-	/**
-	 * This method returns true if all of the following conditions are met:
-	 * (1) value type is ENUM,
-	 * (2) only one value is defined in the enumeration,
-	 * (3) the value has same name to the attribute name.
-	 */
-	public static boolean isBooleanAttr(CMAttributeDeclaration adec) {
-		CMDataType attrtype = adec.getAttrType();
-		if (attrtype == null)
-			return false;
-		if (attrtype.getDataTypeName() != CMDataType.ENUM)
-			return false;
-		String[] values = attrtype.getEnumeratedValues();
-		if (values.length != 1)
-			return false;
-		return values[0].equals(adec.getAttrName());
-	}
-
-	public static boolean isValidInclusion(CMElementDeclaration decl, Element parent) {
-		Iterator iter = HMQUtil.getInclusions(parent).iterator();
-		while (iter.hasNext()) {
-			CMElementDeclaration inclusion = (CMElementDeclaration) iter.next();
-			if (isSameDeclaration(decl, inclusion))
-				return true;
-		}
-		return false;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/validate/CompositeValidator.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/validate/CompositeValidator.java
deleted file mode 100644
index 0ad2128..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/validate/CompositeValidator.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.wst.html.core.internal.validate;
-
-import java.util.Iterator;
-import java.util.Vector;
-
-import org.eclipse.wst.sse.core.internal.provisional.IndexedRegion;
-import org.eclipse.wst.sse.core.internal.validate.ValidationAdapter;
-import org.eclipse.wst.sse.core.internal.validate.ValidationReporter;
-import org.eclipse.wst.xml.core.internal.validate.ValidationComponent;
-
-abstract class CompositeValidator extends ValidationComponent {
-
-	protected Vector components = new Vector();
-
-	/**
-	 * CompositeValidator constructor comment.
-	 */
-	public CompositeValidator() {
-		super();
-	}
-
-	/**
-	 */
-	public void setReporter(ValidationReporter reporter) {
-		super.setReporter(reporter);
-
-		Iterator i = components.iterator();
-		while (i.hasNext()) {
-			ValidationAdapter component = (ValidationAdapter) i.next();
-			if (component == null)
-				continue;
-			component.setReporter(reporter);
-		}
-	}
-
-	/**
-	 */
-	public void validate(IndexedRegion node) {
-		Iterator i = components.iterator();
-		while (i.hasNext()) {
-			ValidationComponent component = (ValidationComponent) i.next();
-			if (component == null)
-				continue;
-			component.validate(node);
-		}
-	}
-
-	/**
-	 */
-	void add(ValidationComponent validator) {
-		components.add(validator);
-	}
-
-	/**
-	 * This method registers all components in 'validators'.
-	 * Each derivative must call this methid in its constructor.
-	 */
-	protected void register(ValidationComponent[] validators) {
-		for (int i = 0; i < validators.length; i++) {
-			if (validators[i] != null)
-				add(validators[i]);
-		}
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/validate/DocumentPropagatingValidator.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/validate/DocumentPropagatingValidator.java
deleted file mode 100644
index 1bb7a86..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/validate/DocumentPropagatingValidator.java
+++ /dev/null
@@ -1,52 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this 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.core.internal.validate;
-
-
-import org.eclipse.wst.sse.core.internal.provisional.IndexedRegion;
-import org.eclipse.wst.sse.core.internal.validate.ValidationAdapter;
-import org.eclipse.wst.sse.core.internal.validate.ValidationReporter;
-import org.eclipse.wst.xml.core.internal.validate.AbstractPropagatingValidator;
-import org.eclipse.wst.xml.core.internal.validate.ValidationComponent;
-
-class DocumentPropagatingValidator extends AbstractPropagatingValidator {
-
-
-	private ValidationComponent validator = new HTMLSimpleDocumentValidator();
-	private ElementPropagatingValidator propagatee = new ElementPropagatingValidator();
-
-	public DocumentPropagatingValidator() {
-		super();
-	}
-
-	public void validate(IndexedRegion node) {
-		getPropagatee().setReporter(this.reporter);
-		super.validate(node);
-	}
-
-	public boolean isAdapterForType(Object type) {
-		return (type == DocumentPropagatingValidator.class || super.isAdapterForType(type));
-	}
-
-	public void setReporter(ValidationReporter reporter) {
-		super.setReporter(reporter);
-		validator.setReporter(reporter);
-		propagatee.setReporter(reporter);
-	}
-
-	protected final ValidationComponent getPropagatee() {
-		return propagatee;
-	}
-
-	protected final ValidationAdapter getValidator() {
-		return validator;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/validate/ElementPropagatingValidator.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/validate/ElementPropagatingValidator.java
deleted file mode 100644
index 5b83741..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/validate/ElementPropagatingValidator.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.wst.html.core.internal.validate;
-
-
-import org.eclipse.wst.sse.core.internal.validate.ValidationAdapter;
-import org.eclipse.wst.sse.core.internal.validate.ValidationReporter;
-import org.eclipse.wst.xml.core.internal.validate.AbstractPropagatingValidator;
-import org.eclipse.wst.xml.core.internal.validate.ValidationComponent;
-
-class ElementPropagatingValidator extends AbstractPropagatingValidator {
-
-
-	private ValidationComponent validator = new HTMLSimpleValidator();
-
-	public ElementPropagatingValidator() {
-		super();
-	}
-
-	public boolean isAdapterForType(Object type) {
-		return (type == ElementPropagatingValidator.class || super.isAdapterForType(type));
-	}
-
-	public void setReporter(ValidationReporter reporter) {
-		super.setReporter(reporter);
-		validator.setReporter(reporter);
-	}
-
-	protected ValidationComponent getPropagatee() {
-		return this;
-	}
-
-	protected ValidationAdapter getValidator() {
-		return validator;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/validate/ErrorInfo.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/validate/ErrorInfo.java
deleted file mode 100644
index 34b430e..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/validate/ErrorInfo.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.html.core.internal.validate;
-
-
-
-interface ErrorInfo {
-
-	public String getHint();
-
-	public int getLength();
-
-	public int getOffset();
-
-	public int getState();
-
-	public short getTargetType();
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/validate/ErrorInfoImpl.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/validate/ErrorInfoImpl.java
deleted file mode 100644
index 6026c2c..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/validate/ErrorInfoImpl.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.core.internal.validate;
-
-
-
-import org.w3c.dom.Attr;
-import org.w3c.dom.Node;
-import org.w3c.dom.Text;
-
-final class ErrorInfoImpl extends AbstractErrorInfo {
-
-	private Node target = null;
-
-	//	private Segment seg = null;
-	/**
-	 */
-	public ErrorInfoImpl(int state, Segment errorSeg, Node target) {
-		super(state, errorSeg);
-		this.target = target;
-	}
-
-	/**
-	 */
-	public String getHint() {
-		switch (target.getNodeType()) {
-			case Node.ATTRIBUTE_NODE :
-				switch (getState()) {
-					case UNDEFINED_VALUE_ERROR :
-					case MISMATCHED_VALUE_ERROR :
-					case UNCLOSED_ATTR_VALUE :
-						//D210422
-						return ((Attr) target).getValue();
-					default :
-						return target.getNodeName();
-				}
-			case Node.TEXT_NODE :
-				return ((Text) target).getData();
-			case Node.ELEMENT_NODE :
-			default :
-				return target.getNodeName();
-		}
-	}
-
-	public short getTargetType() {
-		return target.getNodeType();
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/validate/ErrorState.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/validate/ErrorState.java
deleted file mode 100644
index f725940..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/validate/ErrorState.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.wst.html.core.internal.validate;
-
-
-
-interface ErrorState {
-	static final int NONE_ERROR = 0;
-	// generic error
-	static final int UNDEFINED_NAME_ERROR = 11;
-	static final int UNDEFINED_VALUE_ERROR = 12;
-	static final int MISMATCHED_VALUE_ERROR = 13;
-	// format error
-	static final int FORMAT_ERROR_LEVEL = 100;
-	static final int INVALID_NAME_ERROR = 101;
-	static final int INVALID_CHAR_ERROR = 102;
-	static final int MISMATCHED_ERROR = 103;
-	static final int MISMATCHED_END_TAG_ERROR = 104;
-	static final int MISSING_START_TAG_ERROR = 105;
-	static final int MISSING_END_TAG_ERROR = 106;
-	static final int UNNECESSARY_END_TAG_ERROR = 107;
-	static final int INVALID_ATTR_ERROR = 108;
-	static final int INVALID_DIRECTIVE_ERROR = 109;
-	static final int UNCLOSED_TAG_ERROR = 110;
-	static final int UNCLOSED_END_TAG_ERROR = 111;
-	static final int INVALID_EMPTY_ELEMENT_TAG = 112;
-	static final int UNCLOSED_ATTR_VALUE = 113; //D210422
-	// layout error
-	static final int LAYOUT_ERROR_LEVEL = 1000;
-	static final int INVALID_CONTENT_ERROR = 1001;
-	static final int DUPLICATE_ERROR = 1002;
-	static final int COEXISTENCE_ERROR = 1003;
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/validate/FMUtil.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/validate/FMUtil.java
deleted file mode 100644
index c16984c..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/validate/FMUtil.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.core.internal.validate;
-
-
-
-import org.eclipse.wst.sse.core.internal.provisional.text.IStructuredDocumentRegion;
-import org.eclipse.wst.xml.core.internal.provisional.document.IDOMNode;
-
-final class FMUtil {
-
-	public final static int SEG_NONE = 0;
-	public final static int SEG_WHOLE_TAG = 1;
-	public final static int SEG_START_TAG = 2;
-	public final static int SEG_END_TAG = 3;
-
-	/**
-	 */
-	private FMUtil() {
-		super();
-	}
-
-	/**
-	 */
-	public final static Segment getSegment(IDOMNode target, int segType) {
-		if (target == null)
-			return new Segment(0, 0);
-		Segment seg = null;
-		IStructuredDocumentRegion startTag = null;
-		IStructuredDocumentRegion endTag = null;
-		switch (segType) {
-			case SEG_WHOLE_TAG :
-				startTag = target.getFirstStructuredDocumentRegion();
-				if (startTag != null) {
-					endTag = target.getLastStructuredDocumentRegion();
-					seg = new Segment(startTag, endTag);
-				}
-				else {
-					int startOffset = target.getStartOffset();
-					int endOffset = target.getEndOffset();
-					seg = new Segment(startOffset, endOffset - startOffset);
-				}
-				break;
-			case SEG_START_TAG :
-				startTag = target.getStartStructuredDocumentRegion();
-				if (startTag != null) {
-					seg = new Segment(startTag);
-				}
-				else {
-					seg = new Segment(target.getStartOffset(), 0);
-				}
-				break;
-			case SEG_END_TAG :
-				endTag = target.getEndStructuredDocumentRegion();
-				if (endTag != null) {
-					seg = new Segment(endTag);
-				}
-				else {
-					seg = new Segment(target.getEndOffset(), 0);
-				}
-				break;
-			case SEG_NONE :
-			default :
-				return new Segment(0, 0);
-		}
-		return seg;
-	}
-
-
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/validate/HTMLAttributeValidator.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/validate/HTMLAttributeValidator.java
deleted file mode 100644
index 63f5831..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/validate/HTMLAttributeValidator.java
+++ /dev/null
@@ -1,255 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this 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.core.internal.validate;
-
-
-
-import java.util.Iterator;
-
-import org.eclipse.wst.sse.core.internal.provisional.IndexedRegion;
-import org.eclipse.wst.sse.core.internal.provisional.text.ITextRegion;
-import org.eclipse.wst.sse.core.internal.provisional.text.ITextRegionContainer;
-import org.eclipse.wst.sse.core.internal.provisional.text.ITextRegionList;
-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.provisional.document.IDOMAttr;
-import org.eclipse.wst.xml.core.internal.provisional.document.IDOMElement;
-import org.eclipse.wst.xml.core.internal.provisional.document.IDOMNode;
-import org.eclipse.wst.xml.core.internal.regions.DOMRegionContext;
-import org.w3c.dom.Attr;
-import org.w3c.dom.Element;
-import org.w3c.dom.NamedNodeMap;
-
-public class HTMLAttributeValidator extends PrimeValidator {
-
-	private static final int REGION_NAME = 1;
-	private static final int REGION_VALUE = 2;
-	// <<D210422
-	private static final char SINGLE_QUOTE = '\'';
-	private static final char DOUBLE_QUOTE = '\"';
-
-	// D210422
-	/**
-	 * HTMLAttributeValidator constructor comment.
-	 */
-	public HTMLAttributeValidator() {
-		super();
-	}
-
-	/**
-	 */
-	private Segment getErrorSegment(IDOMNode errorNode, int regionType) {
-		ITextRegion rgn = null;
-		switch (regionType) {
-			case REGION_NAME :
-				rgn = errorNode.getNameRegion();
-				break;
-			case REGION_VALUE :
-				rgn = errorNode.getValueRegion();
-				break;
-			default :
-				// nothing to do.
-				break;
-		}
-		if (rgn != null) {
-			if (errorNode instanceof IDOMAttr) {
-				IDOMElement ownerElement = (IDOMElement) ((IDOMAttr) errorNode).getOwnerElement();
-				if (ownerElement != null) {
-					int regionStartOffset = ownerElement.getFirstStructuredDocumentRegion().getStartOffset(rgn);
-					int regionLength = rgn.getLength();
-					return new Segment(regionStartOffset, regionLength);
-				}
-			}
-		}
-		return new Segment(errorNode.getStartOffset(), 0);
-	}
-
-	/**
-	 * 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 == HTMLAttributeValidator.class) || super.isAdapterForType(type));
-	}
-
-	/**
-	 */
-	public void validate(IndexedRegion node) {
-		Element target = (Element) node;
-		if (CMUtil.isForeign(target))
-			return;
-		CMElementDeclaration edec = CMUtil.getDeclaration(target);
-		if (edec == null)
-			return;
-		CMNamedNodeMap declarations = edec.getAttributes();
-
-		NamedNodeMap attrs = target.getAttributes();
-		for (int i = 0; i < attrs.getLength(); i++) {
-			int rgnType = REGION_NAME;
-			int state = ErrorState.NONE_ERROR;
-			Attr a = (Attr) attrs.item(i);
-			// D203637; If the target attr has prefix, the validator should
-			// not
-			// warn about it. That is, just ignore. It is able to check
-			// whether
-			// an attr has prefix or not by calling XMLAttr#isGlobalAttr().
-			// When a attr has prefix (not global), it returns false.
-			boolean isXMLAttr = a instanceof IDOMAttr;
-			if (isXMLAttr) {
-				IDOMAttr xmlattr = (IDOMAttr) a;
-				if (!xmlattr.isGlobalAttr())
-					continue; // skip futher validation and begin next loop.
-			}
-
-			CMAttributeDeclaration adec = (CMAttributeDeclaration) declarations.getNamedItem(a.getName());
-			if (adec == null) {
-				// No attr declaration was found. That is, the attr name is
-				// undefined.
-				// but not regard it as undefined name if it includes JSP
-				if (hasJSPRegion(((IDOMNode) a).getNameRegion())) {
-					rgnType = REGION_NAME;
-					state = ErrorState.UNDEFINED_NAME_ERROR;
-				}
-			}
-			else {
-				// The attr declaration was found.
-				// At 1st, the name should be checked.
-				if (CMUtil.isHTML(edec) && (!CMUtil.isXHTML(edec))) {
-					// If the target element is pure HTML (not XHTML), some
-					// attributes
-					// might be written in boolean format. It should be check
-					// specifically.
-					if (CMUtil.isBooleanAttr(adec) && ((IDOMAttr) a).hasNameOnly())
-						continue; // OK, keep going. No more check is needed
-					// against this attr.
-				}
-				else {
-					// If the target is other than pure HTML (JSP or XHTML),
-					// the name
-					// must be checked exactly (ie in case sensitive way).
-					String actual = a.getName();
-					String desired = adec.getAttrName();
-					if (!actual.equals(desired)) { // case mismatch
-						rgnType = REGION_NAME;
-						state = ErrorState.MISMATCHED_ERROR;
-					}
-				}
-				// Then, the value must be checked.
-				if (state == ErrorState.NONE_ERROR) { // Need more check.
-					// Now, the value should be checked, if the type is ENUM.
-					CMDataType attrType = adec.getAttrType();
-					String actualValue = a.getValue();
-					if (attrType.getImpliedValueKind() == CMDataType.IMPLIED_VALUE_FIXED) {
-						// Check FIXED value.
-						String validValue = attrType.getImpliedValue();
-						if (!actualValue.equals(validValue)) {
-							rgnType = REGION_VALUE;
-							state = ErrorState.UNDEFINED_VALUE_ERROR;
-						}
-					}
-					else {
-						String[] candidates = attrType.getEnumeratedValues();
-						if (candidates != null && candidates.length > 0) {
-							// several candidates are found.
-							boolean found = false;
-							for (int index = 0; index < candidates.length; index++) {
-								String candidate = candidates[index];
-								// At 1st, compare ignoring case.
-								if (actualValue.equalsIgnoreCase(candidate)) {
-									found = true;
-									if (CMUtil.isCaseSensitive(edec) && (!actualValue.equals(candidate))) {
-										rgnType = REGION_VALUE;
-										state = ErrorState.MISMATCHED_VALUE_ERROR;
-									}
-									break; // exit the loop.
-								}
-							}
-							if (!found) {
-								// No candidate was found. That is,
-								// actualValue is invalid.
-								// but not regard it as undefined value if it
-								// includes JSP.
-								if (hasJSPRegion(((IDOMNode) a).getValueRegion())) {
-									rgnType = REGION_VALUE;
-									state = ErrorState.UNDEFINED_VALUE_ERROR;
-								}
-							}
-						}
-					}
-				}
-				// <<D210422
-				if (state == ErrorState.NONE_ERROR) { // Need more check.
-					if (isXMLAttr) {
-						String source = ((IDOMAttr) a).getValueRegionText();
-						if (source != null) {
-							char firstChar = source.charAt(0);
-							char lastChar = source.charAt(source.length() - 1);
-							if (isQuote(firstChar) || isQuote(lastChar)) {
-								if (lastChar != firstChar) {
-									rgnType = REGION_VALUE;
-									state = ErrorState.UNCLOSED_ATTR_VALUE;
-								}
-							}
-						}
-					}
-				}
-				// D210422
-			}
-			if (state != ErrorState.NONE_ERROR) {
-				Segment seg = getErrorSegment((IDOMNode) a, rgnType);
-				if (seg != null)
-					reporter.report(MessageFactory.createMessage(new ErrorInfoImpl(state, seg, a)));
-			}
-		}
-	}
-
-	/**
-	 */
-	private boolean hasJSPRegion(ITextRegion container) {
-		if (!(container instanceof ITextRegionContainer))
-			return false;
-		ITextRegionList regions = ((ITextRegionContainer) container).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 == DOMRegionContext.XML_TAG_OPEN || (isNextedTagName(regionType)))
-				return true;
-		}
-		return false;
-	}
-
-    /**
-     * 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 isNextedTagName(String regionType) {
-		final String JSP_SCRIPTLET_OPEN = "JSP_SCRIPTLET_OPEN"; //$NON-NLS-1$
-		final String JSP_EXPRESSION_OPEN = "JSP_EXPRESSION_OPEN"; //$NON-NLS-1$
-		final String JSP_DECLARATION_OPEN = "JSP_DECLARATION_OPEN"; //$NON-NLS-1$
-		final String JSP_DIRECTIVE_OPEN = "JSP_DIRECTIVE_OPEN"; //$NON-NLS-1$
-
-		boolean result = regionType.equals(JSP_SCRIPTLET_OPEN) || regionType.equals(JSP_EXPRESSION_OPEN) || regionType.equals(JSP_DECLARATION_OPEN) || regionType.equals(JSP_DIRECTIVE_OPEN);
-		return result;
-	}
-
-	// <<D214022
-	private boolean isQuote(char c) {
-		return (c == SINGLE_QUOTE) || (c == DOUBLE_QUOTE);
-	}
-	// D210422
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/validate/HTMLDocumentContentValidator.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/validate/HTMLDocumentContentValidator.java
deleted file mode 100644
index 026e6d2..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/validate/HTMLDocumentContentValidator.java
+++ /dev/null
@@ -1,196 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this 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.core.internal.validate;
-
-
-import java.util.Iterator;
-import java.util.List;
-import java.util.Vector;
-
-import org.eclipse.wst.html.core.internal.provisional.HTML40Namespace;
-import org.eclipse.wst.sse.core.internal.provisional.IndexedRegion;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMElementDeclaration;
-import org.eclipse.wst.xml.core.internal.document.DocumentTypeAdapter;
-import org.eclipse.wst.xml.core.internal.provisional.document.IDOMDocument;
-import org.eclipse.wst.xml.core.internal.provisional.document.IDOMNode;
-import org.eclipse.wst.xml.core.internal.provisional.document.IDOMText;
-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 HTMLDocumentContentValidator extends PrimeValidator {
-
-
-	private final static class Division {
-		private Vector explicitHtmls = new Vector();
-		private Vector rest = new Vector();
-
-		public Division(Document document, NodeList children) {
-			String rootTagName = getRootTagName(document);
-			for (int i = 0; i < children.getLength(); i++) {
-				Node child = children.item(i);
-				if (isHtmlTag(child, rootTagName)) {
-					explicitHtmls.add(child);
-				}
-				else {
-					rest.add(child);
-				}
-			}
-		}
-
-		public boolean hasExplicitHtmls() {
-			return explicitHtmls.size() > 0;
-		}
-
-		public List getExplicitHtmls() {
-			return explicitHtmls;
-		}
-
-		public Iterator getRestNodes() {
-			return rest.iterator();
-		}
-
-		/* utilities */
-		private static boolean isHtmlTag(Node node, String tagName) {
-			if (node.getNodeType() != Node.ELEMENT_NODE)
-				return false;
-			return ((Element) node).getTagName().equalsIgnoreCase(tagName);
-		}
-
-		private static String getRootTagName(Document document) {
-			DocumentTypeAdapter adapter = (DocumentTypeAdapter) ((IDOMDocument) document).getAdapterFor(DocumentTypeAdapter.class);
-			if (adapter != null) {
-				DocumentType docType = adapter.getDocumentType();
-				if (docType != null) {
-					return docType.getName();
-				}
-			}
-
-			return HTML40Namespace.ElementName.HTML;
-		}
-	}
-
-	/**
-	 * HTMLDocumentContentValidator constructor comment.
-	 */
-	public HTMLDocumentContentValidator() {
-		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 == HTMLDocumentContentValidator.class) || super.isAdapterForType(type));
-	}
-
-	/**
-	 */
-	public void validate(IndexedRegion node) {
-		// isFragment check should be more intelligent.
-		boolean isFragment = true;
-
-		Document target = (Document) node;
-		NodeList children = target.getChildNodes();
-		if (children == null)
-			return;
-
-		Division division = new Division(target, children);
-		if (division.hasExplicitHtmls()) {
-			isFragment = false;
-
-			List explicits = division.getExplicitHtmls();
-			if (explicits.size() > 1) {
-				for (int i = 1; i < explicits.size(); i++) {
-					Element html = (Element) explicits.get(i);
-					// report error (duplicate)
-					Segment errorSeg = FMUtil.getSegment((IDOMNode) html, FMUtil.SEG_START_TAG);
-					if (errorSeg != null)
-						reporter.report(MessageFactory.createMessage(new ErrorInfoImpl(ErrorState.DUPLICATE_ERROR, errorSeg, html)));
-				}
-			}
-		}
-		validateContent(division.getRestNodes(), isFragment);
-	}
-
-	/*
-	 * This methods validate nodes other than HTML elements.
-	 */
-	private void validateContent(Iterator children, boolean isFragment) {
-		boolean foundDoctype = false;
-		while (children.hasNext()) {
-			IDOMNode child = (IDOMNode) children.next();
-
-			int error = ErrorState.NONE_ERROR;
-			int segType = FMUtil.SEG_WHOLE_TAG;
-
-			switch (child.getNodeType()) {
-				case Node.ELEMENT_NODE :
-					if (!isFragment) {
-						Element childElem = (Element) child;
-						CMElementDeclaration ced = CMUtil.getDeclaration(childElem);
-						// Undefined element is valid.
-						if (ced == null)
-							continue;
-						// JSP (includes custom tags) and SSI are valid.
-						if (CMUtil.isForeign(childElem) || CMUtil.isSSI(ced))
-							continue; // Defect 186774
-
-						// report error (invalid content)
-						error = ErrorState.INVALID_CONTENT_ERROR;
-						// mark the whole start tag as error.
-						segType = FMUtil.SEG_START_TAG;
-					}
-					break;
-				case Node.TEXT_NODE :
-					if (!isFragment) {
-						// TEXT node is valid when it contains white space
-						// characters only.
-						// Otherwise, it is invalid content.
-						if (((IDOMText) child).isElementContentWhitespace())
-							continue;
-						error = ErrorState.INVALID_CONTENT_ERROR;
-						segType = FMUtil.SEG_WHOLE_TAG;
-					}
-					break;
-				case Node.DOCUMENT_TYPE_NODE :
-					// DOCTYPE is also valid when it appears once and only
-					// once.
-					if (!foundDoctype) {
-						foundDoctype = true;
-						continue;
-					}
-					error = ErrorState.DUPLICATE_ERROR;
-					segType = FMUtil.SEG_WHOLE_TAG;
-					break;
-				case Node.COMMENT_NODE :
-				// always valid.
-				case Node.PROCESSING_INSTRUCTION_NODE :
-					continue;
-				default :
-					if (!isFragment) {
-						error = ErrorState.INVALID_CONTENT_ERROR;
-						segType = FMUtil.SEG_WHOLE_TAG;
-					}
-					break;
-			}
-			if (error != ErrorState.NONE_ERROR) {
-				Segment errorSeg = FMUtil.getSegment(child, segType);
-				if (errorSeg != null)
-					reporter.report(MessageFactory.createMessage(new ErrorInfoImpl(error, errorSeg, child)));
-			}
-		}
-	}
-
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/validate/HTMLElementAncestorValidator.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/validate/HTMLElementAncestorValidator.java
deleted file mode 100644
index 6ae5e13..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/validate/HTMLElementAncestorValidator.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.html.core.internal.validate;
-
-
-
-import org.eclipse.wst.html.core.internal.provisional.HTMLCMProperties;
-import org.eclipse.wst.sse.core.internal.provisional.IndexedRegion;
-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.provisional.document.IDOMNode;
-import org.w3c.dom.Element;
-
-public class HTMLElementAncestorValidator extends PrimeValidator {
-
-	/**
-	 * HTMLElementAncestorValidator constructor comment.
-	 */
-	public HTMLElementAncestorValidator() {
-		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 == HTMLElementAncestorValidator.class) || super.isAdapterForType(type));
-	}
-
-	/**
-	 * Check exclusion which is defined in only HTML DTD (SGML).
-	 */
-	public void validate(IndexedRegion node) {
-		Element target = (Element) node;
-		if (CMUtil.isForeign(target))
-			return;
-		CMElementDeclaration dec = CMUtil.getDeclaration(target);
-		if (dec == null)
-			return; // cannot validate.
-		if (!CMUtil.isHTML(dec))
-			return; // no need to validate
-		if (!dec.supports(HTMLCMProperties.PROHIBITED_ANCESTORS))
-			return; // cannot validate.
-		CMNamedNodeMap prohibited = (CMNamedNodeMap) dec.getProperty(HTMLCMProperties.PROHIBITED_ANCESTORS);
-		if (prohibited.getLength() <= 0)
-			return; // no prohibited ancestors.
-
-		Element parent = SMUtil.getParentElement(target);
-		while (parent != null) {
-			CMNode pdec = prohibited.getNamedItem(parent.getNodeName());
-			if (pdec != null) { // prohibited element is found in ancestors.
-				Segment errorSeg = FMUtil.getSegment((IDOMNode) node, FMUtil.SEG_START_TAG);
-				if (errorSeg != null)
-					reporter.report(MessageFactory.createMessage(new ErrorInfoImpl(ErrorState.INVALID_CONTENT_ERROR, errorSeg, target)));
-				break; // If one prohibited ancestor is found, it's enough.
-			}
-			parent = SMUtil.getParentElement(parent);
-		}
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/validate/HTMLElementContentValidator.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/validate/HTMLElementContentValidator.java
deleted file mode 100644
index 8ec0839..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/validate/HTMLElementContentValidator.java
+++ /dev/null
@@ -1,180 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this 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.core.internal.validate;
-
-import org.eclipse.wst.sse.core.internal.provisional.IndexedRegion;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMElementDeclaration;
-import org.eclipse.wst.xml.core.internal.provisional.document.IDOMNode;
-import org.eclipse.wst.xml.core.internal.provisional.document.IDOMText;
-import org.w3c.dom.Element;
-import org.w3c.dom.Node;
-import org.w3c.dom.NodeList;
-
-public class HTMLElementContentValidator extends PrimeValidator {
-
-	/**
-	 * HTMLElementContentValidator constructor comment.
-	 */
-	public HTMLElementContentValidator() {
-		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 == HTMLElementContentValidator.class) || super.isAdapterForType(type));
-	}
-
-	/**
-	 */
-	public void validate(IndexedRegion node) {
-		Element target = (Element) node;
-		if (CMUtil.isForeign(target))
-			return;
-
-		validateContent(target, target.getChildNodes());
-	}
-
-	private void validateContent(Element parent, NodeList children) {
-		for (int i = 0; i < children.getLength(); i++) {
-			Node child = children.item(i);
-			if (child == null)
-				continue;
-
-			// perform actual validation
-			validateNode(parent, child);
-		}
-	}
-
-	// private int countExplicitSiblings(Element parent, String tagName) {
-	// NodeList children = parent.getChildNodes();
-	// int count = 0;
-	// for (int i = 0; i < children.getLength(); i++) {
-	// Node child = children.item(i);
-	// if (child.getNodeType() != Node.ELEMENT_NODE)
-	// continue;
-	// if (tagName.equalsIgnoreCase(((Element) child).getTagName())) {
-	// count++;
-	// }
-	// }
-	// return count;
-	// }
-
-	/*
-	 * The implementation of the following method is practical but accurate.
-	 * The accurate maximum occurence should be retreive from the content
-	 * model. However, it is useful enough, since almost implicit elements are
-	 * HTML, HEAD, or BODY.
-	 */
-	// private int getMaxOccur(Element parent, String childTag) {
-	// return 1;
-	// }
-	private void validateNode(Element target, Node child) {
-		// NOTE: If the target element is 'UNKNOWN', that is, it has no
-		// element declaration, the content type of the element should be
-		// regarded as 'ANY'. -- 9/10/2001
-		int contentType = CMElementDeclaration.ANY;
-		CMElementDeclaration edec = CMUtil.getDeclaration(target);
-		if (edec != null)
-			contentType = edec.getContentType();
-
-		int error = ErrorState.NONE_ERROR;
-		int segType = FMUtil.SEG_WHOLE_TAG;
-
-		switch (child.getNodeType()) {
-			case Node.ELEMENT_NODE :
-				Element childElem = (Element) child;
-				// Defect 200321:
-				// This validator cares only HTML/XHTML elements. If a child
-				// is
-				// an element of foreign markup languages, just ignore it.
-				if (CMUtil.isForeign(childElem))
-					return;
-
-				CMElementDeclaration ced = CMUtil.getDeclaration((Element) child);
-				// Defect 186774: If a child is not one of HTML elements,
-				// it should be regarded as a valid child regardless the
-				// type of the parent content model. -- 10/12/2001
-				if (ced == null || CMUtil.isSSI(ced) || (!CMUtil.isHTML(ced)))
-					return;
-
-				switch (contentType) {
-					case CMElementDeclaration.ANY :
-						// Keep going.
-						return;
-					case CMElementDeclaration.ELEMENT :
-					case CMElementDeclaration.MIXED :
-						if (ced == null)
-							return;
-						if (CMUtil.isValidChild(edec, ced))
-							return;
-						// Now, it is the time to check inclusion, unless the
-						// target
-						// document is not a XHTML.
-						if (!CMUtil.isXHTML(edec)) {
-							// pure HTML
-							if (CMUtil.isValidInclusion(ced, target))
-								return;
-						}
-						error = ErrorState.INVALID_CONTENT_ERROR;
-						break;
-					default :
-						error = ErrorState.INVALID_CONTENT_ERROR;
-						break;
-				}
-				// Mark the whole START tag as an error segment.
-				segType = FMUtil.SEG_START_TAG;
-				break;
-			case Node.TEXT_NODE :
-				switch (contentType) {
-					case CMElementDeclaration.ANY :
-					case CMElementDeclaration.MIXED :
-					case CMElementDeclaration.PCDATA :
-					case CMElementDeclaration.CDATA :
-						// D184339
-						// Keep going.
-						return;
-					case CMElementDeclaration.ELEMENT :
-					case CMElementDeclaration.EMPTY :
-						if (((IDOMText) child).isElementContentWhitespace())
-							return;
-						error = ErrorState.INVALID_CONTENT_ERROR;
-						break;
-					default :
-						error = ErrorState.INVALID_CONTENT_ERROR;
-						break;
-				}
-				// Mark the whole node as an error segment.
-				segType = FMUtil.SEG_WHOLE_TAG;
-				break;
-			case Node.COMMENT_NODE :
-			case Node.PROCESSING_INSTRUCTION_NODE :
-				if (contentType != CMElementDeclaration.EMPTY)
-					return;
-				error = ErrorState.INVALID_CONTENT_ERROR;
-				// Mark the whole node as an error segment.
-				segType = FMUtil.SEG_WHOLE_TAG;
-				break;
-			default :
-				error = ErrorState.INVALID_CONTENT_ERROR;
-				// Mark the whole node as an error segment.
-				segType = FMUtil.SEG_WHOLE_TAG;
-				break;
-		}
-		if (error != ErrorState.NONE_ERROR) {
-			Segment errorSeg = FMUtil.getSegment((IDOMNode) child, segType);
-			if (errorSeg != null)
-				reporter.report(MessageFactory.createMessage(new ErrorInfoImpl(error, errorSeg, child)));
-		}
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/validate/HTMLSimpleDocumentValidator.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/validate/HTMLSimpleDocumentValidator.java
deleted file mode 100644
index f9a9392..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/validate/HTMLSimpleDocumentValidator.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.wst.html.core.internal.validate;
-
-
-import org.eclipse.wst.xml.core.internal.validate.ValidationComponent;
-
-class HTMLSimpleDocumentValidator extends CompositeValidator {
-
-	/**
-	 * HTMLSimpleDocumentValidator constructor comment.
-	 */
-	public HTMLSimpleDocumentValidator() {
-		super();
-
-		ValidationComponent[] validators = new ValidationComponent[2];
-
-		validators[0] = new HTMLDocumentContentValidator();
-		validators[1] = new SyntaxValidator();
-
-		register(validators);
-	}
-
-	/**
-	 * 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 == HTMLSimpleDocumentValidator.class) || super.isAdapterForType(type));
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/validate/HTMLSimpleValidator.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/validate/HTMLSimpleValidator.java
deleted file mode 100644
index ff2a5e1..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/validate/HTMLSimpleValidator.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.core.internal.validate;
-
-
-import org.eclipse.wst.xml.core.internal.validate.ValidationComponent;
-
-class HTMLSimpleValidator extends CompositeValidator {
-
-	/**
-	 * HTMLSimpleValidator constructor comment.
-	 */
-	public HTMLSimpleValidator() {
-		super();
-
-		ValidationComponent[] validators = new ValidationComponent[5];
-
-		validators[0] = new HTMLAttributeValidator();
-		validators[1] = new HTMLElementContentValidator();
-		validators[2] = new SyntaxValidator();
-		validators[3] = new HTMLElementAncestorValidator();
-		validators[4] = new NamespaceValidator();
-
-		register(validators);
-	}
-
-	/**
-	 * 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 == HTMLSimpleValidator.class) || super.isAdapterForType(type));
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/validate/HTMLValidationAdapterFactory.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/validate/HTMLValidationAdapterFactory.java
deleted file mode 100644
index 7b50886..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/validate/HTMLValidationAdapterFactory.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.wst.html.core.internal.validate;
-
-
-
-import org.eclipse.wst.sse.core.internal.provisional.AbstractAdapterFactory;
-import org.eclipse.wst.sse.core.internal.provisional.INodeAdapter;
-import org.eclipse.wst.sse.core.internal.provisional.INodeAdapterFactory;
-import org.eclipse.wst.sse.core.internal.provisional.INodeNotifier;
-import org.eclipse.wst.sse.core.internal.validate.ValidationAdapter;
-import org.w3c.dom.Node;
-
-public class HTMLValidationAdapterFactory extends AbstractAdapterFactory {
-
-	private static HTMLValidationAdapterFactory instance = null;
-
-	/**
-	 * HTMLValidationAdapterFactory constructor comment.
-	 */
-	public HTMLValidationAdapterFactory() {
-		super(ValidationAdapter.class, true);
-	}
-
-	/**
-	 * HTMLValidationAdapterFactory constructor comment.
-	 * @param adapterKey java.lang.Object
-	 * @param registerAdapters boolean
-	 */
-	public HTMLValidationAdapterFactory(Object adapterKey, boolean registerAdapters) {
-		super(adapterKey, registerAdapters);
-	}
-
-	/**
-	 */
-	protected INodeAdapter createAdapter(INodeNotifier target) {
-		Node node = (Node) target;
-		switch (node.getNodeType()) {
-			case Node.DOCUMENT_NODE :
-				return new DocumentPropagatingValidator();
-			case Node.ELEMENT_NODE :
-				return new ElementPropagatingValidator();
-			default :
-				return new NullValidator();
-		}
-	}
-
-	/**
-	 */
-	public synchronized static HTMLValidationAdapterFactory getInstance() {
-		if (instance != null)
-			return instance;
-		instance = new HTMLValidationAdapterFactory();
-		return instance;
-	}
-
-	/**
-	 * Overriding Object's clone() method
-	 * This is used in IModelManager's IStructuredModel copying.
-	 */
-	public INodeAdapterFactory copy() {
-		return getInstance();
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/validate/MessageFactory.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/validate/MessageFactory.java
deleted file mode 100644
index c60b51c..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/validate/MessageFactory.java
+++ /dev/null
@@ -1,253 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this 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.core.internal.validate;
-
-import java.util.Hashtable;
-
-import org.eclipse.osgi.util.NLS;
-import org.eclipse.wst.html.core.internal.HTMLCoreMessages;
-import org.eclipse.wst.html.core.internal.Logger;
-import org.eclipse.wst.sse.core.internal.validate.ValidationMessage;
-import org.w3c.dom.Node;
-
-class MessageFactory implements ErrorState {
-
-
-	private static class ErrorTable {
-		private class Packet {
-			public Packet(String msg, int severity) {
-				this.msg = msg;
-				this.severity = severity;
-			}
-
-			public String getMessage() {
-				return msg;
-			}
-
-			public int getSeverity() {
-				return severity;
-			}
-
-			private String msg = null;
-			private int severity = -1;
-		}
-
-		public ErrorTable() {
-		}
-
-		public void put(int state, String msg, int severity) {
-			Packet packet = new Packet(msg, severity);
-			map.put(new Integer(state), packet);
-		}
-
-		public String getMessage(int state) {
-			return getPacket(state).getMessage();
-		}
-
-		public int getSeverity(int state) {
-			return getPacket(state).getSeverity();
-		}
-
-		private Packet getPacket(int state) {
-			return (Packet) map.get(new Integer(state));
-		}
-
-		private Hashtable map = new Hashtable();
-	}
-
-	private static interface NodeType {
-		static final int ATTRIBUTE = 0;
-		static final int ELEMENT = 1;
-		static final int DOCUMENT_TYPE = 2;
-		static final int TEXT = 3;
-		static final int COMMENT = 4;
-		static final int CDATA_SECTION = 5;
-		static final int PROCESSING_INSTRUCTION = 6;
-		static final int ENTITY_REFERENCE = 7;
-
-		static final int MAX_TYPE = 8;
-	}
-
-	// error messages
-	private static final String MSG_NO_ERROR = HTMLCoreMessages.No_error__UI_;
-	private static final String MSG_UNDEFINED_ATTR_ERROR = HTMLCoreMessages.Undefined_attribute_name___ERROR_;
-	private static final String MSG_UNDEFINED_VALUE_ERROR = HTMLCoreMessages.Undefined_attribute_value__ERROR_;
-	private static final String MSG_DUPLICATE_ATTR_ERROR = HTMLCoreMessages.Multiple_values_specified__ERROR_;
-	private static final String MSG_MISMATCHED_ATTR_ERROR = HTMLCoreMessages.Attribute_name___0___uses__ERROR_;
-	private static final String MSG_INVALID_ATTR_ERROR = HTMLCoreMessages.Invalid_attribute_name___0_ERROR_;
-	private static final String MSG_ATTR_NO_VALUE_ERROR = HTMLCoreMessages.Invalid_attribute___0____ERROR_;
-	private static final String MSG_INVALID_CONTENT_ERROR = HTMLCoreMessages.Invalid_location_of_tag____ERROR_;
-	private static final String MSG_DUPLICATE_TAG_ERROR = HTMLCoreMessages.Duplicate_tag___0____ERROR_;
-	private static final String MSG_MISSING_START_TAG_ERROR = HTMLCoreMessages.No_start_tag____0_____ERROR_;
-	private static final String MSG_MISSING_END_TAG_ERROR = HTMLCoreMessages.No_end_tag_____0_____ERROR_;
-	private static final String MSG_UNNECESSARY_END_TAG_ERROR = HTMLCoreMessages.End_tag_____0____not_neede_ERROR_;
-	private static final String MSG_UNDEFINED_TAG_ERROR = HTMLCoreMessages.Unknown_tag___0____ERROR_;
-	private static final String MSG_MISMATCHED_TAG_ERROR = HTMLCoreMessages.Tag_name___0___uses_wrong__ERROR_;
-	private static final String MSG_INVALID_TAG_ERROR = HTMLCoreMessages.Invalid_tag_name___0____ERROR_;
-	private static final String MSG_INVALID_DIRECTIVE_ERROR = HTMLCoreMessages.Invalid_JSP_directive___0__ERROR_;
-	private static final String MSG_INVALID_TEXT_ERROR = HTMLCoreMessages.Invalid_text_string___0____ERROR_;
-	private static final String MSG_INVALID_CHAR_ERROR = HTMLCoreMessages.Invalid_character_used_in__ERROR_;
-	private static final String MSG_UNKNOWN_ERROR = HTMLCoreMessages.Unknown_error__ERROR_;
-	private static final String MSG_UNCLOSED_START_TAG_ERROR = HTMLCoreMessages.Start_tag____0____not_clos_ERROR_;
-	private static final String MSG_UNCLOSED_END_TAG_ERROR = HTMLCoreMessages.End_tag_____0____not_close_ERROR_;
-	private static final String MSG_MISMATCHED_ATTR_VALUE_ERROR = HTMLCoreMessages.Attribute_value___0___uses_ERROR_;
-	private static final String MSG_UNCLOSED_COMMENT_ERROR = HTMLCoreMessages.Comment_not_closed__ERROR_;
-	private static final String MSG_UNCLOSED_DOCTYPE_ERROR = HTMLCoreMessages.DOCTYPE_declaration_not_cl_ERROR_;
-	private static final String MSG_UNCLOSED_PI_ERROR = HTMLCoreMessages.Processing_instruction_not_ERROR_;
-	private static final String MSG_UNCLOSED_CDATA_SECTION_ERROR = HTMLCoreMessages.CDATA_section_not_closed__ERROR_;
-	private static final String MSG_INVALID_EMPTY_ELEMENT_TAG = HTMLCoreMessages._ERROR_Tag___0___should_be_an_empty_element_tag_1;
-	private static final String MSG_UNCLOSED_ATTR_VALUE_ERROR = HTMLCoreMessages._ERROR_Attribute_value___0___not_closed__1;
-	private static ErrorTable[] errTables = new ErrorTable[NodeType.MAX_TYPE];
-
-	static {
-		for (int i = 0; i < NodeType.MAX_TYPE; i++) {
-			errTables[i] = new ErrorTable();
-		}
-		// NOTE: The severities are just stub.  They must be reviewed.
-		// -- 8/30/2001
-
-		// attribute error map
-		ErrorTable attrTable = errTables[NodeType.ATTRIBUTE];// short hand
-		attrTable.put(NONE_ERROR, MSG_NO_ERROR, 0);
-		attrTable.put(UNDEFINED_NAME_ERROR, MSG_UNDEFINED_ATTR_ERROR, ValidationMessage.WARNING);
-		attrTable.put(UNDEFINED_VALUE_ERROR, MSG_UNDEFINED_VALUE_ERROR, ValidationMessage.WARNING);
-		attrTable.put(MISMATCHED_ERROR, MSG_MISMATCHED_ATTR_ERROR, ValidationMessage.WARNING);
-		attrTable.put(INVALID_NAME_ERROR, MSG_INVALID_ATTR_ERROR, ValidationMessage.WARNING);
-		attrTable.put(INVALID_ATTR_ERROR, MSG_ATTR_NO_VALUE_ERROR, ValidationMessage.WARNING);
-		attrTable.put(DUPLICATE_ERROR, MSG_DUPLICATE_ATTR_ERROR, ValidationMessage.WARNING);
-		attrTable.put(MISMATCHED_VALUE_ERROR, MSG_MISMATCHED_ATTR_VALUE_ERROR, ValidationMessage.ERROR);
-		//<<D210422
-		attrTable.put(UNCLOSED_ATTR_VALUE, MSG_UNCLOSED_ATTR_VALUE_ERROR, ValidationMessage.WARNING);
-		//D210422
-		// element error map
-		ErrorTable elemTable = errTables[NodeType.ELEMENT];// short hand
-		elemTable.put(NONE_ERROR, MSG_NO_ERROR, 0);
-		elemTable.put(UNDEFINED_NAME_ERROR, MSG_UNDEFINED_TAG_ERROR, ValidationMessage.WARNING);
-		elemTable.put(INVALID_NAME_ERROR, MSG_INVALID_TAG_ERROR, ValidationMessage.ERROR);
-		elemTable.put(MISMATCHED_ERROR, MSG_MISMATCHED_TAG_ERROR, ValidationMessage.WARNING);
-		elemTable.put(MISMATCHED_END_TAG_ERROR, MSG_MISMATCHED_TAG_ERROR, ValidationMessage.ERROR);
-		elemTable.put(MISSING_START_TAG_ERROR, MSG_MISSING_START_TAG_ERROR, ValidationMessage.ERROR);
-		elemTable.put(MISSING_END_TAG_ERROR, MSG_MISSING_END_TAG_ERROR, ValidationMessage.WARNING);
-		elemTable.put(UNNECESSARY_END_TAG_ERROR, MSG_UNNECESSARY_END_TAG_ERROR, ValidationMessage.WARNING);
-		elemTable.put(INVALID_DIRECTIVE_ERROR, MSG_INVALID_DIRECTIVE_ERROR, ValidationMessage.ERROR);
-		elemTable.put(INVALID_CONTENT_ERROR, MSG_INVALID_CONTENT_ERROR, ValidationMessage.WARNING);
-		elemTable.put(DUPLICATE_ERROR, MSG_DUPLICATE_TAG_ERROR, ValidationMessage.WARNING);
-		elemTable.put(COEXISTENCE_ERROR, MSG_INVALID_CONTENT_ERROR, ValidationMessage.WARNING);
-		elemTable.put(UNCLOSED_TAG_ERROR, MSG_UNCLOSED_START_TAG_ERROR, ValidationMessage.ERROR);
-		elemTable.put(UNCLOSED_END_TAG_ERROR, MSG_UNCLOSED_END_TAG_ERROR, ValidationMessage.ERROR);
-		elemTable.put(INVALID_EMPTY_ELEMENT_TAG, MSG_INVALID_EMPTY_ELEMENT_TAG, ValidationMessage.WARNING);
-
-		// document type error map
-		ErrorTable docTable = errTables[NodeType.DOCUMENT_TYPE];// short hand
-		docTable.put(NONE_ERROR, MSG_NO_ERROR, 0);
-		docTable.put(DUPLICATE_ERROR, MSG_DUPLICATE_TAG_ERROR, ValidationMessage.ERROR);
-		docTable.put(INVALID_CONTENT_ERROR, MSG_INVALID_CONTENT_ERROR, ValidationMessage.WARNING);
-		docTable.put(UNCLOSED_TAG_ERROR, MSG_UNCLOSED_DOCTYPE_ERROR, ValidationMessage.ERROR);
-
-		// text error map
-		ErrorTable textTable = errTables[NodeType.TEXT];
-		textTable.put(NONE_ERROR, MSG_NO_ERROR, 0);
-		textTable.put(INVALID_CONTENT_ERROR, MSG_INVALID_TEXT_ERROR, ValidationMessage.WARNING);
-		textTable.put(INVALID_CHAR_ERROR, MSG_INVALID_CHAR_ERROR, ValidationMessage.WARNING);
-
-		// comment error map
-		ErrorTable commTable = errTables[NodeType.COMMENT];
-		commTable.put(NONE_ERROR, MSG_NO_ERROR, 0);
-		commTable.put(INVALID_CONTENT_ERROR, MSG_INVALID_CONTENT_ERROR, ValidationMessage.WARNING);
-		commTable.put(UNCLOSED_TAG_ERROR, MSG_UNCLOSED_COMMENT_ERROR, ValidationMessage.ERROR);
-
-		// cdata section error map
-		ErrorTable cdatTable = errTables[NodeType.CDATA_SECTION];
-		cdatTable.put(NONE_ERROR, MSG_NO_ERROR, 0);
-		cdatTable.put(INVALID_CONTENT_ERROR, MSG_INVALID_CONTENT_ERROR, ValidationMessage.WARNING);
-		cdatTable.put(UNCLOSED_TAG_ERROR, MSG_UNCLOSED_CDATA_SECTION_ERROR, ValidationMessage.ERROR);
-
-		// processing instruction error map
-		ErrorTable piTable = errTables[NodeType.PROCESSING_INSTRUCTION];
-		piTable.put(NONE_ERROR, MSG_NO_ERROR, 0);
-		piTable.put(INVALID_CONTENT_ERROR, MSG_INVALID_CONTENT_ERROR, ValidationMessage.WARNING);
-		piTable.put(UNCLOSED_TAG_ERROR, MSG_UNCLOSED_PI_ERROR, ValidationMessage.ERROR);
-
-		// entity reference error map
-		ErrorTable erTable = errTables[NodeType.ENTITY_REFERENCE];
-		erTable.put(NONE_ERROR, MSG_NO_ERROR, 0);
-		erTable.put(UNDEFINED_NAME_ERROR, MSG_UNDEFINED_TAG_ERROR, ValidationMessage.WARNING);
-		erTable.put(INVALID_CONTENT_ERROR, MSG_INVALID_CONTENT_ERROR, ValidationMessage.WARNING);
-	}
-
-	/**
-	 */
-	public static ValidationMessage createMessage(ErrorInfo info) {
-		String errorMsg = getErrorMessage(info);
-		int errorSeverity = getErrorSeverity(info);
-		return new ValidationMessage(errorMsg, info.getOffset(), info.getLength(), errorSeverity);
-	}
-
-	private static String getErrorMessage(ErrorInfo info) {
-		ErrorTable tab = getErrorTable(info.getTargetType());
-		if (tab == null)
-			return MSG_UNKNOWN_ERROR;
-
-		String template = tab.getMessage(info.getState());
-		Object[] arguments = {info.getHint()};
-		String s = null;
-		try {
-			s = NLS.bind(template, arguments);
-		}
-		catch (IllegalArgumentException e) {
-			Logger.logException(e);
-			s = template + ":" + arguments.toString(); //$NON-NLS-1$
-		}
-		return s;
-	}
-
-	/**
-	 */
-	private static int getErrorSeverity(ErrorInfo info) {
-		ErrorTable tab = getErrorTable(info.getTargetType());
-		if (tab == null)
-			return 0;
-		return tab.getSeverity(info.getState());
-	}
-
-	private static ErrorTable getErrorTable(short nodetype) {
-		ErrorTable tab = null;
-		switch (nodetype) {
-			case Node.ATTRIBUTE_NODE :
-				tab = errTables[NodeType.ATTRIBUTE];
-				break;
-			case Node.ELEMENT_NODE :
-				tab = errTables[NodeType.ELEMENT];
-				break;
-			case Node.DOCUMENT_TYPE_NODE :
-				tab = errTables[NodeType.DOCUMENT_TYPE];
-				break;
-			case Node.TEXT_NODE :
-				tab = errTables[NodeType.TEXT];
-				break;
-			case Node.COMMENT_NODE :
-				tab = errTables[NodeType.COMMENT];
-				break;
-			case Node.CDATA_SECTION_NODE :
-				tab = errTables[NodeType.CDATA_SECTION];
-				break;
-			case Node.PROCESSING_INSTRUCTION_NODE :
-				tab = errTables[NodeType.PROCESSING_INSTRUCTION];
-				break;
-			case Node.ENTITY_REFERENCE_NODE :
-				tab = errTables[NodeType.ENTITY_REFERENCE];
-				break;
-			default :
-				return null;
-		}
-		return tab;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/validate/NamespaceValidator.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/validate/NamespaceValidator.java
deleted file mode 100644
index bda5f6f..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/validate/NamespaceValidator.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.wst.html.core.internal.validate;
-
-import org.eclipse.wst.sse.core.internal.provisional.IndexedRegion;
-import org.eclipse.wst.sse.core.internal.provisional.text.ITextRegion;
-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.provisional.document.IDOMAttr;
-import org.eclipse.wst.xml.core.internal.provisional.document.IDOMElement;
-import org.w3c.dom.Attr;
-import org.w3c.dom.Element;
-import org.w3c.dom.NamedNodeMap;
-import org.w3c.dom.Node;
-
-public class NamespaceValidator extends PrimeValidator implements ErrorState {
-
-	private final static String XMLNS_PREFIX = "xmlns";//$NON-NLS-1$
-	private final static String NS_SEPARATOR = ":";//$NON-NLS-1$
-
-	public NamespaceValidator() {
-		super();
-	}
-
-	public boolean isAdapterForType(Object type) {
-		return ((type == NamespaceValidator.class) || super.isAdapterForType(type));
-	}
-
-	public void validate(IndexedRegion node) {
-		Element target = (Element) node;
-		if (isXMLElement(target) && hasUnknownPrefix(target)) {
-			IDOMElement e = (IDOMElement) target;
-			if (!isValidPrefix(e.getPrefix(), target) && !e.isCommentTag()) {
-				// report unknown tag error.
-				Segment errorSeg = FMUtil.getSegment(e, FMUtil.SEG_START_TAG);
-				if (errorSeg != null)
-					reporter.report(MessageFactory.createMessage(new ErrorInfoImpl(UNDEFINED_NAME_ERROR, errorSeg, e)));
-			}
-		}
-		// (2) check prefix of each attr 
-		NamedNodeMap attrs = target.getAttributes();
-		for (int i = 0; i < attrs.getLength(); i++) {
-			Node n = attrs.item(i);
-			if (!(n instanceof IDOMAttr))
-				continue;
-			IDOMAttr a = (IDOMAttr) n;
-			String prefix = a.getPrefix();
-			if ((prefix != null) && isUnknownAttr(a, target)) {
-				// The attr has unknown prefix.  So, check it.
-				if (!isValidPrefix(prefix, target)) {
-					// report unknown attr error.
-					ITextRegion r = a.getNameRegion();
-					if (r == null)
-						continue;
-					int a_offset = a.getNameRegionStartOffset();
-					int a_length = a.getNameRegion().getLength();
-					reporter.report(MessageFactory.createMessage(new ErrorInfoImpl(UNDEFINED_NAME_ERROR, new Segment(a_offset, a_length), a)));
-				}
-			}
-		}
-	}
-
-	// private methods	
-	private boolean isXMLElement(Element target) {
-		return target instanceof IDOMElement;
-	}
-
-	private boolean hasUnknownPrefix(Element target) {
-		return isUnknownElement(target) && CMUtil.isForeign(target);
-	}
-
-	private boolean isUnknownElement(Element target) {
-		CMElementDeclaration dec = CMUtil.getDeclaration(target);
-		return dec == null;
-	}
-
-	private boolean isUnknownAttr(IDOMAttr attr, Element target) {
-		CMElementDeclaration dec = CMUtil.getDeclaration(target);
-		if (dec == null)
-			return true; // unknown.
-		CMNamedNodeMap adecls = dec.getAttributes();
-		CMAttributeDeclaration adec = (CMAttributeDeclaration) adecls.getNamedItem(attr.getName());
-		return adec == null;
-	}
-
-	private boolean isValidPrefix(String prefix, Element e) {
-		if (prefix.equals(XMLNS_PREFIX))
-			return true; // "xmlns:foo" attr is always valid.
-
-		// (1) check the element has the namespace definition or not.
-		if (isValidPrefixWithinElement(prefix, e))
-			return true;
-
-		// (2) check ancestors of the element have the namespace definition or not.
-		Element parent = SMUtil.getParentElement(e);
-		while (parent != null) {
-			if (isValidPrefixWithinElement(prefix, parent))
-				return true;
-			parent = SMUtil.getParentElement(parent);
-		}
-		return false;
-	}
-
-	private boolean isValidPrefixWithinElement(String prefix, Element e) {
-		String ns = XMLNS_PREFIX + NS_SEPARATOR + prefix;
-		NamedNodeMap attrs = e.getAttributes();
-		for (int i = 0; i < attrs.getLength(); i++) {
-			Node n = attrs.item(i);
-			if (n == null)
-				continue;
-			if (n.getNodeType() != Node.ATTRIBUTE_NODE)
-				continue;
-			if (ns.equals(((Attr) n).getName()))
-				return true;
-		}
-		return false;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/validate/NullValidator.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/validate/NullValidator.java
deleted file mode 100644
index fb1f93c..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/validate/NullValidator.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.core.internal.validate;
-
-import org.eclipse.wst.sse.core.internal.provisional.IndexedRegion;
-import org.eclipse.wst.sse.core.internal.validate.ValidationReporter;
-import org.eclipse.wst.xml.core.internal.validate.ValidationComponent;
-
-/**
- * NullValidator class is intended to be a replacement of null
- * for ValidationComponent type.
- */
-final class NullValidator extends ValidationComponent {
-
-	public NullValidator() {
-		super();
-	}
-
-	public void validate(IndexedRegion node) {
-		return;
-	}
-
-	public void setReporter(ValidationReporter reporter) {
-		return;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/validate/PrimeValidator.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/validate/PrimeValidator.java
deleted file mode 100644
index b44f258..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/validate/PrimeValidator.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.wst.html.core.internal.validate;
-
-
-
-import org.eclipse.wst.xml.core.internal.validate.ValidationComponent;
-
-abstract class PrimeValidator extends ValidationComponent {
-
-	/**
-	 * PrimeValidator constructor comment.
-	 */
-	public PrimeValidator() {
-		super();
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/validate/SMUtil.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/validate/SMUtil.java
deleted file mode 100644
index 6bf6fed..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/validate/SMUtil.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.wst.html.core.internal.validate;
-
-import org.w3c.dom.Element;
-import org.w3c.dom.Node;
-
-final class SMUtil {
-
-	private SMUtil() {
-		super();
-	}
-
-	/* get an ancestor element ignoring implicit ones. */
-	public static Element getParentElement(Node child) {
-		if (child == null)
-			return null;
-
-		Node p = child.getParentNode();
-		while (p != null) {
-			if (p.getNodeType() == Node.ELEMENT_NODE) {
-				return (Element) p;
-			}
-			p = p.getParentNode();
-		}
-		return null;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/validate/Segment.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/validate/Segment.java
deleted file mode 100644
index b9fd37e..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/validate/Segment.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
- *******************************************************************************/
-package org.eclipse.wst.html.core.internal.validate;
-
-
-
-import org.eclipse.wst.sse.core.internal.provisional.text.IStructuredDocumentRegion;
-
-public class Segment {
-
-	private int offset = 0;
-	private int length = 0;
-
-	/**
-	 */
-	public Segment(int offset, int length) {
-		super();
-		this.offset = offset;
-		this.length = length;
-	}
-
-	public Segment(IStructuredDocumentRegion region) {
-		super();
-		this.offset = region.getStartOffset();
-		this.length = region.getLength();
-	}
-
-	/**
-	 * NOTE: 'start' and 'end' must be the start and end of the contiguous regions.
-	 * Otherwise, this class cannot work correctly.
-	 */
-	public Segment(IStructuredDocumentRegion start, IStructuredDocumentRegion end) {
-		super();
-		this.offset = start.getStartOffset();
-		int endOffset = (end == null) ? start.getEndOffset() : end.getEndOffset();
-		this.length = endOffset - this.offset;
-	}
-
-	//public Segment(ITextRegion start, ITextRegion end) {
-	//	super();
-	//	this.offset = start.getStartOffset();
-	//	int endOffset = (end == null) ? start.getEndOffset() : end.getEndOffset();
-	//	this.length = endOffset - this.offset;
-	//}
-	/**
-	 */
-	public int getLength() {
-		return this.length;
-	}
-
-	/**
-	 */
-	public int getOffset() {
-		return this.offset;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/validate/SyntaxValidator.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/validate/SyntaxValidator.java
deleted file mode 100644
index ae6ac8d..0000000
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/validate/SyntaxValidator.java
+++ /dev/null
@@ -1,345 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this 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.core.internal.validate;
-
-import java.util.Iterator;
-
-import org.eclipse.wst.html.core.internal.document.HTMLDocumentTypeEntry;
-import org.eclipse.wst.html.core.internal.document.HTMLDocumentTypeRegistry;
-import org.eclipse.wst.sse.core.internal.provisional.IndexedRegion;
-import org.eclipse.wst.sse.core.internal.provisional.text.IStructuredDocumentRegion;
-import org.eclipse.wst.sse.core.internal.provisional.text.ITextRegion;
-import org.eclipse.wst.sse.core.internal.provisional.text.ITextRegionList;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMElementDeclaration;
-import org.eclipse.wst.xml.core.internal.document.InvalidCharacterException;
-import org.eclipse.wst.xml.core.internal.document.SourceValidator;
-import org.eclipse.wst.xml.core.internal.provisional.document.IDOMDocument;
-import org.eclipse.wst.xml.core.internal.provisional.document.IDOMElement;
-import org.eclipse.wst.xml.core.internal.provisional.document.IDOMNode;
-import org.eclipse.wst.xml.core.internal.regions.DOMRegionContext;
-import org.w3c.dom.Document;
-import org.w3c.dom.Element;
-import org.w3c.dom.Node;
-
-class SyntaxValidator extends PrimeValidator implements ErrorState {
-
-
-	static private boolean isValidRegion(ITextRegion rgn) {
-		String type = rgn.getType();
-		if (type == null)
-			return false; // no type is invalid.
-		if (type == DOMRegionContext.XML_END_TAG_OPEN || type == DOMRegionContext.XML_TAG_NAME || type == DOMRegionContext.XML_TAG_CLOSE) {
-			return true;
-		}
-		return false;
-	}
-
-	static private String getTagName(IStructuredDocumentRegion tag) {
-		ITextRegionList regions = tag.getRegions();
-		Iterator iter = regions.iterator();
-		while (iter.hasNext()) {
-			ITextRegion rgn = (ITextRegion) iter.next();
-			if (rgn.getType() == DOMRegionContext.XML_TAG_NAME)
-				return tag.getText(rgn);
-		}
-		return "";//$NON-NLS-1$
-	}
-
-	static private boolean isEmptyContent(CMElementDeclaration decl) {
-		return (decl != null) && (decl.getContentType() == CMElementDeclaration.EMPTY);
-	}
-
-	public SyntaxValidator() {
-		super();
-	}
-
-	public boolean isAdapterForType(Object type) {
-		return ((type == SyntaxValidator.class) || super.isAdapterForType(type));
-	}
-
-	class ElementInfo {
-		public ElementInfo() {
-			super();
-		}
-
-		public IDOMElement target = null;
-		public CMElementDeclaration decl = null;
-		public IStructuredDocumentRegion startTag = null;
-		public IStructuredDocumentRegion endTag = null;
-		public boolean hasStartTag = false;
-		public boolean hasEndTag = false;
-		public boolean isXHTML = false;
-	}
-
-	public void validate(IndexedRegion indexedNode) {
-		Node node = (Node) indexedNode;
-		validateChildren(node);
-
-		if (node.getNodeType() != Node.ELEMENT_NODE)
-			return;
-		if (!(node instanceof IDOMElement))
-			return;
-
-		ElementInfo info = new ElementInfo();
-		info.target = (IDOMElement) node;
-
-		// gather information to validate from target at once.
-		getInfo(info);
-
-		if (info.target.isGlobalTag()) {
-			validateTags(info);
-			validateNames(info);
-			if (info.decl != null && info.isXHTML) {
-				validateTagCase(info);
-			}
-		}
-	}
-
-	private void getInfo(ElementInfo info) {
-		info.decl = CMUtil.getDeclaration(info.target);
-		info.startTag = info.target.getStartStructuredDocumentRegion();
-		info.endTag = info.target.getEndStructuredDocumentRegion();
-
-		info.hasStartTag = (info.startTag != null);
-		info.hasEndTag = (info.endTag != null);
-
-		Document doc = info.target.getOwnerDocument();
-		if (!(doc instanceof IDOMDocument))
-			return;
-		String typeid = ((IDOMDocument) doc).getDocumentTypeId();
-		if (typeid != null) {
-			HTMLDocumentTypeEntry entry = HTMLDocumentTypeRegistry.getInstance().getEntry(typeid);
-			info.isXHTML = (entry != null && entry.isXMLType());
-		}
-	}
-
-	class TagErrorInfoImpl extends AbstractErrorInfo {
-		private String hint = null;
-
-		public TagErrorInfoImpl(int state, IStructuredDocumentRegion tag, String hint) {
-			super(state, new Segment(tag));
-			this.hint = hint;
-		}
-
-		public String getHint() {
-			return hint;
-		}
-
-		public short getTargetType() {
-			return Node.ELEMENT_NODE;
-		}
-	}
-
-	private boolean isEndTagCorrupted(ElementInfo info) {
-		ITextRegionList regions = info.endTag.getRegions();
-		if (regions == null || regions.isEmpty())
-			return false;
-		Iterator iter = regions.iterator();
-		while (iter.hasNext()) {
-			ITextRegion rgn = (ITextRegion) iter.next();
-			if (!isValidRegion(rgn))
-				return true; // found invalid region type.
-		}
-		return false; // all regions are valid.
-	}
-
-	private String getEndTagFullText(ElementInfo info) {
-		String hint = "";//$NON-NLS-1$
-		ITextRegionList regions = info.endTag.getRegions();
-		Iterator iter = regions.iterator();
-		while (iter.hasNext()) {
-			ITextRegion rgn = (ITextRegion) iter.next();
-			String type = rgn.getType();
-			if (type == null)
-				continue;
-			if (type == DOMRegionContext.XML_END_TAG_OPEN || type == DOMRegionContext.XML_TAG_CLOSE)
-				continue;
-			hint += info.endTag.getFullText(rgn);
-		}
-		return hint;
-	}
-
-	private void reportCorruptedEndTagError(ElementInfo info) {
-		String hint = getEndTagFullText(info);
-		TagErrorInfoImpl error = new TagErrorInfoImpl(UNDEFINED_NAME_ERROR, info.endTag, hint);
-		this.reporter.report(MessageFactory.createMessage(error));
-	}
-
-	private void validateTags(ElementInfo info) {
-		if (info.hasStartTag) {
-			if (!info.target.isStartTagClosed()) {
-				// Mark the whole START tag as an error segment.
-				Segment errorSeg = new Segment(info.startTag);
-				report(UNCLOSED_TAG_ERROR, errorSeg, info.target);
-			}
-		}
-		else {
-			if (info.hasEndTag) {
-				if (info.decl != null) {
-					if (CMUtil.isHTML(info.decl) && !info.target.hasChildNodes()) {
-						if (info.target.isContainer()) {
-							// Set the error mark to the start of the element.
-							Segment errorSeg = new Segment(info.target.getStartOffset(), 0);
-							report(MISSING_START_TAG_ERROR, errorSeg, info.target);
-						}
-						else {
-							// Mark the whole END tag as an error segment.
-							Segment errorSeg = new Segment(info.endTag);
-							report(UNNECESSARY_END_TAG_ERROR, errorSeg, info.target);
-						}
-					}
-					else if (info.isXHTML) {
-						Segment errorSeg = new Segment(info.target.getStartOffset(), 0);
-						report(MISSING_START_TAG_ERROR, errorSeg, info.target);
-					}
-				}
-			}
-		}
-
-		if (info.hasEndTag) {
-			if (!info.target.isClosed()) {
-				// Set the whole END tag as error segment.
-				Segment errorSeg = new Segment(info.endTag);
-				report(UNCLOSED_END_TAG_ERROR, errorSeg, info.target);
-			}
-		}
-		else {
-			if (info.isXHTML) { // XHTML
-				if (!info.target.isEmptyTag()) {
-					if (isEmptyContent(info.decl)) {
-						// EMPTY element should be written in <.../> form.
-						Segment errorSeg = FMUtil.getSegment(info.target, FMUtil.SEG_START_TAG);
-						report(INVALID_EMPTY_ELEMENT_TAG, errorSeg, info.target);
-					}
-					else {
-						// end tag is required.
-						Segment errorSeg = new Segment(info.target.getEndOffset(), 0);
-						report(MISSING_END_TAG_ERROR, errorSeg, info.target);
-					}
-				}
-			}
-			else { // HTML
-				if (info.hasStartTag) {
-					if (info.decl != null && CMUtil.isHTML(info.decl) && !info.target.isEmptyTag() && !CMUtil.isEndTagOmissible(info.decl)) {
-						// Set the error mark to the end of the element.
-						Segment errorSeg = new Segment(info.target.getEndOffset(), 0);
-						report(MISSING_END_TAG_ERROR, errorSeg, info.target);
-					}
-				}
-			}
-		}
-	}
-
-	/* perform validation about tag name definition. */
-	private void validateNames(ElementInfo info) {
-		boolean corrupted = info.hasEndTag && isEndTagCorrupted(info);
-		if (info.decl == null) {
-			// If no declaration is retrieved, the target is really
-			// unknown element.
-			if (!info.hasStartTag && corrupted) {
-				reportCorruptedEndTagError(info);
-			}
-			else {
-				Segment errorSeg = FMUtil.getSegment(info.target, FMUtil.SEG_START_TAG);
-				report(UNDEFINED_NAME_ERROR, errorSeg, info.target);
-			}
-		}
-		else {
-			// Even if a declaration could be retrieved, if the end
-			// tag is corrupted, it should be reported as undefined
-			// name. (D202493)
-			if (corrupted) {
-				reportCorruptedEndTagError(info);
-			}
-		}
-	}
-
-	/* perform validation tag case only for XHTML document */
-	private void validateTagCase(ElementInfo info) {
-		String declared = info.decl.getElementName();
-		String startTagName = "";//$NON-NLS-1$
-		String endTagName = "";//$NON-NLS-1$
-		if (declared == null)
-			return;
-
-		// start tag
-		if (info.hasStartTag) {
-			startTagName = getTagName(info.startTag);
-			if (!declared.equals(startTagName)) {
-				TagErrorInfoImpl error = new TagErrorInfoImpl(MISMATCHED_ERROR, info.startTag, startTagName);
-				this.reporter.report(MessageFactory.createMessage(error));
-			}
-		}
-		// end tag
-		if (info.hasEndTag) {
-			endTagName = getTagName(info.endTag);
-			if (!info.hasStartTag || (!endTagName.equals(startTagName))) {
-				if (!declared.equals(endTagName)) {
-					TagErrorInfoImpl error = new TagErrorInfoImpl(MISMATCHED_ERROR, info.endTag, endTagName);
-					this.reporter.report(MessageFactory.createMessage(error));
-				}
-			}
-		}
-	}
-
-	private void validateChildren(Node target) {
-		if ((target.getNodeType() == Node.ELEMENT_NODE) && CMUtil.isForeign((Element) target))
-			return;
-
-		for (Node child = target.getFirstChild(); child != null; child = child.getNextSibling()) {
-			switch (child.getNodeType()) {
-				case Node.TEXT_NODE :
-					{
-						IDOMNode text = (IDOMNode) child;
-						int charOffset = validateTextSource(text);
-						if (charOffset >= 0) {
-							charOffset += text.getStartOffset();
-							Segment errorSeg = new Segment(charOffset, 1);
-							if (errorSeg != null)
-								report(INVALID_CHAR_ERROR, errorSeg, text);
-						}
-						break;
-					}
-				case Node.COMMENT_NODE :
-				case Node.DOCUMENT_TYPE_NODE :
-				case Node.PROCESSING_INSTRUCTION_NODE :
-				case Node.CDATA_SECTION_NODE :
-					{
-						IDOMNode tag = (IDOMNode) child;
-						if (!tag.isClosed()) {
-							Segment errorSeg = FMUtil.getSegment(tag, FMUtil.SEG_WHOLE_TAG);
-							if (errorSeg != null)
-								report(UNCLOSED_TAG_ERROR, errorSeg, tag);
-						}
-						break;
-					}
-				default :
-					break;
-			}
-		}
-	}
-
-	private int validateTextSource(IDOMNode text) {
-		try {
-			SourceValidator validator = new SourceValidator(text);
-			validator.validateSource(text.getSource());
-		}
-		catch (InvalidCharacterException ex) {
-			return ex.getOffset();
-		}
-		return -1;
-	}
-
-	private void report(int state, Segment errorSeg, Node node) {
-		ErrorInfo info = new ErrorInfoImpl(state, errorSeg, node);
-		reporter.report(MessageFactory.createMessage(info));
-	}
-}
\ No newline at end of file
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 4953857..0000000
--- a/bundles/org.eclipse.wst.html.ui/.settings/org.eclipse.jdt.core.prefs
+++ /dev/null
@@ -1,50 +0,0 @@
-#Mon May 30 17:55:36 EDT 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=error
-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/.settings/org.eclipse.pde.prefs b/bundles/org.eclipse.wst.html.ui/.settings/org.eclipse.pde.prefs
deleted file mode 100644
index 42fb716..0000000
--- a/bundles/org.eclipse.wst.html.ui/.settings/org.eclipse.pde.prefs
+++ /dev/null
@@ -1,14 +0,0 @@
-#Fri May 27 23:56:32 EDT 2005
-compilers.p.deprecated=1
-compilers.p.illegal-att-value=0
-compilers.p.no-required-att=0
-compilers.p.not-externalized-att=1
-compilers.p.unknown-attribute=0
-compilers.p.unknown-class=0
-compilers.p.unknown-element=0
-compilers.p.unknown-resource=0
-compilers.p.unresolved-ex-points=0
-compilers.p.unresolved-import=0
-compilers.p.unused-element-or-attribute=0
-compilers.use-project=true
-eclipse.preferences.version=1
diff --git a/bundles/org.eclipse.wst.html.ui/META-INF/MANIFEST.MF b/bundles/org.eclipse.wst.html.ui/META-INF/MANIFEST.MF
deleted file mode 100644
index 8a1d0c9..0000000
--- a/bundles/org.eclipse.wst.html.ui/META-INF/MANIFEST.MF
+++ /dev/null
@@ -1,48 +0,0 @@
-Manifest-Version: 1.0
-Bundle-ManifestVersion: 2
-Bundle-Name: %pluginName
-Bundle-SymbolicName: org.eclipse.wst.html.ui; singleton:=true
-Bundle-Version: 1.0.0
-Bundle-Activator: org.eclipse.wst.html.ui.internal.HTMLUIPlugin
-Bundle-Vendor: %providerName
-Bundle-Localization: plugin
-Export-Package: org.eclipse.wst.html.internal.validation,
- org.eclipse.wst.html.ui.internal,
- org.eclipse.wst.html.ui.internal.contentassist,
- org.eclipse.wst.html.ui.internal.contentoutline,
- org.eclipse.wst.html.ui.internal.contentproperties.ui,
- org.eclipse.wst.html.ui.internal.edit.ui,
- org.eclipse.wst.html.ui.internal.editor,
- org.eclipse.wst.html.ui.internal.hyperlink,
- org.eclipse.wst.html.ui.internal.preferences,
- org.eclipse.wst.html.ui.internal.preferences.ui,
- org.eclipse.wst.html.ui.internal.projection,
- org.eclipse.wst.html.ui.internal.provisional,
- org.eclipse.wst.html.ui.internal.registry,
- org.eclipse.wst.html.ui.internal.search,
- org.eclipse.wst.html.ui.internal.style,
- org.eclipse.wst.html.ui.internal.taginfo,
- org.eclipse.wst.html.ui.internal.templates,
- org.eclipse.wst.html.ui.internal.text,
- org.eclipse.wst.html.ui.internal.views.contentoutline,
- org.eclipse.wst.html.ui.internal.wizard
-Require-Bundle: org.eclipse.ui.ide,
- org.eclipse.ui.views,
- org.eclipse.jface.text,
- org.eclipse.ui.workbench.texteditor,
- org.eclipse.ui.editors,
- org.eclipse.ui,
- org.eclipse.wst.sse.ui,
- org.eclipse.wst.xml.ui,
- org.eclipse.wst.css.ui,
- org.eclipse.wst.sse.core,
- org.eclipse.wst.css.core,
- org.eclipse.wst.html.core,
- org.eclipse.wst.xml.core,
- org.eclipse.core.resources,
- org.eclipse.core.runtime,
- org.eclipse.jdt.ui,
- org.eclipse.wst.common.uriresolver,
- org.eclipse.wst.validation,
- org.eclipse.wst.javascript.ui
-Eclipse-AutoStart: true
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 b4552b1..0000000
--- a/bundles/org.eclipse.wst.html.ui/build.properties
+++ /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
-###############################################################################
-bin.includes = plugin.xml,\
-               icons/,\
-               plugin.properties,\
-               templates/,\
-               META-INF/.\
-               .
-source.. = src/,\
-           src-html-validation/
-src.includes = plugin.xml,\
-               plugin.properties,\
-               icons/,\
-               build.xml,\
-               templates/
\ No newline at end of file
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 54d672f..0000000
--- a/bundles/org.eclipse.wst.html.ui/plugin.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
-###############################################################################
-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
-###############################################################################
-#org.eclipse.ui.newWizards extension point
-_UI_WIZARD_NAME = HTML
-_UI_WIZARD_CREATE_NEW_FILE = Create a new HTML page
-##
-AddTask.label=Add &Task...
-AddTask.tooltip=Add Task...
-AddBookmark.label=Add Boo&kmark...
-AddBookmark.tooltip=Add Bookmark...
\ No newline at end of file
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 78a2347..0000000
--- a/bundles/org.eclipse.wst.html.ui/plugin.xml
+++ /dev/null
@@ -1,419 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<?eclipse version="3.0"?>
-<plugin>
-
-     <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"
-            default="true"
-            contributorClass="org.eclipse.wst.html.ui.internal.edit.ui.ActionContributorHTML"
-            class="org.eclipse.wst.html.ui.internal.provisional.StructuredTextEditorHTML"
-            symbolicFontName="org.eclipse.wst.sse.ui.textfont"
-            id="org.eclipse.wst.html.core.htmlsource.source">
-      <contentTypeBinding contentTypeId="org.eclipse.wst.html.core.htmlsource" />
-      </editor>
-   </extension>
-   <extension
-         point="org.eclipse.wst.sse.ui.extendedconfiguration"> 
-      <configuration
-      		type="textviewerconfiguration"
-            class="org.eclipse.wst.html.ui.internal.provisional.StructuredTextViewerConfigurationHTML"
-            target="org.eclipse.wst.html.core.htmlsource"/>
-      <configuration
-      		type="contentoutlineconfiguration"
-            class="org.eclipse.wst.html.ui.internal.views.contentoutline.HTMLContentOutlineConfiguration"
-            target="org.eclipse.wst.html.core.htmlsource"/>
-      <configuration
-      		type="propertysheetconfiguration"
-            class="org.eclipse.wst.xml.ui.internal.views.properties.XMLPropertySheetConfiguration"
-            target="org.eclipse.wst.html.core.htmlsource"/>
-      <configuration
-      		type="sourceeditingtexttools"
-            class="org.eclipse.wst.xml.ui.internal.provisional.XMLSourceEditingTextTools"
-            target="org.eclipse.wst.html.core.htmlsource"/>
-      <configuration
-      		type="characterpairmatcher"
-            class="org.eclipse.wst.html.ui.internal.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.internal.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.internal.registry.AdapterFactoryProviderForEmbeddedHTML">
-      </embeddedAdapterFactoryProvider>
-   </extension>
-   <extension
-         point="org.eclipse.ui.preferencePages">
-<!-- HTML PREFERENCE PAGES-->
-      <page
-            name="%HTML_Files.name"
-            category="org.eclipse.wst.sse.ui.internal.provisional.preferences"
-            class="org.eclipse.wst.html.ui.internal.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.internal.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.internal.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.internal.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.internal.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.internal.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.internal.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.internal.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.internal.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.internal.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.internal.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.internal.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.internal.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.internal.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.core.htmlsource.source">
-         </part>
-      </actionSetPartAssociation>
-      <actionSetPartAssociation
-            targetID="org.eclipse.ui.NavigateActionSet">
-         <part
-               id="org.eclipse.wst.html.core.htmlsource.source">
-         </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.common.modulecore.ModuleCoreNature">
-      </projectNature>
-      <projectNature
-        id="org.eclipse.jdt.core.javanature">
-      </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.internal.validation.HTMLValidationWorkbenchHelper">
-	  </helper>
-	  <run
-	  	enabled="false"
-		class="org.eclipse.wst.html.internal.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.internal.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 HTML 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>
-	
-   <!-- Add new HTML wizard to J2EE Project Navigator -->
-   <extension
-		point="org.eclipse.wst.common.navigator.workbench.commonWizard">
-        <commonWizard
-			type="new"
-            wizardId="org.eclipse.wst.html.ui.internal.wizard.NewHTMLWizard">
-			<enablement>
-				<or>
-		           <objectClass 
-		                name="org.eclipse.core.resources.IProject">
-		           </objectClass>
-		           <objectClass
-		                 name="org.eclipse.core.resources.IFolder">
-		           </objectClass> 
-		           <objectClass
-		                 name="org.eclipse.core.resources.IFile">
-		           </objectClass> 
-				</or>
-			</enablement>
-       </commonWizard>
-    </extension> 
-	
-	<extension
-		point="org.eclipse.ui.popupMenus">
-		<viewerContribution
-			targetID="org.eclipse.wst.html.core.htmlsource.source.RulerContext"
-            id="org.eclipse.ui.texteditor.ruler.context.actions">
-			<action
-				label="%AddTask.label"
-				helpContextId="org.eclipse.ui.AddTask_action_context"
-				class="org.eclipse.ui.texteditor.TaskRulerAction"
-				tooltip="%AddTask.tooltip"
-				menubarPath="additions"
-				id="org.eclipse.ui.texteditor.TaskRulerAction">
-			</action>
-			<action
-				label="%AddBookmark.label"
-				helpContextId="org.eclipse.ui.bookmark_action_context"
-				class="org.eclipse.ui.texteditor.BookmarkRulerAction"
-				tooltip="%AddBookmark.tooltip"
-				menubarPath="additions"
-				id="org.eclipse.ui.texteditor.BookmarkRulerAction">
-			</action>
-		</viewerContribution>
-	</extension>
-</plugin>
diff --git a/bundles/org.eclipse.wst.html.ui/src-html-validation/org/eclipse/wst/html/internal/validation/HTMLValidationHelper.java b/bundles/org.eclipse.wst.html.ui/src-html-validation/org/eclipse/wst/html/internal/validation/HTMLValidationHelper.java
deleted file mode 100644
index 37e76a2..0000000
--- a/bundles/org.eclipse.wst.html.ui/src-html-validation/org/eclipse/wst/html/internal/validation/HTMLValidationHelper.java
+++ /dev/null
@@ -1,52 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2001, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.html.internal.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/internal/validation/HTMLValidationReporter.java b/bundles/org.eclipse.wst.html.ui/src-html-validation/org/eclipse/wst/html/internal/validation/HTMLValidationReporter.java
deleted file mode 100644
index 319f5b1..0000000
--- a/bundles/org.eclipse.wst.html.ui/src-html-validation/org/eclipse/wst/html/internal/validation/HTMLValidationReporter.java
+++ /dev/null
@@ -1,134 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2001, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.html.internal.validation;
-
-import org.eclipse.core.resources.IFile;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.wst.sse.core.internal.provisional.IStructuredModel;
-import org.eclipse.wst.sse.core.internal.provisional.text.IStructuredDocument;
-import org.eclipse.wst.sse.core.internal.validate.ValidationMessage;
-import org.eclipse.wst.sse.core.internal.validate.ValidationReporter;
-import org.eclipse.wst.validation.internal.provisional.core.IMessage;
-import org.eclipse.wst.validation.internal.provisional.core.IReporter;
-import org.eclipse.wst.validation.internal.provisional.core.IValidator;
-
-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/internal/validation/HTMLValidationResult.java b/bundles/org.eclipse.wst.html.ui/src-html-validation/org/eclipse/wst/html/internal/validation/HTMLValidationResult.java
deleted file mode 100644
index 90c9f77..0000000
--- a/bundles/org.eclipse.wst.html.ui/src-html-validation/org/eclipse/wst/html/internal/validation/HTMLValidationResult.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.html.internal.validation;
-
-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/internal/validation/HTMLValidationWorkbenchHelper.java b/bundles/org.eclipse.wst.html.ui/src-html-validation/org/eclipse/wst/html/internal/validation/HTMLValidationWorkbenchHelper.java
deleted file mode 100644
index 90bfde5..0000000
--- a/bundles/org.eclipse.wst.html.ui/src-html-validation/org/eclipse/wst/html/internal/validation/HTMLValidationWorkbenchHelper.java
+++ /dev/null
@@ -1,47 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2001, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.html.internal.validation;
-
-import org.eclipse.core.resources.IFile;
-import org.eclipse.wst.validation.internal.operations.WorkbenchContext;
-
-public class HTMLValidationWorkbenchHelper extends WorkbenchContext {
-	/**
-	 */
-	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/internal/validation/HTMLValidator.java b/bundles/org.eclipse.wst.html.ui/src-html-validation/org/eclipse/wst/html/internal/validation/HTMLValidator.java
deleted file mode 100644
index 01c6aa2..0000000
--- a/bundles/org.eclipse.wst.html.ui/src-html-validation/org/eclipse/wst/html/internal/validation/HTMLValidator.java
+++ /dev/null
@@ -1,291 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2001, 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this 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.internal.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.internal.validate.HTMLValidationAdapterFactory;
-import org.eclipse.wst.html.ui.internal.HTMLUIMessages;
-import org.eclipse.wst.sse.core.internal.provisional.IModelManager;
-import org.eclipse.wst.sse.core.internal.provisional.INodeAdapterFactory;
-import org.eclipse.wst.sse.core.internal.provisional.IStructuredModel;
-import org.eclipse.wst.sse.core.internal.provisional.StructuredModelManager;
-import org.eclipse.wst.sse.core.internal.util.URIResolver;
-import org.eclipse.wst.sse.core.internal.validate.ValidationAdapter;
-import org.eclipse.wst.validation.internal.core.Message;
-import org.eclipse.wst.validation.internal.operations.IWorkbenchContext;
-import org.eclipse.wst.validation.internal.operations.WorkbenchReporter;
-import org.eclipse.wst.validation.internal.provisional.core.IMessage;
-import org.eclipse.wst.validation.internal.provisional.core.IReporter;
-import org.eclipse.wst.validation.internal.provisional.core.IValidationContext;
-import org.eclipse.wst.validation.internal.provisional.core.IValidator;
-import org.eclipse.wst.xml.core.internal.document.DocumentTypeAdapter;
-import org.eclipse.wst.xml.core.internal.provisional.document.IDOMDocument;
-import org.eclipse.wst.xml.core.internal.provisional.document.IDOMModel;
-
-public class HTMLValidator implements IValidator {
-	/**
-	 */
-	public HTMLValidator() {
-		super();
-	}
-
-	/**
-	 */
-	public void cleanup(IReporter reporter) {
-		// nothing to do
-	}
-
-	/**
-	 */
-	protected IDOMModel 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 IDOMModel)) {
-			releaseModel(model);
-			return null;
-		}
-		return (IDOMModel) model;
-	}
-
-	/**
-	 */
-	protected HTMLValidationReporter getReporter(IReporter reporter, IFile file, IDOMModel 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(IDOMDocument 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(IValidationContext helper, IReporter reporter) {
-		if (helper == null)
-			return;
-		if ((reporter != null) && (reporter.isCancelled() == true)) {
-			throw new OperationCanceledException();
-		}
-		String[] deltaArray = helper.getURIs();
-		if (deltaArray != null && deltaArray.length > 0) {
-			validateDelta(helper, reporter);
-		}
-		else {
-			validateFull(helper, reporter);
-		}
-	}
-
-	/**
-	 */
-	protected HTMLValidationResult validate(IDOMModel 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, IDOMModel model) {
-		if (file == null || model == null)
-			return null; // error
-		IDOMDocument document = model.getDocument();
-		if (document == null)
-			return null; // error
-		if (!hasHTMLFeature(document))
-			return null; // ignore
-
-		INodeAdapterFactory 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, HTMLUIMessages.MESSAGE_HTML_VALIDATION_MESSAGE_UI_);
-			mess.setParams(args);
-			reporter.displaySubtask(this, mess);
-		}
-		adapter.validate(document);
-		return rep.getResult();
-	}
-
-	/**
-	 */
-	private void validateContainer(IValidationContext 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(IValidationContext helper, IReporter reporter) {
-		String[] deltaArray = helper.getURIs();
-		for (int i = 0; i < deltaArray.length; i++) {
-			String delta = deltaArray[i];
-			if (delta == null)
-				continue;
-			IResource resource = getResource(delta);
-			if (resource == null || !(resource instanceof IFile))
-				continue;
-			validateFile(helper, reporter, (IFile) resource);
-		}
-	}
-
-	/**
-	 */
-	private void validateFile(IValidationContext helper, IReporter reporter, IFile file) {
-		if ((reporter != null) && (reporter.isCancelled() == true)) {
-			throw new OperationCanceledException();
-		}
-		IDOMModel model = getModel(file.getProject(), file);
-		if (model == null)
-			return;
-
-		try {
-			validate(reporter, file, model);
-		}
-		finally {
-			releaseModel(model);
-		}
-	}
-
-	/**
-	 */
-	private void validateFull(IValidationContext helper, IReporter reporter) {
-		IProject project = null;
-		String[] fileDelta = helper.getURIs();
-		if (helper instanceof IWorkbenchContext) {
-			IWorkbenchContext wbHelper = (IWorkbenchContext) 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
-	 * 
-	 */
-	public IResource getResource(String delta) {
-		return  ResourcesPlugin.getWorkspace().getRoot().getFile(new Path(delta));
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.ui/src-html-validation/org/eclipse/wst/html/internal/validation/LocalizedMessage.java b/bundles/org.eclipse.wst.html.ui/src-html-validation/org/eclipse/wst/html/internal/validation/LocalizedMessage.java
deleted file mode 100644
index 5eba129..0000000
--- a/bundles/org.eclipse.wst.html.ui/src-html-validation/org/eclipse/wst/html/internal/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.internal.validation;
-
-import java.util.Locale;
-
-import org.eclipse.core.resources.IResource;
-import org.eclipse.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/internal/validation/TaskListHelper.java b/bundles/org.eclipse.wst.html.ui/src-html-validation/org/eclipse/wst/html/internal/validation/TaskListHelper.java
deleted file mode 100644
index 04c1abf..0000000
--- a/bundles/org.eclipse.wst.html.ui/src-html-validation/org/eclipse/wst/html/internal/validation/TaskListHelper.java
+++ /dev/null
@@ -1,46 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2001, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.html.internal.validation;
-
-import org.eclipse.core.resources.IResource;
-import org.eclipse.core.runtime.CoreException;
-
-/**
- * pa_TODO moved this class here for now to remove dependency on
- * validation packages
- * 
- * 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/internal/validation/TaskListUtility.java b/bundles/org.eclipse.wst.html.ui/src-html-validation/org/eclipse/wst/html/internal/validation/TaskListUtility.java
deleted file mode 100644
index ffdeb79..0000000
--- a/bundles/org.eclipse.wst.html.ui/src-html-validation/org/eclipse/wst/html/internal/validation/TaskListUtility.java
+++ /dev/null
@@ -1,435 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2001, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.html.internal.validation;
-
-import org.eclipse.core.resources.IMarker;
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.resources.IResource;
-import org.eclipse.core.resources.IWorkspaceRoot;
-import org.eclipse.core.resources.ResourcesPlugin;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.wst.validation.internal.provisional.core.IMessage;
-
-/**
- * This class must be called only by the validation framework.
- * 
- * This singleton interacts with the eclipse workbench's Task list.
- * TaskListUtility adds and removes tasks from the list.
- * 
- * This class must not be called outside of an IWorkspaceRunnable or
- * IRunnableWithProgress. Many resource deltas can be generated by the methods
- * in this class.
- * 
- * This came from 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/internal/HTMLUIMessages.java b/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/HTMLUIMessages.java
deleted file mode 100644
index 0c12e67..0000000
--- a/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/HTMLUIMessages.java
+++ /dev/null
@@ -1,110 +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 - Initial API and implementation
- **********************************************************************/
-package org.eclipse.wst.html.ui.internal;
-
-import java.util.MissingResourceException;
-import java.util.ResourceBundle;
-
-import org.eclipse.osgi.util.NLS;
-
-/**
- * Strings used by HTML UI
- * 
- * @since 1.0
- */
-public class HTMLUIMessages extends NLS {
-	private static final String BUNDLE_NAME = "org.eclipse.wst.html.ui.internal.HTMLUIPluginResources";//$NON-NLS-1$
-	private static ResourceBundle fResourceBundle;
-
-	public static String Sample_HTML_doc;
-	public static String HTMLFilesPreferencePage_0;
-	public static String _UI_WIZARD_NEW_TITLE;
-	public static String _UI_WIZARD_NEW_HEADING;
-	public static String _UI_WIZARD_NEW_DESCRIPTION;
-	public static String _ERROR_FILENAME_MUST_END_HTML;
-	public static String NewHTMLTemplatesWizardPage_0;
-	public static String NewHTMLTemplatesWizardPage_1;
-	public static String NewHTMLTemplatesWizardPage_2;
-	public static String NewHTMLTemplatesWizardPage_3;
-	public static String NewHTMLTemplatesWizardPage_4;
-	public static String NewHTMLTemplatesWizardPage_5;
-	public static String NewHTMLTemplatesWizardPage_6;
-	public static String Creating_files_encoding;
-	public static String MESSAGE_HTML_VALIDATION_MESSAGE_UI_;
-	public static String CleanupDocument_label; // resource bundle
-	public static String CleanupDocument_tooltip; // resource bundle
-	public static String CleanupDocument_description; // resource bundle
-	public static String ToggleComment_label; // resource bundle
-	public static String ToggleComment_tooltip; // resource bundle
-	public static String ToggleComment_description; // resource bundle
-	public static String AddBlockComment_label; // resource bundle
-	public static String AddBlockComment_tooltip; // resource bundle
-	public static String AddBlockComment_description; // resource bundle
-	public static String RemoveBlockComment_label; // resource bundle
-	public static String RemoveBlockComment_tooltip; // resource bundle
-	public static String RemoveBlockComment_description; // resource bundle
-	public static String FindOccurrences_label;	// resource bundle
-	public static String Creating_files;
-	public static String Encoding_desc;
-	public static String UI_Description_of_role_of_following_DOCTYPE;
-	public static String UI_Public_ID;
-	public static String UI_System_ID;
-	public static String UI_none;
-	public static String Preferred_markup_case_UI_;
-	public static String Tag_names__UI_;
-	public static String Tag_names_Upper_case_UI_;
-	public static String Tag_names_Lower_case_UI_;
-	public static String Attribute_names__UI_;
-	public static String Attribute_names_Upper_case_UI_;
-	public static String Attribute_names_Lower_case_UI_;
-	public static String Cleanup_UI_;
-	public static String Tag_name_case_for_HTML_UI_;
-	public static String Tag_name_case_As_is_UI_;
-	public static String Tag_name_case_Lower_UI_;
-	public static String Tag_name_case_Upper_UI_;
-	public static String Attribute_name_case_for_HTML_UI_;
-	public static String Attribute_name_case_As_is_UI_;
-	public static String Attribute_name_case_Lower_UI_;
-	public static String Attribute_name_case_Upper_UI_;
-	public static String Insert_required_attributes_UI_;
-	public static String Insert_missing_tags_UI_;
-	public static String Quote_attribute_values_UI_;
-	public static String Format_source_UI_;
-	public static String Convert_EOL_codes_UI_;
-	public static String EOL_Windows_UI;
-	public static String EOL_Unix_UI;
-	public static String EOL_Mac_UI;
-
-	// below are possibly unused strings that may be deleted
-	public static String HTMLFilesPreferencePage_1;
-	public static String HTMLFilesPreferencePage_2;
-	public static String HTMLFilesPreferencePage_3;
-	// above are possibly unused strings that may be deleted
-	
-	static {
-		// load message values from bundle file
-		NLS.initializeMessages(BUNDLE_NAME, HTMLUIMessages.class);
-	}
-	
-	private HTMLUIMessages() {
-		// cannot create new instance of this class
-	}
-	
-	public static ResourceBundle getResourceBundle() {
-		try {
-			if (fResourceBundle == null)
-				fResourceBundle = ResourceBundle.getBundle(BUNDLE_NAME);
-		}
-		catch (MissingResourceException x) {
-			fResourceBundle = null;
-		}
-		return fResourceBundle;
-	}
-}
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 cb156ca..0000000
--- a/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/HTMLUIPlugin.java
+++ /dev/null
@@ -1,104 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this 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 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.internal.provisional.registry.AdapterFactoryRegistry;
-import org.eclipse.wst.sse.ui.internal.provisional.registry.AdapterFactoryRegistryImpl;
-import org.eclipse.wst.sse.ui.internal.provisional.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;	
-
-	/**
-	 * 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;
-	}
-}
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 0853392..0000000
--- a/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/HTMLUIPluginResources.properties
+++ /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
-###############################################################################
-## 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>
-
-HTMLFilesPreferencePage_0=Loading files...
-#
-_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 one of the following extensions {0}.
-NewHTMLTemplatesWizardPage_0=Select HTML Template
-NewHTMLTemplatesWizardPage_1=Select a template as initial content in the HTML page.
-NewHTMLTemplatesWizardPage_2=Name
-NewHTMLTemplatesWizardPage_3=Description
-NewHTMLTemplatesWizardPage_4=Use HTML Template
-NewHTMLTemplatesWizardPage_5=Preview
-NewHTMLTemplatesWizardPage_6=Templates are 'New HTML' templates found in the <a>HTML Templates</a> preference page.
-#
-Creating_files_encoding=Creating files encoding preference
-MESSAGE_HTML_VALIDATION_MESSAGE_UI_=HTML Syntax : {0}
-# Copied from sse.ui
-CleanupDocument_label=C&leanup Document...
-CleanupDocument_tooltip=Cleanup Document
-CleanupDocument_description=Cleanup Document
-ToggleComment_label=Togg&le Comment
-ToggleComment_tooltip=Toggle Comment
-ToggleComment_description=Toggle Comment
-AddBlockComment_label=Add &Block Comment
-AddBlockComment_tooltip=Add Block Comment
-AddBlockComment_description=Add Block Comment
-RemoveBlockComment_label=Remove Bloc&k Comment
-RemoveBlockComment_tooltip=Remove Block Comment
-RemoveBlockComment_description=Remove Block Comment
-FindOccurrences_label=O&ccurrences in File
-Creating_files=Creating files
-Encoding_desc=The following encoding will apply:
-Preferred_markup_case_UI_=Preferred markup case for content assist, and code generation
-Tag_names__UI_=Tag names:
-Tag_names_Upper_case_UI_=&Uppercase
-Tag_names_Lower_case_UI_=&Lowercase
-Attribute_names__UI_=Attribute names:
-Attribute_names_Upper_case_UI_=U&ppercase
-Attribute_names_Lower_case_UI_=L&owercase
-Cleanup_UI_=Cleanup
-Tag_name_case_for_HTML_UI_=Tag name case for HTML:
-Tag_name_case_As_is_UI_=&As-is
-Tag_name_case_Lower_UI_=&Lower
-Tag_name_case_Upper_UI_=&Upper
-Attribute_name_case_for_HTML_UI_=Attribute name case for HTML:
-Attribute_name_case_As_is_UI_=A&s-is
-Attribute_name_case_Lower_UI_=L&ower
-Attribute_name_case_Upper_UI_=U&pper
-Insert_required_attributes_UI_=Insert &required attributes
-Insert_missing_tags_UI_=&Insert missing tags
-Quote_attribute_values_UI_=&Quote attribute values
-Format_source_UI_=&Format source
-Convert_EOL_codes_UI_=Convert line &delimiters to
-EOL_Windows_UI=&Windows
-EOL_Unix_UI=U&NIX
-EOL_Mac_UI=&Mac
-
-# web content settings
-UI_Description_of_role_of_following_DOCTYPE=Use the following default document type when no DOCTYPE is declared in a file:
-UI_Public_ID=Public ID:
-UI_System_ID=System ID:
-UI_none=none
-
-# below are possibly unused strings that may be deleted
-HTMLFilesPreferencePage_1=Add this suffix (if not specified):
-HTMLFilesPreferencePage_2=Insert DOCTYPE declaration
-HTMLFilesPreferencePage_3=Insert GENERATOR with META tag
-# above are possibly unused strings that may be deleted
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 650a4c3..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.internal.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 d6adccd..0000000
--- a/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/contentassist/HTMLContentAssistProcessor.java
+++ /dev/null
@@ -1,474 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this 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.internal.contentassist.CSSContentAssistProcessor;
-import org.eclipse.wst.html.core.internal.contentmodel.HTMLCMDocument;
-import org.eclipse.wst.html.core.internal.provisional.HTML40Namespace;
-import org.eclipse.wst.html.core.internal.provisional.HTMLCMProperties;
-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.ui.internal.common.contentassist.JavaScriptContentAssistProcessor;
-import org.eclipse.wst.sse.core.internal.provisional.IModelManager;
-import org.eclipse.wst.sse.core.internal.provisional.INodeAdapterFactory;
-import org.eclipse.wst.sse.core.internal.provisional.INodeNotifier;
-import org.eclipse.wst.sse.core.internal.provisional.IStructuredModel;
-import org.eclipse.wst.sse.core.internal.provisional.IndexedRegion;
-import org.eclipse.wst.sse.core.internal.provisional.StructuredModelManager;
-import org.eclipse.wst.sse.core.internal.provisional.text.IStructuredDocument;
-import org.eclipse.wst.sse.core.internal.provisional.text.IStructuredDocumentRegion;
-import org.eclipse.wst.sse.core.internal.provisional.text.ITextRegion;
-import org.eclipse.wst.sse.core.internal.provisional.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.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.provisional.document.IDOMDocument;
-import org.eclipse.wst.xml.core.internal.provisional.document.IDOMModel;
-import org.eclipse.wst.xml.core.internal.provisional.document.IDOMNode;
-import org.eclipse.wst.xml.core.internal.regions.DOMRegionContext;
-import org.eclipse.wst.xml.core.internal.ssemodelquery.ModelQueryAdapter;
-import org.eclipse.wst.xml.ui.internal.contentassist.AbstractContentAssistProcessor;
-import org.eclipse.wst.xml.ui.internal.contentassist.ContentAssistRequest;
-import org.eclipse.wst.xml.ui.internal.contentassist.XMLContentModelGenerator;
-import org.eclipse.wst.xml.ui.internal.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 INodeAdapterFactory 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, IDOMNode treeNode, IDOMNode 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);
-		IDOMNode node = (IDOMNode) 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() == DOMRegionContext.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() == DOMRegionContext.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() == DOMRegionContext.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(DOMRegionContext.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());
-
-			IDOMDocument doc = ((IDOMModel) 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, IDOMNode 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 IDOMDocument)
-			return ((IDOMDocument) 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;
-	}
-
-	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 f3daa1a..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.internal.HTMLCorePlugin;
-import org.eclipse.wst.html.core.internal.contentmodel.HTMLElementDeclaration;
-import org.eclipse.wst.html.core.internal.preferences.HTMLCorePreferenceNames;
-import org.eclipse.wst.html.core.internal.provisional.HTMLCMProperties;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMElementDeclaration;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMNode;
-import org.eclipse.wst.xml.ui.internal.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(HTMLCorePreferenceNames.TAG_NAME_CASE);
-		fAttrCase = prefs.getInt(HTMLCorePreferenceNames.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 HTMLCorePreferenceNames.LOWER :
-					{
-						name = name.toLowerCase();
-					}
-					break;
-				case HTMLCorePreferenceNames.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 3e63176..0000000
--- a/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/contentassist/NoRegionContentAssistProcessorForHTML.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.wst.html.ui.internal.contentassist;
-
-import org.eclipse.jface.text.contentassist.IContentAssistProcessor;
-import org.eclipse.wst.css.core.internal.provisional.text.ICSSPartitionTypes;
-import org.eclipse.wst.css.ui.internal.contentassist.CSSContentAssistProcessor;
-import org.eclipse.wst.html.core.internal.provisional.text.IHTMLPartitionTypes;
-import org.eclipse.wst.javascript.ui.internal.common.contentassist.JavaScriptContentAssistProcessor;
-import org.eclipse.wst.xml.ui.internal.contentassist.NoRegionContentAssistProcessor;
-
-/**
- * 
- * @author pavery
- */
-public class NoRegionContentAssistProcessorForHTML extends NoRegionContentAssistProcessor {
-	protected void initPartitionToProcessorMap() {
-		super.initPartitionToProcessorMap();
-		IContentAssistProcessor htmlProcessor = new HTMLContentAssistProcessor();
-		fPartitionToProcessorMap.put(IHTMLPartitionTypes.HTML_DEFAULT, htmlProcessor);
-		fPartitionToProcessorMap.put(IHTMLPartitionTypes.HTML_COMMENT, htmlProcessor);
-
-		IContentAssistProcessor jsContentAssistProcessor = new JavaScriptContentAssistProcessor();
-		fPartitionToProcessorMap.put(IHTMLPartitionTypes.SCRIPT, jsContentAssistProcessor);
-
-		IContentAssistProcessor cssContentAssistProcessor = new CSSContentAssistProcessor();
-		fPartitionToProcessorMap.put(ICSSPartitionTypes.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 b6f9af7..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.internal.contentmodel.HTMLElementDeclaration;
-import org.eclipse.wst.html.core.internal.provisional.HTMLCMProperties;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMElementDeclaration;
-import org.eclipse.wst.xml.ui.internal.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/contentoutline/HTMLNodeActionManager.java b/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/contentoutline/HTMLNodeActionManager.java
deleted file mode 100644
index 49f2467..0000000
--- a/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/contentoutline/HTMLNodeActionManager.java
+++ /dev/null
@@ -1,122 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this 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.contentoutline;
-
-import org.eclipse.core.runtime.Preferences;
-import org.eclipse.jface.viewers.Viewer;
-import org.eclipse.wst.html.core.internal.HTMLContentBuilder;
-import org.eclipse.wst.html.core.internal.HTMLCorePlugin;
-import org.eclipse.wst.html.core.internal.format.HTMLFormatProcessorImpl;
-import org.eclipse.wst.html.core.internal.preferences.HTMLCorePreferenceNames;
-import org.eclipse.wst.html.core.internal.provisional.HTMLCMProperties;
-import org.eclipse.wst.html.core.internal.provisional.contenttype.ContentTypeIdForHTML;
-import org.eclipse.wst.sse.core.internal.format.IStructuredFormatProcessor;
-import org.eclipse.wst.sse.core.internal.provisional.IStructuredModel;
-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.internal.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 == HTMLCorePreferenceNames.LOWER)
-					name = name.toLowerCase();
-				else if (fTagCase == HTMLCorePreferenceNames.UPPER)
-					name = name.toUpperCase();
-				// else do nothing
-			}
-			else if (cmnode.getNodeType() == CMNode.ATTRIBUTE_DECLARATION) {
-				if (fAttrCase == HTMLCorePreferenceNames.LOWER)
-					name = name.toLowerCase();
-				else if (fAttrCase == HTMLCorePreferenceNames.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(HTMLCorePreferenceNames.TAG_NAME_CASE);
-			fAttrCase = prefs.getInt(HTMLCorePreferenceNames.ATTR_NAME_CASE);
-			//		Element caseSettings = HTMLPreferenceManager.getHTMLInstance().getElement(PreferenceNames.PREFERRED_CASE);
-			//		fTagCase = caseSettings.getAttribute(PreferenceNames.TAGNAME);
-			//		fAttrCase = caseSettings.getAttribute(PreferenceNames.ATTRIBUTENAME);
-		}
-	}
-
-	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/internal/contentoutline/JFaceNodeAdapterFactoryForHTML.java b/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/contentoutline/JFaceNodeAdapterFactoryForHTML.java
deleted file mode 100644
index 4025f10..0000000
--- a/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/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.internal.contentoutline;
-
-
-
-import org.eclipse.wst.sse.core.internal.provisional.INodeAdapter;
-import org.eclipse.wst.sse.core.internal.provisional.INodeAdapterFactory;
-import org.eclipse.wst.sse.core.internal.provisional.INodeNotifier;
-import org.eclipse.wst.sse.ui.internal.contentoutline.IJFaceNodeAdapter;
-import org.eclipse.wst.xml.ui.internal.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 INodeAdapterFactory 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/internal/contentoutline/JFaceNodeAdapterForHTML.java b/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/contentoutline/JFaceNodeAdapterForHTML.java
deleted file mode 100644
index 6f3e921..0000000
--- a/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/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.internal.contentoutline;
-
-
-
-import org.eclipse.jface.resource.ImageDescriptor;
-import org.eclipse.swt.graphics.Image;
-import org.eclipse.wst.html.core.internal.provisional.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.internal.provisional.INodeAdapterFactory;
-import org.eclipse.wst.xml.ui.internal.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(INodeAdapterFactory 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/src/org/eclipse/wst/html/ui/internal/contentproperties/ui/AbstractDeviceProfileEntry.java b/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/contentproperties/ui/AbstractDeviceProfileEntry.java
deleted file mode 100644
index d72abeb..0000000
--- a/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/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.internal.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/internal/contentproperties/ui/AbstractDeviceProfileEntryProvider.java b/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/contentproperties/ui/AbstractDeviceProfileEntryProvider.java
deleted file mode 100644
index 173e80c..0000000
--- a/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/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.internal.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/internal/contentproperties/ui/ContentSettingsRegistry.java b/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/contentproperties/ui/ContentSettingsRegistry.java
deleted file mode 100644
index e66d242..0000000
--- a/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/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.internal.contentproperties.ui;
-
-import java.util.Enumeration;
-import java.util.Iterator;
-
-import org.eclipse.wst.css.core.internal.metamodel.CSSProfile;
-import org.eclipse.wst.css.core.internal.metamodel.CSSProfileRegistry;
-import org.eclipse.wst.html.core.internal.document.HTMLDocumentTypeEntry;
-import org.eclipse.wst.html.core.internal.document.HTMLDocumentTypeRegistry;
-import org.eclipse.wst.html.ui.internal.HTMLUIMessages;
-import org.eclipse.wst.sse.core.internal.encoding.CommonCharsetNames;
-import org.eclipse.wst.sse.ui.internal.contentproperties.ui.ComboList;
-
-public final class ContentSettingsRegistry {
-
-	private static final String NONE = HTMLUIMessages.UI_none;
-
-	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/internal/contentproperties/ui/DeviceProfileEntry.java b/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/contentproperties/ui/DeviceProfileEntry.java
deleted file mode 100644
index 94f24e4..0000000
--- a/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/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.internal.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/internal/contentproperties/ui/DeviceProfileEntryProvider.java b/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/contentproperties/ui/DeviceProfileEntryProvider.java
deleted file mode 100644
index 552c1db..0000000
--- a/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/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.internal.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/internal/contentproperties/ui/DeviceProfileEntryProviderBuilder.java b/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/contentproperties/ui/DeviceProfileEntryProviderBuilder.java
deleted file mode 100644
index 6367d10..0000000
--- a/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/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.internal.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/internal/contentproperties/ui/HTMLContentSettingsPropertyPage.java b/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/contentproperties/ui/HTMLContentSettingsPropertyPage.java
deleted file mode 100644
index 24522c4..0000000
--- a/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/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.internal.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.HTMLUIMessages;
-import org.eclipse.wst.html.ui.internal.Logger;
-import org.eclipse.wst.html.ui.internal.editor.IHelpContextIds;
-import org.eclipse.wst.sse.ui.internal.contentproperties.ui.ComboListOnPropertyPage;
-import org.eclipse.wst.sse.ui.internal.contentproperties.ui.ContentSettingsPropertyPage;
-import org.eclipse.wst.sse.ui.internal.provisional.contentproperties.IContentSettings;
-
-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(HTMLUIMessages.UI_Description_of_role_of_following_DOCTYPE);
-		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(HTMLUIMessages.UI_Public_ID);
-		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(HTMLUIMessages.UI_System_ID);
-		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/internal/contentproperties/ui/ProjectContentSettingsPropertyPage.java b/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/contentproperties/ui/ProjectContentSettingsPropertyPage.java
deleted file mode 100644
index a5f20d5..0000000
--- a/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/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.internal.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.HTMLUIMessages;
-import org.eclipse.wst.html.ui.internal.Logger;
-import org.eclipse.wst.html.ui.internal.editor.IHelpContextIds;
-import org.eclipse.wst.sse.ui.internal.contentproperties.ui.ComboListOnPropertyPage;
-import org.eclipse.wst.sse.ui.internal.contentproperties.ui.ContentSettingsPropertyPage;
-import org.eclipse.wst.sse.ui.internal.provisional.contentproperties.IContentSettings;
-
-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(HTMLUIMessages.UI_Description_of_role_of_following_DOCTYPE);
-		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(HTMLUIMessages.UI_Public_ID);
-		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(HTMLUIMessages.UI_System_ID);
-		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/internal/edit/ui/ActionContributorHTML.java b/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/edit/ui/ActionContributorHTML.java
deleted file mode 100644
index 3e5870b..0000000
--- a/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/edit/ui/ActionContributorHTML.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.internal.edit.ui;
-
-import org.eclipse.wst.xml.ui.internal.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.core.htmlsource.source", "org.eclipse.wst.sse.ui.StructuredTextEditor"}; //$NON-NLS-1$ //$NON-NLS-2$
-
-
-	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/internal/edit/ui/CleanupActionHTML.java b/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/edit/ui/CleanupActionHTML.java
deleted file mode 100644
index 0eedfb6..0000000
--- a/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/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.internal.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/internal/edit/ui/CleanupDialogHTML.java b/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/edit/ui/CleanupDialogHTML.java
deleted file mode 100644
index bab0c0d..0000000
--- a/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/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.internal.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.internal.HTMLCorePlugin;
-import org.eclipse.wst.html.core.internal.preferences.HTMLCorePreferenceNames;
-import org.eclipse.wst.html.core.internal.provisional.contenttype.ContentTypeIdForHTML;
-import org.eclipse.wst.html.ui.internal.HTMLUIMessages;
-import org.eclipse.wst.html.ui.internal.editor.IHelpContextIds;
-import org.eclipse.wst.sse.core.internal.encoding.CommonEncodingPreferenceNames;
-import org.eclipse.wst.sse.core.internal.ltk.modelhandler.IModelHandler;
-import org.eclipse.wst.sse.core.internal.provisional.IStructuredModel;
-import org.eclipse.wst.xml.core.internal.cleanup.XMLCleanupPreferencesImpl;
-import org.eclipse.wst.xml.core.internal.provisional.contenttype.ContentTypeIdForXML;
-
-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(HTMLUIMessages.Cleanup_UI_);
-		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(HTMLUIMessages.Tag_name_case_for_HTML_UI_);
-		GridLayout hLayout = new GridLayout();
-		hLayout.numColumns = 3;
-		tagNameCase.setLayout(hLayout);
-		fRadioButtonTagNameCaseAsis = new Button(tagNameCase, SWT.RADIO);
-		fRadioButtonTagNameCaseAsis.setText(HTMLUIMessages.Tag_name_case_As_is_UI_);
-		fRadioButtonTagNameCaseAsis.addSelectionListener(this);
-		fRadioButtonTagNameCaseLower = new Button(tagNameCase, SWT.RADIO);
-		fRadioButtonTagNameCaseLower.setText(HTMLUIMessages.Tag_name_case_Lower_UI_);
-		fRadioButtonTagNameCaseLower.addSelectionListener(this);
-		fRadioButtonTagNameCaseUpper = new Button(tagNameCase, SWT.RADIO);
-		fRadioButtonTagNameCaseUpper.setText(HTMLUIMessages.Tag_name_case_Upper_UI_);
-		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(HTMLUIMessages.Attribute_name_case_for_HTML_UI_);
-		attrNameCase.setLayout(hLayout);
-		fRadioButtonAttrNameCaseAsis = new Button(attrNameCase, SWT.RADIO);
-		fRadioButtonAttrNameCaseAsis.setText(HTMLUIMessages.Attribute_name_case_As_is_UI_);
-		fRadioButtonAttrNameCaseAsis.addSelectionListener(this);
-		fRadioButtonAttrNameCaseLower = new Button(attrNameCase, SWT.RADIO);
-		fRadioButtonAttrNameCaseLower.setText(HTMLUIMessages.Attribute_name_case_Lower_UI_);
-		fRadioButtonAttrNameCaseLower.addSelectionListener(this);
-		fRadioButtonAttrNameCaseUpper = new Button(attrNameCase, SWT.RADIO);
-		fRadioButtonAttrNameCaseUpper.setText(HTMLUIMessages.Attribute_name_case_Upper_UI_);
-		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(HTMLUIMessages.Insert_required_attributes_UI_);
-		fCheckBoxInsertRequiredAttrs.addSelectionListener(this);
-
-		// Insert missing begin/end tags
-		fCheckBoxInsertMissingTags = new Button(composite, SWT.CHECK);
-		fCheckBoxInsertMissingTags.setText(HTMLUIMessages.Insert_missing_tags_UI_);
-		fCheckBoxInsertMissingTags.addSelectionListener(this);
-
-		// Quote attribute values
-		fCheckBoxQuoteAttrValues = new Button(composite, SWT.CHECK);
-		fCheckBoxQuoteAttrValues.setText(HTMLUIMessages.Quote_attribute_values_UI_);
-		fCheckBoxQuoteAttrValues.addSelectionListener(this);
-
-		// Format source
-		fCheckBoxFormatSource = new Button(composite, SWT.CHECK);
-		fCheckBoxFormatSource.setText(HTMLUIMessages.Format_source_UI_);
-		fCheckBoxFormatSource.addSelectionListener(this);
-
-		// Convert EOL code
-		fCheckBoxConvertEOLCodes = new Button(composite, SWT.CHECK);
-		fCheckBoxConvertEOLCodes.setText(HTMLUIMessages.Convert_EOL_codes_UI_);
-		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(HTMLUIMessages.EOL_Windows_UI);
-		fRadioButtonConvertEOLWindows.addSelectionListener(this);
-		fRadioButtonConvertEOLUnix = new Button(EOLCodes, SWT.RADIO);
-		fRadioButtonConvertEOLUnix.setText(HTMLUIMessages.EOL_Unix_UI);
-		fRadioButtonConvertEOLUnix.addSelectionListener(this);
-		fRadioButtonConvertEOLMac = new Button(EOLCodes, SWT.RADIO);
-		fRadioButtonConvertEOLMac.setText(HTMLUIMessages.EOL_Mac_UI);
-		fRadioButtonConvertEOLMac.addSelectionListener(this);
-	}
-
-	protected void okPressed() {
-		storeOptions();
-
-		super.okPressed();
-	}
-
-	protected void initializeOptionsForHTML() {
-		int tagNameCase = getModelPreferences().getInt(HTMLCorePreferenceNames.CLEANUP_TAG_NAME_CASE);
-		if (tagNameCase == HTMLCorePreferenceNames.UPPER)
-			fRadioButtonTagNameCaseUpper.setSelection(true);
-		else if (tagNameCase == HTMLCorePreferenceNames.LOWER)
-			fRadioButtonTagNameCaseLower.setSelection(true);
-		else
-			fRadioButtonTagNameCaseAsis.setSelection(true);
-
-		int attrNameCase = getModelPreferences().getInt(HTMLCorePreferenceNames.CLEANUP_ATTR_NAME_CASE);
-		if (attrNameCase == HTMLCorePreferenceNames.UPPER)
-			fRadioButtonAttrNameCaseUpper.setSelection(true);
-		else if (attrNameCase == HTMLCorePreferenceNames.LOWER)
-			fRadioButtonAttrNameCaseLower.setSelection(true);
-		else
-			fRadioButtonAttrNameCaseAsis.setSelection(true);
-	}
-
-	protected void initializeOptions() {
-		if (isHTMLType())
-			initializeOptionsForHTML();
-
-		fCheckBoxInsertRequiredAttrs.setSelection(getModelPreferences().getBoolean(HTMLCorePreferenceNames.INSERT_REQUIRED_ATTRS));
-		fCheckBoxInsertMissingTags.setSelection(getModelPreferences().getBoolean(HTMLCorePreferenceNames.INSERT_MISSING_TAGS));
-		fCheckBoxQuoteAttrValues.setSelection(getModelPreferences().getBoolean(HTMLCorePreferenceNames.QUOTE_ATTR_VALUES));
-		fCheckBoxFormatSource.setSelection(getModelPreferences().getBoolean(HTMLCorePreferenceNames.FORMAT_SOURCE));
-		fCheckBoxConvertEOLCodes.setSelection(getModelPreferences().getBoolean(HTMLCorePreferenceNames.CONVERT_EOL_CODES));
-		if (fCheckBoxConvertEOLCodes.getSelection()) {
-			String EOLCode = getModelPreferences().getString(HTMLCorePreferenceNames.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(HTMLCorePreferenceNames.CLEANUP_TAG_NAME_CASE, HTMLCorePreferenceNames.UPPER);
-		else if (fRadioButtonTagNameCaseLower.getSelection())
-			getModelPreferences().setValue(HTMLCorePreferenceNames.CLEANUP_TAG_NAME_CASE, HTMLCorePreferenceNames.LOWER);
-		else
-			getModelPreferences().setValue(HTMLCorePreferenceNames.CLEANUP_TAG_NAME_CASE, HTMLCorePreferenceNames.ASIS);
-
-		if (fRadioButtonAttrNameCaseUpper.getSelection())
-			getModelPreferences().setValue(HTMLCorePreferenceNames.CLEANUP_ATTR_NAME_CASE, HTMLCorePreferenceNames.UPPER);
-		else if (fRadioButtonAttrNameCaseLower.getSelection())
-			getModelPreferences().setValue(HTMLCorePreferenceNames.CLEANUP_ATTR_NAME_CASE, HTMLCorePreferenceNames.LOWER);
-		else
-			getModelPreferences().setValue(HTMLCorePreferenceNames.CLEANUP_ATTR_NAME_CASE, HTMLCorePreferenceNames.ASIS);
-
-		// explicitly save plugin preferences so values are stored
-		HTMLCorePlugin.getDefault().savePluginPreferences();
-	}
-
-	protected void storeOptions() {
-		if (isHTMLType()) {
-			storeOptionsForHTML();
-			XMLCleanupPreferencesImpl.getInstance().setTagNameCase(getModelPreferences().getInt(HTMLCorePreferenceNames.CLEANUP_TAG_NAME_CASE));
-			XMLCleanupPreferencesImpl.getInstance().setAttrNameCase(getModelPreferences().getInt(HTMLCorePreferenceNames.CLEANUP_ATTR_NAME_CASE));
-		}
-		else {
-			XMLCleanupPreferencesImpl.getInstance().setTagNameCase(HTMLCorePreferenceNames.ASIS);
-			XMLCleanupPreferencesImpl.getInstance().setAttrNameCase(HTMLCorePreferenceNames.ASIS);
-		}
-
-		getModelPreferences().setValue(HTMLCorePreferenceNames.INSERT_REQUIRED_ATTRS, fCheckBoxInsertRequiredAttrs.getSelection());
-		getModelPreferences().setValue(HTMLCorePreferenceNames.INSERT_MISSING_TAGS, fCheckBoxInsertMissingTags.getSelection());
-		getModelPreferences().setValue(HTMLCorePreferenceNames.QUOTE_ATTR_VALUES, fCheckBoxQuoteAttrValues.getSelection());
-		getModelPreferences().setValue(HTMLCorePreferenceNames.FORMAT_SOURCE, fCheckBoxFormatSource.getSelection());
-		getModelPreferences().setValue(HTMLCorePreferenceNames.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(HTMLCorePreferenceNames.CLEANUP_EOL_CODE, CommonEncodingPreferenceNames.LF);
-				XMLCleanupPreferencesImpl.getInstance().setEOLCode(CommonEncodingPreferenceNames.LF);
-			}
-			else if (fRadioButtonConvertEOLMac.getSelection()) {
-				getModelPreferences().setValue(HTMLCorePreferenceNames.CLEANUP_EOL_CODE, CommonEncodingPreferenceNames.CR);
-				XMLCleanupPreferencesImpl.getInstance().setEOLCode(CommonEncodingPreferenceNames.CR);
-			}
-			else {
-				getModelPreferences().setValue(HTMLCorePreferenceNames.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/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 58067f1..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.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;
-import org.eclipse.wst.html.ui.internal.Logger;
-
-/**
- * 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 5a80a27..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.internal.provisional.IStructuredModel;
-import org.eclipse.wst.sse.core.internal.provisional.StructuredModelManager;
-import org.eclipse.wst.sse.core.internal.util.StringUtils;
-import org.eclipse.wst.sse.core.internal.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 6fc8f7c..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.internal.provisional.URIResolverPlugin;
-import org.eclipse.wst.sse.core.internal.provisional.IStructuredModel;
-import org.eclipse.wst.sse.core.internal.provisional.IndexedRegion;
-import org.eclipse.wst.sse.core.internal.provisional.StructuredModelManager;
-import org.eclipse.wst.sse.core.internal.util.StringUtils;
-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.eclipse.wst.xml.core.internal.provisional.document.IDOMAttr;
-import org.eclipse.wst.xml.core.internal.provisional.document.IDOMNode;
-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
-				IDOMNode docNode = (IDOMNode) node;
-				hyperRegion = new Region(docNode.getStartOffset(), docNode.getEndOffset() - docNode.getStartOffset());
-			}
-			else if (nodeType == Node.ATTRIBUTE_NODE) {
-				// handle attribute nodes
-				IDOMAttr att = (IDOMAttr) 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 0de0fb5..0000000
--- a/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/preferences/HTMLUIPreferenceInitializer.java
+++ /dev/null
@@ -1,89 +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.jface.text.templates.Template;
-import org.eclipse.wst.html.ui.internal.HTMLUIPlugin;
-import org.eclipse.wst.html.ui.internal.style.IStyleConstantsHTML;
-import org.eclipse.wst.sse.ui.internal.preferences.ui.ColorHelper;
-import org.eclipse.wst.xml.ui.internal.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);
-		
-		// set default new html file template to use in new file wizard
-		/*
-		 * Need to find template name that goes with default template id (name
-		 * may change for differnt language)
-		 */
-		String templateName = ""; //$NON-NLS-1$
-		Template template = HTMLUIPlugin.getDefault().getTemplateStore().findTemplateById("com.ibm.sse.editor.html.templates.html"); //$NON-NLS-1$
-		if (template != null)
-			templateName = template.getName();
-		store.setDefault(HTMLUIPreferenceNames.NEW_FILE_TEMPLATE_NAME, templateName);
-	}
-
-}
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 b4fc968..0000000
--- a/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/preferences/HTMLUIPreferenceNames.java
+++ /dev/null
@@ -1,65 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *     
- *******************************************************************************/
-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$
-	}
-	
-	/**
-	 * The key to store the last template name used in new HTML file wizard.
-	 * Template name is stored instead of template id because user-created
-	 * templates do not have template ids.
-	 * <p>
-	 * Value is of type <code>String</code>.
-	 * </p>
-	 */
-	public static final String NEW_FILE_TEMPLATE_NAME = "newFileTemplateName"; //$NON-NLS-1$
-}
diff --git a/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/preferences/ui/HTMLColorPage.java b/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/preferences/ui/HTMLColorPage.java
deleted file mode 100644
index d7cec1d..0000000
--- a/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/preferences/ui/HTMLColorPage.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.html.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.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Control;
-import org.eclipse.ui.help.WorkbenchHelp;
-import org.eclipse.wst.html.core.internal.provisional.contenttype.ContentTypeIdForHTML;
-import org.eclipse.wst.html.ui.internal.HTMLUIMessages;
-import org.eclipse.wst.html.ui.internal.HTMLUIPlugin;
-import org.eclipse.wst.html.ui.internal.editor.IHelpContextIds;
-import org.eclipse.wst.sse.core.internal.provisional.IModelManager;
-import org.eclipse.wst.sse.core.internal.provisional.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.internal.preferences.ui.StyledTextColorPicker;
-import org.eclipse.wst.xml.ui.internal.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 HTMLUIMessages.Sample_HTML_doc;
-
-	}
-
-	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/internal/preferences/ui/HTMLFilesPreferencePage.java b/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/preferences/ui/HTMLFilesPreferencePage.java
deleted file mode 100644
index 5b08e97..0000000
--- a/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/preferences/ui/HTMLFilesPreferencePage.java
+++ /dev/null
@@ -1,115 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this 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.ui;
-
-import org.eclipse.core.runtime.Preferences;
-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.swt.widgets.Group;
-import org.eclipse.swt.widgets.Label;
-import org.eclipse.ui.help.WorkbenchHelp;
-import org.eclipse.wst.html.core.internal.HTMLCorePlugin;
-import org.eclipse.wst.html.ui.internal.HTMLUIMessages;
-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.xml.ui.internal.preferences.EncodingSettings;
-import org.eclipse.wst.xml.ui.internal.preferences.WorkbenchDefaultEncodingSettings;
-import org.eclipse.wst.xml.ui.internal.preferences.XMLFilesPreferencePage;
-
-public class HTMLFilesPreferencePage extends XMLFilesPreferencePage {
-	private WorkbenchDefaultEncodingSettings fInputEncodingSettings = null;
-
-	protected Preferences getModelPreferences() {
-		return HTMLCorePlugin.getDefault().getPluginPreferences();
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.jface.preference.PreferencePage#doGetPreferenceStore()
-	 */
-	protected IPreferenceStore doGetPreferenceStore() {
-		return HTMLUIPlugin.getDefault().getPreferenceStore();
-	}
-
-	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(HTMLUIMessages.HTMLFilesPreferencePage_0);
-
-		fInputEncodingSettings = new WorkbenchDefaultEncodingSettings(group);
-	}
-	
-	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);
-	}
-	
-	protected void storeValues() {
-		super.storeValues();
-		storeValuesForLoadingGroup();
-	}
-	
-	protected void storeValuesForLoadingGroup() {
-		getModelPreferences().setValue(CommonEncodingPreferenceNames.INPUT_CODESET, fInputEncodingSettings.getIANATag());		
-	}
-	protected void createContentsForCreatingGroup(Composite parent) {
-		Group creatingGroup = createGroup(parent, 2);
-		creatingGroup.setText(HTMLUIMessages.Creating_files);
-		
-		// Encoding..
-		Label label = createLabel(creatingGroup, HTMLUIMessages.Encoding_desc);
-		((GridData)label.getLayoutData()).horizontalSpan = 2;
-		fEncodingSettings = new EncodingSettings(creatingGroup);
-		((GridData)fEncodingSettings.getLayoutData()).horizontalSpan = 2;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/preferences/ui/HTMLSourcePreferencePage.java b/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/preferences/ui/HTMLSourcePreferencePage.java
deleted file mode 100644
index 989527f..0000000
--- a/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/preferences/ui/HTMLSourcePreferencePage.java
+++ /dev/null
@@ -1,139 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this 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.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.internal.HTMLCorePlugin;
-import org.eclipse.wst.html.core.internal.preferences.HTMLCorePreferenceNames;
-import org.eclipse.wst.html.ui.internal.HTMLUIMessages;
-import org.eclipse.wst.html.ui.internal.HTMLUIPlugin;
-import org.eclipse.wst.html.ui.internal.editor.IHelpContextIds;
-import org.eclipse.wst.xml.ui.internal.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(HTMLUIMessages.Preferred_markup_case_UI_);
-
-		// d257064 need to associate group w/ radio buttons so radio buttons header can be read
-		Group tagNameGroup = createGroup(caseGroup, 1);
-		tagNameGroup.setText(HTMLUIMessages.Tag_names__UI_);
-		fTagNameUpper = createRadioButton(tagNameGroup, HTMLUIMessages.Tag_names_Upper_case_UI_);
-		fTagNameLower = createRadioButton(tagNameGroup, HTMLUIMessages.Tag_names_Lower_case_UI_);
-
-		// d257064 need to associate group w/ radio buttons so radio buttons header can be read
-		Group attrNameGroup = createGroup(caseGroup, 1);
-		attrNameGroup.setText(HTMLUIMessages.Attribute_names__UI_);
-		fAttrNameUpper = createRadioButton(attrNameGroup, HTMLUIMessages.Attribute_names_Upper_case_UI_);
-		fAttrNameLower = createRadioButton(attrNameGroup, HTMLUIMessages.Attribute_names_Lower_case_UI_);
-
-		return parent;
-
-	}
-
-	protected void performDefaults() {
-		fTagNameUpper.setSelection(getModelPreferences().getDefaultInt(HTMLCorePreferenceNames.TAG_NAME_CASE) == HTMLCorePreferenceNames.UPPER);
-		fTagNameLower.setSelection(getModelPreferences().getDefaultInt(HTMLCorePreferenceNames.TAG_NAME_CASE) == HTMLCorePreferenceNames.LOWER);
-		fAttrNameUpper.setSelection(getModelPreferences().getDefaultInt(HTMLCorePreferenceNames.ATTR_NAME_CASE) == HTMLCorePreferenceNames.UPPER);
-		fAttrNameLower.setSelection(getModelPreferences().getDefaultInt(HTMLCorePreferenceNames.ATTR_NAME_CASE) == HTMLCorePreferenceNames.LOWER);
-
-		super.performDefaults();
-	}
-
-	protected void initializeValues() {
-		fTagNameUpper.setSelection(getModelPreferences().getInt(HTMLCorePreferenceNames.TAG_NAME_CASE) == HTMLCorePreferenceNames.UPPER);
-		fTagNameLower.setSelection(getModelPreferences().getInt(HTMLCorePreferenceNames.TAG_NAME_CASE) == HTMLCorePreferenceNames.LOWER);
-		fAttrNameUpper.setSelection(getModelPreferences().getInt(HTMLCorePreferenceNames.ATTR_NAME_CASE) == HTMLCorePreferenceNames.UPPER);
-		fAttrNameLower.setSelection(getModelPreferences().getInt(HTMLCorePreferenceNames.ATTR_NAME_CASE) == HTMLCorePreferenceNames.LOWER);
-
-		super.initializeValues();
-	}
-
-	protected void storeValues() {
-		if (fTagNameUpper.getSelection())
-			getModelPreferences().setValue(HTMLCorePreferenceNames.TAG_NAME_CASE, HTMLCorePreferenceNames.UPPER);
-		else
-			getModelPreferences().setValue(HTMLCorePreferenceNames.TAG_NAME_CASE, HTMLCorePreferenceNames.LOWER);
-		if (fAttrNameUpper.getSelection())
-			getModelPreferences().setValue(HTMLCorePreferenceNames.ATTR_NAME_CASE, HTMLCorePreferenceNames.UPPER);
-		else
-			getModelPreferences().setValue(HTMLCorePreferenceNames.ATTR_NAME_CASE, HTMLCorePreferenceNames.LOWER);
-
-		super.storeValues();
-	}
-
-	public boolean performOk() {
-		boolean result = super.performOk();
-
-		doSavePreferenceStore();
-
-		return result;
-	}
-
-	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/internal/preferences/ui/HTMLTemplatePreferencePage.java b/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/preferences/ui/HTMLTemplatePreferencePage.java
deleted file mode 100644
index f495fe9..0000000
--- a/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/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.internal.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/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 61e0567..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.internal.provisional.HTML40Namespace;
-import org.eclipse.wst.sse.core.internal.provisional.AbstractAdapterFactory;
-import org.eclipse.wst.sse.core.internal.provisional.INodeAdapter;
-import org.eclipse.wst.sse.core.internal.provisional.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 cd082e8..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.html.ui.internal.Logger;
-import org.eclipse.wst.sse.core.internal.provisional.INodeAdapter;
-import org.eclipse.wst.sse.core.internal.provisional.INodeNotifier;
-import org.eclipse.wst.sse.core.internal.provisional.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"; //$NON-NLS-1$
-			System.out.println("ProjectionModelNodeAdapterHTML.updateAdapter (" + nodeName + "):" + (end - start)); //$NON-NLS-1$ //$NON-NLS-2$
-		}
-	}
-}
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 d6a0457..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.internal.PropagatingAdapter;
-import org.eclipse.wst.sse.core.internal.model.FactoryRegistry;
-import org.eclipse.wst.sse.core.internal.provisional.INodeNotifier;
-import org.eclipse.wst.sse.core.internal.provisional.IStructuredModel;
-import org.eclipse.wst.sse.core.internal.provisional.IndexedRegion;
-import org.eclipse.wst.sse.core.internal.provisional.StructuredModelManager;
-import org.eclipse.wst.sse.ui.internal.projection.IStructuredTextFoldingProvider;
-import org.eclipse.wst.xml.core.internal.provisional.document.IDOMModel;
-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)); //$NON-NLS-1$
-	}
-
-	/**
-	 * 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
-					IDOMModel domModel = (IDOMModel) 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)); //$NON-NLS-1$
-		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/provisional/StructuredTextEditorHTML.java b/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/provisional/StructuredTextEditorHTML.java
deleted file mode 100644
index 78f947e..0000000
--- a/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/provisional/StructuredTextEditorHTML.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.html.ui.internal.provisional;
-
-import java.util.ResourceBundle;
-
-import org.eclipse.jface.action.Action;
-import org.eclipse.wst.html.ui.internal.HTMLUIMessages;
-import org.eclipse.wst.html.ui.internal.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.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.internal.actions.AddBlockCommentActionXML;
-import org.eclipse.wst.xml.ui.internal.actions.RemoveBlockCommentActionXML;
-import org.eclipse.wst.xml.ui.internal.actions.ToggleCommentActionXML;
-
-public class StructuredTextEditorHTML extends StructuredTextEditor {
-	private final static String UNDERSCORE = "_"; //$NON-NLS-1$
-	
-	protected void createActions() {
-		super.createActions();
-
-		ResourceBundle resourceBundle = HTMLUIMessages.getResourceBundle();
-
-		Action action = new CleanupActionHTML(resourceBundle, StructuredTextEditorActionConstants.ACTION_NAME_CLEANUP_DOCUMENT + UNDERSCORE, this);
-		action.setActionDefinitionId(ActionDefinitionIds.CLEANUP_DOCUMENT);
-		setAction(StructuredTextEditorActionConstants.ACTION_NAME_CLEANUP_DOCUMENT, action);
-
-		action = new ToggleCommentActionXML(resourceBundle, StructuredTextEditorActionConstants.ACTION_NAME_TOGGLE_COMMENT + UNDERSCORE, this);
-		action.setActionDefinitionId(ActionDefinitionIds.TOGGLE_COMMENT);
-		setAction(StructuredTextEditorActionConstants.ACTION_NAME_TOGGLE_COMMENT, action);
-
-		action = new AddBlockCommentActionXML(resourceBundle, StructuredTextEditorActionConstants.ACTION_NAME_ADD_BLOCK_COMMENT + UNDERSCORE, 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 + UNDERSCORE, 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 + UNDERSCORE, 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/internal/provisional/StructuredTextViewerConfigurationHTML.java b/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/provisional/StructuredTextViewerConfigurationHTML.java
deleted file mode 100644
index 94d9919..0000000
--- a/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/provisional/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.internal.provisional;
-
-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.internal.provisional.text.ICSSPartitionTypes;
-import org.eclipse.wst.css.ui.internal.contentassist.CSSContentAssistProcessor;
-import org.eclipse.wst.css.ui.internal.style.LineStyleProviderForEmbeddedCSS;
-import org.eclipse.wst.html.core.internal.format.HTMLFormatProcessorImpl;
-import org.eclipse.wst.html.core.internal.provisional.text.IHTMLPartitionTypes;
-import org.eclipse.wst.html.core.internal.text.StructuredTextPartitionerForHTML;
-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.internal.style.LineStyleProviderForHTML;
-import org.eclipse.wst.html.ui.internal.taginfo.HTMLBestMatchHoverProcessor;
-import org.eclipse.wst.html.ui.internal.taginfo.HTMLInformationProvider;
-import org.eclipse.wst.html.ui.internal.taginfo.HTMLTagInfoHoverProcessor;
-import org.eclipse.wst.javascript.ui.internal.common.contentassist.JavaScriptContentAssistProcessor;
-import org.eclipse.wst.javascript.ui.internal.common.style.LineStyleProviderForJavaScript;
-import org.eclipse.wst.javascript.ui.internal.common.taginfo.JavaScriptBestMatchHoverProcessor;
-import org.eclipse.wst.javascript.ui.internal.common.taginfo.JavaScriptInformationProvider;
-import org.eclipse.wst.javascript.ui.internal.common.taginfo.JavaScriptTagInfoHoverProcessor;
-import org.eclipse.wst.sse.core.internal.provisional.IStructuredModel;
-import org.eclipse.wst.sse.core.internal.provisional.StructuredModelManager;
-import org.eclipse.wst.sse.core.internal.provisional.text.IStructuredPartitionTypes;
-import org.eclipse.wst.sse.ui.internal.StructuredTextEditor;
-import org.eclipse.wst.sse.ui.internal.format.StructuredFormattingStrategy;
-import org.eclipse.wst.sse.ui.internal.provisional.StructuredTextViewerConfiguration;
-import org.eclipse.wst.sse.ui.internal.provisional.preferences.CommonEditorPreferenceNames;
-import org.eclipse.wst.sse.ui.internal.provisional.style.IHighlighter;
-import org.eclipse.wst.sse.ui.internal.provisional.style.LineStyleProvider;
-import org.eclipse.wst.sse.ui.internal.reconcile.StructuredRegionProcessor;
-import org.eclipse.wst.sse.ui.internal.taginfo.AnnotationHoverProcessor;
-import org.eclipse.wst.sse.ui.internal.taginfo.ProblemAnnotationHoverProcessor;
-import org.eclipse.wst.sse.ui.internal.taginfo.TextHoverManager;
-import org.eclipse.wst.sse.ui.internal.util.EditorUtility;
-import org.eclipse.wst.xml.core.internal.provisional.text.IXMLPartitions;
-import org.eclipse.wst.xml.core.internal.text.rules.StructuredTextPartitionerForXML;
-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.doubleclick.XMLDoubleClickStrategy;
-import org.eclipse.wst.xml.ui.internal.validation.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 == IHTMLPartitionTypes.HTML_DEFAULT || contentType == IHTMLPartitionTypes.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] = IStructuredPartitionTypes.DEFAULT_PARTITION;
-			configuredContentTypes[1] = IStructuredPartitionTypes.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, IHTMLPartitionTypes.HTML_DEFAULT);
-			setContentAssistProcessor(contentAssistant, htmlContentAssistProcessor, IHTMLPartitionTypes.HTML_COMMENT);
-
-			// JavaScript
-			setContentAssistProcessor(contentAssistant, jsContentAssistProcessor, IHTMLPartitionTypes.SCRIPT);
-
-			// CSS
-			setContentAssistProcessor(contentAssistant, cssContentAssistProcessor, ICSSPartitionTypes.STYLE);
-
-			// unknown
-			setContentAssistProcessor(contentAssistant, noRegionProcessorForHTML, IStructuredPartitionTypes.UNKNOWN_PARTITION);
-		}
-
-		return ca;
-	}
-
-	public IContentFormatter getContentFormatter(ISourceViewer sourceViewer) {
-		final MultiPassContentFormatter formatter = new MultiPassContentFormatter(getConfiguredDocumentPartitioning(sourceViewer), IHTMLPartitionTypes.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, IHTMLPartitionTypes.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(IHTMLPartitionTypes.HTML_DEFAULT) == 0)
-			// HTML
-			return new XMLDoubleClickStrategy();
-		else if (contentType.compareTo(IHTMLPartitionTypes.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(IHTMLPartitionTypes.HTML_DEFAULT, htmlLineStyleProvider);
-			highlighter.addProvider(IHTMLPartitionTypes.HTML_COMMENT, htmlLineStyleProvider);
-			highlighter.addProvider(IHTMLPartitionTypes.HTML_DECLARATION, htmlLineStyleProvider);
-
-			// JavaScript
-			LineStyleProvider jsLineStyleProvider = new LineStyleProviderForJavaScript();
-			highlighter.addProvider(IHTMLPartitionTypes.SCRIPT, jsLineStyleProvider);
-
-			// CSS
-			LineStyleProvider cssLineStyleProvider = new LineStyleProviderForEmbeddedCSS();
-			highlighter.addProvider(ICSSPartitionTypes.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, IHTMLPartitionTypes.HTML_DEFAULT);
-
-			// JavaScript
-			IInformationProvider javascriptInformationProvider = new JavaScriptInformationProvider();
-			fInformationPresenter.setInformationProvider(javascriptInformationProvider, IHTMLPartitionTypes.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, IStructuredPartitionTypes.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(IHTMLPartitionTypes.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(IHTMLPartitionTypes.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/internal/registry/AdapterFactoryProviderForEmbeddedHTML.java b/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/registry/AdapterFactoryProviderForEmbeddedHTML.java
deleted file mode 100644
index a9006e9..0000000
--- a/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/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.internal.registry;
-
-import org.eclipse.wst.html.core.internal.modelhandler.EmbeddedHTML;
-import org.eclipse.wst.sse.core.internal.ltk.modelhandler.EmbeddedTypeHandler;
-import org.eclipse.wst.sse.core.internal.provisional.IStructuredModel;
-import org.eclipse.wst.sse.ui.internal.provisional.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/internal/registry/AdapterFactoryProviderForHTML.java b/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/registry/AdapterFactoryProviderForHTML.java
deleted file mode 100644
index 36a9b9e..0000000
--- a/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/registry/AdapterFactoryProviderForHTML.java
+++ /dev/null
@@ -1,73 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this 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.registry;
-
-import org.eclipse.ui.views.properties.IPropertySource;
-import org.eclipse.wst.html.core.internal.modelhandler.ModelHandlerForHTML;
-import org.eclipse.wst.html.ui.internal.contentoutline.JFaceNodeAdapterFactoryForHTML;
-import org.eclipse.wst.sse.core.internal.ltk.modelhandler.IDocumentTypeHandler;
-import org.eclipse.wst.sse.core.internal.model.FactoryRegistry;
-import org.eclipse.wst.sse.core.internal.provisional.INodeAdapterFactory;
-import org.eclipse.wst.sse.core.internal.provisional.IStructuredModel;
-import org.eclipse.wst.sse.ui.internal.contentoutline.IJFaceNodeAdapter;
-import org.eclipse.wst.sse.ui.internal.provisional.registry.AdapterFactoryProvider;
-import org.eclipse.wst.sse.ui.internal.util.Assert;
-import org.eclipse.wst.xml.core.internal.provisional.document.IDOMModel;
-import org.eclipse.wst.xml.ui.internal.properties.XMLPropertySourceAdapterFactory;
-
-
-public class AdapterFactoryProviderForHTML implements AdapterFactoryProvider {
-
-
-	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 IDOMModel) {
-			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$
-		INodeAdapterFactory factory = null;
-
-		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);
-		}
-	}
-
-	protected void addPropagatingAdapters(IStructuredModel structuredModel) {
-		// no propagating to add
-	}
-
-	/*
-	 * @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/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 62bfb88..0000000
--- a/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/search/HTMLFindOccurrencesAction.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.search;
-
-import java.util.ResourceBundle;
-
-import org.eclipse.ui.texteditor.ITextEditor;
-import org.eclipse.wst.html.core.internal.provisional.text.IHTMLPartitionTypes;
-import org.eclipse.wst.sse.ui.internal.search.BasicFindOccurrencesAction;
-import org.eclipse.wst.xml.core.internal.provisional.text.IXMLPartitions;
-import org.eclipse.wst.xml.core.internal.regions.DOMRegionContext;
-
-
-/**
- * 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);
-	}
-
-	public String[] getPartitionTypes() {
-
-		return new String[]{IHTMLPartitionTypes.HTML_DEFAULT, IXMLPartitions.XML_DEFAULT};
-	}
-
-	public String[] getRegionTypes() {
-
-		return new String[]{DOMRegionContext.XML_TAG_NAME, DOMRegionContext.XML_TAG_ATTRIBUTE_NAME, DOMRegionContext.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/style/IStyleConstantsHTML.java b/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/style/IStyleConstantsHTML.java
deleted file mode 100644
index 5c7c88d..0000000
--- a/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/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.internal.style;
-
-import org.eclipse.wst.xml.ui.internal.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/internal/style/LineStyleProviderForHTML.java b/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/style/LineStyleProviderForHTML.java
deleted file mode 100644
index a2b5e7a..0000000
--- a/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/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.internal.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.internal.provisional.text.ITextRegion;
-import org.eclipse.wst.sse.ui.internal.provisional.style.LineStyleProvider;
-import org.eclipse.wst.xml.core.internal.regions.DOMRegionContext;
-import org.eclipse.wst.xml.ui.internal.style.IStyleConstantsXML;
-import org.eclipse.wst.xml.ui.internal.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() == DOMRegionContext.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/internal/taginfo/HTMLBestMatchHoverProcessor.java b/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/taginfo/HTMLBestMatchHoverProcessor.java
deleted file mode 100644
index d5516a8..0000000
--- a/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/taginfo/HTMLBestMatchHoverProcessor.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.taginfo;
-
-import org.eclipse.jface.text.ITextHover;
-import org.eclipse.wst.sse.ui.internal.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;
-
-	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/internal/taginfo/HTMLInformationProvider.java b/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/taginfo/HTMLInformationProvider.java
deleted file mode 100644
index 26ecebf..0000000
--- a/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/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.internal.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/internal/taginfo/HTMLTagInfoHoverProcessor.java b/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/taginfo/HTMLTagInfoHoverProcessor.java
deleted file mode 100644
index b8f7103..0000000
--- a/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/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.internal.taginfo;
-
-
-
-import org.eclipse.wst.xml.ui.internal.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/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 aca7d17..0000000
--- a/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/templates/EncodingTemplateVariableResolverHTML.java
+++ /dev/null
@@ -1,38 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *     
- *******************************************************************************/
-package org.eclipse.wst.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.html.ui.internal.HTMLUIMessages;
-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"; //$NON-NLS-1$
-	}
-
-	/**
-	 * Creates a new encoding variable
-	 */
-	public EncodingTemplateVariableResolverHTML() {
-		super(ENCODING_TYPE, HTMLUIMessages.Creating_files_encoding);
-	}
-
-	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/text/HTMLDocumentRegionEdgeMatcher.java b/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/text/HTMLDocumentRegionEdgeMatcher.java
deleted file mode 100644
index 7cbce42..0000000
--- a/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/text/HTMLDocumentRegionEdgeMatcher.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.html.ui.internal.text;
-
-import org.eclipse.wst.sse.ui.internal.text.DocumentRegionEdgeMatcher;
-import org.eclipse.wst.xml.core.internal.regions.DOMRegionContext;
-
-public class HTMLDocumentRegionEdgeMatcher extends DocumentRegionEdgeMatcher {
-
-	protected final static char[] BRACKETS = {'{', '}', '(', ')', '[', ']'};
-
-	/**
-	 * @param validContexts
-	 * @param nextMatcher
-	 */
-	public HTMLDocumentRegionEdgeMatcher() {
-		super(new String[]{DOMRegionContext.XML_TAG_NAME, DOMRegionContext.XML_COMMENT_TEXT, DOMRegionContext.XML_CDATA_TEXT, DOMRegionContext.XML_PI_OPEN, DOMRegionContext.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/internal/text/IJavaPartitions.java b/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/text/IJavaPartitions.java
deleted file mode 100644
index 982a49e..0000000
--- a/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/text/IJavaPartitions.java
+++ /dev/null
@@ -1,54 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 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.text;
-
-// taken from package org.eclipse.jdt.ui.text;
-
-/**
- * Definition of Java partitioning and its partitions.
- * 
- * @since 3.1
- */
-interface IJavaPartitions {
-
-	/**
-	 * The identifier of the Java partitioning.
-	 */
-	String JAVA_PARTITIONING = "___java_partitioning"; //$NON-NLS-1$
-
-	/**
-	 * The identifier of the single-line (JLS2: EndOfLineComment) end comment
-	 * partition content type.
-	 */
-	String JAVA_SINGLE_LINE_COMMENT = "__java_singleline_comment"; //$NON-NLS-1$
-
-	/**
-	 * The identifier multi-line (JLS2: TraditionalComment) comment partition
-	 * content type.
-	 */
-	String JAVA_MULTI_LINE_COMMENT = "__java_multiline_comment"; //$NON-NLS-1$
-
-	/**
-	 * The identifier of the Javadoc (JLS2: DocumentationComment) partition
-	 * content type.
-	 */
-	String JAVA_DOC = "__java_javadoc"; //$NON-NLS-1$
-
-	/**
-	 * The identifier of the Java string partition content type.
-	 */
-	String JAVA_STRING = "__java_string"; //$NON-NLS-1$
-
-	/**
-	 * The identifier of the Java character partition content type.
-	 */
-	String JAVA_CHARACTER = "__java_character"; //$NON-NLS-1$
-}
diff --git a/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/text/JavaCodeReader.java b/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/text/JavaCodeReader.java
deleted file mode 100644
index 196b9f3..0000000
--- a/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/text/JavaCodeReader.java
+++ /dev/null
@@ -1,243 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2001, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *     
- *******************************************************************************/
-package org.eclipse.wst.html.ui.internal.text;
-
-// taken from package org.eclipse.jdt.ui.text;
-
-import java.io.IOException;
-
-import org.eclipse.jface.text.BadLocationException;
-import org.eclipse.jface.text.IDocument;
-
-/**
- * Reads from a document either forwards or backwards. May be configured to
- * skip comments and strings.
- */
-class JavaCodeReader extends SingleCharReader {
-
-	/** The EOF character */
-	public static final int EOF = -1;
-
-	private boolean fSkipComments = false;
-	private boolean fSkipStrings = false;
-	private boolean fForward = false;
-
-	private IDocument fDocument;
-	private int fOffset;
-
-	private int fEnd = -1;
-	private int fCachedLineNumber = -1;
-	private int fCachedLineOffset = -1;
-
-
-	public JavaCodeReader() {
-	}
-
-	/**
-	 * Returns the offset of the last read character. Should only be called
-	 * after read has been called.
-	 */
-	public int getOffset() {
-		return fForward ? fOffset - 1 : fOffset;
-	}
-
-	public void configureForwardReader(IDocument document, int offset, int length, boolean skipComments, boolean skipStrings) throws IOException {
-		fDocument = document;
-		fOffset = offset;
-		fSkipComments = skipComments;
-		fSkipStrings = skipStrings;
-
-		fForward = true;
-		fEnd = Math.min(fDocument.getLength(), fOffset + length);
-	}
-
-	public void configureBackwardReader(IDocument document, int offset, boolean skipComments, boolean skipStrings) throws IOException {
-		fDocument = document;
-		fOffset = offset;
-		fSkipComments = skipComments;
-		fSkipStrings = skipStrings;
-
-		fForward = false;
-		try {
-			fCachedLineNumber = fDocument.getLineOfOffset(fOffset);
-		}
-		catch (BadLocationException x) {
-			throw new IOException(x.getMessage());
-		}
-	}
-
-	/*
-	 * @see Reader#close()
-	 */
-	public void close() throws IOException {
-		fDocument = null;
-	}
-
-	/*
-	 * @see SingleCharReader#read()
-	 */
-	public int read() throws IOException {
-		try {
-			return fForward ? readForwards() : readBackwards();
-		}
-		catch (BadLocationException x) {
-			throw new IOException(x.getMessage());
-		}
-	}
-
-	private void gotoCommentEnd() throws BadLocationException {
-		while (fOffset < fEnd) {
-			char current = fDocument.getChar(fOffset++);
-			if (current == '*') {
-				if (fOffset < fEnd && fDocument.getChar(fOffset) == '/') {
-					++fOffset;
-					return;
-				}
-			}
-		}
-	}
-
-	private void gotoStringEnd(char delimiter) throws BadLocationException {
-		while (fOffset < fEnd) {
-			char current = fDocument.getChar(fOffset++);
-			if (current == '\\') {
-				// ignore escaped characters
-				++fOffset;
-			}
-			else if (current == delimiter) {
-				return;
-			}
-		}
-	}
-
-	private void gotoLineEnd() throws BadLocationException {
-		int line = fDocument.getLineOfOffset(fOffset);
-		fOffset = fDocument.getLineOffset(line + 1);
-	}
-
-	private int readForwards() throws BadLocationException {
-		while (fOffset < fEnd) {
-			char current = fDocument.getChar(fOffset++);
-
-			switch (current) {
-				case '/' :
-
-					if (fSkipComments && fOffset < fEnd) {
-						char next = fDocument.getChar(fOffset);
-						if (next == '*') {
-							// a comment starts, advance to the comment end
-							++fOffset;
-							gotoCommentEnd();
-							continue;
-						}
-						else if (next == '/') {
-							// '//'-comment starts, advance to the line end
-							gotoLineEnd();
-							continue;
-						}
-					}
-
-					return current;
-
-				case '"' :
-				case '\'' :
-
-					if (fSkipStrings) {
-						gotoStringEnd(current);
-						continue;
-					}
-
-					return current;
-			}
-
-			return current;
-		}
-
-		return EOF;
-	}
-
-	private void handleSingleLineComment() throws BadLocationException {
-		int line = fDocument.getLineOfOffset(fOffset);
-		if (line < fCachedLineNumber) {
-			fCachedLineNumber = line;
-			fCachedLineOffset = fDocument.getLineOffset(line);
-			int offset = fOffset;
-			while (fCachedLineOffset < offset) {
-				char current = fDocument.getChar(offset--);
-				if (current == '/' && fCachedLineOffset <= offset && fDocument.getChar(offset) == '/') {
-					fOffset = offset;
-					return;
-				}
-			}
-		}
-	}
-
-	private void gotoCommentStart() throws BadLocationException {
-		while (0 < fOffset) {
-			char current = fDocument.getChar(fOffset--);
-			if (current == '*' && 0 <= fOffset && fDocument.getChar(fOffset) == '/')
-				return;
-		}
-	}
-
-	private void gotoStringStart(char delimiter) throws BadLocationException {
-		while (0 < fOffset) {
-			char current = fDocument.getChar(fOffset);
-			if (current == delimiter) {
-				if (!(0 <= fOffset && fDocument.getChar(fOffset - 1) == '\\'))
-					return;
-			}
-			--fOffset;
-		}
-	}
-
-	private int readBackwards() throws BadLocationException {
-
-		while (0 < fOffset) {
-			--fOffset;
-
-			handleSingleLineComment();
-
-			char current = fDocument.getChar(fOffset);
-			switch (current) {
-				case '/' :
-
-					if (fSkipComments && fOffset > 1) {
-						char next = fDocument.getChar(fOffset - 1);
-						if (next == '*') {
-							// a comment ends, advance to the comment start
-							fOffset -= 2;
-							gotoCommentStart();
-							continue;
-						}
-					}
-
-					return current;
-
-				case '"' :
-				case '\'' :
-
-					if (fSkipStrings) {
-						--fOffset;
-						gotoStringStart(current);
-						continue;
-					}
-
-					return current;
-			}
-
-			return current;
-		}
-
-		return EOF;
-	}
-}
diff --git a/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/text/JavaHeuristicScanner.java b/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/text/JavaHeuristicScanner.java
deleted file mode 100644
index 1bbc585..0000000
--- a/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/text/JavaHeuristicScanner.java
+++ /dev/null
@@ -1,986 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 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.text;
-
-// taken from package org.eclipse.jdt.internal.ui.text;
-
-import java.util.Arrays;
-
-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.ITypedRegion;
-import org.eclipse.jface.text.Region;
-import org.eclipse.jface.text.TextUtilities;
-import org.eclipse.jface.text.TypedRegion;
-
-/**
- * Utility methods for heuristic based Java manipulations in an incomplete
- * Java source file.
- * 
- * <p>
- * An instance holds some internal position in the document and is therefore
- * not threadsafe.
- * </p>
- * 
- * @since 3.0
- */
-final class JavaHeuristicScanner implements Symbols {
-	/**
-	 * Returned by all methods when the requested position could not be found,
-	 * or if a {@link BadLocationException} was thrown while scanning.
-	 */
-	public static final int NOT_FOUND = -1;
-
-	/**
-	 * Special bound parameter that means either -1 (backward scanning) or
-	 * <code>fDocument.getLength()</code> (forward scanning).
-	 */
-	public static final int UNBOUND = -2;
-
-
-	/* character constants */
-	private static final char LBRACE = '{';
-	private static final char RBRACE = '}';
-	private static final char LPAREN = '(';
-	private static final char RPAREN = ')';
-	private static final char SEMICOLON = ';';
-	private static final char COLON = ':';
-	private static final char COMMA = ',';
-	private static final char LBRACKET = '[';
-	private static final char RBRACKET = ']';
-	private static final char QUESTIONMARK = '?';
-	private static final char EQUAL = '=';
-	private static final char LANGLE = '<';
-	private static final char RANGLE = '>';
-
-	/**
-	 * Specifies the stop condition, upon which the <code>scanXXX</code>
-	 * methods will decide whether to keep scanning or not. This interface may
-	 * implemented by clients.
-	 */
-	private static abstract class StopCondition {
-		/**
-		 * Instructs the scanner to return the current position.
-		 * 
-		 * @param ch
-		 *            the char at the current position
-		 * @param position
-		 *            the current position
-		 * @param forward
-		 *            the iteration direction
-		 * @return <code>true</code> if the stop condition is met.
-		 */
-		public abstract boolean stop(char ch, int position, boolean forward);
-
-		/**
-		 * Asks the condition to return the next position to query. The
-		 * default is to return the next/previous position.
-		 * 
-		 * @return the next position to scan
-		 */
-		public int nextPosition(int position, boolean forward) {
-			return forward ? position + 1 : position - 1;
-		}
-	}
-
-	/**
-	 * Stops upon a non-whitespace (as defined by
-	 * {@link Character#isWhitespace(char)}) character.
-	 */
-	private static class NonWhitespace extends StopCondition {
-		/*
-		 * @see org.eclipse.jdt.internal.ui.text.JavaHeuristicScanner.StopCondition#stop(char)
-		 */
-		public boolean stop(char ch, int position, boolean forward) {
-			return !Character.isWhitespace(ch);
-		}
-	}
-
-	/**
-	 * Stops upon a non-whitespace character in the default partition.
-	 * 
-	 * @see NonWhitespace
-	 */
-	private final class NonWhitespaceDefaultPartition extends NonWhitespace {
-		/*
-		 * @see org.eclipse.jdt.internal.ui.text.JavaHeuristicScanner.StopCondition#stop(char)
-		 */
-		public boolean stop(char ch, int position, boolean forward) {
-			return super.stop(ch, position, true) && isDefaultPartition(position);
-		}
-
-		/*
-		 * @see org.eclipse.jdt.internal.ui.text.JavaHeuristicScanner.StopCondition#nextPosition(int,
-		 *      boolean)
-		 */
-		public int nextPosition(int position, boolean forward) {
-			ITypedRegion partition = getPartition(position);
-			if (fPartition.equals(partition.getType()))
-				return super.nextPosition(position, forward);
-
-			if (forward) {
-				int end = partition.getOffset() + partition.getLength();
-				if (position < end)
-					return end;
-			}
-			else {
-				int offset = partition.getOffset();
-				if (position > offset)
-					return offset - 1;
-			}
-			return super.nextPosition(position, forward);
-		}
-	}
-
-	/**
-	 * Stops upon a non-java identifier (as defined by
-	 * {@link Character#isJavaIdentifierPart(char)}) character.
-	 */
-	private static class NonJavaIdentifierPart extends StopCondition {
-		/*
-		 * @see org.eclipse.jdt.internal.ui.text.JavaHeuristicScanner.StopCondition#stop(char)
-		 */
-		public boolean stop(char ch, int position, boolean forward) {
-			return !Character.isJavaIdentifierPart(ch);
-		}
-	}
-
-	/**
-	 * Stops upon a non-java identifier character in the default partition.
-	 * 
-	 * @see NonJavaIdentifierPart
-	 */
-	private final class NonJavaIdentifierPartDefaultPartition extends NonJavaIdentifierPart {
-		/*
-		 * @see org.eclipse.jdt.internal.ui.text.JavaHeuristicScanner.StopCondition#stop(char)
-		 */
-		public boolean stop(char ch, int position, boolean forward) {
-			return super.stop(ch, position, true) || !isDefaultPartition(position);
-		}
-
-		/*
-		 * @see org.eclipse.jdt.internal.ui.text.JavaHeuristicScanner.StopCondition#nextPosition(int,
-		 *      boolean)
-		 */
-		public int nextPosition(int position, boolean forward) {
-			ITypedRegion partition = getPartition(position);
-			if (fPartition.equals(partition.getType()))
-				return super.nextPosition(position, forward);
-
-			if (forward) {
-				int end = partition.getOffset() + partition.getLength();
-				if (position < end)
-					return end;
-			}
-			else {
-				int offset = partition.getOffset();
-				if (position > offset)
-					return offset - 1;
-			}
-			return super.nextPosition(position, forward);
-		}
-	}
-
-	/**
-	 * Stops upon a character in the default partition that matches the given
-	 * character list.
-	 */
-	private final class CharacterMatch extends StopCondition {
-		private final char[] fChars;
-
-		/**
-		 * Creates a new instance.
-		 * 
-		 * @param ch
-		 *            the single character to match
-		 */
-		public CharacterMatch(char ch) {
-			this(new char[]{ch});
-		}
-
-		/**
-		 * Creates a new instance.
-		 * 
-		 * @param chars
-		 *            the chars to match.
-		 */
-		public CharacterMatch(char[] chars) {
-			Assert.isNotNull(chars);
-			Assert.isTrue(chars.length > 0);
-			fChars = chars;
-			Arrays.sort(chars);
-		}
-
-		/*
-		 * @see org.eclipse.jdt.internal.ui.text.JavaHeuristicScanner.StopCondition#stop(char,
-		 *      int)
-		 */
-		public boolean stop(char ch, int position, boolean forward) {
-			return Arrays.binarySearch(fChars, ch) >= 0 && isDefaultPartition(position);
-		}
-
-		/*
-		 * @see org.eclipse.jdt.internal.ui.text.JavaHeuristicScanner.StopCondition#nextPosition(int,
-		 *      boolean)
-		 */
-		public int nextPosition(int position, boolean forward) {
-			ITypedRegion partition = getPartition(position);
-			if (fPartition.equals(partition.getType()))
-				return super.nextPosition(position, forward);
-
-			if (forward) {
-				int end = partition.getOffset() + partition.getLength();
-				if (position < end)
-					return end;
-			}
-			else {
-				int offset = partition.getOffset();
-				if (position > offset)
-					return offset - 1;
-			}
-			return super.nextPosition(position, forward);
-		}
-	}
-
-	/** The document being scanned. */
-	private IDocument fDocument;
-	/** The partitioning being used for scanning. */
-	private String fPartitioning;
-	/** The partition to scan in. */
-	private String fPartition;
-
-	/* internal scan state */
-
-	/** the most recently read character. */
-	private char fChar;
-	/** the most recently read position. */
-	private int fPos;
-
-	/* preset stop conditions */
-	private final StopCondition fNonWSDefaultPart = new NonWhitespaceDefaultPartition();
-	private final static StopCondition fNonWS = new NonWhitespace();
-	private final StopCondition fNonIdent = new NonJavaIdentifierPartDefaultPartition();
-
-	/**
-	 * Creates a new instance.
-	 * 
-	 * @param document
-	 *            the document to scan
-	 * @param partitioning
-	 *            the partitioning to use for scanning
-	 * @param partition
-	 *            the partition to scan in
-	 */
-	public JavaHeuristicScanner(IDocument document, String partitioning, String partition) {
-		Assert.isNotNull(document);
-		Assert.isNotNull(partitioning);
-		Assert.isNotNull(partition);
-		fDocument = document;
-		fPartitioning = partitioning;
-		fPartition = partition;
-	}
-
-	/**
-	 * Calls
-	 * <code>this(document, IJavaPartitions.JAVA_PARTITIONING, IDocument.DEFAULT_CONTENT_TYPE)</code>.
-	 * 
-	 * @param document
-	 *            the document to scan.
-	 */
-	public JavaHeuristicScanner(IDocument document) {
-		this(document, IJavaPartitions.JAVA_PARTITIONING, IDocument.DEFAULT_CONTENT_TYPE);
-	}
-
-	/**
-	 * Returns the most recent internal scan position.
-	 * 
-	 * @return the most recent internal scan position.
-	 */
-	public int getPosition() {
-		return fPos;
-	}
-
-	/**
-	 * Returns the next token in forward direction, starting at
-	 * <code>start</code>, and not extending further than
-	 * <code>bound</code>. The return value is one of the constants defined
-	 * in {@link Symbols}. After a call, {@link #getPosition()} will return
-	 * the position just after the scanned token (i.e. the next position that
-	 * will be scanned).
-	 * 
-	 * @param start
-	 *            the first character position in the document to consider
-	 * @param bound
-	 *            the first position not to consider any more
-	 * @return a constant from {@link Symbols} describing the next token
-	 */
-	public int nextToken(int start, int bound) {
-		int pos = scanForward(start, bound, fNonWSDefaultPart);
-		if (pos == NOT_FOUND)
-			return TokenEOF;
-
-		fPos++;
-
-		switch (fChar) {
-			case LBRACE :
-				return TokenLBRACE;
-			case RBRACE :
-				return TokenRBRACE;
-			case LBRACKET :
-				return TokenLBRACKET;
-			case RBRACKET :
-				return TokenRBRACKET;
-			case LPAREN :
-				return TokenLPAREN;
-			case RPAREN :
-				return TokenRPAREN;
-			case SEMICOLON :
-				return TokenSEMICOLON;
-			case COMMA :
-				return TokenCOMMA;
-			case QUESTIONMARK :
-				return TokenQUESTIONMARK;
-			case EQUAL :
-				return TokenEQUAL;
-			case LANGLE :
-				return TokenLESSTHAN;
-			case RANGLE :
-				return TokenGREATERTHAN;
-		}
-
-		// else
-		if (Character.isJavaIdentifierPart(fChar)) {
-			// assume an ident or keyword
-			int from = pos, to;
-			pos = scanForward(pos + 1, bound, fNonIdent);
-			if (pos == NOT_FOUND)
-				to = bound == UNBOUND ? fDocument.getLength() : bound;
-			else
-				to = pos;
-
-			String identOrKeyword;
-			try {
-				identOrKeyword = fDocument.get(from, to - from);
-			}
-			catch (BadLocationException e) {
-				return TokenEOF;
-			}
-
-			return getToken(identOrKeyword);
-
-
-		}
-		else {
-			// operators, number literals etc
-			return TokenOTHER;
-		}
-	}
-
-	/**
-	 * Returns the next token in backward direction, starting at
-	 * <code>start</code>, and not extending further than
-	 * <code>bound</code>. The return value is one of the constants defined
-	 * in {@link Symbols}. After a call, {@link #getPosition()} will return
-	 * the position just before the scanned token starts (i.e. the next
-	 * position that will be scanned).
-	 * 
-	 * @param start
-	 *            the first character position in the document to consider
-	 * @param bound
-	 *            the first position not to consider any more
-	 * @return a constant from {@link Symbols} describing the previous token
-	 */
-	public int previousToken(int start, int bound) {
-		int pos = scanBackward(start, bound, fNonWSDefaultPart);
-		if (pos == NOT_FOUND)
-			return TokenEOF;
-
-		fPos--;
-
-		switch (fChar) {
-			case LBRACE :
-				return TokenLBRACE;
-			case RBRACE :
-				return TokenRBRACE;
-			case LBRACKET :
-				return TokenLBRACKET;
-			case RBRACKET :
-				return TokenRBRACKET;
-			case LPAREN :
-				return TokenLPAREN;
-			case RPAREN :
-				return TokenRPAREN;
-			case SEMICOLON :
-				return TokenSEMICOLON;
-			case COLON :
-				return TokenCOLON;
-			case COMMA :
-				return TokenCOMMA;
-			case QUESTIONMARK :
-				return TokenQUESTIONMARK;
-			case EQUAL :
-				return TokenEQUAL;
-			case LANGLE :
-				return TokenLESSTHAN;
-			case RANGLE :
-				return TokenGREATERTHAN;
-		}
-
-		// else
-		if (Character.isJavaIdentifierPart(fChar)) {
-			// assume an ident or keyword
-			int from, to = pos + 1;
-			pos = scanBackward(pos - 1, bound, fNonIdent);
-			if (pos == NOT_FOUND)
-				from = bound == UNBOUND ? 0 : bound + 1;
-			else
-				from = pos + 1;
-
-			String identOrKeyword;
-			try {
-				identOrKeyword = fDocument.get(from, to - from);
-			}
-			catch (BadLocationException e) {
-				return TokenEOF;
-			}
-
-			return getToken(identOrKeyword);
-
-
-		}
-		else {
-			// operators, number literals etc
-			return TokenOTHER;
-		}
-
-	}
-
-	/**
-	 * Returns one of the keyword constants or <code>TokenIDENT</code> for a
-	 * scanned identifier.
-	 * 
-	 * @param s
-	 *            a scanned identifier
-	 * @return one of the constants defined in {@link Symbols}
-	 */
-	private int getToken(String s) {
-		Assert.isNotNull(s);
-
-		switch (s.length()) {
-			case 2 :
-				if ("if".equals(s)) //$NON-NLS-1$
-					return TokenIF;
-				if ("do".equals(s)) //$NON-NLS-1$
-					return TokenDO;
-				break;
-			case 3 :
-				if ("for".equals(s)) //$NON-NLS-1$
-					return TokenFOR;
-				if ("try".equals(s)) //$NON-NLS-1$
-					return TokenTRY;
-				if ("new".equals(s)) //$NON-NLS-1$
-					return TokenNEW;
-				break;
-			case 4 :
-				if ("case".equals(s)) //$NON-NLS-1$
-					return TokenCASE;
-				if ("else".equals(s)) //$NON-NLS-1$
-					return TokenELSE;
-				if ("enum".equals(s)) //$NON-NLS-1$
-					return TokenENUM;
-				if ("goto".equals(s)) //$NON-NLS-1$
-					return TokenGOTO;
-				break;
-			case 5 :
-				if ("break".equals(s)) //$NON-NLS-1$
-					return TokenBREAK;
-				if ("catch".equals(s)) //$NON-NLS-1$
-					return TokenCATCH;
-				if ("class".equals(s)) //$NON-NLS-1$
-					return TokenCLASS;
-				if ("while".equals(s)) //$NON-NLS-1$
-					return TokenWHILE;
-				break;
-			case 6 :
-				if ("return".equals(s)) //$NON-NLS-1$
-					return TokenRETURN;
-				if ("static".equals(s)) //$NON-NLS-1$
-					return TokenSTATIC;
-				if ("switch".equals(s)) //$NON-NLS-1$
-					return TokenSWITCH;
-				break;
-			case 7 :
-				if ("default".equals(s)) //$NON-NLS-1$
-					return TokenDEFAULT;
-				if ("finally".equals(s)) //$NON-NLS-1$
-					return TokenFINALLY;
-				break;
-			case 9 :
-				if ("interface".equals(s)) //$NON-NLS-1$
-					return TokenINTERFACE;
-				break;
-			case 12 :
-				if ("synchronized".equals(s)) //$NON-NLS-1$
-					return TokenSYNCHRONIZED;
-				break;
-		}
-		return TokenIDENT;
-	}
-
-	/**
-	 * Returns the position of the closing peer character (forward search).
-	 * Any scopes introduced by opening peers are skipped. All peers accounted
-	 * for must reside in the default partition.
-	 * 
-	 * <p>
-	 * Note that <code>start</code> must not point to the opening peer, but
-	 * to the first character being searched.
-	 * </p>
-	 * 
-	 * @param start
-	 *            the start position
-	 * @param openingPeer
-	 *            the opening peer character (e.g. '{')
-	 * @param closingPeer
-	 *            the closing peer character (e.g. '}')
-	 * @return the matching peer character position, or <code>NOT_FOUND</code>
-	 */
-	public int findClosingPeer(int start, final char openingPeer, final char closingPeer) {
-		Assert.isNotNull(fDocument);
-		Assert.isTrue(start >= 0);
-
-		try {
-			int depth = 1;
-			start -= 1;
-			while (true) {
-				start = scanForward(start + 1, UNBOUND, new CharacterMatch(new char[]{openingPeer, closingPeer}));
-				if (start == NOT_FOUND)
-					return NOT_FOUND;
-
-				if (fDocument.getChar(start) == openingPeer)
-					depth++;
-				else
-					depth--;
-
-				if (depth == 0)
-					return start;
-			}
-
-		}
-		catch (BadLocationException e) {
-			return NOT_FOUND;
-		}
-	}
-
-	/**
-	 * Returns the position of the opening peer character (backward search).
-	 * Any scopes introduced by closing peers are skipped. All peers accounted
-	 * for must reside in the default partition.
-	 * 
-	 * <p>
-	 * Note that <code>start</code> must not point to the closing peer, but
-	 * to the first character being searched.
-	 * </p>
-	 * 
-	 * @param start
-	 *            the start position
-	 * @param openingPeer
-	 *            the opening peer character (e.g. '{')
-	 * @param closingPeer
-	 *            the closing peer character (e.g. '}')
-	 * @return the matching peer character position, or <code>NOT_FOUND</code>
-	 */
-	public int findOpeningPeer(int start, char openingPeer, char closingPeer) {
-		Assert.isTrue(start < fDocument.getLength());
-
-		try {
-			int depth = 1;
-			start += 1;
-			while (true) {
-				start = scanBackward(start - 1, UNBOUND, new CharacterMatch(new char[]{openingPeer, closingPeer}));
-				if (start == NOT_FOUND)
-					return NOT_FOUND;
-
-				if (fDocument.getChar(start) == closingPeer)
-					depth++;
-				else
-					depth--;
-
-				if (depth == 0)
-					return start;
-			}
-
-		}
-		catch (BadLocationException e) {
-			return NOT_FOUND;
-		}
-	}
-
-	/**
-	 * Computes the surrounding block around <code>offset</code>. The
-	 * search is started at the beginning of <code>offset</code>, i.e. an
-	 * opening brace at <code>offset</code> will not be part of the
-	 * surrounding block, but a closing brace will.
-	 * 
-	 * @param offset
-	 *            the offset for which the surrounding block is computed
-	 * @return a region describing the surrounding block, or <code>null</code>
-	 *         if none can be found
-	 */
-	public IRegion findSurroundingBlock(int offset) {
-		if (offset < 1 || offset >= fDocument.getLength())
-			return null;
-
-		int begin = findOpeningPeer(offset - 1, LBRACE, RBRACE);
-		int end = findClosingPeer(offset, LBRACE, RBRACE);
-		if (begin == NOT_FOUND || end == NOT_FOUND)
-			return null;
-		return new Region(begin, end + 1 - begin);
-	}
-
-	/**
-	 * Finds the smallest position in <code>fDocument</code> such that the
-	 * position is &gt;= <code>position</code> and &lt; <code>bound</code>
-	 * and <code>Character.isWhitespace(fDocument.getChar(pos))</code>
-	 * evaluates to <code>false</code> and the position is in the default
-	 * partition.
-	 * 
-	 * @param position
-	 *            the first character position in <code>fDocument</code> to
-	 *            be considered
-	 * @param bound
-	 *            the first position in <code>fDocument</code> to not
-	 *            consider any more, with <code>bound</code> &gt;
-	 *            <code>position</code>, or <code>UNBOUND</code>
-	 * @return the smallest position of a non-whitespace character in [<code>position</code>,
-	 *         <code>bound</code>) that resides in a Java partition, or
-	 *         <code>NOT_FOUND</code> if none can be found
-	 */
-	public int findNonWhitespaceForward(int position, int bound) {
-		return scanForward(position, bound, fNonWSDefaultPart);
-	}
-
-	/**
-	 * Finds the smallest position in <code>fDocument</code> such that the
-	 * position is &gt;= <code>position</code> and &lt; <code>bound</code>
-	 * and <code>Character.isWhitespace(fDocument.getChar(pos))</code>
-	 * evaluates to <code>false</code>.
-	 * 
-	 * @param position
-	 *            the first character position in <code>fDocument</code> to
-	 *            be considered
-	 * @param bound
-	 *            the first position in <code>fDocument</code> to not
-	 *            consider any more, with <code>bound</code> &gt;
-	 *            <code>position</code>, or <code>UNBOUND</code>
-	 * @return the smallest position of a non-whitespace character in [<code>position</code>,
-	 *         <code>bound</code>), or <code>NOT_FOUND</code> if none can
-	 *         be found
-	 */
-	public int findNonWhitespaceForwardInAnyPartition(int position, int bound) {
-		return scanForward(position, bound, fNonWS);
-	}
-
-	/**
-	 * Finds the highest position in <code>fDocument</code> such that the
-	 * position is &lt;= <code>position</code> and &gt; <code>bound</code>
-	 * and <code>Character.isWhitespace(fDocument.getChar(pos))</code>
-	 * evaluates to <code>false</code> and the position is in the default
-	 * partition.
-	 * 
-	 * @param position
-	 *            the first character position in <code>fDocument</code> to
-	 *            be considered
-	 * @param bound
-	 *            the first position in <code>fDocument</code> to not
-	 *            consider any more, with <code>bound</code> &lt;
-	 *            <code>position</code>, or <code>UNBOUND</code>
-	 * @return the highest position of a non-whitespace character in (<code>bound</code>,
-	 *         <code>position</code>] that resides in a Java partition, or
-	 *         <code>NOT_FOUND</code> if none can be found
-	 */
-	public int findNonWhitespaceBackward(int position, int bound) {
-		return scanBackward(position, bound, fNonWSDefaultPart);
-	}
-
-	/**
-	 * Finds the lowest position <code>p</code> in <code>fDocument</code>
-	 * such that <code>start</code> &lt;= p &lt; <code>bound</code> and
-	 * <code>condition.stop(fDocument.getChar(p), p)</code> evaluates to
-	 * <code>true</code>.
-	 * 
-	 * @param start
-	 *            the first character position in <code>fDocument</code> to
-	 *            be considered
-	 * @param bound
-	 *            the first position in <code>fDocument</code> to not
-	 *            consider any more, with <code>bound</code> &gt;
-	 *            <code>start</code>, or <code>UNBOUND</code>
-	 * @param condition
-	 *            the <code>StopCondition</code> to check
-	 * @return the lowest position in [<code>start</code>,
-	 *         <code>bound</code>) for which <code>condition</code>
-	 *         holds, or <code>NOT_FOUND</code> if none can be found
-	 */
-	public int scanForward(int start, int bound, StopCondition condition) {
-		Assert.isTrue(start >= 0);
-
-		if (bound == UNBOUND)
-			bound = fDocument.getLength();
-
-		Assert.isTrue(bound <= fDocument.getLength());
-
-		try {
-			fPos = start;
-			while (fPos < bound) {
-
-				fChar = fDocument.getChar(fPos);
-				if (condition.stop(fChar, fPos, true))
-					return fPos;
-
-				fPos = condition.nextPosition(fPos, true);
-			}
-		}
-		catch (BadLocationException e) {
-		}
-		return NOT_FOUND;
-	}
-
-
-	/**
-	 * Finds the lowest position in <code>fDocument</code> such that the
-	 * position is &gt;= <code>position</code> and &lt; <code>bound</code>
-	 * and <code>fDocument.getChar(position) == ch</code> evaluates to
-	 * <code>true</code> and the position is in the default partition.
-	 * 
-	 * @param position
-	 *            the first character position in <code>fDocument</code> to
-	 *            be considered
-	 * @param bound
-	 *            the first position in <code>fDocument</code> to not
-	 *            consider any more, with <code>bound</code> &gt;
-	 *            <code>position</code>, or <code>UNBOUND</code>
-	 * @param ch
-	 *            the <code>char</code> to search for
-	 * @return the lowest position of <code>ch</code> in (<code>bound</code>,
-	 *         <code>position</code>] that resides in a Java partition, or
-	 *         <code>NOT_FOUND</code> if none can be found
-	 */
-	public int scanForward(int position, int bound, char ch) {
-		return scanForward(position, bound, new CharacterMatch(ch));
-	}
-
-	/**
-	 * Finds the lowest position in <code>fDocument</code> such that the
-	 * position is &gt;= <code>position</code> and &lt; <code>bound</code>
-	 * and <code>fDocument.getChar(position) == ch</code> evaluates to
-	 * <code>true</code> for at least one ch in <code>chars</code> and the
-	 * position is in the default partition.
-	 * 
-	 * @param position
-	 *            the first character position in <code>fDocument</code> to
-	 *            be considered
-	 * @param bound
-	 *            the first position in <code>fDocument</code> to not
-	 *            consider any more, with <code>bound</code> &gt;
-	 *            <code>position</code>, or <code>UNBOUND</code>
-	 * @param chars
-	 *            an array of <code>char</code> to search for
-	 * @return the lowest position of a non-whitespace character in [<code>position</code>,
-	 *         <code>bound</code>) that resides in a Java partition, or
-	 *         <code>NOT_FOUND</code> if none can be found
-	 */
-	public int scanForward(int position, int bound, char[] chars) {
-		return scanForward(position, bound, new CharacterMatch(chars));
-	}
-
-	/**
-	 * Finds the highest position <code>p</code> in <code>fDocument</code>
-	 * such that <code>bound</code> &lt; <code>p</code> &lt;=
-	 * <code>start</code> and
-	 * <code>condition.stop(fDocument.getChar(p), p)</code> evaluates to
-	 * <code>true</code>.
-	 * 
-	 * @param start
-	 *            the first character position in <code>fDocument</code> to
-	 *            be considered
-	 * @param bound
-	 *            the first position in <code>fDocument</code> to not
-	 *            consider any more, with <code>bound</code> &lt;
-	 *            <code>start</code>, or <code>UNBOUND</code>
-	 * @param condition
-	 *            the <code>StopCondition</code> to check
-	 * @return the highest position in (<code>bound</code>,
-	 *         <code>start</code> for which <code>condition</code> holds,
-	 *         or <code>NOT_FOUND</code> if none can be found
-	 */
-	public int scanBackward(int start, int bound, StopCondition condition) {
-		if (bound == UNBOUND)
-			bound = -1;
-
-		Assert.isTrue(bound >= -1);
-		Assert.isTrue(start < fDocument.getLength());
-
-		try {
-			fPos = start;
-			while (fPos > bound) {
-
-				fChar = fDocument.getChar(fPos);
-				if (condition.stop(fChar, fPos, false))
-					return fPos;
-
-				fPos = condition.nextPosition(fPos, false);
-			}
-		}
-		catch (BadLocationException e) {
-		}
-		return NOT_FOUND;
-	}
-
-	/**
-	 * Finds the highest position in <code>fDocument</code> such that the
-	 * position is &lt;= <code>position</code> and &gt; <code>bound</code>
-	 * and <code>fDocument.getChar(position) == ch</code> evaluates to
-	 * <code>true</code> for at least one ch in <code>chars</code> and the
-	 * position is in the default partition.
-	 * 
-	 * @param position
-	 *            the first character position in <code>fDocument</code> to
-	 *            be considered
-	 * @param bound
-	 *            the first position in <code>fDocument</code> to not
-	 *            consider any more, with <code>bound</code> &lt;
-	 *            <code>position</code>, or <code>UNBOUND</code>
-	 * @param ch
-	 *            the <code>char</code> to search for
-	 * @return the highest position of one element in <code>chars</code> in (<code>bound</code>,
-	 *         <code>position</code>] that resides in a Java partition, or
-	 *         <code>NOT_FOUND</code> if none can be found
-	 */
-	public int scanBackward(int position, int bound, char ch) {
-		return scanBackward(position, bound, new CharacterMatch(ch));
-	}
-
-	/**
-	 * Finds the highest position in <code>fDocument</code> such that the
-	 * position is &lt;= <code>position</code> and &gt; <code>bound</code>
-	 * and <code>fDocument.getChar(position) == ch</code> evaluates to
-	 * <code>true</code> for at least one ch in <code>chars</code> and the
-	 * position is in the default partition.
-	 * 
-	 * @param position
-	 *            the first character position in <code>fDocument</code> to
-	 *            be considered
-	 * @param bound
-	 *            the first position in <code>fDocument</code> to not
-	 *            consider any more, with <code>bound</code> &lt;
-	 *            <code>position</code>, or <code>UNBOUND</code>
-	 * @param chars
-	 *            an array of <code>char</code> to search for
-	 * @return the highest position of one element in <code>chars</code> in (<code>bound</code>,
-	 *         <code>position</code>] that resides in a Java partition, or
-	 *         <code>NOT_FOUND</code> if none can be found
-	 */
-	public int scanBackward(int position, int bound, char[] chars) {
-		return scanBackward(position, bound, new CharacterMatch(chars));
-	}
-
-	/**
-	 * Checks whether <code>position</code> resides in a default (Java)
-	 * partition of <code>fDocument</code>.
-	 * 
-	 * @param position
-	 *            the position to be checked
-	 * @return <code>true</code> if <code>position</code> is in the
-	 *         default partition of <code>fDocument</code>,
-	 *         <code>false</code> otherwise
-	 */
-	public boolean isDefaultPartition(int position) {
-		Assert.isTrue(position >= 0);
-		Assert.isTrue(position <= fDocument.getLength());
-
-		try {
-			return fPartition.equals(TextUtilities.getContentType(fDocument, fPartitioning, position, false));
-		}
-		catch (BadLocationException e) {
-			return false;
-		}
-	}
-
-	/**
-	 * Returns the partition at <code>position</code>.
-	 * 
-	 * @param position
-	 *            the position to get the partition for
-	 * @return the partition at <code>position</code> or a dummy zero-length
-	 *         partition if accessing the document fails
-	 */
-	private ITypedRegion getPartition(int position) {
-		Assert.isTrue(position >= 0);
-		Assert.isTrue(position <= fDocument.getLength());
-
-		try {
-			return TextUtilities.getPartition(fDocument, fPartitioning, position, false);
-		}
-		catch (BadLocationException e) {
-			return new TypedRegion(position, 0, "__no_partition_at_all"); //$NON-NLS-1$
-		}
-
-	}
-
-	/**
-	 * Checks if the line seems to be an open condition not followed by a
-	 * block (i.e. an if, while, or for statement with just one following
-	 * statement, see example below).
-	 * 
-	 * <pre>
-	 * if (condition)
-	 * 	doStuff();
-	 * </pre>
-	 * 
-	 * <p>
-	 * Algorithm: if the last non-WS, non-Comment code on the line is an if
-	 * (condition), while (condition), for( expression), do, else, and there
-	 * is no statement after that
-	 * </p>
-	 * 
-	 * @param position
-	 *            the insert position of the new character
-	 * @param bound
-	 *            the lowest position to consider
-	 * @return <code>true</code> if the code is a conditional statement or
-	 *         loop without a block, <code>false</code> otherwise
-	 */
-	public boolean isBracelessBlockStart(int position, int bound) {
-		if (position < 1)
-			return false;
-
-		switch (previousToken(position, bound)) {
-			case TokenDO :
-			case TokenELSE :
-				return true;
-			case TokenRPAREN :
-				position = findOpeningPeer(fPos, LPAREN, RPAREN);
-				if (position > 0) {
-					switch (previousToken(position - 1, bound)) {
-						case TokenIF :
-						case TokenFOR :
-						case TokenWHILE :
-							return true;
-					}
-				}
-		}
-
-		return false;
-	}
-}
diff --git a/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/text/JavaPairMatcher.java b/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/text/JavaPairMatcher.java
deleted file mode 100644
index b0cfbd5..0000000
--- a/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/text/JavaPairMatcher.java
+++ /dev/null
@@ -1,278 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2001, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *     
- *******************************************************************************/
-package org.eclipse.wst.html.ui.internal.text;
-
-// taken from package org.eclipse.jdt.ui.text;
-
-import java.io.IOException;
-
-import org.eclipse.jface.text.BadLocationException;
-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;
-
-class JavaPairMatcher implements ICharacterPairMatcher {
-
-	protected char[] fPairs;
-	protected IDocument fDocument;
-	protected int fOffset;
-
-	protected int fStartPos;
-	protected int fEndPos;
-	protected int fAnchor;
-
-	protected JavaCodeReader fReader = new JavaCodeReader();
-	/**
-	 * Stores the source version state.
-	 * 
-	 * @since 3.1
-	 */
-	private boolean fHighlightAngularBrackets = false;
-
-
-	public JavaPairMatcher(char[] pairs) {
-		fPairs = pairs;
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.jface.text.source.ICharacterPairMatcher#match(org.eclipse.jface.text.IDocument,
-	 *      int)
-	 */
-	public IRegion match(IDocument document, int offset) {
-
-		fOffset = offset;
-
-		if (fOffset < 0)
-			return null;
-
-		fDocument = document;
-
-		if (fDocument != null && matchPairsAt() && fStartPos != fEndPos)
-			return new Region(fStartPos, fEndPos - fStartPos + 1);
-
-		return null;
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.jface.text.source.ICharacterPairMatcher#getAnchor()
-	 */
-	public int getAnchor() {
-		return fAnchor;
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.jface.text.source.ICharacterPairMatcher#dispose()
-	 */
-	public void dispose() {
-		clear();
-		fDocument = null;
-		fReader = null;
-	}
-
-	/*
-	 * @see org.eclipse.jface.text.source.ICharacterPairMatcher#clear()
-	 */
-	public void clear() {
-		if (fReader != null) {
-			try {
-				fReader.close();
-			}
-			catch (IOException x) {
-				// ignore
-			}
-		}
-	}
-
-	protected boolean matchPairsAt() {
-
-		int i;
-		int pairIndex1 = fPairs.length;
-		int pairIndex2 = fPairs.length;
-
-		fStartPos = -1;
-		fEndPos = -1;
-
-		// get the chars preceding and following the start position
-		try {
-
-			char prevChar = fDocument.getChar(Math.max(fOffset - 1, 0));
-			// modified behavior for
-			// http://dev.eclipse.org/bugs/show_bug.cgi?id=16879
-			// char nextChar= fDocument.getChar(fOffset);
-
-			// search for opening peer character next to the activation point
-			for (i = 0; i < fPairs.length; i = i + 2) {
-				// if (nextChar == fPairs[i]) {
-				// fStartPos= fOffset;
-				// pairIndex1= i;
-				// } else
-				if (prevChar == fPairs[i]) {
-					fStartPos = fOffset - 1;
-					pairIndex1 = i;
-				}
-			}
-
-			// search for closing peer character next to the activation point
-			for (i = 1; i < fPairs.length; i = i + 2) {
-				if (prevChar == fPairs[i]) {
-					fEndPos = fOffset - 1;
-					pairIndex2 = i;
-				}
-				// else if (nextChar == fPairs[i]) {
-				// fEndPos= fOffset;
-				// pairIndex2= i;
-				// }
-			}
-
-			if (fEndPos > -1) {
-				fAnchor = RIGHT;
-				fStartPos = searchForOpeningPeer(fEndPos, fPairs[pairIndex2 - 1], fPairs[pairIndex2], fDocument);
-				if (fStartPos > -1)
-					return true;
-				else
-					fEndPos = -1;
-			}
-			else if (fStartPos > -1) {
-				fAnchor = LEFT;
-				fEndPos = searchForClosingPeer(fStartPos, fPairs[pairIndex1], fPairs[pairIndex1 + 1], fDocument);
-				if (fEndPos > -1)
-					return true;
-				else
-					fStartPos = -1;
-			}
-
-		}
-		catch (BadLocationException x) {
-		}
-		catch (IOException x) {
-		}
-
-		return false;
-	}
-
-	protected int searchForClosingPeer(int offset, int openingPeer, int closingPeer, IDocument document) throws IOException {
-		if (openingPeer == '<' && !(fHighlightAngularBrackets && isTypeParameterBracket(offset, document)))
-			return -1;
-
-		fReader.configureForwardReader(document, offset + 1, document.getLength(), true, true);
-
-		int stack = 1;
-		int c = fReader.read();
-		while (c != JavaCodeReader.EOF) {
-			if (c == openingPeer && c != closingPeer)
-				stack++;
-			else if (c == closingPeer)
-				stack--;
-
-			if (stack == 0)
-				return fReader.getOffset();
-
-			c = fReader.read();
-		}
-
-		return -1;
-	}
-
-
-	protected int searchForOpeningPeer(int offset, int openingPeer, int closingPeer, IDocument document) throws IOException {
-		if (openingPeer == '<' && !fHighlightAngularBrackets)
-			return -1;
-
-		fReader.configureBackwardReader(document, offset, true, true);
-
-		int stack = 1;
-		int c = fReader.read();
-		while (c != JavaCodeReader.EOF) {
-			if (c == closingPeer && c != openingPeer)
-				stack++;
-			else if (c == openingPeer)
-				stack--;
-
-			if (stack == 0) {
-				if (closingPeer == '>' && !isTypeParameterBracket(fReader.getOffset(), document))
-					return -1;
-				return fReader.getOffset();
-			}
-
-			c = fReader.read();
-		}
-
-		return -1;
-	}
-
-	/**
-	 * Checks if the angular bracket at <code>offset</code> is a type
-	 * parameter bracket.
-	 * 
-	 * @param offset
-	 *            the offset of the opening bracket
-	 * @param document
-	 *            the document
-	 * @return <code>true</code> if the bracket is part of a type parameter,
-	 *         <code>false</code> otherwise
-	 * @since 3.1
-	 */
-	private boolean isTypeParameterBracket(int offset, IDocument document) {
-		/*
-		 * type parameter come after braces (closing or opening), semicolons,
-		 * or after a Type name (heuristic: starts with capital character, or
-		 * after a modifier keyword in a method declaration (visibility,
-		 * static, synchronized, final)
-		 */
-
-		try {
-			IRegion line = document.getLineInformationOfOffset(offset);
-
-			JavaHeuristicScanner scanner = new JavaHeuristicScanner(document);
-			int prevToken = scanner.previousToken(offset - 1, line.getOffset());
-			int prevTokenOffset = scanner.getPosition() + 1;
-			String previous = prevToken == Symbols.TokenEOF ? null : document.get(prevTokenOffset, offset - prevTokenOffset).trim();
-
-			if (prevToken == Symbols.TokenLBRACE || prevToken == Symbols.TokenRBRACE || prevToken == Symbols.TokenSEMICOLON || prevToken == Symbols.TokenSYNCHRONIZED || prevToken == Symbols.TokenSTATIC || (prevToken == Symbols.TokenIDENT && isTypeParameterIntroducer(previous)) || prevToken == Symbols.TokenEOF)
-				return true;
-		}
-		catch (BadLocationException e) {
-			return false;
-		}
-
-		return false;
-	}
-
-	/**
-	 * Returns <code>true</code> if <code>identifier</code> is an
-	 * identifier that could come right before a type parameter list. It uses
-	 * a heuristic: if the identifier starts with an upper case, it is assumed
-	 * a type name. Also, if <code>identifier</code> is a method modifier,
-	 * it is assumed that the angular bracket is part of the generic type
-	 * parameter of a method.
-	 * 
-	 * @param identifier
-	 *            the identifier to check
-	 * @return <code>true</code> if the identifier could introduce a type
-	 *         parameter list
-	 * @since 3.1
-	 */
-	private boolean isTypeParameterIntroducer(String identifier) {
-		return identifier.length() > 0 && (Character.isUpperCase(identifier.charAt(0)) || identifier.startsWith("final") //$NON-NLS-1$
-					|| identifier.startsWith("public") //$NON-NLS-1$
-					|| identifier.startsWith("public") //$NON-NLS-1$
-					|| identifier.startsWith("protected") //$NON-NLS-1$
-		|| identifier.startsWith("private")); //$NON-NLS-1$
-	}
-}
diff --git a/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/text/SingleCharReader.java b/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/text/SingleCharReader.java
deleted file mode 100644
index 914fde4..0000000
--- a/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/text/SingleCharReader.java
+++ /dev/null
@@ -1,64 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2001, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *     
- *******************************************************************************/
-package org.eclipse.wst.html.ui.internal.text;
-
-// taken from package org.eclipse.jdt.ui.text;
-
-import java.io.IOException;
-import java.io.Reader;
-
-abstract class SingleCharReader extends Reader {
-
-	/**
-	 * @see Reader#read()
-	 */
-	public abstract int read() throws IOException;
-
-	/**
-	 * @see Reader#read(char[],int,int)
-	 */
-	public int read(char cbuf[], int off, int len) throws IOException {
-		int end = off + len;
-		for (int i = off; i < end; i++) {
-			int ch = read();
-			if (ch == -1) {
-				if (i == off) {
-					return -1;
-				}
-				else {
-					return i - off;
-				}
-			}
-			cbuf[i] = (char) ch;
-		}
-		return len;
-	}
-
-	/**
-	 * @see Reader#ready()
-	 */
-	public boolean ready() throws IOException {
-		return true;
-	}
-
-	/**
-	 * Gets the content as a String
-	 */
-	public String getString() throws IOException {
-		StringBuffer buf = new StringBuffer();
-		int ch;
-		while ((ch = read()) != -1) {
-			buf.append((char) ch);
-		}
-		return buf.toString();
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/text/Symbols.java b/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/text/Symbols.java
deleted file mode 100644
index 80025a7..0000000
--- a/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/text/Symbols.java
+++ /dev/null
@@ -1,57 +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 Eclipse Public License v1.0
- * which accompanies this 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.text;
-
-// taken from package org.eclipse.jdt.ui.text;
-
-/**
- * Symbols for the heuristic java scanner.
- * 
- * @since 3.0
- */
-interface Symbols {
-	int TokenEOF = -1;
-	int TokenLBRACE = 1;
-	int TokenRBRACE = 2;
-	int TokenLBRACKET = 3;
-	int TokenRBRACKET = 4;
-	int TokenLPAREN = 5;
-	int TokenRPAREN = 6;
-	int TokenSEMICOLON = 7;
-	int TokenOTHER = 8;
-	int TokenCOLON = 9;
-	int TokenQUESTIONMARK = 10;
-	int TokenCOMMA = 11;
-	int TokenEQUAL = 12;
-	int TokenLESSTHAN = 13;
-	int TokenGREATERTHAN = 14;
-	int TokenIF = 109;
-	int TokenDO = 1010;
-	int TokenFOR = 1011;
-	int TokenTRY = 1012;
-	int TokenCASE = 1013;
-	int TokenELSE = 1014;
-	int TokenBREAK = 1015;
-	int TokenCATCH = 1016;
-	int TokenWHILE = 1017;
-	int TokenRETURN = 1018;
-	int TokenSTATIC = 1019;
-	int TokenSWITCH = 1020;
-	int TokenFINALLY = 1021;
-	int TokenSYNCHRONIZED = 1022;
-	int TokenGOTO = 1023;
-	int TokenDEFAULT = 1024;
-	int TokenNEW = 1025;
-	int TokenCLASS = 1026;
-	int TokenINTERFACE = 1027;
-	int TokenENUM = 1028;
-	int TokenIDENT = 2000;
-}
diff --git a/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/views/contentoutline/HTMLContentOutlineConfiguration.java b/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/views/contentoutline/HTMLContentOutlineConfiguration.java
deleted file mode 100644
index 11891a2..0000000
--- a/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/views/contentoutline/HTMLContentOutlineConfiguration.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.internal.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.html.ui.internal.contentoutline.HTMLNodeActionManager;
-import org.eclipse.wst.xml.ui.internal.contentoutline.XMLNodeActionManager;
-import org.eclipse.wst.xml.ui.internal.views.contentoutline.XMLContentOutlineConfiguration;
-
-public class HTMLContentOutlineConfiguration extends XMLContentOutlineConfiguration {
-
-	/**
-	 * @param editor
-	 */
-	public HTMLContentOutlineConfiguration() {
-		super();
-	}
-
-	protected XMLNodeActionManager createNodeActionManager(TreeViewer treeViewer) {
-		return new HTMLNodeActionManager(getEditor().getModel(), treeViewer);
-	}
-	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/internal/wizard/NewHTMLTemplatesWizardPage.java b/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/wizard/NewHTMLTemplatesWizardPage.java
deleted file mode 100644
index 24c3232..0000000
--- a/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/wizard/NewHTMLTemplatesWizardPage.java
+++ /dev/null
@@ -1,471 +0,0 @@
-package org.eclipse.wst.html.ui.internal.wizard;
-
-import org.eclipse.jface.dialogs.Dialog;
-import org.eclipse.jface.preference.PreferenceDialog;
-import org.eclipse.jface.text.Document;
-import org.eclipse.jface.text.IDocument;
-import org.eclipse.jface.text.source.SourceViewer;
-import org.eclipse.jface.text.source.SourceViewerConfiguration;
-import org.eclipse.jface.text.templates.DocumentTemplateContext;
-import org.eclipse.jface.text.templates.Template;
-import org.eclipse.jface.text.templates.TemplateBuffer;
-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.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.LabelProvider;
-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.Viewer;
-import org.eclipse.jface.viewers.ViewerSorter;
-import org.eclipse.jface.wizard.WizardPage;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.events.ControlAdapter;
-import org.eclipse.swt.events.ControlEvent;
-import org.eclipse.swt.events.SelectionAdapter;
-import org.eclipse.swt.events.SelectionEvent;
-import org.eclipse.swt.graphics.Image;
-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.Button;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Control;
-import org.eclipse.swt.widgets.Label;
-import org.eclipse.swt.widgets.Link;
-import org.eclipse.swt.widgets.Table;
-import org.eclipse.swt.widgets.TableColumn;
-import org.eclipse.ui.dialogs.PreferencesUtil;
-import org.eclipse.wst.html.ui.internal.HTMLUIMessages;
-import org.eclipse.wst.html.ui.internal.HTMLUIPlugin;
-import org.eclipse.wst.html.ui.internal.Logger;
-import org.eclipse.wst.html.ui.internal.preferences.HTMLUIPreferenceNames;
-import org.eclipse.wst.html.ui.internal.templates.TemplateContextTypeIdsHTML;
-
-/**
- * Templates page in new file wizard. Allows users to select a new file
- * template to be applied in new file.
- * 
- */
-public class NewHTMLTemplatesWizardPage extends WizardPage {
-
-	/**
-	 * Content provider for templates
-	 */
-	private class TemplateContentProvider implements IStructuredContentProvider {
-		/** The template store. */
-		private TemplateStore fStore;
-
-		/*
-		 * @see IContentProvider#dispose()
-		 */
-		public void dispose() {
-			fStore = null;
-		}
-
-		/*
-		 * @see IStructuredContentProvider#getElements(Object)
-		 */
-		public Object[] getElements(Object input) {
-			return fStore.getTemplates(TemplateContextTypeIdsHTML.NEW);
-		}
-
-		/*
-		 * @see IContentProvider#inputChanged(Viewer, Object, Object)
-		 */
-		public void inputChanged(Viewer viewer, Object oldInput, Object newInput) {
-			fStore = (TemplateStore) newInput;
-		}
-	}
-
-	/**
-	 * Label provider for templates.
-	 */
-	private class TemplateLabelProvider extends LabelProvider implements ITableLabelProvider {
-
-		/*
-		 * @see org.eclipse.jface.viewers.ITableLabelProvider#getColumnImage(java.lang.Object,
-		 *      int)
-		 */
-		public Image getColumnImage(Object element, int columnIndex) {
-			return null;
-		}
-
-		/*
-		 * @see org.eclipse.jface.viewers.ITableLabelProvider#getColumnText(java.lang.Object,
-		 *      int)
-		 */
-		public String getColumnText(Object element, int columnIndex) {
-			Template template = (Template) element;
-
-			switch (columnIndex) {
-				case 0 :
-					return template.getName();
-				case 1 :
-					return template.getDescription();
-				default :
-					return ""; //$NON-NLS-1$
-			}
-		}
-	}
-
-	/** Last selected template name */
-	private String fLastSelectedTemplateName;
-	/** The viewer displays the pattern of selected template. */
-	private SourceViewer fPatternViewer;
-	/** The table presenting the templates. */
-	private TableViewer fTableViewer;
-	/** Template store used by this wizard page */
-	private TemplateStore fTemplateStore;
-	/** Checkbox for using templates. */
-	private Button fUseTemplateButton;
-
-	public NewHTMLTemplatesWizardPage() {
-		super("NewHTMLTemplatesWizardPage", HTMLUIMessages.NewHTMLTemplatesWizardPage_0, null); //$NON-NLS-1$
-		setDescription(HTMLUIMessages.NewHTMLTemplatesWizardPage_1);
-	}
-
-	/**
-	 * Correctly resizes the table so no phantom columns appear
-	 * 
-	 * @param parent
-	 *            the parent control
-	 * @param buttons
-	 *            the buttons
-	 * @param table
-	 *            the table
-	 * @param column1
-	 *            the first column
-	 * @param column2
-	 *            the second column
-	 * @param column3
-	 *            the third column
-	 */
-	private void configureTableResizing(final Composite parent, final Table table, final TableColumn column1, final TableColumn column2) {
-		parent.addControlListener(new ControlAdapter() {
-			public void controlResized(ControlEvent e) {
-				Rectangle area = parent.getClientArea();
-				Point preferredSize = table.computeSize(SWT.DEFAULT, SWT.DEFAULT);
-				int width = area.width - 2 * table.getBorderWidth();
-				if (preferredSize.y > area.height) {
-					// Subtract the scrollbar width from the total column
-					// width
-					// if a vertical scrollbar will be required
-					Point vBarSize = table.getVerticalBar().getSize();
-					width -= vBarSize.x;
-				}
-
-				Point oldSize = table.getSize();
-				if (oldSize.x > width) {
-					// table is getting smaller so make the columns
-					// smaller first and then resize the table to
-					// match the client area width
-					column1.setWidth(width / 2);
-					column2.setWidth(width / 2);
-					table.setSize(width, area.height);
-				}
-				else {
-					// table is getting bigger so make the table
-					// bigger first and then make the columns wider
-					// to match the client area width
-					table.setSize(width, area.height);
-					column1.setWidth(width / 2);
-					column2.setWidth(width / 2);
-				}
-			}
-		});
-	}
-
-	public void createControl(Composite ancestor) {
-		Composite parent = new Composite(ancestor, SWT.NONE);
-		GridLayout layout = new GridLayout();
-		layout.numColumns = 2;
-		parent.setLayout(layout);
-
-		// create checkbox for user to use HTML Template
-		fUseTemplateButton = new Button(parent, SWT.CHECK);
-		fUseTemplateButton.setText(HTMLUIMessages.NewHTMLTemplatesWizardPage_4);
-		GridData data = new GridData(SWT.FILL, SWT.FILL, true, false, 2, 1);
-		fUseTemplateButton.setLayoutData(data);
-		fUseTemplateButton.addSelectionListener(new SelectionAdapter() {
-			public void widgetSelected(SelectionEvent e) {
-				enableTemplates();
-			}
-		});
-
-		// create composite for Templates table
-		Composite innerParent = new Composite(parent, SWT.NONE);
-		GridLayout innerLayout = new GridLayout();
-		innerLayout.numColumns = 2;
-		innerLayout.marginHeight = 0;
-		innerLayout.marginWidth = 0;
-		innerParent.setLayout(innerLayout);
-		GridData gd = new GridData(SWT.FILL, SWT.FILL, true, true, 2, 1);
-		innerParent.setLayoutData(gd);
-
-		// Create linked text to just to templates preference page
-		Link link = new Link(innerParent, SWT.NONE);
-		link.setText(HTMLUIMessages.NewHTMLTemplatesWizardPage_6);
-		data = new GridData(SWT.FILL, SWT.FILL, true, false, 2, 1);
-		link.setLayoutData(data);
-		link.addSelectionListener(new SelectionAdapter() {
-			public void widgetSelected(SelectionEvent e) {
-				linkClicked();
-			}
-		});
-
-		// create table that displays templates
-		Table table = new Table(innerParent, SWT.BORDER | SWT.FULL_SELECTION);
-
-		data = new GridData(GridData.FILL_BOTH);
-		data.widthHint = convertWidthInCharsToPixels(2);
-		data.heightHint = convertHeightInCharsToPixels(10);
-		data.horizontalSpan = 2;
-		table.setLayoutData(data);
-		table.setHeaderVisible(true);
-		table.setLinesVisible(true);
-		TableLayout tableLayout = new TableLayout();
-		table.setLayout(tableLayout);
-
-		TableColumn column1 = new TableColumn(table, SWT.NONE);
-		column1.setText(HTMLUIMessages.NewHTMLTemplatesWizardPage_2);
-
-		TableColumn column2 = new TableColumn(table, SWT.NONE);
-		column2.setText(HTMLUIMessages.NewHTMLTemplatesWizardPage_3);
-
-		fTableViewer = new TableViewer(table);
-		fTableViewer.setLabelProvider(new TemplateLabelProvider());
-		fTableViewer.setContentProvider(new TemplateContentProvider());
-
-		fTableViewer.setSorter(new ViewerSorter() {
-			public int compare(Viewer viewer, Object object1, Object object2) {
-				if ((object1 instanceof Template) && (object2 instanceof Template)) {
-					Template left = (Template) object1;
-					Template right = (Template) object2;
-					int result = left.getName().compareToIgnoreCase(right.getName());
-					if (result != 0)
-						return result;
-					return left.getDescription().compareToIgnoreCase(right.getDescription());
-				}
-				return super.compare(viewer, object1, object2);
-			}
-
-			public boolean isSorterProperty(Object element, String property) {
-				return true;
-			}
-		});
-
-		fTableViewer.addSelectionChangedListener(new ISelectionChangedListener() {
-			public void selectionChanged(SelectionChangedEvent e) {
-				updateViewerInput();
-			}
-		});
-
-		// create viewer that displays currently selected template's contents
-		fPatternViewer = doCreateViewer(parent);
-
-		fTemplateStore = HTMLUIPlugin.getDefault().getTemplateStore();
-		fTableViewer.setInput(fTemplateStore);
-
-		configureTableResizing(innerParent, table, column1, column2);
-		loadLastSavedPreferences();
-
-		Dialog.applyDialogFont(parent);
-		setControl(parent);
-	}
-
-	/**
-	 * Creates, configures and returns a source viewer to present the template
-	 * pattern on the preference page. Clients may override to provide a
-	 * custom source viewer featuring e.g. syntax coloring.
-	 * 
-	 * @param parent
-	 *            the parent control
-	 * @return a configured source viewer
-	 */
-	private SourceViewer createViewer(Composite parent) {
-		SourceViewer viewer = new SourceViewer(parent, null, null, false, SWT.BORDER | SWT.V_SCROLL | SWT.H_SCROLL);
-		SourceViewerConfiguration configuration = new SourceViewerConfiguration();
-		viewer.configure(configuration);
-		IDocument document = new Document();
-		viewer.setDocument(document);
-		return viewer;
-	}
-
-	private SourceViewer doCreateViewer(Composite parent) {
-		Label label = new Label(parent, SWT.NONE);
-		label.setText(HTMLUIMessages.NewHTMLTemplatesWizardPage_5);
-		GridData data = new GridData();
-		data.horizontalSpan = 2;
-		label.setLayoutData(data);
-
-		SourceViewer viewer = createViewer(parent);
-		viewer.setEditable(false);
-
-		Control control = viewer.getControl();
-		data = new GridData(GridData.FILL_BOTH);
-		data.horizontalSpan = 2;
-		data.heightHint = convertHeightInCharsToPixels(5);
-		control.setLayoutData(data);
-
-		return viewer;
-	}
-
-	/**
-	 * Enable/disable controls in page based on fUseTemplateButton's current
-	 * state.
-	 */
-	void enableTemplates() {
-		boolean enabled = fUseTemplateButton.getSelection();
-
-		if (!enabled) {
-			// save last selected template
-			Template template = getSelectedTemplate();
-			if (template != null)
-				fLastSelectedTemplateName = template.getName();
-			else
-				fLastSelectedTemplateName = ""; //$NON-NLS-1$
-
-			fTableViewer.setSelection(null);
-		}
-		else {
-			setSelectedTemplate(fLastSelectedTemplateName);
-		}
-
-		fTableViewer.getControl().setEnabled(enabled);
-		fPatternViewer.getControl().setEnabled(enabled);
-	}
-
-	/**
-	 * Return the template preference page id
-	 * 
-	 * @return
-	 */
-	private String getPreferencePageId() {
-		return "org.eclipse.wst.html.ui.preferences.templates"; //$NON-NLS-1$
-	}
-
-	/**
-	 * Get the currently selected template.
-	 * 
-	 * @return
-	 */
-	private Template getSelectedTemplate() {
-		Template template = null;
-		IStructuredSelection selection = (IStructuredSelection) fTableViewer.getSelection();
-
-		if (selection.size() == 1) {
-			template = (Template) selection.getFirstElement();
-		}
-		return template;
-	}
-
-	/**
-	 * Returns template string to insert.
-	 * 
-	 * @return String to insert or null if none is to be inserted
-	 */
-	String getTemplateString() {
-		String templateString = null;
-
-		Template template = getSelectedTemplate();
-		if (template != null) {
-			TemplateContextType contextType = HTMLUIPlugin.getDefault().getTemplateContextRegistry().getContextType(TemplateContextTypeIdsHTML.NEW);
-			IDocument document = new Document();
-			TemplateContext context = new DocumentTemplateContext(contextType, document, 0, 0);
-			try {
-				TemplateBuffer buffer = context.evaluate(template);
-				templateString = buffer.getString();
-			}
-			catch (Exception e) {
-				Logger.log(Logger.WARNING_DEBUG, "Could not create template for new html", e); //$NON-NLS-1$
-			}
-		}
-
-		return templateString;
-	}
-
-	void linkClicked() {
-		String pageId = getPreferencePageId();
-		PreferenceDialog dialog = PreferencesUtil.createPreferenceDialogOn(getShell(), pageId, new String[]{pageId}, null);
-		dialog.open();
-		fTableViewer.refresh();
-	}
-
-	/**
-	 * Load the last template name used in New HTML File wizard.
-	 */
-	private void loadLastSavedPreferences() {
-		String templateName = HTMLUIPlugin.getDefault().getPreferenceStore().getString(HTMLUIPreferenceNames.NEW_FILE_TEMPLATE_NAME);
-		if (templateName == null || templateName.length() == 0) {
-			fLastSelectedTemplateName = ""; //$NON-NLS-1$
-			fUseTemplateButton.setSelection(false);
-		}
-		else {
-			fLastSelectedTemplateName = templateName;
-			fUseTemplateButton.setSelection(true);
-		}
-		enableTemplates();
-	}
-
-	/**
-	 * Save template name used for next call to New HTML File wizard.
-	 */
-	void saveLastSavedPreferences() {
-		String templateName = ""; //$NON-NLS-1$
-
-		Template template = getSelectedTemplate();
-		if (template != null) {
-			templateName = template.getName();
-		}
-
-		HTMLUIPlugin.getDefault().getPreferenceStore().setValue(HTMLUIPreferenceNames.NEW_FILE_TEMPLATE_NAME, templateName);
-		HTMLUIPlugin.getDefault().savePluginPreferences();
-	}
-
-	/**
-	 * Select a template in the table viewer given the template name. If
-	 * template name cannot be found or templateName is null, just select
-	 * first item in table. If no items in table select nothing.
-	 * 
-	 * @param templateName
-	 */
-	private void setSelectedTemplate(String templateName) {
-		Object template = null;
-
-		if (templateName != null && templateName.length() > 0) {
-			// pick the last used template
-			template = fTemplateStore.findTemplate(templateName, TemplateContextTypeIdsHTML.NEW);
-		}
-
-		// no record of last used template so just pick first element
-		if (template == null) {
-			// just pick first element
-			template = fTableViewer.getElementAt(0);
-		}
-
-		if (template != null) {
-			IStructuredSelection selection = new StructuredSelection(template);
-			fTableViewer.setSelection(selection, true);
-		}
-	}
-
-	/**
-	 * Updates the pattern viewer.
-	 */
-	void updateViewerInput() {
-		Template template = getSelectedTemplate();
-		if (template != null) {
-			fPatternViewer.getDocument().set(template.getPattern());
-		}
-		else {
-			fPatternViewer.getDocument().set(""); //$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 1292873..0000000
--- a/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/wizard/NewHTMLWizard.java
+++ /dev/null
@@ -1,145 +0,0 @@
-package org.eclipse.wst.html.ui.internal.wizard;
-
-import java.io.ByteArrayInputStream;
-import java.io.ByteArrayOutputStream;
-import java.io.OutputStreamWriter;
-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.core.runtime.Platform;
-import org.eclipse.core.runtime.Preferences;
-import org.eclipse.core.runtime.content.IContentType;
-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.osgi.util.NLS;
-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.core.internal.HTMLCorePlugin;
-import org.eclipse.wst.html.core.internal.provisional.contenttype.ContentTypeIdForHTML;
-import org.eclipse.wst.html.ui.internal.HTMLUIMessages;
-import org.eclipse.wst.html.ui.internal.HTMLUIPlugin;
-import org.eclipse.wst.html.ui.internal.Logger;
-import org.eclipse.wst.sse.core.internal.encoding.CommonEncodingPreferenceNames;
-
-public class NewHTMLWizard extends Wizard implements INewWizard {
-	static String PAGE_IMAGE = "/icons/full/wizban/newhfile_wiz.gif"; //$NON-NLS-1$
-	private WizardNewFileCreationPage fNewFilePage;
-	private NewHTMLTemplatesWizardPage fNewFileTemplatesPage;
-	private IStructuredSelection fSelection;
-	private List fValidExtensions = null;
-
-	/**
-	 * Get list of valid extensions for JSP Content type
-	 * 
-	 * @return
-	 */
-	List getValidExtensions() {
-		if (fValidExtensions == null) {
-			IContentType type = Platform.getContentTypeManager().getContentType(ContentTypeIdForHTML.ContentTypeID_HTML);
-			fValidExtensions = new ArrayList(Arrays.asList(type.getFileSpecs(IContentType.FILE_EXTENSION_SPEC)));
-		}
-		return fValidExtensions;
-	}
-
-	public void addPages() {
-		fNewFilePage = new WizardNewFileCreationPage("HTMLWizardNewFileCreationPage", new StructuredSelection(IDE.computeSelectedResources(fSelection))) { //$NON-NLS-1$
-			protected boolean validatePage() {
-				IPath handlePath = new Path(getFileName());
-				String extension = handlePath.getFileExtension();
-				if (extension == null || !getValidExtensions().contains(extension)) {
-					setErrorMessage(NLS.bind(HTMLUIMessages._ERROR_FILENAME_MUST_END_HTML, getValidExtensions().toString()));
-					return false;
-				}
-				setErrorMessage(null);
-				return super.validatePage();
-			}
-		};
-		fNewFilePage.setTitle(HTMLUIMessages._UI_WIZARD_NEW_HEADING);
-		fNewFilePage.setDescription(HTMLUIMessages._UI_WIZARD_NEW_DESCRIPTION);
-
-		addPage(fNewFilePage);
-		
-		fNewFileTemplatesPage = new NewHTMLTemplatesWizardPage();
-		addPage(fNewFileTemplatesPage);
-	}
-
-	public void init(IWorkbench aWorkbench, IStructuredSelection aSelection) {
-		fSelection = aSelection;
-		setWindowTitle(HTMLUIMessages._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() {
-		// save user options for next use
-		fNewFileTemplatesPage.saveLastSavedPreferences();
-
-		// create a new empty file
-		IFile file = fNewFilePage.createNewFile();
-
-		// put template contents into file
-		String templateString = fNewFileTemplatesPage.getTemplateString();
-		if (templateString != null) {
-			// determine the encoding for the new file
-			Preferences preference = HTMLCorePlugin.getDefault().getPluginPreferences();
-			String charSet = preference.getString(CommonEncodingPreferenceNames.OUTPUT_CODESET);
-
-			try {
-				ByteArrayOutputStream outputStream = new ByteArrayOutputStream();
-				OutputStreamWriter outputStreamWriter = null;
-				if (charSet == null || charSet.trim().equals("")) { //$NON-NLS-1$
-					// just use default encoding
-					outputStreamWriter = new OutputStreamWriter(outputStream);
-				} else {
-					outputStreamWriter = new OutputStreamWriter(outputStream, charSet);
-				}
-				outputStreamWriter.write(templateString);
-				outputStreamWriter.flush();
-				outputStreamWriter.close();
-				ByteArrayInputStream inputStream = new ByteArrayInputStream(outputStream.toByteArray());
-				file.setContents(inputStream, true, false, null);
-				inputStream.close();
-			}
-			catch (Exception e) {
-				Logger.log(Logger.WARNING_DEBUG, "Could not create contents for new HTML file", e); //$NON-NLS-1$
-			}
-		}
-
-		// open the file in editor
-		openEditor(file);
-		return true;
-	}
-}
\ 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 5165806..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=New HTML File (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=New HTML File (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=NEW XHTML File (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=New XHTML File (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/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/.settings/org.eclipse.jdt.core.prefs b/development/org.eclipse.wst.sse.unittests/.settings/org.eclipse.jdt.core.prefs
deleted file mode 100644
index c1373fb..0000000
--- a/development/org.eclipse.wst.sse.unittests/.settings/org.eclipse.jdt.core.prefs
+++ /dev/null
@@ -1,58 +0,0 @@
-#Mon May 30 19:10:44 EDT 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.annotationSuperInterface=warning
-org.eclipse.jdt.core.compiler.problem.autoboxing=ignore
-org.eclipse.jdt.core.compiler.problem.deprecation=warning
-org.eclipse.jdt.core.compiler.problem.deprecationInDeprecatedCode=disabled
-org.eclipse.jdt.core.compiler.problem.deprecationWhenOverridingDeprecatedMethod=enabled
-org.eclipse.jdt.core.compiler.problem.discouragedReference=warning
-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=error
-org.eclipse.jdt.core.compiler.problem.hiddenCatchBlock=warning
-org.eclipse.jdt.core.compiler.problem.incompatibleNonInheritedInterfaceMethod=warning
-org.eclipse.jdt.core.compiler.problem.incompleteEnumSwitch=ignore
-org.eclipse.jdt.core.compiler.problem.indirectStaticAccess=warning
-org.eclipse.jdt.core.compiler.problem.localVariableHiding=warning
-org.eclipse.jdt.core.compiler.problem.methodWithConstructorName=error
-org.eclipse.jdt.core.compiler.problem.missingDeprecatedAnnotation=ignore
-org.eclipse.jdt.core.compiler.problem.missingOverrideAnnotation=ignore
-org.eclipse.jdt.core.compiler.problem.missingSerialVersion=warning
-org.eclipse.jdt.core.compiler.problem.noEffectAssignment=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.suppressWarnings=enabled
-org.eclipse.jdt.core.compiler.problem.syntheticAccessEmulation=warning
-org.eclipse.jdt.core.compiler.problem.typeParameterHiding=warning
-org.eclipse.jdt.core.compiler.problem.uncheckedTypeOperation=warning
-org.eclipse.jdt.core.compiler.problem.undocumentedEmptyBlock=warning
-org.eclipse.jdt.core.compiler.problem.unhandledWarningToken=warning
-org.eclipse.jdt.core.compiler.problem.unnecessaryElse=warning
-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=warning
-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=warning
-org.eclipse.jdt.core.compiler.problem.varargsArgumentNeedCast=warning
-org.eclipse.jdt.core.incompatibleJDKLevel=ignore
-org.eclipse.jdt.core.incompleteClasspath=error
diff --git a/development/org.eclipse.wst.sse.unittests/.settings/org.eclipse.pde.prefs b/development/org.eclipse.wst.sse.unittests/.settings/org.eclipse.pde.prefs
deleted file mode 100644
index 498dec4..0000000
--- a/development/org.eclipse.wst.sse.unittests/.settings/org.eclipse.pde.prefs
+++ /dev/null
@@ -1,12 +0,0 @@
-#Fri May 27 23:41:23 EDT 2005
-compilers.p.illegal-att-value=0
-compilers.p.no-required-att=0
-compilers.p.unknown-attribute=0
-compilers.p.unknown-class=0
-compilers.p.unknown-element=0
-compilers.p.unknown-resource=0
-compilers.p.unresolved-ex-points=0
-compilers.p.unresolved-import=0
-compilers.p.unused-element-or-attribute=0
-compilers.use-project=true
-eclipse.preferences.version=1
diff --git a/development/org.eclipse.wst.sse.unittests/META-INF/MANIFEST.MF b/development/org.eclipse.wst.sse.unittests/META-INF/MANIFEST.MF
deleted file mode 100644
index f570e6e..0000000
--- a/development/org.eclipse.wst.sse.unittests/META-INF/MANIFEST.MF
+++ /dev/null
@@ -1,32 +0,0 @@
-Manifest-Version: 1.0
-Bundle-ManifestVersion: 2
-Bundle-Name: Unittests
-Bundle-SymbolicName: org.eclipse.wst.sse.unittests
-Bundle-Version: 1.0.0
-Bundle-ClassPath: ssejunit.jar
-Bundle-Vendor: Eclipse.org
-Bundle-Localization: plugin
-Export-Package: org.eclipse.wst.sse.unittests
-Require-Bundle: org.junit,
- org.eclipse.core.resources,
- org.eclipse.core.runtime,
- org.eclipse.jst.jsp.core.tests,
- org.eclipse.jst.jsp.tests.encoding,
- org.eclipse.jst.jsp.ui.tests,
- org.eclipse.jst.jsp.ui.tests.performance,
- org.eclipse.wst.css.core.tests,
- org.eclipse.wst.css.tests.encoding,
- org.eclipse.wst.css.ui.tests.performance,
- org.eclipse.wst.dtd.ui.tests,
- org.eclipse.wst.html.core.tests,
- org.eclipse.wst.html.tests.encoding,
- org.eclipse.wst.html.ui.tests,
- org.eclipse.wst.html.ui.tests.performance,
- org.eclipse.wst.sse.core.tests,
- org.eclipse.wst.sse.ui.tests,
- org.eclipse.wst.sse.ui.tests.performance,
- org.eclipse.wst.xml.core.tests,
- org.eclipse.wst.xml.tests.encoding,
- org.eclipse.wst.xml.ui.tests,
- org.eclipse.wst.xml.ui.tests.performance,
- org.eclipse.wst.xml.validation.tests
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 f555b66..0000000
--- a/development/org.eclipse.wst.sse.unittests/plugin.xml
+++ /dev/null
@@ -1,5 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<?eclipse version="3.0"?>
-<plugin>
-    
-</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 e47c699..0000000
--- a/development/org.eclipse.wst.sse.unittests/src/org/eclipse/wst/sse/unittests/MasterListTestSuite.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.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.dtd.ui.tests.DTDUITestSuite;
-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(DTDUITestSuite.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
-	}
-
-}