This commit was manufactured by cvs2svn to create tag 'v20051102_1925'.
diff --git a/bundles/org.eclipse.wst.css.core/.classpath b/bundles/org.eclipse.wst.css.core/.classpath
deleted file mode 100644
index cb01053..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.jdt.launching.JRE_CONTAINER"/>
-	<classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
-	<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 2e30db3..0000000
--- a/bundles/org.eclipse.wst.css.core/.cvsignore
+++ /dev/null
@@ -1,7 +0,0 @@
-bin
-temp.folder
-cssmodel.jar
-build.xml
-dev.properties
-@dot
-src.zip
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 490f726..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; exceptions="org.eclipse.wst.css.core.internal.contenttype"
diff --git a/bundles/org.eclipse.wst.css.core/about.html b/bundles/org.eclipse.wst.css.core/about.html
deleted file mode 100644
index 6f6b96c..0000000
--- a/bundles/org.eclipse.wst.css.core/about.html
+++ /dev/null
@@ -1,22 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN">
-<html>
-<head>
-<title>About</title>
-<meta http-equiv=Content-Type content="text/html; charset=ISO-8859-1">
-</head>
-<body lang="EN-US">
-<h2>About This Content</h2>
- 
-<p>February 24, 2005</p>	
-<h3>License</h3>
-
-<p>The Eclipse Foundation makes available all content in this plug-in (&quot;Content&quot;).  Unless otherwise indicated below, the Content is provided to you under the terms and conditions of the
-Eclipse Public License Version 1.0 (&quot;EPL&quot;).  A copy of the EPL is available at <a href="http://www.eclipse.org/legal/epl-v10.html">http://www.eclipse.org/legal/epl-v10.html</a>.
-For purposes of the EPL, &quot;Program&quot; will mean the Content.</p>
-
-<p>If you did not receive this Content directly from the Eclipse Foundation, the Content is being redistributed by another party (&quot;Redistributor&quot;) and different terms and conditions may
-apply to your use of any object code in the Content.  Check the Redistributor's license that was provided with the Content.  If no such license exists, contact the Redistributor.  Unless otherwise
-indicated below, the terms and conditions of the EPL still apply to any source code in the Content.</p>
-
-</body>
-</html>
\ No newline at end of file
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 411f804..0000000
--- a/bundles/org.eclipse.wst.css.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,\
-               cssprofile/,\
-               .options,\
-               plugin.properties,\
-               META-INF/,\
-               .,\
-               about.html
-bin.excludes = bin/**,\
-               @dot/**,\
-               temp.folder/**
-src.includes = 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 15e9920..0000000
--- a/bundles/org.eclipse.wst.css.core/plugin.xml
+++ /dev/null
@@ -1,85 +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 point="org.eclipse.wst.sse.core.taskscanner">
-		<scanner
-			id="org.eclipse.wst.css.core.internal.tasks.CSSFileTaskScanner"
-			class="org.eclipse.wst.css.core.internal.tasks.CSSFileTaskScanner"
-			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 9593893..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
- * 
- * @plannedfor 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/ByteReader.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/contenttype/ByteReader.java
deleted file mode 100644
index 506cc1f..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/contenttype/ByteReader.java
+++ /dev/null
@@ -1,109 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2001, 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.css.core.internal.contenttype;
-
-import java.io.IOException;
-import java.io.InputStream;
-import java.io.Reader;
-
-import org.eclipse.wst.sse.core.internal.encoding.CodedIO;
-
-/**
- * This is an "adapter" class, simply to get in input stream to act like a
- * reader. We could not use InputStreamReader directly because its internal
- * buffers are not controllable, and it sometimes pulls too much out of input
- * stream (even when it wasn't needed for our purposes).
- * 
- * The use of this class is highly specialized and by not means meant to be
- * general purpose. Its use is restricted to those cases where the input
- * stream can be regarded as ascii just long enough to determine what the real
- * encoding should be.
- */
-
-public class ByteReader extends Reader {
-
-	
-	public static final int DEFAULT_BUFFER_SIZE = CodedIO.MAX_BUF_SIZE;
-
-	protected byte[] fBuffer;
-
-	protected InputStream fInputStream;
-
-	protected ByteReader() {
-		super();
-	}
-
-	public ByteReader(InputStream inputStream) {
-		this(inputStream, DEFAULT_BUFFER_SIZE);
-		if (!inputStream.markSupported()) {
-			throw new IllegalArgumentException("ByteReader is required to have a resettable stream"); //$NON-NLS-1$
-		}
-	}
-
-	public ByteReader(InputStream inputStream, int size) {
-		this.fInputStream = inputStream;
-		if (!inputStream.markSupported()) {
-			throw new IllegalArgumentException("ByteReader is required to have a resettable stream"); //$NON-NLS-1$
-		}
-		this.fBuffer = new byte[size];
-
-	}
-
-	public void close() throws IOException {
-		this.fInputStream.close();
-	}
-
-	public void mark(int readAheadLimit) {
-		this.fInputStream.mark(readAheadLimit);
-	}
-
-	public boolean markSupported() {
-		return true;
-	}
-
-	public int read() throws IOException {
-		int b0 = this.fInputStream.read();
-		return (b0 & 0x00FF);
-	}
-
-	public int read(char ch[], int offset, int length) throws IOException {
-		if (length > this.fBuffer.length) {
-			length = this.fBuffer.length;
-		}
-
-		int count = this.fInputStream.read(this.fBuffer, 0, length);
-
-		for (int i = 0; i < count; i++) {
-			int b0 = this.fBuffer[i];
-			// the 0x00FF is to "lose" the negative bits filled in the byte to
-			// int conversion
-			// (and which would be there if cast directly from byte to char).
-			char c0 = (char) (b0 & 0x00FF);
-			ch[offset + i] = c0;
-		}
-		return count;
-	}
-
-	public boolean ready() throws IOException {
-		return this.fInputStream.available() > 0;
-	}
-
-	public void reset() throws IOException {
-		this.fInputStream.reset();
-	}
-
-	public long skip(long n) throws IOException {
-		return this.fInputStream.skip(n);
-	}
-
-}
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 b6b6e68..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/contenttype/CSSResourceEncodingDetector.java
+++ /dev/null
@@ -1,368 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, 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.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 ea0655b..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/contenttype/ContentDescriberForCSS.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.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;
-
-		if (description == null) {
-			result = computeValidity(contents);
-		}
-		else {
-			calculateSupportedOptions(contents, description);
-			result = computeValidity(contents);
-		}
-		return result;
-	}
-
-	public int describe(Reader contents, IContentDescription description) throws IOException {
-		int result = IContentDescriber.INDETERMINATE;
-
-		if (description == null) {
-			result = computeValidity(contents);
-		}
-		else {
-			calculateSupportedOptions(contents, description);
-			result = computeValidity(contents);
-		}
-		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 int computeValidity(InputStream inputStream) {
-		// currently no specific check for validilty
-		// based on contents.
-		return IContentDescriber.INDETERMINATE;
-	}
-
-	private int computeValidity(Reader reader) {
-		// currently no specific check for validilty
-		// based on contents.
-		return IContentDescriber.INDETERMINATE;
-	}
-
-	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 = ((CSSResourceEncodingDetector) 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 c130c40..0000000
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/document/CSSModelImpl.java
+++ /dev/null
@@ -1,624 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2001, 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, 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 != null) {
-			if (newStructuredDocument.getLength() > 0) {
-				newModel(new NewDocumentEvent(newStructuredDocument, this));
-			}
-			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) {