diff --git a/docs/org.eclipse.wst.xsl.sdk.documentation/build.xml b/docs/org.eclipse.wst.xsl.sdk.documentation/build.xml
index 110a427..5be6701 100644
--- a/docs/org.eclipse.wst.xsl.sdk.documentation/build.xml
+++ b/docs/org.eclipse.wst.xsl.sdk.documentation/build.xml
@@ -22,14 +22,14 @@
 
   	  <javadoc destdir="doc" package="true" docletpath="${workspace}/lib/jeldoclet.jar">
   	  	 <fileset dir="${workspaceloc}">
-	  	 	<include name="org.eclipse.wst.xsl.core/src/org/eclipse/wst/xsl/core/*.java"/>
-	  	 	<include name="org.eclipse.wst.xsl.core/src/org/eclipse/wst/xsl/core/resolver/*.java"/>
-  	  	 	<include name="org.eclipse.wst.xsl.jaxp.debug/src-debugger/org/eclipse/wst/xsl/jaxp/debug/debugger/*.java"/>
-  	  	 	<include name="org.eclipse.wst.xsl.jaxp.debug/src-invoker/org/eclipse/wst/xsl/jaxp/debug/invoker/*.java"/>
-  	  	 	<include name="org.eclipse.wst.xsl.xalan/src-debugger/org/eclipse/wst/xsl/xalan/debugger/*.java"/>
-  	  	 	<include name="org.eclipse.wst.xml.xpath.core/src/org/eclipse/wst/xml/xpath/core/*.java"/>
-  	  	 	<include name="org.eclipse.wst.xml.xpath.core/src/org/eclipse/wst/xml/xpath/core/util/*.java"/>
-  	  	 	<include name="org.eclipse.wst.xml.xpath.ui/src-xpath/org/eclipse/wst/xml/xpath/ui/*.java"/>
+  	  	 	<include name="org.eclipse.wst.xsl.core/src/**/*.java"/>
+  	  	 	<include name="org.eclipse.wst.xsl.core/src_sse/**/*.java"/>
+  	  	 	<include name="org.eclipse.wst.xsl.ui/src/**/*.java"/>
+  	  	 	<include name="org.eclipse.wst.xsl.jaxp.debug/src-debugger/**/*.java"/>
+  	  	 	<include name="org.eclipse.wst.xsl.jaxp.debug/src-invoker/**/*.java"/>
+  	  	 	<include name="org.eclipse.wst.xsl.xalan/src-debugger/**/*.java"/>
+  	  	 	<include name="org.eclipse.wst.xml.xpath.core/src/**/*.java"/>
+  	  	 	<include name="org.eclipse.wst.xml.xpath.ui/src-xpath/**/*.java"/>
   	  	 </fileset>
   	     <doclet name="com.jeldoclet.JELDoclet"/>
   	  </javadoc>
@@ -37,7 +37,6 @@
      <xslt basedir="." style="doc/jeltohtml.xsl" in="doc/jel.xml" out="doc/html/deleteme.html">
   		<factory name="org.apache.xalan.processor.TransformerFactoryImpl">
   			<attribute name="http://xml.apache.org/xalan/features/optimize" value="true"/>
-  			
   		</factory>
      </xslt>
     	
diff --git a/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xml.xpath.core.XPathCorePlugin.html b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xml.xpath.core.XPathCorePlugin.html
index 48c3218..e4b81ed 100644
--- a/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xml.xpath.core.XPathCorePlugin.html
+++ b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xml.xpath.core.XPathCorePlugin.html
@@ -4,9 +4,9 @@
                &nbsp;&nbsp;&nbsp;&nbsp;
                </td></tr></table><br><table width="100%" border="1"><tr bgcolor="#CCCCFF"><td width="100%"><h2>Constructor Summary</h2></td></tr><tr><td><code><strong><a href="#con_XPathCorePlugin">XPathCorePlugin</a></strong>()</code></td></tr></table><br><table width="100%" border="1"><tr cols="2" bgcolor="#CCCCFF"><td colspan="2" width="100%"><h2>Method Summary</h2></td></tr><tr valign="top"><td width="20%" align="right"><code>public static org.eclipse.wst.xml.xpath.core.XPathCorePlugin</code></td><td width="" align="left"><code><a href="#method_getDefault">getDefault</a>()</code><br>
                &nbsp;&nbsp;&nbsp;&nbsp;
-               Returns the shared instance</td></tr><tr valign="top"><td width="20%" align="right"><code>public void</code></td><td width="" align="left"><code><a href="#method_start">start</a>(org.osgi.framework.BundleContext context)</code><br>
+               Returns the shared instance</td></tr><tr valign="top"><td width="20%" align="right"><code>public void</code></td><td width="" align="left"><code><a href="#method_start">start</a>(BundleContext context)</code><br>
                &nbsp;&nbsp;&nbsp;&nbsp;
-               </td></tr><tr valign="top"><td width="20%" align="right"><code>public void</code></td><td width="" align="left"><code><a href="#method_stop">stop</a>(org.osgi.framework.BundleContext context)</code><br>
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public void</code></td><td width="" align="left"><code><a href="#method_stop">stop</a>(BundleContext context)</code><br>
                &nbsp;&nbsp;&nbsp;&nbsp;
                </td></tr></table><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
                   Field Detail
@@ -14,4 +14,4 @@
                   Constructor Detail
                </h2></td></tr></table><h2><a name="con_XPathCorePlugin">XPathCorePlugin</a></h2><p><code>public <strong>XPathCorePlugin</strong>()</code></p><p>The constructor</p><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
                   Methods Detail
-               </h2></td></tr></table><h2><a name="method_getDefault">getDefault</a></h2><p><code>public org.eclipse.wst.xml.xpath.core.XPathCorePlugin <strong>getDefault</strong>()</code></p><p>Returns the shared instance</p><h3>Returns</h3><p><code>org.eclipse.wst.xml.xpath.core.XPathCorePlugin</code> - the shared instance</p><hr><h2><a name="method_start">start</a></h2><p><code>public void <strong>start</strong>(org.osgi.framework.BundleContext context)</code></p><p></p><h3>Parameters</h3><p><code>context</code></p><h3>Throws:</h3><p><code>java.lang.Exception</code></p><hr><h2><a name="method_stop">stop</a></h2><p><code>public void <strong>stop</strong>(org.osgi.framework.BundleContext context)</code></p><p></p><h3>Parameters</h3><p><code>context</code></p><h3>Throws:</h3><p><code>java.lang.Exception</code></p><hr></body></html>
\ No newline at end of file
+               </h2></td></tr></table><h2><a name="method_getDefault">getDefault</a></h2><p><code>public org.eclipse.wst.xml.xpath.core.XPathCorePlugin <strong>getDefault</strong>()</code></p><p>Returns the shared instance</p><h3>Returns</h3><p><code>org.eclipse.wst.xml.xpath.core.XPathCorePlugin</code> - the shared instance</p><hr><h2><a name="method_start">start</a></h2><p><code>public void <strong>start</strong>(BundleContext context)</code></p><p></p><h3>Parameters</h3><p><code>context</code></p><h3>Throws:</h3><p><code>java.lang.Exception</code></p><hr><h2><a name="method_stop">stop</a></h2><p><code>public void <strong>stop</strong>(BundleContext context)</code></p><p></p><h3>Parameters</h3><p><code>context</code></p><h3>Throws:</h3><p><code>java.lang.Exception</code></p><hr></body></html>
\ No newline at end of file
diff --git a/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xml.xpath.core.XPathProcessorPreferences.html b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xml.xpath.core.XPathProcessorPreferences.html
new file mode 100644
index 0000000..c1f479b
--- /dev/null
+++ b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xml.xpath.core.XPathProcessorPreferences.html
@@ -0,0 +1,13 @@
+<html><body><p><font size="+1"><strong>Package org.eclipse.wst.xml.xpath.core</strong></font></p><hr><h2><font size="-1"><strong>org.eclipse.wst.xml.xpath.core</strong></font><br>
+               Class XPathProcessorPreferences</h2><br><hr><pre>public class <strong>XPathProcessorPreferences</strong>
+extends java.lang.Object</pre>XPath Processor preferences<p></p><p></p><hr><table width="100%" border="1"><tr cols="2" bgcolor="#CCCCFF"><td colspan="2" width="100%"><h2>Field Summary</h2></td></tr><tr valign="top"><td width="20%" align="right"><code>public static  java.lang.String</code></td><td width="80%" align="left"><code><a href="#field_XPATH_1_0_PROCESSOR">XPATH_1_0_PROCESSOR</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public static  java.lang.String</code></td><td width="80%" align="left"><code><a href="#field_XPATH_2_0_PROCESSOR">XPATH_2_0_PROCESSOR</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public static  java.lang.String</code></td><td width="80%" align="left"><code><a href="#field_XPATH_OTHER">XPATH_OTHER</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr></table><br><table width="100%" border="1"><tr bgcolor="#CCCCFF"><td width="100%"><h2>Constructor Summary</h2></td></tr><tr><td><code><strong><a href="#con_XPathProcessorPreferences">XPathProcessorPreferences</a></strong>()</code></td></tr></table><br><table width="100%" border="1"><tr cols="2" bgcolor="#CCCCFF"><td colspan="2" width="100%"><h2>Method Summary</h2></td></tr></table><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Field Detail
+               </h2></td></tr></table><h2><a name="field_XPATH_1_0_PROCESSOR">XPATH_1_0_PROCESSOR</a></h2><p><code>public static  java.lang.String <strong>XPATH_1_0_PROCESSOR</strong></code></p><hr><h2><a name="field_XPATH_2_0_PROCESSOR">XPATH_2_0_PROCESSOR</a></h2><p><code>public static  java.lang.String <strong>XPATH_2_0_PROCESSOR</strong></code></p><hr><h2><a name="field_XPATH_OTHER">XPATH_OTHER</a></h2><p><code>public static  java.lang.String <strong>XPATH_OTHER</strong></code></p><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Constructor Detail
+               </h2></td></tr></table><h2><a name="con_XPathProcessorPreferences">XPathProcessorPreferences</a></h2><p><code>public <strong>XPathProcessorPreferences</strong>()</code></p><p></p><hr></body></html>
\ No newline at end of file
diff --git a/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xml.xpath.core.internal.preferences.PreferenceInitializer.html b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xml.xpath.core.internal.preferences.PreferenceInitializer.html
new file mode 100644
index 0000000..3d1ed32
--- /dev/null
+++ b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xml.xpath.core.internal.preferences.PreferenceInitializer.html
@@ -0,0 +1,9 @@
+<html><body><p><font size="+1"><strong>Package org.eclipse.wst.xml.xpath.core.internal.preferences</strong></font></p><hr><h2><font size="-1"><strong>org.eclipse.wst.xml.xpath.core.internal.preferences</strong></font><br>
+               Class PreferenceInitializer</h2><br><hr><pre>public class <strong>PreferenceInitializer</strong>
+extends AbstractPreferenceInitializer</pre>Preferences initializer for XSL core preferences.<p></p><hr><table width="100%" border="1"><tr bgcolor="#CCCCFF"><td width="100%"><h2>Constructor Summary</h2></td></tr><tr><td><code><strong><a href="#con_PreferenceInitializer">PreferenceInitializer</a></strong>()</code></td></tr></table><br><table width="100%" border="1"><tr cols="2" bgcolor="#CCCCFF"><td colspan="2" width="100%"><h2>Method Summary</h2></td></tr><tr valign="top"><td width="20%" align="right"><code>public void</code></td><td width="" align="left"><code><a href="#method_initializeDefaultPreferences">initializeDefaultPreferences</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr></table><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Constructor Detail
+               </h2></td></tr></table><h2><a name="con_PreferenceInitializer">PreferenceInitializer</a></h2><p><code>public <strong>PreferenceInitializer</strong>()</code></p><p></p><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Methods Detail
+               </h2></td></tr></table><h2><a name="method_initializeDefaultPreferences">initializeDefaultPreferences</a></h2><p><code>public void <strong>initializeDefaultPreferences</strong>()</code></p><p></p><hr></body></html>
\ No newline at end of file
diff --git a/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xml.xpath.core.util.NodeListImpl.html b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xml.xpath.core.util.NodeListImpl.html
new file mode 100644
index 0000000..8e7d953
--- /dev/null
+++ b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xml.xpath.core.util.NodeListImpl.html
@@ -0,0 +1,15 @@
+<html><body><p><font size="+1"><strong>Package org.eclipse.wst.xml.xpath.core.util</strong></font></p><hr><h2><font size="-1"><strong>org.eclipse.wst.xml.xpath.core.util</strong></font><br>
+               Class NodeListImpl</h2><br><hr><pre>public class <strong>NodeListImpl</strong>
+extends java.lang.Object</pre><p></p><hr><table width="100%" border="1"><tr cols="2" bgcolor="#CCCCFF"><td colspan="2" width="100%"><h2>Field Summary</h2></td></tr><tr valign="top"><td width="20%" align="right"><code>package-private ResultSequence</code></td><td width="80%" align="left"><code><a href="#field_rs">rs</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr></table><br><table width="100%" border="1"><tr bgcolor="#CCCCFF"><td width="100%"><h2>Constructor Summary</h2></td></tr><tr><td><code><strong><a href="#con_NodeListImpl">NodeListImpl</a></strong>(ResultSequence result)</code></td></tr></table><br><table width="100%" border="1"><tr cols="2" bgcolor="#CCCCFF"><td colspan="2" width="100%"><h2>Method Summary</h2></td></tr><tr valign="top"><td width="20%" align="right"><code>public int</code></td><td width="" align="left"><code><a href="#method_getLength">getLength</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public org.w3c.dom.Node</code></td><td width="" align="left"><code><a href="#method_item">item</a>(int arg0)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr></table><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Field Detail
+               </h2></td></tr></table><h2><a name="field_rs">rs</a></h2><p><code>package-private ResultSequence <strong>rs</strong></code></p><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Constructor Detail
+               </h2></td></tr></table><h2><a name="con_NodeListImpl">NodeListImpl</a></h2><p><code>public <strong>NodeListImpl</strong>(ResultSequence result)</code></p><p></p><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Methods Detail
+               </h2></td></tr></table><h2><a name="method_getLength">getLength</a></h2><p><code>public int <strong>getLength</strong>()</code></p><p></p><h3>Returns</h3><p><code>int</code></p><hr><h2><a name="method_item">item</a></h2><p><code>public org.w3c.dom.Node <strong>item</strong>(int arg0)</code></p><p></p><h3>Parameters</h3><p><code>arg0</code></p><h3>Returns</h3><p><code>org.w3c.dom.Node</code></p><hr></body></html>
\ No newline at end of file
diff --git a/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xml.xpath.core.util.XPathCoreHelper.html b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xml.xpath.core.util.XPathCoreHelper.html
new file mode 100644
index 0000000..1f907cc
--- /dev/null
+++ b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xml.xpath.core.util.XPathCoreHelper.html
@@ -0,0 +1,9 @@
+<html><body><p><font size="+1"><strong>Package org.eclipse.wst.xml.xpath.core.util</strong></font></p><hr><h2><font size="-1"><strong>org.eclipse.wst.xml.xpath.core.util</strong></font><br>
+               Class XPathCoreHelper</h2><br><hr><pre>public class <strong>XPathCoreHelper</strong>
+extends java.lang.Object</pre><hr><table width="100%" border="1"><tr bgcolor="#CCCCFF"><td width="100%"><h2>Constructor Summary</h2></td></tr><tr><td><code><strong><a href="#con_XPathCoreHelper">XPathCoreHelper</a></strong>()</code></td></tr></table><br><table width="100%" border="1"><tr cols="2" bgcolor="#CCCCFF"><td colspan="2" width="100%"><h2>Method Summary</h2></td></tr><tr valign="top"><td width="20%" align="right"><code>public static Preferences</code></td><td width="" align="left"><code><a href="#method_getPreferences">getPreferences</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr></table><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Constructor Detail
+               </h2></td></tr></table><h2><a name="con_XPathCoreHelper">XPathCoreHelper</a></h2><p><code>public <strong>XPathCoreHelper</strong>()</code></p><p></p><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Methods Detail
+               </h2></td></tr></table><h2><a name="method_getPreferences">getPreferences</a></h2><p><code>public Preferences <strong>getPreferences</strong>()</code></p><p></p><h3>Returns</h3><p><code>Preferences</code></p><hr></body></html>
\ No newline at end of file
diff --git a/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xml.xpath.core.util.XSLTXPathHelper.html b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xml.xpath.core.util.XSLTXPathHelper.html
index 4a36d9d..e226ec4 100644
--- a/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xml.xpath.core.util.XSLTXPathHelper.html
+++ b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xml.xpath.core.util.XSLTXPathHelper.html
@@ -4,12 +4,12 @@
                &nbsp;&nbsp;&nbsp;&nbsp;
                Returns a XPath expression given a DOM Node.</td></tr><tr valign="top"><td width="20%" align="right"><code>public static void</code></td><td width="" align="left"><code><a href="#method_compile">compile</a>(java.lang.String expression)</code><br>
                &nbsp;&nbsp;&nbsp;&nbsp;
-               </td></tr><tr valign="top"><td width="20%" align="right"><code>public static XObject</code></td><td width="" align="left"><code><a href="#method_eval">eval</a>(org.w3c.dom.Node contextNode
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public static org.apache.xpath.objects.XObject</code></td><td width="" align="left"><code><a href="#method_eval">eval</a>(org.w3c.dom.Node contextNode
          ,
       java.lang.String str)</code><br>
                &nbsp;&nbsp;&nbsp;&nbsp;
                Evaluate XPath string to an XObject. Using this method, XPath namespace
- prefixes will be resolved from the namespaceNode.</td></tr><tr valign="top"><td width="20%" align="right"><code>public static XObject</code></td><td width="" align="left"><code><a href="#method_eval">eval</a>(org.w3c.dom.Node contextNode
+ prefixes will be resolved from the namespaceNode.</td></tr><tr valign="top"><td width="20%" align="right"><code>public static org.apache.xpath.objects.XObject</code></td><td width="" align="left"><code><a href="#method_eval">eval</a>(org.w3c.dom.Node contextNode
          ,
       java.lang.String str
          ,
@@ -19,17 +19,17 @@
  resolved from the namespaceNode. The implementation of this is a little
  slow, since it creates a number of objects each time it is called. This
  could be optimized to keep the same objects around, but then
- thread-safety issues would arise.</td></tr><tr valign="top"><td width="20%" align="right"><code>public static XObject</code></td><td width="" align="left"><code><a href="#method_eval">eval</a>(org.w3c.dom.Node contextNode
+ thread-safety issues would arise.</td></tr><tr valign="top"><td width="20%" align="right"><code>public static org.apache.xpath.objects.XObject</code></td><td width="" align="left"><code><a href="#method_eval">eval</a>(org.w3c.dom.Node contextNode
          ,
       java.lang.String str
          ,
-      PrefixResolver prefixResolver)</code><br>
+      org.apache.xml.utils.PrefixResolver prefixResolver)</code><br>
                &nbsp;&nbsp;&nbsp;&nbsp;
                Evaluate XPath string to an XObject. XPath namespace prefixes are
  resolved from the namespaceNode. The implementation of this is a little
  slow, since it creates a number of objects each time it is called. This
  could be optimized to keep the same objects around, but then
- thread-safety issues would arise.</td></tr><tr valign="top"><td width="20%" align="right"><code>protected static FunctionTable</code></td><td width="" align="left"><code><a href="#method_getFunctionTable">getFunctionTable</a>()</code><br>
+ thread-safety issues would arise.</td></tr><tr valign="top"><td width="20%" align="right"><code>protected static org.apache.xpath.compiler.FunctionTable</code></td><td width="" align="left"><code><a href="#method_getFunctionTable">getFunctionTable</a>()</code><br>
                &nbsp;&nbsp;&nbsp;&nbsp;
                </td></tr><tr valign="top"><td width="20%" align="right"><code>public static org.w3c.dom.traversal.NodeIterator</code></td><td width="" align="left"><code><a href="#method_selectNodeIterator">selectNodeIterator</a>(org.w3c.dom.Node contextNode
          ,
@@ -72,10 +72,10 @@
                   Constructor Detail
                </h2></td></tr></table><h2><a name="con_XSLTXPathHelper">XSLTXPathHelper</a></h2><p><code>public <strong>XSLTXPathHelper</strong>()</code></p><p></p><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
                   Methods Detail
-               </h2></td></tr></table><h2><a name="method_calculateXPathToNode">calculateXPathToNode</a></h2><p><code>public java.lang.String <strong>calculateXPathToNode</strong>(org.w3c.dom.Node node)</code></p><p>Returns a XPath expression given a DOM Node.</p><h3>Parameters</h3><p><code>node</code> - The DOM Node to create the XPath expression.</p><h3>Returns</h3><p><code>java.lang.String</code></p><hr><h2><a name="method_compile">compile</a></h2><p><code>public void <strong>compile</strong>(java.lang.String expression)</code></p><p></p><h3>Parameters</h3><p><code>expression</code></p><h3>Throws:</h3><p><code>javax.xml.xpath.XPathExpressionException</code></p><hr><h2><a name="method_eval">eval</a></h2><p><code>public XObject <strong>eval</strong>(org.w3c.dom.Node contextNode
+               </h2></td></tr></table><h2><a name="method_calculateXPathToNode">calculateXPathToNode</a></h2><p><code>public java.lang.String <strong>calculateXPathToNode</strong>(org.w3c.dom.Node node)</code></p><p>Returns a XPath expression given a DOM Node.</p><h3>Parameters</h3><p><code>node</code> - The DOM Node to create the XPath expression.</p><h3>Returns</h3><p><code>java.lang.String</code></p><hr><h2><a name="method_compile">compile</a></h2><p><code>public void <strong>compile</strong>(java.lang.String expression)</code></p><p></p><h3>Parameters</h3><p><code>expression</code></p><h3>Throws:</h3><p><code>javax.xml.xpath.XPathExpressionException</code></p><hr><h2><a name="method_eval">eval</a></h2><p><code>public org.apache.xpath.objects.XObject <strong>eval</strong>(org.w3c.dom.Node contextNode
          ,
       java.lang.String str)</code></p><p>Evaluate XPath string to an XObject. Using this method, XPath namespace
- prefixes will be resolved from the namespaceNode.</p><h3>Parameters</h3><p><code>contextNode</code> - The node to start searching from.</p><p><code>str</code> - A valid XPath string.</p><h3>Returns</h3><p><code>XObject</code> - An XObject, which can be used to obtain a string, number,          nodelist, etc, should never be null.</p><h3>Throws:</h3><p><code>javax.xml.transform.TransformerException</code></p><hr><h2><a name="method_eval">eval</a></h2><p><code>public XObject <strong>eval</strong>(org.w3c.dom.Node contextNode
+ prefixes will be resolved from the namespaceNode.</p><h3>Parameters</h3><p><code>contextNode</code> - The node to start searching from.</p><p><code>str</code> - A valid XPath string.</p><h3>Returns</h3><p><code>org.apache.xpath.objects.XObject</code> - An XObject, which can be used to obtain a string, number,          nodelist, etc, should never be null.</p><h3>Throws:</h3><p><code>javax.xml.transform.TransformerException</code></p><hr><h2><a name="method_eval">eval</a></h2><p><code>public org.apache.xpath.objects.XObject <strong>eval</strong>(org.w3c.dom.Node contextNode
          ,
       java.lang.String str
          ,
@@ -83,15 +83,15 @@
  resolved from the namespaceNode. The implementation of this is a little
  slow, since it creates a number of objects each time it is called. This
  could be optimized to keep the same objects around, but then
- thread-safety issues would arise.</p><h3>Parameters</h3><p><code>contextNode</code> - The node to start searching from.</p><p><code>str</code> - A valid XPath string.</p><p><code>namespaceNode</code> - The node from which prefixes in the XPath will be resolved to             namespaces.</p><h3>Returns</h3><p><code>XObject</code> - An XObject, which can be used to obtain a string, number,          nodelist, etc, should never be null.</p><h3>Throws:</h3><p><code>javax.xml.transform.TransformerException</code></p><hr><h2><a name="method_eval">eval</a></h2><p><code>public XObject <strong>eval</strong>(org.w3c.dom.Node contextNode
+ thread-safety issues would arise.</p><h3>Parameters</h3><p><code>contextNode</code> - The node to start searching from.</p><p><code>str</code> - A valid XPath string.</p><p><code>namespaceNode</code> - The node from which prefixes in the XPath will be resolved to             namespaces.</p><h3>Returns</h3><p><code>org.apache.xpath.objects.XObject</code> - An XObject, which can be used to obtain a string, number,          nodelist, etc, should never be null.</p><h3>Throws:</h3><p><code>javax.xml.transform.TransformerException</code></p><hr><h2><a name="method_eval">eval</a></h2><p><code>public org.apache.xpath.objects.XObject <strong>eval</strong>(org.w3c.dom.Node contextNode
          ,
       java.lang.String str
          ,
-      PrefixResolver prefixResolver)</code></p><p>Evaluate XPath string to an XObject. XPath namespace prefixes are
+      org.apache.xml.utils.PrefixResolver prefixResolver)</code></p><p>Evaluate XPath string to an XObject. XPath namespace prefixes are
  resolved from the namespaceNode. The implementation of this is a little
  slow, since it creates a number of objects each time it is called. This
  could be optimized to keep the same objects around, but then
- thread-safety issues would arise.</p><h3>Parameters</h3><p><code>contextNode</code> - The node to start searching from.</p><p><code>str</code> - A valid XPath string.</p><p><code>prefixResolver</code> - Will be called if the parser encounters namespace prefixes, to             resolve the prefixes to URLs.</p><h3>Returns</h3><p><code>XObject</code> - An XObject, which can be used to obtain a string, number,          nodelist, etc, should never be null.</p><h3>Throws:</h3><p><code>javax.xml.transform.TransformerException</code></p><hr><h2><a name="method_getFunctionTable">getFunctionTable</a></h2><p><code>protected FunctionTable <strong>getFunctionTable</strong>()</code></p><p></p><h3>Returns</h3><p><code>FunctionTable</code></p><hr><h2><a name="method_selectNodeIterator">selectNodeIterator</a></h2><p><code>public org.w3c.dom.traversal.NodeIterator <strong>selectNodeIterator</strong>(org.w3c.dom.Node contextNode
+ thread-safety issues would arise.</p><h3>Parameters</h3><p><code>contextNode</code> - The node to start searching from.</p><p><code>str</code> - A valid XPath string.</p><p><code>prefixResolver</code> - Will be called if the parser encounters namespace prefixes, to             resolve the prefixes to URLs.</p><h3>Returns</h3><p><code>org.apache.xpath.objects.XObject</code> - An XObject, which can be used to obtain a string, number,          nodelist, etc, should never be null.</p><h3>Throws:</h3><p><code>javax.xml.transform.TransformerException</code></p><hr><h2><a name="method_getFunctionTable">getFunctionTable</a></h2><p><code>protected org.apache.xpath.compiler.FunctionTable <strong>getFunctionTable</strong>()</code></p><p></p><h3>Returns</h3><p><code>org.apache.xpath.compiler.FunctionTable</code></p><hr><h2><a name="method_selectNodeIterator">selectNodeIterator</a></h2><p><code>public org.w3c.dom.traversal.NodeIterator <strong>selectNodeIterator</strong>(org.w3c.dom.Node contextNode
          ,
       java.lang.String str)</code></p><p>Use an XPath string to select a nodelist. XPath namespace prefixes are
  resolved from the contextNode.</p><h3>Parameters</h3><p><code>contextNode</code> - The node to start searching from.</p><p><code>str</code> - A valid XPath string.</p><h3>Returns</h3><p><code>org.w3c.dom.traversal.NodeIterator</code> - A NodeIterator, should never be null.</p><h3>Throws:</h3><p><code>javax.xml.transform.TransformerException</code></p><hr><h2><a name="method_selectNodeIterator">selectNodeIterator</a></h2><p><code>public org.w3c.dom.traversal.NodeIterator <strong>selectNodeIterator</strong>(org.w3c.dom.Node contextNode
diff --git a/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.core.XSLCore.html b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.core.XSLCore.html
index 2a83361..780c6e7 100644
--- a/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.core.XSLCore.html
+++ b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.core.XSLCore.html
@@ -2,12 +2,13 @@
                Class XSLCore</h2><br><hr><pre>public class <strong>XSLCore</strong>
 extends java.lang.Object</pre>The interface to all aspects of the XSL core functionality.
  <p>
- This is responsible for building and maintaining the cache of built XSL models.
+ This is responsible for building and maintaining the cache of built XSL
+ models.
  </p><p></p><hr><table width="100%" border="1"><tr cols="2" bgcolor="#CCCCFF"><td colspan="2" width="100%"><h2>Field Summary</h2></td></tr><tr valign="top"><td width="20%" align="right"><code>public static  java.lang.String</code></td><td width="80%" align="left"><code><a href="#field_XSL_CONTENT_TYPE">XSL_CONTENT_TYPE</a></code><br>
                &nbsp;&nbsp;&nbsp;&nbsp;
                The XSL content type (= org.eclipse.wst.xml.core.xslsource)</td></tr><tr valign="top"><td width="20%" align="right"><code>public static  java.lang.String</code></td><td width="80%" align="left"><code><a href="#field_XSL_NAMESPACE_URI">XSL_NAMESPACE_URI</a></code><br>
                &nbsp;&nbsp;&nbsp;&nbsp;
-               The XSL namespace URI (= http://www.w3.org/1999/XSL/Transform)</td></tr></table><br><table width="100%" border="1"><tr cols="2" bgcolor="#CCCCFF"><td colspan="2" width="100%"><h2>Method Summary</h2></td></tr><tr valign="top"><td width="20%" align="right"><code>public StylesheetModel</code></td><td width="" align="left"><code><a href="#method_buildStylesheet">buildStylesheet</a>(IFile file)</code><br>
+               The XSL namespace URI (= http://www.w3.org/1999/XSL/Transform)</td></tr></table><br><table width="100%" border="1"><tr cols="2" bgcolor="#CCCCFF"><td colspan="2" width="100%"><h2>Method Summary</h2></td></tr><tr valign="top"><td width="20%" align="right"><code>public org.eclipse.wst.xsl.core.model.StylesheetModel</code></td><td width="" align="left"><code><a href="#method_buildStylesheet">buildStylesheet</a>(IFile file)</code><br>
                &nbsp;&nbsp;&nbsp;&nbsp;
                Completely rebuild the source file from its DOM</td></tr><tr valign="top"><td width="20%" align="right"><code>public void</code></td><td width="" align="left"><code><a href="#method_clean">clean</a>(IProject project
          ,
@@ -17,22 +18,25 @@
          ,
       int offset)</code><br>
                &nbsp;&nbsp;&nbsp;&nbsp;
-               Returns an Attr node for the current Node if one exits at the specified offset.</td></tr><tr valign="top"><td width="20%" align="right"><code>public static org.w3c.dom.Node</code></td><td width="" align="left"><code><a href="#method_getCurrentNode">getCurrentNode</a>(IDocument document
+               Returns an Attr node for the current Node if one exits at the specified
+ offset.</td></tr><tr valign="top"><td width="20%" align="right"><code>public static org.w3c.dom.Node</code></td><td width="" align="left"><code><a href="#method_getCurrentNode">getCurrentNode</a>(IDocument document
          ,
       int offset)</code><br>
                &nbsp;&nbsp;&nbsp;&nbsp;
                Returns the current Node at the specified offset.</td></tr><tr valign="top"><td width="20%" align="right"><code>public static org.eclipse.wst.xsl.core.XSLCore</code></td><td width="" align="left"><code><a href="#method_getInstance">getInstance</a>()</code><br>
                &nbsp;&nbsp;&nbsp;&nbsp;
-               Get the singleton <code>XSLCore</code> instance.</td></tr><tr valign="top"><td width="20%" align="right"><code>public StylesheetModel</code></td><td width="" align="left"><code><a href="#method_getStylesheet">getStylesheet</a>(IFile file)</code><br>
+               Get the singleton <code>XSLCore</code> instance.</td></tr><tr valign="top"><td width="20%" align="right"><code>public org.eclipse.wst.xsl.core.model.StylesheetModel</code></td><td width="" align="left"><code><a href="#method_getStylesheet">getStylesheet</a>(IFile file)</code><br>
                &nbsp;&nbsp;&nbsp;&nbsp;
                Get the cached stylesheet, or build it if it has not yet been built.</td></tr><tr valign="top"><td width="20%" align="right"><code>public static boolean</code></td><td width="" align="left"><code><a href="#method_isXMLFile">isXMLFile</a>(IFile file)</code><br>
                &nbsp;&nbsp;&nbsp;&nbsp;
-               Determine whether the given file is an XML file by inspecting its content types.</td></tr><tr valign="top"><td width="20%" align="right"><code>public static boolean</code></td><td width="" align="left"><code><a href="#method_isXSLFile">isXSLFile</a>(IFile file)</code><br>
+               Determine whether the given file is an XML file by inspecting its content
+ types.</td></tr><tr valign="top"><td width="20%" align="right"><code>public static boolean</code></td><td width="" align="left"><code><a href="#method_isXSLFile">isXSLFile</a>(IFile file)</code><br>
                &nbsp;&nbsp;&nbsp;&nbsp;
-               Determine whether the given file is an XSL file by inspecting its content types.</td></tr><tr valign="top"><td width="20%" align="right"><code>public static boolean</code></td><td width="" align="left"><code><a href="#method_isXSLNamespace">isXSLNamespace</a>(org.w3c.dom.Node node)</code><br>
+               Determine whether the given file is an XSL file by inspecting its content
+ types.</td></tr><tr valign="top"><td width="20%" align="right"><code>public static boolean</code></td><td width="" align="left"><code><a href="#method_isXSLNamespace">isXSLNamespace</a>(org.w3c.dom.Node node)</code><br>
                &nbsp;&nbsp;&nbsp;&nbsp;
-               Takes a given <code>Node</code> and returns whether it 
- is part of the the XSLT Namespace.</td></tr><tr valign="top"><td width="20%" align="right"><code>public static IFile</code></td><td width="" align="left"><code><a href="#method_resolveFile">resolveFile</a>(IFile currentFile
+               Takes a given <code>Node</code> and returns whether it is part of the the
+ XSLT Namespace.</td></tr><tr valign="top"><td width="20%" align="right"><code>public static IFile</code></td><td width="" align="left"><code><a href="#method_resolveFile">resolveFile</a>(IFile currentFile
          ,
       java.lang.String uri)</code><br>
                &nbsp;&nbsp;&nbsp;&nbsp;
@@ -40,13 +44,16 @@
                   Field Detail
                </h2></td></tr></table><h2><a name="field_XSL_CONTENT_TYPE">XSL_CONTENT_TYPE</a></h2><p><code>public static  java.lang.String <strong>XSL_CONTENT_TYPE</strong></code></p><table><tr><td>The XSL content type (= org.eclipse.wst.xml.core.xslsource)</td></tr></table><hr><h2><a name="field_XSL_NAMESPACE_URI">XSL_NAMESPACE_URI</a></h2><p><code>public static  java.lang.String <strong>XSL_NAMESPACE_URI</strong></code></p><table><tr><td>The XSL namespace URI (= http://www.w3.org/1999/XSL/Transform)</td></tr></table><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
                   Methods Detail
-               </h2></td></tr></table><h2><a name="method_buildStylesheet">buildStylesheet</a></h2><p><code>public StylesheetModel <strong>buildStylesheet</strong>(IFile file)</code></p><p>Completely rebuild the source file from its DOM</p><h3>Parameters</h3><p><code>file</code></p><h3>Returns</h3><p><code>StylesheetModel</code> - the stylesheet model, or null if it could not be created.</p><hr><h2><a name="method_clean">clean</a></h2><p><code>public void <strong>clean</strong>(IProject project
+               </h2></td></tr></table><h2><a name="method_buildStylesheet">buildStylesheet</a></h2><p><code>public org.eclipse.wst.xsl.core.model.StylesheetModel <strong>buildStylesheet</strong>(IFile file)</code></p><p>Completely rebuild the source file from its DOM</p><h3>Parameters</h3><p><code>file</code></p><h3>Returns</h3><p><code>org.eclipse.wst.xsl.core.model.StylesheetModel</code> - the stylesheet model, or null if it could not be created.</p><hr><h2><a name="method_clean">clean</a></h2><p><code>public void <strong>clean</strong>(IProject project
          ,
       IProgressMonitor monitor)</code></p><p>Clean all of the stylesheets from the given project.</p><h3>Parameters</h3><p><code>project</code> - the project to be cleaned</p><p><code>monitor</code> - a progress monitor to track the clean progress</p><hr><h2><a name="method_getCurrentAttrNode">getCurrentAttrNode</a></h2><p><code>public org.w3c.dom.Attr <strong>getCurrentAttrNode</strong>(org.w3c.dom.Node node
          ,
-      int offset)</code></p><p>Returns an Attr node for the current Node if one exits at the specified offset.</p><h3>Parameters</h3><p><code>node</code></p><p><code>offset</code></p><h3>Returns</h3><p><code>org.w3c.dom.Attr</code> - A w3c.dom.Attr</p><hr><h2><a name="method_getCurrentNode">getCurrentNode</a></h2><p><code>public org.w3c.dom.Node <strong>getCurrentNode</strong>(IDocument document
+      int offset)</code></p><p>Returns an Attr node for the current Node if one exits at the specified
+ offset.</p><h3>Parameters</h3><p><code>node</code></p><p><code>offset</code></p><h3>Returns</h3><p><code>org.w3c.dom.Attr</code> - A w3c.dom.Attr</p><hr><h2><a name="method_getCurrentNode">getCurrentNode</a></h2><p><code>public org.w3c.dom.Node <strong>getCurrentNode</strong>(IDocument document
          ,
-      int offset)</code></p><p>Returns the current Node at the specified offset.</p><h3>Parameters</h3><p><code>document</code></p><p><code>offset</code></p><h3>Returns</h3><p><code>org.w3c.dom.Node</code> - an w3c.dom.Node</p><hr><h2><a name="method_getInstance">getInstance</a></h2><p><code>public org.eclipse.wst.xsl.core.XSLCore <strong>getInstance</strong>()</code></p><p>Get the singleton <code>XSLCore</code> instance.</p><h3>Returns</h3><p><code>org.eclipse.wst.xsl.core.XSLCore</code> - the <code>XSLCore</code> instance</p><hr><h2><a name="method_getStylesheet">getStylesheet</a></h2><p><code>public StylesheetModel <strong>getStylesheet</strong>(IFile file)</code></p><p>Get the cached stylesheet, or build it if it has not yet been built.</p><h3>Parameters</h3><p><code>file</code></p><h3>Returns</h3><p><code>StylesheetModel</code> - source file, or null if could not be built</p><hr><h2><a name="method_isXMLFile">isXMLFile</a></h2><p><code>public boolean <strong>isXMLFile</strong>(IFile file)</code></p><p>Determine whether the given file is an XML file by inspecting its content types.</p><h3>Parameters</h3><p><code>file</code> - the file to inspect</p><h3>Returns</h3><p><code>boolean</code> - true if this file is an XML file</p><hr><h2><a name="method_isXSLFile">isXSLFile</a></h2><p><code>public boolean <strong>isXSLFile</strong>(IFile file)</code></p><p>Determine whether the given file is an XSL file by inspecting its content types.</p><h3>Parameters</h3><p><code>file</code> - the file to inspect</p><h3>Returns</h3><p><code>boolean</code> - true if this file is an XSL file</p><hr><h2><a name="method_isXSLNamespace">isXSLNamespace</a></h2><p><code>public boolean <strong>isXSLNamespace</strong>(org.w3c.dom.Node node)</code></p><p>Takes a given <code>Node</code> and returns whether it 
- is part of the the XSLT Namespace.</p><h3>Parameters</h3><p><code>node</code> - The Node to be checked.</p><h3>Returns</h3><p><code>boolean</code> - True if part of the XSLT namespace, false otherwise.</p><hr><h2><a name="method_resolveFile">resolveFile</a></h2><p><code>public IFile <strong>resolveFile</strong>(IFile currentFile
+      int offset)</code></p><p>Returns the current Node at the specified offset.</p><h3>Parameters</h3><p><code>document</code></p><p><code>offset</code></p><h3>Returns</h3><p><code>org.w3c.dom.Node</code> - an w3c.dom.Node</p><hr><h2><a name="method_getInstance">getInstance</a></h2><p><code>public org.eclipse.wst.xsl.core.XSLCore <strong>getInstance</strong>()</code></p><p>Get the singleton <code>XSLCore</code> instance.</p><h3>Returns</h3><p><code>org.eclipse.wst.xsl.core.XSLCore</code> - the <code>XSLCore</code> instance</p><hr><h2><a name="method_getStylesheet">getStylesheet</a></h2><p><code>public org.eclipse.wst.xsl.core.model.StylesheetModel <strong>getStylesheet</strong>(IFile file)</code></p><p>Get the cached stylesheet, or build it if it has not yet been built.</p><h3>Parameters</h3><p><code>file</code></p><h3>Returns</h3><p><code>org.eclipse.wst.xsl.core.model.StylesheetModel</code> - source file, or null if could not be built</p><hr><h2><a name="method_isXMLFile">isXMLFile</a></h2><p><code>public boolean <strong>isXMLFile</strong>(IFile file)</code></p><p>Determine whether the given file is an XML file by inspecting its content
+ types.</p><h3>Parameters</h3><p><code>file</code> - the file to inspect</p><h3>Returns</h3><p><code>boolean</code> - true if this file is an XML file</p><hr><h2><a name="method_isXSLFile">isXSLFile</a></h2><p><code>public boolean <strong>isXSLFile</strong>(IFile file)</code></p><p>Determine whether the given file is an XSL file by inspecting its content
+ types.</p><h3>Parameters</h3><p><code>file</code> - the file to inspect</p><h3>Returns</h3><p><code>boolean</code> - true if this file is an XSL file</p><hr><h2><a name="method_isXSLNamespace">isXSLNamespace</a></h2><p><code>public boolean <strong>isXSLNamespace</strong>(org.w3c.dom.Node node)</code></p><p>Takes a given <code>Node</code> and returns whether it is part of the the
+ XSLT Namespace.</p><h3>Parameters</h3><p><code>node</code> - The Node to be checked.</p><h3>Returns</h3><p><code>boolean</code> - True if part of the XSLT namespace, false otherwise.</p><hr><h2><a name="method_resolveFile">resolveFile</a></h2><p><code>public IFile <strong>resolveFile</strong>(IFile currentFile
          ,
       java.lang.String uri)</code></p><p>Locates a file for the given current file and URI.</p><h3>Parameters</h3><p><code>currentFile</code> - the file to resolve relative to</p><p><code>uri</code> - the relative URI</p><h3>Returns</h3><p><code>IFile</code> - the file at the URI relative to this <code>currentFile</code></p><hr></body></html>
\ No newline at end of file
diff --git a/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.core.internal.Messages.html b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.core.internal.Messages.html
new file mode 100644
index 0000000..00478bc
--- /dev/null
+++ b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.core.internal.Messages.html
@@ -0,0 +1,71 @@
+<html><body><p><font size="+1"><strong>Package org.eclipse.wst.xsl.core.internal</strong></font></p><hr><h2><font size="-1"><strong>org.eclipse.wst.xsl.core.internal</strong></font><br>
+               Class Messages</h2><br><hr><pre>public class <strong>Messages</strong>
+extends NLS</pre><p></p><p></p><hr><table width="100%" border="1"><tr cols="2" bgcolor="#CCCCFF"><td colspan="2" width="100%"><h2>Field Summary</h2></td></tr><tr valign="top"><td width="20%" align="right"><code>public static  java.lang.String</code></td><td width="80%" align="left"><code><a href="#field_XIncludeTask_0">XIncludeTask_0</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               TODO: Add JavaDoc</td></tr><tr valign="top"><td width="20%" align="right"><code>public static  java.lang.String</code></td><td width="80%" align="left"><code><a href="#field_XIncludeTask_1">XIncludeTask_1</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               TODO: Add JavaDoc</td></tr><tr valign="top"><td width="20%" align="right"><code>public static  java.lang.String</code></td><td width="80%" align="left"><code><a href="#field_XIncludeTask_2">XIncludeTask_2</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               TODO: Add JavaDoc</td></tr><tr valign="top"><td width="20%" align="right"><code>public static  java.lang.String</code></td><td width="80%" align="left"><code><a href="#field_XIncludeTask_3">XIncludeTask_3</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               TODO: Add JavaDoc</td></tr><tr valign="top"><td width="20%" align="right"><code>public static  java.lang.String</code></td><td width="80%" align="left"><code><a href="#field_XIncludeTask_4">XIncludeTask_4</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               TODO: Add JavaDoc</td></tr><tr valign="top"><td width="20%" align="right"><code>public static  java.lang.String</code></td><td width="80%" align="left"><code><a href="#field_XIncludeTask_5">XIncludeTask_5</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               TODO: Add JavaDoc</td></tr><tr valign="top"><td width="20%" align="right"><code>public static  java.lang.String</code></td><td width="80%" align="left"><code><a href="#field_XIncludeTask_6">XIncludeTask_6</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               TODO: Add JavaDoc</td></tr><tr valign="top"><td width="20%" align="right"><code>public static  java.lang.String</code></td><td width="80%" align="left"><code><a href="#field_XIncludeTask_7">XIncludeTask_7</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               TODO: Add JavaDoc</td></tr><tr valign="top"><td width="20%" align="right"><code>public static  java.lang.String</code></td><td width="80%" align="left"><code><a href="#field_XIncludeTask_8">XIncludeTask_8</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               TODO: Add JavaDoc</td></tr><tr valign="top"><td width="20%" align="right"><code>public static  java.lang.String</code></td><td width="80%" align="left"><code><a href="#field_XIncludeTask_9">XIncludeTask_9</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               TODO: Add JavaDoc</td></tr><tr valign="top"><td width="20%" align="right"><code>public static  java.lang.String</code></td><td width="80%" align="left"><code><a href="#field_XSLCorePlugin_badInitializationData">XSLCorePlugin_badInitializationData</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               TODO: Add JavaDoc</td></tr><tr valign="top"><td width="20%" align="right"><code>public static  java.lang.String</code></td><td width="80%" align="left"><code><a href="#field_XSLCorePlugin_coreError">XSLCorePlugin_coreError</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               TODO: Add JavaDoc</td></tr><tr valign="top"><td width="20%" align="right"><code>public static  java.lang.String</code></td><td width="80%" align="left"><code><a href="#field_XSLCorePlugin_parserConfiguration">XSLCorePlugin_parserConfiguration</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               TODO: Add JavaDoc</td></tr><tr valign="top"><td width="20%" align="right"><code>public static  java.lang.String</code></td><td width="80%" align="left"><code><a href="#field_XSLValidator_1">XSLValidator_1</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public static  java.lang.String</code></td><td width="80%" align="left"><code><a href="#field_XSLValidator_10">XSLValidator_10</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               Stylesheet importing itself</td></tr><tr valign="top"><td width="20%" align="right"><code>public static  java.lang.String</code></td><td width="80%" align="left"><code><a href="#field_XSLValidator_11">XSLValidator_11</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               Template conflict (internal)</td></tr><tr valign="top"><td width="20%" align="right"><code>public static  java.lang.String</code></td><td width="80%" align="left"><code><a href="#field_XSLValidator_12">XSLValidator_12</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               Template conflict (included)</td></tr><tr valign="top"><td width="20%" align="right"><code>public static  java.lang.String</code></td><td width="80%" align="left"><code><a href="#field_XSLValidator_13">XSLValidator_13</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               Template conflict (external)</td></tr><tr valign="top"><td width="20%" align="right"><code>public static  java.lang.String</code></td><td width="80%" align="left"><code><a href="#field_XSLValidator_14">XSLValidator_14</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               Parameter missing name attribute</td></tr><tr valign="top"><td width="20%" align="right"><code>public static  java.lang.String</code></td><td width="80%" align="left"><code><a href="#field_XSLValidator_15">XSLValidator_15</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               Parameter with empty name attribute</td></tr><tr valign="top"><td width="20%" align="right"><code>public static  java.lang.String</code></td><td width="80%" align="left"><code><a href="#field_XSLValidator_16">XSLValidator_16</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               Duplicate parameter</td></tr><tr valign="top"><td width="20%" align="right"><code>public static  java.lang.String</code></td><td width="80%" align="left"><code><a href="#field_XSLValidator_18">XSLValidator_18</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               Unresolved named template</td></tr><tr valign="top"><td width="20%" align="right"><code>public static  java.lang.String</code></td><td width="80%" align="left"><code><a href="#field_XSLValidator_2">XSLValidator_2</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               Circular reference</td></tr><tr valign="top"><td width="20%" align="right"><code>public static  java.lang.String</code></td><td width="80%" align="left"><code><a href="#field_XSLValidator_20">XSLValidator_20</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               Parameter without default value</td></tr><tr valign="top"><td width="20%" align="right"><code>public static  java.lang.String</code></td><td width="80%" align="left"><code><a href="#field_XSLValidator_22">XSLValidator_22</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               Parameter does not exist</td></tr><tr valign="top"><td width="20%" align="right"><code>public static  java.lang.String</code></td><td width="80%" align="left"><code><a href="#field_XSLValidator_23">XSLValidator_23</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               href attribute is required</td></tr><tr valign="top"><td width="20%" align="right"><code>public static  java.lang.String</code></td><td width="80%" align="left"><code><a href="#field_XSLValidator_3">XSLValidator_3</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               Missing parameter</td></tr><tr valign="top"><td width="20%" align="right"><code>public static  java.lang.String</code></td><td width="80%" align="left"><code><a href="#field_XSLValidator_4">XSLValidator_4</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               Unresolved include</td></tr><tr valign="top"><td width="20%" align="right"><code>public static  java.lang.String</code></td><td width="80%" align="left"><code><a href="#field_XSLValidator_6">XSLValidator_6</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               Stylesheet includes itself</td></tr><tr valign="top"><td width="20%" align="right"><code>public static  java.lang.String</code></td><td width="80%" align="left"><code><a href="#field_XSLValidator_8">XSLValidator_8</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               Unresolved import</td></tr></table><br><table width="100%" border="1"><tr bgcolor="#CCCCFF"><td width="100%"><h2>Constructor Summary</h2></td></tr><tr><td><code><strong><a href="#con_Messages">Messages</a></strong>()</code></td></tr></table><br><table width="100%" border="1"><tr cols="2" bgcolor="#CCCCFF"><td colspan="2" width="100%"><h2>Method Summary</h2></td></tr><tr valign="top"><td width="20%" align="right"><code>public static void</code></td><td width="" align="left"><code><a href="#method_reloadMessages">reloadMessages</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               TODO: Add JavaDoc</td></tr></table><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Field Detail
+               </h2></td></tr></table><h2><a name="field_XIncludeTask_0">XIncludeTask_0</a></h2><p><code>public static  java.lang.String <strong>XIncludeTask_0</strong></code></p><table><tr><td>TODO: Add JavaDoc</td></tr></table><hr><h2><a name="field_XIncludeTask_1">XIncludeTask_1</a></h2><p><code>public static  java.lang.String <strong>XIncludeTask_1</strong></code></p><table><tr><td>TODO: Add JavaDoc</td></tr></table><hr><h2><a name="field_XIncludeTask_2">XIncludeTask_2</a></h2><p><code>public static  java.lang.String <strong>XIncludeTask_2</strong></code></p><table><tr><td>TODO: Add JavaDoc</td></tr></table><hr><h2><a name="field_XIncludeTask_3">XIncludeTask_3</a></h2><p><code>public static  java.lang.String <strong>XIncludeTask_3</strong></code></p><table><tr><td>TODO: Add JavaDoc</td></tr></table><hr><h2><a name="field_XIncludeTask_4">XIncludeTask_4</a></h2><p><code>public static  java.lang.String <strong>XIncludeTask_4</strong></code></p><table><tr><td>TODO: Add JavaDoc</td></tr></table><hr><h2><a name="field_XIncludeTask_5">XIncludeTask_5</a></h2><p><code>public static  java.lang.String <strong>XIncludeTask_5</strong></code></p><table><tr><td>TODO: Add JavaDoc</td></tr></table><hr><h2><a name="field_XIncludeTask_6">XIncludeTask_6</a></h2><p><code>public static  java.lang.String <strong>XIncludeTask_6</strong></code></p><table><tr><td>TODO: Add JavaDoc</td></tr></table><hr><h2><a name="field_XIncludeTask_7">XIncludeTask_7</a></h2><p><code>public static  java.lang.String <strong>XIncludeTask_7</strong></code></p><table><tr><td>TODO: Add JavaDoc</td></tr></table><hr><h2><a name="field_XIncludeTask_8">XIncludeTask_8</a></h2><p><code>public static  java.lang.String <strong>XIncludeTask_8</strong></code></p><table><tr><td>TODO: Add JavaDoc</td></tr></table><hr><h2><a name="field_XIncludeTask_9">XIncludeTask_9</a></h2><p><code>public static  java.lang.String <strong>XIncludeTask_9</strong></code></p><table><tr><td>TODO: Add JavaDoc</td></tr></table><hr><h2><a name="field_XSLCorePlugin_badInitializationData">XSLCorePlugin_badInitializationData</a></h2><p><code>public static  java.lang.String <strong>XSLCorePlugin_badInitializationData</strong></code></p><table><tr><td>TODO: Add JavaDoc</td></tr></table><hr><h2><a name="field_XSLCorePlugin_coreError">XSLCorePlugin_coreError</a></h2><p><code>public static  java.lang.String <strong>XSLCorePlugin_coreError</strong></code></p><table><tr><td>TODO: Add JavaDoc</td></tr></table><hr><h2><a name="field_XSLCorePlugin_parserConfiguration">XSLCorePlugin_parserConfiguration</a></h2><p><code>public static  java.lang.String <strong>XSLCorePlugin_parserConfiguration</strong></code></p><table><tr><td>TODO: Add JavaDoc</td></tr></table><hr><h2><a name="field_XSLValidator_1">XSLValidator_1</a></h2><p><code>public static  java.lang.String <strong>XSLValidator_1</strong></code></p><hr><h2><a name="field_XSLValidator_10">XSLValidator_10</a></h2><p><code>public static  java.lang.String <strong>XSLValidator_10</strong></code></p><table><tr><td>Stylesheet importing itself</td></tr></table><hr><h2><a name="field_XSLValidator_11">XSLValidator_11</a></h2><p><code>public static  java.lang.String <strong>XSLValidator_11</strong></code></p><table><tr><td>Template conflict (internal)</td></tr></table><hr><h2><a name="field_XSLValidator_12">XSLValidator_12</a></h2><p><code>public static  java.lang.String <strong>XSLValidator_12</strong></code></p><table><tr><td>Template conflict (included)</td></tr></table><hr><h2><a name="field_XSLValidator_13">XSLValidator_13</a></h2><p><code>public static  java.lang.String <strong>XSLValidator_13</strong></code></p><table><tr><td>Template conflict (external)</td></tr></table><hr><h2><a name="field_XSLValidator_14">XSLValidator_14</a></h2><p><code>public static  java.lang.String <strong>XSLValidator_14</strong></code></p><table><tr><td>Parameter missing name attribute</td></tr></table><hr><h2><a name="field_XSLValidator_15">XSLValidator_15</a></h2><p><code>public static  java.lang.String <strong>XSLValidator_15</strong></code></p><table><tr><td>Parameter with empty name attribute</td></tr></table><hr><h2><a name="field_XSLValidator_16">XSLValidator_16</a></h2><p><code>public static  java.lang.String <strong>XSLValidator_16</strong></code></p><table><tr><td>Duplicate parameter</td></tr></table><hr><h2><a name="field_XSLValidator_18">XSLValidator_18</a></h2><p><code>public static  java.lang.String <strong>XSLValidator_18</strong></code></p><table><tr><td>Unresolved named template</td></tr></table><hr><h2><a name="field_XSLValidator_2">XSLValidator_2</a></h2><p><code>public static  java.lang.String <strong>XSLValidator_2</strong></code></p><table><tr><td>Circular reference</td></tr></table><hr><h2><a name="field_XSLValidator_20">XSLValidator_20</a></h2><p><code>public static  java.lang.String <strong>XSLValidator_20</strong></code></p><table><tr><td>Parameter without default value</td></tr></table><hr><h2><a name="field_XSLValidator_22">XSLValidator_22</a></h2><p><code>public static  java.lang.String <strong>XSLValidator_22</strong></code></p><table><tr><td>Parameter does not exist</td></tr></table><hr><h2><a name="field_XSLValidator_23">XSLValidator_23</a></h2><p><code>public static  java.lang.String <strong>XSLValidator_23</strong></code></p><table><tr><td>href attribute is required</td></tr></table><hr><h2><a name="field_XSLValidator_3">XSLValidator_3</a></h2><p><code>public static  java.lang.String <strong>XSLValidator_3</strong></code></p><table><tr><td>Missing parameter</td></tr></table><hr><h2><a name="field_XSLValidator_4">XSLValidator_4</a></h2><p><code>public static  java.lang.String <strong>XSLValidator_4</strong></code></p><table><tr><td>Unresolved include</td></tr></table><hr><h2><a name="field_XSLValidator_6">XSLValidator_6</a></h2><p><code>public static  java.lang.String <strong>XSLValidator_6</strong></code></p><table><tr><td>Stylesheet includes itself</td></tr></table><hr><h2><a name="field_XSLValidator_8">XSLValidator_8</a></h2><p><code>public static  java.lang.String <strong>XSLValidator_8</strong></code></p><table><tr><td>Unresolved import</td></tr></table><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Constructor Detail
+               </h2></td></tr></table><h2><a name="con_Messages">Messages</a></h2><p><code>public <strong>Messages</strong>()</code></p><p></p><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Methods Detail
+               </h2></td></tr></table><h2><a name="method_reloadMessages">reloadMessages</a></h2><p><code>public void <strong>reloadMessages</strong>()</code></p><p>TODO: Add JavaDoc</p><hr></body></html>
\ No newline at end of file
diff --git a/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.core.internal.XSLCorePlugin.html b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.core.internal.XSLCorePlugin.html
new file mode 100644
index 0000000..36dbf7f
--- /dev/null
+++ b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.core.internal.XSLCorePlugin.html
@@ -0,0 +1,31 @@
+<html><body><p><font size="+1"><strong>Package org.eclipse.wst.xsl.core.internal</strong></font></p><hr><h2><font size="-1"><strong>org.eclipse.wst.xsl.core.internal</strong></font><br>
+               Class XSLCorePlugin</h2><br><hr><pre>public class <strong>XSLCorePlugin</strong>
+extends Plugin</pre>The activator class controls the plug-in life cycle<hr><table width="100%" border="1"><tr cols="2" bgcolor="#CCCCFF"><td colspan="2" width="100%"><h2>Field Summary</h2></td></tr><tr valign="top"><td width="20%" align="right"><code>public static  java.lang.String</code></td><td width="80%" align="left"><code><a href="#field_PLUGIN_ID">PLUGIN_ID</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               TODO: Add JavaDoc</td></tr><tr valign="top"><td width="20%" align="right"><code>public static  java.lang.String</code></td><td width="80%" align="left"><code><a href="#field_USE_PROJECT_SETTINGS">USE_PROJECT_SETTINGS</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr></table><br><table width="100%" border="1"><tr bgcolor="#CCCCFF"><td width="100%"><h2>Constructor Summary</h2></td></tr><tr><td><code><strong><a href="#con_XSLCorePlugin">XSLCorePlugin</a></strong>()</code></td></tr></table><br><table width="100%" border="1"><tr cols="2" bgcolor="#CCCCFF"><td colspan="2" width="100%"><h2>Method Summary</h2></td></tr><tr valign="top"><td width="20%" align="right"><code>public static org.eclipse.wst.xsl.core.internal.XSLCorePlugin</code></td><td width="" align="left"><code><a href="#method_getDefault">getDefault</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               Returns the shared instance</td></tr><tr valign="top"><td width="20%" align="right"><code>public javax.xml.parsers.SAXParserFactory</code></td><td width="" align="left"><code><a href="#method_getFactory">getFactory</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               Return the registered SAX parser factory or null if one
+ does not exist.	 * @return</td></tr><tr valign="top"><td width="20%" align="right"><code>public static void</code></td><td width="" align="left"><code><a href="#method_log">log</a>(IStatus status)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               Logs the specified status with this plug-in's log.</td></tr><tr valign="top"><td width="20%" align="right"><code>public static IStatus</code></td><td width="" align="left"><code><a href="#method_newErrorStatus">newErrorStatus</a>(java.lang.String message
+         ,
+      java.lang.Throwable exception)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               Returns a new error status for this plug-in with the given message</td></tr><tr valign="top"><td width="20%" align="right"><code>public void</code></td><td width="" align="left"><code><a href="#method_start">start</a>(BundleContext context)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public void</code></td><td width="" align="left"><code><a href="#method_stop">stop</a>(BundleContext context)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr></table><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Field Detail
+               </h2></td></tr></table><h2><a name="field_PLUGIN_ID">PLUGIN_ID</a></h2><p><code>public static  java.lang.String <strong>PLUGIN_ID</strong></code></p><table><tr><td>TODO: Add JavaDoc</td></tr></table><hr><h2><a name="field_USE_PROJECT_SETTINGS">USE_PROJECT_SETTINGS</a></h2><p><code>public static  java.lang.String <strong>USE_PROJECT_SETTINGS</strong></code></p><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Constructor Detail
+               </h2></td></tr></table><h2><a name="con_XSLCorePlugin">XSLCorePlugin</a></h2><p><code>public <strong>XSLCorePlugin</strong>()</code></p><p>The constructor</p><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Methods Detail
+               </h2></td></tr></table><h2><a name="method_getDefault">getDefault</a></h2><p><code>public org.eclipse.wst.xsl.core.internal.XSLCorePlugin <strong>getDefault</strong>()</code></p><p>Returns the shared instance</p><h3>Returns</h3><p><code>org.eclipse.wst.xsl.core.internal.XSLCorePlugin</code> - the shared instance</p><hr><h2><a name="method_getFactory">getFactory</a></h2><p><code>public javax.xml.parsers.SAXParserFactory <strong>getFactory</strong>()</code></p><p>Return the registered SAX parser factory or null if one
+ does not exist.	 * @return</p><h3>Returns</h3><p><code>javax.xml.parsers.SAXParserFactory</code> - returns a SAXParserFactory</p><hr><h2><a name="method_log">log</a></h2><p><code>public void <strong>log</strong>(IStatus status)</code></p><p>Logs the specified status with this plug-in's log.</p><h3>Parameters</h3><p><code>status</code> - status to log</p><hr><h2><a name="method_newErrorStatus">newErrorStatus</a></h2><p><code>public IStatus <strong>newErrorStatus</strong>(java.lang.String message
+         ,
+      java.lang.Throwable exception)</code></p><p>Returns a new error status for this plug-in with the given message</p><h3>Parameters</h3><p><code>message</code> - the message to be included in the status</p><p><code>exception</code> - the exception to be included in the status or <code>null</code> if none</p><h3>Returns</h3><p><code>IStatus</code> - a new error status</p><hr><h2><a name="method_start">start</a></h2><p><code>public void <strong>start</strong>(BundleContext context)</code></p><p></p><h3>Parameters</h3><p><code>context</code></p><h3>Throws:</h3><p><code>java.lang.Exception</code></p><hr><h2><a name="method_stop">stop</a></h2><p><code>public void <strong>stop</strong>(BundleContext context)</code></p><p></p><h3>Parameters</h3><p><code>context</code></p><h3>Throws:</h3><p><code>java.lang.Exception</code></p><hr></body></html>
\ No newline at end of file
diff --git a/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.core.internal.ant.XIncludeTask.html b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.core.internal.ant.XIncludeTask.html
new file mode 100644
index 0000000..3cc3db2
--- /dev/null
+++ b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.core.internal.ant.XIncludeTask.html
@@ -0,0 +1,19 @@
+<html><body><p><font size="+1"><strong>Package org.eclipse.wst.xsl.core.internal.ant</strong></font></p><hr><h2><font size="-1"><strong>org.eclipse.wst.xsl.core.internal.ant</strong></font><br>
+               Class XIncludeTask</h2><br><hr><pre>public class <strong>XIncludeTask</strong>
+extends org.apache.tools.ant.Task</pre>This class provides an XInclude ANT task definition.<p></p><hr><table width="100%" border="1"><tr bgcolor="#CCCCFF"><td width="100%"><h2>Constructor Summary</h2></td></tr><tr><td><code><strong><a href="#con_XIncludeTask">XIncludeTask</a></strong>()</code></td></tr></table><br><table width="100%" border="1"><tr cols="2" bgcolor="#CCCCFF"><td colspan="2" width="100%"><h2>Method Summary</h2></td></tr><tr valign="top"><td width="20%" align="right"><code>public void</code></td><td width="" align="left"><code><a href="#method_execute">execute</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public java.util.Collection</code></td><td width="" align="left"><code><a href="#method_listFiles">listFiles</a>(java.io.File directory
+         ,
+      boolean recurse)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               TODO: Add JavaDoc</td></tr><tr valign="top"><td width="20%" align="right"><code>public void</code></td><td width="" align="left"><code><a href="#method_setIn">setIn</a>(java.lang.String inFile)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               TODO: Add JavaDoc</td></tr><tr valign="top"><td width="20%" align="right"><code>public void</code></td><td width="" align="left"><code><a href="#method_setOut">setOut</a>(java.lang.String outFile)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               TODO: Add JavaDoc</td></tr></table><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Constructor Detail
+               </h2></td></tr></table><h2><a name="con_XIncludeTask">XIncludeTask</a></h2><p><code>public <strong>XIncludeTask</strong>()</code></p><p></p><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Methods Detail
+               </h2></td></tr></table><h2><a name="method_execute">execute</a></h2><p><code>public void <strong>execute</strong>()</code></p><p></p><hr><h2><a name="method_listFiles">listFiles</a></h2><p><code>public java.util.Collection <strong>listFiles</strong>(java.io.File directory
+         ,
+      boolean recurse)</code></p><p>TODO: Add JavaDoc</p><h3>Parameters</h3><p><code>directory</code></p><p><code>recurse</code></p><h3>Returns</h3><p><code>java.util.Collection</code></p><hr><h2><a name="method_setIn">setIn</a></h2><p><code>public void <strong>setIn</strong>(java.lang.String inFile)</code></p><p>TODO: Add JavaDoc</p><h3>Parameters</h3><p><code>inFile</code></p><hr><h2><a name="method_setOut">setOut</a></h2><p><code>public void <strong>setOut</strong>(java.lang.String outFile)</code></p><p>TODO: Add JavaDoc</p><h3>Parameters</h3><p><code>outFile</code></p><hr></body></html>
\ No newline at end of file
diff --git a/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.core.internal.encoding.XSLDocumentLoader.html b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.core.internal.encoding.XSLDocumentLoader.html
new file mode 100644
index 0000000..37240d7
--- /dev/null
+++ b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.core.internal.encoding.XSLDocumentLoader.html
@@ -0,0 +1,19 @@
+<html><body><p><font size="+1"><strong>Package org.eclipse.wst.xsl.core.internal.encoding</strong></font></p><hr><h2><font size="-1"><strong>org.eclipse.wst.xsl.core.internal.encoding</strong></font><br>
+               Class XSLDocumentLoader</h2><br><hr><pre>public class <strong>XSLDocumentLoader</strong>
+extends AbstractDocumentLoader</pre>This class reads an XSL file and creates an XML Structured Model.<hr><table width="100%" border="1"><tr bgcolor="#CCCCFF"><td width="100%"><h2>Constructor Summary</h2></td></tr><tr><td><code><strong><a href="#con_XSLDocumentLoader">XSLDocumentLoader</a></strong>()</code></td></tr></table><br><table width="100%" border="1"><tr cols="2" bgcolor="#CCCCFF"><td colspan="2" width="100%"><h2>Method Summary</h2></td></tr><tr valign="top"><td width="20%" align="right"><code>public IDocumentPartitioner</code></td><td width="" align="left"><code><a href="#method_getDefaultDocumentPartitioner">getDefaultDocumentPartitioner</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public IDocumentCharsetDetector</code></td><td width="" align="left"><code><a href="#method_getDocumentEncodingDetector">getDocumentEncodingDetector</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public RegionParser</code></td><td width="" align="left"><code><a href="#method_getParser">getParser</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>protected java.lang.String</code></td><td width="" align="left"><code><a href="#method_getSpecDefaultEncoding">getSpecDefaultEncoding</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>protected IEncodedDocument</code></td><td width="" align="left"><code><a href="#method_newEncodedDocument">newEncodedDocument</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public IDocumentLoader</code></td><td width="" align="left"><code><a href="#method_newInstance">newInstance</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr></table><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Constructor Detail
+               </h2></td></tr></table><h2><a name="con_XSLDocumentLoader">XSLDocumentLoader</a></h2><p><code>public <strong>XSLDocumentLoader</strong>()</code></p><p></p><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Methods Detail
+               </h2></td></tr></table><h2><a name="method_getDefaultDocumentPartitioner">getDefaultDocumentPartitioner</a></h2><p><code>public IDocumentPartitioner <strong>getDefaultDocumentPartitioner</strong>()</code></p><p></p><h3>Returns</h3><p><code>IDocumentPartitioner</code></p><hr><h2><a name="method_getDocumentEncodingDetector">getDocumentEncodingDetector</a></h2><p><code>public IDocumentCharsetDetector <strong>getDocumentEncodingDetector</strong>()</code></p><p></p><h3>Returns</h3><p><code>IDocumentCharsetDetector</code></p><hr><h2><a name="method_getParser">getParser</a></h2><p><code>public RegionParser <strong>getParser</strong>()</code></p><p></p><h3>Returns</h3><p><code>RegionParser</code></p><hr><h2><a name="method_getSpecDefaultEncoding">getSpecDefaultEncoding</a></h2><p><code>protected java.lang.String <strong>getSpecDefaultEncoding</strong>()</code></p><p></p><h3>Returns</h3><p><code>java.lang.String</code></p><hr><h2><a name="method_newEncodedDocument">newEncodedDocument</a></h2><p><code>protected IEncodedDocument <strong>newEncodedDocument</strong>()</code></p><p></p><h3>Returns</h3><p><code>IEncodedDocument</code></p><hr><h2><a name="method_newInstance">newInstance</a></h2><p><code>public IDocumentLoader <strong>newInstance</strong>()</code></p><p></p><h3>Returns</h3><p><code>IDocumentLoader</code></p><hr></body></html>
\ No newline at end of file
diff --git a/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.core.internal.model.StylesheetBuilder.html b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.core.internal.model.StylesheetBuilder.html
new file mode 100644
index 0000000..d6147ca
--- /dev/null
+++ b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.core.internal.model.StylesheetBuilder.html
@@ -0,0 +1,23 @@
+<html><body><p><font size="+1"><strong>Package org.eclipse.wst.xsl.core.internal.model</strong></font></p><hr><h2><font size="-1"><strong>org.eclipse.wst.xsl.core.internal.model</strong></font><br>
+               Class StylesheetBuilder</h2><br><hr><pre>public class <strong>StylesheetBuilder</strong>
+extends java.lang.Object</pre>A builder that creates and maintains a cache of <code>Stylesheet</code>'s.<p></p><hr><table width="100%" border="1"><tr cols="2" bgcolor="#CCCCFF"><td colspan="2" width="100%"><h2>Method Summary</h2></td></tr><tr valign="top"><td width="20%" align="right"><code>public static org.eclipse.wst.xsl.core.internal.model.StylesheetBuilder</code></td><td width="" align="left"><code><a href="#method_getInstance">getInstance</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               Get the singleton <code>StylesheetBuilder</code> instance.</td></tr><tr valign="top"><td width="20%" align="right"><code>public org.eclipse.wst.xsl.core.model.Stylesheet</code></td><td width="" align="left"><code><a href="#method_getStylesheet">getStylesheet</a>(IFile file
+         ,
+      boolean force)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               Get the <code>Stylesheet</code> associated with the given file. If either
+ the <code>Stylesheet</code> has not yet been created or
+ <code>force</code> is specified then the <code>Stylesheet</code> is
+ built.</td></tr><tr valign="top"><td width="20%" align="right"><code>public void</code></td><td width="" align="left"><code><a href="#method_release">release</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               Releases all the cached stylesheets.</td></tr><tr valign="top"><td width="20%" align="right"><code>public void</code></td><td width="" align="left"><code><a href="#method_release">release</a>(IFile file)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr></table><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Methods Detail
+               </h2></td></tr></table><h2><a name="method_getInstance">getInstance</a></h2><p><code>public org.eclipse.wst.xsl.core.internal.model.StylesheetBuilder <strong>getInstance</strong>()</code></p><p>Get the singleton <code>StylesheetBuilder</code> instance.</p><h3>Returns</h3><p><code>org.eclipse.wst.xsl.core.internal.model.StylesheetBuilder</code> - the <code>StylesheetBuilder</code> instance</p><hr><h2><a name="method_getStylesheet">getStylesheet</a></h2><p><code>public org.eclipse.wst.xsl.core.model.Stylesheet <strong>getStylesheet</strong>(IFile file
+         ,
+      boolean force)</code></p><p>Get the <code>Stylesheet</code> associated with the given file. If either
+ the <code>Stylesheet</code> has not yet been created or
+ <code>force</code> is specified then the <code>Stylesheet</code> is
+ built.</p><h3>Parameters</h3><p><code>file</code> - the XSL file</p><p><code>force</code> - <code>true</code> to force a parse of the file</p><h3>Returns</h3><p><code>org.eclipse.wst.xsl.core.model.Stylesheet</code> - the <code>Stylesheet</code></p><hr><h2><a name="method_release">release</a></h2><p><code>public void <strong>release</strong>()</code></p><p>Releases all the cached stylesheets.</p><hr><h2><a name="method_release">release</a></h2><p><code>public void <strong>release</strong>(IFile file)</code></p><p></p><h3>Parameters</h3><p><code>file</code></p><hr></body></html>
\ No newline at end of file
diff --git a/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.core.internal.model.StylesheetParser.html b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.core.internal.model.StylesheetParser.html
new file mode 100644
index 0000000..96aad5d
--- /dev/null
+++ b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.core.internal.model.StylesheetParser.html
@@ -0,0 +1,9 @@
+<html><body><p><font size="+1"><strong>Package org.eclipse.wst.xsl.core.internal.model</strong></font></p><hr><h2><font size="-1"><strong>org.eclipse.wst.xsl.core.internal.model</strong></font><br>
+               Class StylesheetParser</h2><br><hr><pre>public class <strong>StylesheetParser</strong>
+extends java.lang.Object</pre><hr><table width="100%" border="1"><tr bgcolor="#CCCCFF"><td width="100%"><h2>Constructor Summary</h2></td></tr><tr><td><code><strong><a href="#con_StylesheetParser">StylesheetParser</a></strong>(org.eclipse.wst.xsl.core.model.Stylesheet stylesheet)</code></td></tr></table><br><table width="100%" border="1"><tr cols="2" bgcolor="#CCCCFF"><td colspan="2" width="100%"><h2>Method Summary</h2></td></tr><tr valign="top"><td width="20%" align="right"><code>public void</code></td><td width="" align="left"><code><a href="#method_walkDocument">walkDocument</a>(IDOMDocument document)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr></table><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Constructor Detail
+               </h2></td></tr></table><h2><a name="con_StylesheetParser">StylesheetParser</a></h2><p><code>public <strong>StylesheetParser</strong>(org.eclipse.wst.xsl.core.model.Stylesheet stylesheet)</code></p><p></p><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Methods Detail
+               </h2></td></tr></table><h2><a name="method_walkDocument">walkDocument</a></h2><p><code>public void <strong>walkDocument</strong>(IDOMDocument document)</code></p><p></p><h3>Parameters</h3><p><code>document</code></p><hr></body></html>
\ No newline at end of file
diff --git a/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.core.internal.model.StylesheetParserData.html b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.core.internal.model.StylesheetParserData.html
new file mode 100644
index 0000000..c02aa62
--- /dev/null
+++ b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.core.internal.model.StylesheetParserData.html
@@ -0,0 +1,40 @@
+<html><body><p><font size="+1"><strong>Package org.eclipse.wst.xsl.core.internal.model</strong></font></p><hr><h2><font size="-1"><strong>org.eclipse.wst.xsl.core.internal.model</strong></font><br>
+               Class StylesheetParserData</h2><br><hr><pre>public class <strong>StylesheetParserData</strong>
+extends java.lang.Object</pre>This class is used to hold Data necessary for parsing and walking
+ an XSL Stylesheet into a Model.<p></p><p></p><hr><table width="100%" border="1"><tr bgcolor="#CCCCFF"><td width="100%"><h2>Constructor Summary</h2></td></tr><tr><td><code><strong><a href="#con_StylesheetParserData">StylesheetParserData</a></strong>(java.util.Stack elementStack
+         ,
+      java.util.Stack callTemplates
+         ,
+      java.util.Stack functions)</code></td></tr></table><br><table width="100%" border="1"><tr cols="2" bgcolor="#CCCCFF"><td colspan="2" width="100%"><h2>Method Summary</h2></td></tr><tr valign="top"><td width="20%" align="right"><code>public java.util.Stack</code></td><td width="" align="left"><code><a href="#method_getCallTemplates">getCallTemplates</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public org.eclipse.wst.xsl.core.model.Template</code></td><td width="" align="left"><code><a href="#method_getCurrentTemplate">getCurrentTemplate</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public java.util.Stack</code></td><td width="" align="left"><code><a href="#method_getElementStack">getElementStack</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public java.util.Stack</code></td><td width="" align="left"><code><a href="#method_getFunctions">getFunctions</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public org.eclipse.wst.xsl.core.model.XSLElement</code></td><td width="" align="left"><code><a href="#method_getParentEl">getParentEl</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public org.eclipse.wst.xsl.core.model.Stylesheet</code></td><td width="" align="left"><code><a href="#method_getStylesheet">getStylesheet</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public void</code></td><td width="" align="left"><code><a href="#method_setCallTemplates">setCallTemplates</a>(java.util.Stack callTemplates)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public void</code></td><td width="" align="left"><code><a href="#method_setCurrentTemplate">setCurrentTemplate</a>(org.eclipse.wst.xsl.core.model.Template currentTemplate)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public void</code></td><td width="" align="left"><code><a href="#method_setElementStack">setElementStack</a>(java.util.Stack elementStack)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public void</code></td><td width="" align="left"><code><a href="#method_setFunctions">setFunctions</a>(java.util.Stack functions)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public void</code></td><td width="" align="left"><code><a href="#method_setParentEl">setParentEl</a>(org.eclipse.wst.xsl.core.model.XSLElement parentEl)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public void</code></td><td width="" align="left"><code><a href="#method_setStylesheet">setStylesheet</a>(org.eclipse.wst.xsl.core.model.Stylesheet sf)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr></table><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Constructor Detail
+               </h2></td></tr></table><h2><a name="con_StylesheetParserData">StylesheetParserData</a></h2><p><code>public <strong>StylesheetParserData</strong>(java.util.Stack elementStack
+         ,
+      java.util.Stack callTemplates
+         ,
+      java.util.Stack functions)</code></p><p></p><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Methods Detail
+               </h2></td></tr></table><h2><a name="method_getCallTemplates">getCallTemplates</a></h2><p><code>public java.util.Stack <strong>getCallTemplates</strong>()</code></p><p></p><h3>Returns</h3><p><code>java.util.Stack</code></p><hr><h2><a name="method_getCurrentTemplate">getCurrentTemplate</a></h2><p><code>public org.eclipse.wst.xsl.core.model.Template <strong>getCurrentTemplate</strong>()</code></p><p></p><h3>Returns</h3><p><code>org.eclipse.wst.xsl.core.model.Template</code></p><hr><h2><a name="method_getElementStack">getElementStack</a></h2><p><code>public java.util.Stack <strong>getElementStack</strong>()</code></p><p></p><h3>Returns</h3><p><code>java.util.Stack</code></p><hr><h2><a name="method_getFunctions">getFunctions</a></h2><p><code>public java.util.Stack <strong>getFunctions</strong>()</code></p><p></p><h3>Returns</h3><p><code>java.util.Stack</code></p><hr><h2><a name="method_getParentEl">getParentEl</a></h2><p><code>public org.eclipse.wst.xsl.core.model.XSLElement <strong>getParentEl</strong>()</code></p><p></p><h3>Returns</h3><p><code>org.eclipse.wst.xsl.core.model.XSLElement</code></p><hr><h2><a name="method_getStylesheet">getStylesheet</a></h2><p><code>public org.eclipse.wst.xsl.core.model.Stylesheet <strong>getStylesheet</strong>()</code></p><p></p><h3>Returns</h3><p><code>org.eclipse.wst.xsl.core.model.Stylesheet</code></p><hr><h2><a name="method_setCallTemplates">setCallTemplates</a></h2><p><code>public void <strong>setCallTemplates</strong>(java.util.Stack callTemplates)</code></p><p></p><h3>Parameters</h3><p><code>callTemplates</code></p><hr><h2><a name="method_setCurrentTemplate">setCurrentTemplate</a></h2><p><code>public void <strong>setCurrentTemplate</strong>(org.eclipse.wst.xsl.core.model.Template currentTemplate)</code></p><p></p><h3>Parameters</h3><p><code>currentTemplate</code></p><hr><h2><a name="method_setElementStack">setElementStack</a></h2><p><code>public void <strong>setElementStack</strong>(java.util.Stack elementStack)</code></p><p></p><h3>Parameters</h3><p><code>elementStack</code></p><hr><h2><a name="method_setFunctions">setFunctions</a></h2><p><code>public void <strong>setFunctions</strong>(java.util.Stack functions)</code></p><p></p><h3>Parameters</h3><p><code>functions</code></p><hr><h2><a name="method_setParentEl">setParentEl</a></h2><p><code>public void <strong>setParentEl</strong>(org.eclipse.wst.xsl.core.model.XSLElement parentEl)</code></p><p></p><h3>Parameters</h3><p><code>parentEl</code></p><hr><h2><a name="method_setStylesheet">setStylesheet</a></h2><p><code>public void <strong>setStylesheet</strong>(org.eclipse.wst.xsl.core.model.Stylesheet sf)</code></p><p></p><h3>Parameters</h3><p><code>sf</code></p><hr></body></html>
\ No newline at end of file
diff --git a/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.core.internal.model.XSLElementFactory.html b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.core.internal.model.XSLElementFactory.html
new file mode 100644
index 0000000..0ddcab2
--- /dev/null
+++ b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.core.internal.model.XSLElementFactory.html
@@ -0,0 +1,31 @@
+<html><body><p><font size="+1"><strong>Package org.eclipse.wst.xsl.core.internal.model</strong></font></p><hr><h2><font size="-1"><strong>org.eclipse.wst.xsl.core.internal.model</strong></font><br>
+               Class XSLElementFactory</h2><br><hr><pre>public class <strong>XSLElementFactory</strong>
+extends java.lang.Object</pre>A Factory that creates XSL Elements of the requested type.<p></p><hr><table width="100%" border="1"><tr bgcolor="#CCCCFF"><td width="100%"><h2>Constructor Summary</h2></td></tr><tr><td><code><strong><a href="#con_XSLElementFactory">XSLElementFactory</a></strong>(org.eclipse.wst.xsl.core.internal.model.StylesheetParserData data
+         ,
+      org.w3c.dom.Element element)</code></td></tr></table><br><table width="100%" border="1"><tr cols="2" bgcolor="#CCCCFF"><td colspan="2" width="100%"><h2>Method Summary</h2></td></tr><tr valign="top"><td width="20%" align="right"><code>public org.eclipse.wst.xsl.core.model.XSLElement</code></td><td width="" align="left"><code><a href="#method_createCallTemplate">createCallTemplate</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public org.eclipse.wst.xsl.core.model.XSLElement</code></td><td width="" align="left"><code><a href="#method_createFunction">createFunction</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public org.eclipse.wst.xsl.core.model.XSLElement</code></td><td width="" align="left"><code><a href="#method_createImport">createImport</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public org.eclipse.wst.xsl.core.model.XSLElement</code></td><td width="" align="left"><code><a href="#method_createInclude">createInclude</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public org.eclipse.wst.xsl.core.model.XSLElement</code></td><td width="" align="left"><code><a href="#method_createParamater">createParamater</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public org.eclipse.wst.xsl.core.model.XSLElement</code></td><td width="" align="left"><code><a href="#method_createStyleSheet">createStyleSheet</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public org.eclipse.wst.xsl.core.model.XSLElement</code></td><td width="" align="left"><code><a href="#method_createTemplate">createTemplate</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public org.eclipse.wst.xsl.core.model.XSLElement</code></td><td width="" align="left"><code><a href="#method_createVariable">createVariable</a>(org.eclipse.wst.xsl.core.model.XSLElement xslEl)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public org.eclipse.wst.xsl.core.model.XSLElement</code></td><td width="" align="left"><code><a href="#method_createWithParamParm">createWithParamParm</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public org.eclipse.wst.xsl.core.model.XSLElement</code></td><td width="" align="left"><code><a href="#method_createXSLElement">createXSLElement</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr></table><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Constructor Detail
+               </h2></td></tr></table><h2><a name="con_XSLElementFactory">XSLElementFactory</a></h2><p><code>public <strong>XSLElementFactory</strong>(org.eclipse.wst.xsl.core.internal.model.StylesheetParserData data
+         ,
+      org.w3c.dom.Element element)</code></p><p></p><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Methods Detail
+               </h2></td></tr></table><h2><a name="method_createCallTemplate">createCallTemplate</a></h2><p><code>public org.eclipse.wst.xsl.core.model.XSLElement <strong>createCallTemplate</strong>()</code></p><p></p><h3>Returns</h3><p><code>org.eclipse.wst.xsl.core.model.XSLElement</code></p><hr><h2><a name="method_createFunction">createFunction</a></h2><p><code>public org.eclipse.wst.xsl.core.model.XSLElement <strong>createFunction</strong>()</code></p><p></p><h3>Returns</h3><p><code>org.eclipse.wst.xsl.core.model.XSLElement</code></p><hr><h2><a name="method_createImport">createImport</a></h2><p><code>public org.eclipse.wst.xsl.core.model.XSLElement <strong>createImport</strong>()</code></p><p></p><h3>Returns</h3><p><code>org.eclipse.wst.xsl.core.model.XSLElement</code></p><hr><h2><a name="method_createInclude">createInclude</a></h2><p><code>public org.eclipse.wst.xsl.core.model.XSLElement <strong>createInclude</strong>()</code></p><p></p><h3>Returns</h3><p><code>org.eclipse.wst.xsl.core.model.XSLElement</code></p><hr><h2><a name="method_createParamater">createParamater</a></h2><p><code>public org.eclipse.wst.xsl.core.model.XSLElement <strong>createParamater</strong>()</code></p><p></p><h3>Returns</h3><p><code>org.eclipse.wst.xsl.core.model.XSLElement</code></p><hr><h2><a name="method_createStyleSheet">createStyleSheet</a></h2><p><code>public org.eclipse.wst.xsl.core.model.XSLElement <strong>createStyleSheet</strong>()</code></p><p></p><h3>Returns</h3><p><code>org.eclipse.wst.xsl.core.model.XSLElement</code></p><hr><h2><a name="method_createTemplate">createTemplate</a></h2><p><code>public org.eclipse.wst.xsl.core.model.XSLElement <strong>createTemplate</strong>()</code></p><p></p><h3>Returns</h3><p><code>org.eclipse.wst.xsl.core.model.XSLElement</code></p><hr><h2><a name="method_createVariable">createVariable</a></h2><p><code>public org.eclipse.wst.xsl.core.model.XSLElement <strong>createVariable</strong>(org.eclipse.wst.xsl.core.model.XSLElement xslEl)</code></p><p></p><h3>Parameters</h3><p><code>xslEl</code></p><h3>Returns</h3><p><code>org.eclipse.wst.xsl.core.model.XSLElement</code></p><hr><h2><a name="method_createWithParamParm">createWithParamParm</a></h2><p><code>public org.eclipse.wst.xsl.core.model.XSLElement <strong>createWithParamParm</strong>()</code></p><p></p><h3>Returns</h3><p><code>org.eclipse.wst.xsl.core.model.XSLElement</code></p><hr><h2><a name="method_createXSLElement">createXSLElement</a></h2><p><code>public org.eclipse.wst.xsl.core.model.XSLElement <strong>createXSLElement</strong>()</code></p><p></p><h3>Returns</h3><p><code>org.eclipse.wst.xsl.core.model.XSLElement</code></p><hr></body></html>
\ No newline at end of file
diff --git a/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.core.internal.model.XSLModelObjectFactory.html b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.core.internal.model.XSLModelObjectFactory.html
new file mode 100644
index 0000000..008c6d7
--- /dev/null
+++ b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.core.internal.model.XSLModelObjectFactory.html
@@ -0,0 +1,17 @@
+<html><body><p><font size="+1"><strong>Package org.eclipse.wst.xsl.core.internal.model</strong></font></p><hr><h2><font size="-1"><strong>org.eclipse.wst.xsl.core.internal.model</strong></font><br>
+               Class XSLModelObjectFactory</h2><br><hr><pre>public class <strong>XSLModelObjectFactory</strong>
+extends java.lang.Object</pre><hr><table width="100%" border="1"><tr bgcolor="#CCCCFF"><td width="100%"><h2>Constructor Summary</h2></td></tr><tr><td><code><strong><a href="#con_XSLModelObjectFactory">XSLModelObjectFactory</a></strong>(org.w3c.dom.Element element
+         ,
+      org.eclipse.wst.xsl.core.model.XSLElement xslEl
+         ,
+      org.eclipse.wst.xsl.core.internal.model.StylesheetParserData data)</code></td></tr></table><br><table width="100%" border="1"><tr cols="2" bgcolor="#CCCCFF"><td colspan="2" width="100%"><h2>Method Summary</h2></td></tr><tr valign="top"><td width="20%" align="right"><code>public org.eclipse.wst.xsl.core.model.XSLElement</code></td><td width="" align="left"><code><a href="#method_createXSLModelObject">createXSLModelObject</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               Creates an XSL Model Object of the appropriate type.</td></tr></table><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Constructor Detail
+               </h2></td></tr></table><h2><a name="con_XSLModelObjectFactory">XSLModelObjectFactory</a></h2><p><code>public <strong>XSLModelObjectFactory</strong>(org.w3c.dom.Element element
+         ,
+      org.eclipse.wst.xsl.core.model.XSLElement xslEl
+         ,
+      org.eclipse.wst.xsl.core.internal.model.StylesheetParserData data)</code></p><p></p><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Methods Detail
+               </h2></td></tr></table><h2><a name="method_createXSLModelObject">createXSLModelObject</a></h2><p><code>public org.eclipse.wst.xsl.core.model.XSLElement <strong>createXSLModelObject</strong>()</code></p><p>Creates an XSL Model Object of the appropriate type.</p><h3>Returns</h3><p><code>org.eclipse.wst.xsl.core.model.XSLElement</code></p><hr></body></html>
\ No newline at end of file
diff --git a/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.core.internal.modelhandler.ModelHandlerForXSL.html b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.core.internal.modelhandler.ModelHandlerForXSL.html
new file mode 100644
index 0000000..b7f84d4
--- /dev/null
+++ b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.core.internal.modelhandler.ModelHandlerForXSL.html
@@ -0,0 +1,21 @@
+<html><body><p><font size="+1"><strong>Package org.eclipse.wst.xsl.core.internal.modelhandler</strong></font></p><hr><h2><font size="-1"><strong>org.eclipse.wst.xsl.core.internal.modelhandler</strong></font><br>
+               Class ModelHandlerForXSL</h2><br><hr><pre>public class <strong>ModelHandlerForXSL</strong>
+extends ModelHandlerForXML</pre>Provides generic XML model handling. It is also marked as the default
+ content type handler. There should be only one implementation of the
+ default.<hr><table width="100%" border="1"><tr cols="2" bgcolor="#CCCCFF"><td colspan="2" width="100%"><h2>Field Summary</h2></td></tr><tr valign="top"><td width="20%" align="right"><code>package-private static  java.lang.String</code></td><td width="80%" align="left"><code><a href="#field_AssociatedContentTypeID">AssociatedContentTypeID</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               Needs to match what's in plugin registry. In fact, can be overwritten
+ at run time with what's in registry! (so should never be 'final')</td></tr></table><br><table width="100%" border="1"><tr bgcolor="#CCCCFF"><td width="100%"><h2>Constructor Summary</h2></td></tr><tr><td><code><strong><a href="#con_ModelHandlerForXSL">ModelHandlerForXSL</a></strong>()</code></td></tr></table><br><table width="100%" border="1"><tr cols="2" bgcolor="#CCCCFF"><td colspan="2" width="100%"><h2>Method Summary</h2></td></tr><tr valign="top"><td width="20%" align="right"><code>public IDocumentLoader</code></td><td width="" align="left"><code><a href="#method_getDocumentLoader">getDocumentLoader</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public IDocumentCharsetDetector</code></td><td width="" align="left"><code><a href="#method_getEncodingDetector">getEncodingDetector</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public IModelLoader</code></td><td width="" align="left"><code><a href="#method_getModelLoader">getModelLoader</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr></table><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Field Detail
+               </h2></td></tr></table><h2><a name="field_AssociatedContentTypeID">AssociatedContentTypeID</a></h2><p><code>package-private static  java.lang.String <strong>AssociatedContentTypeID</strong></code></p><table><tr><td>Needs to match what's in plugin registry. In fact, can be overwritten
+ at run time with what's in registry! (so should never be 'final')</td></tr></table><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Constructor Detail
+               </h2></td></tr></table><h2><a name="con_ModelHandlerForXSL">ModelHandlerForXSL</a></h2><p><code>public <strong>ModelHandlerForXSL</strong>()</code></p><p></p><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Methods Detail
+               </h2></td></tr></table><h2><a name="method_getDocumentLoader">getDocumentLoader</a></h2><p><code>public IDocumentLoader <strong>getDocumentLoader</strong>()</code></p><p></p><h3>Returns</h3><p><code>IDocumentLoader</code></p><hr><h2><a name="method_getEncodingDetector">getEncodingDetector</a></h2><p><code>public IDocumentCharsetDetector <strong>getEncodingDetector</strong>()</code></p><p></p><h3>Returns</h3><p><code>IDocumentCharsetDetector</code></p><hr><h2><a name="method_getModelLoader">getModelLoader</a></h2><p><code>public IModelLoader <strong>getModelLoader</strong>()</code></p><p></p><h3>Returns</h3><p><code>IModelLoader</code></p><hr></body></html>
\ No newline at end of file
diff --git a/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.core.internal.modelhandler.XSLModelLoader.html b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.core.internal.modelhandler.XSLModelLoader.html
new file mode 100644
index 0000000..e025319
--- /dev/null
+++ b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.core.internal.modelhandler.XSLModelLoader.html
@@ -0,0 +1,15 @@
+<html><body><p><font size="+1"><strong>Package org.eclipse.wst.xsl.core.internal.modelhandler</strong></font></p><hr><h2><font size="-1"><strong>org.eclipse.wst.xsl.core.internal.modelhandler</strong></font><br>
+               Class XSLModelLoader</h2><br><hr><pre>public class <strong>XSLModelLoader</strong>
+extends XMLModelLoader</pre>This class reads an XML file and creates an XML Structured Model.<hr><table width="100%" border="1"><tr bgcolor="#CCCCFF"><td width="100%"><h2>Constructor Summary</h2></td></tr><tr><td><code><strong><a href="#con_XSLModelLoader">XSLModelLoader</a></strong>()</code></td></tr></table><br><table width="100%" border="1"><tr cols="2" bgcolor="#CCCCFF"><td colspan="2" width="100%"><h2>Method Summary</h2></td></tr><tr valign="top"><td width="20%" align="right"><code>public IDocumentLoader</code></td><td width="" align="left"><code><a href="#method_getDocumentLoader">getDocumentLoader</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public IModelLoader</code></td><td width="" align="left"><code><a href="#method_newInstance">newInstance</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public IStructuredModel</code></td><td width="" align="left"><code><a href="#method_newModel">newModel</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>protected void</code></td><td width="" align="left"><code><a href="#method_preLoadAdapt">preLoadAdapt</a>(IStructuredModel structuredModel)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr></table><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Constructor Detail
+               </h2></td></tr></table><h2><a name="con_XSLModelLoader">XSLModelLoader</a></h2><p><code>public <strong>XSLModelLoader</strong>()</code></p><p>XMLLoader constructor comment.</p><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Methods Detail
+               </h2></td></tr></table><h2><a name="method_getDocumentLoader">getDocumentLoader</a></h2><p><code>public IDocumentLoader <strong>getDocumentLoader</strong>()</code></p><p></p><h3>Returns</h3><p><code>IDocumentLoader</code></p><hr><h2><a name="method_newInstance">newInstance</a></h2><p><code>public IModelLoader <strong>newInstance</strong>()</code></p><p></p><h3>Returns</h3><p><code>IModelLoader</code></p><hr><h2><a name="method_newModel">newModel</a></h2><p><code>public IStructuredModel <strong>newModel</strong>()</code></p><p></p><h3>Returns</h3><p><code>IStructuredModel</code></p><hr><h2><a name="method_preLoadAdapt">preLoadAdapt</a></h2><p><code>protected void <strong>preLoadAdapt</strong>(IStructuredModel structuredModel)</code></p><p></p><h3>Parameters</h3><p><code>structuredModel</code></p><hr></body></html>
\ No newline at end of file
diff --git a/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.core.internal.parser.XSLSourceParser.html b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.core.internal.parser.XSLSourceParser.html
new file mode 100644
index 0000000..0edc05d
--- /dev/null
+++ b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.core.internal.parser.XSLSourceParser.html
@@ -0,0 +1,13 @@
+<html><body><p><font size="+1"><strong>Package org.eclipse.wst.xsl.core.internal.parser</strong></font></p><hr><h2><font size="-1"><strong>org.eclipse.wst.xsl.core.internal.parser</strong></font><br>
+               Class XSLSourceParser</h2><br><hr><pre>public class <strong>XSLSourceParser</strong>
+extends XMLSourceParser</pre><hr><table width="100%" border="1"><tr bgcolor="#CCCCFF"><td width="100%"><h2>Constructor Summary</h2></td></tr><tr><td><code><strong><a href="#con_XSLSourceParser">XSLSourceParser</a></strong>()</code></td></tr></table><br><table width="100%" border="1"><tr cols="2" bgcolor="#CCCCFF"><td colspan="2" width="100%"><h2>Method Summary</h2></td></tr><tr valign="top"><td width="20%" align="right"><code>public RegionParser</code></td><td width="" align="left"><code><a href="#method_newInstance">newInstance</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>protected IStructuredDocumentRegion</code></td><td width="" align="left"><code><a href="#method_parseNodes">parseNodes</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>protected void</code></td><td width="" align="left"><code><a href="#method_setTokenizer">setTokenizer</a>(BlockTokenizer newTokenizer)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr></table><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Constructor Detail
+               </h2></td></tr></table><h2><a name="con_XSLSourceParser">XSLSourceParser</a></h2><p><code>public <strong>XSLSourceParser</strong>()</code></p><p></p><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Methods Detail
+               </h2></td></tr></table><h2><a name="method_newInstance">newInstance</a></h2><p><code>public RegionParser <strong>newInstance</strong>()</code></p><p></p><h3>Returns</h3><p><code>RegionParser</code></p><hr><h2><a name="method_parseNodes">parseNodes</a></h2><p><code>protected IStructuredDocumentRegion <strong>parseNodes</strong>()</code></p><p></p><h3>Returns</h3><p><code>IStructuredDocumentRegion</code></p><hr><h2><a name="method_setTokenizer">setTokenizer</a></h2><p><code>protected void <strong>setTokenizer</strong>(BlockTokenizer newTokenizer)</code></p><p></p><h3>Parameters</h3><p><code>newTokenizer</code></p><hr></body></html>
\ No newline at end of file
diff --git a/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.core.internal.parser.regions.XPathSeparatorRegion.html b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.core.internal.parser.regions.XPathSeparatorRegion.html
new file mode 100644
index 0000000..c778102
--- /dev/null
+++ b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.core.internal.parser.regions.XPathSeparatorRegion.html
@@ -0,0 +1,55 @@
+<html><body><p><font size="+1"><strong>Package org.eclipse.wst.xsl.core.internal.parser.regions</strong></font></p><hr><h2><font size="-1"><strong>org.eclipse.wst.xsl.core.internal.parser.regions</strong></font><br>
+               Class XPathSeparatorRegion</h2><br><hr><pre>public class <strong>XPathSeparatorRegion</strong>
+extends java.lang.Object</pre><hr><table width="100%" border="1"><tr bgcolor="#CCCCFF"><td width="100%"><h2>Constructor Summary</h2></td></tr><tr><td><code><strong><a href="#con_XPathSeparatorRegion">XPathSeparatorRegion</a></strong>()</code></td></tr><tr><td><code><strong><a href="#con_XPathSeparatorRegion">XPathSeparatorRegion</a></strong>(int start
+         ,
+      int textLength
+         ,
+      int length)</code></td></tr></table><br><table width="100%" border="1"><tr cols="2" bgcolor="#CCCCFF"><td colspan="2" width="100%"><h2>Method Summary</h2></td></tr><tr valign="top"><td width="20%" align="right"><code>public void</code></td><td width="" align="left"><code><a href="#method_adjustLength">adjustLength</a>(int i)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public void</code></td><td width="" align="left"><code><a href="#method_adjustStart">adjustStart</a>(int i)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public void</code></td><td width="" align="left"><code><a href="#method_adjustTextLength">adjustTextLength</a>(int i)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public void</code></td><td width="" align="left"><code><a href="#method_equatePositions">equatePositions</a>(ITextRegion region)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public int</code></td><td width="" align="left"><code><a href="#method_getEnd">getEnd</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public int</code></td><td width="" align="left"><code><a href="#method_getLength">getLength</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public int</code></td><td width="" align="left"><code><a href="#method_getStart">getStart</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public int</code></td><td width="" align="left"><code><a href="#method_getTextEnd">getTextEnd</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public int</code></td><td width="" align="left"><code><a href="#method_getTextLength">getTextLength</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public java.lang.String</code></td><td width="" align="left"><code><a href="#method_getType">getType</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public java.lang.String</code></td><td width="" align="left"><code><a href="#method_toString">toString</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public StructuredDocumentEvent</code></td><td width="" align="left"><code><a href="#method_updateRegion">updateRegion</a>(java.lang.Object requester
+         ,
+      IStructuredDocumentRegion parent
+         ,
+      java.lang.String changes
+         ,
+      int requestStart
+         ,
+      int lengthToReplace)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr></table><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Constructor Detail
+               </h2></td></tr></table><h2><a name="con_XPathSeparatorRegion">XPathSeparatorRegion</a></h2><p><code>public <strong>XPathSeparatorRegion</strong>()</code></p><p></p><hr><h2><a name="con_XPathSeparatorRegion">XPathSeparatorRegion</a></h2><p><code>public <strong>XPathSeparatorRegion</strong>(int start
+         ,
+      int textLength
+         ,
+      int length)</code></p><p></p><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Methods Detail
+               </h2></td></tr></table><h2><a name="method_adjustLength">adjustLength</a></h2><p><code>public void <strong>adjustLength</strong>(int i)</code></p><p></p><h3>Parameters</h3><p><code>i</code></p><hr><h2><a name="method_adjustStart">adjustStart</a></h2><p><code>public void <strong>adjustStart</strong>(int i)</code></p><p></p><h3>Parameters</h3><p><code>i</code></p><hr><h2><a name="method_adjustTextLength">adjustTextLength</a></h2><p><code>public void <strong>adjustTextLength</strong>(int i)</code></p><p></p><h3>Parameters</h3><p><code>i</code></p><hr><h2><a name="method_equatePositions">equatePositions</a></h2><p><code>public void <strong>equatePositions</strong>(ITextRegion region)</code></p><p></p><h3>Parameters</h3><p><code>region</code></p><hr><h2><a name="method_getEnd">getEnd</a></h2><p><code>public int <strong>getEnd</strong>()</code></p><p></p><h3>Returns</h3><p><code>int</code></p><hr><h2><a name="method_getLength">getLength</a></h2><p><code>public int <strong>getLength</strong>()</code></p><p></p><h3>Returns</h3><p><code>int</code></p><hr><h2><a name="method_getStart">getStart</a></h2><p><code>public int <strong>getStart</strong>()</code></p><p></p><h3>Returns</h3><p><code>int</code></p><hr><h2><a name="method_getTextEnd">getTextEnd</a></h2><p><code>public int <strong>getTextEnd</strong>()</code></p><p></p><h3>Returns</h3><p><code>int</code></p><hr><h2><a name="method_getTextLength">getTextLength</a></h2><p><code>public int <strong>getTextLength</strong>()</code></p><p></p><h3>Returns</h3><p><code>int</code></p><hr><h2><a name="method_getType">getType</a></h2><p><code>public java.lang.String <strong>getType</strong>()</code></p><p></p><h3>Returns</h3><p><code>java.lang.String</code></p><hr><h2><a name="method_toString">toString</a></h2><p><code>public java.lang.String <strong>toString</strong>()</code></p><p></p><h3>Returns</h3><p><code>java.lang.String</code></p><hr><h2><a name="method_updateRegion">updateRegion</a></h2><p><code>public StructuredDocumentEvent <strong>updateRegion</strong>(java.lang.Object requester
+         ,
+      IStructuredDocumentRegion parent
+         ,
+      java.lang.String changes
+         ,
+      int requestStart
+         ,
+      int lengthToReplace)</code></p><p></p><h3>Parameters</h3><p><code>requester</code></p><p><code>parent</code></p><p><code>changes</code></p><p><code>requestStart</code></p><p><code>lengthToReplace</code></p><h3>Returns</h3><p><code>StructuredDocumentEvent</code></p><hr></body></html>
\ No newline at end of file
diff --git a/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.core.internal.preferences.PreferenceInitializer.html b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.core.internal.preferences.PreferenceInitializer.html
new file mode 100644
index 0000000..b709284
--- /dev/null
+++ b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.core.internal.preferences.PreferenceInitializer.html
@@ -0,0 +1,9 @@
+<html><body><p><font size="+1"><strong>Package org.eclipse.wst.xsl.core.internal.preferences</strong></font></p><hr><h2><font size="-1"><strong>org.eclipse.wst.xsl.core.internal.preferences</strong></font><br>
+               Class PreferenceInitializer</h2><br><hr><pre>public class <strong>PreferenceInitializer</strong>
+extends AbstractPreferenceInitializer</pre>Preferences initializer for XSL core preferences.<p></p><hr><table width="100%" border="1"><tr bgcolor="#CCCCFF"><td width="100%"><h2>Constructor Summary</h2></td></tr><tr><td><code><strong><a href="#con_PreferenceInitializer">PreferenceInitializer</a></strong>()</code></td></tr></table><br><table width="100%" border="1"><tr cols="2" bgcolor="#CCCCFF"><td colspan="2" width="100%"><h2>Method Summary</h2></td></tr><tr valign="top"><td width="20%" align="right"><code>public void</code></td><td width="" align="left"><code><a href="#method_initializeDefaultPreferences">initializeDefaultPreferences</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr></table><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Constructor Detail
+               </h2></td></tr></table><h2><a name="con_PreferenceInitializer">PreferenceInitializer</a></h2><p><code>public <strong>PreferenceInitializer</strong>()</code></p><p></p><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Methods Detail
+               </h2></td></tr></table><h2><a name="method_initializeDefaultPreferences">initializeDefaultPreferences</a></h2><p><code>public void <strong>initializeDefaultPreferences</strong>()</code></p><p></p><hr></body></html>
\ No newline at end of file
diff --git a/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.core.internal.regions.XPathRegionContext.html b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.core.internal.regions.XPathRegionContext.html
new file mode 100644
index 0000000..17918f6
--- /dev/null
+++ b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.core.internal.regions.XPathRegionContext.html
@@ -0,0 +1,21 @@
+<html><body><p><font size="+1"><strong>Package org.eclipse.wst.xsl.core.internal.regions</strong></font></p><hr><h2><font size="-1"><strong>org.eclipse.wst.xsl.core.internal.regions</strong></font><br>
+               Class XPathRegionContext</h2><br><hr><pre>public class <strong>XPathRegionContext</strong>
+extends </pre><hr><table width="100%" border="1"><tr cols="2" bgcolor="#CCCCFF"><td colspan="2" width="100%"><h2>Field Summary</h2></td></tr><tr valign="top"><td width="20%" align="right"><code>public static  java.lang.String</code></td><td width="80%" align="left"><code><a href="#field_BLOCK_TEXT">BLOCK_TEXT</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public static  java.lang.String</code></td><td width="80%" align="left"><code><a href="#field_UNDEFINED">UNDEFINED</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public static  java.lang.String</code></td><td width="80%" align="left"><code><a href="#field_WHITE_SPACE">WHITE_SPACE</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public static  java.lang.String</code></td><td width="80%" align="left"><code><a href="#field_XPATH_CONTENT">XPATH_CONTENT</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public static  java.lang.String</code></td><td width="80%" align="left"><code><a href="#field_XPATH_FUNCTION_NAME">XPATH_FUNCTION_NAME</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public static  java.lang.String</code></td><td width="80%" align="left"><code><a href="#field_XPATH_FUNCTION_PARAMETERS_CLOSE">XPATH_FUNCTION_PARAMETERS_CLOSE</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public static  java.lang.String</code></td><td width="80%" align="left"><code><a href="#field_XPATH_FUNCTION_PARAMETERS_OPEN">XPATH_FUNCTION_PARAMETERS_OPEN</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public static  java.lang.String</code></td><td width="80%" align="left"><code><a href="#field_XPATH_SEPARATOR_DIV">XPATH_SEPARATOR_DIV</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr></table><br><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Field Detail
+               </h2></td></tr></table><h2><a name="field_BLOCK_TEXT">BLOCK_TEXT</a></h2><p><code>public static  java.lang.String <strong>BLOCK_TEXT</strong></code></p><hr><h2><a name="field_UNDEFINED">UNDEFINED</a></h2><p><code>public static  java.lang.String <strong>UNDEFINED</strong></code></p><hr><h2><a name="field_WHITE_SPACE">WHITE_SPACE</a></h2><p><code>public static  java.lang.String <strong>WHITE_SPACE</strong></code></p><hr><h2><a name="field_XPATH_CONTENT">XPATH_CONTENT</a></h2><p><code>public static  java.lang.String <strong>XPATH_CONTENT</strong></code></p><hr><h2><a name="field_XPATH_FUNCTION_NAME">XPATH_FUNCTION_NAME</a></h2><p><code>public static  java.lang.String <strong>XPATH_FUNCTION_NAME</strong></code></p><hr><h2><a name="field_XPATH_FUNCTION_PARAMETERS_CLOSE">XPATH_FUNCTION_PARAMETERS_CLOSE</a></h2><p><code>public static  java.lang.String <strong>XPATH_FUNCTION_PARAMETERS_CLOSE</strong></code></p><hr><h2><a name="field_XPATH_FUNCTION_PARAMETERS_OPEN">XPATH_FUNCTION_PARAMETERS_OPEN</a></h2><p><code>public static  java.lang.String <strong>XPATH_FUNCTION_PARAMETERS_OPEN</strong></code></p><hr><h2><a name="field_XPATH_SEPARATOR_DIV">XPATH_SEPARATOR_DIV</a></h2><p><code>public static  java.lang.String <strong>XPATH_SEPARATOR_DIV</strong></code></p><hr></body></html>
\ No newline at end of file
diff --git a/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.core.internal.regions.XSLParserRegionFactory.html b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.core.internal.regions.XSLParserRegionFactory.html
new file mode 100644
index 0000000..6d21f4b
--- /dev/null
+++ b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.core.internal.regions.XSLParserRegionFactory.html
@@ -0,0 +1,5 @@
+<html><body><p><font size="+1"><strong>Package org.eclipse.wst.xsl.core.internal.regions</strong></font></p><hr><h2><font size="-1"><strong>org.eclipse.wst.xsl.core.internal.regions</strong></font><br>
+               Class XSLParserRegionFactory</h2><br><hr><pre>public class <strong>XSLParserRegionFactory</strong>
+extends XMLParserRegionFactory</pre><hr><table width="100%" border="1"><tr bgcolor="#CCCCFF"><td width="100%"><h2>Constructor Summary</h2></td></tr><tr><td><code><strong><a href="#con_XSLParserRegionFactory">XSLParserRegionFactory</a></strong>()</code></td></tr></table><br><table width="100%" border="1"><tr cols="2" bgcolor="#CCCCFF"><td colspan="2" width="100%"><h2>Method Summary</h2></td></tr></table><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Constructor Detail
+               </h2></td></tr></table><h2><a name="con_XSLParserRegionFactory">XSLParserRegionFactory</a></h2><p><code>public <strong>XSLParserRegionFactory</strong>()</code></p><p></p><hr></body></html>
\ No newline at end of file
diff --git a/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.core.internal.text.IXSLPartitions.html b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.core.internal.text.IXSLPartitions.html
new file mode 100644
index 0000000..f0c0049
--- /dev/null
+++ b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.core.internal.text.IXSLPartitions.html
@@ -0,0 +1,9 @@
+<html><body><p><font size="+1"><strong>Package org.eclipse.wst.xsl.core.internal.text</strong></font></p><hr><h2><font size="-1"><strong>org.eclipse.wst.xsl.core.internal.text</strong></font><br>
+               Class IXSLPartitions</h2><br><hr><pre>public class <strong>IXSLPartitions</strong>
+extends </pre>This interface is not intended to be implemented.
+ It defines the partition types for XSL.
+ Clients should reference the partition type Strings defined here directly.<p></p><hr><table width="100%" border="1"><tr cols="2" bgcolor="#CCCCFF"><td colspan="2" width="100%"><h2>Field Summary</h2></td></tr><tr valign="top"><td width="20%" align="right"><code>public static  java.lang.String</code></td><td width="80%" align="left"><code><a href="#field_XSL_XPATH">XSL_XPATH</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr></table><br><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Field Detail
+               </h2></td></tr></table><h2><a name="field_XSL_XPATH">XSL_XPATH</a></h2><p><code>public static  java.lang.String <strong>XSL_XPATH</strong></code></p><hr></body></html>
\ No newline at end of file
diff --git a/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.core.internal.text.rules.StructuredTextPartitionerForXSL.html b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.core.internal.text.rules.StructuredTextPartitionerForXSL.html
new file mode 100644
index 0000000..1100eed
--- /dev/null
+++ b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.core.internal.text.rules.StructuredTextPartitionerForXSL.html
@@ -0,0 +1,20 @@
+<html><body><p><font size="+1"><strong>Package org.eclipse.wst.xsl.core.internal.text.rules</strong></font></p><hr><h2><font size="-1"><strong>org.eclipse.wst.xsl.core.internal.text.rules</strong></font><br>
+               Class StructuredTextPartitionerForXSL</h2><br><hr><pre>public class <strong>StructuredTextPartitionerForXSL</strong>
+extends StructuredTextPartitionerForXML</pre>Contains information specific to setting up Structured Document Partions 
+ in XSL documents.<p></p><hr><table width="100%" border="1"><tr bgcolor="#CCCCFF"><td width="100%"><h2>Constructor Summary</h2></td></tr><tr><td><code><strong><a href="#con_StructuredTextPartitionerForXSL">StructuredTextPartitionerForXSL</a></strong>()</code></td></tr></table><br><table width="100%" border="1"><tr cols="2" bgcolor="#CCCCFF"><td colspan="2" width="100%"><h2>Method Summary</h2></td></tr><tr valign="top"><td width="20%" align="right"><code>public static java.lang.String[]</code></td><td width="" align="left"><code><a href="#method_getConfiguredContentTypes">getConfiguredContentTypes</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public java.lang.String</code></td><td width="" align="left"><code><a href="#method_getPartitionType">getPartitionType</a>(ITextRegion region
+         ,
+      int offset)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public IDocumentPartitioner</code></td><td width="" align="left"><code><a href="#method_newInstance">newInstance</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr></table><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Constructor Detail
+               </h2></td></tr></table><h2><a name="con_StructuredTextPartitionerForXSL">StructuredTextPartitionerForXSL</a></h2><p><code>public <strong>StructuredTextPartitionerForXSL</strong>()</code></p><p>The StructuredTextPartitionerForXSL adds the necessary
+ Partition types to help Identify potential XPath areas.
+ This is also used for Line Styling and Content Assistance.</p><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Methods Detail
+               </h2></td></tr></table><h2><a name="method_getConfiguredContentTypes">getConfiguredContentTypes</a></h2><p><code>public java.lang.String[] <strong>getConfiguredContentTypes</strong>()</code></p><p></p><h3>Returns</h3><p><code>java.lang.String[]</code></p><hr><h2><a name="method_getPartitionType">getPartitionType</a></h2><p><code>public java.lang.String <strong>getPartitionType</strong>(ITextRegion region
+         ,
+      int offset)</code></p><p></p><h3>Parameters</h3><p><code>region</code></p><p><code>offset</code></p><h3>Returns</h3><p><code>java.lang.String</code></p><hr><h2><a name="method_newInstance">newInstance</a></h2><p><code>public IDocumentPartitioner <strong>newInstance</strong>()</code></p><p></p><h3>Returns</h3><p><code>IDocumentPartitioner</code></p><hr></body></html>
\ No newline at end of file
diff --git a/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.core.internal.util.Debug.html b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.core.internal.util.Debug.html
new file mode 100644
index 0000000..ae1c90c
--- /dev/null
+++ b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.core.internal.util.Debug.html
@@ -0,0 +1,99 @@
+<html><body><p><font size="+1"><strong>Package org.eclipse.wst.xsl.core.internal.util</strong></font></p><hr><h2><font size="-1"><strong>org.eclipse.wst.xsl.core.internal.util</strong></font><br>
+               Class Debug</h2><br><hr><pre>public class <strong>Debug</strong>
+extends java.lang.Object</pre>Debug Class is used to determine when Debugging output to system out.<p></p><hr><table width="100%" border="1"><tr cols="2" bgcolor="#CCCCFF"><td colspan="2" width="100%"><h2>Field Summary</h2></td></tr><tr valign="top"><td width="20%" align="right"><code>public static  boolean</code></td><td width="80%" align="left"><code><a href="#field_checkForMemoryLeaks">checkForMemoryLeaks</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public static  boolean</code></td><td width="80%" align="left"><code><a href="#field_collectStats">collectStats</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public static  int</code></td><td width="80%" align="left"><code><a href="#field_DEBUG">DEBUG</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public static  boolean</code></td><td width="80%" align="left"><code><a href="#field_DEBUG_THREADLOCAL">DEBUG_THREADLOCAL</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public static  boolean</code></td><td width="80%" align="left"><code><a href="#field_debugBreakpoints">debugBreakpoints</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public static  boolean</code></td><td width="80%" align="left"><code><a href="#field_debugCaretMediator">debugCaretMediator</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public static  boolean</code></td><td width="80%" align="left"><code><a href="#field_debugDisplayTreePositions">debugDisplayTreePositions</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public static  boolean</code></td><td width="80%" align="left"><code><a href="#field_debugLauncher">debugLauncher</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public static  boolean</code></td><td width="80%" align="left"><code><a href="#field_debugMediator">debugMediator</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public static  boolean</code></td><td width="80%" align="left"><code><a href="#field_debugNotification">debugNotification</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public static  boolean</code></td><td width="80%" align="left"><code><a href="#field_debugNotificationAndEvents">debugNotificationAndEvents</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public static  boolean</code></td><td width="80%" align="left"><code><a href="#field_debugNotifyDeferred">debugNotifyDeferred</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public static  boolean</code></td><td width="80%" align="left"><code><a href="#field_debugReconciling">debugReconciling</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public static  boolean</code></td><td width="80%" align="left"><code><a href="#field_debugRtfFormatProvider">debugRtfFormatProvider</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public static  boolean</code></td><td width="80%" align="left"><code><a href="#field_debugStructuredDocument">debugStructuredDocument</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public static  boolean</code></td><td width="80%" align="left"><code><a href="#field_debugTaglibs">debugTaglibs</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public static  boolean</code></td><td width="80%" align="left"><code><a href="#field_debugTokenizer">debugTokenizer</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public static  boolean</code></td><td width="80%" align="left"><code><a href="#field_debugTreeModel">debugTreeModel</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public static  boolean</code></td><td width="80%" align="left"><code><a href="#field_debugUpdateTreePositions">debugUpdateTreePositions</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public static  boolean</code></td><td width="80%" align="left"><code><a href="#field_debugXSLModel">debugXSLModel</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               Output Modeling Messages.</td></tr><tr valign="top"><td width="20%" align="right"><code>public static  boolean</code></td><td width="80%" align="left"><code><a href="#field_displayInfo">displayInfo</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public static  boolean</code></td><td width="80%" align="left"><code><a href="#field_displayToConsole">displayToConsole</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               effects output of Logger</td></tr><tr valign="top"><td width="20%" align="right"><code>public static  boolean</code></td><td width="80%" align="left"><code><a href="#field_displayWarnings">displayWarnings</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public static  boolean</code></td><td width="80%" align="left"><code><a href="#field_headParsing">headParsing</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public static  boolean</code></td><td width="80%" align="left"><code><a href="#field_jsDebugContextAssist">jsDebugContextAssist</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public static  boolean</code></td><td width="80%" align="left"><code><a href="#field_jsDebugSyntaxColoring">jsDebugSyntaxColoring</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public static  boolean</code></td><td width="80%" align="left"><code><a href="#field_LOCKS">LOCKS</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public static  boolean</code></td><td width="80%" align="left"><code><a href="#field_perfTest">perfTest</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public static  boolean</code></td><td width="80%" align="left"><code><a href="#field_perfTestAdapterClassLoading">perfTestAdapterClassLoading</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public static  boolean</code></td><td width="80%" align="left"><code><a href="#field_perfTestFormat">perfTestFormat</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public static  boolean</code></td><td width="80%" align="left"><code><a href="#field_perfTestRawStructuredDocumentOnly">perfTestRawStructuredDocumentOnly</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public static  boolean</code></td><td width="80%" align="left"><code><a href="#field_perfTestStructuredDocumentEventOnly">perfTestStructuredDocumentEventOnly</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public static  boolean</code></td><td width="80%" align="left"><code><a href="#field_perfTestStructuredDocumentOnly">perfTestStructuredDocumentOnly</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public static  boolean</code></td><td width="80%" align="left"><code><a href="#field_syntaxHighlighting">syntaxHighlighting</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public static  boolean</code></td><td width="80%" align="left"><code><a href="#field_useStandardEolInWidget">useStandardEolInWidget</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr></table><br><table width="100%" border="1"><tr bgcolor="#CCCCFF"><td width="100%"><h2>Constructor Summary</h2></td></tr><tr><td><code><strong><a href="#con_Debug">Debug</a></strong>()</code></td></tr></table><br><table width="100%" border="1"><tr cols="2" bgcolor="#CCCCFF"><td colspan="2" width="100%"><h2>Method Summary</h2></td></tr><tr valign="top"><td width="20%" align="right"><code>public static void</code></td><td width="" align="left"><code><a href="#method_dump">dump</a>(IStructuredDocument structuredDocument)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               For tests and debug only</td></tr><tr valign="top"><td width="20%" align="right"><code>public static void</code></td><td width="" align="left"><code><a href="#method_dump">dump</a>(IStructuredDocument structuredDocument
+         ,
+      boolean verbose)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public static void</code></td><td width="" align="left"><code><a href="#method_dump">dump</a>(ITextRegionCollection region
+         ,
+      boolean verbose)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public static void</code></td><td width="" align="left"><code><a href="#method_println">println</a>(java.lang.String msg)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               Simple utility to make sure println's are some what in order</td></tr><tr valign="top"><td width="20%" align="right"><code>public static java.lang.String</code></td><td width="" align="left"><code><a href="#method_toStringUtil">toStringUtil</a>(IStructuredDocument object)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public static java.lang.String</code></td><td width="" align="left"><code><a href="#method_toStringUtil">toStringUtil</a>(ITextRegionCollection object)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr></table><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Field Detail
+               </h2></td></tr></table><h2><a name="field_checkForMemoryLeaks">checkForMemoryLeaks</a></h2><p><code>public static  boolean <strong>checkForMemoryLeaks</strong></code></p><hr><h2><a name="field_collectStats">collectStats</a></h2><p><code>public static  boolean <strong>collectStats</strong></code></p><hr><h2><a name="field_DEBUG">DEBUG</a></h2><p><code>public static  int <strong>DEBUG</strong></code></p><hr><h2><a name="field_DEBUG_THREADLOCAL">DEBUG_THREADLOCAL</a></h2><p><code>public static  boolean <strong>DEBUG_THREADLOCAL</strong></code></p><hr><h2><a name="field_debugBreakpoints">debugBreakpoints</a></h2><p><code>public static  boolean <strong>debugBreakpoints</strong></code></p><hr><h2><a name="field_debugCaretMediator">debugCaretMediator</a></h2><p><code>public static  boolean <strong>debugCaretMediator</strong></code></p><hr><h2><a name="field_debugDisplayTreePositions">debugDisplayTreePositions</a></h2><p><code>public static  boolean <strong>debugDisplayTreePositions</strong></code></p><hr><h2><a name="field_debugLauncher">debugLauncher</a></h2><p><code>public static  boolean <strong>debugLauncher</strong></code></p><hr><h2><a name="field_debugMediator">debugMediator</a></h2><p><code>public static  boolean <strong>debugMediator</strong></code></p><hr><h2><a name="field_debugNotification">debugNotification</a></h2><p><code>public static  boolean <strong>debugNotification</strong></code></p><hr><h2><a name="field_debugNotificationAndEvents">debugNotificationAndEvents</a></h2><p><code>public static  boolean <strong>debugNotificationAndEvents</strong></code></p><hr><h2><a name="field_debugNotifyDeferred">debugNotifyDeferred</a></h2><p><code>public static  boolean <strong>debugNotifyDeferred</strong></code></p><hr><h2><a name="field_debugReconciling">debugReconciling</a></h2><p><code>public static  boolean <strong>debugReconciling</strong></code></p><hr><h2><a name="field_debugRtfFormatProvider">debugRtfFormatProvider</a></h2><p><code>public static  boolean <strong>debugRtfFormatProvider</strong></code></p><hr><h2><a name="field_debugStructuredDocument">debugStructuredDocument</a></h2><p><code>public static  boolean <strong>debugStructuredDocument</strong></code></p><hr><h2><a name="field_debugTaglibs">debugTaglibs</a></h2><p><code>public static  boolean <strong>debugTaglibs</strong></code></p><hr><h2><a name="field_debugTokenizer">debugTokenizer</a></h2><p><code>public static  boolean <strong>debugTokenizer</strong></code></p><hr><h2><a name="field_debugTreeModel">debugTreeModel</a></h2><p><code>public static  boolean <strong>debugTreeModel</strong></code></p><hr><h2><a name="field_debugUpdateTreePositions">debugUpdateTreePositions</a></h2><p><code>public static  boolean <strong>debugUpdateTreePositions</strong></code></p><hr><h2><a name="field_debugXSLModel">debugXSLModel</a></h2><p><code>public static  boolean <strong>debugXSLModel</strong></code></p><table><tr><td>Output Modeling Messages.</td></tr></table><hr><h2><a name="field_displayInfo">displayInfo</a></h2><p><code>public static  boolean <strong>displayInfo</strong></code></p><hr><h2><a name="field_displayToConsole">displayToConsole</a></h2><p><code>public static  boolean <strong>displayToConsole</strong></code></p><table><tr><td>effects output of Logger</td></tr></table><hr><h2><a name="field_displayWarnings">displayWarnings</a></h2><p><code>public static  boolean <strong>displayWarnings</strong></code></p><hr><h2><a name="field_headParsing">headParsing</a></h2><p><code>public static  boolean <strong>headParsing</strong></code></p><hr><h2><a name="field_jsDebugContextAssist">jsDebugContextAssist</a></h2><p><code>public static  boolean <strong>jsDebugContextAssist</strong></code></p><hr><h2><a name="field_jsDebugSyntaxColoring">jsDebugSyntaxColoring</a></h2><p><code>public static  boolean <strong>jsDebugSyntaxColoring</strong></code></p><hr><h2><a name="field_LOCKS">LOCKS</a></h2><p><code>public static  boolean <strong>LOCKS</strong></code></p><hr><h2><a name="field_perfTest">perfTest</a></h2><p><code>public static  boolean <strong>perfTest</strong></code></p><hr><h2><a name="field_perfTestAdapterClassLoading">perfTestAdapterClassLoading</a></h2><p><code>public static  boolean <strong>perfTestAdapterClassLoading</strong></code></p><hr><h2><a name="field_perfTestFormat">perfTestFormat</a></h2><p><code>public static  boolean <strong>perfTestFormat</strong></code></p><hr><h2><a name="field_perfTestRawStructuredDocumentOnly">perfTestRawStructuredDocumentOnly</a></h2><p><code>public static  boolean <strong>perfTestRawStructuredDocumentOnly</strong></code></p><hr><h2><a name="field_perfTestStructuredDocumentEventOnly">perfTestStructuredDocumentEventOnly</a></h2><p><code>public static  boolean <strong>perfTestStructuredDocumentEventOnly</strong></code></p><hr><h2><a name="field_perfTestStructuredDocumentOnly">perfTestStructuredDocumentOnly</a></h2><p><code>public static  boolean <strong>perfTestStructuredDocumentOnly</strong></code></p><hr><h2><a name="field_syntaxHighlighting">syntaxHighlighting</a></h2><p><code>public static  boolean <strong>syntaxHighlighting</strong></code></p><hr><h2><a name="field_useStandardEolInWidget">useStandardEolInWidget</a></h2><p><code>public static  boolean <strong>useStandardEolInWidget</strong></code></p><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Constructor Detail
+               </h2></td></tr></table><h2><a name="con_Debug">Debug</a></h2><p><code>public <strong>Debug</strong>()</code></p><p>Debug constructor comment.</p><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Methods Detail
+               </h2></td></tr></table><h2><a name="method_dump">dump</a></h2><p><code>public void <strong>dump</strong>(IStructuredDocument structuredDocument)</code></p><p>For tests and debug only</p><h3>Parameters</h3><p><code>structuredDocument</code></p><hr><h2><a name="method_dump">dump</a></h2><p><code>public void <strong>dump</strong>(IStructuredDocument structuredDocument
+         ,
+      boolean verbose)</code></p><p></p><h3>Parameters</h3><p><code>structuredDocument</code></p><p><code>verbose</code></p><hr><h2><a name="method_dump">dump</a></h2><p><code>public void <strong>dump</strong>(ITextRegionCollection region
+         ,
+      boolean verbose)</code></p><p></p><h3>Parameters</h3><p><code>region</code></p><p><code>verbose</code></p><hr><h2><a name="method_println">println</a></h2><p><code>public void <strong>println</strong>(java.lang.String msg)</code></p><p>Simple utility to make sure println's are some what in order</p><h3>Parameters</h3><p><code>msg</code></p><hr><h2><a name="method_toStringUtil">toStringUtil</a></h2><p><code>public java.lang.String <strong>toStringUtil</strong>(IStructuredDocument object)</code></p><p></p><h3>Parameters</h3><p><code>object</code></p><h3>Returns</h3><p><code>java.lang.String</code></p><hr><h2><a name="method_toStringUtil">toStringUtil</a></h2><p><code>public java.lang.String <strong>toStringUtil</strong>(ITextRegionCollection object)</code></p><p></p><h3>Parameters</h3><p><code>object</code></p><h3>Returns</h3><p><code>java.lang.String</code></p><hr></body></html>
\ No newline at end of file
diff --git a/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.core.internal.util.FileUtil.html b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.core.internal.util.FileUtil.html
new file mode 100644
index 0000000..faadb51
--- /dev/null
+++ b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.core.internal.util.FileUtil.html
@@ -0,0 +1,11 @@
+<html><body><p><font size="+1"><strong>Package org.eclipse.wst.xsl.core.internal.util</strong></font></p><hr><h2><font size="-1"><strong>org.eclipse.wst.xsl.core.internal.util</strong></font><br>
+               Class FileUtil</h2><br><hr><pre>public class <strong>FileUtil</strong>
+extends java.lang.Object</pre>This is a general file utility class.<p></p><hr><table width="100%" border="1"><tr bgcolor="#CCCCFF"><td width="100%"><h2>Constructor Summary</h2></td></tr><tr><td><code><strong><a href="#con_FileUtil">FileUtil</a></strong>()</code></td></tr></table><br><table width="100%" border="1"><tr cols="2" bgcolor="#CCCCFF"><td colspan="2" width="100%"><h2>Method Summary</h2></td></tr><tr valign="top"><td width="20%" align="right"><code>public static boolean</code></td><td width="" align="left"><code><a href="#method_isXMLFile">isXMLFile</a>(IFile file)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               Determines if a file is one of the valid XML content types.</td></tr><tr valign="top"><td width="20%" align="right"><code>public static boolean</code></td><td width="" align="left"><code><a href="#method_isXSLFile">isXSLFile</a>(IFile file)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               Determines if a file is a XSLT File.</td></tr></table><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Constructor Detail
+               </h2></td></tr></table><h2><a name="con_FileUtil">FileUtil</a></h2><p><code>public <strong>FileUtil</strong>()</code></p><p></p><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Methods Detail
+               </h2></td></tr></table><h2><a name="method_isXMLFile">isXMLFile</a></h2><p><code>public boolean <strong>isXMLFile</strong>(IFile file)</code></p><p>Determines if a file is one of the valid XML content types.</p><h3>Parameters</h3><p><code>file</code> - The input IFile to check</p><h3>Returns</h3><p><code>boolean</code> - True if it is a XML file, false otherwise.</p><hr><h2><a name="method_isXSLFile">isXSLFile</a></h2><p><code>public boolean <strong>isXSLFile</strong>(IFile file)</code></p><p>Determines if a file is a XSLT File.</p><h3>Parameters</h3><p><code>file</code> - The input IFile to check.</p><h3>Returns</h3><p><code>boolean</code> - True if it is a XSLT file, false otherwise.</p><hr></body></html>
\ No newline at end of file
diff --git a/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.core.internal.util.StructuredDocumentUtil.html b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.core.internal.util.StructuredDocumentUtil.html
new file mode 100644
index 0000000..c874726
--- /dev/null
+++ b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.core.internal.util.StructuredDocumentUtil.html
@@ -0,0 +1,15 @@
+<html><body><p><font size="+1"><strong>Package org.eclipse.wst.xsl.core.internal.util</strong></font></p><hr><h2><font size="-1"><strong>org.eclipse.wst.xsl.core.internal.util</strong></font><br>
+               Class StructuredDocumentUtil</h2><br><hr><pre>public class <strong>StructuredDocumentUtil</strong>
+extends java.lang.Object</pre>General Purpose utility classes to convert from StructuredDocument to DOM.<p></p><hr><table width="100%" border="1"><tr bgcolor="#CCCCFF"><td width="100%"><h2>Constructor Summary</h2></td></tr><tr><td><code><strong><a href="#con_StructuredDocumentUtil">StructuredDocumentUtil</a></strong>()</code></td></tr></table><br><table width="100%" border="1"><tr cols="2" bgcolor="#CCCCFF"><td colspan="2" width="100%"><h2>Method Summary</h2></td></tr><tr valign="top"><td width="20%" align="right"><code>public static IDOMNode</code></td><td width="" align="left"><code><a href="#method_getNode">getNode</a>(IStructuredDocumentRegion documentRegion
+         ,
+      ITextRegion textRegion)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               Given a StructuredDocumentRegion and a TextRegion, return a
+ IDOMNode for that particular position in the StructuredDocument</td></tr></table><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Constructor Detail
+               </h2></td></tr></table><h2><a name="con_StructuredDocumentUtil">StructuredDocumentUtil</a></h2><p><code>public <strong>StructuredDocumentUtil</strong>()</code></p><p></p><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Methods Detail
+               </h2></td></tr></table><h2><a name="method_getNode">getNode</a></h2><p><code>public IDOMNode <strong>getNode</strong>(IStructuredDocumentRegion documentRegion
+         ,
+      ITextRegion textRegion)</code></p><p>Given a StructuredDocumentRegion and a TextRegion, return a
+ IDOMNode for that particular position in the StructuredDocument</p><h3>Parameters</h3><p><code>documentRegion</code></p><p><code>textRegion</code></p><h3>Returns</h3><p><code>IDOMNode</code> - IDOMNode</p><hr></body></html>
\ No newline at end of file
diff --git a/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.core.internal.util.XMLContentType.html b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.core.internal.util.XMLContentType.html
new file mode 100644
index 0000000..ebc69fb
--- /dev/null
+++ b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.core.internal.util.XMLContentType.html
@@ -0,0 +1,10 @@
+<html><body><p><font size="+1"><strong>Package org.eclipse.wst.xsl.core.internal.util</strong></font></p><hr><h2><font size="-1"><strong>org.eclipse.wst.xsl.core.internal.util</strong></font><br>
+               Class XMLContentType</h2><br><hr><pre>public class <strong>XMLContentType</strong>
+extends java.lang.Object</pre>XMLContetType handles the gathering of XML content type related information
+ between the platforms xml content type and WTP's specific version.<p></p><p></p><hr><table width="100%" border="1"><tr bgcolor="#CCCCFF"><td width="100%"><h2>Constructor Summary</h2></td></tr><tr><td><code><strong><a href="#con_XMLContentType">XMLContentType</a></strong>()</code></td></tr></table><br><table width="100%" border="1"><tr cols="2" bgcolor="#CCCCFF"><td colspan="2" width="100%"><h2>Method Summary</h2></td></tr><tr valign="top"><td width="20%" align="right"><code>public java.lang.String[]</code></td><td width="" align="left"><code><a href="#method_getFileExtensions">getFileExtensions</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               Returns all the extensions associated with an XML Content Type.</td></tr></table><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Constructor Detail
+               </h2></td></tr></table><h2><a name="con_XMLContentType">XMLContentType</a></h2><p><code>public <strong>XMLContentType</strong>()</code></p><p></p><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Methods Detail
+               </h2></td></tr></table><h2><a name="method_getFileExtensions">getFileExtensions</a></h2><p><code>public java.lang.String[] <strong>getFileExtensions</strong>()</code></p><p>Returns all the extensions associated with an XML Content Type.</p><h3>Returns</h3><p><code>java.lang.String[]</code> - The array of file extensions</p><hr></body></html>
\ No newline at end of file
diff --git a/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.core.internal.validation.MaxErrorsExceededException.html b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.core.internal.validation.MaxErrorsExceededException.html
new file mode 100644
index 0000000..40b24cf
--- /dev/null
+++ b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.core.internal.validation.MaxErrorsExceededException.html
@@ -0,0 +1,6 @@
+<html><body><p><font size="+1"><strong>Package org.eclipse.wst.xsl.core.internal.validation</strong></font></p><hr><h2><font size="-1"><strong>org.eclipse.wst.xsl.core.internal.validation</strong></font><br>
+               Class MaxErrorsExceededException</h2><br><hr><pre>public class <strong>MaxErrorsExceededException</strong>
+extends java.lang.Exception</pre>An exception used to indicate whether the maximum number of errors has been reached 
+ for a given Stylesheet validation.<p></p><hr><table width="100%" border="1"><tr bgcolor="#CCCCFF"><td width="100%"><h2>Constructor Summary</h2></td></tr><tr><td><code><strong><a href="#con_MaxErrorsExceededException">MaxErrorsExceededException</a></strong>()</code></td></tr></table><br><table width="100%" border="1"><tr cols="2" bgcolor="#CCCCFF"><td colspan="2" width="100%"><h2>Method Summary</h2></td></tr></table><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Constructor Detail
+               </h2></td></tr></table><h2><a name="con_MaxErrorsExceededException">MaxErrorsExceededException</a></h2><p><code>public <strong>MaxErrorsExceededException</strong>()</code></p><p></p><hr></body></html>
\ No newline at end of file
diff --git a/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.core.internal.validation.XSLValidationMessage.html b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.core.internal.validation.XSLValidationMessage.html
new file mode 100644
index 0000000..23b453f
--- /dev/null
+++ b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.core.internal.validation.XSLValidationMessage.html
@@ -0,0 +1,30 @@
+<html><body><p><font size="+1"><strong>Package org.eclipse.wst.xsl.core.internal.validation</strong></font></p><hr><h2><font size="-1"><strong>org.eclipse.wst.xsl.core.internal.validation</strong></font><br>
+               Class XSLValidationMessage</h2><br><hr><pre>public class <strong>XSLValidationMessage</strong>
+extends ValidationMessage</pre>A validation message specific to the XSL validator which adds the ability 
+ to specify the XSL node.<p></p><p></p><hr><table width="100%" border="1"><tr bgcolor="#CCCCFF"><td width="100%"><h2>Constructor Summary</h2></td></tr><tr><td><code><strong><a href="#con_XSLValidationMessage">XSLValidationMessage</a></strong>(java.lang.String message
+         ,
+      int lineNumber
+         ,
+      int columnNumber
+         ,
+      java.lang.String uri)</code></td></tr></table><br><table width="100%" border="1"><tr cols="2" bgcolor="#CCCCFF"><td colspan="2" width="100%"><h2>Method Summary</h2></td></tr><tr valign="top"><td width="20%" align="right"><code>public org.eclipse.wst.xsl.core.model.XSLNode</code></td><td width="" align="left"><code><a href="#method_getNode">getNode</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               Get the node that this message applies to.</td></tr><tr valign="top"><td width="20%" align="right"><code>public int</code></td><td width="" align="left"><code><a href="#method_getRealSeverity">getRealSeverity</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               Workaround for superclass's bizarre handling of severity</td></tr><tr valign="top"><td width="20%" align="right"><code>public void</code></td><td width="" align="left"><code><a href="#method_setNode">setNode</a>(org.eclipse.wst.xsl.core.model.XSLNode node)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               Set the node that this message applies to.</td></tr><tr valign="top"><td width="20%" align="right"><code>public void</code></td><td width="" align="left"><code><a href="#method_setSeverity">setSeverity</a>(int sev)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               The severity set here should be the org.eclipse.wst.validation.internal.provisional.core.IMessage severity.</td></tr><tr valign="top"><td width="20%" align="right"><code>public java.lang.String</code></td><td width="" align="left"><code><a href="#method_toString">toString</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr></table><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Constructor Detail
+               </h2></td></tr></table><h2><a name="con_XSLValidationMessage">XSLValidationMessage</a></h2><p><code>public <strong>XSLValidationMessage</strong>(java.lang.String message
+         ,
+      int lineNumber
+         ,
+      int columnNumber
+         ,
+      java.lang.String uri)</code></p><p>Create a new instance of this.</p><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Methods Detail
+               </h2></td></tr></table><h2><a name="method_getNode">getNode</a></h2><p><code>public org.eclipse.wst.xsl.core.model.XSLNode <strong>getNode</strong>()</code></p><p>Get the node that this message applies to.</p><h3>Returns</h3><p><code>org.eclipse.wst.xsl.core.model.XSLNode</code> - the node</p><hr><h2><a name="method_getRealSeverity">getRealSeverity</a></h2><p><code>public int <strong>getRealSeverity</strong>()</code></p><p>Workaround for superclass's bizarre handling of severity</p><h3>Returns</h3><p><code>int</code></p><hr><h2><a name="method_setNode">setNode</a></h2><p><code>public void <strong>setNode</strong>(org.eclipse.wst.xsl.core.model.XSLNode node)</code></p><p>Set the node that this message applies to.</p><h3>Parameters</h3><p><code>node</code> - the node</p><hr><h2><a name="method_setSeverity">setSeverity</a></h2><p><code>public void <strong>setSeverity</strong>(int sev)</code></p><p>The severity set here should be the org.eclipse.wst.validation.internal.provisional.core.IMessage severity.</p><h3>Parameters</h3><p><code>sev</code></p><hr><h2><a name="method_toString">toString</a></h2><p><code>public java.lang.String <strong>toString</strong>()</code></p><p></p><h3>Returns</h3><p><code>java.lang.String</code></p><hr></body></html>
\ No newline at end of file
diff --git a/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.core.internal.validation.XSLValidationReport.html b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.core.internal.validation.XSLValidationReport.html
new file mode 100644
index 0000000..1c57223
--- /dev/null
+++ b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.core.internal.validation.XSLValidationReport.html
@@ -0,0 +1,39 @@
+<html><body><p><font size="+1"><strong>Package org.eclipse.wst.xsl.core.internal.validation</strong></font></p><hr><h2><font size="-1"><strong>org.eclipse.wst.xsl.core.internal.validation</strong></font><br>
+               Class XSLValidationReport</h2><br><hr><pre>public class <strong>XSLValidationReport</strong>
+extends java.lang.Object</pre>A validation report for the XSL validator.<p></p><p></p><hr><table width="100%" border="1"><tr bgcolor="#CCCCFF"><td width="100%"><h2>Constructor Summary</h2></td></tr><tr><td><code><strong><a href="#con_XSLValidationReport">XSLValidationReport</a></strong>(java.lang.String uri)</code></td></tr></table><br><table width="100%" border="1"><tr cols="2" bgcolor="#CCCCFF"><td colspan="2" width="100%"><h2>Method Summary</h2></td></tr><tr valign="top"><td width="20%" align="right"><code>public ValidationMessage</code></td><td width="" align="left"><code><a href="#method_addError">addError</a>(org.eclipse.wst.xsl.core.model.XSLNode node
+         ,
+      java.lang.String message)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               Add an error message for the given XSL node.</td></tr><tr valign="top"><td width="20%" align="right"><code>public ValidationMessage</code></td><td width="" align="left"><code><a href="#method_addInfo">addInfo</a>(org.eclipse.wst.xsl.core.model.XSLNode node
+         ,
+      java.lang.String message)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               Add an info message for the given XSL node.</td></tr><tr valign="top"><td width="20%" align="right"><code>public ValidationMessage</code></td><td width="" align="left"><code><a href="#method_addWarning">addWarning</a>(org.eclipse.wst.xsl.core.model.XSLNode node
+         ,
+      java.lang.String message)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               Add an warning message for the given XSL node.</td></tr><tr valign="top"><td width="20%" align="right"><code>public java.util.List</code></td><td width="" align="left"><code><a href="#method_getErrors">getErrors</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               Get the validation messages.</td></tr><tr valign="top"><td width="20%" align="right"><code>public java.lang.String</code></td><td width="" align="left"><code><a href="#method_getFileURI">getFileURI</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               Get the URI that this report applies to.</td></tr><tr valign="top"><td width="20%" align="right"><code>public java.util.List</code></td><td width="" align="left"><code><a href="#method_getInfos">getInfos</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               Get the validation messages.</td></tr><tr valign="top"><td width="20%" align="right"><code>public java.util.HashMap</code></td><td width="" align="left"><code><a href="#method_getNestedMessages">getNestedMessages</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public ValidationMessage[]</code></td><td width="" align="left"><code><a href="#method_getValidationMessages">getValidationMessages</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               Returns an array of validation messages.</td></tr><tr valign="top"><td width="20%" align="right"><code>public java.util.List</code></td><td width="" align="left"><code><a href="#method_getWarnings">getWarnings</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               Get the validation messages.</td></tr><tr valign="top"><td width="20%" align="right"><code>public boolean</code></td><td width="" align="left"><code><a href="#method_isValid">isValid</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               Returns whether the file is valid. The file may have warnings associated with it.</td></tr></table><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Constructor Detail
+               </h2></td></tr></table><h2><a name="con_XSLValidationReport">XSLValidationReport</a></h2><p><code>public <strong>XSLValidationReport</strong>(java.lang.String uri)</code></p><p>Create a new instance of this.</p><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Methods Detail
+               </h2></td></tr></table><h2><a name="method_addError">addError</a></h2><p><code>public ValidationMessage <strong>addError</strong>(org.eclipse.wst.xsl.core.model.XSLNode node
+         ,
+      java.lang.String message)</code></p><p>Add an error message for the given XSL node.</p><h3>Parameters</h3><p><code>node</code> - the node the warning applies to</p><p><code>message</code> - the message to associate with the node</p><h3>Returns</h3><p><code>ValidationMessage</code> - the validation message created</p><hr><h2><a name="method_addInfo">addInfo</a></h2><p><code>public ValidationMessage <strong>addInfo</strong>(org.eclipse.wst.xsl.core.model.XSLNode node
+         ,
+      java.lang.String message)</code></p><p>Add an info message for the given XSL node.</p><h3>Parameters</h3><p><code>node</code> - the node the warning applies to</p><p><code>message</code> - the message to associate with the node</p><h3>Returns</h3><p><code>ValidationMessage</code> - the validation message created</p><hr><h2><a name="method_addWarning">addWarning</a></h2><p><code>public ValidationMessage <strong>addWarning</strong>(org.eclipse.wst.xsl.core.model.XSLNode node
+         ,
+      java.lang.String message)</code></p><p>Add an warning message for the given XSL node.</p><h3>Parameters</h3><p><code>node</code> - the node the warning applies to</p><p><code>message</code> - the message to associate with the node</p><h3>Returns</h3><p><code>ValidationMessage</code> - the validation message created</p><hr><h2><a name="method_getErrors">getErrors</a></h2><p><code>public java.util.List <strong>getErrors</strong>()</code></p><p>Get the validation messages.</p><h3>Returns</h3><p><code>java.util.List</code> - validation messages</p><hr><h2><a name="method_getFileURI">getFileURI</a></h2><p><code>public java.lang.String <strong>getFileURI</strong>()</code></p><p>Get the URI that this report applies to.</p><h3>Returns</h3><p><code>java.lang.String</code> - the URI</p><hr><h2><a name="method_getInfos">getInfos</a></h2><p><code>public java.util.List <strong>getInfos</strong>()</code></p><p>Get the validation messages.</p><h3>Returns</h3><p><code>java.util.List</code> - validation messages</p><hr><h2><a name="method_getNestedMessages">getNestedMessages</a></h2><p><code>public java.util.HashMap <strong>getNestedMessages</strong>()</code></p><p></p><h3>Returns</h3><p><code>java.util.HashMap</code> - null</p><hr><h2><a name="method_getValidationMessages">getValidationMessages</a></h2><p><code>public ValidationMessage[] <strong>getValidationMessages</strong>()</code></p><p>Returns an array of validation messages.</p><h3>Returns</h3><p><code>ValidationMessage[]</code> - An array of validation messages.</p><hr><h2><a name="method_getWarnings">getWarnings</a></h2><p><code>public java.util.List <strong>getWarnings</strong>()</code></p><p>Get the validation messages.</p><h3>Returns</h3><p><code>java.util.List</code> - validation messages</p><hr><h2><a name="method_isValid">isValid</a></h2><p><code>public boolean <strong>isValid</strong>()</code></p><p>Returns whether the file is valid. The file may have warnings associated with it.</p><h3>Returns</h3><p><code>boolean</code> - True if the file is valid, false otherwise.</p><hr></body></html>
\ No newline at end of file
diff --git a/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.core.internal.validation.XSLValidator.html b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.core.internal.validation.XSLValidator.html
new file mode 100644
index 0000000..6d47744
--- /dev/null
+++ b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.core.internal.validation.XSLValidator.html
@@ -0,0 +1,27 @@
+<html><body><p><font size="+1"><strong>Package org.eclipse.wst.xsl.core.internal.validation</strong></font></p><hr><h2><font size="-1"><strong>org.eclipse.wst.xsl.core.internal.validation</strong></font><br>
+               Class XSLValidator</h2><br><hr><pre>public class <strong>XSLValidator</strong>
+extends java.lang.Object</pre>The XSL validator for workspace XSL files.<p></p><hr><table width="100%" border="1"><tr cols="2" bgcolor="#CCCCFF"><td colspan="2" width="100%"><h2>Method Summary</h2></td></tr><tr valign="top"><td width="20%" align="right"><code>public static org.eclipse.wst.xsl.core.internal.validation.XSLValidator</code></td><td width="" align="left"><code><a href="#method_getInstance">getInstance</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               Get the singleton XSLValidator instance.</td></tr><tr valign="top"><td width="20%" align="right"><code>public ValidationReport</code></td><td width="" align="left"><code><a href="#method_validate">validate</a>(IFile xslFile
+         ,
+      boolean forceBuild)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               Validate the given XSL file. Same as
+ <code>validate(xslFile,report,forceBuild)</code> except a new report is
+ created and returned.</td></tr><tr valign="top"><td width="20%" align="right"><code>public void</code></td><td width="" align="left"><code><a href="#method_validate">validate</a>(IFile xslFile
+         ,
+      org.eclipse.wst.xsl.core.internal.validation.XSLValidationReport report
+         ,
+      boolean forceBuild)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               Validate the given XSL file using the specified report.</td></tr></table><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Methods Detail
+               </h2></td></tr></table><h2><a name="method_getInstance">getInstance</a></h2><p><code>public org.eclipse.wst.xsl.core.internal.validation.XSLValidator <strong>getInstance</strong>()</code></p><p>Get the singleton XSLValidator instance.</p><h3>Returns</h3><p><code>org.eclipse.wst.xsl.core.internal.validation.XSLValidator</code> - the singleton XSLValidator instance</p><hr><h2><a name="method_validate">validate</a></h2><p><code>public ValidationReport <strong>validate</strong>(IFile xslFile
+         ,
+      boolean forceBuild)</code></p><p>Validate the given XSL file. Same as
+ <code>validate(xslFile,report,forceBuild)</code> except a new report is
+ created and returned.</p><h3>Parameters</h3><p><code>xslFile</code> - the XSL file</p><p><code>forceBuild</code> - true if build should always be forced</p><h3>Returns</h3><p><code>ValidationReport</code> - the validation report</p><h3>Throws:</h3><p><code>CoreException - if any exception occurs while validating</code></p><hr><h2><a name="method_validate">validate</a></h2><p><code>public void <strong>validate</strong>(IFile xslFile
+         ,
+      org.eclipse.wst.xsl.core.internal.validation.XSLValidationReport report
+         ,
+      boolean forceBuild)</code></p><p>Validate the given XSL file using the specified report.</p><h3>Parameters</h3><p><code>xslFile</code> - the XSL file</p><p><code>report</code> - the report to use for reporting validation errors</p><p><code>forceBuild</code> - true if build should always be forced</p><h3>Throws:</h3><p><code>CoreException - if any exception occurs while validating</code></p><hr></body></html>
\ No newline at end of file
diff --git a/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.core.internal.validation.eclipse.Validator.html b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.core.internal.validation.eclipse.Validator.html
new file mode 100644
index 0000000..dbb5d78
--- /dev/null
+++ b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.core.internal.validation.eclipse.Validator.html
@@ -0,0 +1,53 @@
+<html><body><p><font size="+1"><strong>Package org.eclipse.wst.xsl.core.internal.validation.eclipse</strong></font></p><hr><h2><font size="-1"><strong>org.eclipse.wst.xsl.core.internal.validation.eclipse</strong></font><br>
+               Class Validator</h2><br><hr><pre>public class <strong>Validator</strong>
+extends AbstractNestedValidator</pre>The XSL validator extends the XML <code>AbstractNestedValidator</code>.<p></p><hr><table width="100%" border="1"><tr bgcolor="#CCCCFF"><td width="100%"><h2>Constructor Summary</h2></td></tr><tr><td><code><strong><a href="#con_Validator">Validator</a></strong>()</code></td></tr></table><br><table width="100%" border="1"><tr cols="2" bgcolor="#CCCCFF"><td colspan="2" width="100%"><h2>Method Summary</h2></td></tr><tr valign="top"><td width="20%" align="right"><code>protected void</code></td><td width="" align="left"><code><a href="#method_addInfoToMessage">addInfoToMessage</a>(ValidationMessage validationMessage
+         ,
+      IMessage message)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public void</code></td><td width="" align="left"><code><a href="#method_clean">clean</a>(IProject project
+         ,
+      ValidationState state
+         ,
+      IProgressMonitor monitor)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public ValidationResult</code></td><td width="" align="left"><code><a href="#method_validate">validate</a>(IResource resource
+         ,
+      int kind
+         ,
+      ValidationState state
+         ,
+      IProgressMonitor monitor)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public ValidationReport</code></td><td width="" align="left"><code><a href="#method_validate">validate</a>(java.lang.String uri
+         ,
+      java.io.InputStream inputstream
+         ,
+      NestedValidatorContext context)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public IStatus</code></td><td width="" align="left"><code><a href="#method_validateInJob">validateInJob</a>(IValidationContext context
+         ,
+      IReporter reporter)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr></table><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Constructor Detail
+               </h2></td></tr></table><h2><a name="con_Validator">Validator</a></h2><p><code>public <strong>Validator</strong>()</code></p><p></p><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Methods Detail
+               </h2></td></tr></table><h2><a name="method_addInfoToMessage">addInfoToMessage</a></h2><p><code>protected void <strong>addInfoToMessage</strong>(ValidationMessage validationMessage
+         ,
+      IMessage message)</code></p><p></p><h3>Parameters</h3><p><code>validationMessage</code></p><p><code>message</code></p><hr><h2><a name="method_clean">clean</a></h2><p><code>public void <strong>clean</strong>(IProject project
+         ,
+      ValidationState state
+         ,
+      IProgressMonitor monitor)</code></p><p></p><h3>Parameters</h3><p><code>project</code></p><p><code>state</code></p><p><code>monitor</code></p><hr><h2><a name="method_validate">validate</a></h2><p><code>public ValidationResult <strong>validate</strong>(IResource resource
+         ,
+      int kind
+         ,
+      ValidationState state
+         ,
+      IProgressMonitor monitor)</code></p><p></p><h3>Parameters</h3><p><code>resource</code></p><p><code>kind</code></p><p><code>state</code></p><p><code>monitor</code></p><h3>Returns</h3><p><code>ValidationResult</code></p><hr><h2><a name="method_validate">validate</a></h2><p><code>public ValidationReport <strong>validate</strong>(java.lang.String uri
+         ,
+      java.io.InputStream inputstream
+         ,
+      NestedValidatorContext context)</code></p><p></p><h3>Parameters</h3><p><code>uri</code></p><p><code>inputstream</code></p><p><code>context</code></p><h3>Returns</h3><p><code>ValidationReport</code></p><hr><h2><a name="method_validateInJob">validateInJob</a></h2><p><code>public IStatus <strong>validateInJob</strong>(IValidationContext context
+         ,
+      IReporter reporter)</code></p><p></p><h3>Parameters</h3><p><code>context</code></p><p><code>reporter</code></p><h3>Returns</h3><p><code>IStatus</code></p><h3>Throws:</h3><p><code>ValidationException</code></p><hr></body></html>
\ No newline at end of file
diff --git a/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.core.internal.validation.eclipse.Validator2.html b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.core.internal.validation.eclipse.Validator2.html
new file mode 100644
index 0000000..c93c54d
--- /dev/null
+++ b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.core.internal.validation.eclipse.Validator2.html
@@ -0,0 +1,47 @@
+<html><body><p><font size="+1"><strong>Package org.eclipse.wst.xsl.core.internal.validation.eclipse</strong></font></p><hr><h2><font size="-1"><strong>org.eclipse.wst.xsl.core.internal.validation.eclipse</strong></font><br>
+               Class Validator2</h2><br><hr><pre>public class <strong>Validator2</strong>
+extends AbstractValidator</pre>Validator for both build validation (AbstractValidator) and as-you-type validation (IValidatorJob).<p></p><hr><table width="100%" border="1"><tr bgcolor="#CCCCFF"><td width="100%"><h2>Constructor Summary</h2></td></tr><tr><td><code><strong><a href="#con_Validator2">Validator2</a></strong>()</code></td></tr></table><br><table width="100%" border="1"><tr cols="2" bgcolor="#CCCCFF"><td colspan="2" width="100%"><h2>Method Summary</h2></td></tr><tr valign="top"><td width="20%" align="right"><code>public void</code></td><td width="" align="left"><code><a href="#method_clean">clean</a>(IProject project
+         ,
+      ValidationState state
+         ,
+      IProgressMonitor monitor)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public void</code></td><td width="" align="left"><code><a href="#method_cleanup">cleanup</a>(IReporter reporter)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public ISchedulingRule</code></td><td width="" align="left"><code><a href="#method_getSchedulingRule">getSchedulingRule</a>(IValidationContext helper)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public ValidationResult</code></td><td width="" align="left"><code><a href="#method_validate">validate</a>(IResource resource
+         ,
+      int kind
+         ,
+      ValidationState state
+         ,
+      IProgressMonitor monitor)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public void</code></td><td width="" align="left"><code><a href="#method_validate">validate</a>(IValidationContext helper
+         ,
+      IReporter reporter)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public IStatus</code></td><td width="" align="left"><code><a href="#method_validateInJob">validateInJob</a>(IValidationContext helper
+         ,
+      IReporter reporter)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr></table><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Constructor Detail
+               </h2></td></tr></table><h2><a name="con_Validator2">Validator2</a></h2><p><code>public <strong>Validator2</strong>()</code></p><p></p><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Methods Detail
+               </h2></td></tr></table><h2><a name="method_clean">clean</a></h2><p><code>public void <strong>clean</strong>(IProject project
+         ,
+      ValidationState state
+         ,
+      IProgressMonitor monitor)</code></p><p></p><h3>Parameters</h3><p><code>project</code></p><p><code>state</code></p><p><code>monitor</code></p><hr><h2><a name="method_cleanup">cleanup</a></h2><p><code>public void <strong>cleanup</strong>(IReporter reporter)</code></p><p></p><h3>Parameters</h3><p><code>reporter</code></p><hr><h2><a name="method_getSchedulingRule">getSchedulingRule</a></h2><p><code>public ISchedulingRule <strong>getSchedulingRule</strong>(IValidationContext helper)</code></p><p></p><h3>Parameters</h3><p><code>helper</code></p><h3>Returns</h3><p><code>ISchedulingRule</code></p><hr><h2><a name="method_validate">validate</a></h2><p><code>public ValidationResult <strong>validate</strong>(IResource resource
+         ,
+      int kind
+         ,
+      ValidationState state
+         ,
+      IProgressMonitor monitor)</code></p><p></p><h3>Parameters</h3><p><code>resource</code></p><p><code>kind</code></p><p><code>state</code></p><p><code>monitor</code></p><h3>Returns</h3><p><code>ValidationResult</code></p><hr><h2><a name="method_validate">validate</a></h2><p><code>public void <strong>validate</strong>(IValidationContext helper
+         ,
+      IReporter reporter)</code></p><p></p><h3>Parameters</h3><p><code>helper</code></p><p><code>reporter</code></p><h3>Throws:</h3><p><code>ValidationException</code></p><hr><h2><a name="method_validateInJob">validateInJob</a></h2><p><code>public IStatus <strong>validateInJob</strong>(IValidationContext helper
+         ,
+      IReporter reporter)</code></p><p></p><h3>Parameters</h3><p><code>helper</code></p><p><code>reporter</code></p><h3>Returns</h3><p><code>IStatus</code></p><h3>Throws:</h3><p><code>ValidationException</code></p><hr></body></html>
\ No newline at end of file
diff --git a/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.core.internal.validation.eclipse.XSLValidationReport.html b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.core.internal.validation.eclipse.XSLValidationReport.html
new file mode 100644
index 0000000..8239802
--- /dev/null
+++ b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.core.internal.validation.eclipse.XSLValidationReport.html
@@ -0,0 +1,15 @@
+<html><body><p><font size="+1"><strong>Package org.eclipse.wst.xsl.core.internal.validation.eclipse</strong></font></p><hr><h2><font size="-1"><strong>org.eclipse.wst.xsl.core.internal.validation.eclipse</strong></font><br>
+               Class XSLValidationReport</h2><br><hr><pre>public class <strong>XSLValidationReport</strong>
+extends java.lang.Object</pre><hr><table width="100%" border="1"><tr bgcolor="#CCCCFF"><td width="100%"><h2>Constructor Summary</h2></td></tr><tr><td><code><strong><a href="#con_XSLValidationReport">XSLValidationReport</a></strong>(java.lang.String uri)</code></td></tr></table><br><table width="100%" border="1"><tr cols="2" bgcolor="#CCCCFF"><td colspan="2" width="100%"><h2>Method Summary</h2></td></tr><tr valign="top"><td width="20%" align="right"><code>public java.lang.String</code></td><td width="" align="left"><code><a href="#method_getFileURI">getFileURI</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public java.util.HashMap</code></td><td width="" align="left"><code><a href="#method_getNestedMessages">getNestedMessages</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public ValidationMessage[]</code></td><td width="" align="left"><code><a href="#method_getValidationMessages">getValidationMessages</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public boolean</code></td><td width="" align="left"><code><a href="#method_isValid">isValid</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr></table><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Constructor Detail
+               </h2></td></tr></table><h2><a name="con_XSLValidationReport">XSLValidationReport</a></h2><p><code>public <strong>XSLValidationReport</strong>(java.lang.String uri)</code></p><p></p><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Methods Detail
+               </h2></td></tr></table><h2><a name="method_getFileURI">getFileURI</a></h2><p><code>public java.lang.String <strong>getFileURI</strong>()</code></p><p></p><h3>Returns</h3><p><code>java.lang.String</code></p><hr><h2><a name="method_getNestedMessages">getNestedMessages</a></h2><p><code>public java.util.HashMap <strong>getNestedMessages</strong>()</code></p><p></p><h3>Returns</h3><p><code>java.util.HashMap</code></p><hr><h2><a name="method_getValidationMessages">getValidationMessages</a></h2><p><code>public ValidationMessage[] <strong>getValidationMessages</strong>()</code></p><p></p><h3>Returns</h3><p><code>ValidationMessage[]</code></p><hr><h2><a name="method_isValid">isValid</a></h2><p><code>public boolean <strong>isValid</strong>()</code></p><p></p><h3>Returns</h3><p><code>boolean</code></p><hr></body></html>
\ No newline at end of file
diff --git a/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.core.internal.xinclude.XIncluder.html b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.core.internal.xinclude.XIncluder.html
new file mode 100644
index 0000000..d2f3603
--- /dev/null
+++ b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.core.internal.xinclude.XIncluder.html
@@ -0,0 +1,15 @@
+<html><body><p><font size="+1"><strong>Package org.eclipse.wst.xsl.core.internal.xinclude</strong></font></p><hr><h2><font size="-1"><strong>org.eclipse.wst.xsl.core.internal.xinclude</strong></font><br>
+               Class XIncluder</h2><br><hr><pre>public class <strong>XIncluder</strong>
+extends java.lang.Object</pre>XIncluder will read an XML file, that has elements from the XInclude
+ namespace and follows the W3C XInclude specification (http://www.w3.org/TR/xinclude/).
+ It will output a merged file.<p></p><hr><table width="100%" border="1"><tr bgcolor="#CCCCFF"><td width="100%"><h2>Constructor Summary</h2></td></tr><tr><td><code><strong><a href="#con_XIncluder">XIncluder</a></strong>()</code></td></tr></table><br><table width="100%" border="1"><tr cols="2" bgcolor="#CCCCFF"><td colspan="2" width="100%"><h2>Method Summary</h2></td></tr><tr valign="top"><td width="20%" align="right"><code>public void</code></td><td width="" align="left"><code><a href="#method_extractXMLFile">extractXMLFile</a>(java.lang.String in
+         ,
+      java.lang.String out)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               extracXMLFile merges the files referenced by xinclude include elements.</td></tr></table><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Constructor Detail
+               </h2></td></tr></table><h2><a name="con_XIncluder">XIncluder</a></h2><p><code>public <strong>XIncluder</strong>()</code></p><p></p><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Methods Detail
+               </h2></td></tr></table><h2><a name="method_extractXMLFile">extractXMLFile</a></h2><p><code>public void <strong>extractXMLFile</strong>(java.lang.String in
+         ,
+      java.lang.String out)</code></p><p>extracXMLFile merges the files referenced by xinclude include elements.</p><h3>Parameters</h3><p><code>in</code> - The full path to the input XML file</p><p><code>out</code> - The full path to the merged XML file</p><h3>Throws:</h3><p><code>java.lang.Exception</code></p><hr></body></html>
\ No newline at end of file
diff --git a/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.core.model.CallTemplate.html b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.core.model.CallTemplate.html
new file mode 100644
index 0000000..ecad5fc
--- /dev/null
+++ b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.core.model.CallTemplate.html
@@ -0,0 +1,19 @@
+<html><body><p><font size="+1"><strong>Package org.eclipse.wst.xsl.core.model</strong></font></p><hr><h2><font size="-1"><strong>org.eclipse.wst.xsl.core.model</strong></font><br>
+               Class CallTemplate</h2><br><hr><pre>public class <strong>CallTemplate</strong>
+extends org.eclipse.wst.xsl.core.model.XSLElement</pre>The <code>xsl:call-template</code> model element.<p></p><p></p><hr><table width="100%" border="1"><tr cols="2" bgcolor="#CCCCFF"><td colspan="2" width="100%"><h2>Field Summary</h2></td></tr><tr valign="top"><td width="20%" align="right"><code>package-private java.util.List</code></td><td width="80%" align="left"><code><a href="#field_parameters">parameters</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr></table><br><table width="100%" border="1"><tr bgcolor="#CCCCFF"><td width="100%"><h2>Constructor Summary</h2></td></tr><tr><td><code><strong><a href="#con_CallTemplate">CallTemplate</a></strong>(org.eclipse.wst.xsl.core.model.Stylesheet stylesheet)</code></td></tr></table><br><table width="100%" border="1"><tr cols="2" bgcolor="#CCCCFF"><td colspan="2" width="100%"><h2>Method Summary</h2></td></tr><tr valign="top"><td width="20%" align="right"><code>public void</code></td><td width="" align="left"><code><a href="#method_addParameter">addParameter</a>(org.eclipse.wst.xsl.core.model.Parameter parameter)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               Add a parameter to this.</td></tr><tr valign="top"><td width="20%" align="right"><code>public org.eclipse.wst.xsl.core.model.XSLModelObject.Type</code></td><td width="" align="left"><code><a href="#method_getModelType">getModelType</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public java.lang.String</code></td><td width="" align="left"><code><a href="#method_getName">getName</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               Get the value of the <code>name</code> attribute if one exists.</td></tr><tr valign="top"><td width="20%" align="right"><code>public java.util.List</code></td><td width="" align="left"><code><a href="#method_getParameters">getParameters</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               Get the list of parameters associated with this.</td></tr></table><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Field Detail
+               </h2></td></tr></table><h2><a name="field_parameters">parameters</a></h2><p><code>package-private java.util.List <strong>parameters</strong></code></p><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Constructor Detail
+               </h2></td></tr></table><h2><a name="con_CallTemplate">CallTemplate</a></h2><p><code>public <strong>CallTemplate</strong>(org.eclipse.wst.xsl.core.model.Stylesheet stylesheet)</code></p><p>Create a new instance of this.</p><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Methods Detail
+               </h2></td></tr></table><h2><a name="method_addParameter">addParameter</a></h2><p><code>public void <strong>addParameter</strong>(org.eclipse.wst.xsl.core.model.Parameter parameter)</code></p><p>Add a parameter to this.</p><h3>Parameters</h3><p><code>parameter</code> - the parameter to add</p><hr><h2><a name="method_getModelType">getModelType</a></h2><p><code>public org.eclipse.wst.xsl.core.model.XSLModelObject.Type <strong>getModelType</strong>()</code></p><p></p><h3>Returns</h3><p><code>org.eclipse.wst.xsl.core.model.XSLModelObject.Type</code></p><hr><h2><a name="method_getName">getName</a></h2><p><code>public java.lang.String <strong>getName</strong>()</code></p><p>Get the value of the <code>name</code> attribute if one exists.</p><h3>Returns</h3><p><code>java.lang.String</code> - the template name, or null</p><hr><h2><a name="method_getParameters">getParameters</a></h2><p><code>public java.util.List <strong>getParameters</strong>()</code></p><p>Get the list of parameters associated with this.</p><h3>Returns</h3><p><code>java.util.List</code> - a list of parameters</p><hr></body></html>
\ No newline at end of file
diff --git a/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.core.model.Function.html b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.core.model.Function.html
new file mode 100644
index 0000000..868d199
--- /dev/null
+++ b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.core.model.Function.html
@@ -0,0 +1,29 @@
+<html><body><p><font size="+1"><strong>Package org.eclipse.wst.xsl.core.model</strong></font></p><hr><h2><font size="-1"><strong>org.eclipse.wst.xsl.core.model</strong></font><br>
+               Class Function</h2><br><hr><pre>public class <strong>Function</strong>
+extends org.eclipse.wst.xsl.core.model.XSLElement</pre><p></p><hr><table width="100%" border="1"><tr cols="2" bgcolor="#CCCCFF"><td colspan="2" width="100%"><h2>Field Summary</h2></td></tr><tr valign="top"><td width="20%" align="right"><code>package-private java.util.List</code></td><td width="80%" align="left"><code><a href="#field_parameters">parameters</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>package-private java.util.List</code></td><td width="80%" align="left"><code><a href="#field_variables">variables</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr></table><br><table width="100%" border="1"><tr bgcolor="#CCCCFF"><td width="100%"><h2>Constructor Summary</h2></td></tr><tr><td><code><strong><a href="#con_Function">Function</a></strong>(org.eclipse.wst.xsl.core.model.Stylesheet stylesheet)</code></td></tr></table><br><table width="100%" border="1"><tr cols="2" bgcolor="#CCCCFF"><td colspan="2" width="100%"><h2>Method Summary</h2></td></tr><tr valign="top"><td width="20%" align="right"><code>public void</code></td><td width="" align="left"><code><a href="#method_addParameter">addParameter</a>(org.eclipse.wst.xsl.core.model.Parameter parameter)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               Add a parameter to this.</td></tr><tr valign="top"><td width="20%" align="right"><code>public void</code></td><td width="" align="left"><code><a href="#method_addVariable">addVariable</a>(org.eclipse.wst.xsl.core.model.Variable var)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               Add a variable to this.</td></tr><tr valign="top"><td width="20%" align="right"><code>public java.lang.String</code></td><td width="" align="left"><code><a href="#method_getAsValue">getAsValue</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public org.eclipse.wst.xsl.core.model.XSLModelObject.Type</code></td><td width="" align="left"><code><a href="#method_getModelType">getModelType</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public java.lang.String</code></td><td width="" align="left"><code><a href="#method_getName">getName</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               Get the value of the <code>name</code> attribute if one exists.</td></tr><tr valign="top"><td width="20%" align="right"><code>public java.lang.String</code></td><td width="" align="left"><code><a href="#method_getOverRideValue">getOverRideValue</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public java.util.List</code></td><td width="" align="left"><code><a href="#method_getParameters">getParameters</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               Return the parameters defined in this function.</td></tr><tr valign="top"><td width="20%" align="right"><code>public java.util.List</code></td><td width="" align="left"><code><a href="#method_getVariables">getVariables</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               Return the variables defined in this function.</td></tr></table><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Field Detail
+               </h2></td></tr></table><h2><a name="field_parameters">parameters</a></h2><p><code>package-private java.util.List <strong>parameters</strong></code></p><hr><h2><a name="field_variables">variables</a></h2><p><code>package-private java.util.List <strong>variables</strong></code></p><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Constructor Detail
+               </h2></td></tr></table><h2><a name="con_Function">Function</a></h2><p><code>public <strong>Function</strong>(org.eclipse.wst.xsl.core.model.Stylesheet stylesheet)</code></p><p></p><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Methods Detail
+               </h2></td></tr></table><h2><a name="method_addParameter">addParameter</a></h2><p><code>public void <strong>addParameter</strong>(org.eclipse.wst.xsl.core.model.Parameter parameter)</code></p><p>Add a parameter to this.</p><h3>Parameters</h3><p><code>parameter</code> - the parameter to add</p><hr><h2><a name="method_addVariable">addVariable</a></h2><p><code>public void <strong>addVariable</strong>(org.eclipse.wst.xsl.core.model.Variable var)</code></p><p>Add a variable to this.</p><h3>Parameters</h3><p><code>var</code> - the variable to add</p><hr><h2><a name="method_getAsValue">getAsValue</a></h2><p><code>public java.lang.String <strong>getAsValue</strong>()</code></p><p></p><h3>Returns</h3><p><code>java.lang.String</code></p><hr><h2><a name="method_getModelType">getModelType</a></h2><p><code>public org.eclipse.wst.xsl.core.model.XSLModelObject.Type <strong>getModelType</strong>()</code></p><p></p><h3>Returns</h3><p><code>org.eclipse.wst.xsl.core.model.XSLModelObject.Type</code></p><hr><h2><a name="method_getName">getName</a></h2><p><code>public java.lang.String <strong>getName</strong>()</code></p><p>Get the value of the <code>name</code> attribute if one exists.</p><h3>Returns</h3><p><code>java.lang.String</code> - the function name, or null</p><hr><h2><a name="method_getOverRideValue">getOverRideValue</a></h2><p><code>public java.lang.String <strong>getOverRideValue</strong>()</code></p><p></p><h3>Returns</h3><p><code>java.lang.String</code></p><hr><h2><a name="method_getParameters">getParameters</a></h2><p><code>public java.util.List <strong>getParameters</strong>()</code></p><p>Return the parameters defined in this function.</p><h3>Returns</h3><p><code>java.util.List</code></p><hr><h2><a name="method_getVariables">getVariables</a></h2><p><code>public java.util.List <strong>getVariables</strong>()</code></p><p>Return the variables defined in this function.</p><h3>Returns</h3><p><code>java.util.List</code></p><hr></body></html>
\ No newline at end of file
diff --git a/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.core.model.Import.html b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.core.model.Import.html
new file mode 100644
index 0000000..714596b
--- /dev/null
+++ b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.core.model.Import.html
@@ -0,0 +1,5 @@
+<html><body><p><font size="+1"><strong>Package org.eclipse.wst.xsl.core.model</strong></font></p><hr><h2><font size="-1"><strong>org.eclipse.wst.xsl.core.model</strong></font><br>
+               Class Import</h2><br><hr><pre>public class <strong>Import</strong>
+extends org.eclipse.wst.xsl.core.model.Include</pre>The <code>xsl:import</code> model element.<p></p><p></p><hr><table width="100%" border="1"><tr bgcolor="#CCCCFF"><td width="100%"><h2>Constructor Summary</h2></td></tr><tr><td><code><strong><a href="#con_Import">Import</a></strong>(org.eclipse.wst.xsl.core.model.Stylesheet stylesheet)</code></td></tr></table><br><table width="100%" border="1"><tr cols="2" bgcolor="#CCCCFF"><td colspan="2" width="100%"><h2>Method Summary</h2></td></tr></table><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Constructor Detail
+               </h2></td></tr></table><h2><a name="con_Import">Import</a></h2><p><code>public <strong>Import</strong>(org.eclipse.wst.xsl.core.model.Stylesheet stylesheet)</code></p><p>Create a new instance of this.</p><hr></body></html>
\ No newline at end of file
diff --git a/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.core.model.Include.html b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.core.model.Include.html
new file mode 100644
index 0000000..023b91a
--- /dev/null
+++ b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.core.model.Include.html
@@ -0,0 +1,25 @@
+<html><body><p><font size="+1"><strong>Package org.eclipse.wst.xsl.core.model</strong></font></p><hr><h2><font size="-1"><strong>org.eclipse.wst.xsl.core.model</strong></font><br>
+               Class Include</h2><br><hr><pre>public class <strong>Include</strong>
+extends org.eclipse.wst.xsl.core.model.XSLElement</pre>The <code>xsl:include</code> model element.<p></p><p></p><hr><table width="100%" border="1"><tr cols="2" bgcolor="#CCCCFF"><td colspan="2" width="100%"><h2>Field Summary</h2></td></tr><tr valign="top"><td width="20%" align="right"><code>public static  int</code></td><td width="80%" align="left"><code><a href="#field_IMPORT">IMPORT</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               Constant indicating that this is an &lt;code&gt;Import&lt;/code&gt;.</td></tr><tr valign="top"><td width="20%" align="right"><code>public static  int</code></td><td width="80%" align="left"><code><a href="#field_INCLUDE">INCLUDE</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               Constant indicating that this is an &lt;code&gt;Include&lt;/code&gt;.</td></tr></table><br><table width="100%" border="1"><tr bgcolor="#CCCCFF"><td width="100%"><h2>Constructor Summary</h2></td></tr><tr><td><code><strong><a href="#con_Include">Include</a></strong>(org.eclipse.wst.xsl.core.model.Stylesheet stylesheet)</code></td></tr><tr><td><code><strong><a href="#con_Include">Include</a></strong>(org.eclipse.wst.xsl.core.model.Stylesheet stylesheet
+         ,
+      int type)</code></td></tr></table><br><table width="100%" border="1"><tr cols="2" bgcolor="#CCCCFF"><td colspan="2" width="100%"><h2>Method Summary</h2></td></tr><tr valign="top"><td width="20%" align="right"><code>public java.lang.String</code></td><td width="" align="left"><code><a href="#method_getHref">getHref</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               Get the value of the <code>href</code> attribute if one exists.</td></tr><tr valign="top"><td width="20%" align="right"><code>public IFile</code></td><td width="" align="left"><code><a href="#method_getHrefAsFile">getHrefAsFile</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               Gets the included file as a source file, if possible (returned file may be null and need not exist).</td></tr><tr valign="top"><td width="20%" align="right"><code>public int</code></td><td width="" align="left"><code><a href="#method_getIncludeType">getIncludeType</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               Get the type of include, whether an <code>Include</code> or an <code>Import</code>.</td></tr><tr valign="top"><td width="20%" align="right"><code>public org.eclipse.wst.xsl.core.model.XSLModelObject.Type</code></td><td width="" align="left"><code><a href="#method_getModelType">getModelType</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr></table><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Field Detail
+               </h2></td></tr></table><h2><a name="field_IMPORT">IMPORT</a></h2><p><code>public static  int <strong>IMPORT</strong></code></p><table><tr><td>Constant indicating that this is an <code>Import</code>.</td></tr></table><hr><h2><a name="field_INCLUDE">INCLUDE</a></h2><p><code>public static  int <strong>INCLUDE</strong></code></p><table><tr><td>Constant indicating that this is an <code>Include</code>.</td></tr></table><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Constructor Detail
+               </h2></td></tr></table><h2><a name="con_Include">Include</a></h2><p><code>public <strong>Include</strong>(org.eclipse.wst.xsl.core.model.Stylesheet stylesheet)</code></p><p>Create a new instance of this.</p><hr><h2><a name="con_Include">Include</a></h2><p><code>protected <strong>Include</strong>(org.eclipse.wst.xsl.core.model.Stylesheet stylesheet
+         ,
+      int type)</code></p><p>Create a new instance of this, specifying whether an <code>Include</code> or an <code>Import</code>.</p><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Methods Detail
+               </h2></td></tr></table><h2><a name="method_getHref">getHref</a></h2><p><code>public java.lang.String <strong>getHref</strong>()</code></p><p>Get the value of the <code>href</code> attribute if one exists.</p><h3>Returns</h3><p><code>java.lang.String</code> - the <code>href</code> value, or null</p><hr><h2><a name="method_getHrefAsFile">getHrefAsFile</a></h2><p><code>public IFile <strong>getHrefAsFile</strong>()</code></p><p>Gets the included file as a source file, if possible (returned file may be null and need not exist).</p><h3>Returns</h3><p><code>IFile</code> - the included file, or null</p><hr><h2><a name="method_getIncludeType">getIncludeType</a></h2><p><code>public int <strong>getIncludeType</strong>()</code></p><p>Get the type of include, whether an <code>Include</code> or an <code>Import</code>.</p><h3>Returns</h3><p><code>int</code> - one of the constants <code>INCLUDE</code> or <code>IMPORT</code></p><hr><h2><a name="method_getModelType">getModelType</a></h2><p><code>public org.eclipse.wst.xsl.core.model.XSLModelObject.Type <strong>getModelType</strong>()</code></p><p></p><h3>Returns</h3><p><code>org.eclipse.wst.xsl.core.model.XSLModelObject.Type</code></p><hr></body></html>
\ No newline at end of file
diff --git a/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.core.model.Parameter.html b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.core.model.Parameter.html
new file mode 100644
index 0000000..8423cdd
--- /dev/null
+++ b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.core.model.Parameter.html
@@ -0,0 +1,15 @@
+<html><body><p><font size="+1"><strong>Package org.eclipse.wst.xsl.core.model</strong></font></p><hr><h2><font size="-1"><strong>org.eclipse.wst.xsl.core.model</strong></font><br>
+               Class Parameter</h2><br><hr><pre>public class <strong>Parameter</strong>
+extends org.eclipse.wst.xsl.core.model.Variable</pre>The <code>xsl:parameter</code> or <code>xsl:with-param</code> model element.<p></p><p></p><hr><table width="100%" border="1"><tr bgcolor="#CCCCFF"><td width="100%"><h2>Constructor Summary</h2></td></tr><tr><td><code><strong><a href="#con_Parameter">Parameter</a></strong>(org.eclipse.wst.xsl.core.model.Stylesheet stylesheet)</code></td></tr></table><br><table width="100%" border="1"><tr cols="2" bgcolor="#CCCCFF"><td colspan="2" width="100%"><h2>Method Summary</h2></td></tr><tr valign="top"><td width="20%" align="right"><code>public java.lang.String</code></td><td width="" align="left"><code><a href="#method_getAs">getAs</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public org.eclipse.wst.xsl.core.model.XSLModelObject.Type</code></td><td width="" align="left"><code><a href="#method_getModelType">getModelType</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public boolean</code></td><td width="" align="left"><code><a href="#method_isValue">isValue</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               Get whether this has a value.</td></tr><tr valign="top"><td width="20%" align="right"><code>public void</code></td><td width="" align="left"><code><a href="#method_setValue">setValue</a>(boolean valueSet)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               Set whether this has a value.</td></tr></table><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Constructor Detail
+               </h2></td></tr></table><h2><a name="con_Parameter">Parameter</a></h2><p><code>public <strong>Parameter</strong>(org.eclipse.wst.xsl.core.model.Stylesheet stylesheet)</code></p><p>Create a new instance of this.</p><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Methods Detail
+               </h2></td></tr></table><h2><a name="method_getAs">getAs</a></h2><p><code>public java.lang.String <strong>getAs</strong>()</code></p><p></p><h3>Returns</h3><p><code>java.lang.String</code></p><hr><h2><a name="method_getModelType">getModelType</a></h2><p><code>public org.eclipse.wst.xsl.core.model.XSLModelObject.Type <strong>getModelType</strong>()</code></p><p></p><h3>Returns</h3><p><code>org.eclipse.wst.xsl.core.model.XSLModelObject.Type</code></p><hr><h2><a name="method_isValue">isValue</a></h2><p><code>public boolean <strong>isValue</strong>()</code></p><p>Get whether this has a value.</p><h3>Returns</h3><p><code>boolean</code> - <code>true</code> if this has a value</p><hr><h2><a name="method_setValue">setValue</a></h2><p><code>public void <strong>setValue</strong>(boolean valueSet)</code></p><p>Set whether this has a value.</p><h3>Parameters</h3><p><code>valueSet</code> - <code>true</code> if this has a value</p><hr></body></html>
\ No newline at end of file
diff --git a/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.core.model.Stylesheet.html b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.core.model.Stylesheet.html
new file mode 100644
index 0000000..9f350cf
--- /dev/null
+++ b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.core.model.Stylesheet.html
@@ -0,0 +1,61 @@
+<html><body><p><font size="+1"><strong>Package org.eclipse.wst.xsl.core.model</strong></font></p><hr><h2><font size="-1"><strong>org.eclipse.wst.xsl.core.model</strong></font><br>
+               Class Stylesheet</h2><br><hr><pre>public class <strong>Stylesheet</strong>
+extends org.eclipse.wst.xsl.core.model.XSLElement</pre>The <code>xsl:stylesheet</code> model element.<p></p><p></p><hr><table width="100%" border="1"><tr cols="2" bgcolor="#CCCCFF"><td colspan="2" width="100%"><h2>Field Summary</h2></td></tr><tr valign="top"><td width="20%" align="right"><code>package-private java.util.List</code></td><td width="80%" align="left"><code><a href="#field_calledTemplates">calledTemplates</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>package-private java.util.List</code></td><td width="80%" align="left"><code><a href="#field_elements">elements</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>package-private IFile</code></td><td width="80%" align="left"><code><a href="#field_file">file</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>package-private java.util.List</code></td><td width="80%" align="left"><code><a href="#field_functions">functions</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>package-private java.util.List</code></td><td width="80%" align="left"><code><a href="#field_globalVariables">globalVariables</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>package-private java.util.List</code></td><td width="80%" align="left"><code><a href="#field_imports">imports</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>package-private java.util.List</code></td><td width="80%" align="left"><code><a href="#field_includes">includes</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>package-private java.util.List</code></td><td width="80%" align="left"><code><a href="#field_templates">templates</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>package-private java.lang.String</code></td><td width="80%" align="left"><code><a href="#field_version">version</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr></table><br><table width="100%" border="1"><tr bgcolor="#CCCCFF"><td width="100%"><h2>Constructor Summary</h2></td></tr><tr><td><code><strong><a href="#con_Stylesheet">Stylesheet</a></strong>(IFile file)</code></td></tr></table><br><table width="100%" border="1"><tr cols="2" bgcolor="#CCCCFF"><td colspan="2" width="100%"><h2>Method Summary</h2></td></tr><tr valign="top"><td width="20%" align="right"><code>public void</code></td><td width="" align="left"><code><a href="#method_addCalledTemplate">addCalledTemplate</a>(org.eclipse.wst.xsl.core.model.CallTemplate template)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               Add a <code>CallTemplate</code> to this.</td></tr><tr valign="top"><td width="20%" align="right"><code>public void</code></td><td width="" align="left"><code><a href="#method_addFunction">addFunction</a>(org.eclipse.wst.xsl.core.model.Function function)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public void</code></td><td width="" align="left"><code><a href="#method_addGlobalVariable">addGlobalVariable</a>(org.eclipse.wst.xsl.core.model.Variable var)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               Add a global variable to this.</td></tr><tr valign="top"><td width="20%" align="right"><code>public void</code></td><td width="" align="left"><code><a href="#method_addImport">addImport</a>(org.eclipse.wst.xsl.core.model.Import include)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               Add an <code>Import</code> to this.</td></tr><tr valign="top"><td width="20%" align="right"><code>public void</code></td><td width="" align="left"><code><a href="#method_addInclude">addInclude</a>(org.eclipse.wst.xsl.core.model.Include include)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               Add an <code>Include</code> to this.</td></tr><tr valign="top"><td width="20%" align="right"><code>public void</code></td><td width="" align="left"><code><a href="#method_addTemplate">addTemplate</a>(org.eclipse.wst.xsl.core.model.Template template)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               Add a <code>Template</code> to this.</td></tr><tr valign="top"><td width="20%" align="right"><code>public java.util.List</code></td><td width="" align="left"><code><a href="#method_getCalledTemplates">getCalledTemplates</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               Get the list of called templates for this.</td></tr><tr valign="top"><td width="20%" align="right"><code>public IFile</code></td><td width="" align="left"><code><a href="#method_getFile">getFile</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               Get the file that this represents.</td></tr><tr valign="top"><td width="20%" align="right"><code>public java.util.List</code></td><td width="" align="left"><code><a href="#method_getFunctions">getFunctions</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               Get the list of functions for this stylesheet.</td></tr><tr valign="top"><td width="20%" align="right"><code>public java.util.List</code></td><td width="" align="left"><code><a href="#method_getGlobalVariables">getGlobalVariables</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public java.util.List</code></td><td width="" align="left"><code><a href="#method_getImports">getImports</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               Get the list of imports for this.</td></tr><tr valign="top"><td width="20%" align="right"><code>public java.util.List</code></td><td width="" align="left"><code><a href="#method_getIncludes">getIncludes</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               Get the list of includes for this.</td></tr><tr valign="top"><td width="20%" align="right"><code>public org.eclipse.wst.xsl.core.model.XSLModelObject.Type</code></td><td width="" align="left"><code><a href="#method_getModelType">getModelType</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public org.eclipse.wst.xsl.core.model.Stylesheet</code></td><td width="" align="left"><code><a href="#method_getStylesheet">getStylesheet</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public java.util.List</code></td><td width="" align="left"><code><a href="#method_getTemplates">getTemplates</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               Get the list of templates for this.</td></tr><tr valign="top"><td width="20%" align="right"><code>public java.lang.String</code></td><td width="" align="left"><code><a href="#method_getVersion">getVersion</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               Get the stylesheet version.</td></tr><tr valign="top"><td width="20%" align="right"><code>public void</code></td><td width="" align="left"><code><a href="#method_setVersion">setVersion</a>(java.lang.String version)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               Set the stylesheet version.</td></tr></table><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Field Detail
+               </h2></td></tr></table><h2><a name="field_calledTemplates">calledTemplates</a></h2><p><code>package-private java.util.List <strong>calledTemplates</strong></code></p><hr><h2><a name="field_elements">elements</a></h2><p><code>package-private java.util.List <strong>elements</strong></code></p><hr><h2><a name="field_file">file</a></h2><p><code>package-private IFile <strong>file</strong></code></p><hr><h2><a name="field_functions">functions</a></h2><p><code>package-private java.util.List <strong>functions</strong></code></p><hr><h2><a name="field_globalVariables">globalVariables</a></h2><p><code>package-private java.util.List <strong>globalVariables</strong></code></p><hr><h2><a name="field_imports">imports</a></h2><p><code>package-private java.util.List <strong>imports</strong></code></p><hr><h2><a name="field_includes">includes</a></h2><p><code>package-private java.util.List <strong>includes</strong></code></p><hr><h2><a name="field_templates">templates</a></h2><p><code>package-private java.util.List <strong>templates</strong></code></p><hr><h2><a name="field_version">version</a></h2><p><code>package-private java.lang.String <strong>version</strong></code></p><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Constructor Detail
+               </h2></td></tr></table><h2><a name="con_Stylesheet">Stylesheet</a></h2><p><code>public <strong>Stylesheet</strong>(IFile file)</code></p><p>Create an instance of this.</p><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Methods Detail
+               </h2></td></tr></table><h2><a name="method_addCalledTemplate">addCalledTemplate</a></h2><p><code>public void <strong>addCalledTemplate</strong>(org.eclipse.wst.xsl.core.model.CallTemplate template)</code></p><p>Add a <code>CallTemplate</code> to this.</p><h3>Parameters</h3><p><code>template</code> - the template to add</p><hr><h2><a name="method_addFunction">addFunction</a></h2><p><code>public void <strong>addFunction</strong>(org.eclipse.wst.xsl.core.model.Function function)</code></p><p></p><h3>Parameters</h3><p><code>function</code></p><hr><h2><a name="method_addGlobalVariable">addGlobalVariable</a></h2><p><code>public void <strong>addGlobalVariable</strong>(org.eclipse.wst.xsl.core.model.Variable var)</code></p><p>Add a global variable to this.</p><h3>Parameters</h3><p><code>var</code> - the variable to add</p><hr><h2><a name="method_addImport">addImport</a></h2><p><code>public void <strong>addImport</strong>(org.eclipse.wst.xsl.core.model.Import include)</code></p><p>Add an <code>Import</code> to this.</p><h3>Parameters</h3><p><code>include</code> - the import to add</p><hr><h2><a name="method_addInclude">addInclude</a></h2><p><code>public void <strong>addInclude</strong>(org.eclipse.wst.xsl.core.model.Include include)</code></p><p>Add an <code>Include</code> to this.</p><h3>Parameters</h3><p><code>include</code> - the include to add</p><hr><h2><a name="method_addTemplate">addTemplate</a></h2><p><code>public void <strong>addTemplate</strong>(org.eclipse.wst.xsl.core.model.Template template)</code></p><p>Add a <code>Template</code> to this.</p><h3>Parameters</h3><p><code>template</code> - the template to add</p><hr><h2><a name="method_getCalledTemplates">getCalledTemplates</a></h2><p><code>public java.util.List <strong>getCalledTemplates</strong>()</code></p><p>Get the list of called templates for this.</p><h3>Returns</h3><p><code>java.util.List</code> - the list of called templates</p><hr><h2><a name="method_getFile">getFile</a></h2><p><code>public IFile <strong>getFile</strong>()</code></p><p>Get the file that this represents.</p><h3>Returns</h3><p><code>IFile</code> - the file that this represents</p><hr><h2><a name="method_getFunctions">getFunctions</a></h2><p><code>public java.util.List <strong>getFunctions</strong>()</code></p><p>Get the list of functions for this stylesheet.</p><h3>Returns</h3><p><code>java.util.List</code> - the list of called templates</p><hr><h2><a name="method_getGlobalVariables">getGlobalVariables</a></h2><p><code>public java.util.List <strong>getGlobalVariables</strong>()</code></p><p></p><h3>Returns</h3><p><code>java.util.List</code></p><hr><h2><a name="method_getImports">getImports</a></h2><p><code>public java.util.List <strong>getImports</strong>()</code></p><p>Get the list of imports for this.</p><h3>Returns</h3><p><code>java.util.List</code> - the list of imports</p><hr><h2><a name="method_getIncludes">getIncludes</a></h2><p><code>public java.util.List <strong>getIncludes</strong>()</code></p><p>Get the list of includes for this.</p><h3>Returns</h3><p><code>java.util.List</code> - the list of includes</p><hr><h2><a name="method_getModelType">getModelType</a></h2><p><code>public org.eclipse.wst.xsl.core.model.XSLModelObject.Type <strong>getModelType</strong>()</code></p><p></p><h3>Returns</h3><p><code>org.eclipse.wst.xsl.core.model.XSLModelObject.Type</code></p><hr><h2><a name="method_getStylesheet">getStylesheet</a></h2><p><code>public org.eclipse.wst.xsl.core.model.Stylesheet <strong>getStylesheet</strong>()</code></p><p></p><h3>Returns</h3><p><code>org.eclipse.wst.xsl.core.model.Stylesheet</code></p><hr><h2><a name="method_getTemplates">getTemplates</a></h2><p><code>public java.util.List <strong>getTemplates</strong>()</code></p><p>Get the list of templates for this.</p><h3>Returns</h3><p><code>java.util.List</code> - the list of templates</p><hr><h2><a name="method_getVersion">getVersion</a></h2><p><code>public java.lang.String <strong>getVersion</strong>()</code></p><p>Get the stylesheet version.</p><h3>Returns</h3><p><code>java.lang.String</code></p><hr><h2><a name="method_setVersion">setVersion</a></h2><p><code>public void <strong>setVersion</strong>(java.lang.String version)</code></p><p>Set the stylesheet version.</p><h3>Parameters</h3><p><code>version</code> - the version to set</p><hr></body></html>
\ No newline at end of file
diff --git a/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.core.model.StylesheetModel.html b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.core.model.StylesheetModel.html
new file mode 100644
index 0000000..1939bc4
--- /dev/null
+++ b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.core.model.StylesheetModel.html
@@ -0,0 +1,99 @@
+<html><body><p><font size="+1"><strong>Package org.eclipse.wst.xsl.core.model</strong></font></p><hr><h2><font size="-1"><strong>org.eclipse.wst.xsl.core.model</strong></font><br>
+               Class StylesheetModel</h2><br><hr><pre>public class <strong>StylesheetModel</strong>
+extends org.eclipse.wst.xsl.core.model.XSLModelObject</pre>The composed stylesheet, consisting of all templates and variables available
+ via imports and includes.
+ 
+ <p>
+ The <code>fix()</code> method does the actual work of populating the fields
+ of this, so it must be called before calling any of the other methods.
+ </p>
+ 
+ <p>
+ Note that this model may not be valid - for instance there may be more than
+ one named template for a given name or more than one global variable with a
+ given name.
+ </p><p></p><p></p><hr><table width="100%" border="1"><tr cols="2" bgcolor="#CCCCFF"><td colspan="2" width="100%"><h2>Field Summary</h2></td></tr><tr valign="top"><td width="20%" align="right"><code>package-private java.util.List</code></td><td width="80%" align="left"><code><a href="#field_callTemplates">callTemplates</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>package-private boolean</code></td><td width="80%" align="left"><code><a href="#field_circularReference">circularReference</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>package-private java.util.Set</code></td><td width="80%" align="left"><code><a href="#field_files">files</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>package-private java.util.List</code></td><td width="80%" align="left"><code><a href="#field_functions">functions</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>package-private java.util.List</code></td><td width="80%" align="left"><code><a href="#field_globalVariables">globalVariables</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>package-private java.util.List</code></td><td width="80%" align="left"><code><a href="#field_importModel">importModel</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>package-private java.util.List</code></td><td width="80%" align="left"><code><a href="#field_includeModel">includeModel</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>package-private java.util.Set</code></td><td width="80%" align="left"><code><a href="#field_stylesheets">stylesheets</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>package-private java.util.List</code></td><td width="80%" align="left"><code><a href="#field_templates">templates</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>package-private java.util.Set</code></td><td width="80%" align="left"><code><a href="#field_templateSet">templateSet</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr></table><br><table width="100%" border="1"><tr bgcolor="#CCCCFF"><td width="100%"><h2>Constructor Summary</h2></td></tr><tr><td><code><strong><a href="#con_StylesheetModel">StylesheetModel</a></strong>(org.eclipse.wst.xsl.core.model.Stylesheet stylesheet)</code></td></tr></table><br><table width="100%" border="1"><tr cols="2" bgcolor="#CCCCFF"><td colspan="2" width="100%"><h2>Method Summary</h2></td></tr><tr valign="top"><td width="20%" align="right"><code>public java.util.List</code></td><td width="" align="left"><code><a href="#method_findAllNestedTemplates">findAllNestedTemplates</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               A utility method that traverses all stylesheet in the hierarchy of
+ stylesheets (not including the current stylesheet), and adds all their
+ templates to the returned list. Therefore the returned list has no regard
+ for whether a template is 'visible' (i.e. whether it might be overridden
+ since it was included via an import). The order of the templates in the
+ list is arbitrary.</td></tr><tr valign="top"><td width="20%" align="right"><code>public java.util.List</code></td><td width="" align="left"><code><a href="#method_findMatching">findMatching</a>(org.eclipse.wst.xsl.core.model.Template toMatch)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               Get all templates that match the given template (determined from
+ <code>Template.equals()</code>).</td></tr><tr valign="top"><td width="20%" align="right"><code>public void</code></td><td width="" align="left"><code><a href="#method_fix">fix</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               Perform the process of traversing the hierarchy to determine all of the
+ properties of this. Note that this method may force other
+ <code>StylesheetModel</code>'s to be built during the process of fixing.</td></tr><tr valign="top"><td width="20%" align="right"><code>public java.util.List</code></td><td width="" align="left"><code><a href="#method_getCallTemplates">getCallTemplates</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public java.util.Set</code></td><td width="" align="left"><code><a href="#method_getFileDependencies">getFileDependencies</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               Get all files that are included in this stylesheet anywhere in the
+ hierarchy via either import or include.</td></tr><tr valign="top"><td width="20%" align="right"><code>public java.util.List</code></td><td width="" align="left"><code><a href="#method_getFunctionByName">getFunctionByName</a>(java.lang.String name)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               Get all functions that are included in this stylesheet anywhere in the
+ hierarchy via either import or include which have the given name.</td></tr><tr valign="top"><td width="20%" align="right"><code>public java.util.List</code></td><td width="" align="left"><code><a href="#method_getFunctions">getFunctions</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               Get a List of all functions that are known.</td></tr><tr valign="top"><td width="20%" align="right"><code>public java.util.List</code></td><td width="" align="left"><code><a href="#method_getGlobalVariables">getGlobalVariables</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               Get all global variables that are included in this stylesheet anywhere in
+ the hierarchy via either import or include.</td></tr><tr valign="top"><td width="20%" align="right"><code>public java.util.List</code></td><td width="" align="left"><code><a href="#method_getIncludes">getIncludes</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               Get all stylesheets that are included in this stylesheet anywhere in the
+ hierarchy via either import or include.</td></tr><tr valign="top"><td width="20%" align="right"><code>public org.eclipse.wst.xsl.core.model.XSLModelObject.Type</code></td><td width="" align="left"><code><a href="#method_getModelType">getModelType</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public org.eclipse.wst.xsl.core.model.Stylesheet</code></td><td width="" align="left"><code><a href="#method_getStylesheet">getStylesheet</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               Get the stylesheet that this is the model for.</td></tr><tr valign="top"><td width="20%" align="right"><code>public java.util.List</code></td><td width="" align="left"><code><a href="#method_getTemplates">getTemplates</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               Get all templates that are included in this stylesheet anywhere in the
+ hierarchy via either import or include.</td></tr><tr valign="top"><td width="20%" align="right"><code>public java.util.List</code></td><td width="" align="left"><code><a href="#method_getTemplatesByName">getTemplatesByName</a>(java.lang.String name)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               Get all named templates that are included in this stylesheet anywhere in
+ the hierarchy via either import or include which have the given name.</td></tr><tr valign="top"><td width="20%" align="right"><code>public boolean</code></td><td width="" align="left"><code><a href="#method_hasCircularReference">hasCircularReference</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               Get whether this has a circular reference anywhere in its import/included
+ hierarchy.</td></tr></table><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Field Detail
+               </h2></td></tr></table><h2><a name="field_callTemplates">callTemplates</a></h2><p><code>package-private java.util.List <strong>callTemplates</strong></code></p><hr><h2><a name="field_circularReference">circularReference</a></h2><p><code>package-private boolean <strong>circularReference</strong></code></p><hr><h2><a name="field_files">files</a></h2><p><code>package-private java.util.Set <strong>files</strong></code></p><hr><h2><a name="field_functions">functions</a></h2><p><code>package-private java.util.List <strong>functions</strong></code></p><hr><h2><a name="field_globalVariables">globalVariables</a></h2><p><code>package-private java.util.List <strong>globalVariables</strong></code></p><hr><h2><a name="field_importModel">importModel</a></h2><p><code>package-private java.util.List <strong>importModel</strong></code></p><hr><h2><a name="field_includeModel">includeModel</a></h2><p><code>package-private java.util.List <strong>includeModel</strong></code></p><hr><h2><a name="field_stylesheets">stylesheets</a></h2><p><code>package-private java.util.Set <strong>stylesheets</strong></code></p><hr><h2><a name="field_templates">templates</a></h2><p><code>package-private java.util.List <strong>templates</strong></code></p><hr><h2><a name="field_templateSet">templateSet</a></h2><p><code>package-private java.util.Set <strong>templateSet</strong></code></p><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Constructor Detail
+               </h2></td></tr></table><h2><a name="con_StylesheetModel">StylesheetModel</a></h2><p><code>public <strong>StylesheetModel</strong>(org.eclipse.wst.xsl.core.model.Stylesheet stylesheet)</code></p><p>Create a new instance of this.</p><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Methods Detail
+               </h2></td></tr></table><h2><a name="method_findAllNestedTemplates">findAllNestedTemplates</a></h2><p><code>public java.util.List <strong>findAllNestedTemplates</strong>()</code></p><p>A utility method that traverses all stylesheet in the hierarchy of
+ stylesheets (not including the current stylesheet), and adds all their
+ templates to the returned list. Therefore the returned list has no regard
+ for whether a template is 'visible' (i.e. whether it might be overridden
+ since it was included via an import). The order of the templates in the
+ list is arbitrary.</p><h3>Returns</h3><p><code>java.util.List</code> - an unordered list of all templates from all stylesheets.</p><hr><h2><a name="method_findMatching">findMatching</a></h2><p><code>public java.util.List <strong>findMatching</strong>(org.eclipse.wst.xsl.core.model.Template toMatch)</code></p><p>Get all templates that match the given template (determined from
+ <code>Template.equals()</code>).</p><h3>Parameters</h3><p><code>toMatch</code> - the template to match</p><h3>Returns</h3><p><code>java.util.List</code> - the set of templates that match</p><hr><h2><a name="method_fix">fix</a></h2><p><code>public void <strong>fix</strong>()</code></p><p>Perform the process of traversing the hierarchy to determine all of the
+ properties of this. Note that this method may force other
+ <code>StylesheetModel</code>'s to be built during the process of fixing.</p><hr><h2><a name="method_getCallTemplates">getCallTemplates</a></h2><p><code>public java.util.List <strong>getCallTemplates</strong>()</code></p><p></p><h3>Returns</h3><p><code>java.util.List</code></p><hr><h2><a name="method_getFileDependencies">getFileDependencies</a></h2><p><code>public java.util.Set <strong>getFileDependencies</strong>()</code></p><p>Get all files that are included in this stylesheet anywhere in the
+ hierarchy via either import or include.</p><h3>Returns</h3><p><code>java.util.Set</code> - the set of files in the entire hierarchy</p><hr><h2><a name="method_getFunctionByName">getFunctionByName</a></h2><p><code>public java.util.List <strong>getFunctionByName</strong>(java.lang.String name)</code></p><p>Get all functions that are included in this stylesheet anywhere in the
+ hierarchy via either import or include which have the given name.</p><h3>Parameters</h3><p><code>name</code> - the template name</p><h3>Returns</h3><p><code>java.util.List</code> - the set of named templates with the given name</p><hr><h2><a name="method_getFunctions">getFunctions</a></h2><p><code>public java.util.List <strong>getFunctions</strong>()</code></p><p>Get a List of all functions that are known.</p><h3>Returns</h3><p><code>java.util.List</code></p><hr><h2><a name="method_getGlobalVariables">getGlobalVariables</a></h2><p><code>public java.util.List <strong>getGlobalVariables</strong>()</code></p><p>Get all global variables that are included in this stylesheet anywhere in
+ the hierarchy via either import or include.</p><h3>Returns</h3><p><code>java.util.List</code> - the set of files in the entire hierarchy</p><hr><h2><a name="method_getIncludes">getIncludes</a></h2><p><code>public java.util.List <strong>getIncludes</strong>()</code></p><p>Get all stylesheets that are included in this stylesheet anywhere in the
+ hierarchy via either import or include.</p><h3>Returns</h3><p><code>java.util.List</code> - the set of stylesheets in the entire hierarchy</p><hr><h2><a name="method_getModelType">getModelType</a></h2><p><code>public org.eclipse.wst.xsl.core.model.XSLModelObject.Type <strong>getModelType</strong>()</code></p><p></p><h3>Returns</h3><p><code>org.eclipse.wst.xsl.core.model.XSLModelObject.Type</code></p><hr><h2><a name="method_getStylesheet">getStylesheet</a></h2><p><code>public org.eclipse.wst.xsl.core.model.Stylesheet <strong>getStylesheet</strong>()</code></p><p>Get the stylesheet that this is the model for.</p><h3>Returns</h3><p><code>org.eclipse.wst.xsl.core.model.Stylesheet</code> - the stylesheet that this is the model for</p><hr><h2><a name="method_getTemplates">getTemplates</a></h2><p><code>public java.util.List <strong>getTemplates</strong>()</code></p><p>Get all templates that are included in this stylesheet anywhere in the
+ hierarchy via either import or include.</p><h3>Returns</h3><p><code>java.util.List</code> - the set of templates in the entire hierarchy</p><hr><h2><a name="method_getTemplatesByName">getTemplatesByName</a></h2><p><code>public java.util.List <strong>getTemplatesByName</strong>(java.lang.String name)</code></p><p>Get all named templates that are included in this stylesheet anywhere in
+ the hierarchy via either import or include which have the given name.</p><h3>Parameters</h3><p><code>name</code> - the template name</p><h3>Returns</h3><p><code>java.util.List</code> - the set of named templates with the given name</p><hr><h2><a name="method_hasCircularReference">hasCircularReference</a></h2><p><code>public boolean <strong>hasCircularReference</strong>()</code></p><p>Get whether this has a circular reference anywhere in its import/included
+ hierarchy.</p><h3>Returns</h3><p><code>boolean</code> - <code>true</code> if this has a circular reference</p><hr></body></html>
\ No newline at end of file
diff --git a/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.core.model.Template.html b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.core.model.Template.html
new file mode 100644
index 0000000..25859ec
--- /dev/null
+++ b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.core.model.Template.html
@@ -0,0 +1,37 @@
+<html><body><p><font size="+1"><strong>Package org.eclipse.wst.xsl.core.model</strong></font></p><hr><h2><font size="-1"><strong>org.eclipse.wst.xsl.core.model</strong></font><br>
+               Class Template</h2><br><hr><pre>public class <strong>Template</strong>
+extends org.eclipse.wst.xsl.core.model.XSLElement</pre>The <code>xsl:template</code> model element.<p></p><p></p><hr><table width="100%" border="1"><tr cols="2" bgcolor="#CCCCFF"><td colspan="2" width="100%"><h2>Field Summary</h2></td></tr><tr valign="top"><td width="20%" align="right"><code>package-private java.util.List</code></td><td width="80%" align="left"><code><a href="#field_parameters">parameters</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>package-private java.util.List</code></td><td width="80%" align="left"><code><a href="#field_variables">variables</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr></table><br><table width="100%" border="1"><tr bgcolor="#CCCCFF"><td width="100%"><h2>Constructor Summary</h2></td></tr><tr><td><code><strong><a href="#con_Template">Template</a></strong>(org.eclipse.wst.xsl.core.model.Stylesheet stylesheet)</code></td></tr></table><br><table width="100%" border="1"><tr cols="2" bgcolor="#CCCCFF"><td colspan="2" width="100%"><h2>Method Summary</h2></td></tr><tr valign="top"><td width="20%" align="right"><code>public void</code></td><td width="" align="left"><code><a href="#method_addParameter">addParameter</a>(org.eclipse.wst.xsl.core.model.Parameter parameter)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               Add a parameter to this.</td></tr><tr valign="top"><td width="20%" align="right"><code>public void</code></td><td width="" align="left"><code><a href="#method_addVariable">addVariable</a>(org.eclipse.wst.xsl.core.model.Variable var)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               Add a variable to this.</td></tr><tr valign="top"><td width="20%" align="right"><code>public boolean</code></td><td width="" align="left"><code><a href="#method_equals">equals</a>(java.lang.Object obj)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public java.lang.String</code></td><td width="" align="left"><code><a href="#method_getMatch">getMatch</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               Get the value of the <code>match</code> attribute if one exists.</td></tr><tr valign="top"><td width="20%" align="right"><code>public java.lang.String</code></td><td width="" align="left"><code><a href="#method_getMode">getMode</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               Get the value of the <code>mode</code> attribute if one exists.</td></tr><tr valign="top"><td width="20%" align="right"><code>public org.eclipse.wst.xsl.core.model.XSLModelObject.Type</code></td><td width="" align="left"><code><a href="#method_getModelType">getModelType</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public java.lang.String</code></td><td width="" align="left"><code><a href="#method_getName">getName</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               Get the value of the <code>name</code> attribute if one exists.</td></tr><tr valign="top"><td width="20%" align="right"><code>public java.util.List</code></td><td width="" align="left"><code><a href="#method_getParameters">getParameters</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               Get the list of parameters of this.</td></tr><tr valign="top"><td width="20%" align="right"><code>public java.lang.String</code></td><td width="" align="left"><code><a href="#method_getPriority">getPriority</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               Get the value of the <code>priority</code> attribute if one exists.</td></tr><tr valign="top"><td width="20%" align="right"><code>public int</code></td><td width="" align="left"><code><a href="#method_hashCode">hashCode</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public boolean</code></td><td width="" align="left"><code><a href="#method_matchesByMatchOrName">matchesByMatchOrName</a>(org.eclipse.wst.xsl.core.model.Template includedTemplate)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public java.lang.String</code></td><td width="" align="left"><code><a href="#method_toString">toString</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr></table><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Field Detail
+               </h2></td></tr></table><h2><a name="field_parameters">parameters</a></h2><p><code>package-private java.util.List <strong>parameters</strong></code></p><hr><h2><a name="field_variables">variables</a></h2><p><code>package-private java.util.List <strong>variables</strong></code></p><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Constructor Detail
+               </h2></td></tr></table><h2><a name="con_Template">Template</a></h2><p><code>public <strong>Template</strong>(org.eclipse.wst.xsl.core.model.Stylesheet stylesheet)</code></p><p>Create a new instance of this.</p><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Methods Detail
+               </h2></td></tr></table><h2><a name="method_addParameter">addParameter</a></h2><p><code>public void <strong>addParameter</strong>(org.eclipse.wst.xsl.core.model.Parameter parameter)</code></p><p>Add a parameter to this.</p><h3>Parameters</h3><p><code>parameter</code> - the parameter to add</p><hr><h2><a name="method_addVariable">addVariable</a></h2><p><code>public void <strong>addVariable</strong>(org.eclipse.wst.xsl.core.model.Variable var)</code></p><p>Add a variable to this.</p><h3>Parameters</h3><p><code>var</code> - the variable to add</p><hr><h2><a name="method_equals">equals</a></h2><p><code>public boolean <strong>equals</strong>(java.lang.Object obj)</code></p><p></p><h3>Parameters</h3><p><code>obj</code></p><h3>Returns</h3><p><code>boolean</code></p><hr><h2><a name="method_getMatch">getMatch</a></h2><p><code>public java.lang.String <strong>getMatch</strong>()</code></p><p>Get the value of the <code>match</code> attribute if one exists.</p><h3>Returns</h3><p><code>java.lang.String</code> - the match value, or null</p><hr><h2><a name="method_getMode">getMode</a></h2><p><code>public java.lang.String <strong>getMode</strong>()</code></p><p>Get the value of the <code>mode</code> attribute if one exists.</p><h3>Returns</h3><p><code>java.lang.String</code> - the mode value, or null</p><hr><h2><a name="method_getModelType">getModelType</a></h2><p><code>public org.eclipse.wst.xsl.core.model.XSLModelObject.Type <strong>getModelType</strong>()</code></p><p></p><h3>Returns</h3><p><code>org.eclipse.wst.xsl.core.model.XSLModelObject.Type</code></p><hr><h2><a name="method_getName">getName</a></h2><p><code>public java.lang.String <strong>getName</strong>()</code></p><p>Get the value of the <code>name</code> attribute if one exists.</p><h3>Returns</h3><p><code>java.lang.String</code> - the template name, or null</p><hr><h2><a name="method_getParameters">getParameters</a></h2><p><code>public java.util.List <strong>getParameters</strong>()</code></p><p>Get the list of parameters of this.</p><h3>Returns</h3><p><code>java.util.List</code> - the list of parameters</p><hr><h2><a name="method_getPriority">getPriority</a></h2><p><code>public java.lang.String <strong>getPriority</strong>()</code></p><p>Get the value of the <code>priority</code> attribute if one exists.</p><h3>Returns</h3><p><code>java.lang.String</code> - the priority value, or null</p><hr><h2><a name="method_hashCode">hashCode</a></h2><p><code>public int <strong>hashCode</strong>()</code></p><p></p><h3>Returns</h3><p><code>int</code></p><hr><h2><a name="method_matchesByMatchOrName">matchesByMatchOrName</a></h2><p><code>public boolean <strong>matchesByMatchOrName</strong>(org.eclipse.wst.xsl.core.model.Template includedTemplate)</code></p><p></p><h3>Parameters</h3><p><code>includedTemplate</code></p><h3>Returns</h3><p><code>boolean</code></p><hr><h2><a name="method_toString">toString</a></h2><p><code>public java.lang.String <strong>toString</strong>()</code></p><p></p><h3>Returns</h3><p><code>java.lang.String</code></p><hr></body></html>
\ No newline at end of file
diff --git a/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.core.model.Variable.html b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.core.model.Variable.html
new file mode 100644
index 0000000..dad686e
--- /dev/null
+++ b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.core.model.Variable.html
@@ -0,0 +1,15 @@
+<html><body><p><font size="+1"><strong>Package org.eclipse.wst.xsl.core.model</strong></font></p><hr><h2><font size="-1"><strong>org.eclipse.wst.xsl.core.model</strong></font><br>
+               Class Variable</h2><br><hr><pre>public class <strong>Variable</strong>
+extends org.eclipse.wst.xsl.core.model.XSLElement</pre>The <code>xsl:variable</code> model element.<p></p><p></p><hr><table width="100%" border="1"><tr bgcolor="#CCCCFF"><td width="100%"><h2>Constructor Summary</h2></td></tr><tr><td><code><strong><a href="#con_Variable">Variable</a></strong>(org.eclipse.wst.xsl.core.model.Stylesheet stylesheet)</code></td></tr></table><br><table width="100%" border="1"><tr cols="2" bgcolor="#CCCCFF"><td colspan="2" width="100%"><h2>Method Summary</h2></td></tr><tr valign="top"><td width="20%" align="right"><code>public java.lang.String</code></td><td width="" align="left"><code><a href="#method_getAs">getAs</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               If an XSLT 2.0, return the value of the <code>as</code> attribute if one exists.</td></tr><tr valign="top"><td width="20%" align="right"><code>public org.eclipse.wst.xsl.core.model.XSLModelObject.Type</code></td><td width="" align="left"><code><a href="#method_getModelType">getModelType</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public java.lang.String</code></td><td width="" align="left"><code><a href="#method_getName">getName</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               Get the value of the <code>name</code> attribute if one exists.</td></tr><tr valign="top"><td width="20%" align="right"><code>public java.lang.String</code></td><td width="" align="left"><code><a href="#method_getSelect">getSelect</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               Get the value of the <code>select</code> attribute if one exists.</td></tr></table><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Constructor Detail
+               </h2></td></tr></table><h2><a name="con_Variable">Variable</a></h2><p><code>public <strong>Variable</strong>(org.eclipse.wst.xsl.core.model.Stylesheet stylesheet)</code></p><p>Create a new instance of this.</p><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Methods Detail
+               </h2></td></tr></table><h2><a name="method_getAs">getAs</a></h2><p><code>public java.lang.String <strong>getAs</strong>()</code></p><p>If an XSLT 2.0, return the value of the <code>as</code> attribute if one exists.</p><h3>Returns</h3><p><code>java.lang.String</code> - the as value, or null</p><hr><h2><a name="method_getModelType">getModelType</a></h2><p><code>public org.eclipse.wst.xsl.core.model.XSLModelObject.Type <strong>getModelType</strong>()</code></p><p></p><h3>Returns</h3><p><code>org.eclipse.wst.xsl.core.model.XSLModelObject.Type</code></p><hr><h2><a name="method_getName">getName</a></h2><p><code>public java.lang.String <strong>getName</strong>()</code></p><p>Get the value of the <code>name</code> attribute if one exists.</p><h3>Returns</h3><p><code>java.lang.String</code> - the variable name, or null</p><hr><h2><a name="method_getSelect">getSelect</a></h2><p><code>public java.lang.String <strong>getSelect</strong>()</code></p><p>Get the value of the <code>select</code> attribute if one exists.</p><h3>Returns</h3><p><code>java.lang.String</code> - the select value, or null</p><hr></body></html>
\ No newline at end of file
diff --git a/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.core.model.XSLAttribute.html b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.core.model.XSLAttribute.html
new file mode 100644
index 0000000..150f5f3
--- /dev/null
+++ b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.core.model.XSLAttribute.html
@@ -0,0 +1,27 @@
+<html><body><p><font size="+1"><strong>Package org.eclipse.wst.xsl.core.model</strong></font></p><hr><h2><font size="-1"><strong>org.eclipse.wst.xsl.core.model</strong></font><br>
+               Class XSLAttribute</h2><br><hr><pre>public class <strong>XSLAttribute</strong>
+extends org.eclipse.wst.xsl.core.model.XSLNode</pre>An attribute of an element in the XSL namespace.<p></p><p></p><hr><table width="100%" border="1"><tr cols="2" bgcolor="#CCCCFF"><td colspan="2" width="100%"><h2>Field Summary</h2></td></tr><tr valign="top"><td width="20%" align="right"><code>package-private java.lang.String</code></td><td width="80%" align="left"><code><a href="#field_name">name</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>package-private java.lang.String</code></td><td width="80%" align="left"><code><a href="#field_value">value</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr></table><br><table width="100%" border="1"><tr bgcolor="#CCCCFF"><td width="100%"><h2>Constructor Summary</h2></td></tr><tr><td><code><strong><a href="#con_XSLAttribute">XSLAttribute</a></strong>(org.eclipse.wst.xsl.core.model.XSLElement element
+         ,
+      java.lang.String name
+         ,
+      java.lang.String value)</code></td></tr></table><br><table width="100%" border="1"><tr cols="2" bgcolor="#CCCCFF"><td colspan="2" width="100%"><h2>Method Summary</h2></td></tr><tr valign="top"><td width="20%" align="right"><code>public org.eclipse.wst.xsl.core.model.XSLModelObject.Type</code></td><td width="" align="left"><code><a href="#method_getModelType">getModelType</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public java.lang.String</code></td><td width="" align="left"><code><a href="#method_getName">getName</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               Get the name of this.</td></tr><tr valign="top"><td width="20%" align="right"><code>public java.lang.String</code></td><td width="" align="left"><code><a href="#method_getValue">getValue</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               Get the value of this.</td></tr></table><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Field Detail
+               </h2></td></tr></table><h2><a name="field_name">name</a></h2><p><code>package-private java.lang.String <strong>name</strong></code></p><hr><h2><a name="field_value">value</a></h2><p><code>package-private java.lang.String <strong>value</strong></code></p><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Constructor Detail
+               </h2></td></tr></table><h2><a name="con_XSLAttribute">XSLAttribute</a></h2><p><code>public <strong>XSLAttribute</strong>(org.eclipse.wst.xsl.core.model.XSLElement element
+         ,
+      java.lang.String name
+         ,
+      java.lang.String value)</code></p><p>Create a new instance of this.</p><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Methods Detail
+               </h2></td></tr></table><h2><a name="method_getModelType">getModelType</a></h2><p><code>public org.eclipse.wst.xsl.core.model.XSLModelObject.Type <strong>getModelType</strong>()</code></p><p></p><h3>Returns</h3><p><code>org.eclipse.wst.xsl.core.model.XSLModelObject.Type</code></p><hr><h2><a name="method_getName">getName</a></h2><p><code>public java.lang.String <strong>getName</strong>()</code></p><p>Get the name of this.</p><h3>Returns</h3><p><code>java.lang.String</code> - the attribute's name</p><hr><h2><a name="method_getValue">getValue</a></h2><p><code>public java.lang.String <strong>getValue</strong>()</code></p><p>Get the value of this.</p><h3>Returns</h3><p><code>java.lang.String</code> - the attribute's value</p><hr></body></html>
\ No newline at end of file
diff --git a/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.core.model.XSLElement.html b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.core.model.XSLElement.html
new file mode 100644
index 0000000..480b0f2
--- /dev/null
+++ b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.core.model.XSLElement.html
@@ -0,0 +1,27 @@
+<html><body><p><font size="+1"><strong>Package org.eclipse.wst.xsl.core.model</strong></font></p><hr><h2><font size="-1"><strong>org.eclipse.wst.xsl.core.model</strong></font><br>
+               Class XSLElement</h2><br><hr><pre>public class <strong>XSLElement</strong>
+extends org.eclipse.wst.xsl.core.model.XSLNode</pre>An element in the XSL namespace.<p></p><p></p><hr><table width="100%" border="1"><tr cols="2" bgcolor="#CCCCFF"><td colspan="2" width="100%"><h2>Field Summary</h2></td></tr><tr valign="top"><td width="20%" align="right"><code>package-private java.util.Map</code></td><td width="80%" align="left"><code><a href="#field_attributes">attributes</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>package-private java.util.List</code></td><td width="80%" align="left"><code><a href="#field_childElements">childElements</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr></table><br><table width="100%" border="1"><tr bgcolor="#CCCCFF"><td width="100%"><h2>Constructor Summary</h2></td></tr><tr><td><code><strong><a href="#con_XSLElement">XSLElement</a></strong>(org.eclipse.wst.xsl.core.model.Stylesheet stylesheet)</code></td></tr></table><br><table width="100%" border="1"><tr cols="2" bgcolor="#CCCCFF"><td colspan="2" width="100%"><h2>Method Summary</h2></td></tr><tr valign="top"><td width="20%" align="right"><code>public void</code></td><td width="" align="left"><code><a href="#method_addChild">addChild</a>(org.eclipse.wst.xsl.core.model.XSLElement element)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               Add a child element of this.</td></tr><tr valign="top"><td width="20%" align="right"><code>public org.eclipse.wst.xsl.core.model.XSLAttribute</code></td><td width="" align="left"><code><a href="#method_getAttribute">getAttribute</a>(java.lang.String name)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               Get the attribute with the given name.</td></tr><tr valign="top"><td width="20%" align="right"><code>public java.util.Map</code></td><td width="" align="left"><code><a href="#method_getAttributes">getAttributes</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               Get the attributes keyed by their names.</td></tr><tr valign="top"><td width="20%" align="right"><code>public java.lang.String</code></td><td width="" align="left"><code><a href="#method_getAttributeValue">getAttributeValue</a>(java.lang.String name)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               Get the value of the attribute with the given name.</td></tr><tr valign="top"><td width="20%" align="right"><code>public java.util.List</code></td><td width="" align="left"><code><a href="#method_getChildElements">getChildElements</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               Get the list of child elements</td></tr><tr valign="top"><td width="20%" align="right"><code>public org.eclipse.wst.xsl.core.model.XSLModelObject.Type</code></td><td width="" align="left"><code><a href="#method_getModelType">getModelType</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public void</code></td><td width="" align="left"><code><a href="#method_setAttribute">setAttribute</a>(org.eclipse.wst.xsl.core.model.XSLAttribute attribute)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               Add an attribute of this</td></tr></table><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Field Detail
+               </h2></td></tr></table><h2><a name="field_attributes">attributes</a></h2><p><code>package-private java.util.Map <strong>attributes</strong></code></p><hr><h2><a name="field_childElements">childElements</a></h2><p><code>package-private java.util.List <strong>childElements</strong></code></p><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Constructor Detail
+               </h2></td></tr></table><h2><a name="con_XSLElement">XSLElement</a></h2><p><code>public <strong>XSLElement</strong>(org.eclipse.wst.xsl.core.model.Stylesheet stylesheet)</code></p><p>Create a new instance of this.</p><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Methods Detail
+               </h2></td></tr></table><h2><a name="method_addChild">addChild</a></h2><p><code>public void <strong>addChild</strong>(org.eclipse.wst.xsl.core.model.XSLElement element)</code></p><p>Add a child element of this.</p><h3>Parameters</h3><p><code>element</code> - the chold element</p><hr><h2><a name="method_getAttribute">getAttribute</a></h2><p><code>public org.eclipse.wst.xsl.core.model.XSLAttribute <strong>getAttribute</strong>(java.lang.String name)</code></p><p>Get the attribute with the given name.</p><h3>Parameters</h3><p><code>name</code> - the name of the attribute</p><h3>Returns</h3><p><code>org.eclipse.wst.xsl.core.model.XSLAttribute</code> - the attribute</p><hr><h2><a name="method_getAttributes">getAttributes</a></h2><p><code>public java.util.Map <strong>getAttributes</strong>()</code></p><p>Get the attributes keyed by their names.</p><h3>Returns</h3><p><code>java.util.Map</code> - the map of attribute names and instances</p><hr><h2><a name="method_getAttributeValue">getAttributeValue</a></h2><p><code>public java.lang.String <strong>getAttributeValue</strong>(java.lang.String name)</code></p><p>Get the value of the attribute with the given name.</p><h3>Parameters</h3><p><code>name</code> - the name of the attribute</p><h3>Returns</h3><p><code>java.lang.String</code> - the attribute value</p><hr><h2><a name="method_getChildElements">getChildElements</a></h2><p><code>public java.util.List <strong>getChildElements</strong>()</code></p><p>Get the list of child elements</p><h3>Returns</h3><p><code>java.util.List</code> - the list of children</p><hr><h2><a name="method_getModelType">getModelType</a></h2><p><code>public org.eclipse.wst.xsl.core.model.XSLModelObject.Type <strong>getModelType</strong>()</code></p><p></p><h3>Returns</h3><p><code>org.eclipse.wst.xsl.core.model.XSLModelObject.Type</code></p><hr><h2><a name="method_setAttribute">setAttribute</a></h2><p><code>public void <strong>setAttribute</strong>(org.eclipse.wst.xsl.core.model.XSLAttribute attribute)</code></p><p>Add an attribute of this</p><h3>Parameters</h3><p><code>attribute</code> - the attribute to add</p><hr></body></html>
\ No newline at end of file
diff --git a/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.core.model.XSLModelObject.Type.html b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.core.model.XSLModelObject.Type.html
new file mode 100644
index 0000000..2087130
--- /dev/null
+++ b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.core.model.XSLModelObject.Type.html
@@ -0,0 +1,33 @@
+<html><body><p><font size="+1"><strong>Package org.eclipse.wst.xsl.core.model</strong></font></p><hr><h2><font size="-1"><strong>org.eclipse.wst.xsl.core.model</strong></font><br>
+               Class XSLModelObject.Type</h2><br><hr><pre>public class <strong>XSLModelObject.Type</strong>
+extends java.lang.Enum</pre><hr><table width="100%" border="1"><tr cols="2" bgcolor="#CCCCFF"><td colspan="2" width="100%"><h2>Field Summary</h2></td></tr><tr valign="top"><td width="20%" align="right"><code>public static  org.eclipse.wst.xsl.core.model.XSLModelObject.Type</code></td><td width="80%" align="left"><code><a href="#field_ATTRIBUTE">ATTRIBUTE</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public static  org.eclipse.wst.xsl.core.model.XSLModelObject.Type</code></td><td width="80%" align="left"><code><a href="#field_CALL_TEMPLATE">CALL_TEMPLATE</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public static  org.eclipse.wst.xsl.core.model.XSLModelObject.Type</code></td><td width="80%" align="left"><code><a href="#field_FUNCTION">FUNCTION</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public static  org.eclipse.wst.xsl.core.model.XSLModelObject.Type</code></td><td width="80%" align="left"><code><a href="#field_IMPORT">IMPORT</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public static  org.eclipse.wst.xsl.core.model.XSLModelObject.Type</code></td><td width="80%" align="left"><code><a href="#field_INCLUDE">INCLUDE</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public static  org.eclipse.wst.xsl.core.model.XSLModelObject.Type</code></td><td width="80%" align="left"><code><a href="#field_OTHER_ELEMENT">OTHER_ELEMENT</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public static  org.eclipse.wst.xsl.core.model.XSLModelObject.Type</code></td><td width="80%" align="left"><code><a href="#field_PARAM">PARAM</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public static  org.eclipse.wst.xsl.core.model.XSLModelObject.Type</code></td><td width="80%" align="left"><code><a href="#field_STYLESHEET">STYLESHEET</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public static  org.eclipse.wst.xsl.core.model.XSLModelObject.Type</code></td><td width="80%" align="left"><code><a href="#field_STYLESHEET_MODEL">STYLESHEET_MODEL</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public static  org.eclipse.wst.xsl.core.model.XSLModelObject.Type</code></td><td width="80%" align="left"><code><a href="#field_TEMPLATE">TEMPLATE</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public static  org.eclipse.wst.xsl.core.model.XSLModelObject.Type</code></td><td width="80%" align="left"><code><a href="#field_VARIABLE">VARIABLE</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr></table><br><table width="100%" border="1"><tr cols="2" bgcolor="#CCCCFF"><td colspan="2" width="100%"><h2>Method Summary</h2></td></tr><tr valign="top"><td width="20%" align="right"><code>public static org.eclipse.wst.xsl.core.model.XSLModelObject.Type</code></td><td width="" align="left"><code><a href="#method_valueOf">valueOf</a>(java.lang.String name)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public static org.eclipse.wst.xsl.core.model.XSLModelObject.Type[]</code></td><td width="" align="left"><code><a href="#method_values">values</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr></table><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Field Detail
+               </h2></td></tr></table><h2><a name="field_ATTRIBUTE">ATTRIBUTE</a></h2><p><code>public static  org.eclipse.wst.xsl.core.model.XSLModelObject.Type <strong>ATTRIBUTE</strong></code></p><hr><h2><a name="field_CALL_TEMPLATE">CALL_TEMPLATE</a></h2><p><code>public static  org.eclipse.wst.xsl.core.model.XSLModelObject.Type <strong>CALL_TEMPLATE</strong></code></p><hr><h2><a name="field_FUNCTION">FUNCTION</a></h2><p><code>public static  org.eclipse.wst.xsl.core.model.XSLModelObject.Type <strong>FUNCTION</strong></code></p><table><tr><td></td></tr></table><hr><h2><a name="field_IMPORT">IMPORT</a></h2><p><code>public static  org.eclipse.wst.xsl.core.model.XSLModelObject.Type <strong>IMPORT</strong></code></p><hr><h2><a name="field_INCLUDE">INCLUDE</a></h2><p><code>public static  org.eclipse.wst.xsl.core.model.XSLModelObject.Type <strong>INCLUDE</strong></code></p><hr><h2><a name="field_OTHER_ELEMENT">OTHER_ELEMENT</a></h2><p><code>public static  org.eclipse.wst.xsl.core.model.XSLModelObject.Type <strong>OTHER_ELEMENT</strong></code></p><hr><h2><a name="field_PARAM">PARAM</a></h2><p><code>public static  org.eclipse.wst.xsl.core.model.XSLModelObject.Type <strong>PARAM</strong></code></p><table><tr><td></td></tr></table><hr><h2><a name="field_STYLESHEET">STYLESHEET</a></h2><p><code>public static  org.eclipse.wst.xsl.core.model.XSLModelObject.Type <strong>STYLESHEET</strong></code></p><hr><h2><a name="field_STYLESHEET_MODEL">STYLESHEET_MODEL</a></h2><p><code>public static  org.eclipse.wst.xsl.core.model.XSLModelObject.Type <strong>STYLESHEET_MODEL</strong></code></p><hr><h2><a name="field_TEMPLATE">TEMPLATE</a></h2><p><code>public static  org.eclipse.wst.xsl.core.model.XSLModelObject.Type <strong>TEMPLATE</strong></code></p><hr><h2><a name="field_VARIABLE">VARIABLE</a></h2><p><code>public static  org.eclipse.wst.xsl.core.model.XSLModelObject.Type <strong>VARIABLE</strong></code></p><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Methods Detail
+               </h2></td></tr></table><h2><a name="method_valueOf">valueOf</a></h2><p><code>public org.eclipse.wst.xsl.core.model.XSLModelObject.Type <strong>valueOf</strong>(java.lang.String name)</code></p><p></p><h3>Parameters</h3><p><code>name</code></p><h3>Returns</h3><p><code>org.eclipse.wst.xsl.core.model.XSLModelObject.Type</code></p><hr><h2><a name="method_values">values</a></h2><p><code>public org.eclipse.wst.xsl.core.model.XSLModelObject.Type[] <strong>values</strong>()</code></p><p></p><h3>Returns</h3><p><code>org.eclipse.wst.xsl.core.model.XSLModelObject.Type[]</code></p><hr></body></html>
\ No newline at end of file
diff --git a/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.core.model.XSLModelObject.html b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.core.model.XSLModelObject.html
new file mode 100644
index 0000000..b55992d
--- /dev/null
+++ b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.core.model.XSLModelObject.html
@@ -0,0 +1,9 @@
+<html><body><p><font size="+1"><strong>Package org.eclipse.wst.xsl.core.model</strong></font></p><hr><h2><font size="-1"><strong>org.eclipse.wst.xsl.core.model</strong></font><br>
+               Class XSLModelObject</h2><br><hr><pre>public class <strong>XSLModelObject</strong>
+extends PlatformObject</pre><p></p><hr><table width="100%" border="1"><tr cols="2" bgcolor="#CCCCFF"><td colspan="2" width="100%"><h2>Field Summary</h2></td></tr></table><br><table width="100%" border="1"><tr bgcolor="#CCCCFF"><td width="100%"><h2>Constructor Summary</h2></td></tr><tr><td><code><strong><a href="#con_XSLModelObject">XSLModelObject</a></strong>()</code></td></tr></table><br><table width="100%" border="1"><tr cols="2" bgcolor="#CCCCFF"><td colspan="2" width="100%"><h2>Method Summary</h2></td></tr><tr valign="top"><td width="20%" align="right"><code>public org.eclipse.wst.xsl.core.model.XSLModelObject.Type</code></td><td width="" align="left"><code><a href="#method_getModelType">getModelType</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr></table><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Constructor Detail
+               </h2></td></tr></table><h2><a name="con_XSLModelObject">XSLModelObject</a></h2><p><code>public <strong>XSLModelObject</strong>()</code></p><p></p><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Methods Detail
+               </h2></td></tr></table><h2><a name="method_getModelType">getModelType</a></h2><p><code>public org.eclipse.wst.xsl.core.model.XSLModelObject.Type <strong>getModelType</strong>()</code></p><p></p><h3>Returns</h3><p><code>org.eclipse.wst.xsl.core.model.XSLModelObject.Type</code></p><hr></body></html>
\ No newline at end of file
diff --git a/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.core.model.XSLNode.html b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.core.model.XSLNode.html
new file mode 100644
index 0000000..71b0e3e
--- /dev/null
+++ b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.core.model.XSLNode.html
@@ -0,0 +1,47 @@
+<html><body><p><font size="+1"><strong>Package org.eclipse.wst.xsl.core.model</strong></font></p><hr><h2><font size="-1"><strong>org.eclipse.wst.xsl.core.model</strong></font><br>
+               Class XSLNode</h2><br><hr><pre>public class <strong>XSLNode</strong>
+extends org.eclipse.wst.xsl.core.model.XSLModelObject</pre>A node in the XSL namespace.<p></p><p></p><hr><table width="100%" border="1"><tr cols="2" bgcolor="#CCCCFF"><td colspan="2" width="100%"><h2>Field Summary</h2></td></tr><tr valign="top"><td width="20%" align="right"><code>public static  short</code></td><td width="80%" align="left"><code><a href="#field_ATTRIBUTE_NODE">ATTRIBUTE_NODE</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               A constant for the attribute node (= &lt;code&gt;org.w3c.dom.Node.ATTRIBUTE_NODE&lt;/code&gt;)</td></tr><tr valign="top"><td width="20%" align="right"><code>package-private int</code></td><td width="80%" align="left"><code><a href="#field_columnNumber">columnNumber</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public static  short</code></td><td width="80%" align="left"><code><a href="#field_ELEMENT_NODE">ELEMENT_NODE</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               A constant for the element node (= &lt;code&gt;org.w3c.dom.Node.ELEMENT_NODE&lt;/code&gt;)</td></tr><tr valign="top"><td width="20%" align="right"><code>package-private int</code></td><td width="80%" align="left"><code><a href="#field_lineNumber">lineNumber</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr></table><br><table width="100%" border="1"><tr bgcolor="#CCCCFF"><td width="100%"><h2>Constructor Summary</h2></td></tr><tr><td><code><strong><a href="#con_XSLNode">XSLNode</a></strong>(org.eclipse.wst.xsl.core.model.Stylesheet stylesheet
+         ,
+      short type)</code></td></tr></table><br><table width="100%" border="1"><tr cols="2" bgcolor="#CCCCFF"><td colspan="2" width="100%"><h2>Method Summary</h2></td></tr><tr valign="top"><td width="20%" align="right"><code>public int</code></td><td width="" align="left"><code><a href="#method_getColumnNumber">getColumnNumber</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               Set the column number where this node occurs in the XSL file.</td></tr><tr valign="top"><td width="20%" align="right"><code>public int</code></td><td width="" align="left"><code><a href="#method_getLength">getLength</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               Get the length of this node.</td></tr><tr valign="top"><td width="20%" align="right"><code>public int</code></td><td width="" align="left"><code><a href="#method_getLineNumber">getLineNumber</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               Set the line number where this node occurs in the XSL file.</td></tr><tr valign="top"><td width="20%" align="right"><code>public java.lang.String</code></td><td width="" align="left"><code><a href="#method_getName">getName</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public short</code></td><td width="" align="left"><code><a href="#method_getNodeType">getNodeType</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               Get the type of node.</td></tr><tr valign="top"><td width="20%" align="right"><code>public int</code></td><td width="" align="left"><code><a href="#method_getOffset">getOffset</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               Get the document offset where this node occurs.</td></tr><tr valign="top"><td width="20%" align="right"><code>public org.eclipse.wst.xsl.core.model.Stylesheet</code></td><td width="" align="left"><code><a href="#method_getStylesheet">getStylesheet</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               Get the stylesheet that this belongs to.</td></tr><tr valign="top"><td width="20%" align="right"><code>public void</code></td><td width="" align="left"><code><a href="#method_setColumnNumber">setColumnNumber</a>(int columnNumber)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               Set the columns number where this node occurs in the XSL file.</td></tr><tr valign="top"><td width="20%" align="right"><code>public void</code></td><td width="" align="left"><code><a href="#method_setLength">setLength</a>(int length)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               Set the length of this node.</td></tr><tr valign="top"><td width="20%" align="right"><code>public void</code></td><td width="" align="left"><code><a href="#method_setLineNumber">setLineNumber</a>(int lineNumber)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               Set the line number where this node occurs in the XSL file.</td></tr><tr valign="top"><td width="20%" align="right"><code>public void</code></td><td width="" align="left"><code><a href="#method_setName">setName</a>(java.lang.String name)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public void</code></td><td width="" align="left"><code><a href="#method_setOffset">setOffset</a>(int offset)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               Set the document offset where this node occurs.</td></tr><tr valign="top"><td width="20%" align="right"><code>public java.lang.String</code></td><td width="" align="left"><code><a href="#method_toString">toString</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr></table><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Field Detail
+               </h2></td></tr></table><h2><a name="field_ATTRIBUTE_NODE">ATTRIBUTE_NODE</a></h2><p><code>public static  short <strong>ATTRIBUTE_NODE</strong></code></p><table><tr><td>A constant for the attribute node (= <code>org.w3c.dom.Node.ATTRIBUTE_NODE</code>)</td></tr></table><hr><h2><a name="field_columnNumber">columnNumber</a></h2><p><code>package-private int <strong>columnNumber</strong></code></p><hr><h2><a name="field_ELEMENT_NODE">ELEMENT_NODE</a></h2><p><code>public static  short <strong>ELEMENT_NODE</strong></code></p><table><tr><td>A constant for the element node (= <code>org.w3c.dom.Node.ELEMENT_NODE</code>)</td></tr></table><hr><h2><a name="field_lineNumber">lineNumber</a></h2><p><code>package-private int <strong>lineNumber</strong></code></p><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Constructor Detail
+               </h2></td></tr></table><h2><a name="con_XSLNode">XSLNode</a></h2><p><code>public <strong>XSLNode</strong>(org.eclipse.wst.xsl.core.model.Stylesheet stylesheet
+         ,
+      short type)</code></p><p>Create a new instance of this.</p><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Methods Detail
+               </h2></td></tr></table><h2><a name="method_getColumnNumber">getColumnNumber</a></h2><p><code>public int <strong>getColumnNumber</strong>()</code></p><p>Set the column number where this node occurs in the XSL file.</p><h3>Returns</h3><p><code>int</code> - the column number where this node occurs in the XSL file.</p><hr><h2><a name="method_getLength">getLength</a></h2><p><code>public int <strong>getLength</strong>()</code></p><p>Get the length of this node.</p><h3>Returns</h3><p><code>int</code> - the node length</p><hr><h2><a name="method_getLineNumber">getLineNumber</a></h2><p><code>public int <strong>getLineNumber</strong>()</code></p><p>Set the line number where this node occurs in the XSL file.</p><h3>Returns</h3><p><code>int</code> - the line number where this node occurs in the XSL file.</p><hr><h2><a name="method_getName">getName</a></h2><p><code>public java.lang.String <strong>getName</strong>()</code></p><p></p><h3>Returns</h3><p><code>java.lang.String</code></p><hr><h2><a name="method_getNodeType">getNodeType</a></h2><p><code>public short <strong>getNodeType</strong>()</code></p><p>Get the type of node.</p><h3>Returns</h3><p><code>short</code> - one of <code>ELEMENT_NODE</code> or <code>ATTRIBUTE_NODE</code></p><hr><h2><a name="method_getOffset">getOffset</a></h2><p><code>public int <strong>getOffset</strong>()</code></p><p>Get the document offset where this node occurs.</p><h3>Returns</h3><p><code>int</code> - the document offset</p><hr><h2><a name="method_getStylesheet">getStylesheet</a></h2><p><code>public org.eclipse.wst.xsl.core.model.Stylesheet <strong>getStylesheet</strong>()</code></p><p>Get the stylesheet that this belongs to.</p><h3>Returns</h3><p><code>org.eclipse.wst.xsl.core.model.Stylesheet</code> - the stylesheet</p><hr><h2><a name="method_setColumnNumber">setColumnNumber</a></h2><p><code>public void <strong>setColumnNumber</strong>(int columnNumber)</code></p><p>Set the columns number where this node occurs in the XSL file.</p><h3>Parameters</h3><p><code>columnNumber</code> - the column number</p><hr><h2><a name="method_setLength">setLength</a></h2><p><code>public void <strong>setLength</strong>(int length)</code></p><p>Set the length of this node.</p><h3>Parameters</h3><p><code>length</code> - the node length</p><hr><h2><a name="method_setLineNumber">setLineNumber</a></h2><p><code>public void <strong>setLineNumber</strong>(int lineNumber)</code></p><p>Set the line number where this node occurs in the XSL file.</p><h3>Parameters</h3><p><code>lineNumber</code> - the line number</p><hr><h2><a name="method_setName">setName</a></h2><p><code>public void <strong>setName</strong>(java.lang.String name)</code></p><p></p><h3>Parameters</h3><p><code>name</code></p><hr><h2><a name="method_setOffset">setOffset</a></h2><p><code>public void <strong>setOffset</strong>(int offset)</code></p><p>Set the document offset where this node occurs.</p><h3>Parameters</h3><p><code>offset</code> - the document offset</p><hr><h2><a name="method_toString">toString</a></h2><p><code>public java.lang.String <strong>toString</strong>()</code></p><p></p><h3>Returns</h3><p><code>java.lang.String</code></p><hr></body></html>
\ No newline at end of file
diff --git a/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.Messages.html b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.Messages.html
new file mode 100644
index 0000000..4c9e7e3
--- /dev/null
+++ b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.Messages.html
@@ -0,0 +1,105 @@
+<html><body><p><font size="+1"><strong>Package org.eclipse.wst.xsl.ui.internal</strong></font></p><hr><h2><font size="-1"><strong>org.eclipse.wst.xsl.ui.internal</strong></font><br>
+               Class Messages</h2><br><hr><pre>public class <strong>Messages</strong>
+extends NLS</pre><hr><table width="100%" border="1"><tr cols="2" bgcolor="#CCCCFF"><td colspan="2" width="100%"><h2>Field Summary</h2></td></tr><tr valign="top"><td width="20%" align="right"><code>public static  java.lang.String</code></td><td width="80%" align="left"><code><a href="#field_AbstractValidationSettingsPageJob">AbstractValidationSettingsPageJob</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public static  java.lang.String</code></td><td width="80%" align="left"><code><a href="#field_AbstractValidationSettingsPageMbText">AbstractValidationSettingsPageMbText</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public static  java.lang.String</code></td><td width="80%" align="left"><code><a href="#field_AbstractValidationSettingsPageProject">AbstractValidationSettingsPageProject</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public static  java.lang.String</code></td><td width="80%" align="left"><code><a href="#field_AbstractValidationSettingsPageWorkspace">AbstractValidationSettingsPageWorkspace</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public static  java.lang.String</code></td><td width="80%" align="left"><code><a href="#field_CallTemplateContentAssistTemplateName">CallTemplateContentAssistTemplateName</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public static  java.lang.String</code></td><td width="80%" align="left"><code><a href="#field_CallTemplateContentAssistTemplateNameFile">CallTemplateContentAssistTemplateNameFile</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public static  java.lang.String</code></td><td width="80%" align="left"><code><a href="#field_ErrorLevelText">ErrorLevelText</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public static  java.lang.String</code></td><td width="80%" align="left"><code><a href="#field_ExcludeResultPrefixesContentAssist">ExcludeResultPrefixesContentAssist</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public static  java.lang.String</code></td><td width="80%" align="left"><code><a href="#field_IgnoreLevelText">IgnoreLevelText</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public static  java.lang.String</code></td><td width="80%" align="left"><code><a href="#field_MainPreferencePage">MainPreferencePage</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public static  java.lang.String</code></td><td width="80%" align="left"><code><a href="#field_NewXSLColumnTemplateDescription">NewXSLColumnTemplateDescription</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public static  java.lang.String</code></td><td width="80%" align="left"><code><a href="#field_NewXSLColumnTemplateName">NewXSLColumnTemplateName</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public static  java.lang.String</code></td><td width="80%" align="left"><code><a href="#field_NewXSLFileAlreadExistsError">NewXSLFileAlreadExistsError</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public static  java.lang.String</code></td><td width="80%" align="left"><code><a href="#field_NewXSLFilePageDescription">NewXSLFilePageDescription</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public static  java.lang.String</code></td><td width="80%" align="left"><code><a href="#field_NewXSLFilePageTitle">NewXSLFilePageTitle</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public static  java.lang.String</code></td><td width="80%" align="left"><code><a href="#field_NewXSLFilePageWindowTitle">NewXSLFilePageWindowTitle</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public static  java.lang.String</code></td><td width="80%" align="left"><code><a href="#field_NewXSLFileWizardExtensionError">NewXSLFileWizardExtensionError</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public static  java.lang.String</code></td><td width="80%" align="left"><code><a href="#field_NewXSLLinkPreferencePage">NewXSLLinkPreferencePage</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public static  java.lang.String</code></td><td width="80%" align="left"><code><a href="#field_NewXSLSelectTemplate">NewXSLSelectTemplate</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public static  java.lang.String</code></td><td width="80%" align="left"><code><a href="#field_NewXSLTemplateDescription">NewXSLTemplateDescription</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public static  java.lang.String</code></td><td width="80%" align="left"><code><a href="#field_NewXSLTemplatePreviewTitle">NewXSLTemplatePreviewTitle</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public static  java.lang.String</code></td><td width="80%" align="left"><code><a href="#field_NewXSLUseTemplateButtonText">NewXSLUseTemplateButtonText</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public static  java.lang.String</code></td><td width="80%" align="left"><code><a href="#field_NoContentAssistance">NoContentAssistance</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public static  java.lang.String</code></td><td width="80%" align="left"><code><a href="#field_Open">Open</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public static  java.lang.String</code></td><td width="80%" align="left"><code><a href="#field_VersionTemplateVariableResolverPageDescription">VersionTemplateVariableResolverPageDescription</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public static  java.lang.String</code></td><td width="80%" align="left"><code><a href="#field_WarningLevelText">WarningLevelText</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public static  java.lang.String</code></td><td width="80%" align="left"><code><a href="#field_XSLEditorOverrideTemplate">XSLEditorOverrideTemplate</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public static  java.lang.String</code></td><td width="80%" align="left"><code><a href="#field_XSLEditorOverrideTemplateMode">XSLEditorOverrideTemplateMode</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public static  java.lang.String</code></td><td width="80%" align="left"><code><a href="#field_XSLSyntaxColoringPage">XSLSyntaxColoringPage</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public static  java.lang.String</code></td><td width="80%" align="left"><code><a href="#field_xsltStyleDocument">xsltStyleDocument</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public static  java.lang.String</code></td><td width="80%" align="left"><code><a href="#field_XSLValidationPageSeverityLevel">XSLValidationPageSeverityLevel</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public static  java.lang.String</code></td><td width="80%" align="left"><code><a href="#field_XSLValidationPreferenceCallTemplatesLabel">XSLValidationPreferenceCallTemplatesLabel</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public static  java.lang.String</code></td><td width="80%" align="left"><code><a href="#field_XSLValidationPreferenceCircularReferencesLabel">XSLValidationPreferenceCircularReferencesLabel</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public static  java.lang.String</code></td><td width="80%" align="left"><code><a href="#field_XSLValidationPreferenceDuplicateParameterLabel">XSLValidationPreferenceDuplicateParameterLabel</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public static  java.lang.String</code></td><td width="80%" align="left"><code><a href="#field_XSLValidationPreferenceImportsIncludesLabel">XSLValidationPreferenceImportsIncludesLabel</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public static  java.lang.String</code></td><td width="80%" align="left"><code><a href="#field_XSLValidationPreferenceMaxErrorsLabel">XSLValidationPreferenceMaxErrorsLabel</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public static  java.lang.String</code></td><td width="80%" align="left"><code><a href="#field_XSLValidationPreferenceMaxErrorsMsgError">XSLValidationPreferenceMaxErrorsMsgError</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public static  java.lang.String</code></td><td width="80%" align="left"><code><a href="#field_XSLValidationPreferenceMissingParameterAttributeLabel">XSLValidationPreferenceMissingParameterAttributeLabel</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public static  java.lang.String</code></td><td width="80%" align="left"><code><a href="#field_XSLValidationPreferenceMissingParamtersLabel">XSLValidationPreferenceMissingParamtersLabel</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public static  java.lang.String</code></td><td width="80%" align="left"><code><a href="#field_XSLValidationPreferenceNamedTemplatesLabel">XSLValidationPreferenceNamedTemplatesLabel</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public static  java.lang.String</code></td><td width="80%" align="left"><code><a href="#field_XSLValidationPreferencePageDescription">XSLValidationPreferencePageDescription</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public static  java.lang.String</code></td><td width="80%" align="left"><code><a href="#field_XSLValidationPreferencePageTitle">XSLValidationPreferencePageTitle</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public static  java.lang.String</code></td><td width="80%" align="left"><code><a href="#field_XSLValidationPreferenceParameterEmptyAttributeLabel">XSLValidationPreferenceParameterEmptyAttributeLabel</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public static  java.lang.String</code></td><td width="80%" align="left"><code><a href="#field_XSLValidationPreferenceParamtersWithoutValueLabel">XSLValidationPreferenceParamtersWithoutValueLabel</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public static  java.lang.String</code></td><td width="80%" align="left"><code><a href="#field_XSLValidationPreferenceTemplateConflictsLabel">XSLValidationPreferenceTemplateConflictsLabel</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public static  java.lang.String</code></td><td width="80%" align="left"><code><a href="#field_XSLValidationPreferenceUnresolvedTemplatesLabel">XSLValidationPreferenceUnresolvedTemplatesLabel</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public static  java.lang.String</code></td><td width="80%" align="left"><code><a href="#field_XSLValidationPreferenceUnresolveImportIncludeLabel">XSLValidationPreferenceUnresolveImportIncludeLabel</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public static  java.lang.String</code></td><td width="80%" align="left"><code><a href="#field_XSLValidationPreferenceXPathLabel">XSLValidationPreferenceXPathLabel</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public static  java.lang.String</code></td><td width="80%" align="left"><code><a href="#field_XSLValidationPreferenceXPathSyntaxLabel">XSLValidationPreferenceXPathSyntaxLabel</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr></table><br><table width="100%" border="1"><tr bgcolor="#CCCCFF"><td width="100%"><h2>Constructor Summary</h2></td></tr><tr><td><code><strong><a href="#con_Messages">Messages</a></strong>()</code></td></tr></table><br><table width="100%" border="1"><tr cols="2" bgcolor="#CCCCFF"><td colspan="2" width="100%"><h2>Method Summary</h2></td></tr></table><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Field Detail
+               </h2></td></tr></table><h2><a name="field_AbstractValidationSettingsPageJob">AbstractValidationSettingsPageJob</a></h2><p><code>public static  java.lang.String <strong>AbstractValidationSettingsPageJob</strong></code></p><hr><h2><a name="field_AbstractValidationSettingsPageMbText">AbstractValidationSettingsPageMbText</a></h2><p><code>public static  java.lang.String <strong>AbstractValidationSettingsPageMbText</strong></code></p><hr><h2><a name="field_AbstractValidationSettingsPageProject">AbstractValidationSettingsPageProject</a></h2><p><code>public static  java.lang.String <strong>AbstractValidationSettingsPageProject</strong></code></p><hr><h2><a name="field_AbstractValidationSettingsPageWorkspace">AbstractValidationSettingsPageWorkspace</a></h2><p><code>public static  java.lang.String <strong>AbstractValidationSettingsPageWorkspace</strong></code></p><hr><h2><a name="field_CallTemplateContentAssistTemplateName">CallTemplateContentAssistTemplateName</a></h2><p><code>public static  java.lang.String <strong>CallTemplateContentAssistTemplateName</strong></code></p><hr><h2><a name="field_CallTemplateContentAssistTemplateNameFile">CallTemplateContentAssistTemplateNameFile</a></h2><p><code>public static  java.lang.String <strong>CallTemplateContentAssistTemplateNameFile</strong></code></p><hr><h2><a name="field_ErrorLevelText">ErrorLevelText</a></h2><p><code>public static  java.lang.String <strong>ErrorLevelText</strong></code></p><hr><h2><a name="field_ExcludeResultPrefixesContentAssist">ExcludeResultPrefixesContentAssist</a></h2><p><code>public static  java.lang.String <strong>ExcludeResultPrefixesContentAssist</strong></code></p><hr><h2><a name="field_IgnoreLevelText">IgnoreLevelText</a></h2><p><code>public static  java.lang.String <strong>IgnoreLevelText</strong></code></p><hr><h2><a name="field_MainPreferencePage">MainPreferencePage</a></h2><p><code>public static  java.lang.String <strong>MainPreferencePage</strong></code></p><hr><h2><a name="field_NewXSLColumnTemplateDescription">NewXSLColumnTemplateDescription</a></h2><p><code>public static  java.lang.String <strong>NewXSLColumnTemplateDescription</strong></code></p><hr><h2><a name="field_NewXSLColumnTemplateName">NewXSLColumnTemplateName</a></h2><p><code>public static  java.lang.String <strong>NewXSLColumnTemplateName</strong></code></p><hr><h2><a name="field_NewXSLFileAlreadExistsError">NewXSLFileAlreadExistsError</a></h2><p><code>public static  java.lang.String <strong>NewXSLFileAlreadExistsError</strong></code></p><hr><h2><a name="field_NewXSLFilePageDescription">NewXSLFilePageDescription</a></h2><p><code>public static  java.lang.String <strong>NewXSLFilePageDescription</strong></code></p><hr><h2><a name="field_NewXSLFilePageTitle">NewXSLFilePageTitle</a></h2><p><code>public static  java.lang.String <strong>NewXSLFilePageTitle</strong></code></p><hr><h2><a name="field_NewXSLFilePageWindowTitle">NewXSLFilePageWindowTitle</a></h2><p><code>public static  java.lang.String <strong>NewXSLFilePageWindowTitle</strong></code></p><hr><h2><a name="field_NewXSLFileWizardExtensionError">NewXSLFileWizardExtensionError</a></h2><p><code>public static  java.lang.String <strong>NewXSLFileWizardExtensionError</strong></code></p><hr><h2><a name="field_NewXSLLinkPreferencePage">NewXSLLinkPreferencePage</a></h2><p><code>public static  java.lang.String <strong>NewXSLLinkPreferencePage</strong></code></p><hr><h2><a name="field_NewXSLSelectTemplate">NewXSLSelectTemplate</a></h2><p><code>public static  java.lang.String <strong>NewXSLSelectTemplate</strong></code></p><hr><h2><a name="field_NewXSLTemplateDescription">NewXSLTemplateDescription</a></h2><p><code>public static  java.lang.String <strong>NewXSLTemplateDescription</strong></code></p><hr><h2><a name="field_NewXSLTemplatePreviewTitle">NewXSLTemplatePreviewTitle</a></h2><p><code>public static  java.lang.String <strong>NewXSLTemplatePreviewTitle</strong></code></p><hr><h2><a name="field_NewXSLUseTemplateButtonText">NewXSLUseTemplateButtonText</a></h2><p><code>public static  java.lang.String <strong>NewXSLUseTemplateButtonText</strong></code></p><hr><h2><a name="field_NoContentAssistance">NoContentAssistance</a></h2><p><code>public static  java.lang.String <strong>NoContentAssistance</strong></code></p><hr><h2><a name="field_Open">Open</a></h2><p><code>public static  java.lang.String <strong>Open</strong></code></p><hr><h2><a name="field_VersionTemplateVariableResolverPageDescription">VersionTemplateVariableResolverPageDescription</a></h2><p><code>public static  java.lang.String <strong>VersionTemplateVariableResolverPageDescription</strong></code></p><hr><h2><a name="field_WarningLevelText">WarningLevelText</a></h2><p><code>public static  java.lang.String <strong>WarningLevelText</strong></code></p><hr><h2><a name="field_XSLEditorOverrideTemplate">XSLEditorOverrideTemplate</a></h2><p><code>public static  java.lang.String <strong>XSLEditorOverrideTemplate</strong></code></p><hr><h2><a name="field_XSLEditorOverrideTemplateMode">XSLEditorOverrideTemplateMode</a></h2><p><code>public static  java.lang.String <strong>XSLEditorOverrideTemplateMode</strong></code></p><hr><h2><a name="field_XSLSyntaxColoringPage">XSLSyntaxColoringPage</a></h2><p><code>public static  java.lang.String <strong>XSLSyntaxColoringPage</strong></code></p><hr><h2><a name="field_xsltStyleDocument">xsltStyleDocument</a></h2><p><code>public static  java.lang.String <strong>xsltStyleDocument</strong></code></p><hr><h2><a name="field_XSLValidationPageSeverityLevel">XSLValidationPageSeverityLevel</a></h2><p><code>public static  java.lang.String <strong>XSLValidationPageSeverityLevel</strong></code></p><hr><h2><a name="field_XSLValidationPreferenceCallTemplatesLabel">XSLValidationPreferenceCallTemplatesLabel</a></h2><p><code>public static  java.lang.String <strong>XSLValidationPreferenceCallTemplatesLabel</strong></code></p><hr><h2><a name="field_XSLValidationPreferenceCircularReferencesLabel">XSLValidationPreferenceCircularReferencesLabel</a></h2><p><code>public static  java.lang.String <strong>XSLValidationPreferenceCircularReferencesLabel</strong></code></p><hr><h2><a name="field_XSLValidationPreferenceDuplicateParameterLabel">XSLValidationPreferenceDuplicateParameterLabel</a></h2><p><code>public static  java.lang.String <strong>XSLValidationPreferenceDuplicateParameterLabel</strong></code></p><hr><h2><a name="field_XSLValidationPreferenceImportsIncludesLabel">XSLValidationPreferenceImportsIncludesLabel</a></h2><p><code>public static  java.lang.String <strong>XSLValidationPreferenceImportsIncludesLabel</strong></code></p><hr><h2><a name="field_XSLValidationPreferenceMaxErrorsLabel">XSLValidationPreferenceMaxErrorsLabel</a></h2><p><code>public static  java.lang.String <strong>XSLValidationPreferenceMaxErrorsLabel</strong></code></p><hr><h2><a name="field_XSLValidationPreferenceMaxErrorsMsgError">XSLValidationPreferenceMaxErrorsMsgError</a></h2><p><code>public static  java.lang.String <strong>XSLValidationPreferenceMaxErrorsMsgError</strong></code></p><hr><h2><a name="field_XSLValidationPreferenceMissingParameterAttributeLabel">XSLValidationPreferenceMissingParameterAttributeLabel</a></h2><p><code>public static  java.lang.String <strong>XSLValidationPreferenceMissingParameterAttributeLabel</strong></code></p><hr><h2><a name="field_XSLValidationPreferenceMissingParamtersLabel">XSLValidationPreferenceMissingParamtersLabel</a></h2><p><code>public static  java.lang.String <strong>XSLValidationPreferenceMissingParamtersLabel</strong></code></p><hr><h2><a name="field_XSLValidationPreferenceNamedTemplatesLabel">XSLValidationPreferenceNamedTemplatesLabel</a></h2><p><code>public static  java.lang.String <strong>XSLValidationPreferenceNamedTemplatesLabel</strong></code></p><hr><h2><a name="field_XSLValidationPreferencePageDescription">XSLValidationPreferencePageDescription</a></h2><p><code>public static  java.lang.String <strong>XSLValidationPreferencePageDescription</strong></code></p><hr><h2><a name="field_XSLValidationPreferencePageTitle">XSLValidationPreferencePageTitle</a></h2><p><code>public static  java.lang.String <strong>XSLValidationPreferencePageTitle</strong></code></p><hr><h2><a name="field_XSLValidationPreferenceParameterEmptyAttributeLabel">XSLValidationPreferenceParameterEmptyAttributeLabel</a></h2><p><code>public static  java.lang.String <strong>XSLValidationPreferenceParameterEmptyAttributeLabel</strong></code></p><hr><h2><a name="field_XSLValidationPreferenceParamtersWithoutValueLabel">XSLValidationPreferenceParamtersWithoutValueLabel</a></h2><p><code>public static  java.lang.String <strong>XSLValidationPreferenceParamtersWithoutValueLabel</strong></code></p><hr><h2><a name="field_XSLValidationPreferenceTemplateConflictsLabel">XSLValidationPreferenceTemplateConflictsLabel</a></h2><p><code>public static  java.lang.String <strong>XSLValidationPreferenceTemplateConflictsLabel</strong></code></p><hr><h2><a name="field_XSLValidationPreferenceUnresolvedTemplatesLabel">XSLValidationPreferenceUnresolvedTemplatesLabel</a></h2><p><code>public static  java.lang.String <strong>XSLValidationPreferenceUnresolvedTemplatesLabel</strong></code></p><hr><h2><a name="field_XSLValidationPreferenceUnresolveImportIncludeLabel">XSLValidationPreferenceUnresolveImportIncludeLabel</a></h2><p><code>public static  java.lang.String <strong>XSLValidationPreferenceUnresolveImportIncludeLabel</strong></code></p><hr><h2><a name="field_XSLValidationPreferenceXPathLabel">XSLValidationPreferenceXPathLabel</a></h2><p><code>public static  java.lang.String <strong>XSLValidationPreferenceXPathLabel</strong></code></p><hr><h2><a name="field_XSLValidationPreferenceXPathSyntaxLabel">XSLValidationPreferenceXPathSyntaxLabel</a></h2><p><code>public static  java.lang.String <strong>XSLValidationPreferenceXPathSyntaxLabel</strong></code></p><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Constructor Detail
+               </h2></td></tr></table><h2><a name="con_Messages">Messages</a></h2><p><code>public <strong>Messages</strong>()</code></p><p></p><hr></body></html>
\ No newline at end of file
diff --git a/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.PreferenceInitializer.html b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.PreferenceInitializer.html
new file mode 100644
index 0000000..a037a18
--- /dev/null
+++ b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.PreferenceInitializer.html
@@ -0,0 +1,9 @@
+<html><body><p><font size="+1"><strong>Package org.eclipse.wst.xsl.ui.internal</strong></font></p><hr><h2><font size="-1"><strong>org.eclipse.wst.xsl.ui.internal</strong></font><br>
+               Class PreferenceInitializer</h2><br><hr><pre>public class <strong>PreferenceInitializer</strong>
+extends AbstractPreferenceInitializer</pre><hr><table width="100%" border="1"><tr bgcolor="#CCCCFF"><td width="100%"><h2>Constructor Summary</h2></td></tr><tr><td><code><strong><a href="#con_PreferenceInitializer">PreferenceInitializer</a></strong>()</code></td></tr></table><br><table width="100%" border="1"><tr cols="2" bgcolor="#CCCCFF"><td colspan="2" width="100%"><h2>Method Summary</h2></td></tr><tr valign="top"><td width="20%" align="right"><code>public void</code></td><td width="" align="left"><code><a href="#method_initializeDefaultPreferences">initializeDefaultPreferences</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr></table><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Constructor Detail
+               </h2></td></tr></table><h2><a name="con_PreferenceInitializer">PreferenceInitializer</a></h2><p><code>public <strong>PreferenceInitializer</strong>()</code></p><p></p><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Methods Detail
+               </h2></td></tr></table><h2><a name="method_initializeDefaultPreferences">initializeDefaultPreferences</a></h2><p><code>public void <strong>initializeDefaultPreferences</strong>()</code></p><p></p><hr></body></html>
\ No newline at end of file
diff --git a/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.StructuredTextViewerConfigurationXSL.html b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.StructuredTextViewerConfigurationXSL.html
new file mode 100644
index 0000000..7c395f7
--- /dev/null
+++ b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.StructuredTextViewerConfigurationXSL.html
@@ -0,0 +1,20 @@
+<html><body><p><font size="+1"><strong>Package org.eclipse.wst.xsl.ui.internal</strong></font></p><hr><h2><font size="-1"><strong>org.eclipse.wst.xsl.ui.internal</strong></font><br>
+               Class StructuredTextViewerConfigurationXSL</h2><br><hr><pre>public class <strong>StructuredTextViewerConfigurationXSL</strong>
+extends StructuredTextViewerConfigurationXML</pre>StructuredTextViewerConfigurationXSL implements content assistance for
+ attributes and other XPath related functionality.<p></p><hr><table width="100%" border="1"><tr bgcolor="#CCCCFF"><td width="100%"><h2>Constructor Summary</h2></td></tr><tr><td><code><strong><a href="#con_StructuredTextViewerConfigurationXSL">StructuredTextViewerConfigurationXSL</a></strong>()</code></td></tr></table><br><table width="100%" border="1"><tr cols="2" bgcolor="#CCCCFF"><td colspan="2" width="100%"><h2>Method Summary</h2></td></tr><tr valign="top"><td width="20%" align="right"><code>public java.lang.String[]</code></td><td width="" align="left"><code><a href="#method_getConfiguredContentTypes">getConfiguredContentTypes</a>(ISourceViewer sourceViewer)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               (non-Javadoc)</td></tr><tr valign="top"><td width="20%" align="right"><code>protected IContentAssistProcessor[]</code></td><td width="" align="left"><code><a href="#method_getContentAssistProcessors">getContentAssistProcessors</a>(ISourceViewer sourceViewer
+         ,
+      java.lang.String partitionType)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               Return the processors for the current content type.</td></tr><tr valign="top"><td width="20%" align="right"><code>public IHyperlinkDetector[]</code></td><td width="" align="left"><code><a href="#method_getHyperlinkDetectors">getHyperlinkDetectors</a>(ISourceViewer sourceViewer)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               (non-Javadoc)</td></tr><tr valign="top"><td width="20%" align="right"><code>protected LineStyleProvider</code></td><td width="" align="left"><code><a href="#method_getLineStyleProviderForXSL">getLineStyleProviderForXSL</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr></table><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Constructor Detail
+               </h2></td></tr></table><h2><a name="con_StructuredTextViewerConfigurationXSL">StructuredTextViewerConfigurationXSL</a></h2><p><code>public <strong>StructuredTextViewerConfigurationXSL</strong>()</code></p><p>Configuration for XSL Content Types</p><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Methods Detail
+               </h2></td></tr></table><h2><a name="method_getConfiguredContentTypes">getConfiguredContentTypes</a></h2><p><code>public java.lang.String[] <strong>getConfiguredContentTypes</strong>(ISourceViewer sourceViewer)</code></p><p>(non-Javadoc)</p><h3>Parameters</h3><p><code>sourceViewer</code></p><h3>Returns</h3><p><code>java.lang.String[]</code></p><hr><h2><a name="method_getContentAssistProcessors">getContentAssistProcessors</a></h2><p><code>protected IContentAssistProcessor[] <strong>getContentAssistProcessors</strong>(ISourceViewer sourceViewer
+         ,
+      java.lang.String partitionType)</code></p><p>Return the processors for the current content type.</p><h3>Parameters</h3><p><code>sourceViewer</code></p><p><code>partitionType</code></p><h3>Returns</h3><p><code>IContentAssistProcessor[]</code></p><hr><h2><a name="method_getHyperlinkDetectors">getHyperlinkDetectors</a></h2><p><code>public IHyperlinkDetector[] <strong>getHyperlinkDetectors</strong>(ISourceViewer sourceViewer)</code></p><p>(non-Javadoc)</p><h3>Parameters</h3><p><code>sourceViewer</code></p><h3>Returns</h3><p><code>IHyperlinkDetector[]</code></p><hr><h2><a name="method_getLineStyleProviderForXSL">getLineStyleProviderForXSL</a></h2><p><code>protected LineStyleProvider <strong>getLineStyleProviderForXSL</strong>()</code></p><p></p><h3>Returns</h3><p><code>LineStyleProvider</code></p><hr></body></html>
\ No newline at end of file
diff --git a/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.XSLUIConstants.html b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.XSLUIConstants.html
new file mode 100644
index 0000000..5607f4a
--- /dev/null
+++ b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.XSLUIConstants.html
@@ -0,0 +1,11 @@
+<html><body><p><font size="+1"><strong>Package org.eclipse.wst.xsl.ui.internal</strong></font></p><hr><h2><font size="-1"><strong>org.eclipse.wst.xsl.ui.internal</strong></font><br>
+               Class XSLUIConstants</h2><br><hr><pre>public class <strong>XSLUIConstants</strong>
+extends java.lang.Object</pre><hr><table width="100%" border="1"><tr cols="2" bgcolor="#CCCCFF"><td colspan="2" width="100%"><h2>Field Summary</h2></td></tr><tr valign="top"><td width="20%" align="right"><code>public static  java.lang.String</code></td><td width="80%" align="left"><code><a href="#field_NEW_FILE_TEMPLATE_NAME">NEW_FILE_TEMPLATE_NAME</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public static  java.lang.String</code></td><td width="80%" align="left"><code><a href="#field_TEMPLATE_CONTEXT_XSL_NEW">TEMPLATE_CONTEXT_XSL_NEW</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr></table><br><table width="100%" border="1"><tr bgcolor="#CCCCFF"><td width="100%"><h2>Constructor Summary</h2></td></tr><tr><td><code><strong><a href="#con_XSLUIConstants">XSLUIConstants</a></strong>()</code></td></tr></table><br><table width="100%" border="1"><tr cols="2" bgcolor="#CCCCFF"><td colspan="2" width="100%"><h2>Method Summary</h2></td></tr></table><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Field Detail
+               </h2></td></tr></table><h2><a name="field_NEW_FILE_TEMPLATE_NAME">NEW_FILE_TEMPLATE_NAME</a></h2><p><code>public static  java.lang.String <strong>NEW_FILE_TEMPLATE_NAME</strong></code></p><hr><h2><a name="field_TEMPLATE_CONTEXT_XSL_NEW">TEMPLATE_CONTEXT_XSL_NEW</a></h2><p><code>public static  java.lang.String <strong>TEMPLATE_CONTEXT_XSL_NEW</strong></code></p><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Constructor Detail
+               </h2></td></tr></table><h2><a name="con_XSLUIConstants">XSLUIConstants</a></h2><p><code>public <strong>XSLUIConstants</strong>()</code></p><p></p><hr></body></html>
\ No newline at end of file
diff --git a/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.XSLUIPlugin.html b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.XSLUIPlugin.html
new file mode 100644
index 0000000..132bada
--- /dev/null
+++ b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.XSLUIPlugin.html
@@ -0,0 +1,31 @@
+<html><body><p><font size="+1"><strong>Package org.eclipse.wst.xsl.ui.internal</strong></font></p><hr><h2><font size="-1"><strong>org.eclipse.wst.xsl.ui.internal</strong></font><br>
+               Class XSLUIPlugin</h2><br><hr><pre>public class <strong>XSLUIPlugin</strong>
+extends AbstractUIPlugin</pre>The activator class controls the plug-in life cycle<hr><table width="100%" border="1"><tr cols="2" bgcolor="#CCCCFF"><td colspan="2" width="100%"><h2>Field Summary</h2></td></tr><tr valign="top"><td width="20%" align="right"><code>public static  java.lang.String</code></td><td width="80%" align="left"><code><a href="#field_PLUGIN_ID">PLUGIN_ID</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               The plugin id for this plugin.</td></tr></table><br><table width="100%" border="1"><tr bgcolor="#CCCCFF"><td width="100%"><h2>Constructor Summary</h2></td></tr><tr><td><code><strong><a href="#con_XSLUIPlugin">XSLUIPlugin</a></strong>()</code></td></tr></table><br><table width="100%" border="1"><tr cols="2" bgcolor="#CCCCFF"><td colspan="2" width="100%"><h2>Method Summary</h2></td></tr><tr valign="top"><td width="20%" align="right"><code>public static org.eclipse.wst.xsl.ui.internal.XSLUIPlugin</code></td><td width="" align="left"><code><a href="#method_getDefault">getDefault</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               Returns the shared instance</td></tr><tr valign="top"><td width="20%" align="right"><code>public ContextTypeRegistry</code></td><td width="" align="left"><code><a href="#method_getTemplateContextRegistry">getTemplateContextRegistry</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               Returns the template context type registry for the xsl plugin.</td></tr><tr valign="top"><td width="20%" align="right"><code>public TemplateStore</code></td><td width="" align="left"><code><a href="#method_getTemplateStore">getTemplateStore</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               Returns the template store for the xsl templates.</td></tr><tr valign="top"><td width="20%" align="right"><code>public static void</code></td><td width="" align="left"><code><a href="#method_log">log</a>(java.lang.Exception e)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public static void</code></td><td width="" align="left"><code><a href="#method_log">log</a>(CoreException e)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public static java.io.File</code></td><td width="" align="left"><code><a href="#method_makeFileFor">makeFileFor</a>(java.lang.String directory
+         ,
+      java.lang.String filename)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public void</code></td><td width="" align="left"><code><a href="#method_start">start</a>(BundleContext context)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public void</code></td><td width="" align="left"><code><a href="#method_stop">stop</a>(BundleContext context)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr></table><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Field Detail
+               </h2></td></tr></table><h2><a name="field_PLUGIN_ID">PLUGIN_ID</a></h2><p><code>public static  java.lang.String <strong>PLUGIN_ID</strong></code></p><table><tr><td>The plugin id for this plugin.</td></tr></table><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Constructor Detail
+               </h2></td></tr></table><h2><a name="con_XSLUIPlugin">XSLUIPlugin</a></h2><p><code>public <strong>XSLUIPlugin</strong>()</code></p><p>The constructor</p><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Methods Detail
+               </h2></td></tr></table><h2><a name="method_getDefault">getDefault</a></h2><p><code>public org.eclipse.wst.xsl.ui.internal.XSLUIPlugin <strong>getDefault</strong>()</code></p><p>Returns the shared instance</p><h3>Returns</h3><p><code>org.eclipse.wst.xsl.ui.internal.XSLUIPlugin</code> - the shared instance</p><hr><h2><a name="method_getTemplateContextRegistry">getTemplateContextRegistry</a></h2><p><code>public ContextTypeRegistry <strong>getTemplateContextRegistry</strong>()</code></p><p>Returns the template context type registry for the xsl plugin.</p><h3>Returns</h3><p><code>ContextTypeRegistry</code> - the template context type registry for the xsl plugin</p><hr><h2><a name="method_getTemplateStore">getTemplateStore</a></h2><p><code>public TemplateStore <strong>getTemplateStore</strong>()</code></p><p>Returns the template store for the xsl templates.</p><h3>Returns</h3><p><code>TemplateStore</code> - the template store for the xsl templates</p><hr><h2><a name="method_log">log</a></h2><p><code>public void <strong>log</strong>(java.lang.Exception e)</code></p><p></p><h3>Parameters</h3><p><code>e</code></p><hr><h2><a name="method_log">log</a></h2><p><code>public void <strong>log</strong>(CoreException e)</code></p><p></p><h3>Parameters</h3><p><code>e</code></p><hr><h2><a name="method_makeFileFor">makeFileFor</a></h2><p><code>public java.io.File <strong>makeFileFor</strong>(java.lang.String directory
+         ,
+      java.lang.String filename)</code></p><p></p><h3>Parameters</h3><p><code>directory</code></p><p><code>filename</code></p><h3>Returns</h3><p><code>java.io.File</code></p><h3>Throws:</h3><p><code>java.io.IOException</code></p><hr><h2><a name="method_start">start</a></h2><p><code>public void <strong>start</strong>(BundleContext context)</code></p><p></p><h3>Parameters</h3><p><code>context</code></p><h3>Throws:</h3><p><code>java.lang.Exception</code></p><hr><h2><a name="method_stop">stop</a></h2><p><code>public void <strong>stop</strong>(BundleContext context)</code></p><p></p><h3>Parameters</h3><p><code>context</code></p><h3>Throws:</h3><p><code>java.lang.Exception</code></p><hr></body></html>
\ No newline at end of file
diff --git a/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.actions.NewDTDFileWizardDelegate.html b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.actions.NewDTDFileWizardDelegate.html
new file mode 100644
index 0000000..9b7a791
--- /dev/null
+++ b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.actions.NewDTDFileWizardDelegate.html
@@ -0,0 +1,19 @@
+<html><body><p><font size="+1"><strong>Package org.eclipse.wst.xsl.ui.internal.actions</strong></font></p><hr><h2><font size="-1"><strong>org.eclipse.wst.xsl.ui.internal.actions</strong></font><br>
+               Class NewDTDFileWizardDelegate</h2><br><hr><pre>public class <strong>NewDTDFileWizardDelegate</strong>
+extends java.lang.Object</pre><hr><table width="100%" border="1"><tr bgcolor="#CCCCFF"><td width="100%"><h2>Constructor Summary</h2></td></tr><tr><td><code><strong><a href="#con_NewDTDFileWizardDelegate">NewDTDFileWizardDelegate</a></strong>()</code></td></tr></table><br><table width="100%" border="1"><tr cols="2" bgcolor="#CCCCFF"><td colspan="2" width="100%"><h2>Method Summary</h2></td></tr><tr valign="top"><td width="20%" align="right"><code>public void</code></td><td width="" align="left"><code><a href="#method_dispose">dispose</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public void</code></td><td width="" align="left"><code><a href="#method_init">init</a>(IWorkbenchWindow window)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public void</code></td><td width="" align="left"><code><a href="#method_run">run</a>(IAction action)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public void</code></td><td width="" align="left"><code><a href="#method_selectionChanged">selectionChanged</a>(IAction action
+         ,
+      ISelection selection)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr></table><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Constructor Detail
+               </h2></td></tr></table><h2><a name="con_NewDTDFileWizardDelegate">NewDTDFileWizardDelegate</a></h2><p><code>public <strong>NewDTDFileWizardDelegate</strong>()</code></p><p></p><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Methods Detail
+               </h2></td></tr></table><h2><a name="method_dispose">dispose</a></h2><p><code>public void <strong>dispose</strong>()</code></p><p></p><hr><h2><a name="method_init">init</a></h2><p><code>public void <strong>init</strong>(IWorkbenchWindow window)</code></p><p></p><h3>Parameters</h3><p><code>window</code></p><hr><h2><a name="method_run">run</a></h2><p><code>public void <strong>run</strong>(IAction action)</code></p><p></p><h3>Parameters</h3><p><code>action</code></p><hr><h2><a name="method_selectionChanged">selectionChanged</a></h2><p><code>public void <strong>selectionChanged</strong>(IAction action
+         ,
+      ISelection selection)</code></p><p></p><h3>Parameters</h3><p><code>action</code></p><p><code>selection</code></p><hr></body></html>
\ No newline at end of file
diff --git a/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.actions.NewWSDLFileWizardDelegate.html b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.actions.NewWSDLFileWizardDelegate.html
new file mode 100644
index 0000000..ad78617
--- /dev/null
+++ b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.actions.NewWSDLFileWizardDelegate.html
@@ -0,0 +1,19 @@
+<html><body><p><font size="+1"><strong>Package org.eclipse.wst.xsl.ui.internal.actions</strong></font></p><hr><h2><font size="-1"><strong>org.eclipse.wst.xsl.ui.internal.actions</strong></font><br>
+               Class NewWSDLFileWizardDelegate</h2><br><hr><pre>public class <strong>NewWSDLFileWizardDelegate</strong>
+extends java.lang.Object</pre><hr><table width="100%" border="1"><tr bgcolor="#CCCCFF"><td width="100%"><h2>Constructor Summary</h2></td></tr><tr><td><code><strong><a href="#con_NewWSDLFileWizardDelegate">NewWSDLFileWizardDelegate</a></strong>()</code></td></tr></table><br><table width="100%" border="1"><tr cols="2" bgcolor="#CCCCFF"><td colspan="2" width="100%"><h2>Method Summary</h2></td></tr><tr valign="top"><td width="20%" align="right"><code>public void</code></td><td width="" align="left"><code><a href="#method_dispose">dispose</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public void</code></td><td width="" align="left"><code><a href="#method_init">init</a>(IWorkbenchWindow window)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public void</code></td><td width="" align="left"><code><a href="#method_run">run</a>(IAction action)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public void</code></td><td width="" align="left"><code><a href="#method_selectionChanged">selectionChanged</a>(IAction action
+         ,
+      ISelection selection)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr></table><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Constructor Detail
+               </h2></td></tr></table><h2><a name="con_NewWSDLFileWizardDelegate">NewWSDLFileWizardDelegate</a></h2><p><code>public <strong>NewWSDLFileWizardDelegate</strong>()</code></p><p></p><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Methods Detail
+               </h2></td></tr></table><h2><a name="method_dispose">dispose</a></h2><p><code>public void <strong>dispose</strong>()</code></p><p></p><hr><h2><a name="method_init">init</a></h2><p><code>public void <strong>init</strong>(IWorkbenchWindow window)</code></p><p></p><h3>Parameters</h3><p><code>window</code></p><hr><h2><a name="method_run">run</a></h2><p><code>public void <strong>run</strong>(IAction action)</code></p><p></p><h3>Parameters</h3><p><code>action</code></p><hr><h2><a name="method_selectionChanged">selectionChanged</a></h2><p><code>public void <strong>selectionChanged</strong>(IAction action
+         ,
+      ISelection selection)</code></p><p></p><h3>Parameters</h3><p><code>action</code></p><p><code>selection</code></p><hr></body></html>
\ No newline at end of file
diff --git a/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.actions.NewWizardAction.html b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.actions.NewWizardAction.html
new file mode 100644
index 0000000..a4e2b38
--- /dev/null
+++ b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.actions.NewWizardAction.html
@@ -0,0 +1,11 @@
+<html><body><p><font size="+1"><strong>Package org.eclipse.wst.xsl.ui.internal.actions</strong></font></p><hr><h2><font size="-1"><strong>org.eclipse.wst.xsl.ui.internal.actions</strong></font><br>
+               Class NewWizardAction</h2><br><hr><pre>public class <strong>NewWizardAction</strong>
+extends Action</pre><hr><table width="100%" border="1"><tr bgcolor="#CCCCFF"><td width="100%"><h2>Constructor Summary</h2></td></tr><tr><td><code><strong><a href="#con_NewWizardAction">NewWizardAction</a></strong>(java.lang.String id)</code></td></tr></table><br><table width="100%" border="1"><tr cols="2" bgcolor="#CCCCFF"><td colspan="2" width="100%"><h2>Method Summary</h2></td></tr><tr valign="top"><td width="20%" align="right"><code>public void</code></td><td width="" align="left"><code><a href="#method_run">run</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public void</code></td><td width="" align="left"><code><a href="#method_setSelection">setSelection</a>(ISelection selection)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr></table><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Constructor Detail
+               </h2></td></tr></table><h2><a name="con_NewWizardAction">NewWizardAction</a></h2><p><code>public <strong>NewWizardAction</strong>(java.lang.String id)</code></p><p></p><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Methods Detail
+               </h2></td></tr></table><h2><a name="method_run">run</a></h2><p><code>public void <strong>run</strong>()</code></p><p></p><hr><h2><a name="method_setSelection">setSelection</a></h2><p><code>public void <strong>setSelection</strong>(ISelection selection)</code></p><p></p><h3>Parameters</h3><p><code>selection</code></p><hr></body></html>
\ No newline at end of file
diff --git a/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.actions.NewXMLFileWizardDelegate.html b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.actions.NewXMLFileWizardDelegate.html
new file mode 100644
index 0000000..800b7f4
--- /dev/null
+++ b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.actions.NewXMLFileWizardDelegate.html
@@ -0,0 +1,19 @@
+<html><body><p><font size="+1"><strong>Package org.eclipse.wst.xsl.ui.internal.actions</strong></font></p><hr><h2><font size="-1"><strong>org.eclipse.wst.xsl.ui.internal.actions</strong></font><br>
+               Class NewXMLFileWizardDelegate</h2><br><hr><pre>public class <strong>NewXMLFileWizardDelegate</strong>
+extends java.lang.Object</pre><hr><table width="100%" border="1"><tr bgcolor="#CCCCFF"><td width="100%"><h2>Constructor Summary</h2></td></tr><tr><td><code><strong><a href="#con_NewXMLFileWizardDelegate">NewXMLFileWizardDelegate</a></strong>()</code></td></tr></table><br><table width="100%" border="1"><tr cols="2" bgcolor="#CCCCFF"><td colspan="2" width="100%"><h2>Method Summary</h2></td></tr><tr valign="top"><td width="20%" align="right"><code>public void</code></td><td width="" align="left"><code><a href="#method_dispose">dispose</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public void</code></td><td width="" align="left"><code><a href="#method_init">init</a>(IWorkbenchWindow window)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public void</code></td><td width="" align="left"><code><a href="#method_run">run</a>(IAction action)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public void</code></td><td width="" align="left"><code><a href="#method_selectionChanged">selectionChanged</a>(IAction action
+         ,
+      ISelection selection)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr></table><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Constructor Detail
+               </h2></td></tr></table><h2><a name="con_NewXMLFileWizardDelegate">NewXMLFileWizardDelegate</a></h2><p><code>public <strong>NewXMLFileWizardDelegate</strong>()</code></p><p></p><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Methods Detail
+               </h2></td></tr></table><h2><a name="method_dispose">dispose</a></h2><p><code>public void <strong>dispose</strong>()</code></p><p></p><hr><h2><a name="method_init">init</a></h2><p><code>public void <strong>init</strong>(IWorkbenchWindow window)</code></p><p></p><h3>Parameters</h3><p><code>window</code></p><hr><h2><a name="method_run">run</a></h2><p><code>public void <strong>run</strong>(IAction action)</code></p><p></p><h3>Parameters</h3><p><code>action</code></p><hr><h2><a name="method_selectionChanged">selectionChanged</a></h2><p><code>public void <strong>selectionChanged</strong>(IAction action
+         ,
+      ISelection selection)</code></p><p></p><h3>Parameters</h3><p><code>action</code></p><p><code>selection</code></p><hr></body></html>
\ No newline at end of file
diff --git a/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.actions.NewXSDFileWizardDelegate.html b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.actions.NewXSDFileWizardDelegate.html
new file mode 100644
index 0000000..47cb370
--- /dev/null
+++ b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.actions.NewXSDFileWizardDelegate.html
@@ -0,0 +1,19 @@
+<html><body><p><font size="+1"><strong>Package org.eclipse.wst.xsl.ui.internal.actions</strong></font></p><hr><h2><font size="-1"><strong>org.eclipse.wst.xsl.ui.internal.actions</strong></font><br>
+               Class NewXSDFileWizardDelegate</h2><br><hr><pre>public class <strong>NewXSDFileWizardDelegate</strong>
+extends java.lang.Object</pre><hr><table width="100%" border="1"><tr bgcolor="#CCCCFF"><td width="100%"><h2>Constructor Summary</h2></td></tr><tr><td><code><strong><a href="#con_NewXSDFileWizardDelegate">NewXSDFileWizardDelegate</a></strong>()</code></td></tr></table><br><table width="100%" border="1"><tr cols="2" bgcolor="#CCCCFF"><td colspan="2" width="100%"><h2>Method Summary</h2></td></tr><tr valign="top"><td width="20%" align="right"><code>public void</code></td><td width="" align="left"><code><a href="#method_dispose">dispose</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public void</code></td><td width="" align="left"><code><a href="#method_init">init</a>(IWorkbenchWindow window)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public void</code></td><td width="" align="left"><code><a href="#method_run">run</a>(IAction action)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public void</code></td><td width="" align="left"><code><a href="#method_selectionChanged">selectionChanged</a>(IAction action
+         ,
+      ISelection selection)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr></table><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Constructor Detail
+               </h2></td></tr></table><h2><a name="con_NewXSDFileWizardDelegate">NewXSDFileWizardDelegate</a></h2><p><code>public <strong>NewXSDFileWizardDelegate</strong>()</code></p><p></p><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Methods Detail
+               </h2></td></tr></table><h2><a name="method_dispose">dispose</a></h2><p><code>public void <strong>dispose</strong>()</code></p><p></p><hr><h2><a name="method_init">init</a></h2><p><code>public void <strong>init</strong>(IWorkbenchWindow window)</code></p><p></p><h3>Parameters</h3><p><code>window</code></p><hr><h2><a name="method_run">run</a></h2><p><code>public void <strong>run</strong>(IAction action)</code></p><p></p><h3>Parameters</h3><p><code>action</code></p><hr><h2><a name="method_selectionChanged">selectionChanged</a></h2><p><code>public void <strong>selectionChanged</strong>(IAction action
+         ,
+      ISelection selection)</code></p><p></p><h3>Parameters</h3><p><code>action</code></p><p><code>selection</code></p><hr></body></html>
\ No newline at end of file
diff --git a/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.actions.NewXSLFileWizardDelegate.html b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.actions.NewXSLFileWizardDelegate.html
new file mode 100644
index 0000000..8c06af9
--- /dev/null
+++ b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.actions.NewXSLFileWizardDelegate.html
@@ -0,0 +1,19 @@
+<html><body><p><font size="+1"><strong>Package org.eclipse.wst.xsl.ui.internal.actions</strong></font></p><hr><h2><font size="-1"><strong>org.eclipse.wst.xsl.ui.internal.actions</strong></font><br>
+               Class NewXSLFileWizardDelegate</h2><br><hr><pre>public class <strong>NewXSLFileWizardDelegate</strong>
+extends java.lang.Object</pre><hr><table width="100%" border="1"><tr bgcolor="#CCCCFF"><td width="100%"><h2>Constructor Summary</h2></td></tr><tr><td><code><strong><a href="#con_NewXSLFileWizardDelegate">NewXSLFileWizardDelegate</a></strong>()</code></td></tr></table><br><table width="100%" border="1"><tr cols="2" bgcolor="#CCCCFF"><td colspan="2" width="100%"><h2>Method Summary</h2></td></tr><tr valign="top"><td width="20%" align="right"><code>public void</code></td><td width="" align="left"><code><a href="#method_dispose">dispose</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public void</code></td><td width="" align="left"><code><a href="#method_init">init</a>(IWorkbenchWindow window)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public void</code></td><td width="" align="left"><code><a href="#method_run">run</a>(IAction action)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public void</code></td><td width="" align="left"><code><a href="#method_selectionChanged">selectionChanged</a>(IAction action
+         ,
+      ISelection selection)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr></table><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Constructor Detail
+               </h2></td></tr></table><h2><a name="con_NewXSLFileWizardDelegate">NewXSLFileWizardDelegate</a></h2><p><code>public <strong>NewXSLFileWizardDelegate</strong>()</code></p><p></p><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Methods Detail
+               </h2></td></tr></table><h2><a name="method_dispose">dispose</a></h2><p><code>public void <strong>dispose</strong>()</code></p><p></p><hr><h2><a name="method_init">init</a></h2><p><code>public void <strong>init</strong>(IWorkbenchWindow window)</code></p><p></p><h3>Parameters</h3><p><code>window</code></p><hr><h2><a name="method_run">run</a></h2><p><code>public void <strong>run</strong>(IAction action)</code></p><p></p><h3>Parameters</h3><p><code>action</code></p><hr><h2><a name="method_selectionChanged">selectionChanged</a></h2><p><code>public void <strong>selectionChanged</strong>(IAction action
+         ,
+      ISelection selection)</code></p><p></p><h3>Parameters</h3><p><code>action</code></p><p><code>selection</code></p><hr></body></html>
\ No newline at end of file
diff --git a/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.contentassist.AttributeContentAssist.html b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.contentassist.AttributeContentAssist.html
new file mode 100644
index 0000000..cbbf675
--- /dev/null
+++ b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.contentassist.AttributeContentAssist.html
@@ -0,0 +1,33 @@
+<html><body><p><font size="+1"><strong>Package org.eclipse.wst.xsl.ui.internal.contentassist</strong></font></p><hr><h2><font size="-1"><strong>org.eclipse.wst.xsl.ui.internal.contentassist</strong></font><br>
+               Class AttributeContentAssist</h2><br><hr><pre>public class <strong>AttributeContentAssist</strong>
+extends org.eclipse.wst.xsl.ui.internal.contentassist.SelectAttributeContentAssist</pre>This class provides content assistance for attributes that contain the "{" character attribute.<p></p><p></p><hr><table width="100%" border="1"><tr bgcolor="#CCCCFF"><td width="100%"><h2>Constructor Summary</h2></td></tr><tr><td><code><strong><a href="#con_AttributeContentAssist">AttributeContentAssist</a></strong>(org.w3c.dom.Node node
+         ,
+      IStructuredDocumentRegion documentRegion
+         ,
+      ITextRegion completionRegion
+         ,
+      int begin
+         ,
+      int length
+         ,
+      java.lang.String filter
+         ,
+      ITextViewer textViewer)</code></td></tr></table><br><table width="100%" border="1"><tr cols="2" bgcolor="#CCCCFF"><td colspan="2" width="100%"><h2>Method Summary</h2></td></tr><tr valign="top"><td width="20%" align="right"><code>public java.util.ArrayList</code></td><td width="" align="left"><code><a href="#method_getCompletionProposals">getCompletionProposals</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               (non-Javadoc)</td></tr></table><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Constructor Detail
+               </h2></td></tr></table><h2><a name="con_AttributeContentAssist">AttributeContentAssist</a></h2><p><code>public <strong>AttributeContentAssist</strong>(org.w3c.dom.Node node
+         ,
+      IStructuredDocumentRegion documentRegion
+         ,
+      ITextRegion completionRegion
+         ,
+      int begin
+         ,
+      int length
+         ,
+      java.lang.String filter
+         ,
+      ITextViewer textViewer)</code></p><p>Constructor for the XSL content assistance for the test attribute.</p><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Methods Detail
+               </h2></td></tr></table><h2><a name="method_getCompletionProposals">getCompletionProposals</a></h2><p><code>public java.util.ArrayList <strong>getCompletionProposals</strong>()</code></p><p>(non-Javadoc)</p><h3>Returns</h3><p><code>java.util.ArrayList</code></p><hr></body></html>
\ No newline at end of file
diff --git a/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.contentassist.CallTemplateContentAssistRequest.html b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.contentassist.CallTemplateContentAssistRequest.html
new file mode 100644
index 0000000..de7c677
--- /dev/null
+++ b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.contentassist.CallTemplateContentAssistRequest.html
@@ -0,0 +1,37 @@
+<html><body><p><font size="+1"><strong>Package org.eclipse.wst.xsl.ui.internal.contentassist</strong></font></p><hr><h2><font size="-1"><strong>org.eclipse.wst.xsl.ui.internal.contentassist</strong></font><br>
+               Class CallTemplateContentAssistRequest</h2><br><hr><pre>public class <strong>CallTemplateContentAssistRequest</strong>
+extends org.eclipse.wst.xsl.ui.provisional.contentassist.AbstractXSLContentAssistRequest</pre>CallTemplateContentAssistance provides content assist proposals for
+ <xsl:call-with> templates.   It will provide a list of all available
+ named templates.<p></p><hr><table width="100%" border="1"><tr bgcolor="#CCCCFF"><td width="100%"><h2>Constructor Summary</h2></td></tr><tr><td><code><strong><a href="#con_CallTemplateContentAssistRequest">CallTemplateContentAssistRequest</a></strong>(org.w3c.dom.Node node
+         ,
+      IStructuredDocumentRegion documentRegion
+         ,
+      ITextRegion completionRegion
+         ,
+      int begin
+         ,
+      int length
+         ,
+      java.lang.String filter
+         ,
+      ITextViewer textViewer)</code></td></tr></table><br><table width="100%" border="1"><tr cols="2" bgcolor="#CCCCFF"><td colspan="2" width="100%"><h2>Method Summary</h2></td></tr><tr valign="top"><td width="20%" align="right"><code>protected java.lang.String</code></td><td width="" align="left"><code><a href="#method_getAdditionalInfo">getAdditionalInfo</a>(org.eclipse.wst.xsl.core.model.Template template)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public java.util.ArrayList</code></td><td width="" align="left"><code><a href="#method_getCompletionProposals">getCompletionProposals</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               (non-Javadoc)</td></tr></table><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Constructor Detail
+               </h2></td></tr></table><h2><a name="con_CallTemplateContentAssistRequest">CallTemplateContentAssistRequest</a></h2><p><code>public <strong>CallTemplateContentAssistRequest</strong>(org.w3c.dom.Node node
+         ,
+      IStructuredDocumentRegion documentRegion
+         ,
+      ITextRegion completionRegion
+         ,
+      int begin
+         ,
+      int length
+         ,
+      java.lang.String filter
+         ,
+      ITextViewer textViewer)</code></p><p></p><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Methods Detail
+               </h2></td></tr></table><h2><a name="method_getAdditionalInfo">getAdditionalInfo</a></h2><p><code>protected java.lang.String <strong>getAdditionalInfo</strong>(org.eclipse.wst.xsl.core.model.Template template)</code></p><p></p><h3>Parameters</h3><p><code>template</code></p><h3>Returns</h3><p><code>java.lang.String</code></p><hr><h2><a name="method_getCompletionProposals">getCompletionProposals</a></h2><p><code>public java.util.ArrayList <strong>getCompletionProposals</strong>()</code></p><p>(non-Javadoc)</p><h3>Returns</h3><p><code>java.util.ArrayList</code></p><hr></body></html>
\ No newline at end of file
diff --git a/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.contentassist.ContentAssistProcessorFactory.html b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.contentassist.ContentAssistProcessorFactory.html
new file mode 100644
index 0000000..30fa6ac
--- /dev/null
+++ b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.contentassist.ContentAssistProcessorFactory.html
@@ -0,0 +1,12 @@
+<html><body><p><font size="+1"><strong>Package org.eclipse.wst.xsl.ui.internal.contentassist</strong></font></p><hr><h2><font size="-1"><strong>org.eclipse.wst.xsl.ui.internal.contentassist</strong></font><br>
+               Class ContentAssistProcessorFactory</h2><br><hr><pre>public class <strong>ContentAssistProcessorFactory</strong>
+extends java.lang.Object</pre>A factory class that reads an eclipse extension point for Content Assist
+ Processors.<p></p><p></p><hr><table width="100%" border="1"><tr bgcolor="#CCCCFF"><td width="100%"><h2>Constructor Summary</h2></td></tr><tr><td><code><strong><a href="#con_ContentAssistProcessorFactory">ContentAssistProcessorFactory</a></strong>()</code></td></tr></table><br><table width="100%" border="1"><tr cols="2" bgcolor="#CCCCFF"><td colspan="2" width="100%"><h2>Method Summary</h2></td></tr><tr valign="top"><td width="20%" align="right"><code>public static IContentAssistProcessor[]</code></td><td width="" align="left"><code><a href="#method_createProcessors">createProcessors</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               Creates the necessary Content Assist Processors that have been
+ Contributed to the XSL Editor configuration.</td></tr></table><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Constructor Detail
+               </h2></td></tr></table><h2><a name="con_ContentAssistProcessorFactory">ContentAssistProcessorFactory</a></h2><p><code>public <strong>ContentAssistProcessorFactory</strong>()</code></p><p></p><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Methods Detail
+               </h2></td></tr></table><h2><a name="method_createProcessors">createProcessors</a></h2><p><code>public IContentAssistProcessor[] <strong>createProcessors</strong>()</code></p><p>Creates the necessary Content Assist Processors that have been
+ Contributed to the XSL Editor configuration.</p><h3>Returns</h3><p><code>IContentAssistProcessor[]</code></p><hr></body></html>
\ No newline at end of file
diff --git a/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.contentassist.ExcludeResultPrefixesContentAssist.html b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.contentassist.ExcludeResultPrefixesContentAssist.html
new file mode 100644
index 0000000..59f18e5
--- /dev/null
+++ b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.contentassist.ExcludeResultPrefixesContentAssist.html
@@ -0,0 +1,45 @@
+<html><body><p><font size="+1"><strong>Package org.eclipse.wst.xsl.ui.internal.contentassist</strong></font></p><hr><h2><font size="-1"><strong>org.eclipse.wst.xsl.ui.internal.contentassist</strong></font><br>
+               Class ExcludeResultPrefixesContentAssist</h2><br><hr><pre>public class <strong>ExcludeResultPrefixesContentAssist</strong>
+extends org.eclipse.wst.xsl.ui.provisional.contentassist.AbstractXSLContentAssistRequest</pre>Provides content assistance for xsl elements that have the
+ exclude-result-prefixes attribute.  This will provide a list 
+ of all known result prefixes that aren't currently in the attribute
+ list.  This list is a space separated list.   The XSL prefix is
+ excluded.<p></p><p></p><hr><table width="100%" border="1"><tr cols="2" bgcolor="#CCCCFF"><td colspan="2" width="100%"><h2>Field Summary</h2></td></tr><tr valign="top"><td width="20%" align="right"><code>protected java.lang.String[]</code></td><td width="80%" align="left"><code><a href="#field_tokens">tokens</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr></table><br><table width="100%" border="1"><tr bgcolor="#CCCCFF"><td width="100%"><h2>Constructor Summary</h2></td></tr><tr><td><code><strong><a href="#con_ExcludeResultPrefixesContentAssist">ExcludeResultPrefixesContentAssist</a></strong>(org.w3c.dom.Node node
+         ,
+      IStructuredDocumentRegion documentRegion
+         ,
+      ITextRegion completionRegion
+         ,
+      int begin
+         ,
+      int length
+         ,
+      java.lang.String filter
+         ,
+      ITextViewer textViewer)</code></td></tr></table><br><table width="100%" border="1"><tr cols="2" bgcolor="#CCCCFF"><td colspan="2" width="100%"><h2>Method Summary</h2></td></tr><tr valign="top"><td width="20%" align="right"><code>public java.util.ArrayList</code></td><td width="" align="left"><code><a href="#method_getCompletionProposals">getCompletionProposals</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               (non-Javadoc)</td></tr><tr valign="top"><td width="20%" align="right"><code>protected boolean</code></td><td width="" align="left"><code><a href="#method_includePrefix">includePrefix</a>(NamespaceInfo namespace)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>protected boolean</code></td><td width="" align="left"><code><a href="#method_prefixExists">prefixExists</a>(java.lang.String prefix)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr></table><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Field Detail
+               </h2></td></tr></table><h2><a name="field_tokens">tokens</a></h2><p><code>protected java.lang.String[] <strong>tokens</strong></code></p><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Constructor Detail
+               </h2></td></tr></table><h2><a name="con_ExcludeResultPrefixesContentAssist">ExcludeResultPrefixesContentAssist</a></h2><p><code>public <strong>ExcludeResultPrefixesContentAssist</strong>(org.w3c.dom.Node node
+         ,
+      IStructuredDocumentRegion documentRegion
+         ,
+      ITextRegion completionRegion
+         ,
+      int begin
+         ,
+      int length
+         ,
+      java.lang.String filter
+         ,
+      ITextViewer textViewer)</code></p><p></p><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Methods Detail
+               </h2></td></tr></table><h2><a name="method_getCompletionProposals">getCompletionProposals</a></h2><p><code>public java.util.ArrayList <strong>getCompletionProposals</strong>()</code></p><p>(non-Javadoc)</p><h3>Returns</h3><p><code>java.util.ArrayList</code></p><hr><h2><a name="method_includePrefix">includePrefix</a></h2><p><code>protected boolean <strong>includePrefix</strong>(NamespaceInfo namespace)</code></p><p></p><h3>Parameters</h3><p><code>namespace</code></p><h3>Returns</h3><p><code>boolean</code></p><hr><h2><a name="method_prefixExists">prefixExists</a></h2><p><code>protected boolean <strong>prefixExists</strong>(java.lang.String prefix)</code></p><p></p><h3>Parameters</h3><p><code>prefix</code></p><h3>Returns</h3><p><code>boolean</code></p><hr></body></html>
\ No newline at end of file
diff --git a/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.contentassist.SelectAttributeContentAssist.html b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.contentassist.SelectAttributeContentAssist.html
new file mode 100644
index 0000000..244d1b8
--- /dev/null
+++ b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.contentassist.SelectAttributeContentAssist.html
@@ -0,0 +1,80 @@
+<html><body><p><font size="+1"><strong>Package org.eclipse.wst.xsl.ui.internal.contentassist</strong></font></p><hr><h2><font size="-1"><strong>org.eclipse.wst.xsl.ui.internal.contentassist</strong></font><br>
+               Class SelectAttributeContentAssist</h2><br><hr><pre>public class <strong>SelectAttributeContentAssist</strong>
+extends org.eclipse.wst.xsl.ui.provisional.contentassist.AbstractXSLContentAssistRequest</pre>This class provides content assistance for the XSL select attribute.<p></p><p></p><hr><table width="100%" border="1"><tr cols="2" bgcolor="#CCCCFF"><td colspan="2" width="100%"><h2>Field Summary</h2></td></tr><tr valign="top"><td width="20%" align="right"><code>protected static  java.lang.String</code></td><td width="80%" align="left"><code><a href="#field_SELECT_ATTRIBUTE">SELECT_ATTRIBUTE</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr></table><br><table width="100%" border="1"><tr bgcolor="#CCCCFF"><td width="100%"><h2>Constructor Summary</h2></td></tr><tr><td><code><strong><a href="#con_SelectAttributeContentAssist">SelectAttributeContentAssist</a></strong>(org.w3c.dom.Node node
+         ,
+      IStructuredDocumentRegion documentRegion
+         ,
+      ITextRegion completionRegion
+         ,
+      int begin
+         ,
+      int length
+         ,
+      java.lang.String filter
+         ,
+      ITextViewer textViewer)</code></td></tr></table><br><table width="100%" border="1"><tr cols="2" bgcolor="#CCCCFF"><td colspan="2" width="100%"><h2>Method Summary</h2></td></tr><tr valign="top"><td width="20%" align="right"><code>protected void</code></td><td width="" align="left"><code><a href="#method_addSelectProposals">addSelectProposals</a>(org.w3c.dom.Element rootElement
+         ,
+      int offset)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>protected void</code></td><td width="" align="left"><code><a href="#method_addTemplates">addTemplates</a>(java.lang.String context
+         ,
+      int startOffset)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               Adds XPath related templates to the list of proposals</td></tr><tr valign="top"><td width="20%" align="right"><code>protected void</code></td><td width="" align="left"><code><a href="#method_adjustXPathStart">adjustXPathStart</a>(java.lang.String attrName)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               This needs to setup the content assistance correctly. Here is what needs
+ to happen: 1. Adjust the matchString (This should have been calculated
+ earlier) 2. Get the current tokens offset position..this will be the
+ starting offset. 3. Get the replacement length...this is the difference
+ between the token offset and the next token or end of the string</td></tr><tr valign="top"><td width="20%" align="right"><code>protected java.lang.String</code></td><td width="" align="left"><code><a href="#method_extractXPathMatchString">extractXPathMatchString</a>(IDOMAttr node
+         ,
+      ITextRegion aRegion
+         ,
+      int offset)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>protected IDOMAttr</code></td><td width="" align="left"><code><a href="#method_getAttribute">getAttribute</a>(java.lang.String attrName)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public java.util.ArrayList</code></td><td width="" align="left"><code><a href="#method_getCompletionProposals">getCompletionProposals</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               (non-Javadoc)</td></tr><tr valign="top"><td width="20%" align="right"><code>protected int</code></td><td width="" align="left"><code><a href="#method_getXPathSeperatorPos">getXPathSeperatorPos</a>(int column
+         ,
+      java.lang.String nodeValue)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr></table><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Field Detail
+               </h2></td></tr></table><h2><a name="field_SELECT_ATTRIBUTE">SELECT_ATTRIBUTE</a></h2><p><code>protected static  java.lang.String <strong>SELECT_ATTRIBUTE</strong></code></p><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Constructor Detail
+               </h2></td></tr></table><h2><a name="con_SelectAttributeContentAssist">SelectAttributeContentAssist</a></h2><p><code>public <strong>SelectAttributeContentAssist</strong>(org.w3c.dom.Node node
+         ,
+      IStructuredDocumentRegion documentRegion
+         ,
+      ITextRegion completionRegion
+         ,
+      int begin
+         ,
+      int length
+         ,
+      java.lang.String filter
+         ,
+      ITextViewer textViewer)</code></p><p>Handles Content Assistance requests for Select Attributes. This is called
+ an instantiated through the use of the computeProposals method from the
+ XSLContentAssistProcessor. It will calculate the available proposals that
+ are available for the XSL select attribute.</p><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Methods Detail
+               </h2></td></tr></table><h2><a name="method_addSelectProposals">addSelectProposals</a></h2><p><code>protected void <strong>addSelectProposals</strong>(org.w3c.dom.Element rootElement
+         ,
+      int offset)</code></p><p></p><h3>Parameters</h3><p><code>rootElement</code></p><p><code>offset</code></p><hr><h2><a name="method_addTemplates">addTemplates</a></h2><p><code>protected void <strong>addTemplates</strong>(java.lang.String context
+         ,
+      int startOffset)</code></p><p>Adds XPath related templates to the list of proposals</p><h3>Parameters</h3><p><code>context</code></p><p><code>startOffset</code></p><hr><h2><a name="method_adjustXPathStart">adjustXPathStart</a></h2><p><code>protected void <strong>adjustXPathStart</strong>(java.lang.String attrName)</code></p><p>This needs to setup the content assistance correctly. Here is what needs
+ to happen: 1. Adjust the matchString (This should have been calculated
+ earlier) 2. Get the current tokens offset position..this will be the
+ starting offset. 3. Get the replacement length...this is the difference
+ between the token offset and the next token or end of the string</p><h3>Parameters</h3><p><code>attrName</code> - The name of the attribute to use as the starting node.</p><hr><h2><a name="method_extractXPathMatchString">extractXPathMatchString</a></h2><p><code>protected java.lang.String <strong>extractXPathMatchString</strong>(IDOMAttr node
+         ,
+      ITextRegion aRegion
+         ,
+      int offset)</code></p><p></p><h3>Parameters</h3><p><code>node</code></p><p><code>aRegion</code></p><p><code>offset</code></p><h3>Returns</h3><p><code>java.lang.String</code></p><hr><h2><a name="method_getAttribute">getAttribute</a></h2><p><code>protected IDOMAttr <strong>getAttribute</strong>(java.lang.String attrName)</code></p><p></p><h3>Parameters</h3><p><code>attrName</code></p><h3>Returns</h3><p><code>IDOMAttr</code></p><hr><h2><a name="method_getCompletionProposals">getCompletionProposals</a></h2><p><code>public java.util.ArrayList <strong>getCompletionProposals</strong>()</code></p><p>(non-Javadoc)</p><h3>Returns</h3><p><code>java.util.ArrayList</code></p><hr><h2><a name="method_getXPathSeperatorPos">getXPathSeperatorPos</a></h2><p><code>protected int <strong>getXPathSeperatorPos</strong>(int column
+         ,
+      java.lang.String nodeValue)</code></p><p></p><h3>Parameters</h3><p><code>column</code></p><p><code>nodeValue</code></p><h3>Returns</h3><p><code>int</code></p><hr></body></html>
\ No newline at end of file
diff --git a/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.contentassist.TemplateModeAttributeContentAssist.html b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.contentassist.TemplateModeAttributeContentAssist.html
new file mode 100644
index 0000000..d768a67
--- /dev/null
+++ b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.contentassist.TemplateModeAttributeContentAssist.html
@@ -0,0 +1,41 @@
+<html><body><p><font size="+1"><strong>Package org.eclipse.wst.xsl.ui.internal.contentassist</strong></font></p><hr><h2><font size="-1"><strong>org.eclipse.wst.xsl.ui.internal.contentassist</strong></font><br>
+               Class TemplateModeAttributeContentAssist</h2><br><hr><pre>public class <strong>TemplateModeAttributeContentAssist</strong>
+extends org.eclipse.wst.xsl.ui.provisional.contentassist.AbstractXSLContentAssistRequest</pre>TemplateModeAttributeContentAssist provides content assistance proposals for
+ <xsl:templates> with a mode attribute.   It looks at all the modes defined
+ within the xsl model, and pulls out any modes that have been defined.<p></p><p></p><hr><table width="100%" border="1"><tr bgcolor="#CCCCFF"><td width="100%"><h2>Constructor Summary</h2></td></tr><tr><td><code><strong><a href="#con_TemplateModeAttributeContentAssist">TemplateModeAttributeContentAssist</a></strong>(org.w3c.dom.Node node
+         ,
+      IStructuredDocumentRegion documentRegion
+         ,
+      ITextRegion completionRegion
+         ,
+      int begin
+         ,
+      int length
+         ,
+      java.lang.String filter
+         ,
+      ITextViewer textViewer)</code></td></tr></table><br><table width="100%" border="1"><tr cols="2" bgcolor="#CCCCFF"><td colspan="2" width="100%"><h2>Method Summary</h2></td></tr><tr valign="top"><td width="20%" align="right"><code>protected void</code></td><td width="" align="left"><code><a href="#method_addModeProposals">addModeProposals</a>(org.eclipse.wst.xsl.core.model.StylesheetModel model)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public java.util.ArrayList</code></td><td width="" align="left"><code><a href="#method_getCompletionProposals">getCompletionProposals</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               The main method that returns an array of proposals. Returns the available
+ modes that have been defined in the {@link StylesheetModel}.  If no proposals
+ are found it returns a NULL value.</td></tr></table><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Constructor Detail
+               </h2></td></tr></table><h2><a name="con_TemplateModeAttributeContentAssist">TemplateModeAttributeContentAssist</a></h2><p><code>public <strong>TemplateModeAttributeContentAssist</strong>(org.w3c.dom.Node node
+         ,
+      IStructuredDocumentRegion documentRegion
+         ,
+      ITextRegion completionRegion
+         ,
+      int begin
+         ,
+      int length
+         ,
+      java.lang.String filter
+         ,
+      ITextViewer textViewer)</code></p><p>Constructor for creating the TemplateMode Content Assistance class.</p><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Methods Detail
+               </h2></td></tr></table><h2><a name="method_addModeProposals">addModeProposals</a></h2><p><code>protected void <strong>addModeProposals</strong>(org.eclipse.wst.xsl.core.model.StylesheetModel model)</code></p><p></p><h3>Parameters</h3><p><code>model</code></p><hr><h2><a name="method_getCompletionProposals">getCompletionProposals</a></h2><p><code>public java.util.ArrayList <strong>getCompletionProposals</strong>()</code></p><p>The main method that returns an array of proposals. Returns the available
+ modes that have been defined in the {@link StylesheetModel}.  If no proposals
+ are found it returns a NULL value.</p><h3>Returns</h3><p><code>java.util.ArrayList</code> - ICompletionPropsal[]</p><hr></body></html>
\ No newline at end of file
diff --git a/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.contentassist.TemplateNameAttributeContentAssist.html b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.contentassist.TemplateNameAttributeContentAssist.html
new file mode 100644
index 0000000..5682fb9
--- /dev/null
+++ b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.contentassist.TemplateNameAttributeContentAssist.html
@@ -0,0 +1,38 @@
+<html><body><p><font size="+1"><strong>Package org.eclipse.wst.xsl.ui.internal.contentassist</strong></font></p><hr><h2><font size="-1"><strong>org.eclipse.wst.xsl.ui.internal.contentassist</strong></font><br>
+               Class TemplateNameAttributeContentAssist</h2><br><hr><pre>public class <strong>TemplateNameAttributeContentAssist</strong>
+extends org.eclipse.wst.xsl.ui.provisional.contentassist.AbstractXSLContentAssistRequest</pre>Provides content assistance for XSLT Named Templates.   It provides a list
+ of available call-template names that have already been used with in the
+ stylesheet.<p></p><p></p><hr><table width="100%" border="1"><tr bgcolor="#CCCCFF"><td width="100%"><h2>Constructor Summary</h2></td></tr><tr><td><code><strong><a href="#con_TemplateNameAttributeContentAssist">TemplateNameAttributeContentAssist</a></strong>(org.w3c.dom.Node node
+         ,
+      IStructuredDocumentRegion documentRegion
+         ,
+      ITextRegion completionRegion
+         ,
+      int begin
+         ,
+      int length
+         ,
+      java.lang.String filter
+         ,
+      ITextViewer textViewer)</code></td></tr></table><br><table width="100%" border="1"><tr cols="2" bgcolor="#CCCCFF"><td colspan="2" width="100%"><h2>Method Summary</h2></td></tr><tr valign="top"><td width="20%" align="right"><code>public java.util.ArrayList</code></td><td width="" align="left"><code><a href="#method_getCompletionProposals">getCompletionProposals</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr></table><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Constructor Detail
+               </h2></td></tr></table><h2><a name="con_TemplateNameAttributeContentAssist">TemplateNameAttributeContentAssist</a></h2><p><code>public <strong>TemplateNameAttributeContentAssist</strong>(org.w3c.dom.Node node
+         ,
+      IStructuredDocumentRegion documentRegion
+         ,
+      ITextRegion completionRegion
+         ,
+      int begin
+         ,
+      int length
+         ,
+      java.lang.String filter
+         ,
+      ITextViewer textViewer)</code></p><p>Provides content assistance for XSLT Named Templates.  Will provide a list
+ of proposals based on the available named-templates if any are defined in
+ the XSL Stylesheet model.   Only provides a list of named templates that haven't already
+ been added as a proposal.  Does not check to see if it's already is defined in the current stylesheet.</p><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Methods Detail
+               </h2></td></tr></table><h2><a name="method_getCompletionProposals">getCompletionProposals</a></h2><p><code>public java.util.ArrayList <strong>getCompletionProposals</strong>()</code></p><p></p><h3>Returns</h3><p><code>java.util.ArrayList</code></p><hr></body></html>
\ No newline at end of file
diff --git a/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.contentassist.TestAttributeContentAssist.html b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.contentassist.TestAttributeContentAssist.html
new file mode 100644
index 0000000..a8e8f35
--- /dev/null
+++ b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.contentassist.TestAttributeContentAssist.html
@@ -0,0 +1,33 @@
+<html><body><p><font size="+1"><strong>Package org.eclipse.wst.xsl.ui.internal.contentassist</strong></font></p><hr><h2><font size="-1"><strong>org.eclipse.wst.xsl.ui.internal.contentassist</strong></font><br>
+               Class TestAttributeContentAssist</h2><br><hr><pre>public class <strong>TestAttributeContentAssist</strong>
+extends org.eclipse.wst.xsl.ui.internal.contentassist.SelectAttributeContentAssist</pre>This class provides content assistance for the xsl <emphasis>test</emphais> attribute.<p></p><p></p><hr><table width="100%" border="1"><tr bgcolor="#CCCCFF"><td width="100%"><h2>Constructor Summary</h2></td></tr><tr><td><code><strong><a href="#con_TestAttributeContentAssist">TestAttributeContentAssist</a></strong>(org.w3c.dom.Node node
+         ,
+      IStructuredDocumentRegion documentRegion
+         ,
+      ITextRegion completionRegion
+         ,
+      int begin
+         ,
+      int length
+         ,
+      java.lang.String filter
+         ,
+      ITextViewer textViewer)</code></td></tr></table><br><table width="100%" border="1"><tr cols="2" bgcolor="#CCCCFF"><td colspan="2" width="100%"><h2>Method Summary</h2></td></tr><tr valign="top"><td width="20%" align="right"><code>public java.util.ArrayList</code></td><td width="" align="left"><code><a href="#method_getCompletionProposals">getCompletionProposals</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               (non-Javadoc)</td></tr></table><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Constructor Detail
+               </h2></td></tr></table><h2><a name="con_TestAttributeContentAssist">TestAttributeContentAssist</a></h2><p><code>public <strong>TestAttributeContentAssist</strong>(org.w3c.dom.Node node
+         ,
+      IStructuredDocumentRegion documentRegion
+         ,
+      ITextRegion completionRegion
+         ,
+      int begin
+         ,
+      int length
+         ,
+      java.lang.String filter
+         ,
+      ITextViewer textViewer)</code></p><p>Constructor for the XSL content assistance for the test attribute.</p><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Methods Detail
+               </h2></td></tr></table><h2><a name="method_getCompletionProposals">getCompletionProposals</a></h2><p><code>public java.util.ArrayList <strong>getCompletionProposals</strong>()</code></p><p>(non-Javadoc)</p><h3>Returns</h3><p><code>java.util.ArrayList</code></p><hr></body></html>
\ No newline at end of file
diff --git a/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.contentassist.XPathElementContentAssist.html b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.contentassist.XPathElementContentAssist.html
new file mode 100644
index 0000000..22648c5
--- /dev/null
+++ b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.contentassist.XPathElementContentAssist.html
@@ -0,0 +1,41 @@
+<html><body><p><font size="+1"><strong>Package org.eclipse.wst.xsl.ui.internal.contentassist</strong></font></p><hr><h2><font size="-1"><strong>org.eclipse.wst.xsl.ui.internal.contentassist</strong></font><br>
+               Class XPathElementContentAssist</h2><br><hr><pre>public class <strong>XPathElementContentAssist</strong>
+extends org.eclipse.wst.xsl.ui.provisional.contentassist.AbstractXMLElementContentAssistRequest</pre>This class provides XML Element proposals within XPath related items like
+ select, test, and match attributes.  This will leverage an ContentModel that
+ has been loaded and try to provide all available XML elements that could be used.
+ It should be enhanced to know the elements to be used based on information from
+ the XPath.<p></p><p></p><hr><table width="100%" border="1"><tr bgcolor="#CCCCFF"><td width="100%"><h2>Constructor Summary</h2></td></tr><tr><td><code><strong><a href="#con_XPathElementContentAssist">XPathElementContentAssist</a></strong>(org.w3c.dom.Node node
+         ,
+      IStructuredDocumentRegion documentRegion
+         ,
+      ITextRegion completionRegion
+         ,
+      int begin
+         ,
+      int length
+         ,
+      java.lang.String filter
+         ,
+      ITextViewer textViewer)</code></td></tr></table><br><table width="100%" border="1"><tr cols="2" bgcolor="#CCCCFF"><td colspan="2" width="100%"><h2>Method Summary</h2></td></tr><tr valign="top"><td width="20%" align="right"><code>public java.util.ArrayList</code></td><td width="" align="left"><code><a href="#method_getCompletionProposals">getCompletionProposals</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               Provides a list of possible proposals for the XML Elements within the current
+ scope.  This leverages the ContentModel that was loaded by the XML Catalog, 
+ Custom Resolver, or the inferred grammar.</td></tr></table><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Constructor Detail
+               </h2></td></tr></table><h2><a name="con_XPathElementContentAssist">XPathElementContentAssist</a></h2><p><code>public <strong>XPathElementContentAssist</strong>(org.w3c.dom.Node node
+         ,
+      IStructuredDocumentRegion documentRegion
+         ,
+      ITextRegion completionRegion
+         ,
+      int begin
+         ,
+      int length
+         ,
+      java.lang.String filter
+         ,
+      ITextViewer textViewer)</code></p><p></p><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Methods Detail
+               </h2></td></tr></table><h2><a name="method_getCompletionProposals">getCompletionProposals</a></h2><p><code>public java.util.ArrayList <strong>getCompletionProposals</strong>()</code></p><p>Provides a list of possible proposals for the XML Elements within the current
+ scope.  This leverages the ContentModel that was loaded by the XML Catalog, 
+ Custom Resolver, or the inferred grammar.</p><h3>Returns</h3><p><code>java.util.ArrayList</code></p><hr></body></html>
\ No newline at end of file
diff --git a/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.contentassist.XSLContentAssistProcessor.html b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.contentassist.XSLContentAssistProcessor.html
new file mode 100644
index 0000000..5d423a5
--- /dev/null
+++ b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.contentassist.XSLContentAssistProcessor.html
@@ -0,0 +1,46 @@
+<html><body><p><font size="+1"><strong>Package org.eclipse.wst.xsl.ui.internal.contentassist</strong></font></p><hr><h2><font size="-1"><strong>org.eclipse.wst.xsl.ui.internal.contentassist</strong></font><br>
+               Class XSLContentAssistProcessor</h2><br><hr><pre>public class <strong>XSLContentAssistProcessor</strong>
+extends org.eclipse.wst.xsl.ui.provisional.contentassist.AbstractXSLContentAssistProcessor</pre>The XSL Content Assist Processor provides content assistance for various
+ attributes values within the XSL Editor. This includes support for xpaths on
+ select statements as well as on test and match attributes.<p></p><p></p><hr><table width="100%" border="1"><tr bgcolor="#CCCCFF"><td width="100%"><h2>Constructor Summary</h2></td></tr><tr><td><code><strong><a href="#con_XSLContentAssistProcessor">XSLContentAssistProcessor</a></strong>()</code></td></tr></table><br><table width="100%" border="1"><tr cols="2" bgcolor="#CCCCFF"><td colspan="2" width="100%"><h2>Method Summary</h2></td></tr><tr valign="top"><td width="20%" align="right"><code>protected boolean</code></td><td width="" align="left"><code><a href="#method_assistanceOnAttribute">assistanceOnAttribute</a>(IDOMNode node
+         ,
+      ITextRegion aRegion)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public ICompletionProposal[]</code></td><td width="" align="left"><code><a href="#method_computeCompletionProposals">computeCompletionProposals</a>(ITextViewer textViewer
+         ,
+      int documentPosition)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               CONTENT ASSIST STARTS HERE
+ 
+ Return a list of proposed code completions based on the specified
+ location within the document that corresponds to the current cursor
+ position within the text-editor control.</td></tr><tr valign="top"><td width="20%" align="right"><code>public IContextInformation[]</code></td><td width="" align="left"><code><a href="#method_computeContextInformation">computeContextInformation</a>(ITextViewer viewer
+         ,
+      int offset)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               (non-Javadoc)</td></tr><tr valign="top"><td width="20%" align="right"><code>public char[]</code></td><td width="" align="left"><code><a href="#method_getContextInformationAutoActivationCharacters">getContextInformationAutoActivationCharacters</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               (non-Javadoc)</td></tr><tr valign="top"><td width="20%" align="right"><code>public IContextInformationValidator</code></td><td width="" align="left"><code><a href="#method_getContextInformationValidator">getContextInformationValidator</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               (non-Javadoc)</td></tr><tr valign="top"><td width="20%" align="right"><code>public java.lang.String</code></td><td width="" align="left"><code><a href="#method_getMaximumVersion">getMaximumVersion</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public java.lang.String</code></td><td width="" align="left"><code><a href="#method_getMinimumVersion">getMinimumVersion</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public java.util.ArrayList</code></td><td width="" align="left"><code><a href="#method_getNamespaces">getNamespaces</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr></table><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Constructor Detail
+               </h2></td></tr></table><h2><a name="con_XSLContentAssistProcessor">XSLContentAssistProcessor</a></h2><p><code>public <strong>XSLContentAssistProcessor</strong>()</code></p><p>Provides an XSL Content Assist Processor class that is XSL aware and XML
+ aware.</p><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Methods Detail
+               </h2></td></tr></table><h2><a name="method_assistanceOnAttribute">assistanceOnAttribute</a></h2><p><code>protected boolean <strong>assistanceOnAttribute</strong>(IDOMNode node
+         ,
+      ITextRegion aRegion)</code></p><p></p><h3>Parameters</h3><p><code>node</code></p><p><code>aRegion</code></p><h3>Returns</h3><p><code>boolean</code></p><hr><h2><a name="method_computeCompletionProposals">computeCompletionProposals</a></h2><p><code>public ICompletionProposal[] <strong>computeCompletionProposals</strong>(ITextViewer textViewer
+         ,
+      int documentPosition)</code></p><p>CONTENT ASSIST STARTS HERE
+ 
+ Return a list of proposed code completions based on the specified
+ location within the document that corresponds to the current cursor
+ position within the text-editor control.</p><h3>Parameters</h3><p><code>textViewer</code></p><p><code>documentPosition</code> - - the cursor location within the document</p><h3>Returns</h3><p><code>ICompletionProposal[]</code> - an array of ICompletionProposal</p><hr><h2><a name="method_computeContextInformation">computeContextInformation</a></h2><p><code>public IContextInformation[] <strong>computeContextInformation</strong>(ITextViewer viewer
+         ,
+      int offset)</code></p><p>(non-Javadoc)</p><h3>Parameters</h3><p><code>viewer</code></p><p><code>offset</code></p><h3>Returns</h3><p><code>IContextInformation[]</code></p><hr><h2><a name="method_getContextInformationAutoActivationCharacters">getContextInformationAutoActivationCharacters</a></h2><p><code>public char[] <strong>getContextInformationAutoActivationCharacters</strong>()</code></p><p>(non-Javadoc)</p><h3>Returns</h3><p><code>char[]</code></p><hr><h2><a name="method_getContextInformationValidator">getContextInformationValidator</a></h2><p><code>public IContextInformationValidator <strong>getContextInformationValidator</strong>()</code></p><p>(non-Javadoc)</p><h3>Returns</h3><p><code>IContextInformationValidator</code></p><hr><h2><a name="method_getMaximumVersion">getMaximumVersion</a></h2><p><code>public java.lang.String <strong>getMaximumVersion</strong>()</code></p><p></p><h3>Returns</h3><p><code>java.lang.String</code></p><hr><h2><a name="method_getMinimumVersion">getMinimumVersion</a></h2><p><code>public java.lang.String <strong>getMinimumVersion</strong>()</code></p><p></p><h3>Returns</h3><p><code>java.lang.String</code></p><hr><h2><a name="method_getNamespaces">getNamespaces</a></h2><p><code>public java.util.ArrayList <strong>getNamespaces</strong>()</code></p><p></p><h3>Returns</h3><p><code>java.util.ArrayList</code></p><hr></body></html>
\ No newline at end of file
diff --git a/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.contentassist.XSLContentAssistRequestFactory.html b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.contentassist.XSLContentAssistRequestFactory.html
new file mode 100644
index 0000000..53e0511
--- /dev/null
+++ b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.contentassist.XSLContentAssistRequestFactory.html
@@ -0,0 +1,40 @@
+<html><body><p><font size="+1"><strong>Package org.eclipse.wst.xsl.ui.internal.contentassist</strong></font></p><hr><h2><font size="-1"><strong>org.eclipse.wst.xsl.ui.internal.contentassist</strong></font><br>
+               Class XSLContentAssistRequestFactory</h2><br><hr><pre>public class <strong>XSLContentAssistRequestFactory</strong>
+extends java.lang.Object</pre>A Factory that determines which Content Assist Request class is needed and
+ returns the appropriate class.<p></p><p></p><hr><table width="100%" border="1"><tr bgcolor="#CCCCFF"><td width="100%"><h2>Constructor Summary</h2></td></tr><tr><td><code><strong><a href="#con_XSLContentAssistRequestFactory">XSLContentAssistRequestFactory</a></strong>(ITextViewer textViewer
+         ,
+      int documentPosition
+         ,
+      IDOMNode xmlNode
+         ,
+      IStructuredDocumentRegion sdRegion
+         ,
+      ITextRegion completionRegion
+         ,
+      java.lang.String matchString)</code></td></tr></table><br><table width="100%" border="1"><tr cols="2" bgcolor="#CCCCFF"><td colspan="2" width="100%"><h2>Method Summary</h2></td></tr><tr valign="top"><td width="20%" align="right"><code>public org.eclipse.wst.xsl.ui.provisional.contentassist.IContentAssistProposalRequest</code></td><td width="" align="left"><code><a href="#method_getContentAssistRequest">getContentAssistRequest</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               Get the appropriate content assist request class for the XSL request.</td></tr><tr valign="top"><td width="20%" align="right"><code>protected boolean</code></td><td width="" align="left"><code><a href="#method_hasAttributeAtTextRegion">hasAttributeAtTextRegion</a>(java.lang.String attrName
+         ,
+      org.w3c.dom.NamedNodeMap nodeMap
+         ,
+      ITextRegion aRegion)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr></table><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Constructor Detail
+               </h2></td></tr></table><h2><a name="con_XSLContentAssistRequestFactory">XSLContentAssistRequestFactory</a></h2><p><code>public <strong>XSLContentAssistRequestFactory</strong>(ITextViewer textViewer
+         ,
+      int documentPosition
+         ,
+      IDOMNode xmlNode
+         ,
+      IStructuredDocumentRegion sdRegion
+         ,
+      ITextRegion completionRegion
+         ,
+      java.lang.String matchString)</code></p><p></p><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Methods Detail
+               </h2></td></tr></table><h2><a name="method_getContentAssistRequest">getContentAssistRequest</a></h2><p><code>public org.eclipse.wst.xsl.ui.provisional.contentassist.IContentAssistProposalRequest <strong>getContentAssistRequest</strong>()</code></p><p>Get the appropriate content assist request class for the XSL request.</p><h3>Returns</h3><p><code>org.eclipse.wst.xsl.ui.provisional.contentassist.IContentAssistProposalRequest</code></p><hr><h2><a name="method_hasAttributeAtTextRegion">hasAttributeAtTextRegion</a></h2><p><code>protected boolean <strong>hasAttributeAtTextRegion</strong>(java.lang.String attrName
+         ,
+      org.w3c.dom.NamedNodeMap nodeMap
+         ,
+      ITextRegion aRegion)</code></p><p></p><h3>Parameters</h3><p><code>attrName</code></p><p><code>nodeMap</code></p><p><code>aRegion</code></p><h3>Returns</h3><p><code>boolean</code></p><hr></body></html>
\ No newline at end of file
diff --git a/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.contentassist.XSLElementContentAssistRequest.html b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.contentassist.XSLElementContentAssistRequest.html
new file mode 100644
index 0000000..e806d6d
--- /dev/null
+++ b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.contentassist.XSLElementContentAssistRequest.html
@@ -0,0 +1,43 @@
+<html><body><p><font size="+1"><strong>Package org.eclipse.wst.xsl.ui.internal.contentassist</strong></font></p><hr><h2><font size="-1"><strong>org.eclipse.wst.xsl.ui.internal.contentassist</strong></font><br>
+               Class XSLElementContentAssistRequest</h2><br><hr><pre>public class <strong>XSLElementContentAssistRequest</strong>
+extends org.eclipse.wst.xsl.ui.provisional.contentassist.AbstractXMLElementContentAssistRequest</pre>This class provides content assistance proposals outside of the XSL namespace.  Normal
+ XML editor content assistance only provides proposals for items within the same namespace
+ or if an element has children elements.   This class extends this functionality by checking
+ for the first XSL ancestor and uses that to determine what proposals should be
+ provided in the way of xsl elements.<p></p><p></p><hr><table width="100%" border="1"><tr bgcolor="#CCCCFF"><td width="100%"><h2>Constructor Summary</h2></td></tr><tr><td><code><strong><a href="#con_XSLElementContentAssistRequest">XSLElementContentAssistRequest</a></strong>(org.w3c.dom.Node node
+         ,
+      IStructuredDocumentRegion documentRegion
+         ,
+      ITextRegion completionRegion
+         ,
+      int begin
+         ,
+      int length
+         ,
+      java.lang.String filter
+         ,
+      ITextViewer textViewer)</code></td></tr></table><br><table width="100%" border="1"><tr cols="2" bgcolor="#CCCCFF"><td colspan="2" width="100%"><h2>Method Summary</h2></td></tr><tr valign="top"><td width="20%" align="right"><code>protected void</code></td><td width="" align="left"><code><a href="#method_computeTagNameProposals">computeTagNameProposals</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               Calculates the proposals for the XML Tag Name Region.</td></tr><tr valign="top"><td width="20%" align="right"><code>protected void</code></td><td width="" align="left"><code><a href="#method_computeTagOpenProposals">computeTagOpenProposals</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               Calculate proposals for open content regions.</td></tr><tr valign="top"><td width="20%" align="right"><code>public java.util.ArrayList</code></td><td width="" align="left"><code><a href="#method_getCompletionProposals">getCompletionProposals</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               Provides a list of possible proposals for the XSL Elements within the current
+ scope.</td></tr></table><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Constructor Detail
+               </h2></td></tr></table><h2><a name="con_XSLElementContentAssistRequest">XSLElementContentAssistRequest</a></h2><p><code>public <strong>XSLElementContentAssistRequest</strong>(org.w3c.dom.Node node
+         ,
+      IStructuredDocumentRegion documentRegion
+         ,
+      ITextRegion completionRegion
+         ,
+      int begin
+         ,
+      int length
+         ,
+      java.lang.String filter
+         ,
+      ITextViewer textViewer)</code></p><p></p><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Methods Detail
+               </h2></td></tr></table><h2><a name="method_computeTagNameProposals">computeTagNameProposals</a></h2><p><code>protected void <strong>computeTagNameProposals</strong>()</code></p><p>Calculates the proposals for the XML Tag Name Region.</p><hr><h2><a name="method_computeTagOpenProposals">computeTagOpenProposals</a></h2><p><code>protected void <strong>computeTagOpenProposals</strong>()</code></p><p>Calculate proposals for open content regions.</p><hr><h2><a name="method_getCompletionProposals">getCompletionProposals</a></h2><p><code>public java.util.ArrayList <strong>getCompletionProposals</strong>()</code></p><p>Provides a list of possible proposals for the XSL Elements within the current
+ scope.</p><h3>Returns</h3><p><code>java.util.ArrayList</code></p><hr></body></html>
\ No newline at end of file
diff --git a/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.contentassist.XSLTemplateCompletionProcessor.html b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.contentassist.XSLTemplateCompletionProcessor.html
new file mode 100644
index 0000000..1a8d191
--- /dev/null
+++ b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.contentassist.XSLTemplateCompletionProcessor.html
@@ -0,0 +1,43 @@
+<html><body><p><font size="+1"><strong>Package org.eclipse.wst.xsl.ui.internal.contentassist</strong></font></p><hr><h2><font size="-1"><strong>org.eclipse.wst.xsl.ui.internal.contentassist</strong></font><br>
+               Class XSLTemplateCompletionProcessor</h2><br><hr><pre>package-private class <strong>XSLTemplateCompletionProcessor</strong>
+extends TemplateCompletionProcessor</pre>Completion processor for XML Templates. Most of the work is already done by
+ the XML Content Assist processor, so by the time the
+ XMLTemplateCompletionProcessor is asked for content assist proposals, the
+ XML content assist processor has already set the context type for
+ templates.<hr><table width="100%" border="1"><tr bgcolor="#CCCCFF"><td width="100%"><h2>Constructor Summary</h2></td></tr><tr><td><code><strong><a href="#con_XSLTemplateCompletionProcessor">XSLTemplateCompletionProcessor</a></strong>()</code></td></tr></table><br><table width="100%" border="1"><tr cols="2" bgcolor="#CCCCFF"><td colspan="2" width="100%"><h2>Method Summary</h2></td></tr><tr valign="top"><td width="20%" align="right"><code>public ICompletionProposal[]</code></td><td width="" align="left"><code><a href="#method_computeCompletionProposals">computeCompletionProposals</a>(ITextViewer viewer
+         ,
+      int offset)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>protected ICompletionProposal</code></td><td width="" align="left"><code><a href="#method_createProposal">createProposal</a>(Template template
+         ,
+      TemplateContext context
+         ,
+      IRegion region
+         ,
+      int relevance)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>protected TemplateContextType</code></td><td width="" align="left"><code><a href="#method_getContextType">getContextType</a>(ITextViewer viewer
+         ,
+      IRegion region)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>protected Image</code></td><td width="" align="left"><code><a href="#method_getImage">getImage</a>(Template template)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>protected Template[]</code></td><td width="" align="left"><code><a href="#method_getTemplates">getTemplates</a>(java.lang.String contextTypeId)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>package-private void</code></td><td width="" align="left"><code><a href="#method_setContextType">setContextType</a>(java.lang.String contextTypeId)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr></table><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Constructor Detail
+               </h2></td></tr></table><h2><a name="con_XSLTemplateCompletionProcessor">XSLTemplateCompletionProcessor</a></h2><p><code>package-private <strong>XSLTemplateCompletionProcessor</strong>()</code></p><p></p><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Methods Detail
+               </h2></td></tr></table><h2><a name="method_computeCompletionProposals">computeCompletionProposals</a></h2><p><code>public ICompletionProposal[] <strong>computeCompletionProposals</strong>(ITextViewer viewer
+         ,
+      int offset)</code></p><p></p><h3>Parameters</h3><p><code>viewer</code></p><p><code>offset</code></p><h3>Returns</h3><p><code>ICompletionProposal[]</code></p><hr><h2><a name="method_createProposal">createProposal</a></h2><p><code>protected ICompletionProposal <strong>createProposal</strong>(Template template
+         ,
+      TemplateContext context
+         ,
+      IRegion region
+         ,
+      int relevance)</code></p><p></p><h3>Parameters</h3><p><code>template</code></p><p><code>context</code></p><p><code>region</code></p><p><code>relevance</code></p><h3>Returns</h3><p><code>ICompletionProposal</code></p><hr><h2><a name="method_getContextType">getContextType</a></h2><p><code>protected TemplateContextType <strong>getContextType</strong>(ITextViewer viewer
+         ,
+      IRegion region)</code></p><p></p><h3>Parameters</h3><p><code>viewer</code></p><p><code>region</code></p><h3>Returns</h3><p><code>TemplateContextType</code></p><hr><h2><a name="method_getImage">getImage</a></h2><p><code>protected Image <strong>getImage</strong>(Template template)</code></p><p></p><h3>Parameters</h3><p><code>template</code></p><h3>Returns</h3><p><code>Image</code></p><hr><h2><a name="method_getTemplates">getTemplates</a></h2><p><code>protected Template[] <strong>getTemplates</strong>(java.lang.String contextTypeId)</code></p><p></p><h3>Parameters</h3><p><code>contextTypeId</code></p><h3>Returns</h3><p><code>Template[]</code></p><hr><h2><a name="method_setContextType">setContextType</a></h2><p><code>package-private void <strong>setContextType</strong>(java.lang.String contextTypeId)</code></p><p></p><h3>Parameters</h3><p><code>contextTypeId</code></p><hr></body></html>
\ No newline at end of file
diff --git a/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.contentassist.XSLTemplateContentAssistProcessor.html b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.contentassist.XSLTemplateContentAssistProcessor.html
new file mode 100644
index 0000000..a0468fc
--- /dev/null
+++ b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.contentassist.XSLTemplateContentAssistProcessor.html
@@ -0,0 +1,29 @@
+<html><body><p><font size="+1"><strong>Package org.eclipse.wst.xsl.ui.internal.contentassist</strong></font></p><hr><h2><font size="-1"><strong>org.eclipse.wst.xsl.ui.internal.contentassist</strong></font><br>
+               Class XSLTemplateContentAssistProcessor</h2><br><hr><pre>public class <strong>XSLTemplateContentAssistProcessor</strong>
+extends org.eclipse.wst.xsl.ui.provisional.contentassist.AbstractXSLContentAssistProcessor</pre><hr><table width="100%" border="1"><tr bgcolor="#CCCCFF"><td width="100%"><h2>Constructor Summary</h2></td></tr><tr><td><code><strong><a href="#con_XSLTemplateContentAssistProcessor">XSLTemplateContentAssistProcessor</a></strong>()</code></td></tr></table><br><table width="100%" border="1"><tr cols="2" bgcolor="#CCCCFF"><td colspan="2" width="100%"><h2>Method Summary</h2></td></tr><tr valign="top"><td width="20%" align="right"><code>public ICompletionProposal[]</code></td><td width="" align="left"><code><a href="#method_computeCompletionProposals">computeCompletionProposals</a>(ITextViewer viewer
+         ,
+      int offset)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public IContextInformation[]</code></td><td width="" align="left"><code><a href="#method_computeContextInformation">computeContextInformation</a>(ITextViewer viewer
+         ,
+      int offset)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public char[]</code></td><td width="" align="left"><code><a href="#method_getContextInformationAutoActivationCharacters">getContextInformationAutoActivationCharacters</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public IContextInformationValidator</code></td><td width="" align="left"><code><a href="#method_getContextInformationValidator">getContextInformationValidator</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public java.lang.String</code></td><td width="" align="left"><code><a href="#method_getMaximumVersion">getMaximumVersion</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public java.lang.String</code></td><td width="" align="left"><code><a href="#method_getMinimumVersion">getMinimumVersion</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public java.util.ArrayList</code></td><td width="" align="left"><code><a href="#method_getNamespaces">getNamespaces</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr></table><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Constructor Detail
+               </h2></td></tr></table><h2><a name="con_XSLTemplateContentAssistProcessor">XSLTemplateContentAssistProcessor</a></h2><p><code>public <strong>XSLTemplateContentAssistProcessor</strong>()</code></p><p></p><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Methods Detail
+               </h2></td></tr></table><h2><a name="method_computeCompletionProposals">computeCompletionProposals</a></h2><p><code>public ICompletionProposal[] <strong>computeCompletionProposals</strong>(ITextViewer viewer
+         ,
+      int offset)</code></p><p></p><h3>Parameters</h3><p><code>viewer</code></p><p><code>offset</code></p><h3>Returns</h3><p><code>ICompletionProposal[]</code></p><hr><h2><a name="method_computeContextInformation">computeContextInformation</a></h2><p><code>public IContextInformation[] <strong>computeContextInformation</strong>(ITextViewer viewer
+         ,
+      int offset)</code></p><p></p><h3>Parameters</h3><p><code>viewer</code></p><p><code>offset</code></p><h3>Returns</h3><p><code>IContextInformation[]</code></p><hr><h2><a name="method_getContextInformationAutoActivationCharacters">getContextInformationAutoActivationCharacters</a></h2><p><code>public char[] <strong>getContextInformationAutoActivationCharacters</strong>()</code></p><p></p><h3>Returns</h3><p><code>char[]</code></p><hr><h2><a name="method_getContextInformationValidator">getContextInformationValidator</a></h2><p><code>public IContextInformationValidator <strong>getContextInformationValidator</strong>()</code></p><p></p><h3>Returns</h3><p><code>IContextInformationValidator</code></p><hr><h2><a name="method_getMaximumVersion">getMaximumVersion</a></h2><p><code>public java.lang.String <strong>getMaximumVersion</strong>()</code></p><p></p><h3>Returns</h3><p><code>java.lang.String</code></p><hr><h2><a name="method_getMinimumVersion">getMinimumVersion</a></h2><p><code>public java.lang.String <strong>getMinimumVersion</strong>()</code></p><p></p><h3>Returns</h3><p><code>java.lang.String</code></p><hr><h2><a name="method_getNamespaces">getNamespaces</a></h2><p><code>public java.util.ArrayList <strong>getNamespaces</strong>()</code></p><p></p><h3>Returns</h3><p><code>java.util.ArrayList</code></p><hr></body></html>
\ No newline at end of file
diff --git a/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.contentassist.contentmodel.XSLContentModelGenerator.html b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.contentassist.contentmodel.XSLContentModelGenerator.html
new file mode 100644
index 0000000..5581494
--- /dev/null
+++ b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.contentassist.contentmodel.XSLContentModelGenerator.html
@@ -0,0 +1,66 @@
+<html><body><p><font size="+1"><strong>Package org.eclipse.wst.xsl.ui.internal.contentassist.contentmodel</strong></font></p><hr><h2><font size="-1"><strong>org.eclipse.wst.xsl.ui.internal.contentassist.contentmodel</strong></font><br>
+               Class XSLContentModelGenerator</h2><br><hr><pre>public class <strong>XSLContentModelGenerator</strong>
+extends AbstractContentModelGenerator</pre>This provides the ContentModel based off the XSL xml schema grammars and other
+ grammars provided by the xml editor.<p></p><hr><table width="100%" border="1"><tr bgcolor="#CCCCFF"><td width="100%"><h2>Constructor Summary</h2></td></tr><tr><td><code><strong><a href="#con_XSLContentModelGenerator">XSLContentModelGenerator</a></strong>()</code></td></tr></table><br><table width="100%" border="1"><tr cols="2" bgcolor="#CCCCFF"><td colspan="2" width="100%"><h2>Method Summary</h2></td></tr><tr valign="top"><td width="20%" align="right"><code>public void</code></td><td width="" align="left"><code><a href="#method_generateAttribute">generateAttribute</a>(CMAttributeDeclaration attrDecl
+         ,
+      java.lang.StringBuffer buffer)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               (non-Javadoc)</td></tr><tr valign="top"><td width="20%" align="right"><code>protected void</code></td><td width="" align="left"><code><a href="#method_generateEndTag">generateEndTag</a>(java.lang.String tagName
+         ,
+      org.w3c.dom.Node parentNode
+         ,
+      CMElementDeclaration elementDecl
+         ,
+      java.lang.StringBuffer buffer)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public void</code></td><td width="" align="left"><code><a href="#method_generateRequiredAttribute">generateRequiredAttribute</a>(org.w3c.dom.Node ownerNode
+         ,
+      CMAttributeDeclaration attrDecl
+         ,
+      java.lang.StringBuffer buffer)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>protected void</code></td><td width="" align="left"><code><a href="#method_generateStartTag">generateStartTag</a>(java.lang.String tagName
+         ,
+      org.w3c.dom.Node parentNode
+         ,
+      CMElementDeclaration elementDecl
+         ,
+      java.lang.StringBuffer buffer)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public int</code></td><td width="" align="left"><code><a href="#method_getMinimalStartTagLength">getMinimalStartTagLength</a>(org.w3c.dom.Node node
+         ,
+      CMElementDeclaration elementDecl)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               (non-Javadoc)</td></tr><tr valign="top"><td width="20%" align="right"><code>protected java.lang.String</code></td><td width="" align="left"><code><a href="#method_getOtherClose">getOtherClose</a>(org.w3c.dom.Node notATagNode)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public java.lang.String</code></td><td width="" align="left"><code><a href="#method_getStartTagClose">getStartTagClose</a>(org.w3c.dom.Node parentNode
+         ,
+      CMElementDeclaration elementDecl)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               (non-Javadoc)</td></tr></table><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Constructor Detail
+               </h2></td></tr></table><h2><a name="con_XSLContentModelGenerator">XSLContentModelGenerator</a></h2><p><code>public <strong>XSLContentModelGenerator</strong>()</code></p><p>XSLContentModelGenerator constructor comment.</p><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Methods Detail
+               </h2></td></tr></table><h2><a name="method_generateAttribute">generateAttribute</a></h2><p><code>public void <strong>generateAttribute</strong>(CMAttributeDeclaration attrDecl
+         ,
+      java.lang.StringBuffer buffer)</code></p><p>(non-Javadoc)</p><h3>Parameters</h3><p><code>attrDecl</code></p><p><code>buffer</code></p><hr><h2><a name="method_generateEndTag">generateEndTag</a></h2><p><code>protected void <strong>generateEndTag</strong>(java.lang.String tagName
+         ,
+      org.w3c.dom.Node parentNode
+         ,
+      CMElementDeclaration elementDecl
+         ,
+      java.lang.StringBuffer buffer)</code></p><p></p><h3>Parameters</h3><p><code>tagName</code></p><p><code>parentNode</code></p><p><code>elementDecl</code></p><p><code>buffer</code></p><hr><h2><a name="method_generateRequiredAttribute">generateRequiredAttribute</a></h2><p><code>public void <strong>generateRequiredAttribute</strong>(org.w3c.dom.Node ownerNode
+         ,
+      CMAttributeDeclaration attrDecl
+         ,
+      java.lang.StringBuffer buffer)</code></p><p></p><h3>Parameters</h3><p><code>ownerNode</code></p><p><code>attrDecl</code></p><p><code>buffer</code></p><hr><h2><a name="method_generateStartTag">generateStartTag</a></h2><p><code>protected void <strong>generateStartTag</strong>(java.lang.String tagName
+         ,
+      org.w3c.dom.Node parentNode
+         ,
+      CMElementDeclaration elementDecl
+         ,
+      java.lang.StringBuffer buffer)</code></p><p></p><h3>Parameters</h3><p><code>tagName</code></p><p><code>parentNode</code></p><p><code>elementDecl</code></p><p><code>buffer</code></p><hr><h2><a name="method_getMinimalStartTagLength">getMinimalStartTagLength</a></h2><p><code>public int <strong>getMinimalStartTagLength</strong>(org.w3c.dom.Node node
+         ,
+      CMElementDeclaration elementDecl)</code></p><p>(non-Javadoc)</p><h3>Parameters</h3><p><code>node</code></p><p><code>elementDecl</code></p><h3>Returns</h3><p><code>int</code></p><hr><h2><a name="method_getOtherClose">getOtherClose</a></h2><p><code>protected java.lang.String <strong>getOtherClose</strong>(org.w3c.dom.Node notATagNode)</code></p><p></p><h3>Parameters</h3><p><code>notATagNode</code></p><h3>Returns</h3><p><code>java.lang.String</code></p><hr><h2><a name="method_getStartTagClose">getStartTagClose</a></h2><p><code>public java.lang.String <strong>getStartTagClose</strong>(org.w3c.dom.Node parentNode
+         ,
+      CMElementDeclaration elementDecl)</code></p><p>(non-Javadoc)</p><h3>Parameters</h3><p><code>parentNode</code></p><p><code>elementDecl</code></p><h3>Returns</h3><p><code>java.lang.String</code></p><hr></body></html>
\ No newline at end of file
diff --git a/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.contentassist.href.HrefContentAssistRequest.html b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.contentassist.href.HrefContentAssistRequest.html
new file mode 100644
index 0000000..642f5d0
--- /dev/null
+++ b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.contentassist.href.HrefContentAssistRequest.html
@@ -0,0 +1,39 @@
+<html><body><p><font size="+1"><strong>Package org.eclipse.wst.xsl.ui.internal.contentassist.href</strong></font></p><hr><h2><font size="-1"><strong>org.eclipse.wst.xsl.ui.internal.contentassist.href</strong></font><br>
+               Class HrefContentAssistRequest</h2><br><hr><pre>public class <strong>HrefContentAssistRequest</strong>
+extends org.eclipse.wst.xsl.ui.provisional.contentassist.AbstractXSLContentAssistRequest</pre><p>This provides content assistance proposals for href attributes with a mode attribute.</p>
+ <p>Content assistance is restricted to files with the XSL content type that are in the same project as the file currently 
+ being edited. This is because projects in the workspace can have completely different physical file locations, leading to 
+ confusion in relative file paths across projects. Similarly, no content assistance is given for files external to the workspace. 
+ Such files should be assigned an absolute 'file:///' URL.</p><p></p><p></p><hr><table width="100%" border="1"><tr bgcolor="#CCCCFF"><td width="100%"><h2>Constructor Summary</h2></td></tr><tr><td><code><strong><a href="#con_HrefContentAssistRequest">HrefContentAssistRequest</a></strong>(org.w3c.dom.Node node
+         ,
+      IStructuredDocumentRegion documentRegion
+         ,
+      ITextRegion completionRegion
+         ,
+      int begin
+         ,
+      int length
+         ,
+      java.lang.String filter
+         ,
+      ITextViewer textViewer)</code></td></tr></table><br><table width="100%" border="1"><tr cols="2" bgcolor="#CCCCFF"><td colspan="2" width="100%"><h2>Method Summary</h2></td></tr><tr valign="top"><td width="20%" align="right"><code>public java.util.ArrayList</code></td><td width="" align="left"><code><a href="#method_getCompletionProposals">getCompletionProposals</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               The main method that returns an array of proposals. Returns relative paths to files in the current project.</td></tr><tr valign="top"><td width="20%" align="right"><code>protected java.util.List</code></td><td width="" align="left"><code><a href="#method_sortProposals">sortProposals</a>(java.util.List proposalsIn)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               Do not wish to sort the proposals - they are already sorted</td></tr></table><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Constructor Detail
+               </h2></td></tr></table><h2><a name="con_HrefContentAssistRequest">HrefContentAssistRequest</a></h2><p><code>public <strong>HrefContentAssistRequest</strong>(org.w3c.dom.Node node
+         ,
+      IStructuredDocumentRegion documentRegion
+         ,
+      ITextRegion completionRegion
+         ,
+      int begin
+         ,
+      int length
+         ,
+      java.lang.String filter
+         ,
+      ITextViewer textViewer)</code></p><p>Constructor for creating the HrefContentAssistRequest class.</p><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Methods Detail
+               </h2></td></tr></table><h2><a name="method_getCompletionProposals">getCompletionProposals</a></h2><p><code>public java.util.ArrayList <strong>getCompletionProposals</strong>()</code></p><p>The main method that returns an array of proposals. Returns relative paths to files in the current project.</p><h3>Returns</h3><p><code>java.util.ArrayList</code> - ICompletionProposal[]</p><hr><h2><a name="method_sortProposals">sortProposals</a></h2><p><code>protected java.util.List <strong>sortProposals</strong>(java.util.List proposalsIn)</code></p><p>Do not wish to sort the proposals - they are already sorted</p><h3>Parameters</h3><p><code>proposalsIn</code></p><h3>Returns</h3><p><code>java.util.List</code> - the same list, in the same order</p><hr></body></html>
\ No newline at end of file
diff --git a/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.contentassist.href.PathComparator.html b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.contentassist.href.PathComparator.html
new file mode 100644
index 0000000..7918d07
--- /dev/null
+++ b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.contentassist.href.PathComparator.html
@@ -0,0 +1,13 @@
+<html><body><p><font size="+1"><strong>Package org.eclipse.wst.xsl.ui.internal.contentassist.href</strong></font></p><hr><h2><font size="-1"><strong>org.eclipse.wst.xsl.ui.internal.contentassist.href</strong></font><br>
+               Class PathComparator</h2><br><hr><pre>package-private class <strong>PathComparator</strong>
+extends java.lang.Object</pre><hr><table width="100%" border="1"><tr bgcolor="#CCCCFF"><td width="100%"><h2>Constructor Summary</h2></td></tr><tr><td><code><strong><a href="#con_PathComparator">PathComparator</a></strong>()</code></td></tr></table><br><table width="100%" border="1"><tr cols="2" bgcolor="#CCCCFF"><td colspan="2" width="100%"><h2>Method Summary</h2></td></tr><tr valign="top"><td width="20%" align="right"><code>public int</code></td><td width="" align="left"><code><a href="#method_compare">compare</a>(IPath o1
+         ,
+      IPath o2)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr></table><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Constructor Detail
+               </h2></td></tr></table><h2><a name="con_PathComparator">PathComparator</a></h2><p><code>package-private <strong>PathComparator</strong>()</code></p><p></p><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Methods Detail
+               </h2></td></tr></table><h2><a name="method_compare">compare</a></h2><p><code>public int <strong>compare</strong>(IPath o1
+         ,
+      IPath o2)</code></p><p></p><h3>Parameters</h3><p><code>o1</code></p><p><code>o2</code></p><h3>Returns</h3><p><code>int</code></p><hr></body></html>
\ No newline at end of file
diff --git a/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.contentoutline.AttributeShowingLabelProvider.html b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.contentoutline.AttributeShowingLabelProvider.html
new file mode 100644
index 0000000..36b2cd5
--- /dev/null
+++ b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.contentoutline.AttributeShowingLabelProvider.html
@@ -0,0 +1,27 @@
+<html><body><p><font size="+1"><strong>Package org.eclipse.wst.xsl.ui.internal.contentoutline</strong></font></p><hr><h2><font size="-1"><strong>org.eclipse.wst.xsl.ui.internal.contentoutline</strong></font><br>
+               Class AttributeShowingLabelProvider</h2><br><hr><pre>public class <strong>AttributeShowingLabelProvider</strong>
+extends org.eclipse.wst.xsl.ui.internal.contentoutline.JFaceNodeLabelProvider</pre><hr><table width="100%" border="1"><tr cols="2" bgcolor="#CCCCFF"><td colspan="2" width="100%"><h2>Field Summary</h2></td></tr><tr valign="top"><td width="20%" align="right"><code>package-private static  java.lang.String</code></td><td width="80%" align="left"><code><a href="#field_ATTR_ID">ATTR_ID</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>package-private static  java.lang.String</code></td><td width="80%" align="left"><code><a href="#field_ATTR_NAME">ATTR_NAME</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>package-private boolean</code></td><td width="80%" align="left"><code><a href="#field_fShowAttributes">fShowAttributes</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr></table><br><table width="100%" border="1"><tr bgcolor="#CCCCFF"><td width="100%"><h2>Constructor Summary</h2></td></tr><tr><td><code><strong><a href="#con_AttributeShowingLabelProvider">AttributeShowingLabelProvider</a></strong>(boolean showAttributes)</code></td></tr></table><br><table width="100%" border="1"><tr cols="2" bgcolor="#CCCCFF"><td colspan="2" width="100%"><h2>Method Summary</h2></td></tr><tr valign="top"><td width="20%" align="right"><code>public java.lang.String</code></td><td width="" align="left"><code><a href="#method_getText">getText</a>(java.lang.Object o)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public java.lang.String</code></td><td width="" align="left"><code><a href="#method_getToolTipText">getToolTipText</a>(java.lang.Object element)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public boolean</code></td><td width="" align="left"><code><a href="#method_isLabelProperty">isLabelProperty</a>(java.lang.Object element
+         ,
+      java.lang.String property)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public void</code></td><td width="" align="left"><code><a href="#method_setShowAttributes">setShowAttributes</a>(boolean fShowAttributes)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr></table><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Field Detail
+               </h2></td></tr></table><h2><a name="field_ATTR_ID">ATTR_ID</a></h2><p><code>package-private static  java.lang.String <strong>ATTR_ID</strong></code></p><hr><h2><a name="field_ATTR_NAME">ATTR_NAME</a></h2><p><code>package-private static  java.lang.String <strong>ATTR_NAME</strong></code></p><hr><h2><a name="field_fShowAttributes">fShowAttributes</a></h2><p><code>package-private boolean <strong>fShowAttributes</strong></code></p><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Constructor Detail
+               </h2></td></tr></table><h2><a name="con_AttributeShowingLabelProvider">AttributeShowingLabelProvider</a></h2><p><code>public <strong>AttributeShowingLabelProvider</strong>(boolean showAttributes)</code></p><p></p><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Methods Detail
+               </h2></td></tr></table><h2><a name="method_getText">getText</a></h2><p><code>public java.lang.String <strong>getText</strong>(java.lang.Object o)</code></p><p></p><h3>Parameters</h3><p><code>o</code></p><h3>Returns</h3><p><code>java.lang.String</code></p><hr><h2><a name="method_getToolTipText">getToolTipText</a></h2><p><code>public java.lang.String <strong>getToolTipText</strong>(java.lang.Object element)</code></p><p></p><h3>Parameters</h3><p><code>element</code></p><h3>Returns</h3><p><code>java.lang.String</code></p><hr><h2><a name="method_isLabelProperty">isLabelProperty</a></h2><p><code>public boolean <strong>isLabelProperty</strong>(java.lang.Object element
+         ,
+      java.lang.String property)</code></p><p></p><h3>Parameters</h3><p><code>element</code></p><p><code>property</code></p><h3>Returns</h3><p><code>boolean</code></p><hr><h2><a name="method_setShowAttributes">setShowAttributes</a></h2><p><code>public void <strong>setShowAttributes</strong>(boolean fShowAttributes)</code></p><p></p><h3>Parameters</h3><p><code>fShowAttributes</code></p><hr></body></html>
\ No newline at end of file
diff --git a/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.contentoutline.JFaceNodeAdapter.html b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.contentoutline.JFaceNodeAdapter.html
new file mode 100644
index 0000000..8b98a4d
--- /dev/null
+++ b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.contentoutline.JFaceNodeAdapter.html
@@ -0,0 +1,63 @@
+<html><body><p><font size="+1"><strong>Package org.eclipse.wst.xsl.ui.internal.contentoutline</strong></font></p><hr><h2><font size="-1"><strong>org.eclipse.wst.xsl.ui.internal.contentoutline</strong></font><br>
+               Class JFaceNodeAdapter</h2><br><hr><pre>public class <strong>JFaceNodeAdapter</strong>
+extends java.lang.Object</pre>Adapts a DOM node to a JFace viewer.<hr><table width="100%" border="1"><tr cols="2" bgcolor="#CCCCFF"><td colspan="2" width="100%"><h2>Field Summary</h2></td></tr><tr valign="top"><td width="20%" align="right"><code>package-private static  java.lang.Class</code></td><td width="80%" align="left"><code><a href="#field_ADAPTER_KEY">ADAPTER_KEY</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>package-private org.eclipse.wst.xsl.ui.internal.contentoutline.JFaceNodeAdapterFactory</code></td><td width="80%" align="left"><code><a href="#field_fAdapterFactory">fAdapterFactory</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>package-private org.eclipse.wst.xsl.ui.internal.contentoutline.RefreshStructureJob</code></td><td width="80%" align="left"><code><a href="#field_fRefreshJob">fRefreshJob</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr></table><br><table width="100%" border="1"><tr bgcolor="#CCCCFF"><td width="100%"><h2>Constructor Summary</h2></td></tr><tr><td><code><strong><a href="#con_JFaceNodeAdapter">JFaceNodeAdapter</a></strong>(org.eclipse.wst.xsl.ui.internal.contentoutline.JFaceNodeAdapterFactory adapterFactory)</code></td></tr></table><br><table width="100%" border="1"><tr cols="2" bgcolor="#CCCCFF"><td colspan="2" width="100%"><h2>Method Summary</h2></td></tr><tr valign="top"><td width="20%" align="right"><code>protected Image</code></td><td width="" align="left"><code><a href="#method_createImage">createImage</a>(java.lang.Object object)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>protected Image</code></td><td width="" align="left"><code><a href="#method_createXMLImageDescriptor">createXMLImageDescriptor</a>(java.lang.String imageResourceName)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public java.lang.Object[]</code></td><td width="" align="left"><code><a href="#method_getChildren">getChildren</a>(java.lang.Object object)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public java.lang.Object[]</code></td><td width="" align="left"><code><a href="#method_getElements">getElements</a>(java.lang.Object node)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               Returns an enumeration with the elements belonging to the passed
+ element. These are the top level items in a list, tree, table, etc...</td></tr><tr valign="top"><td width="20%" align="right"><code>public Image</code></td><td width="" align="left"><code><a href="#method_getLabelImage">getLabelImage</a>(java.lang.Object node)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               Fetches the label image specific to this object instance.</td></tr><tr valign="top"><td width="20%" align="right"><code>public java.lang.String</code></td><td width="" align="left"><code><a href="#method_getLabelText">getLabelText</a>(java.lang.Object node)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               Fetches the label text specific to this object instance.</td></tr><tr valign="top"><td width="20%" align="right"><code>public java.lang.Object</code></td><td width="" align="left"><code><a href="#method_getParent">getParent</a>(java.lang.Object object)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>protected ImageDescriptor</code></td><td width="" align="left"><code><a href="#method_getXSLImage">getXSLImage</a>(org.w3c.dom.Element node)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public boolean</code></td><td width="" align="left"><code><a href="#method_hasChildren">hasChildren</a>(java.lang.Object object)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public boolean</code></td><td width="" align="left"><code><a href="#method_isAdapterForType">isAdapterForType</a>(java.lang.Object type)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               Allowing the INodeAdapter to compare itself against the type allows it
+ to return true in more than one case.</td></tr><tr valign="top"><td width="20%" align="right"><code>public void</code></td><td width="" align="left"><code><a href="#method_notifyChanged">notifyChanged</a>(INodeNotifier notifier
+         ,
+      int eventType
+         ,
+      java.lang.Object changedFeature
+         ,
+      java.lang.Object oldValue
+         ,
+      java.lang.Object newValue
+         ,
+      int pos)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               Called by the object being adapter (the notifier) when something has
+ changed.</td></tr></table><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Field Detail
+               </h2></td></tr></table><h2><a name="field_ADAPTER_KEY">ADAPTER_KEY</a></h2><p><code>package-private static  java.lang.Class <strong>ADAPTER_KEY</strong></code></p><hr><h2><a name="field_fAdapterFactory">fAdapterFactory</a></h2><p><code>package-private org.eclipse.wst.xsl.ui.internal.contentoutline.JFaceNodeAdapterFactory <strong>fAdapterFactory</strong></code></p><hr><h2><a name="field_fRefreshJob">fRefreshJob</a></h2><p><code>package-private org.eclipse.wst.xsl.ui.internal.contentoutline.RefreshStructureJob <strong>fRefreshJob</strong></code></p><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Constructor Detail
+               </h2></td></tr></table><h2><a name="con_JFaceNodeAdapter">JFaceNodeAdapter</a></h2><p><code>public <strong>JFaceNodeAdapter</strong>(org.eclipse.wst.xsl.ui.internal.contentoutline.JFaceNodeAdapterFactory adapterFactory)</code></p><p></p><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Methods Detail
+               </h2></td></tr></table><h2><a name="method_createImage">createImage</a></h2><p><code>protected Image <strong>createImage</strong>(java.lang.Object object)</code></p><p></p><h3>Parameters</h3><p><code>object</code></p><h3>Returns</h3><p><code>Image</code></p><hr><h2><a name="method_createXMLImageDescriptor">createXMLImageDescriptor</a></h2><p><code>protected Image <strong>createXMLImageDescriptor</strong>(java.lang.String imageResourceName)</code></p><p></p><h3>Parameters</h3><p><code>imageResourceName</code></p><h3>Returns</h3><p><code>Image</code></p><hr><h2><a name="method_getChildren">getChildren</a></h2><p><code>public java.lang.Object[] <strong>getChildren</strong>(java.lang.Object object)</code></p><p></p><h3>Parameters</h3><p><code>object</code></p><h3>Returns</h3><p><code>java.lang.Object[]</code></p><hr><h2><a name="method_getElements">getElements</a></h2><p><code>public java.lang.Object[] <strong>getElements</strong>(java.lang.Object node)</code></p><p>Returns an enumeration with the elements belonging to the passed
+ element. These are the top level items in a list, tree, table, etc...</p><h3>Parameters</h3><p><code>node</code></p><h3>Returns</h3><p><code>java.lang.Object[]</code></p><hr><h2><a name="method_getLabelImage">getLabelImage</a></h2><p><code>public Image <strong>getLabelImage</strong>(java.lang.Object node)</code></p><p>Fetches the label image specific to this object instance.</p><h3>Parameters</h3><p><code>node</code> - DOM Node</p><h3>Returns</h3><p><code>Image</code> - Image for the label.</p><hr><h2><a name="method_getLabelText">getLabelText</a></h2><p><code>public java.lang.String <strong>getLabelText</strong>(java.lang.Object node)</code></p><p>Fetches the label text specific to this object instance.</p><h3>Parameters</h3><p><code>node</code></p><h3>Returns</h3><p><code>java.lang.String</code> - Node Name for the Label</p><hr><h2><a name="method_getParent">getParent</a></h2><p><code>public java.lang.Object <strong>getParent</strong>(java.lang.Object object)</code></p><p></p><h3>Parameters</h3><p><code>object</code></p><h3>Returns</h3><p><code>java.lang.Object</code></p><hr><h2><a name="method_getXSLImage">getXSLImage</a></h2><p><code>protected ImageDescriptor <strong>getXSLImage</strong>(org.w3c.dom.Element node)</code></p><p></p><h3>Parameters</h3><p><code>node</code></p><h3>Returns</h3><p><code>ImageDescriptor</code></p><hr><h2><a name="method_hasChildren">hasChildren</a></h2><p><code>public boolean <strong>hasChildren</strong>(java.lang.Object object)</code></p><p></p><h3>Parameters</h3><p><code>object</code></p><h3>Returns</h3><p><code>boolean</code></p><hr><h2><a name="method_isAdapterForType">isAdapterForType</a></h2><p><code>public boolean <strong>isAdapterForType</strong>(java.lang.Object type)</code></p><p>Allowing the INodeAdapter to compare itself against the type allows it
+ to return true in more than one case.</p><h3>Parameters</h3><p><code>type</code></p><h3>Returns</h3><p><code>boolean</code></p><hr><h2><a name="method_notifyChanged">notifyChanged</a></h2><p><code>public void <strong>notifyChanged</strong>(INodeNotifier notifier
+         ,
+      int eventType
+         ,
+      java.lang.Object changedFeature
+         ,
+      java.lang.Object oldValue
+         ,
+      java.lang.Object newValue
+         ,
+      int pos)</code></p><p>Called by the object being adapter (the notifier) when something has
+ changed.</p><h3>Parameters</h3><p><code>notifier</code></p><p><code>eventType</code></p><p><code>changedFeature</code></p><p><code>oldValue</code></p><p><code>newValue</code></p><p><code>pos</code></p><hr></body></html>
\ No newline at end of file
diff --git a/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.contentoutline.JFaceNodeAdapterFactory.CMDocumentManagerListenerImpl.html b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.contentoutline.JFaceNodeAdapterFactory.CMDocumentManagerListenerImpl.html
new file mode 100644
index 0000000..d6ee224
--- /dev/null
+++ b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.contentoutline.JFaceNodeAdapterFactory.CMDocumentManagerListenerImpl.html
@@ -0,0 +1,33 @@
+<html><body><p><font size="+1"><strong>Package org.eclipse.wst.xsl.ui.internal.contentoutline</strong></font></p><hr><h2><font size="-1"><strong>org.eclipse.wst.xsl.ui.internal.contentoutline</strong></font><br>
+               Class JFaceNodeAdapterFactory.CMDocumentManagerListenerImpl</h2><br><hr><pre>public class <strong>JFaceNodeAdapterFactory.CMDocumentManagerListenerImpl</strong>
+extends java.lang.Object</pre><hr><table width="100%" border="1"><tr bgcolor="#CCCCFF"><td width="100%"><h2>Constructor Summary</h2></td></tr><tr><td><code><strong><a href="#con_JFaceNodeAdapterFactory.CMDocumentManagerListenerImpl">JFaceNodeAdapterFactory.CMDocumentManagerListenerImpl</a></strong>()</code></td></tr></table><br><table width="100%" border="1"><tr cols="2" bgcolor="#CCCCFF"><td colspan="2" width="100%"><h2>Method Summary</h2></td></tr><tr valign="top"><td width="20%" align="right"><code>public void</code></td><td width="" align="left"><code><a href="#method_cacheCleared">cacheCleared</a>(CMDocumentCache cache)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public void</code></td><td width="" align="left"><code><a href="#method_cacheUpdated">cacheUpdated</a>(CMDocumentCache cache
+         ,
+      java.lang.String uri
+         ,
+      int oldStatus
+         ,
+      int newStatus
+         ,
+      CMDocument cmDocument)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public void</code></td><td width="" align="left"><code><a href="#method_propertyChanged">propertyChanged</a>(CMDocumentManager cmDocumentManager
+         ,
+      java.lang.String propertyName)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr></table><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Constructor Detail
+               </h2></td></tr></table><h2><a name="con_JFaceNodeAdapterFactory.CMDocumentManagerListenerImpl">JFaceNodeAdapterFactory.CMDocumentManagerListenerImpl</a></h2><p><code>public <strong>JFaceNodeAdapterFactory.CMDocumentManagerListenerImpl</strong>()</code></p><p></p><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Methods Detail
+               </h2></td></tr></table><h2><a name="method_cacheCleared">cacheCleared</a></h2><p><code>public void <strong>cacheCleared</strong>(CMDocumentCache cache)</code></p><p></p><h3>Parameters</h3><p><code>cache</code></p><hr><h2><a name="method_cacheUpdated">cacheUpdated</a></h2><p><code>public void <strong>cacheUpdated</strong>(CMDocumentCache cache
+         ,
+      java.lang.String uri
+         ,
+      int oldStatus
+         ,
+      int newStatus
+         ,
+      CMDocument cmDocument)</code></p><p></p><h3>Parameters</h3><p><code>cache</code></p><p><code>uri</code></p><p><code>oldStatus</code></p><p><code>newStatus</code></p><p><code>cmDocument</code></p><hr><h2><a name="method_propertyChanged">propertyChanged</a></h2><p><code>public void <strong>propertyChanged</strong>(CMDocumentManager cmDocumentManager
+         ,
+      java.lang.String propertyName)</code></p><p></p><h3>Parameters</h3><p><code>cmDocumentManager</code></p><p><code>propertyName</code></p><hr></body></html>
\ No newline at end of file
diff --git a/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.contentoutline.JFaceNodeAdapterFactory.html b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.contentoutline.JFaceNodeAdapterFactory.html
new file mode 100644
index 0000000..f05d233
--- /dev/null
+++ b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.contentoutline.JFaceNodeAdapterFactory.html
@@ -0,0 +1,34 @@
+<html><body><p><font size="+1"><strong>Package org.eclipse.wst.xsl.ui.internal.contentoutline</strong></font></p><hr><h2><font size="-1"><strong>org.eclipse.wst.xsl.ui.internal.contentoutline</strong></font><br>
+               Class JFaceNodeAdapterFactory</h2><br><hr><pre>public class <strong>JFaceNodeAdapterFactory</strong>
+extends AbstractAdapterFactory</pre>An adapter factory to create JFaceNodeAdapters. Use this adapter factory
+ with a JFaceAdapterContentProvider to display DOM nodes in a tree.<hr><table width="100%" border="1"><tr cols="2" bgcolor="#CCCCFF"><td colspan="2" width="100%"><h2>Field Summary</h2></td></tr><tr valign="top"><td width="20%" align="right"><code>protected INodeAdapter</code></td><td width="80%" align="left"><code><a href="#field_singletonAdapter">singletonAdapter</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr></table><br><table width="100%" border="1"><tr bgcolor="#CCCCFF"><td width="100%"><h2>Constructor Summary</h2></td></tr><tr><td><code><strong><a href="#con_JFaceNodeAdapterFactory">JFaceNodeAdapterFactory</a></strong>()</code></td></tr><tr><td><code><strong><a href="#con_JFaceNodeAdapterFactory">JFaceNodeAdapterFactory</a></strong>(java.lang.Object adapterKey
+         ,
+      boolean registerAdapters)</code></td></tr><tr><td><code><strong><a href="#con_JFaceNodeAdapterFactory.CMDocumentManagerListenerImpl">JFaceNodeAdapterFactory.CMDocumentManagerListenerImpl</a></strong>()</code></td></tr></table><br><table width="100%" border="1"><tr cols="2" bgcolor="#CCCCFF"><td colspan="2" width="100%"><h2>Method Summary</h2></td></tr><tr valign="top"><td width="20%" align="right"><code>public void</code></td><td width="" align="left"><code><a href="#method_addListener">addListener</a>(java.lang.Object listener)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public INodeAdapterFactory</code></td><td width="" align="left"><code><a href="#method_copy">copy</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>protected INodeAdapter</code></td><td width="" align="left"><code><a href="#method_createAdapter">createAdapter</a>(INodeNotifier node)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               Create a new JFace adapter for the DOM node passed in</td></tr><tr valign="top"><td width="20%" align="right"><code>public java.util.Collection</code></td><td width="" align="left"><code><a href="#method_getListeners">getListeners</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               returns "copy" so no one can modify our list. It is a shallow copy.</td></tr><tr valign="top"><td width="20%" align="right"><code>protected void</code></td><td width="" align="left"><code><a href="#method_initAdapter">initAdapter</a>(INodeAdapter adapter
+         ,
+      INodeNotifier node)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public void</code></td><td width="" align="left"><code><a href="#method_release">release</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public void</code></td><td width="" align="left"><code><a href="#method_removeListener">removeListener</a>(java.lang.Object listener)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr></table><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Field Detail
+               </h2></td></tr></table><h2><a name="field_singletonAdapter">singletonAdapter</a></h2><p><code>protected INodeAdapter <strong>singletonAdapter</strong></code></p><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Constructor Detail
+               </h2></td></tr></table><h2><a name="con_JFaceNodeAdapterFactory">JFaceNodeAdapterFactory</a></h2><p><code>public <strong>JFaceNodeAdapterFactory</strong>()</code></p><p></p><hr><h2><a name="con_JFaceNodeAdapterFactory">JFaceNodeAdapterFactory</a></h2><p><code>public <strong>JFaceNodeAdapterFactory</strong>(java.lang.Object adapterKey
+         ,
+      boolean registerAdapters)</code></p><p></p><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Methods Detail
+               </h2></td></tr></table><h2><a name="method_addListener">addListener</a></h2><p><code>public void <strong>addListener</strong>(java.lang.Object listener)</code></p><p></p><h3>Parameters</h3><p><code>listener</code></p><hr><h2><a name="method_copy">copy</a></h2><p><code>public INodeAdapterFactory <strong>copy</strong>()</code></p><p></p><h3>Returns</h3><p><code>INodeAdapterFactory</code></p><hr><h2><a name="method_createAdapter">createAdapter</a></h2><p><code>protected INodeAdapter <strong>createAdapter</strong>(INodeNotifier node)</code></p><p>Create a new JFace adapter for the DOM node passed in</p><h3>Parameters</h3><p><code>node</code></p><h3>Returns</h3><p><code>INodeAdapter</code></p><hr><h2><a name="method_getListeners">getListeners</a></h2><p><code>public java.util.Collection <strong>getListeners</strong>()</code></p><p>returns "copy" so no one can modify our list. It is a shallow copy.</p><h3>Returns</h3><p><code>java.util.Collection</code></p><hr><h2><a name="method_initAdapter">initAdapter</a></h2><p><code>protected void <strong>initAdapter</strong>(INodeAdapter adapter
+         ,
+      INodeNotifier node)</code></p><p></p><h3>Parameters</h3><p><code>adapter</code></p><p><code>node</code></p><hr><h2><a name="method_release">release</a></h2><p><code>public void <strong>release</strong>()</code></p><p></p><hr><h2><a name="method_removeListener">removeListener</a></h2><p><code>public void <strong>removeListener</strong>(java.lang.Object listener)</code></p><p></p><h3>Parameters</h3><p><code>listener</code></p><hr></body></html>
\ No newline at end of file
diff --git a/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.contentoutline.JFaceNodeContentProvider.html b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.contentoutline.JFaceNodeContentProvider.html
new file mode 100644
index 0000000..b428836
--- /dev/null
+++ b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.contentoutline.JFaceNodeContentProvider.html
@@ -0,0 +1,33 @@
+<html><body><p><font size="+1"><strong>Package org.eclipse.wst.xsl.ui.internal.contentoutline</strong></font></p><hr><h2><font size="-1"><strong>org.eclipse.wst.xsl.ui.internal.contentoutline</strong></font><br>
+               Class JFaceNodeContentProvider</h2><br><hr><pre>public class <strong>JFaceNodeContentProvider</strong>
+extends java.lang.Object</pre>An ITreeContentProvider for a TreeViewers used to display DOM nodes. This
+ content provider takes an adapter factory to create JFace adapters for the
+ nodes in the tree.<hr><table width="100%" border="1"><tr bgcolor="#CCCCFF"><td width="100%"><h2>Constructor Summary</h2></td></tr><tr><td><code><strong><a href="#con_JFaceNodeContentProvider">JFaceNodeContentProvider</a></strong>()</code></td></tr></table><br><table width="100%" border="1"><tr cols="2" bgcolor="#CCCCFF"><td colspan="2" width="100%"><h2>Method Summary</h2></td></tr><tr valign="top"><td width="20%" align="right"><code>public void</code></td><td width="" align="left"><code><a href="#method_dispose">dispose</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               The visual part that is using this content provider is about to be
+ disposed. Deallocate all allocated SWT resources.</td></tr><tr valign="top"><td width="20%" align="right"><code>protected IJFaceNodeAdapter</code></td><td width="" align="left"><code><a href="#method_getAdapter">getAdapter</a>(java.lang.Object adaptable)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               Returns the JFace adapter for the specified object.</td></tr><tr valign="top"><td width="20%" align="right"><code>public java.lang.Object[]</code></td><td width="" align="left"><code><a href="#method_getChildren">getChildren</a>(java.lang.Object object)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public java.lang.Object[]</code></td><td width="" align="left"><code><a href="#method_getElements">getElements</a>(java.lang.Object object)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public java.lang.Object</code></td><td width="" align="left"><code><a href="#method_getParent">getParent</a>(java.lang.Object object)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public boolean</code></td><td width="" align="left"><code><a href="#method_hasChildren">hasChildren</a>(java.lang.Object object)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public void</code></td><td width="" align="left"><code><a href="#method_inputChanged">inputChanged</a>(Viewer viewer
+         ,
+      java.lang.Object oldInput
+         ,
+      java.lang.Object newInput)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr></table><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Constructor Detail
+               </h2></td></tr></table><h2><a name="con_JFaceNodeContentProvider">JFaceNodeContentProvider</a></h2><p><code>public <strong>JFaceNodeContentProvider</strong>()</code></p><p></p><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Methods Detail
+               </h2></td></tr></table><h2><a name="method_dispose">dispose</a></h2><p><code>public void <strong>dispose</strong>()</code></p><p>The visual part that is using this content provider is about to be
+ disposed. Deallocate all allocated SWT resources.</p><hr><h2><a name="method_getAdapter">getAdapter</a></h2><p><code>protected IJFaceNodeAdapter <strong>getAdapter</strong>(java.lang.Object adaptable)</code></p><p>Returns the JFace adapter for the specified object.</p><h3>Parameters</h3><p><code>adaptable</code> - java.lang.Object The object to get the adapter for</p><h3>Returns</h3><p><code>IJFaceNodeAdapter</code></p><hr><h2><a name="method_getChildren">getChildren</a></h2><p><code>public java.lang.Object[] <strong>getChildren</strong>(java.lang.Object object)</code></p><p></p><h3>Parameters</h3><p><code>object</code></p><h3>Returns</h3><p><code>java.lang.Object[]</code></p><hr><h2><a name="method_getElements">getElements</a></h2><p><code>public java.lang.Object[] <strong>getElements</strong>(java.lang.Object object)</code></p><p></p><h3>Parameters</h3><p><code>object</code></p><h3>Returns</h3><p><code>java.lang.Object[]</code></p><hr><h2><a name="method_getParent">getParent</a></h2><p><code>public java.lang.Object <strong>getParent</strong>(java.lang.Object object)</code></p><p></p><h3>Parameters</h3><p><code>object</code></p><h3>Returns</h3><p><code>java.lang.Object</code></p><hr><h2><a name="method_hasChildren">hasChildren</a></h2><p><code>public boolean <strong>hasChildren</strong>(java.lang.Object object)</code></p><p></p><h3>Parameters</h3><p><code>object</code></p><h3>Returns</h3><p><code>boolean</code></p><hr><h2><a name="method_inputChanged">inputChanged</a></h2><p><code>public void <strong>inputChanged</strong>(Viewer viewer
+         ,
+      java.lang.Object oldInput
+         ,
+      java.lang.Object newInput)</code></p><p></p><h3>Parameters</h3><p><code>viewer</code></p><p><code>oldInput</code></p><p><code>newInput</code></p><hr></body></html>
\ No newline at end of file
diff --git a/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.contentoutline.JFaceNodeLabelProvider.html b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.contentoutline.JFaceNodeLabelProvider.html
new file mode 100644
index 0000000..4523a70
--- /dev/null
+++ b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.contentoutline.JFaceNodeLabelProvider.html
@@ -0,0 +1,19 @@
+<html><body><p><font size="+1"><strong>Package org.eclipse.wst.xsl.ui.internal.contentoutline</strong></font></p><hr><h2><font size="-1"><strong>org.eclipse.wst.xsl.ui.internal.contentoutline</strong></font><br>
+               Class JFaceNodeLabelProvider</h2><br><hr><pre>public class <strong>JFaceNodeLabelProvider</strong>
+extends ColumnLabelProvider</pre>A (column) label provider backed by JFaceNodeAdapters.<hr><table width="100%" border="1"><tr bgcolor="#CCCCFF"><td width="100%"><h2>Constructor Summary</h2></td></tr><tr><td><code><strong><a href="#con_JFaceNodeLabelProvider">JFaceNodeLabelProvider</a></strong>()</code></td></tr></table><br><table width="100%" border="1"><tr cols="2" bgcolor="#CCCCFF"><td colspan="2" width="100%"><h2>Method Summary</h2></td></tr><tr valign="top"><td width="20%" align="right"><code>protected IJFaceNodeAdapter</code></td><td width="" align="left"><code><a href="#method_getAdapter">getAdapter</a>(java.lang.Object adaptable)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               Returns the JFace adapter for the specified object.</td></tr><tr valign="top"><td width="20%" align="right"><code>public Image</code></td><td width="" align="left"><code><a href="#method_getImage">getImage</a>(java.lang.Object element)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public java.lang.String</code></td><td width="" align="left"><code><a href="#method_getText">getText</a>(java.lang.Object element)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public boolean</code></td><td width="" align="left"><code><a href="#method_isLabelProperty">isLabelProperty</a>(java.lang.Object element
+         ,
+      java.lang.String property)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr></table><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Constructor Detail
+               </h2></td></tr></table><h2><a name="con_JFaceNodeLabelProvider">JFaceNodeLabelProvider</a></h2><p><code>public <strong>JFaceNodeLabelProvider</strong>()</code></p><p>JFaceNodeLabelProvider constructor comment.</p><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Methods Detail
+               </h2></td></tr></table><h2><a name="method_getAdapter">getAdapter</a></h2><p><code>protected IJFaceNodeAdapter <strong>getAdapter</strong>(java.lang.Object adaptable)</code></p><p>Returns the JFace adapter for the specified object.</p><h3>Parameters</h3><p><code>adaptable</code> - java.lang.Object The object to get the adapter for</p><h3>Returns</h3><p><code>IJFaceNodeAdapter</code></p><hr><h2><a name="method_getImage">getImage</a></h2><p><code>public Image <strong>getImage</strong>(java.lang.Object element)</code></p><p></p><h3>Parameters</h3><p><code>element</code></p><h3>Returns</h3><p><code>Image</code></p><hr><h2><a name="method_getText">getText</a></h2><p><code>public java.lang.String <strong>getText</strong>(java.lang.Object element)</code></p><p></p><h3>Parameters</h3><p><code>element</code></p><h3>Returns</h3><p><code>java.lang.String</code></p><hr><h2><a name="method_isLabelProperty">isLabelProperty</a></h2><p><code>public boolean <strong>isLabelProperty</strong>(java.lang.Object element
+         ,
+      java.lang.String property)</code></p><p></p><h3>Parameters</h3><p><code>element</code></p><p><code>property</code></p><h3>Returns</h3><p><code>boolean</code></p><hr></body></html>
\ No newline at end of file
diff --git a/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.contentoutline.RefreshStructureJob.html b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.contentoutline.RefreshStructureJob.html
new file mode 100644
index 0000000..42c25e0
--- /dev/null
+++ b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.contentoutline.RefreshStructureJob.html
@@ -0,0 +1,40 @@
+<html><body><p><font size="+1"><strong>Package org.eclipse.wst.xsl.ui.internal.contentoutline</strong></font></p><hr><h2><font size="-1"><strong>org.eclipse.wst.xsl.ui.internal.contentoutline</strong></font><br>
+               Class RefreshStructureJob</h2><br><hr><pre>package-private class <strong>RefreshStructureJob</strong>
+extends Job</pre>This job holds a queue of updates (affected nodes) for multiple structured
+ viewers. When a new request comes in, the current run is cancelled, the new
+ request is added to the queue, then the job is re-scheduled. Support for
+ multiple structured viewers is required because refresh updates are usually
+ triggered by model changes, and the model may be visible in more than one
+ viewer.<p></p><hr><table width="100%" border="1"><tr cols="2" bgcolor="#CCCCFF"><td colspan="2" width="100%"><h2>Field Summary</h2></td></tr><tr valign="top"><td width="20%" align="right"><code>package-private static  boolean</code></td><td width="80%" align="left"><code><a href="#field_DEBUG">DEBUG</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               debug flag</td></tr><tr valign="top"><td width="20%" align="right"><code>package-private java.util.Set</code></td><td width="80%" align="left"><code><a href="#field_fRefreshViewers">fRefreshViewers</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               the structured viewers</td></tr><tr valign="top"><td width="20%" align="right"><code>package-private java.util.Set</code></td><td width="80%" align="left"><code><a href="#field_fUpdateViewers">fUpdateViewers</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr></table><br><table width="100%" border="1"><tr bgcolor="#CCCCFF"><td width="100%"><h2>Constructor Summary</h2></td></tr><tr><td><code><strong><a href="#con_RefreshStructureJob">RefreshStructureJob</a></strong>()</code></td></tr></table><br><table width="100%" border="1"><tr cols="2" bgcolor="#CCCCFF"><td colspan="2" width="100%"><h2>Method Summary</h2></td></tr><tr valign="top"><td width="20%" align="right"><code>protected void</code></td><td width="" align="left"><code><a href="#method_canceling">canceling</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public void</code></td><td width="" align="left"><code><a href="#method_refresh">refresh</a>(StructuredViewer viewer
+         ,
+      org.w3c.dom.Node node)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               Invoke a refresh on the viewer on the given node.</td></tr><tr valign="top"><td width="20%" align="right"><code>protected IStatus</code></td><td width="" align="left"><code><a href="#method_run">run</a>(IProgressMonitor monitor)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public void</code></td><td width="" align="left"><code><a href="#method_update">update</a>(StructuredViewer viewer
+         ,
+      org.w3c.dom.Node node
+         ,
+      java.lang.String[] properties)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               Invoke a refresh on the viewer on the given node.</td></tr></table><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Field Detail
+               </h2></td></tr></table><h2><a name="field_DEBUG">DEBUG</a></h2><p><code>package-private static  boolean <strong>DEBUG</strong></code></p><table><tr><td>debug flag</td></tr></table><hr><h2><a name="field_fRefreshViewers">fRefreshViewers</a></h2><p><code>package-private java.util.Set <strong>fRefreshViewers</strong></code></p><table><tr><td>the structured viewers</td></tr></table><hr><h2><a name="field_fUpdateViewers">fUpdateViewers</a></h2><p><code>package-private java.util.Set <strong>fUpdateViewers</strong></code></p><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Constructor Detail
+               </h2></td></tr></table><h2><a name="con_RefreshStructureJob">RefreshStructureJob</a></h2><p><code>public <strong>RefreshStructureJob</strong>()</code></p><p></p><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Methods Detail
+               </h2></td></tr></table><h2><a name="method_canceling">canceling</a></h2><p><code>protected void <strong>canceling</strong>()</code></p><p></p><hr><h2><a name="method_refresh">refresh</a></h2><p><code>public void <strong>refresh</strong>(StructuredViewer viewer
+         ,
+      org.w3c.dom.Node node)</code></p><p>Invoke a refresh on the viewer on the given node.</p><h3>Parameters</h3><p><code>viewer</code></p><p><code>node</code></p><hr><h2><a name="method_run">run</a></h2><p><code>protected IStatus <strong>run</strong>(IProgressMonitor monitor)</code></p><p></p><h3>Parameters</h3><p><code>monitor</code></p><h3>Returns</h3><p><code>IStatus</code></p><hr><h2><a name="method_update">update</a></h2><p><code>public void <strong>update</strong>(StructuredViewer viewer
+         ,
+      org.w3c.dom.Node node
+         ,
+      java.lang.String[] properties)</code></p><p>Invoke a refresh on the viewer on the given node.</p><h3>Parameters</h3><p><code>viewer</code></p><p><code>node</code></p><p><code>properties</code></p><hr></body></html>
\ No newline at end of file
diff --git a/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.contentoutline.XMLNodeActionManager.html b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.contentoutline.XMLNodeActionManager.html
new file mode 100644
index 0000000..bfd2477
--- /dev/null
+++ b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.contentoutline.XMLNodeActionManager.html
@@ -0,0 +1,21 @@
+<html><body><p><font size="+1"><strong>Package org.eclipse.wst.xsl.ui.internal.contentoutline</strong></font></p><hr><h2><font size="-1"><strong>org.eclipse.wst.xsl.ui.internal.contentoutline</strong></font><br>
+               Class XMLNodeActionManager</h2><br><hr><pre>public class <strong>XMLNodeActionManager</strong>
+extends AbstractNodeActionManager</pre><hr><table width="100%" border="1"><tr bgcolor="#CCCCFF"><td width="100%"><h2>Constructor Summary</h2></td></tr><tr><td><code><strong><a href="#con_XMLNodeActionManager">XMLNodeActionManager</a></strong>(IStructuredModel model
+         ,
+      Viewer viewer)</code></td></tr></table><br><table width="100%" border="1"><tr cols="2" bgcolor="#CCCCFF"><td colspan="2" width="100%"><h2>Method Summary</h2></td></tr><tr valign="top"><td width="20%" align="right"><code>public void</code></td><td width="" align="left"><code><a href="#method_reformat">reformat</a>(org.w3c.dom.Node newElement
+         ,
+      boolean deep)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public void</code></td><td width="" align="left"><code><a href="#method_setModel">setModel</a>(IStructuredModel newModel)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>protected void</code></td><td width="" align="left"><code><a href="#method_setModelQuery">setModelQuery</a>(ModelQuery newModelQuery)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr></table><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Constructor Detail
+               </h2></td></tr></table><h2><a name="con_XMLNodeActionManager">XMLNodeActionManager</a></h2><p><code>public <strong>XMLNodeActionManager</strong>(IStructuredModel model
+         ,
+      Viewer viewer)</code></p><p></p><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Methods Detail
+               </h2></td></tr></table><h2><a name="method_reformat">reformat</a></h2><p><code>public void <strong>reformat</strong>(org.w3c.dom.Node newElement
+         ,
+      boolean deep)</code></p><p></p><h3>Parameters</h3><p><code>newElement</code></p><p><code>deep</code></p><hr><h2><a name="method_setModel">setModel</a></h2><p><code>public void <strong>setModel</strong>(IStructuredModel newModel)</code></p><p></p><h3>Parameters</h3><p><code>newModel</code></p><hr><h2><a name="method_setModelQuery">setModelQuery</a></h2><p><code>protected void <strong>setModelQuery</strong>(ModelQuery newModelQuery)</code></p><p></p><h3>Parameters</h3><p><code>newModelQuery</code></p><hr></body></html>
\ No newline at end of file
diff --git a/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.contentoutline.XSLContentOutlineConfiguration.html b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.contentoutline.XSLContentOutlineConfiguration.html
new file mode 100644
index 0000000..8a76336
--- /dev/null
+++ b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.contentoutline.XSLContentOutlineConfiguration.html
@@ -0,0 +1,42 @@
+<html><body><p><font size="+1"><strong>Package org.eclipse.wst.xsl.ui.internal.contentoutline</strong></font></p><hr><h2><font size="-1"><strong>org.eclipse.wst.xsl.ui.internal.contentoutline</strong></font><br>
+               Class XSLContentOutlineConfiguration</h2><br><hr><pre>public class <strong>XSLContentOutlineConfiguration</strong>
+extends XMLContentOutlineConfiguration</pre>More advanced Outline Configuration for XML support.  Expects that the viewer's
+ input will be the DOM Model.<p></p><p></p><hr><table width="100%" border="1"><tr cols="2" bgcolor="#CCCCFF"><td colspan="2" width="100%"><h2>Field Summary</h2></td></tr><tr valign="top"><td width="20%" align="right"><code>package-private static  java.lang.String</code></td><td width="80%" align="left"><code><a href="#field_ATTR_ID">ATTR_ID</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>package-private static  java.lang.String</code></td><td width="80%" align="left"><code><a href="#field_ATTR_NAME">ATTR_NAME</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>package-private boolean</code></td><td width="80%" align="left"><code><a href="#field_fShowAttributes">fShowAttributes</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr></table><br><table width="100%" border="1"><tr bgcolor="#CCCCFF"><td width="100%"><h2>Constructor Summary</h2></td></tr><tr><td><code><strong><a href="#con_XSLContentOutlineConfiguration">XSLContentOutlineConfiguration</a></strong>()</code></td></tr></table><br><table width="100%" border="1"><tr cols="2" bgcolor="#CCCCFF"><td colspan="2" width="100%"><h2>Method Summary</h2></td></tr><tr valign="top"><td width="20%" align="right"><code>protected IContributionItem[]</code></td><td width="" align="left"><code><a href="#method_createMenuContributions">createMenuContributions</a>(TreeViewer viewer)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>protected void</code></td><td width="" align="left"><code><a href="#method_enableShowAttributes">enableShowAttributes</a>(boolean showAttributes
+         ,
+      TreeViewer treeViewer)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               Notifies this configuration that the flag that indicates whether or not
+ to show attribute values in the tree viewer has changed. The tree
+ viewer is automatically refreshed afterwards to update the labels.
+ 
+ Clients should not call this method, but rather should react to it.</td></tr><tr valign="top"><td width="20%" align="right"><code>public IContentProvider</code></td><td width="" align="left"><code><a href="#method_getContentProvider">getContentProvider</a>(TreeViewer viewer)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public ILabelProvider</code></td><td width="" align="left"><code><a href="#method_getLabelProvider">getLabelProvider</a>(TreeViewer viewer)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public ISelection</code></td><td width="" align="left"><code><a href="#method_getSelection">getSelection</a>(TreeViewer viewer
+         ,
+      ISelection selection)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr></table><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Field Detail
+               </h2></td></tr></table><h2><a name="field_ATTR_ID">ATTR_ID</a></h2><p><code>package-private static  java.lang.String <strong>ATTR_ID</strong></code></p><hr><h2><a name="field_ATTR_NAME">ATTR_NAME</a></h2><p><code>package-private static  java.lang.String <strong>ATTR_NAME</strong></code></p><hr><h2><a name="field_fShowAttributes">fShowAttributes</a></h2><p><code>package-private boolean <strong>fShowAttributes</strong></code></p><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Constructor Detail
+               </h2></td></tr></table><h2><a name="con_XSLContentOutlineConfiguration">XSLContentOutlineConfiguration</a></h2><p><code>public <strong>XSLContentOutlineConfiguration</strong>()</code></p><p>Create new instance of XMLContentOutlineConfiguration</p><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Methods Detail
+               </h2></td></tr></table><h2><a name="method_createMenuContributions">createMenuContributions</a></h2><p><code>protected IContributionItem[] <strong>createMenuContributions</strong>(TreeViewer viewer)</code></p><p></p><h3>Parameters</h3><p><code>viewer</code></p><h3>Returns</h3><p><code>IContributionItem[]</code></p><hr><h2><a name="method_enableShowAttributes">enableShowAttributes</a></h2><p><code>protected void <strong>enableShowAttributes</strong>(boolean showAttributes
+         ,
+      TreeViewer treeViewer)</code></p><p>Notifies this configuration that the flag that indicates whether or not
+ to show attribute values in the tree viewer has changed. The tree
+ viewer is automatically refreshed afterwards to update the labels.
+ 
+ Clients should not call this method, but rather should react to it.</p><h3>Parameters</h3><p><code>showAttributes</code> - flag indicating whether or not to show attribute values in             the tree viewer</p><p><code>treeViewer</code> - the TreeViewer associated with this configuration</p><hr><h2><a name="method_getContentProvider">getContentProvider</a></h2><p><code>public IContentProvider <strong>getContentProvider</strong>(TreeViewer viewer)</code></p><p></p><h3>Parameters</h3><p><code>viewer</code></p><h3>Returns</h3><p><code>IContentProvider</code></p><hr><h2><a name="method_getLabelProvider">getLabelProvider</a></h2><p><code>public ILabelProvider <strong>getLabelProvider</strong>(TreeViewer viewer)</code></p><p></p><h3>Parameters</h3><p><code>viewer</code></p><h3>Returns</h3><p><code>ILabelProvider</code></p><hr><h2><a name="method_getSelection">getSelection</a></h2><p><code>public ISelection <strong>getSelection</strong>(TreeViewer viewer
+         ,
+      ISelection selection)</code></p><p></p><h3>Parameters</h3><p><code>viewer</code></p><p><code>selection</code></p><h3>Returns</h3><p><code>ISelection</code></p><hr></body></html>
\ No newline at end of file
diff --git a/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.doubleclick.XSLDoubleClickStrategy.html b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.doubleclick.XSLDoubleClickStrategy.html
new file mode 100644
index 0000000..8d78e34
--- /dev/null
+++ b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.doubleclick.XSLDoubleClickStrategy.html
@@ -0,0 +1,30 @@
+<html><body><p><font size="+1"><strong>Package org.eclipse.wst.xsl.ui.internal.doubleclick</strong></font></p><hr><h2><font size="-1"><strong>org.eclipse.wst.xsl.ui.internal.doubleclick</strong></font><br>
+               Class XSLDoubleClickStrategy</h2><br><hr><pre>public class <strong>XSLDoubleClickStrategy</strong>
+extends XMLDoubleClickStrategy</pre>XSLDoubleClickStrategy extends the XMLDoubleclickStrategy to take into
+ account those areas that may be involved in XPath Expressions.<p></p><hr><table width="100%" border="1"><tr cols="2" bgcolor="#CCCCFF"><td colspan="2" width="100%"><h2>Field Summary</h2></td></tr><tr valign="top"><td width="20%" align="right"><code>package-private static  char[]</code></td><td width="80%" align="left"><code><a href="#field_XML_DELIMITERS">XML_DELIMITERS</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>package-private static  char[]</code></td><td width="80%" align="left"><code><a href="#field_XML_PARENTHESIS">XML_PARENTHESIS</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr></table><br><table width="100%" border="1"><tr bgcolor="#CCCCFF"><td width="100%"><h2>Constructor Summary</h2></td></tr><tr><td><code><strong><a href="#con_XSLDoubleClickStrategy">XSLDoubleClickStrategy</a></strong>()</code></td></tr></table><br><table width="100%" border="1"><tr cols="2" bgcolor="#CCCCFF"><td colspan="2" width="100%"><h2>Method Summary</h2></td></tr><tr valign="top"><td width="20%" align="right"><code>protected Point</code></td><td width="" align="left"><code><a href="#method_getWord">getWord</a>(java.lang.String string
+         ,
+      int cursor)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>protected int</code></td><td width="" align="left"><code><a href="#method_startOfWord">startOfWord</a>(java.lang.String string
+         ,
+      int cursor
+         ,
+      int wordStart)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr></table><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Field Detail
+               </h2></td></tr></table><h2><a name="field_XML_DELIMITERS">XML_DELIMITERS</a></h2><p><code>package-private static  char[] <strong>XML_DELIMITERS</strong></code></p><hr><h2><a name="field_XML_PARENTHESIS">XML_PARENTHESIS</a></h2><p><code>package-private static  char[] <strong>XML_PARENTHESIS</strong></code></p><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Constructor Detail
+               </h2></td></tr></table><h2><a name="con_XSLDoubleClickStrategy">XSLDoubleClickStrategy</a></h2><p><code>public <strong>XSLDoubleClickStrategy</strong>()</code></p><p></p><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Methods Detail
+               </h2></td></tr></table><h2><a name="method_getWord">getWord</a></h2><p><code>protected Point <strong>getWord</strong>(java.lang.String string
+         ,
+      int cursor)</code></p><p></p><h3>Parameters</h3><p><code>string</code></p><p><code>cursor</code></p><h3>Returns</h3><p><code>Point</code></p><hr><h2><a name="method_startOfWord">startOfWord</a></h2><p><code>protected int <strong>startOfWord</strong>(java.lang.String string
+         ,
+      int cursor
+         ,
+      int wordStart)</code></p><p></p><h3>Parameters</h3><p><code>string</code></p><p><code>cursor</code></p><p><code>wordStart</code></p><h3>Returns</h3><p><code>int</code></p><hr></body></html>
\ No newline at end of file
diff --git a/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.editor.OverrideIndicator.html b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.editor.OverrideIndicator.html
new file mode 100644
index 0000000..cbd7a2a
--- /dev/null
+++ b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.editor.OverrideIndicator.html
@@ -0,0 +1,13 @@
+<html><body><p><font size="+1"><strong>Package org.eclipse.wst.xsl.ui.internal.editor</strong></font></p><hr><h2><font size="-1"><strong>org.eclipse.wst.xsl.ui.internal.editor</strong></font><br>
+               Class OverrideIndicator</h2><br><hr><pre>package-private class <strong>OverrideIndicator</strong>
+extends Annotation</pre>Overwrite and override indicator annotation.<p></p><hr><table width="100%" border="1"><tr bgcolor="#CCCCFF"><td width="100%"><h2>Constructor Summary</h2></td></tr><tr><td><code><strong><a href="#con_OverrideIndicator">OverrideIndicator</a></strong>(java.lang.String text
+         ,
+      java.lang.String key)</code></td></tr></table><br><table width="100%" border="1"><tr cols="2" bgcolor="#CCCCFF"><td colspan="2" width="100%"><h2>Method Summary</h2></td></tr><tr valign="top"><td width="20%" align="right"><code>public void</code></td><td width="" align="left"><code><a href="#method_open">open</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               Opens and reveals the defining method.</td></tr></table><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Constructor Detail
+               </h2></td></tr></table><h2><a name="con_OverrideIndicator">OverrideIndicator</a></h2><p><code>package-private <strong>OverrideIndicator</strong>(java.lang.String text
+         ,
+      java.lang.String key)</code></p><p>Creates a new override annotation.</p><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Methods Detail
+               </h2></td></tr></table><h2><a name="method_open">open</a></h2><p><code>public void <strong>open</strong>()</code></p><p>Opens and reveals the defining method.</p><hr></body></html>
\ No newline at end of file
diff --git a/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.editor.OverrideIndicatorImageProvider.html b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.editor.OverrideIndicatorImageProvider.html
new file mode 100644
index 0000000..bcf577e
--- /dev/null
+++ b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.editor.OverrideIndicatorImageProvider.html
@@ -0,0 +1,13 @@
+<html><body><p><font size="+1"><strong>Package org.eclipse.wst.xsl.ui.internal.editor</strong></font></p><hr><h2><font size="-1"><strong>org.eclipse.wst.xsl.ui.internal.editor</strong></font><br>
+               Class OverrideIndicatorImageProvider</h2><br><hr><pre>public class <strong>OverrideIndicatorImageProvider</strong>
+extends java.lang.Object</pre>Image provider for {@link org.eclipse.wst.xsl.ui.internal.editor.jdt.internal.ui.javaeditor.OverrideIndicatorManager.OverrideIndicator} annotations.<p></p><hr><table width="100%" border="1"><tr bgcolor="#CCCCFF"><td width="100%"><h2>Constructor Summary</h2></td></tr><tr><td><code><strong><a href="#con_OverrideIndicatorImageProvider">OverrideIndicatorImageProvider</a></strong>()</code></td></tr></table><br><table width="100%" border="1"><tr cols="2" bgcolor="#CCCCFF"><td colspan="2" width="100%"><h2>Method Summary</h2></td></tr><tr valign="top"><td width="20%" align="right"><code>public ImageDescriptor</code></td><td width="" align="left"><code><a href="#method_getImageDescriptor">getImageDescriptor</a>(java.lang.String imageDescritporId)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public java.lang.String</code></td><td width="" align="left"><code><a href="#method_getImageDescriptorId">getImageDescriptorId</a>(Annotation annotation)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public Image</code></td><td width="" align="left"><code><a href="#method_getManagedImage">getManagedImage</a>(Annotation annotation)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               This does not support managing its own image.</td></tr></table><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Constructor Detail
+               </h2></td></tr></table><h2><a name="con_OverrideIndicatorImageProvider">OverrideIndicatorImageProvider</a></h2><p><code>public <strong>OverrideIndicatorImageProvider</strong>()</code></p><p></p><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Methods Detail
+               </h2></td></tr></table><h2><a name="method_getImageDescriptor">getImageDescriptor</a></h2><p><code>public ImageDescriptor <strong>getImageDescriptor</strong>(java.lang.String imageDescritporId)</code></p><p></p><h3>Parameters</h3><p><code>imageDescritporId</code></p><h3>Returns</h3><p><code>ImageDescriptor</code></p><hr><h2><a name="method_getImageDescriptorId">getImageDescriptorId</a></h2><p><code>public java.lang.String <strong>getImageDescriptorId</strong>(Annotation annotation)</code></p><p></p><h3>Parameters</h3><p><code>annotation</code></p><h3>Returns</h3><p><code>java.lang.String</code></p><hr><h2><a name="method_getManagedImage">getManagedImage</a></h2><p><code>public Image <strong>getManagedImage</strong>(Annotation annotation)</code></p><p>This does not support managing its own image.</p><h3>Parameters</h3><p><code>annotation</code></p><h3>Returns</h3><p><code>Image</code> - null</p><hr></body></html>
\ No newline at end of file
diff --git a/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.editor.OverrideIndicatorManager.html b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.editor.OverrideIndicatorManager.html
new file mode 100644
index 0000000..6ffe41d
--- /dev/null
+++ b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.editor.OverrideIndicatorManager.html
@@ -0,0 +1,19 @@
+<html><body><p><font size="+1"><strong>Package org.eclipse.wst.xsl.ui.internal.editor</strong></font></p><hr><h2><font size="-1"><strong>org.eclipse.wst.xsl.ui.internal.editor</strong></font><br>
+               Class OverrideIndicatorManager</h2><br><hr><pre>public class <strong>OverrideIndicatorManager</strong>
+extends java.lang.Object</pre>Manages the override and overwrite indicators for the given Java element and annotation model.<p></p><hr><table width="100%" border="1"><tr cols="2" bgcolor="#CCCCFF"><td colspan="2" width="100%"><h2>Field Summary</h2></td></tr><tr valign="top"><td width="20%" align="right"><code>package-private static  java.lang.String</code></td><td width="80%" align="left"><code><a href="#field_ANNOTATION_TYPE">ANNOTATION_TYPE</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr></table><br><table width="100%" border="1"><tr bgcolor="#CCCCFF"><td width="100%"><h2>Constructor Summary</h2></td></tr><tr><td><code><strong><a href="#con_OverrideIndicatorManager">OverrideIndicatorManager</a></strong>(IAnnotationModel annotationModel
+         ,
+      IFile file)</code></td></tr></table><br><table width="100%" border="1"><tr cols="2" bgcolor="#CCCCFF"><td colspan="2" width="100%"><h2>Method Summary</h2></td></tr><tr valign="top"><td width="20%" align="right"><code>package-private void</code></td><td width="" align="left"><code><a href="#method_removeAnnotations">removeAnnotations</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               Removes all override indicators from this manager's annotation model.</td></tr><tr valign="top"><td width="20%" align="right"><code>public void</code></td><td width="" align="left"><code><a href="#method_updateAnnotations">updateAnnotations</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               Updates the override and implements annotations based on the given AST.</td></tr></table><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Field Detail
+               </h2></td></tr></table><h2><a name="field_ANNOTATION_TYPE">ANNOTATION_TYPE</a></h2><p><code>package-private static  java.lang.String <strong>ANNOTATION_TYPE</strong></code></p><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Constructor Detail
+               </h2></td></tr></table><h2><a name="con_OverrideIndicatorManager">OverrideIndicatorManager</a></h2><p><code>public <strong>OverrideIndicatorManager</strong>(IAnnotationModel annotationModel
+         ,
+      IFile file)</code></p><p>Constructor requires the editors annotation model and the file the editor is looking at.</p><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Methods Detail
+               </h2></td></tr></table><h2><a name="method_removeAnnotations">removeAnnotations</a></h2><p><code>package-private void <strong>removeAnnotations</strong>()</code></p><p>Removes all override indicators from this manager's annotation model.</p><hr><h2><a name="method_updateAnnotations">updateAnnotations</a></h2><p><code>public void <strong>updateAnnotations</strong>()</code></p><p>Updates the override and implements annotations based on the given AST.</p><hr></body></html>
\ No newline at end of file
diff --git a/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.editor.SourceFileHyperlink.html b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.editor.SourceFileHyperlink.html
new file mode 100644
index 0000000..00d440d
--- /dev/null
+++ b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.editor.SourceFileHyperlink.html
@@ -0,0 +1,27 @@
+<html><body><p><font size="+1"><strong>Package org.eclipse.wst.xsl.ui.internal.editor</strong></font></p><hr><h2><font size="-1"><strong>org.eclipse.wst.xsl.ui.internal.editor</strong></font><br>
+               Class SourceFileHyperlink</h2><br><hr><pre>public class <strong>SourceFileHyperlink</strong>
+extends java.lang.Object</pre><p></p><hr><table width="100%" border="1"><tr bgcolor="#CCCCFF"><td width="100%"><h2>Constructor Summary</h2></td></tr><tr><td><code><strong><a href="#con_SourceFileHyperlink">SourceFileHyperlink</a></strong>(IRegion hyperLinkRegion
+         ,
+      IFile linkedFile)</code></td></tr><tr><td><code><strong><a href="#con_SourceFileHyperlink">SourceFileHyperlink</a></strong>(IRegion hyperLinkRegion
+         ,
+      IFile linkedFile
+         ,
+      org.eclipse.wst.xsl.core.model.XSLNode node)</code></td></tr></table><br><table width="100%" border="1"><tr cols="2" bgcolor="#CCCCFF"><td colspan="2" width="100%"><h2>Method Summary</h2></td></tr><tr valign="top"><td width="20%" align="right"><code>public IRegion</code></td><td width="" align="left"><code><a href="#method_getHyperlinkRegion">getHyperlinkRegion</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public java.lang.String</code></td><td width="" align="left"><code><a href="#method_getHyperlinkText">getHyperlinkText</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public java.lang.String</code></td><td width="" align="left"><code><a href="#method_getTypeLabel">getTypeLabel</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public void</code></td><td width="" align="left"><code><a href="#method_open">open</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr></table><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Constructor Detail
+               </h2></td></tr></table><h2><a name="con_SourceFileHyperlink">SourceFileHyperlink</a></h2><p><code>public <strong>SourceFileHyperlink</strong>(IRegion hyperLinkRegion
+         ,
+      IFile linkedFile)</code></p><p></p><hr><h2><a name="con_SourceFileHyperlink">SourceFileHyperlink</a></h2><p><code>public <strong>SourceFileHyperlink</strong>(IRegion hyperLinkRegion
+         ,
+      IFile linkedFile
+         ,
+      org.eclipse.wst.xsl.core.model.XSLNode node)</code></p><p></p><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Methods Detail
+               </h2></td></tr></table><h2><a name="method_getHyperlinkRegion">getHyperlinkRegion</a></h2><p><code>public IRegion <strong>getHyperlinkRegion</strong>()</code></p><p></p><h3>Returns</h3><p><code>IRegion</code></p><hr><h2><a name="method_getHyperlinkText">getHyperlinkText</a></h2><p><code>public java.lang.String <strong>getHyperlinkText</strong>()</code></p><p></p><h3>Returns</h3><p><code>java.lang.String</code></p><hr><h2><a name="method_getTypeLabel">getTypeLabel</a></h2><p><code>public java.lang.String <strong>getTypeLabel</strong>()</code></p><p></p><h3>Returns</h3><p><code>java.lang.String</code></p><hr><h2><a name="method_open">open</a></h2><p><code>public void <strong>open</strong>()</code></p><p></p><hr></body></html>
\ No newline at end of file
diff --git a/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.editor.XSLEditor.html b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.editor.XSLEditor.html
new file mode 100644
index 0000000..e7fc34e
--- /dev/null
+++ b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.editor.XSLEditor.html
@@ -0,0 +1,16 @@
+<html><body><p><font size="+1"><strong>Package org.eclipse.wst.xsl.ui.internal.editor</strong></font></p><hr><h2><font size="-1"><strong>org.eclipse.wst.xsl.ui.internal.editor</strong></font><br>
+               Class XSLEditor</h2><br><hr><pre>public class <strong>XSLEditor</strong>
+extends StructuredTextEditor</pre>XSL specific extensions to the SSE UI that haven't yet been made
+ available to the SSE.<p></p><hr><table width="100%" border="1"><tr bgcolor="#CCCCFF"><td width="100%"><h2>Constructor Summary</h2></td></tr><tr><td><code><strong><a href="#con_XSLEditor">XSLEditor</a></strong>()</code></td></tr></table><br><table width="100%" border="1"><tr cols="2" bgcolor="#CCCCFF"><td colspan="2" width="100%"><h2>Method Summary</h2></td></tr><tr valign="top"><td width="20%" align="right"><code>protected void</code></td><td width="" align="left"><code><a href="#method_doSetInput">doSetInput</a>(IEditorInput input)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public java.lang.Object</code></td><td width="" align="left"><code><a href="#method_getAdapter">getAdapter</a>(java.lang.Class required)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               (non-Javadoc)</td></tr><tr valign="top"><td width="20%" align="right"><code>public org.eclipse.wst.xsl.ui.internal.editor.OverrideIndicatorManager</code></td><td width="" align="left"><code><a href="#method_getOverrideIndicatorManager">getOverrideIndicatorManager</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>protected void</code></td><td width="" align="left"><code><a href="#method_installOverrideIndicator">installOverrideIndicator</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr></table><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Constructor Detail
+               </h2></td></tr></table><h2><a name="con_XSLEditor">XSLEditor</a></h2><p><code>public <strong>XSLEditor</strong>()</code></p><p></p><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Methods Detail
+               </h2></td></tr></table><h2><a name="method_doSetInput">doSetInput</a></h2><p><code>protected void <strong>doSetInput</strong>(IEditorInput input)</code></p><p></p><h3>Parameters</h3><p><code>input</code></p><h3>Throws:</h3><p><code>CoreException</code></p><hr><h2><a name="method_getAdapter">getAdapter</a></h2><p><code>public java.lang.Object <strong>getAdapter</strong>(java.lang.Class required)</code></p><p>(non-Javadoc)</p><h3>Parameters</h3><p><code>required</code></p><h3>Returns</h3><p><code>java.lang.Object</code></p><hr><h2><a name="method_getOverrideIndicatorManager">getOverrideIndicatorManager</a></h2><p><code>public org.eclipse.wst.xsl.ui.internal.editor.OverrideIndicatorManager <strong>getOverrideIndicatorManager</strong>()</code></p><p></p><h3>Returns</h3><p><code>org.eclipse.wst.xsl.ui.internal.editor.OverrideIndicatorManager</code></p><hr><h2><a name="method_installOverrideIndicator">installOverrideIndicator</a></h2><p><code>protected void <strong>installOverrideIndicator</strong>()</code></p><p></p><hr></body></html>
\ No newline at end of file
diff --git a/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.editor.XSLHyperlinkDetector.html b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.editor.XSLHyperlinkDetector.html
new file mode 100644
index 0000000..5743b28
--- /dev/null
+++ b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.editor.XSLHyperlinkDetector.html
@@ -0,0 +1,31 @@
+<html><body><p><font size="+1"><strong>Package org.eclipse.wst.xsl.ui.internal.editor</strong></font></p><hr><h2><font size="-1"><strong>org.eclipse.wst.xsl.ui.internal.editor</strong></font><br>
+               Class XSLHyperlinkDetector</h2><br><hr><pre>public class <strong>XSLHyperlinkDetector</strong>
+extends AbstractHyperlinkDetector</pre>A hyperlink detector for XSL files.
+ 
+ The detector makes use of the model built by SSE validation (found in <code>XSLCore</code>).
+ 
+ Currently supports hyperlinking for includes, imports or called templates.<p></p><hr><table width="100%" border="1"><tr bgcolor="#CCCCFF"><td width="100%"><h2>Constructor Summary</h2></td></tr><tr><td><code><strong><a href="#con_XSLHyperlinkDetector">XSLHyperlinkDetector</a></strong>()</code></td></tr></table><br><table width="100%" border="1"><tr cols="2" bgcolor="#CCCCFF"><td colspan="2" width="100%"><h2>Method Summary</h2></td></tr><tr valign="top"><td width="20%" align="right"><code>public IHyperlink[]</code></td><td width="" align="left"><code><a href="#method_detectHyperlinks">detectHyperlinks</a>(ITextViewer textViewer
+         ,
+      IRegion region
+         ,
+      boolean canShowMultipleHyperlinks)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               Try to create hyperlinks for viewer and region</td></tr><tr valign="top"><td width="20%" align="right"><code>public IHyperlink[]</code></td><td width="" align="left"><code><a href="#method_detectHyperlinks">detectHyperlinks</a>(IDocument document
+         ,
+      IRegion region
+         ,
+      boolean canShowMultipleHyperlinks)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               Try to create hyperlinks for document and region</td></tr></table><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Constructor Detail
+               </h2></td></tr></table><h2><a name="con_XSLHyperlinkDetector">XSLHyperlinkDetector</a></h2><p><code>public <strong>XSLHyperlinkDetector</strong>()</code></p><p></p><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Methods Detail
+               </h2></td></tr></table><h2><a name="method_detectHyperlinks">detectHyperlinks</a></h2><p><code>public IHyperlink[] <strong>detectHyperlinks</strong>(ITextViewer textViewer
+         ,
+      IRegion region
+         ,
+      boolean canShowMultipleHyperlinks)</code></p><p>Try to create hyperlinks for viewer and region</p><h3>Parameters</h3><p><code>textViewer</code></p><p><code>region</code></p><p><code>canShowMultipleHyperlinks</code></p><h3>Returns</h3><p><code>IHyperlink[]</code> - array of hyperlinks for current region</p><hr><h2><a name="method_detectHyperlinks">detectHyperlinks</a></h2><p><code>public IHyperlink[] <strong>detectHyperlinks</strong>(IDocument document
+         ,
+      IRegion region
+         ,
+      boolean canShowMultipleHyperlinks)</code></p><p>Try to create hyperlinks for document and region</p><h3>Parameters</h3><p><code>document</code></p><p><code>region</code></p><p><code>canShowMultipleHyperlinks</code></p><h3>Returns</h3><p><code>IHyperlink[]</code> - array of hyperlinks for current region</p><hr></body></html>
\ No newline at end of file
diff --git a/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.handlers.OpenDeclarationHandler.html b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.handlers.OpenDeclarationHandler.html
new file mode 100644
index 0000000..2571f2e
--- /dev/null
+++ b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.handlers.OpenDeclarationHandler.html
@@ -0,0 +1,9 @@
+<html><body><p><font size="+1"><strong>Package org.eclipse.wst.xsl.ui.internal.handlers</strong></font></p><hr><h2><font size="-1"><strong>org.eclipse.wst.xsl.ui.internal.handlers</strong></font><br>
+               Class OpenDeclarationHandler</h2><br><hr><pre>public class <strong>OpenDeclarationHandler</strong>
+extends AbstractHandler</pre><hr><table width="100%" border="1"><tr bgcolor="#CCCCFF"><td width="100%"><h2>Constructor Summary</h2></td></tr><tr><td><code><strong><a href="#con_OpenDeclarationHandler">OpenDeclarationHandler</a></strong>()</code></td></tr></table><br><table width="100%" border="1"><tr cols="2" bgcolor="#CCCCFF"><td colspan="2" width="100%"><h2>Method Summary</h2></td></tr><tr valign="top"><td width="20%" align="right"><code>public java.lang.Object</code></td><td width="" align="left"><code><a href="#method_execute">execute</a>(ExecutionEvent event)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr></table><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Constructor Detail
+               </h2></td></tr></table><h2><a name="con_OpenDeclarationHandler">OpenDeclarationHandler</a></h2><p><code>public <strong>OpenDeclarationHandler</strong>()</code></p><p></p><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Methods Detail
+               </h2></td></tr></table><h2><a name="method_execute">execute</a></h2><p><code>public java.lang.Object <strong>execute</strong>(ExecutionEvent event)</code></p><p></p><h3>Parameters</h3><p><code>event</code></p><h3>Returns</h3><p><code>java.lang.Object</code></p><h3>Throws:</h3><p><code>ExecutionException</code></p><hr></body></html>
\ No newline at end of file
diff --git a/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.preferences.AbstractValidationSettingsPage.html b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.preferences.AbstractValidationSettingsPage.html
new file mode 100644
index 0000000..da04362
--- /dev/null
+++ b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.preferences.AbstractValidationSettingsPage.html
@@ -0,0 +1,83 @@
+<html><body><p><font size="+1"><strong>Package org.eclipse.wst.xsl.ui.internal.preferences</strong></font></p><hr><h2><font size="-1"><strong>org.eclipse.wst.xsl.ui.internal.preferences</strong></font><br>
+               Class AbstractValidationSettingsPage</h2><br><hr><pre>package-private class <strong>AbstractValidationSettingsPage</strong>
+extends org.eclipse.wst.xsl.ui.internal.preferences.PropertyPreferencePage</pre>Based on org.eclipse.jdt.internal.ui.preferences.OptionsConfigurationBlock<hr><table width="100%" border="1"><tr bgcolor="#CCCCFF"><td width="100%"><h2>Constructor Summary</h2></td></tr><tr><td><code><strong><a href="#con_AbstractValidationSettingsPage">AbstractValidationSettingsPage</a></strong>()</code></td></tr></table><br><table width="100%" border="1"><tr cols="2" bgcolor="#CCCCFF"><td colspan="2" width="100%"><h2>Method Summary</h2></td></tr><tr valign="top"><td width="20%" align="right"><code>protected Combo</code></td><td width="" align="left"><code><a href="#method_addComboBox">addComboBox</a>(Composite parent
+         ,
+      java.lang.String label
+         ,
+      java.lang.String key
+         ,
+      int[] values
+         ,
+      java.lang.String[] valueLabels
+         ,
+      int indent)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               Creates a Combo widget in the composite <code>parent</code>. The data
+ in the Combo is associated with <code>key</code>. The Combo data is
+ generated based on the integer <code>values</code> where the index
+ of <code>values</code> corresponds to the index of <code>valueLabels</code></td></tr><tr valign="top"><td width="20%" align="right"><code>protected void</code></td><td width="" align="left"><code><a href="#method_controlChanged">controlChanged</a>(Widget widget)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>protected ExpandableComposite</code></td><td width="" align="left"><code><a href="#method_createTwistie">createTwistie</a>(Composite parent
+         ,
+      java.lang.String label
+         ,
+      int nColumns)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>protected void</code></td><td width="" align="left"><code><a href="#method_expandedStateChanged">expandedStateChanged</a>(ExpandableComposite expandable)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>protected ExpandableComposite</code></td><td width="" align="left"><code><a href="#method_getParentExpandableComposite">getParentExpandableComposite</a>(Control control)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>protected ScrolledPageContent</code></td><td width="" align="left"><code><a href="#method_getParentScrolledComposite">getParentScrolledComposite</a>(Control control)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>protected SelectionListener</code></td><td width="" align="left"><code><a href="#method_getSelectionListener">getSelectionListener</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>protected Combo</code></td><td width="" align="left"><code><a href="#method_newComboControl">newComboControl</a>(Composite composite
+         ,
+      java.lang.String key
+         ,
+      int[] values
+         ,
+      java.lang.String[] valueLabels)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               Creates a combo box and associates the combo data with the
+ combo box.</td></tr><tr valign="top"><td width="20%" align="right"><code>public boolean</code></td><td width="" align="left"><code><a href="#method_performOk">performOk</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>protected void</code></td><td width="" align="left"><code><a href="#method_resetSeverities">resetSeverities</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>protected void</code></td><td width="" align="left"><code><a href="#method_restoreSectionExpansionStates">restoreSectionExpansionStates</a>(IDialogSettings settings)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>protected boolean</code></td><td width="" align="left"><code><a href="#method_shouldRevalidateOnSettingsChange">shouldRevalidateOnSettingsChange</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>protected void</code></td><td width="" align="left"><code><a href="#method_storeSectionExpansionStates">storeSectionExpansionStates</a>(IDialogSettings section)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>protected void</code></td><td width="" align="left"><code><a href="#method_storeValues">storeValues</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr></table><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Constructor Detail
+               </h2></td></tr></table><h2><a name="con_AbstractValidationSettingsPage">AbstractValidationSettingsPage</a></h2><p><code>public <strong>AbstractValidationSettingsPage</strong>()</code></p><p></p><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Methods Detail
+               </h2></td></tr></table><h2><a name="method_addComboBox">addComboBox</a></h2><p><code>protected Combo <strong>addComboBox</strong>(Composite parent
+         ,
+      java.lang.String label
+         ,
+      java.lang.String key
+         ,
+      int[] values
+         ,
+      java.lang.String[] valueLabels
+         ,
+      int indent)</code></p><p>Creates a Combo widget in the composite <code>parent</code>. The data
+ in the Combo is associated with <code>key</code>. The Combo data is
+ generated based on the integer <code>values</code> where the index
+ of <code>values</code> corresponds to the index of <code>valueLabels</code></p><h3>Parameters</h3><p><code>parent</code> - the composite to create the combo box in</p><p><code>label</code> - the label to give the combo box</p><p><code>key</code> - the unique key to identify the combo box</p><p><code>values</code> - the values represented by the combo options</p><p><code>valueLabels</code> - the calues displayed in the combo box</p><p><code>indent</code> - how far to indent the combo box label</p><h3>Returns</h3><p><code>Combo</code> - the generated combo box</p><hr><h2><a name="method_controlChanged">controlChanged</a></h2><p><code>protected void <strong>controlChanged</strong>(Widget widget)</code></p><p></p><h3>Parameters</h3><p><code>widget</code></p><hr><h2><a name="method_createTwistie">createTwistie</a></h2><p><code>protected ExpandableComposite <strong>createTwistie</strong>(Composite parent
+         ,
+      java.lang.String label
+         ,
+      int nColumns)</code></p><p></p><h3>Parameters</h3><p><code>parent</code></p><p><code>label</code></p><p><code>nColumns</code></p><h3>Returns</h3><p><code>ExpandableComposite</code></p><hr><h2><a name="method_expandedStateChanged">expandedStateChanged</a></h2><p><code>protected void <strong>expandedStateChanged</strong>(ExpandableComposite expandable)</code></p><p></p><h3>Parameters</h3><p><code>expandable</code></p><hr><h2><a name="method_getParentExpandableComposite">getParentExpandableComposite</a></h2><p><code>protected ExpandableComposite <strong>getParentExpandableComposite</strong>(Control control)</code></p><p></p><h3>Parameters</h3><p><code>control</code></p><h3>Returns</h3><p><code>ExpandableComposite</code></p><hr><h2><a name="method_getParentScrolledComposite">getParentScrolledComposite</a></h2><p><code>protected ScrolledPageContent <strong>getParentScrolledComposite</strong>(Control control)</code></p><p></p><h3>Parameters</h3><p><code>control</code></p><h3>Returns</h3><p><code>ScrolledPageContent</code></p><hr><h2><a name="method_getSelectionListener">getSelectionListener</a></h2><p><code>protected SelectionListener <strong>getSelectionListener</strong>()</code></p><p></p><h3>Returns</h3><p><code>SelectionListener</code></p><hr><h2><a name="method_newComboControl">newComboControl</a></h2><p><code>protected Combo <strong>newComboControl</strong>(Composite composite
+         ,
+      java.lang.String key
+         ,
+      int[] values
+         ,
+      java.lang.String[] valueLabels)</code></p><p>Creates a combo box and associates the combo data with the
+ combo box.</p><h3>Parameters</h3><p><code>composite</code> - the composite to create the combo box in</p><p><code>key</code> - the unique key to identify the combo box</p><p><code>values</code> - the values represented by the combo options</p><p><code>valueLabels</code> - the values displayed in the combo box</p><h3>Returns</h3><p><code>Combo</code> - the generated combo box</p><hr><h2><a name="method_performOk">performOk</a></h2><p><code>public boolean <strong>performOk</strong>()</code></p><p></p><h3>Returns</h3><p><code>boolean</code></p><hr><h2><a name="method_resetSeverities">resetSeverities</a></h2><p><code>protected void <strong>resetSeverities</strong>()</code></p><p></p><hr><h2><a name="method_restoreSectionExpansionStates">restoreSectionExpansionStates</a></h2><p><code>protected void <strong>restoreSectionExpansionStates</strong>(IDialogSettings settings)</code></p><p></p><h3>Parameters</h3><p><code>settings</code></p><hr><h2><a name="method_shouldRevalidateOnSettingsChange">shouldRevalidateOnSettingsChange</a></h2><p><code>protected boolean <strong>shouldRevalidateOnSettingsChange</strong>()</code></p><p></p><h3>Returns</h3><p><code>boolean</code></p><hr><h2><a name="method_storeSectionExpansionStates">storeSectionExpansionStates</a></h2><p><code>protected void <strong>storeSectionExpansionStates</strong>(IDialogSettings section)</code></p><p></p><h3>Parameters</h3><p><code>section</code></p><hr><h2><a name="method_storeValues">storeValues</a></h2><p><code>protected void <strong>storeValues</strong>()</code></p><p></p><hr></body></html>
\ No newline at end of file
diff --git a/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.preferences.AbstractXSLPreferencePage.html b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.preferences.AbstractXSLPreferencePage.html
new file mode 100644
index 0000000..9287e8a
--- /dev/null
+++ b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.preferences.AbstractXSLPreferencePage.html
@@ -0,0 +1,37 @@
+<html><body><p><font size="+1"><strong>Package org.eclipse.wst.xsl.ui.internal.preferences</strong></font></p><hr><h2><font size="-1"><strong>org.eclipse.wst.xsl.ui.internal.preferences</strong></font><br>
+               Class AbstractXSLPreferencePage</h2><br><hr><pre>public class <strong>AbstractXSLPreferencePage</strong>
+extends AbstractPreferencePage</pre>Augments the SSE <code>AbstractPreferencePage</code> with support for expandable composites (twisties) and combos.<p></p><p></p><hr><table width="100%" border="1"><tr bgcolor="#CCCCFF"><td width="100%"><h2>Constructor Summary</h2></td></tr><tr><td><code><strong><a href="#con_AbstractXSLPreferencePage">AbstractXSLPreferencePage</a></strong>()</code></td></tr></table><br><table width="100%" border="1"><tr cols="2" bgcolor="#CCCCFF"><td colspan="2" width="100%"><h2>Method Summary</h2></td></tr><tr valign="top"><td width="20%" align="right"><code>protected Combo</code></td><td width="" align="left"><code><a href="#method_createCombo">createCombo</a>(Composite parent
+         ,
+      java.lang.String label
+         ,
+      java.lang.String prefKey)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>protected Composite</code></td><td width="" align="left"><code><a href="#method_createCommonContents">createCommonContents</a>(Composite parent)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               Called by createContents and must be implemented.</td></tr><tr valign="top"><td width="20%" align="right"><code>protected Control</code></td><td width="" align="left"><code><a href="#method_createContents">createContents</a>(Composite parent)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>protected Composite</code></td><td width="" align="left"><code><a href="#method_createTwistie">createTwistie</a>(Composite parent
+         ,
+      java.lang.String label
+         ,
+      int cols)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public void</code></td><td width="" align="left"><code><a href="#method_dispose">dispose</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               Saves the expansion states before calling super.</td></tr><tr valign="top"><td width="20%" align="right"><code>protected Preferences</code></td><td width="" align="left"><code><a href="#method_getModelPreferences">getModelPreferences</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public boolean</code></td><td width="" align="left"><code><a href="#method_performOk">performOk</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               Save the preferences.</td></tr></table><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Constructor Detail
+               </h2></td></tr></table><h2><a name="con_AbstractXSLPreferencePage">AbstractXSLPreferencePage</a></h2><p><code>public <strong>AbstractXSLPreferencePage</strong>()</code></p><p></p><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Methods Detail
+               </h2></td></tr></table><h2><a name="method_createCombo">createCombo</a></h2><p><code>protected Combo <strong>createCombo</strong>(Composite parent
+         ,
+      java.lang.String label
+         ,
+      java.lang.String prefKey)</code></p><p></p><h3>Parameters</h3><p><code>parent</code></p><p><code>label</code></p><p><code>prefKey</code></p><h3>Returns</h3><p><code>Combo</code></p><hr><h2><a name="method_createCommonContents">createCommonContents</a></h2><p><code>protected Composite <strong>createCommonContents</strong>(Composite parent)</code></p><p>Called by createContents and must be implemented.</p><h3>Parameters</h3><p><code>parent</code></p><h3>Returns</h3><p><code>Composite</code> - the composite</p><hr><h2><a name="method_createContents">createContents</a></h2><p><code>protected Control <strong>createContents</strong>(Composite parent)</code></p><p></p><h3>Parameters</h3><p><code>parent</code></p><h3>Returns</h3><p><code>Control</code></p><hr><h2><a name="method_createTwistie">createTwistie</a></h2><p><code>protected Composite <strong>createTwistie</strong>(Composite parent
+         ,
+      java.lang.String label
+         ,
+      int cols)</code></p><p></p><h3>Parameters</h3><p><code>parent</code></p><p><code>label</code></p><p><code>cols</code></p><h3>Returns</h3><p><code>Composite</code></p><hr><h2><a name="method_dispose">dispose</a></h2><p><code>public void <strong>dispose</strong>()</code></p><p>Saves the expansion states before calling super.</p><hr><h2><a name="method_getModelPreferences">getModelPreferences</a></h2><p><code>protected Preferences <strong>getModelPreferences</strong>()</code></p><p></p><h3>Returns</h3><p><code>Preferences</code></p><hr><h2><a name="method_performOk">performOk</a></h2><p><code>public boolean <strong>performOk</strong>()</code></p><p>Save the preferences.</p><h3>Returns</h3><p><code>boolean</code></p><hr></body></html>
\ No newline at end of file
diff --git a/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.preferences.ComboData.html b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.preferences.ComboData.html
new file mode 100644
index 0000000..2a2b42e
--- /dev/null
+++ b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.preferences.ComboData.html
@@ -0,0 +1,33 @@
+<html><body><p><font size="+1"><strong>Package org.eclipse.wst.xsl.ui.internal.preferences</strong></font></p><hr><h2><font size="-1"><strong>org.eclipse.wst.xsl.ui.internal.preferences</strong></font><br>
+               Class ComboData</h2><br><hr><pre>package-private class <strong>ComboData</strong>
+extends java.lang.Object</pre><hr><table width="100%" border="1"><tr cols="2" bgcolor="#CCCCFF"><td colspan="2" width="100%"><h2>Field Summary</h2></td></tr><tr valign="top"><td width="20%" align="right"><code>package-private int</code></td><td width="80%" align="left"><code><a href="#field_originalSeverity">originalSeverity</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr></table><br><table width="100%" border="1"><tr bgcolor="#CCCCFF"><td width="100%"><h2>Constructor Summary</h2></td></tr><tr><td><code><strong><a href="#con_ComboData">ComboData</a></strong>(java.lang.String key
+         ,
+      int[] severities
+         ,
+      int index)</code></td></tr></table><br><table width="100%" border="1"><tr cols="2" bgcolor="#CCCCFF"><td colspan="2" width="100%"><h2>Method Summary</h2></td></tr><tr valign="top"><td width="20%" align="right"><code>public int</code></td><td width="" align="left"><code><a href="#method_getIndex">getIndex</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public java.lang.String</code></td><td width="" align="left"><code><a href="#method_getKey">getKey</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public int</code></td><td width="" align="left"><code><a href="#method_getSeverity">getSeverity</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>package-private boolean</code></td><td width="" align="left"><code><a href="#method_isChanged">isChanged</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public void</code></td><td width="" align="left"><code><a href="#method_setIndex">setIndex</a>(int index)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public void</code></td><td width="" align="left"><code><a href="#method_setSeverity">setSeverity</a>(int severity)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               Sets the severity index based on <code>severity</code>.
+ If the severity doesn't exist, the index is set to -1.</td></tr></table><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Field Detail
+               </h2></td></tr></table><h2><a name="field_originalSeverity">originalSeverity</a></h2><p><code>package-private int <strong>originalSeverity</strong></code></p><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Constructor Detail
+               </h2></td></tr></table><h2><a name="con_ComboData">ComboData</a></h2><p><code>public <strong>ComboData</strong>(java.lang.String key
+         ,
+      int[] severities
+         ,
+      int index)</code></p><p></p><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Methods Detail
+               </h2></td></tr></table><h2><a name="method_getIndex">getIndex</a></h2><p><code>public int <strong>getIndex</strong>()</code></p><p></p><h3>Returns</h3><p><code>int</code></p><hr><h2><a name="method_getKey">getKey</a></h2><p><code>public java.lang.String <strong>getKey</strong>()</code></p><p></p><h3>Returns</h3><p><code>java.lang.String</code></p><hr><h2><a name="method_getSeverity">getSeverity</a></h2><p><code>public int <strong>getSeverity</strong>()</code></p><p></p><h3>Returns</h3><p><code>int</code></p><hr><h2><a name="method_isChanged">isChanged</a></h2><p><code>package-private boolean <strong>isChanged</strong>()</code></p><p></p><h3>Returns</h3><p><code>boolean</code></p><hr><h2><a name="method_setIndex">setIndex</a></h2><p><code>public void <strong>setIndex</strong>(int index)</code></p><p></p><h3>Parameters</h3><p><code>index</code></p><hr><h2><a name="method_setSeverity">setSeverity</a></h2><p><code>public void <strong>setSeverity</strong>(int severity)</code></p><p>Sets the severity index based on <code>severity</code>.
+ If the severity doesn't exist, the index is set to -1.</p><h3>Parameters</h3><p><code>severity</code> - the severity level</p><hr></body></html>
\ No newline at end of file
diff --git a/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.preferences.MainPreferencePage.html b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.preferences.MainPreferencePage.html
new file mode 100644
index 0000000..7ef47da
--- /dev/null
+++ b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.preferences.MainPreferencePage.html
@@ -0,0 +1,13 @@
+<html><body><p><font size="+1"><strong>Package org.eclipse.wst.xsl.ui.internal.preferences</strong></font></p><hr><h2><font size="-1"><strong>org.eclipse.wst.xsl.ui.internal.preferences</strong></font><br>
+               Class MainPreferencePage</h2><br><hr><pre>public class <strong>MainPreferencePage</strong>
+extends PreferencePage</pre><hr><table width="100%" border="1"><tr bgcolor="#CCCCFF"><td width="100%"><h2>Constructor Summary</h2></td></tr><tr><td><code><strong><a href="#con_MainPreferencePage">MainPreferencePage</a></strong>()</code></td></tr></table><br><table width="100%" border="1"><tr cols="2" bgcolor="#CCCCFF"><td colspan="2" width="100%"><h2>Method Summary</h2></td></tr><tr valign="top"><td width="20%" align="right"><code>protected Control</code></td><td width="" align="left"><code><a href="#method_createContents">createContents</a>(Composite ancestor)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public void</code></td><td width="" align="left"><code><a href="#method_init">init</a>(IWorkbench workbench)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               (non-Javadoc)</td></tr><tr valign="top"><td width="20%" align="right"><code>public boolean</code></td><td width="" align="left"><code><a href="#method_performOk">performOk</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               (non-Javadoc)</td></tr></table><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Constructor Detail
+               </h2></td></tr></table><h2><a name="con_MainPreferencePage">MainPreferencePage</a></h2><p><code>public <strong>MainPreferencePage</strong>()</code></p><p>MainPreferncePage is the constructor for the XSL Preference Page</p><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Methods Detail
+               </h2></td></tr></table><h2><a name="method_createContents">createContents</a></h2><p><code>protected Control <strong>createContents</strong>(Composite ancestor)</code></p><p></p><h3>Parameters</h3><p><code>ancestor</code></p><h3>Returns</h3><p><code>Control</code></p><hr><h2><a name="method_init">init</a></h2><p><code>public void <strong>init</strong>(IWorkbench workbench)</code></p><p>(non-Javadoc)</p><h3>Parameters</h3><p><code>workbench</code></p><hr><h2><a name="method_performOk">performOk</a></h2><p><code>public boolean <strong>performOk</strong>()</code></p><p>(non-Javadoc)</p><h3>Returns</h3><p><code>boolean</code></p><hr></body></html>
\ No newline at end of file
diff --git a/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.preferences.PropertyPreferencePage.html b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.preferences.PropertyPreferencePage.html
new file mode 100644
index 0000000..9c5d80b
--- /dev/null
+++ b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.preferences.PropertyPreferencePage.html
@@ -0,0 +1,39 @@
+<html><body><p><font size="+1"><strong>Package org.eclipse.wst.xsl.ui.internal.preferences</strong></font></p><hr><h2><font size="-1"><strong>org.eclipse.wst.xsl.ui.internal.preferences</strong></font><br>
+               Class PropertyPreferencePage</h2><br><hr><pre>package-private class <strong>PropertyPreferencePage</strong>
+extends PropertyPage</pre>Based loosely on org.eclipse.jdt.internal.ui.preferences.PropertyAndPreferencePage<hr><table width="100%" border="1"><tr bgcolor="#CCCCFF"><td width="100%"><h2>Constructor Summary</h2></td></tr><tr><td><code><strong><a href="#con_PropertyPreferencePage">PropertyPreferencePage</a></strong>()</code></td></tr></table><br><table width="100%" border="1"><tr cols="2" bgcolor="#CCCCFF"><td colspan="2" width="100%"><h2>Method Summary</h2></td></tr><tr valign="top"><td width="20%" align="right"><code>public void</code></td><td width="" align="left"><code><a href="#method_applyData">applyData</a>(java.lang.Object data)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>protected Control</code></td><td width="" align="left"><code><a href="#method_createCommonContents">createCommonContents</a>(Composite composite)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public Control</code></td><td width="" align="left"><code><a href="#method_createContents">createContents</a>(Composite parent)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>protected IScopeContext[]</code></td><td width="" align="left"><code><a href="#method_createPreferenceScopes">createPreferenceScopes</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>protected void</code></td><td width="" align="left"><code><a href="#method_enablePreferenceContent">enablePreferenceContent</a>(boolean enable)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               Controls the enablement of the common content region
+ of a property or preference page</td></tr><tr valign="top"><td width="20%" align="right"><code>protected java.lang.String</code></td><td width="" align="left"><code><a href="#method_getPreferenceNodeQualifier">getPreferenceNodeQualifier</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>protected java.lang.String</code></td><td width="" align="left"><code><a href="#method_getPreferencePageID">getPreferencePageID</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>protected IProject</code></td><td width="" align="left"><code><a href="#method_getProject">getProject</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>protected java.lang.String</code></td><td width="" align="left"><code><a href="#method_getProjectSettingsKey">getProjectSettingsKey</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>protected java.lang.String</code></td><td width="" align="left"><code><a href="#method_getPropertyPageID">getPropertyPageID</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>protected boolean</code></td><td width="" align="left"><code><a href="#method_isElementSettingsEnabled">isElementSettingsEnabled</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>package-private void</code></td><td width="" align="left"><code><a href="#method_openProjectSettings">openProjectSettings</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>package-private void</code></td><td width="" align="left"><code><a href="#method_openWorkspaceSettings">openWorkspaceSettings</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>protected void</code></td><td width="" align="left"><code><a href="#method_performDefaults">performDefaults</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public boolean</code></td><td width="" align="left"><code><a href="#method_performOk">performOk</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr></table><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Constructor Detail
+               </h2></td></tr></table><h2><a name="con_PropertyPreferencePage">PropertyPreferencePage</a></h2><p><code>public <strong>PropertyPreferencePage</strong>()</code></p><p></p><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Methods Detail
+               </h2></td></tr></table><h2><a name="method_applyData">applyData</a></h2><p><code>public void <strong>applyData</strong>(java.lang.Object data)</code></p><p></p><h3>Parameters</h3><p><code>data</code></p><hr><h2><a name="method_createCommonContents">createCommonContents</a></h2><p><code>protected Control <strong>createCommonContents</strong>(Composite composite)</code></p><p></p><h3>Parameters</h3><p><code>composite</code></p><h3>Returns</h3><p><code>Control</code></p><hr><h2><a name="method_createContents">createContents</a></h2><p><code>public Control <strong>createContents</strong>(Composite parent)</code></p><p></p><h3>Parameters</h3><p><code>parent</code></p><h3>Returns</h3><p><code>Control</code></p><hr><h2><a name="method_createPreferenceScopes">createPreferenceScopes</a></h2><p><code>protected IScopeContext[] <strong>createPreferenceScopes</strong>()</code></p><p></p><h3>Returns</h3><p><code>IScopeContext[]</code></p><hr><h2><a name="method_enablePreferenceContent">enablePreferenceContent</a></h2><p><code>protected void <strong>enablePreferenceContent</strong>(boolean enable)</code></p><p>Controls the enablement of the common content region
+ of a property or preference page</p><h3>Parameters</h3><p><code>enable</code> - the enabled state of the common content  area</p><hr><h2><a name="method_getPreferenceNodeQualifier">getPreferenceNodeQualifier</a></h2><p><code>protected java.lang.String <strong>getPreferenceNodeQualifier</strong>()</code></p><p></p><h3>Returns</h3><p><code>java.lang.String</code></p><hr><h2><a name="method_getPreferencePageID">getPreferencePageID</a></h2><p><code>protected java.lang.String <strong>getPreferencePageID</strong>()</code></p><p></p><h3>Returns</h3><p><code>java.lang.String</code></p><hr><h2><a name="method_getProject">getProject</a></h2><p><code>protected IProject <strong>getProject</strong>()</code></p><p></p><h3>Returns</h3><p><code>IProject</code></p><hr><h2><a name="method_getProjectSettingsKey">getProjectSettingsKey</a></h2><p><code>protected java.lang.String <strong>getProjectSettingsKey</strong>()</code></p><p></p><h3>Returns</h3><p><code>java.lang.String</code></p><hr><h2><a name="method_getPropertyPageID">getPropertyPageID</a></h2><p><code>protected java.lang.String <strong>getPropertyPageID</strong>()</code></p><p></p><h3>Returns</h3><p><code>java.lang.String</code></p><hr><h2><a name="method_isElementSettingsEnabled">isElementSettingsEnabled</a></h2><p><code>protected boolean <strong>isElementSettingsEnabled</strong>()</code></p><p></p><h3>Returns</h3><p><code>boolean</code></p><hr><h2><a name="method_openProjectSettings">openProjectSettings</a></h2><p><code>package-private void <strong>openProjectSettings</strong>()</code></p><p></p><hr><h2><a name="method_openWorkspaceSettings">openWorkspaceSettings</a></h2><p><code>package-private void <strong>openWorkspaceSettings</strong>()</code></p><p></p><hr><h2><a name="method_performDefaults">performDefaults</a></h2><p><code>protected void <strong>performDefaults</strong>()</code></p><p></p><hr><h2><a name="method_performOk">performOk</a></h2><p><code>public boolean <strong>performOk</strong>()</code></p><p></p><h3>Returns</h3><p><code>boolean</code></p><hr></body></html>
\ No newline at end of file
diff --git a/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.preferences.ValidationPreferencePage.html b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.preferences.ValidationPreferencePage.html
new file mode 100644
index 0000000..5dd3831
--- /dev/null
+++ b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.preferences.ValidationPreferencePage.html
@@ -0,0 +1,27 @@
+<html><body><p><font size="+1"><strong>Package org.eclipse.wst.xsl.ui.internal.preferences</strong></font></p><hr><h2><font size="-1"><strong>org.eclipse.wst.xsl.ui.internal.preferences</strong></font><br>
+               Class ValidationPreferencePage</h2><br><hr><pre>public class <strong>ValidationPreferencePage</strong>
+extends org.eclipse.wst.xsl.ui.internal.preferences.AbstractXSLPreferencePage</pre>Preference page for XSL validator preferences.<p></p><p></p><hr><table width="100%" border="1"><tr bgcolor="#CCCCFF"><td width="100%"><h2>Constructor Summary</h2></td></tr><tr><td><code><strong><a href="#con_ValidationPreferencePage">ValidationPreferencePage</a></strong>()</code></td></tr></table><br><table width="100%" border="1"><tr cols="2" bgcolor="#CCCCFF"><td colspan="2" width="100%"><h2>Method Summary</h2></td></tr><tr valign="top"><td width="20%" align="right"><code>protected Combo</code></td><td width="" align="left"><code><a href="#method_createCombo">createCombo</a>(Composite parent
+         ,
+      java.lang.String label
+         ,
+      java.lang.String prefKey)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>protected Composite</code></td><td width="" align="left"><code><a href="#method_createCommonContents">createCommonContents</a>(Composite parent)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>protected void</code></td><td width="" align="left"><code><a href="#method_initializeValues">initializeValues</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>protected void</code></td><td width="" align="left"><code><a href="#method_performDefaults">performDefaults</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>protected void</code></td><td width="" align="left"><code><a href="#method_storeValues">storeValues</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>protected void</code></td><td width="" align="left"><code><a href="#method_validateValues">validateValues</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr></table><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Constructor Detail
+               </h2></td></tr></table><h2><a name="con_ValidationPreferencePage">ValidationPreferencePage</a></h2><p><code>public <strong>ValidationPreferencePage</strong>()</code></p><p>Create a new instance of this.</p><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Methods Detail
+               </h2></td></tr></table><h2><a name="method_createCombo">createCombo</a></h2><p><code>protected Combo <strong>createCombo</strong>(Composite parent
+         ,
+      java.lang.String label
+         ,
+      java.lang.String prefKey)</code></p><p></p><h3>Parameters</h3><p><code>parent</code></p><p><code>label</code></p><p><code>prefKey</code></p><h3>Returns</h3><p><code>Combo</code></p><hr><h2><a name="method_createCommonContents">createCommonContents</a></h2><p><code>protected Composite <strong>createCommonContents</strong>(Composite parent)</code></p><p></p><h3>Parameters</h3><p><code>parent</code></p><h3>Returns</h3><p><code>Composite</code></p><hr><h2><a name="method_initializeValues">initializeValues</a></h2><p><code>protected void <strong>initializeValues</strong>()</code></p><p></p><hr><h2><a name="method_performDefaults">performDefaults</a></h2><p><code>protected void <strong>performDefaults</strong>()</code></p><p></p><hr><h2><a name="method_storeValues">storeValues</a></h2><p><code>protected void <strong>storeValues</strong>()</code></p><p></p><hr><h2><a name="method_validateValues">validateValues</a></h2><p><code>protected void <strong>validateValues</strong>()</code></p><p></p><hr></body></html>
\ No newline at end of file
diff --git a/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.preferences.XSLSyntaxColoringPage.html b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.preferences.XSLSyntaxColoringPage.html
new file mode 100644
index 0000000..2a9a76d
--- /dev/null
+++ b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.preferences.XSLSyntaxColoringPage.html
@@ -0,0 +1,28 @@
+<html><body><p><font size="+1"><strong>Package org.eclipse.wst.xsl.ui.internal.preferences</strong></font></p><hr><h2><font size="-1"><strong>org.eclipse.wst.xsl.ui.internal.preferences</strong></font><br>
+               Class XSLSyntaxColoringPage</h2><br><hr><pre>public class <strong>XSLSyntaxColoringPage</strong>
+extends PreferencePage</pre>A preference page to configure our XSL syntax color. It resembles the XML
+ pages.<p></p><hr><table width="100%" border="1"><tr bgcolor="#CCCCFF"><td width="100%"><h2>Constructor Summary</h2></td></tr><tr><td><code><strong><a href="#con_XSLSyntaxColoringPage">XSLSyntaxColoringPage</a></strong>()</code></td></tr></table><br><table width="100%" border="1"><tr cols="2" bgcolor="#CCCCFF"><td colspan="2" width="100%"><h2>Method Summary</h2></td></tr><tr valign="top"><td width="20%" align="right"><code>public void</code></td><td width="" align="left"><code><a href="#method_applyStyles">applyStyles</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               Color the text in the sample area according to the current preferences</td></tr><tr valign="top"><td width="20%" align="right"><code>public Button</code></td><td width="" align="left"><code><a href="#method_createCheckbox">createCheckbox</a>(Composite parent
+         ,
+      java.lang.String label)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>protected Control</code></td><td width="" align="left"><code><a href="#method_createContents">createContents</a>(Composite parent)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public void</code></td><td width="" align="left"><code><a href="#method_dispose">dispose</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>protected IPreferenceStore</code></td><td width="" align="left"><code><a href="#method_doGetPreferenceStore">doGetPreferenceStore</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public void</code></td><td width="" align="left"><code><a href="#method_init">init</a>(IWorkbench workbench)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>protected void</code></td><td width="" align="left"><code><a href="#method_performDefaults">performDefaults</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public boolean</code></td><td width="" align="left"><code><a href="#method_performOk">performOk</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr></table><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Constructor Detail
+               </h2></td></tr></table><h2><a name="con_XSLSyntaxColoringPage">XSLSyntaxColoringPage</a></h2><p><code>public <strong>XSLSyntaxColoringPage</strong>()</code></p><p></p><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Methods Detail
+               </h2></td></tr></table><h2><a name="method_applyStyles">applyStyles</a></h2><p><code>public void <strong>applyStyles</strong>()</code></p><p>Color the text in the sample area according to the current preferences</p><hr><h2><a name="method_createCheckbox">createCheckbox</a></h2><p><code>public Button <strong>createCheckbox</strong>(Composite parent
+         ,
+      java.lang.String label)</code></p><p></p><h3>Parameters</h3><p><code>parent</code></p><p><code>label</code></p><h3>Returns</h3><p><code>Button</code></p><hr><h2><a name="method_createContents">createContents</a></h2><p><code>protected Control <strong>createContents</strong>(Composite parent)</code></p><p></p><h3>Parameters</h3><p><code>parent</code></p><h3>Returns</h3><p><code>Control</code></p><hr><h2><a name="method_dispose">dispose</a></h2><p><code>public void <strong>dispose</strong>()</code></p><p></p><hr><h2><a name="method_doGetPreferenceStore">doGetPreferenceStore</a></h2><p><code>protected IPreferenceStore <strong>doGetPreferenceStore</strong>()</code></p><p></p><h3>Returns</h3><p><code>IPreferenceStore</code></p><hr><h2><a name="method_init">init</a></h2><p><code>public void <strong>init</strong>(IWorkbench workbench)</code></p><p></p><h3>Parameters</h3><p><code>workbench</code></p><hr><h2><a name="method_performDefaults">performDefaults</a></h2><p><code>protected void <strong>performDefaults</strong>()</code></p><p></p><hr><h2><a name="method_performOk">performOk</a></h2><p><code>public boolean <strong>performOk</strong>()</code></p><p></p><h3>Returns</h3><p><code>boolean</code></p><hr></body></html>
\ No newline at end of file
diff --git a/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.preferences.XSLTemplatePreferencePage.html b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.preferences.XSLTemplatePreferencePage.html
new file mode 100644
index 0000000..8b90521
--- /dev/null
+++ b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.preferences.XSLTemplatePreferencePage.html
@@ -0,0 +1,11 @@
+<html><body><p><font size="+1"><strong>Package org.eclipse.wst.xsl.ui.internal.preferences</strong></font></p><hr><h2><font size="-1"><strong>org.eclipse.wst.xsl.ui.internal.preferences</strong></font><br>
+               Class XSLTemplatePreferencePage</h2><br><hr><pre>public class <strong>XSLTemplatePreferencePage</strong>
+extends XMLTemplatePreferencePage</pre>XSLTemplatePreferencePage sets up the template preference page that
+ contains the templates for xpath, xpath 2.0, axis, operators, and 
+ exslt functions.<p></p><hr><table width="100%" border="1"><tr bgcolor="#CCCCFF"><td width="100%"><h2>Constructor Summary</h2></td></tr><tr><td><code><strong><a href="#con_XSLTemplatePreferencePage">XSLTemplatePreferencePage</a></strong>()</code></td></tr></table><br><table width="100%" border="1"><tr cols="2" bgcolor="#CCCCFF"><td colspan="2" width="100%"><h2>Method Summary</h2></td></tr><tr valign="top"><td width="20%" align="right"><code>public boolean</code></td><td width="" align="left"><code><a href="#method_performOk">performOk</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               (non-Javadoc)</td></tr></table><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Constructor Detail
+               </h2></td></tr></table><h2><a name="con_XSLTemplatePreferencePage">XSLTemplatePreferencePage</a></h2><p><code>public <strong>XSLTemplatePreferencePage</strong>()</code></p><p></p><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Methods Detail
+               </h2></td></tr></table><h2><a name="method_performOk">performOk</a></h2><p><code>public boolean <strong>performOk</strong>()</code></p><p>(non-Javadoc)</p><h3>Returns</h3><p><code>boolean</code></p><hr></body></html>
\ No newline at end of file
diff --git a/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.preferences.XSLUIPreferenceInitializer.html b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.preferences.XSLUIPreferenceInitializer.html
new file mode 100644
index 0000000..693110c
--- /dev/null
+++ b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.preferences.XSLUIPreferenceInitializer.html
@@ -0,0 +1,9 @@
+<html><body><p><font size="+1"><strong>Package org.eclipse.wst.xsl.ui.internal.preferences</strong></font></p><hr><h2><font size="-1"><strong>org.eclipse.wst.xsl.ui.internal.preferences</strong></font><br>
+               Class XSLUIPreferenceInitializer</h2><br><hr><pre>public class <strong>XSLUIPreferenceInitializer</strong>
+extends AbstractPreferenceInitializer</pre>Sets default values for XSL UI preferences<hr><table width="100%" border="1"><tr bgcolor="#CCCCFF"><td width="100%"><h2>Constructor Summary</h2></td></tr><tr><td><code><strong><a href="#con_XSLUIPreferenceInitializer">XSLUIPreferenceInitializer</a></strong>()</code></td></tr></table><br><table width="100%" border="1"><tr cols="2" bgcolor="#CCCCFF"><td colspan="2" width="100%"><h2>Method Summary</h2></td></tr><tr valign="top"><td width="20%" align="right"><code>public void</code></td><td width="" align="left"><code><a href="#method_initializeDefaultPreferences">initializeDefaultPreferences</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr></table><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Constructor Detail
+               </h2></td></tr></table><h2><a name="con_XSLUIPreferenceInitializer">XSLUIPreferenceInitializer</a></h2><p><code>public <strong>XSLUIPreferenceInitializer</strong>()</code></p><p></p><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Methods Detail
+               </h2></td></tr></table><h2><a name="method_initializeDefaultPreferences">initializeDefaultPreferences</a></h2><p><code>public void <strong>initializeDefaultPreferences</strong>()</code></p><p></p><hr></body></html>
\ No newline at end of file
diff --git a/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.preferences.XSLValidationPreferencePage.html b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.preferences.XSLValidationPreferencePage.html
new file mode 100644
index 0000000..9f3f3c0
--- /dev/null
+++ b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.preferences.XSLValidationPreferencePage.html
@@ -0,0 +1,73 @@
+<html><body><p><font size="+1"><strong>Package org.eclipse.wst.xsl.ui.internal.preferences</strong></font></p><hr><h2><font size="-1"><strong>org.eclipse.wst.xsl.ui.internal.preferences</strong></font><br>
+               Class XSLValidationPreferencePage</h2><br><hr><pre>public class <strong>XSLValidationPreferencePage</strong>
+extends org.eclipse.wst.xsl.ui.internal.preferences.AbstractValidationSettingsPage</pre><hr><table width="100%" border="1"><tr bgcolor="#CCCCFF"><td width="100%"><h2>Constructor Summary</h2></td></tr><tr><td><code><strong><a href="#con_XSLValidationPreferencePage">XSLValidationPreferencePage</a></strong>()</code></td></tr></table><br><table width="100%" border="1"><tr cols="2" bgcolor="#CCCCFF"><td colspan="2" width="100%"><h2>Method Summary</h2></td></tr><tr valign="top"><td width="20%" align="right"><code>protected Combo</code></td><td width="" align="left"><code><a href="#method_createCombo">createCombo</a>(Composite parent
+         ,
+      java.lang.String label
+         ,
+      java.lang.String key)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>protected Control</code></td><td width="" align="left"><code><a href="#method_createCommonContents">createCommonContents</a>(Composite parent)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>protected Label</code></td><td width="" align="left"><code><a href="#method_createLabel">createLabel</a>(Composite parent
+         ,
+      java.lang.String text)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>protected Text</code></td><td width="" align="left"><code><a href="#method_createTextField">createTextField</a>(Composite parent)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>protected ExpandableComposite</code></td><td width="" align="left"><code><a href="#method_createTwistie">createTwistie</a>(Composite parent
+         ,
+      java.lang.String label
+         ,
+      int nColumns)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>protected Composite</code></td><td width="" align="left"><code><a href="#method_createValidationSection">createValidationSection</a>(Composite parent)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public void</code></td><td width="" align="left"><code><a href="#method_dispose">dispose</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>protected void</code></td><td width="" align="left"><code><a href="#method_enableValues">enableValues</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>protected IDialogSettings</code></td><td width="" align="left"><code><a href="#method_getDialogSettings">getDialogSettings</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>protected Preferences</code></td><td width="" align="left"><code><a href="#method_getModelPreferences">getModelPreferences</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>protected java.lang.String</code></td><td width="" align="left"><code><a href="#method_getPreferenceNodeQualifier">getPreferenceNodeQualifier</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>protected java.lang.String</code></td><td width="" align="left"><code><a href="#method_getPreferencePageID">getPreferencePageID</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>protected java.lang.String</code></td><td width="" align="left"><code><a href="#method_getProjectSettingsKey">getProjectSettingsKey</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>protected java.lang.String</code></td><td width="" align="left"><code><a href="#method_getPropertyPageID">getPropertyPageID</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>protected java.lang.String</code></td><td width="" align="left"><code><a href="#method_getQualifier">getQualifier</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public void</code></td><td width="" align="left"><code><a href="#method_init">init</a>(IWorkbench workbench)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>protected void</code></td><td width="" align="left"><code><a href="#method_initializeValues">initializeValues</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>protected boolean</code></td><td width="" align="left"><code><a href="#method_loadPreferences">loadPreferences</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public void</code></td><td width="" align="left"><code><a href="#method_modifyText">modifyText</a>(ModifyEvent e)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>protected void</code></td><td width="" align="left"><code><a href="#method_performDefaults">performDefaults</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public boolean</code></td><td width="" align="left"><code><a href="#method_performOk">performOk</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               (non-Javadoc)</td></tr><tr valign="top"><td width="20%" align="right"><code>protected void</code></td><td width="" align="left"><code><a href="#method_storeValues">storeValues</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>protected void</code></td><td width="" align="left"><code><a href="#method_validateValues">validateValues</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr></table><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Constructor Detail
+               </h2></td></tr></table><h2><a name="con_XSLValidationPreferencePage">XSLValidationPreferencePage</a></h2><p><code>public <strong>XSLValidationPreferencePage</strong>()</code></p><p></p><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Methods Detail
+               </h2></td></tr></table><h2><a name="method_createCombo">createCombo</a></h2><p><code>protected Combo <strong>createCombo</strong>(Composite parent
+         ,
+      java.lang.String label
+         ,
+      java.lang.String key)</code></p><p></p><h3>Parameters</h3><p><code>parent</code></p><p><code>label</code></p><p><code>key</code></p><h3>Returns</h3><p><code>Combo</code></p><hr><h2><a name="method_createCommonContents">createCommonContents</a></h2><p><code>protected Control <strong>createCommonContents</strong>(Composite parent)</code></p><p></p><h3>Parameters</h3><p><code>parent</code></p><h3>Returns</h3><p><code>Control</code></p><hr><h2><a name="method_createLabel">createLabel</a></h2><p><code>protected Label <strong>createLabel</strong>(Composite parent
+         ,
+      java.lang.String text)</code></p><p></p><h3>Parameters</h3><p><code>parent</code></p><p><code>text</code></p><h3>Returns</h3><p><code>Label</code></p><hr><h2><a name="method_createTextField">createTextField</a></h2><p><code>protected Text <strong>createTextField</strong>(Composite parent)</code></p><p></p><h3>Parameters</h3><p><code>parent</code></p><h3>Returns</h3><p><code>Text</code></p><hr><h2><a name="method_createTwistie">createTwistie</a></h2><p><code>protected ExpandableComposite <strong>createTwistie</strong>(Composite parent
+         ,
+      java.lang.String label
+         ,
+      int nColumns)</code></p><p></p><h3>Parameters</h3><p><code>parent</code></p><p><code>label</code></p><p><code>nColumns</code></p><h3>Returns</h3><p><code>ExpandableComposite</code></p><hr><h2><a name="method_createValidationSection">createValidationSection</a></h2><p><code>protected Composite <strong>createValidationSection</strong>(Composite parent)</code></p><p></p><h3>Parameters</h3><p><code>parent</code></p><h3>Returns</h3><p><code>Composite</code></p><hr><h2><a name="method_dispose">dispose</a></h2><p><code>public void <strong>dispose</strong>()</code></p><p></p><hr><h2><a name="method_enableValues">enableValues</a></h2><p><code>protected void <strong>enableValues</strong>()</code></p><p></p><hr><h2><a name="method_getDialogSettings">getDialogSettings</a></h2><p><code>protected IDialogSettings <strong>getDialogSettings</strong>()</code></p><p></p><h3>Returns</h3><p><code>IDialogSettings</code></p><hr><h2><a name="method_getModelPreferences">getModelPreferences</a></h2><p><code>protected Preferences <strong>getModelPreferences</strong>()</code></p><p></p><h3>Returns</h3><p><code>Preferences</code></p><hr><h2><a name="method_getPreferenceNodeQualifier">getPreferenceNodeQualifier</a></h2><p><code>protected java.lang.String <strong>getPreferenceNodeQualifier</strong>()</code></p><p></p><h3>Returns</h3><p><code>java.lang.String</code></p><hr><h2><a name="method_getPreferencePageID">getPreferencePageID</a></h2><p><code>protected java.lang.String <strong>getPreferencePageID</strong>()</code></p><p></p><h3>Returns</h3><p><code>java.lang.String</code></p><hr><h2><a name="method_getProjectSettingsKey">getProjectSettingsKey</a></h2><p><code>protected java.lang.String <strong>getProjectSettingsKey</strong>()</code></p><p></p><h3>Returns</h3><p><code>java.lang.String</code></p><hr><h2><a name="method_getPropertyPageID">getPropertyPageID</a></h2><p><code>protected java.lang.String <strong>getPropertyPageID</strong>()</code></p><p></p><h3>Returns</h3><p><code>java.lang.String</code></p><hr><h2><a name="method_getQualifier">getQualifier</a></h2><p><code>protected java.lang.String <strong>getQualifier</strong>()</code></p><p></p><h3>Returns</h3><p><code>java.lang.String</code></p><hr><h2><a name="method_init">init</a></h2><p><code>public void <strong>init</strong>(IWorkbench workbench)</code></p><p></p><h3>Parameters</h3><p><code>workbench</code></p><hr><h2><a name="method_initializeValues">initializeValues</a></h2><p><code>protected void <strong>initializeValues</strong>()</code></p><p></p><hr><h2><a name="method_loadPreferences">loadPreferences</a></h2><p><code>protected boolean <strong>loadPreferences</strong>()</code></p><p></p><h3>Returns</h3><p><code>boolean</code></p><hr><h2><a name="method_modifyText">modifyText</a></h2><p><code>public void <strong>modifyText</strong>(ModifyEvent e)</code></p><p></p><h3>Parameters</h3><p><code>e</code></p><hr><h2><a name="method_performDefaults">performDefaults</a></h2><p><code>protected void <strong>performDefaults</strong>()</code></p><p></p><hr><h2><a name="method_performOk">performOk</a></h2><p><code>public boolean <strong>performOk</strong>()</code></p><p>(non-Javadoc)</p><h3>Returns</h3><p><code>boolean</code></p><hr><h2><a name="method_storeValues">storeValues</a></h2><p><code>protected void <strong>storeValues</strong>()</code></p><p></p><hr><h2><a name="method_validateValues">validateValues</a></h2><p><code>protected void <strong>validateValues</strong>()</code></p><p></p><hr></body></html>
\ No newline at end of file
diff --git a/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.quickassist.OverrideQuickAssist.html b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.quickassist.OverrideQuickAssist.html
new file mode 100644
index 0000000..a950f72
--- /dev/null
+++ b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.quickassist.OverrideQuickAssist.html
@@ -0,0 +1,15 @@
+<html><body><p><font size="+1"><strong>Package org.eclipse.wst.xsl.ui.internal.quickassist</strong></font></p><hr><h2><font size="-1"><strong>org.eclipse.wst.xsl.ui.internal.quickassist</strong></font><br>
+               Class OverrideQuickAssist</h2><br><hr><pre>public class <strong>OverrideQuickAssist</strong>
+extends java.lang.Object</pre><hr><table width="100%" border="1"><tr bgcolor="#CCCCFF"><td width="100%"><h2>Constructor Summary</h2></td></tr><tr><td><code><strong><a href="#con_OverrideQuickAssist">OverrideQuickAssist</a></strong>()</code></td></tr></table><br><table width="100%" border="1"><tr cols="2" bgcolor="#CCCCFF"><td colspan="2" width="100%"><h2>Method Summary</h2></td></tr><tr valign="top"><td width="20%" align="right"><code>public boolean</code></td><td width="" align="left"><code><a href="#method_canAssist">canAssist</a>(IQuickAssistInvocationContext invocationContext)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public boolean</code></td><td width="" align="left"><code><a href="#method_canFix">canFix</a>(Annotation annotation)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public ICompletionProposal[]</code></td><td width="" align="left"><code><a href="#method_computeQuickAssistProposals">computeQuickAssistProposals</a>(IQuickAssistInvocationContext invocationContext)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public java.lang.String</code></td><td width="" align="left"><code><a href="#method_getErrorMessage">getErrorMessage</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr></table><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Constructor Detail
+               </h2></td></tr></table><h2><a name="con_OverrideQuickAssist">OverrideQuickAssist</a></h2><p><code>public <strong>OverrideQuickAssist</strong>()</code></p><p></p><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Methods Detail
+               </h2></td></tr></table><h2><a name="method_canAssist">canAssist</a></h2><p><code>public boolean <strong>canAssist</strong>(IQuickAssistInvocationContext invocationContext)</code></p><p></p><h3>Parameters</h3><p><code>invocationContext</code></p><h3>Returns</h3><p><code>boolean</code></p><hr><h2><a name="method_canFix">canFix</a></h2><p><code>public boolean <strong>canFix</strong>(Annotation annotation)</code></p><p></p><h3>Parameters</h3><p><code>annotation</code></p><h3>Returns</h3><p><code>boolean</code></p><hr><h2><a name="method_computeQuickAssistProposals">computeQuickAssistProposals</a></h2><p><code>public ICompletionProposal[] <strong>computeQuickAssistProposals</strong>(IQuickAssistInvocationContext invocationContext)</code></p><p></p><h3>Parameters</h3><p><code>invocationContext</code></p><h3>Returns</h3><p><code>ICompletionProposal[]</code></p><hr><h2><a name="method_getErrorMessage">getErrorMessage</a></h2><p><code>public java.lang.String <strong>getErrorMessage</strong>()</code></p><p></p><h3>Returns</h3><p><code>java.lang.String</code></p><hr></body></html>
\ No newline at end of file
diff --git a/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.quickassist.ValidationQuickAssist.html b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.quickassist.ValidationQuickAssist.html
new file mode 100644
index 0000000..244da80
--- /dev/null
+++ b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.quickassist.ValidationQuickAssist.html
@@ -0,0 +1,15 @@
+<html><body><p><font size="+1"><strong>Package org.eclipse.wst.xsl.ui.internal.quickassist</strong></font></p><hr><h2><font size="-1"><strong>org.eclipse.wst.xsl.ui.internal.quickassist</strong></font><br>
+               Class ValidationQuickAssist</h2><br><hr><pre>public class <strong>ValidationQuickAssist</strong>
+extends java.lang.Object</pre><hr><table width="100%" border="1"><tr bgcolor="#CCCCFF"><td width="100%"><h2>Constructor Summary</h2></td></tr><tr><td><code><strong><a href="#con_ValidationQuickAssist">ValidationQuickAssist</a></strong>()</code></td></tr></table><br><table width="100%" border="1"><tr cols="2" bgcolor="#CCCCFF"><td colspan="2" width="100%"><h2>Method Summary</h2></td></tr><tr valign="top"><td width="20%" align="right"><code>public boolean</code></td><td width="" align="left"><code><a href="#method_canAssist">canAssist</a>(IQuickAssistInvocationContext invocationContext)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public boolean</code></td><td width="" align="left"><code><a href="#method_canFix">canFix</a>(Annotation annotation)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public ICompletionProposal[]</code></td><td width="" align="left"><code><a href="#method_computeQuickAssistProposals">computeQuickAssistProposals</a>(IQuickAssistInvocationContext invocationContext)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public java.lang.String</code></td><td width="" align="left"><code><a href="#method_getErrorMessage">getErrorMessage</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr></table><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Constructor Detail
+               </h2></td></tr></table><h2><a name="con_ValidationQuickAssist">ValidationQuickAssist</a></h2><p><code>public <strong>ValidationQuickAssist</strong>()</code></p><p></p><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Methods Detail
+               </h2></td></tr></table><h2><a name="method_canAssist">canAssist</a></h2><p><code>public boolean <strong>canAssist</strong>(IQuickAssistInvocationContext invocationContext)</code></p><p></p><h3>Parameters</h3><p><code>invocationContext</code></p><h3>Returns</h3><p><code>boolean</code></p><hr><h2><a name="method_canFix">canFix</a></h2><p><code>public boolean <strong>canFix</strong>(Annotation annotation)</code></p><p></p><h3>Parameters</h3><p><code>annotation</code></p><h3>Returns</h3><p><code>boolean</code></p><hr><h2><a name="method_computeQuickAssistProposals">computeQuickAssistProposals</a></h2><p><code>public ICompletionProposal[] <strong>computeQuickAssistProposals</strong>(IQuickAssistInvocationContext invocationContext)</code></p><p></p><h3>Parameters</h3><p><code>invocationContext</code></p><h3>Returns</h3><p><code>ICompletionProposal[]</code></p><hr><h2><a name="method_getErrorMessage">getErrorMessage</a></h2><p><code>public java.lang.String <strong>getErrorMessage</strong>()</code></p><p></p><h3>Returns</h3><p><code>java.lang.String</code></p><hr></body></html>
\ No newline at end of file
diff --git a/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.registry.AdapterFactoryProviderForXSL.html b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.registry.AdapterFactoryProviderForXSL.html
new file mode 100644
index 0000000..b96895c
--- /dev/null
+++ b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.registry.AdapterFactoryProviderForXSL.html
@@ -0,0 +1,15 @@
+<html><body><p><font size="+1"><strong>Package org.eclipse.wst.xsl.ui.internal.registry</strong></font></p><hr><h2><font size="-1"><strong>org.eclipse.wst.xsl.ui.internal.registry</strong></font><br>
+               Class AdapterFactoryProviderForXSL</h2><br><hr><pre>public class <strong>AdapterFactoryProviderForXSL</strong>
+extends AdapterFactoryProviderForXML</pre><hr><table width="100%" border="1"><tr bgcolor="#CCCCFF"><td width="100%"><h2>Constructor Summary</h2></td></tr><tr><td><code><strong><a href="#con_AdapterFactoryProviderForXSL">AdapterFactoryProviderForXSL</a></strong>()</code></td></tr></table><br><table width="100%" border="1"><tr cols="2" bgcolor="#CCCCFF"><td colspan="2" width="100%"><h2>Method Summary</h2></td></tr><tr valign="top"><td width="20%" align="right"><code>public void</code></td><td width="" align="left"><code><a href="#method_addAdapterFactories">addAdapterFactories</a>(IStructuredModel structuredModel)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>protected void</code></td><td width="" align="left"><code><a href="#method_addContentBasedFactories">addContentBasedFactories</a>(IStructuredModel structuredModel)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public boolean</code></td><td width="" align="left"><code><a href="#method_isFor">isFor</a>(IDocumentTypeHandler contentTypeDescription)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public void</code></td><td width="" align="left"><code><a href="#method_reinitializeFactories">reinitializeFactories</a>(IStructuredModel structuredModel)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr></table><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Constructor Detail
+               </h2></td></tr></table><h2><a name="con_AdapterFactoryProviderForXSL">AdapterFactoryProviderForXSL</a></h2><p><code>public <strong>AdapterFactoryProviderForXSL</strong>()</code></p><p></p><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Methods Detail
+               </h2></td></tr></table><h2><a name="method_addAdapterFactories">addAdapterFactories</a></h2><p><code>public void <strong>addAdapterFactories</strong>(IStructuredModel structuredModel)</code></p><p></p><h3>Parameters</h3><p><code>structuredModel</code></p><hr><h2><a name="method_addContentBasedFactories">addContentBasedFactories</a></h2><p><code>protected void <strong>addContentBasedFactories</strong>(IStructuredModel structuredModel)</code></p><p></p><h3>Parameters</h3><p><code>structuredModel</code></p><hr><h2><a name="method_isFor">isFor</a></h2><p><code>public boolean <strong>isFor</strong>(IDocumentTypeHandler contentTypeDescription)</code></p><p></p><h3>Parameters</h3><p><code>contentTypeDescription</code></p><h3>Returns</h3><p><code>boolean</code></p><hr><h2><a name="method_reinitializeFactories">reinitializeFactories</a></h2><p><code>public void <strong>reinitializeFactories</strong>(IStructuredModel structuredModel)</code></p><p></p><h3>Parameters</h3><p><code>structuredModel</code></p><hr></body></html>
\ No newline at end of file
diff --git a/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.style.AbstractXSLSemanticHighlighting.html b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.style.AbstractXSLSemanticHighlighting.html
new file mode 100644
index 0000000..7275de9
--- /dev/null
+++ b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.style.AbstractXSLSemanticHighlighting.html
@@ -0,0 +1,39 @@
+<html><body><p><font size="+1"><strong>Package org.eclipse.wst.xsl.ui.internal.style</strong></font></p><hr><h2><font size="-1"><strong>org.eclipse.wst.xsl.ui.internal.style</strong></font><br>
+               Class AbstractXSLSemanticHighlighting</h2><br><hr><pre>public class <strong>AbstractXSLSemanticHighlighting</strong>
+extends java.lang.Object</pre><hr><table width="100%" border="1"><tr bgcolor="#CCCCFF"><td width="100%"><h2>Constructor Summary</h2></td></tr><tr><td><code><strong><a href="#con_AbstractXSLSemanticHighlighting">AbstractXSLSemanticHighlighting</a></strong>()</code></td></tr></table><br><table width="100%" border="1"><tr cols="2" bgcolor="#CCCCFF"><td colspan="2" width="100%"><h2>Method Summary</h2></td></tr><tr valign="top"><td width="20%" align="right"><code>public Position[]</code></td><td width="" align="left"><code><a href="#method_consumes">consumes</a>(IStructuredDocumentRegion region)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public Position[]</code></td><td width="" align="left"><code><a href="#method_consumes">consumes</a>(IStructuredDocumentRegion documentRegion
+         ,
+      IndexedRegion indexedRegion)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>protected java.util.List</code></td><td width="" align="left"><code><a href="#method_createSemanticPositions">createSemanticPositions</a>(IStructuredDocumentRegion region
+         ,
+      java.lang.String regionType)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public java.lang.String</code></td><td width="" align="left"><code><a href="#method_getBoldPreferenceKey">getBoldPreferenceKey</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public java.lang.String</code></td><td width="" align="left"><code><a href="#method_getColorPreferenceKey">getColorPreferenceKey</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public java.lang.String</code></td><td width="" align="left"><code><a href="#method_getDisplayName">getDisplayName</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public java.lang.String</code></td><td width="" align="left"><code><a href="#method_getEnabledPreferenceKey">getEnabledPreferenceKey</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public java.lang.String</code></td><td width="" align="left"><code><a href="#method_getItalicPreferenceKey">getItalicPreferenceKey</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public IPreferenceStore</code></td><td width="" align="left"><code><a href="#method_getPreferenceStore">getPreferenceStore</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public java.lang.String</code></td><td width="" align="left"><code><a href="#method_getStrikethroughPreferenceKey">getStrikethroughPreferenceKey</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public java.lang.String</code></td><td width="" align="left"><code><a href="#method_getStylePreferenceKey">getStylePreferenceKey</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public java.lang.String</code></td><td width="" align="left"><code><a href="#method_getUnderlinePreferenceKey">getUnderlinePreferenceKey</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr></table><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Constructor Detail
+               </h2></td></tr></table><h2><a name="con_AbstractXSLSemanticHighlighting">AbstractXSLSemanticHighlighting</a></h2><p><code>public <strong>AbstractXSLSemanticHighlighting</strong>()</code></p><p></p><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Methods Detail
+               </h2></td></tr></table><h2><a name="method_consumes">consumes</a></h2><p><code>public Position[] <strong>consumes</strong>(IStructuredDocumentRegion region)</code></p><p></p><h3>Parameters</h3><p><code>region</code></p><h3>Returns</h3><p><code>Position[]</code></p><hr><h2><a name="method_consumes">consumes</a></h2><p><code>public Position[] <strong>consumes</strong>(IStructuredDocumentRegion documentRegion
+         ,
+      IndexedRegion indexedRegion)</code></p><p></p><h3>Parameters</h3><p><code>documentRegion</code></p><p><code>indexedRegion</code></p><h3>Returns</h3><p><code>Position[]</code></p><hr><h2><a name="method_createSemanticPositions">createSemanticPositions</a></h2><p><code>protected java.util.List <strong>createSemanticPositions</strong>(IStructuredDocumentRegion region
+         ,
+      java.lang.String regionType)</code></p><p></p><h3>Parameters</h3><p><code>region</code></p><p><code>regionType</code></p><h3>Returns</h3><p><code>java.util.List</code></p><hr><h2><a name="method_getBoldPreferenceKey">getBoldPreferenceKey</a></h2><p><code>public java.lang.String <strong>getBoldPreferenceKey</strong>()</code></p><p></p><h3>Returns</h3><p><code>java.lang.String</code></p><hr><h2><a name="method_getColorPreferenceKey">getColorPreferenceKey</a></h2><p><code>public java.lang.String <strong>getColorPreferenceKey</strong>()</code></p><p></p><h3>Returns</h3><p><code>java.lang.String</code></p><hr><h2><a name="method_getDisplayName">getDisplayName</a></h2><p><code>public java.lang.String <strong>getDisplayName</strong>()</code></p><p></p><h3>Returns</h3><p><code>java.lang.String</code></p><hr><h2><a name="method_getEnabledPreferenceKey">getEnabledPreferenceKey</a></h2><p><code>public java.lang.String <strong>getEnabledPreferenceKey</strong>()</code></p><p></p><h3>Returns</h3><p><code>java.lang.String</code></p><hr><h2><a name="method_getItalicPreferenceKey">getItalicPreferenceKey</a></h2><p><code>public java.lang.String <strong>getItalicPreferenceKey</strong>()</code></p><p></p><h3>Returns</h3><p><code>java.lang.String</code></p><hr><h2><a name="method_getPreferenceStore">getPreferenceStore</a></h2><p><code>public IPreferenceStore <strong>getPreferenceStore</strong>()</code></p><p></p><h3>Returns</h3><p><code>IPreferenceStore</code></p><hr><h2><a name="method_getStrikethroughPreferenceKey">getStrikethroughPreferenceKey</a></h2><p><code>public java.lang.String <strong>getStrikethroughPreferenceKey</strong>()</code></p><p></p><h3>Returns</h3><p><code>java.lang.String</code></p><hr><h2><a name="method_getStylePreferenceKey">getStylePreferenceKey</a></h2><p><code>public java.lang.String <strong>getStylePreferenceKey</strong>()</code></p><p></p><h3>Returns</h3><p><code>java.lang.String</code></p><hr><h2><a name="method_getUnderlinePreferenceKey">getUnderlinePreferenceKey</a></h2><p><code>public java.lang.String <strong>getUnderlinePreferenceKey</strong>()</code></p><p></p><h3>Returns</h3><p><code>java.lang.String</code></p><hr></body></html>
\ No newline at end of file
diff --git a/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.style.IStyleConstantsXSL.html b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.style.IStyleConstantsXSL.html
new file mode 100644
index 0000000..0bcb57f
--- /dev/null
+++ b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.style.IStyleConstantsXSL.html
@@ -0,0 +1,22 @@
+<html><body><p><font size="+1"><strong>Package org.eclipse.wst.xsl.ui.internal.style</strong></font></p><hr><h2><font size="-1"><strong>org.eclipse.wst.xsl.ui.internal.style</strong></font><br>
+               Class IStyleConstantsXSL</h2><br><hr><pre>public class <strong>IStyleConstantsXSL</strong>
+extends </pre>Contains the symbolic name of styles used by LineStyleProvider,
+ ColorManager, and any others who may be interested<hr><table width="100%" border="1"><tr cols="2" bgcolor="#CCCCFF"><td colspan="2" width="100%"><h2>Field Summary</h2></td></tr><tr valign="top"><td width="20%" align="right"><code>public static  java.lang.String</code></td><td width="80%" align="left"><code><a href="#field_BACKGROUND">BACKGROUND</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public static  java.lang.String</code></td><td width="80%" align="left"><code><a href="#field_DECL_BORDER">DECL_BORDER</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public static  java.lang.String</code></td><td width="80%" align="left"><code><a href="#field_FOREGROUND">FOREGROUND</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public static  java.lang.String</code></td><td width="80%" align="left"><code><a href="#field_TAG_ATTRIBUTE_EQUALS">TAG_ATTRIBUTE_EQUALS</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public static  java.lang.String</code></td><td width="80%" align="left"><code><a href="#field_TAG_ATTRIBUTE_NAME">TAG_ATTRIBUTE_NAME</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public static  java.lang.String</code></td><td width="80%" align="left"><code><a href="#field_TAG_ATTRIBUTE_VALUE">TAG_ATTRIBUTE_VALUE</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public static  java.lang.String</code></td><td width="80%" align="left"><code><a href="#field_TAG_BORDER">TAG_BORDER</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public static  java.lang.String</code></td><td width="80%" align="left"><code><a href="#field_TAG_NAME">TAG_NAME</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr></table><br><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Field Detail
+               </h2></td></tr></table><h2><a name="field_BACKGROUND">BACKGROUND</a></h2><p><code>public static  java.lang.String <strong>BACKGROUND</strong></code></p><hr><h2><a name="field_DECL_BORDER">DECL_BORDER</a></h2><p><code>public static  java.lang.String <strong>DECL_BORDER</strong></code></p><hr><h2><a name="field_FOREGROUND">FOREGROUND</a></h2><p><code>public static  java.lang.String <strong>FOREGROUND</strong></code></p><hr><h2><a name="field_TAG_ATTRIBUTE_EQUALS">TAG_ATTRIBUTE_EQUALS</a></h2><p><code>public static  java.lang.String <strong>TAG_ATTRIBUTE_EQUALS</strong></code></p><hr><h2><a name="field_TAG_ATTRIBUTE_NAME">TAG_ATTRIBUTE_NAME</a></h2><p><code>public static  java.lang.String <strong>TAG_ATTRIBUTE_NAME</strong></code></p><hr><h2><a name="field_TAG_ATTRIBUTE_VALUE">TAG_ATTRIBUTE_VALUE</a></h2><p><code>public static  java.lang.String <strong>TAG_ATTRIBUTE_VALUE</strong></code></p><hr><h2><a name="field_TAG_BORDER">TAG_BORDER</a></h2><p><code>public static  java.lang.String <strong>TAG_BORDER</strong></code></p><hr><h2><a name="field_TAG_NAME">TAG_NAME</a></h2><p><code>public static  java.lang.String <strong>TAG_NAME</strong></code></p><hr></body></html>
\ No newline at end of file
diff --git a/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.style.LineStyleProviderForXSL.html b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.style.LineStyleProviderForXSL.html
new file mode 100644
index 0000000..38d6d08
--- /dev/null
+++ b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.style.LineStyleProviderForXSL.html
@@ -0,0 +1,133 @@
+<html><body><p><font size="+1"><strong>Package org.eclipse.wst.xsl.ui.internal.style</strong></font></p><hr><h2><font size="-1"><strong>org.eclipse.wst.xsl.ui.internal.style</strong></font><br>
+               Class LineStyleProviderForXSL</h2><br><hr><pre>public class <strong>LineStyleProviderForXSL</strong>
+extends AbstractLineStyleProvider</pre>This implements a Syntax Line Style Provider for XSL. It leverages some
+ information from the XML Syntax Coloring, but adds specific coloring for XSL
+ specific elements and attributes.<p></p><p></p><p></p><hr><table width="100%" border="1"><tr cols="2" bgcolor="#CCCCFF"><td colspan="2" width="100%"><h2>Field Summary</h2></td></tr><tr valign="top"><td width="20%" align="right"><code>protected Highlighter</code></td><td width="80%" align="left"><code><a href="#field_highlighter">highlighter</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>protected ReconcilerHighlighter</code></td><td width="80%" align="left"><code><a href="#field_recHighlighter">recHighlighter</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>protected IStructuredDocument</code></td><td width="80%" align="left"><code><a href="#field_structuredDocument">structuredDocument</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr></table><br><table width="100%" border="1"><tr bgcolor="#CCCCFF"><td width="100%"><h2>Constructor Summary</h2></td></tr><tr><td><code><strong><a href="#con_LineStyleProviderForXSL">LineStyleProviderForXSL</a></strong>()</code></td></tr></table><br><table width="100%" border="1"><tr cols="2" bgcolor="#CCCCFF"><td colspan="2" width="100%"><h2>Method Summary</h2></td></tr><tr valign="top"><td width="20%" align="right"><code>protected void</code></td><td width="" align="left"><code><a href="#method_addTextAttribute">addTextAttribute</a>(java.lang.String colorKey)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               Looks up the colorKey in the preference store and adds the style
+ information to list of TextAttributes</td></tr><tr valign="top"><td width="20%" align="right"><code>protected void</code></td><td width="" align="left"><code><a href="#method_commonInit">commonInit</a>(IStructuredDocument document
+         ,
+      Highlighter highlighter)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>protected TextAttribute</code></td><td width="" align="left"><code><a href="#method_createTextAttribute">createTextAttribute</a>(RGB foreground
+         ,
+      RGB background
+         ,
+      boolean bold)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>protected TextAttribute</code></td><td width="" align="left"><code><a href="#method_createTextAttribute">createTextAttribute</a>(RGB foreground
+         ,
+      RGB background
+         ,
+      int style)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>protected TextAttribute</code></td><td width="" align="left"><code><a href="#method_getAttributeFor">getAttributeFor</a>(ITextRegionCollection collection
+         ,
+      ITextRegion textRegion)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>protected TextAttribute</code></td><td width="" align="left"><code><a href="#method_getAttributeFor">getAttributeFor</a>(ITextRegion region)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>protected IPreferenceStore</code></td><td width="" align="left"><code><a href="#method_getColorPreferences">getColorPreferences</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>protected IStructuredDocument</code></td><td width="" align="left"><code><a href="#method_getDocument">getDocument</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>protected Highlighter</code></td><td width="" align="left"><code><a href="#method_getHighlighter">getHighlighter</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>protected void</code></td><td width="" align="left"><code><a href="#method_handlePropertyChange">handlePropertyChange</a>(PropertyChangeEvent event)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public void</code></td><td width="" align="left"><code><a href="#method_init">init</a>(IStructuredDocument document
+         ,
+      Highlighter highlighter)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public void</code></td><td width="" align="left"><code><a href="#method_init">init</a>(IStructuredDocument structuredDocument
+         ,
+      ISourceViewer sourceViewer)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public void</code></td><td width="" align="left"><code><a href="#method_init">init</a>(IStructuredDocument structuredDocument
+         ,
+      ReconcilerHighlighter highlighter)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public boolean</code></td><td width="" align="left"><code><a href="#method_isInitialized">isInitialized</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               Returns the initialized.</td></tr><tr valign="top"><td width="20%" align="right"><code>protected void</code></td><td width="" align="left"><code><a href="#method_loadColors">loadColors</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public boolean</code></td><td width="" align="left"><code><a href="#method_prepareRegions">prepareRegions</a>(ITypedRegion typedRegion
+         ,
+      int lineRequestStart
+         ,
+      int lineRequestLength
+         ,
+      java.util.Collection holdResults)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>protected boolean</code></td><td width="" align="left"><code><a href="#method_prepareTextRegion">prepareTextRegion</a>(ITextRegionCollection blockedRegion
+         ,
+      int partitionStartOffset
+         ,
+      int partitionLength
+         ,
+      java.util.Collection holdResults)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>protected boolean</code></td><td width="" align="left"><code><a href="#method_prepareTextRegions">prepareTextRegions</a>(IStructuredDocumentRegion structuredDocumentRegion
+         ,
+      int partitionStartOffset
+         ,
+      int partitionLength
+         ,
+      java.util.Collection holdResults)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>protected void</code></td><td width="" align="left"><code><a href="#method_registerPreferenceManager">registerPreferenceManager</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public void</code></td><td width="" align="left"><code><a href="#method_release">release</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>protected void</code></td><td width="" align="left"><code><a href="#method_unRegisterPreferenceManager">unRegisterPreferenceManager</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr></table><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Field Detail
+               </h2></td></tr></table><h2><a name="field_highlighter">highlighter</a></h2><p><code>protected Highlighter <strong>highlighter</strong></code></p><hr><h2><a name="field_recHighlighter">recHighlighter</a></h2><p><code>protected ReconcilerHighlighter <strong>recHighlighter</strong></code></p><hr><h2><a name="field_structuredDocument">structuredDocument</a></h2><p><code>protected IStructuredDocument <strong>structuredDocument</strong></code></p><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Constructor Detail
+               </h2></td></tr></table><h2><a name="con_LineStyleProviderForXSL">LineStyleProviderForXSL</a></h2><p><code>public <strong>LineStyleProviderForXSL</strong>()</code></p><p></p><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Methods Detail
+               </h2></td></tr></table><h2><a name="method_addTextAttribute">addTextAttribute</a></h2><p><code>protected void <strong>addTextAttribute</strong>(java.lang.String colorKey)</code></p><p>Looks up the colorKey in the preference store and adds the style
+ information to list of TextAttributes</p><h3>Parameters</h3><p><code>colorKey</code></p><hr><h2><a name="method_commonInit">commonInit</a></h2><p><code>protected void <strong>commonInit</strong>(IStructuredDocument document
+         ,
+      Highlighter highlighter)</code></p><p></p><h3>Parameters</h3><p><code>document</code></p><p><code>highlighter</code></p><hr><h2><a name="method_createTextAttribute">createTextAttribute</a></h2><p><code>protected TextAttribute <strong>createTextAttribute</strong>(RGB foreground
+         ,
+      RGB background
+         ,
+      boolean bold)</code></p><p></p><h3>Parameters</h3><p><code>foreground</code></p><p><code>background</code></p><p><code>bold</code></p><h3>Returns</h3><p><code>TextAttribute</code></p><hr><h2><a name="method_createTextAttribute">createTextAttribute</a></h2><p><code>protected TextAttribute <strong>createTextAttribute</strong>(RGB foreground
+         ,
+      RGB background
+         ,
+      int style)</code></p><p></p><h3>Parameters</h3><p><code>foreground</code></p><p><code>background</code></p><p><code>style</code></p><h3>Returns</h3><p><code>TextAttribute</code></p><hr><h2><a name="method_getAttributeFor">getAttributeFor</a></h2><p><code>protected TextAttribute <strong>getAttributeFor</strong>(ITextRegionCollection collection
+         ,
+      ITextRegion textRegion)</code></p><p></p><h3>Parameters</h3><p><code>collection</code></p><p><code>textRegion</code></p><h3>Returns</h3><p><code>TextAttribute</code></p><hr><h2><a name="method_getAttributeFor">getAttributeFor</a></h2><p><code>protected TextAttribute <strong>getAttributeFor</strong>(ITextRegion region)</code></p><p></p><h3>Parameters</h3><p><code>region</code></p><h3>Returns</h3><p><code>TextAttribute</code></p><hr><h2><a name="method_getColorPreferences">getColorPreferences</a></h2><p><code>protected IPreferenceStore <strong>getColorPreferences</strong>()</code></p><p></p><h3>Returns</h3><p><code>IPreferenceStore</code></p><hr><h2><a name="method_getDocument">getDocument</a></h2><p><code>protected IStructuredDocument <strong>getDocument</strong>()</code></p><p></p><h3>Returns</h3><p><code>IStructuredDocument</code></p><hr><h2><a name="method_getHighlighter">getHighlighter</a></h2><p><code>protected Highlighter <strong>getHighlighter</strong>()</code></p><p></p><h3>Returns</h3><p><code>Highlighter</code></p><hr><h2><a name="method_handlePropertyChange">handlePropertyChange</a></h2><p><code>protected void <strong>handlePropertyChange</strong>(PropertyChangeEvent event)</code></p><p></p><h3>Parameters</h3><p><code>event</code></p><hr><h2><a name="method_init">init</a></h2><p><code>public void <strong>init</strong>(IStructuredDocument document
+         ,
+      Highlighter highlighter)</code></p><p></p><h3>Parameters</h3><p><code>document</code></p><p><code>highlighter</code></p><hr><h2><a name="method_init">init</a></h2><p><code>public void <strong>init</strong>(IStructuredDocument structuredDocument
+         ,
+      ISourceViewer sourceViewer)</code></p><p></p><h3>Parameters</h3><p><code>structuredDocument</code></p><p><code>sourceViewer</code></p><hr><h2><a name="method_init">init</a></h2><p><code>public void <strong>init</strong>(IStructuredDocument structuredDocument
+         ,
+      ReconcilerHighlighter highlighter)</code></p><p></p><h3>Parameters</h3><p><code>structuredDocument</code></p><p><code>highlighter</code></p><hr><h2><a name="method_isInitialized">isInitialized</a></h2><p><code>public boolean <strong>isInitialized</strong>()</code></p><p>Returns the initialized.</p><h3>Returns</h3><p><code>boolean</code> - boolean</p><hr><h2><a name="method_loadColors">loadColors</a></h2><p><code>protected void <strong>loadColors</strong>()</code></p><p></p><hr><h2><a name="method_prepareRegions">prepareRegions</a></h2><p><code>public boolean <strong>prepareRegions</strong>(ITypedRegion typedRegion
+         ,
+      int lineRequestStart
+         ,
+      int lineRequestLength
+         ,
+      java.util.Collection holdResults)</code></p><p></p><h3>Parameters</h3><p><code>typedRegion</code></p><p><code>lineRequestStart</code></p><p><code>lineRequestLength</code></p><p><code>holdResults</code></p><h3>Returns</h3><p><code>boolean</code></p><hr><h2><a name="method_prepareTextRegion">prepareTextRegion</a></h2><p><code>protected boolean <strong>prepareTextRegion</strong>(ITextRegionCollection blockedRegion
+         ,
+      int partitionStartOffset
+         ,
+      int partitionLength
+         ,
+      java.util.Collection holdResults)</code></p><p></p><h3>Parameters</h3><p><code>blockedRegion</code></p><p><code>partitionStartOffset</code></p><p><code>partitionLength</code></p><p><code>holdResults</code></p><h3>Returns</h3><p><code>boolean</code></p><hr><h2><a name="method_prepareTextRegions">prepareTextRegions</a></h2><p><code>protected boolean <strong>prepareTextRegions</strong>(IStructuredDocumentRegion structuredDocumentRegion
+         ,
+      int partitionStartOffset
+         ,
+      int partitionLength
+         ,
+      java.util.Collection holdResults)</code></p><p></p><h3>Parameters</h3><p><code>structuredDocumentRegion</code></p><p><code>partitionStartOffset</code></p><p><code>partitionLength</code></p><p><code>holdResults</code></p><h3>Returns</h3><p><code>boolean</code></p><hr><h2><a name="method_registerPreferenceManager">registerPreferenceManager</a></h2><p><code>protected void <strong>registerPreferenceManager</strong>()</code></p><p></p><hr><h2><a name="method_release">release</a></h2><p><code>public void <strong>release</strong>()</code></p><p></p><hr><h2><a name="method_unRegisterPreferenceManager">unRegisterPreferenceManager</a></h2><p><code>protected void <strong>unRegisterPreferenceManager</strong>()</code></p><p></p><hr></body></html>
\ No newline at end of file
diff --git a/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.style.XMLRegionMap.html b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.style.XMLRegionMap.html
new file mode 100644
index 0000000..e0f8790
--- /dev/null
+++ b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.style.XMLRegionMap.html
@@ -0,0 +1,10 @@
+<html><body><p><font size="+1"><strong>Package org.eclipse.wst.xsl.ui.internal.style</strong></font></p><hr><h2><font size="-1"><strong>org.eclipse.wst.xsl.ui.internal.style</strong></font><br>
+               Class XMLRegionMap</h2><br><hr><pre>public class <strong>XMLRegionMap</strong>
+extends java.lang.Object</pre>The XMLRegionMap class handles mapping duties from an XML Region to
+ a Line Style Constant.<p></p><p></p><hr><table width="100%" border="1"><tr cols="2" bgcolor="#CCCCFF"><td colspan="2" width="100%"><h2>Method Summary</h2></td></tr><tr valign="top"><td width="20%" align="right"><code>public static org.eclipse.wst.xsl.ui.internal.style.XMLRegionMap</code></td><td width="" align="left"><code><a href="#method_getInstance">getInstance</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               Returns an instance of the XMLRegionMap Class</td></tr><tr valign="top"><td width="20%" align="right"><code>public java.util.Map</code></td><td width="" align="left"><code><a href="#method_getRegionMap">getRegionMap</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               Returns a mapping of XML Regions to Style Constants</td></tr></table><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Methods Detail
+               </h2></td></tr></table><h2><a name="method_getInstance">getInstance</a></h2><p><code>public org.eclipse.wst.xsl.ui.internal.style.XMLRegionMap <strong>getInstance</strong>()</code></p><p>Returns an instance of the XMLRegionMap Class</p><h3>Returns</h3><p><code>org.eclipse.wst.xsl.ui.internal.style.XMLRegionMap</code></p><hr><h2><a name="method_getRegionMap">getRegionMap</a></h2><p><code>public java.util.Map <strong>getRegionMap</strong>()</code></p><p>Returns a mapping of XML Regions to Style Constants</p><h3>Returns</h3><p><code>java.util.Map</code></p><hr></body></html>
\ No newline at end of file
diff --git a/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.style.XMLTextAttributeMap.html b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.style.XMLTextAttributeMap.html
new file mode 100644
index 0000000..104f86c
--- /dev/null
+++ b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.style.XMLTextAttributeMap.html
@@ -0,0 +1,19 @@
+<html><body><p><font size="+1"><strong>Package org.eclipse.wst.xsl.ui.internal.style</strong></font></p><hr><h2><font size="-1"><strong>org.eclipse.wst.xsl.ui.internal.style</strong></font><br>
+               Class XMLTextAttributeMap</h2><br><hr><pre>public class <strong>XMLTextAttributeMap</strong>
+extends java.lang.Object</pre>XMlTextAttributeMap handles the mapping of XML Style Constants to TextAttributes.<p></p><p></p><hr><table width="100%" border="1"><tr cols="2" bgcolor="#CCCCFF"><td colspan="2" width="100%"><h2>Method Summary</h2></td></tr><tr valign="top"><td width="20%" align="right"><code>protected TextAttribute</code></td><td width="" align="left"><code><a href="#method_createTextAttribute">createTextAttribute</a>(RGB foreground
+         ,
+      RGB background
+         ,
+      int style)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public static org.eclipse.wst.xsl.ui.internal.style.XMLTextAttributeMap</code></td><td width="" align="left"><code><a href="#method_getInstance">getInstance</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               An instance of XMLTextAttributeMap.</td></tr><tr valign="top"><td width="20%" align="right"><code>public java.util.Map</code></td><td width="" align="left"><code><a href="#method_getTextAttributeMap">getTextAttributeMap</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               Returns a Map of Style Constants and the corresponding Text Attribute</td></tr></table><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Methods Detail
+               </h2></td></tr></table><h2><a name="method_createTextAttribute">createTextAttribute</a></h2><p><code>protected TextAttribute <strong>createTextAttribute</strong>(RGB foreground
+         ,
+      RGB background
+         ,
+      int style)</code></p><p></p><h3>Parameters</h3><p><code>foreground</code></p><p><code>background</code></p><p><code>style</code></p><h3>Returns</h3><p><code>TextAttribute</code></p><hr><h2><a name="method_getInstance">getInstance</a></h2><p><code>public org.eclipse.wst.xsl.ui.internal.style.XMLTextAttributeMap <strong>getInstance</strong>()</code></p><p>An instance of XMLTextAttributeMap.</p><h3>Returns</h3><p><code>org.eclipse.wst.xsl.ui.internal.style.XMLTextAttributeMap</code></p><hr><h2><a name="method_getTextAttributeMap">getTextAttributeMap</a></h2><p><code>public java.util.Map <strong>getTextAttributeMap</strong>()</code></p><p>Returns a Map of Style Constants and the corresponding Text Attribute</p><h3>Returns</h3><p><code>java.util.Map</code></p><hr></body></html>
\ No newline at end of file
diff --git a/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.style.XSLAttrNameSemanticHighlighting.html b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.style.XSLAttrNameSemanticHighlighting.html
new file mode 100644
index 0000000..8daf1a8
--- /dev/null
+++ b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.style.XSLAttrNameSemanticHighlighting.html
@@ -0,0 +1,13 @@
+<html><body><p><font size="+1"><strong>Package org.eclipse.wst.xsl.ui.internal.style</strong></font></p><hr><h2><font size="-1"><strong>org.eclipse.wst.xsl.ui.internal.style</strong></font><br>
+               Class XSLAttrNameSemanticHighlighting</h2><br><hr><pre>public class <strong>XSLAttrNameSemanticHighlighting</strong>
+extends org.eclipse.wst.xsl.ui.internal.style.AbstractXSLSemanticHighlighting</pre><hr><table width="100%" border="1"><tr bgcolor="#CCCCFF"><td width="100%"><h2>Constructor Summary</h2></td></tr><tr><td><code><strong><a href="#con_XSLAttrNameSemanticHighlighting">XSLAttrNameSemanticHighlighting</a></strong>()</code></td></tr></table><br><table width="100%" border="1"><tr cols="2" bgcolor="#CCCCFF"><td colspan="2" width="100%"><h2>Method Summary</h2></td></tr><tr valign="top"><td width="20%" align="right"><code>public Position[]</code></td><td width="" align="left"><code><a href="#method_consumes">consumes</a>(IStructuredDocumentRegion region)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public java.lang.String</code></td><td width="" align="left"><code><a href="#method_getEnabledPreferenceKey">getEnabledPreferenceKey</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public java.lang.String</code></td><td width="" align="left"><code><a href="#method_getStylePreferenceKey">getStylePreferenceKey</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr></table><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Constructor Detail
+               </h2></td></tr></table><h2><a name="con_XSLAttrNameSemanticHighlighting">XSLAttrNameSemanticHighlighting</a></h2><p><code>public <strong>XSLAttrNameSemanticHighlighting</strong>()</code></p><p></p><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Methods Detail
+               </h2></td></tr></table><h2><a name="method_consumes">consumes</a></h2><p><code>public Position[] <strong>consumes</strong>(IStructuredDocumentRegion region)</code></p><p></p><h3>Parameters</h3><p><code>region</code></p><h3>Returns</h3><p><code>Position[]</code></p><hr><h2><a name="method_getEnabledPreferenceKey">getEnabledPreferenceKey</a></h2><p><code>public java.lang.String <strong>getEnabledPreferenceKey</strong>()</code></p><p></p><h3>Returns</h3><p><code>java.lang.String</code></p><hr><h2><a name="method_getStylePreferenceKey">getStylePreferenceKey</a></h2><p><code>public java.lang.String <strong>getStylePreferenceKey</strong>()</code></p><p></p><h3>Returns</h3><p><code>java.lang.String</code></p><hr></body></html>
\ No newline at end of file
diff --git a/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.style.XSLAttrValueSemanticHighlighting.html b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.style.XSLAttrValueSemanticHighlighting.html
new file mode 100644
index 0000000..6f37097
--- /dev/null
+++ b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.style.XSLAttrValueSemanticHighlighting.html
@@ -0,0 +1,13 @@
+<html><body><p><font size="+1"><strong>Package org.eclipse.wst.xsl.ui.internal.style</strong></font></p><hr><h2><font size="-1"><strong>org.eclipse.wst.xsl.ui.internal.style</strong></font><br>
+               Class XSLAttrValueSemanticHighlighting</h2><br><hr><pre>public class <strong>XSLAttrValueSemanticHighlighting</strong>
+extends org.eclipse.wst.xsl.ui.internal.style.AbstractXSLSemanticHighlighting</pre><hr><table width="100%" border="1"><tr bgcolor="#CCCCFF"><td width="100%"><h2>Constructor Summary</h2></td></tr><tr><td><code><strong><a href="#con_XSLAttrValueSemanticHighlighting">XSLAttrValueSemanticHighlighting</a></strong>()</code></td></tr></table><br><table width="100%" border="1"><tr cols="2" bgcolor="#CCCCFF"><td colspan="2" width="100%"><h2>Method Summary</h2></td></tr><tr valign="top"><td width="20%" align="right"><code>public Position[]</code></td><td width="" align="left"><code><a href="#method_consumes">consumes</a>(IStructuredDocumentRegion region)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public java.lang.String</code></td><td width="" align="left"><code><a href="#method_getEnabledPreferenceKey">getEnabledPreferenceKey</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public java.lang.String</code></td><td width="" align="left"><code><a href="#method_getStylePreferenceKey">getStylePreferenceKey</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr></table><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Constructor Detail
+               </h2></td></tr></table><h2><a name="con_XSLAttrValueSemanticHighlighting">XSLAttrValueSemanticHighlighting</a></h2><p><code>public <strong>XSLAttrValueSemanticHighlighting</strong>()</code></p><p></p><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Methods Detail
+               </h2></td></tr></table><h2><a name="method_consumes">consumes</a></h2><p><code>public Position[] <strong>consumes</strong>(IStructuredDocumentRegion region)</code></p><p></p><h3>Parameters</h3><p><code>region</code></p><h3>Returns</h3><p><code>Position[]</code></p><hr><h2><a name="method_getEnabledPreferenceKey">getEnabledPreferenceKey</a></h2><p><code>public java.lang.String <strong>getEnabledPreferenceKey</strong>()</code></p><p></p><h3>Returns</h3><p><code>java.lang.String</code></p><hr><h2><a name="method_getStylePreferenceKey">getStylePreferenceKey</a></h2><p><code>public java.lang.String <strong>getStylePreferenceKey</strong>()</code></p><p></p><h3>Returns</h3><p><code>java.lang.String</code></p><hr></body></html>
\ No newline at end of file
diff --git a/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.style.XSLRegionMap.html b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.style.XSLRegionMap.html
new file mode 100644
index 0000000..450d5bb
--- /dev/null
+++ b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.style.XSLRegionMap.html
@@ -0,0 +1,9 @@
+<html><body><p><font size="+1"><strong>Package org.eclipse.wst.xsl.ui.internal.style</strong></font></p><hr><h2><font size="-1"><strong>org.eclipse.wst.xsl.ui.internal.style</strong></font><br>
+               Class XSLRegionMap</h2><br><hr><pre>public class <strong>XSLRegionMap</strong>
+extends java.lang.Object</pre>XSLRegionMap handles the mapping of XML Regions to XSL Style Constants.<p></p><p></p><hr><table width="100%" border="1"><tr cols="2" bgcolor="#CCCCFF"><td colspan="2" width="100%"><h2>Method Summary</h2></td></tr><tr valign="top"><td width="20%" align="right"><code>public static org.eclipse.wst.xsl.ui.internal.style.XSLRegionMap</code></td><td width="" align="left"><code><a href="#method_getInstance">getInstance</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               Returns an instance of XSLRegionMap.</td></tr><tr valign="top"><td width="20%" align="right"><code>public java.util.Map</code></td><td width="" align="left"><code><a href="#method_getRegionMap">getRegionMap</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               Returns a MAP of XSL Regions and Style Constants.</td></tr></table><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Methods Detail
+               </h2></td></tr></table><h2><a name="method_getInstance">getInstance</a></h2><p><code>public org.eclipse.wst.xsl.ui.internal.style.XSLRegionMap <strong>getInstance</strong>()</code></p><p>Returns an instance of XSLRegionMap.</p><h3>Returns</h3><p><code>org.eclipse.wst.xsl.ui.internal.style.XSLRegionMap</code></p><hr><h2><a name="method_getRegionMap">getRegionMap</a></h2><p><code>public java.util.Map <strong>getRegionMap</strong>()</code></p><p>Returns a MAP of XSL Regions and Style Constants.</p><h3>Returns</h3><p><code>java.util.Map</code></p><hr></body></html>
\ No newline at end of file
diff --git a/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.style.XSLTagDelimsSemanticHighlighting.html b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.style.XSLTagDelimsSemanticHighlighting.html
new file mode 100644
index 0000000..39c852c
--- /dev/null
+++ b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.style.XSLTagDelimsSemanticHighlighting.html
@@ -0,0 +1,23 @@
+<html><body><p><font size="+1"><strong>Package org.eclipse.wst.xsl.ui.internal.style</strong></font></p><hr><h2><font size="-1"><strong>org.eclipse.wst.xsl.ui.internal.style</strong></font><br>
+               Class XSLTagDelimsSemanticHighlighting</h2><br><hr><pre>public class <strong>XSLTagDelimsSemanticHighlighting</strong>
+extends org.eclipse.wst.xsl.ui.internal.style.AbstractXSLSemanticHighlighting</pre><hr><table width="100%" border="1"><tr bgcolor="#CCCCFF"><td width="100%"><h2>Constructor Summary</h2></td></tr><tr><td><code><strong><a href="#con_XSLTagDelimsSemanticHighlighting">XSLTagDelimsSemanticHighlighting</a></strong>()</code></td></tr></table><br><table width="100%" border="1"><tr cols="2" bgcolor="#CCCCFF"><td colspan="2" width="100%"><h2>Method Summary</h2></td></tr><tr valign="top"><td width="20%" align="right"><code>public Position[]</code></td><td width="" align="left"><code><a href="#method_consumes">consumes</a>(IStructuredDocumentRegion region)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>protected java.util.List</code></td><td width="" align="left"><code><a href="#method_createSemanticPositions">createSemanticPositions</a>(ITextRegion textRegion
+         ,
+      IStructuredDocumentRegion region
+         ,
+      java.lang.String regionType)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public java.lang.String</code></td><td width="" align="left"><code><a href="#method_getEnabledPreferenceKey">getEnabledPreferenceKey</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public java.lang.String</code></td><td width="" align="left"><code><a href="#method_getStylePreferenceKey">getStylePreferenceKey</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr></table><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Constructor Detail
+               </h2></td></tr></table><h2><a name="con_XSLTagDelimsSemanticHighlighting">XSLTagDelimsSemanticHighlighting</a></h2><p><code>public <strong>XSLTagDelimsSemanticHighlighting</strong>()</code></p><p></p><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Methods Detail
+               </h2></td></tr></table><h2><a name="method_consumes">consumes</a></h2><p><code>public Position[] <strong>consumes</strong>(IStructuredDocumentRegion region)</code></p><p></p><h3>Parameters</h3><p><code>region</code></p><h3>Returns</h3><p><code>Position[]</code></p><hr><h2><a name="method_createSemanticPositions">createSemanticPositions</a></h2><p><code>protected java.util.List <strong>createSemanticPositions</strong>(ITextRegion textRegion
+         ,
+      IStructuredDocumentRegion region
+         ,
+      java.lang.String regionType)</code></p><p></p><h3>Parameters</h3><p><code>textRegion</code></p><p><code>region</code></p><p><code>regionType</code></p><h3>Returns</h3><p><code>java.util.List</code></p><hr><h2><a name="method_getEnabledPreferenceKey">getEnabledPreferenceKey</a></h2><p><code>public java.lang.String <strong>getEnabledPreferenceKey</strong>()</code></p><p></p><h3>Returns</h3><p><code>java.lang.String</code></p><hr><h2><a name="method_getStylePreferenceKey">getStylePreferenceKey</a></h2><p><code>public java.lang.String <strong>getStylePreferenceKey</strong>()</code></p><p></p><h3>Returns</h3><p><code>java.lang.String</code></p><hr></body></html>
\ No newline at end of file
diff --git a/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.style.XSLTagNameSemanticHighlighting.html b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.style.XSLTagNameSemanticHighlighting.html
new file mode 100644
index 0000000..97040f2
--- /dev/null
+++ b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.style.XSLTagNameSemanticHighlighting.html
@@ -0,0 +1,13 @@
+<html><body><p><font size="+1"><strong>Package org.eclipse.wst.xsl.ui.internal.style</strong></font></p><hr><h2><font size="-1"><strong>org.eclipse.wst.xsl.ui.internal.style</strong></font><br>
+               Class XSLTagNameSemanticHighlighting</h2><br><hr><pre>public class <strong>XSLTagNameSemanticHighlighting</strong>
+extends org.eclipse.wst.xsl.ui.internal.style.AbstractXSLSemanticHighlighting</pre><hr><table width="100%" border="1"><tr bgcolor="#CCCCFF"><td width="100%"><h2>Constructor Summary</h2></td></tr><tr><td><code><strong><a href="#con_XSLTagNameSemanticHighlighting">XSLTagNameSemanticHighlighting</a></strong>()</code></td></tr></table><br><table width="100%" border="1"><tr cols="2" bgcolor="#CCCCFF"><td colspan="2" width="100%"><h2>Method Summary</h2></td></tr><tr valign="top"><td width="20%" align="right"><code>public Position[]</code></td><td width="" align="left"><code><a href="#method_consumes">consumes</a>(IStructuredDocumentRegion region)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public java.lang.String</code></td><td width="" align="left"><code><a href="#method_getEnabledPreferenceKey">getEnabledPreferenceKey</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public java.lang.String</code></td><td width="" align="left"><code><a href="#method_getStylePreferenceKey">getStylePreferenceKey</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr></table><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Constructor Detail
+               </h2></td></tr></table><h2><a name="con_XSLTagNameSemanticHighlighting">XSLTagNameSemanticHighlighting</a></h2><p><code>public <strong>XSLTagNameSemanticHighlighting</strong>()</code></p><p></p><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Methods Detail
+               </h2></td></tr></table><h2><a name="method_consumes">consumes</a></h2><p><code>public Position[] <strong>consumes</strong>(IStructuredDocumentRegion region)</code></p><p></p><h3>Parameters</h3><p><code>region</code></p><h3>Returns</h3><p><code>Position[]</code></p><hr><h2><a name="method_getEnabledPreferenceKey">getEnabledPreferenceKey</a></h2><p><code>public java.lang.String <strong>getEnabledPreferenceKey</strong>()</code></p><p></p><h3>Returns</h3><p><code>java.lang.String</code></p><hr><h2><a name="method_getStylePreferenceKey">getStylePreferenceKey</a></h2><p><code>public java.lang.String <strong>getStylePreferenceKey</strong>()</code></p><p></p><h3>Returns</h3><p><code>java.lang.String</code></p><hr></body></html>
\ No newline at end of file
diff --git a/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.style.XSLTextAttributeMap.html b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.style.XSLTextAttributeMap.html
new file mode 100644
index 0000000..6aa9b08
--- /dev/null
+++ b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.style.XSLTextAttributeMap.html
@@ -0,0 +1,21 @@
+<html><body><p><font size="+1"><strong>Package org.eclipse.wst.xsl.ui.internal.style</strong></font></p><hr><h2><font size="-1"><strong>org.eclipse.wst.xsl.ui.internal.style</strong></font><br>
+               Class XSLTextAttributeMap</h2><br><hr><pre>public class <strong>XSLTextAttributeMap</strong>
+extends java.lang.Object</pre>Handles the mapping of the Style Constants to Text Attributes for XSL.<p></p><p></p><hr><table width="100%" border="1"><tr cols="2" bgcolor="#CCCCFF"><td colspan="2" width="100%"><h2>Method Summary</h2></td></tr><tr valign="top"><td width="20%" align="right"><code>protected void</code></td><td width="" align="left"><code><a href="#method_addXSLTextAttribute">addXSLTextAttribute</a>(java.lang.String colorKey)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>protected TextAttribute</code></td><td width="" align="left"><code><a href="#method_createTextAttribute">createTextAttribute</a>(RGB foreground
+         ,
+      RGB background
+         ,
+      int style)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public static org.eclipse.wst.xsl.ui.internal.style.XSLTextAttributeMap</code></td><td width="" align="left"><code><a href="#method_getInstance">getInstance</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               Returns an instance of XSLTextAttributeMap</td></tr><tr valign="top"><td width="20%" align="right"><code>public java.util.Map</code></td><td width="" align="left"><code><a href="#method_getTextAttributeMap">getTextAttributeMap</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               Get's a Map of XSL Style Constants to Text Attributes.</td></tr></table><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Methods Detail
+               </h2></td></tr></table><h2><a name="method_addXSLTextAttribute">addXSLTextAttribute</a></h2><p><code>protected void <strong>addXSLTextAttribute</strong>(java.lang.String colorKey)</code></p><p></p><h3>Parameters</h3><p><code>colorKey</code></p><hr><h2><a name="method_createTextAttribute">createTextAttribute</a></h2><p><code>protected TextAttribute <strong>createTextAttribute</strong>(RGB foreground
+         ,
+      RGB background
+         ,
+      int style)</code></p><p></p><h3>Parameters</h3><p><code>foreground</code></p><p><code>background</code></p><p><code>style</code></p><h3>Returns</h3><p><code>TextAttribute</code></p><hr><h2><a name="method_getInstance">getInstance</a></h2><p><code>public org.eclipse.wst.xsl.ui.internal.style.XSLTextAttributeMap <strong>getInstance</strong>()</code></p><p>Returns an instance of XSLTextAttributeMap</p><h3>Returns</h3><p><code>org.eclipse.wst.xsl.ui.internal.style.XSLTextAttributeMap</code></p><hr><h2><a name="method_getTextAttributeMap">getTextAttributeMap</a></h2><p><code>public java.util.Map <strong>getTextAttributeMap</strong>()</code></p><p>Get's a Map of XSL Style Constants to Text Attributes.</p><h3>Returns</h3><p><code>java.util.Map</code></p><hr></body></html>
\ No newline at end of file
diff --git a/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.templates.TemplateContextTypeXSL.html b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.templates.TemplateContextTypeXSL.html
new file mode 100644
index 0000000..796607f
--- /dev/null
+++ b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.templates.TemplateContextTypeXSL.html
@@ -0,0 +1,13 @@
+<html><body><p><font size="+1"><strong>Package org.eclipse.wst.xsl.ui.internal.templates</strong></font></p><hr><h2><font size="-1"><strong>org.eclipse.wst.xsl.ui.internal.templates</strong></font><br>
+               Class TemplateContextTypeXSL</h2><br><hr><pre>public class <strong>TemplateContextTypeXSL</strong>
+extends TemplateContextType</pre><hr><table width="100%" border="1"><tr cols="2" bgcolor="#CCCCFF"><td colspan="2" width="100%"><h2>Field Summary</h2></td></tr><tr valign="top"><td width="20%" align="right"><code>public static  java.lang.String</code></td><td width="80%" align="left"><code><a href="#field_XSL_ATTR">XSL_ATTR</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public static  java.lang.String</code></td><td width="80%" align="left"><code><a href="#field_XSL_NEW">XSL_NEW</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public static  java.lang.String</code></td><td width="80%" align="left"><code><a href="#field_XSL_TAG">XSL_TAG</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr></table><br><table width="100%" border="1"><tr bgcolor="#CCCCFF"><td width="100%"><h2>Constructor Summary</h2></td></tr><tr><td><code><strong><a href="#con_TemplateContextTypeXSL">TemplateContextTypeXSL</a></strong>()</code></td></tr></table><br><table width="100%" border="1"><tr cols="2" bgcolor="#CCCCFF"><td colspan="2" width="100%"><h2>Method Summary</h2></td></tr></table><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Field Detail
+               </h2></td></tr></table><h2><a name="field_XSL_ATTR">XSL_ATTR</a></h2><p><code>public static  java.lang.String <strong>XSL_ATTR</strong></code></p><hr><h2><a name="field_XSL_NEW">XSL_NEW</a></h2><p><code>public static  java.lang.String <strong>XSL_NEW</strong></code></p><hr><h2><a name="field_XSL_TAG">XSL_TAG</a></h2><p><code>public static  java.lang.String <strong>XSL_TAG</strong></code></p><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Constructor Detail
+               </h2></td></tr></table><h2><a name="con_TemplateContextTypeXSL">TemplateContextTypeXSL</a></h2><p><code>public <strong>TemplateContextTypeXSL</strong>()</code></p><p></p><hr></body></html>
\ No newline at end of file
diff --git a/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.templates.VersionTemplateVariableResolverXSL.html b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.templates.VersionTemplateVariableResolverXSL.html
new file mode 100644
index 0000000..3cc7339
--- /dev/null
+++ b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.templates.VersionTemplateVariableResolverXSL.html
@@ -0,0 +1,9 @@
+<html><body><p><font size="+1"><strong>Package org.eclipse.wst.xsl.ui.internal.templates</strong></font></p><hr><h2><font size="-1"><strong>org.eclipse.wst.xsl.ui.internal.templates</strong></font><br>
+               Class VersionTemplateVariableResolverXSL</h2><br><hr><pre>public class <strong>VersionTemplateVariableResolverXSL</strong>
+extends SimpleTemplateVariableResolver</pre><hr><table width="100%" border="1"><tr bgcolor="#CCCCFF"><td width="100%"><h2>Constructor Summary</h2></td></tr><tr><td><code><strong><a href="#con_VersionTemplateVariableResolverXSL">VersionTemplateVariableResolverXSL</a></strong>()</code></td></tr></table><br><table width="100%" border="1"><tr cols="2" bgcolor="#CCCCFF"><td colspan="2" width="100%"><h2>Method Summary</h2></td></tr><tr valign="top"><td width="20%" align="right"><code>protected java.lang.String</code></td><td width="" align="left"><code><a href="#method_resolve">resolve</a>(TemplateContext context)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr></table><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Constructor Detail
+               </h2></td></tr></table><h2><a name="con_VersionTemplateVariableResolverXSL">VersionTemplateVariableResolverXSL</a></h2><p><code>public <strong>VersionTemplateVariableResolverXSL</strong>()</code></p><p></p><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Methods Detail
+               </h2></td></tr></table><h2><a name="method_resolve">resolve</a></h2><p><code>protected java.lang.String <strong>resolve</strong>(TemplateContext context)</code></p><p></p><h3>Parameters</h3><p><code>context</code></p><h3>Returns</h3><p><code>java.lang.String</code></p><hr></body></html>
\ No newline at end of file
diff --git a/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.templates.XSLTemplatesPage.html b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.templates.XSLTemplatesPage.html
new file mode 100644
index 0000000..1f5dff6
--- /dev/null
+++ b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.templates.XSLTemplatesPage.html
@@ -0,0 +1,44 @@
+<html><body><p><font size="+1"><strong>Package org.eclipse.wst.xsl.ui.internal.templates</strong></font></p><hr><h2><font size="-1"><strong>org.eclipse.wst.xsl.ui.internal.templates</strong></font><br>
+               Class XSLTemplatesPage</h2><br><hr><pre>public class <strong>XSLTemplatesPage</strong>
+extends AbstractTemplatesPage</pre>The XSL Templates Page is used by the TemplatesViewer to display available
+ XSL Templates for use within a XSL Structured Text Editor. It is provided as
+ an example on how other SSE editors can contribute their templates to the
+ page.<p></p><hr><table width="100%" border="1"><tr bgcolor="#CCCCFF"><td width="100%"><h2>Constructor Summary</h2></td></tr><tr><td><code><strong><a href="#con_XSLTemplatesPage">XSLTemplatesPage</a></strong>(org.eclipse.wst.xsl.ui.internal.editor.XSLEditor xslTextEditor)</code></td></tr></table><br><table width="100%" border="1"><tr cols="2" bgcolor="#CCCCFF"><td colspan="2" width="100%"><h2>Method Summary</h2></td></tr><tr valign="top"><td width="20%" align="right"><code>protected java.lang.String[]</code></td><td width="" align="left"><code><a href="#method_getContextTypeIds">getContextTypeIds</a>(IDocument document
+         ,
+      int offset)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>protected ContextTypeRegistry</code></td><td width="" align="left"><code><a href="#method_getContextTypeRegistry">getContextTypeRegistry</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>protected java.lang.String</code></td><td width="" align="left"><code><a href="#method_getPreferencePageId">getPreferencePageId</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>protected IPreferenceStore</code></td><td width="" align="left"><code><a href="#method_getTemplatePreferenceStore">getTemplatePreferenceStore</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public TemplateStore</code></td><td width="" align="left"><code><a href="#method_getTemplateStore">getTemplateStore</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>protected void</code></td><td width="" align="left"><code><a href="#method_insertTemplate">insertTemplate</a>(Template template
+         ,
+      IDocument document)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>protected boolean</code></td><td width="" align="left"><code><a href="#method_isValidTemplate">isValidTemplate</a>(IDocument document
+         ,
+      Template template
+         ,
+      int offset
+         ,
+      int length)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr></table><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Constructor Detail
+               </h2></td></tr></table><h2><a name="con_XSLTemplatesPage">XSLTemplatesPage</a></h2><p><code>public <strong>XSLTemplatesPage</strong>(org.eclipse.wst.xsl.ui.internal.editor.XSLEditor xslTextEditor)</code></p><p></p><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Methods Detail
+               </h2></td></tr></table><h2><a name="method_getContextTypeIds">getContextTypeIds</a></h2><p><code>protected java.lang.String[] <strong>getContextTypeIds</strong>(IDocument document
+         ,
+      int offset)</code></p><p></p><h3>Parameters</h3><p><code>document</code></p><p><code>offset</code></p><h3>Returns</h3><p><code>java.lang.String[]</code></p><hr><h2><a name="method_getContextTypeRegistry">getContextTypeRegistry</a></h2><p><code>protected ContextTypeRegistry <strong>getContextTypeRegistry</strong>()</code></p><p></p><h3>Returns</h3><p><code>ContextTypeRegistry</code></p><hr><h2><a name="method_getPreferencePageId">getPreferencePageId</a></h2><p><code>protected java.lang.String <strong>getPreferencePageId</strong>()</code></p><p></p><h3>Returns</h3><p><code>java.lang.String</code></p><hr><h2><a name="method_getTemplatePreferenceStore">getTemplatePreferenceStore</a></h2><p><code>protected IPreferenceStore <strong>getTemplatePreferenceStore</strong>()</code></p><p></p><h3>Returns</h3><p><code>IPreferenceStore</code></p><hr><h2><a name="method_getTemplateStore">getTemplateStore</a></h2><p><code>public TemplateStore <strong>getTemplateStore</strong>()</code></p><p></p><h3>Returns</h3><p><code>TemplateStore</code></p><hr><h2><a name="method_insertTemplate">insertTemplate</a></h2><p><code>protected void <strong>insertTemplate</strong>(Template template
+         ,
+      IDocument document)</code></p><p></p><h3>Parameters</h3><p><code>template</code></p><p><code>document</code></p><hr><h2><a name="method_isValidTemplate">isValidTemplate</a></h2><p><code>protected boolean <strong>isValidTemplate</strong>(IDocument document
+         ,
+      Template template
+         ,
+      int offset
+         ,
+      int length)</code></p><p></p><h3>Parameters</h3><p><code>document</code></p><p><code>template</code></p><p><code>offset</code></p><p><code>length</code></p><h3>Returns</h3><p><code>boolean</code></p><hr></body></html>
\ No newline at end of file
diff --git a/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.util.XSLPluginImageHelper.html b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.util.XSLPluginImageHelper.html
new file mode 100644
index 0000000..f9731b9
--- /dev/null
+++ b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.util.XSLPluginImageHelper.html
@@ -0,0 +1,26 @@
+<html><body><p><font size="+1"><strong>Package org.eclipse.wst.xsl.ui.internal.util</strong></font></p><hr><h2><font size="-1"><strong>org.eclipse.wst.xsl.ui.internal.util</strong></font><br>
+               Class XSLPluginImageHelper</h2><br><hr><pre>public class <strong>XSLPluginImageHelper</strong>
+extends java.lang.Object</pre>Helper class to handle images provided by this plug-in.
+ 
+ NOTE: For internal use only. For images used externally, please use the
+ Shared***ImageHelper class instead.<p></p><hr><table width="100%" border="1"><tr bgcolor="#CCCCFF"><td width="100%"><h2>Constructor Summary</h2></td></tr><tr><td><code><strong><a href="#con_XSLPluginImageHelper">XSLPluginImageHelper</a></strong>()</code></td></tr></table><br><table width="100%" border="1"><tr cols="2" bgcolor="#CCCCFF"><td colspan="2" width="100%"><h2>Method Summary</h2></td></tr><tr valign="top"><td width="20%" align="right"><code>public Image</code></td><td width="" align="left"><code><a href="#method_getImage">getImage</a>(java.lang.String resource)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               Retrieves the image associated with resource from the image registry.
+ If the image cannot be retrieved, attempt to find and load the image at
+ the location specified in resource.</td></tr><tr valign="top"><td width="20%" align="right"><code>public ImageDescriptor</code></td><td width="" align="left"><code><a href="#method_getImageDescriptor">getImageDescriptor</a>(java.lang.String resource)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               Retrieves the image descriptor associated with resource from the image
+ descriptor registry. If the image descriptor cannot be retrieved,
+ attempt to find and load the image descriptor at the location specified
+ in resource.</td></tr><tr valign="top"><td width="20%" align="right"><code>public static org.eclipse.wst.xsl.ui.internal.util.XSLPluginImageHelper</code></td><td width="" align="left"><code><a href="#method_getInstance">getInstance</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               Gets the instance.</td></tr></table><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Constructor Detail
+               </h2></td></tr></table><h2><a name="con_XSLPluginImageHelper">XSLPluginImageHelper</a></h2><p><code>public <strong>XSLPluginImageHelper</strong>()</code></p><p></p><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Methods Detail
+               </h2></td></tr></table><h2><a name="method_getImage">getImage</a></h2><p><code>public Image <strong>getImage</strong>(java.lang.String resource)</code></p><p>Retrieves the image associated with resource from the image registry.
+ If the image cannot be retrieved, attempt to find and load the image at
+ the location specified in resource.</p><h3>Parameters</h3><p><code>resource</code> - the image to retrieve</p><h3>Returns</h3><p><code>Image</code> - Image the image associated with resource or null if one could          not be found</p><hr><h2><a name="method_getImageDescriptor">getImageDescriptor</a></h2><p><code>public ImageDescriptor <strong>getImageDescriptor</strong>(java.lang.String resource)</code></p><p>Retrieves the image descriptor associated with resource from the image
+ descriptor registry. If the image descriptor cannot be retrieved,
+ attempt to find and load the image descriptor at the location specified
+ in resource.</p><h3>Parameters</h3><p><code>resource</code> - the image descriptor to retrieve</p><h3>Returns</h3><p><code>ImageDescriptor</code> - ImageDescriptor the image descriptor assocated with resource or          the default "missing" image descriptor if one could not be          found</p><hr><h2><a name="method_getInstance">getInstance</a></h2><p><code>public org.eclipse.wst.xsl.ui.internal.util.XSLPluginImageHelper <strong>getInstance</strong>()</code></p><p>Gets the instance.</p><h3>Returns</h3><p><code>org.eclipse.wst.xsl.ui.internal.util.XSLPluginImageHelper</code> - Returns a XMLEditorPluginImageHelper</p><hr></body></html>
\ No newline at end of file
diff --git a/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.util.XSLPluginImages.html b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.util.XSLPluginImages.html
new file mode 100644
index 0000000..2b93bcc
--- /dev/null
+++ b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.util.XSLPluginImages.html
@@ -0,0 +1,35 @@
+<html><body><p><font size="+1"><strong>Package org.eclipse.wst.xsl.ui.internal.util</strong></font></p><hr><h2><font size="-1"><strong>org.eclipse.wst.xsl.ui.internal.util</strong></font><br>
+               Class XSLPluginImages</h2><br><hr><pre>public class <strong>XSLPluginImages</strong>
+extends java.lang.Object</pre>Bundle of most images used by the XSL Plugins<hr><table width="100%" border="1"><tr cols="2" bgcolor="#CCCCFF"><td colspan="2" width="100%"><h2>Field Summary</h2></td></tr><tr valign="top"><td width="20%" align="right"><code>public static  java.lang.String</code></td><td width="80%" align="left"><code><a href="#field_IMG_ELM_FUNCTION">IMG_ELM_FUNCTION</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public static  java.lang.String</code></td><td width="80%" align="left"><code><a href="#field_IMG_ELM_IMPORT_INCLUDE">IMG_ELM_IMPORT_INCLUDE</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public static  java.lang.String</code></td><td width="80%" align="left"><code><a href="#field_IMG_ELM_STYLESHET">IMG_ELM_STYLESHET</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public static  java.lang.String</code></td><td width="80%" align="left"><code><a href="#field_IMG_ELM_TEMPLATE">IMG_ELM_TEMPLATE</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public static  java.lang.String</code></td><td width="80%" align="left"><code><a href="#field_IMG_ELM_TEMPLATE_NAME">IMG_ELM_TEMPLATE_NAME</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public static  java.lang.String</code></td><td width="80%" align="left"><code><a href="#field_IMG_ELM_VARIABLE">IMG_ELM_VARIABLE</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public static  java.lang.String</code></td><td width="80%" align="left"><code><a href="#field_IMG_MODE">IMG_MODE</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               Path to the XSL mode Image used for Content Assist</td></tr><tr valign="top"><td width="20%" align="right"><code>public static  java.lang.String</code></td><td width="80%" align="left"><code><a href="#field_IMG_OPERATOR">IMG_OPERATOR</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               Path to the XPATH Images used for Content Assist</td></tr><tr valign="top"><td width="20%" align="right"><code>public static  java.lang.String</code></td><td width="80%" align="left"><code><a href="#field_IMG_PREFIX">IMG_PREFIX</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               Path to the XML Prefix Image used for Content Assist</td></tr><tr valign="top"><td width="20%" align="right"><code>public static  java.lang.String</code></td><td width="80%" align="left"><code><a href="#field_IMG_TEMPLATE">IMG_TEMPLATE</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               Path to the xsl template image use for Content Assistance.</td></tr><tr valign="top"><td width="20%" align="right"><code>public static  java.lang.String</code></td><td width="80%" align="left"><code><a href="#field_IMG_VARIABLES">IMG_VARIABLES</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               Path to the XPATH Images used for Content Assist</td></tr><tr valign="top"><td width="20%" align="right"><code>public static  java.lang.String</code></td><td width="80%" align="left"><code><a href="#field_IMG_XPATH_AXIS">IMG_XPATH_AXIS</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               Path to the XPATH Images used for Content Assist</td></tr><tr valign="top"><td width="20%" align="right"><code>public static  java.lang.String</code></td><td width="80%" align="left"><code><a href="#field_IMG_XPATH_FUNCTION">IMG_XPATH_FUNCTION</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               Path to the XPATH Images used for Content Assist</td></tr><tr valign="top"><td width="20%" align="right"><code>public static  java.lang.String</code></td><td width="80%" align="left"><code><a href="#field_IMG_XSL_FILE">IMG_XSL_FILE</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               Path to the XSL File image use for Content Assistance.</td></tr></table><br><table width="100%" border="1"><tr bgcolor="#CCCCFF"><td width="100%"><h2>Constructor Summary</h2></td></tr><tr><td><code><strong><a href="#con_XSLPluginImages">XSLPluginImages</a></strong>()</code></td></tr></table><br><table width="100%" border="1"><tr cols="2" bgcolor="#CCCCFF"><td colspan="2" width="100%"><h2>Method Summary</h2></td></tr></table><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Field Detail
+               </h2></td></tr></table><h2><a name="field_IMG_ELM_FUNCTION">IMG_ELM_FUNCTION</a></h2><p><code>public static  java.lang.String <strong>IMG_ELM_FUNCTION</strong></code></p><hr><h2><a name="field_IMG_ELM_IMPORT_INCLUDE">IMG_ELM_IMPORT_INCLUDE</a></h2><p><code>public static  java.lang.String <strong>IMG_ELM_IMPORT_INCLUDE</strong></code></p><hr><h2><a name="field_IMG_ELM_STYLESHET">IMG_ELM_STYLESHET</a></h2><p><code>public static  java.lang.String <strong>IMG_ELM_STYLESHET</strong></code></p><hr><h2><a name="field_IMG_ELM_TEMPLATE">IMG_ELM_TEMPLATE</a></h2><p><code>public static  java.lang.String <strong>IMG_ELM_TEMPLATE</strong></code></p><hr><h2><a name="field_IMG_ELM_TEMPLATE_NAME">IMG_ELM_TEMPLATE_NAME</a></h2><p><code>public static  java.lang.String <strong>IMG_ELM_TEMPLATE_NAME</strong></code></p><hr><h2><a name="field_IMG_ELM_VARIABLE">IMG_ELM_VARIABLE</a></h2><p><code>public static  java.lang.String <strong>IMG_ELM_VARIABLE</strong></code></p><hr><h2><a name="field_IMG_MODE">IMG_MODE</a></h2><p><code>public static  java.lang.String <strong>IMG_MODE</strong></code></p><table><tr><td>Path to the XSL mode Image used for Content Assist</td></tr></table><hr><h2><a name="field_IMG_OPERATOR">IMG_OPERATOR</a></h2><p><code>public static  java.lang.String <strong>IMG_OPERATOR</strong></code></p><table><tr><td>Path to the XPATH Images used for Content Assist</td></tr></table><hr><h2><a name="field_IMG_PREFIX">IMG_PREFIX</a></h2><p><code>public static  java.lang.String <strong>IMG_PREFIX</strong></code></p><table><tr><td>Path to the XML Prefix Image used for Content Assist</td></tr></table><hr><h2><a name="field_IMG_TEMPLATE">IMG_TEMPLATE</a></h2><p><code>public static  java.lang.String <strong>IMG_TEMPLATE</strong></code></p><table><tr><td>Path to the xsl template image use for Content Assistance.</td></tr></table><hr><h2><a name="field_IMG_VARIABLES">IMG_VARIABLES</a></h2><p><code>public static  java.lang.String <strong>IMG_VARIABLES</strong></code></p><table><tr><td>Path to the XPATH Images used for Content Assist</td></tr></table><hr><h2><a name="field_IMG_XPATH_AXIS">IMG_XPATH_AXIS</a></h2><p><code>public static  java.lang.String <strong>IMG_XPATH_AXIS</strong></code></p><table><tr><td>Path to the XPATH Images used for Content Assist</td></tr></table><hr><h2><a name="field_IMG_XPATH_FUNCTION">IMG_XPATH_FUNCTION</a></h2><p><code>public static  java.lang.String <strong>IMG_XPATH_FUNCTION</strong></code></p><table><tr><td>Path to the XPATH Images used for Content Assist</td></tr></table><hr><h2><a name="field_IMG_XSL_FILE">IMG_XSL_FILE</a></h2><p><code>public static  java.lang.String <strong>IMG_XSL_FILE</strong></code></p><table><tr><td>Path to the XSL File image use for Content Assistance.</td></tr></table><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Constructor Detail
+               </h2></td></tr></table><h2><a name="con_XSLPluginImages">XSLPluginImages</a></h2><p><code>public <strong>XSLPluginImages</strong>()</code></p><p></p><hr></body></html>
\ No newline at end of file
diff --git a/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.validation.DelegatingSourceValidatorForXSL.html b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.validation.DelegatingSourceValidatorForXSL.html
new file mode 100644
index 0000000..a8ce141
--- /dev/null
+++ b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.validation.DelegatingSourceValidatorForXSL.html
@@ -0,0 +1,25 @@
+<html><body><p><font size="+1"><strong>Package org.eclipse.wst.xsl.ui.internal.validation</strong></font></p><hr><h2><font size="-1"><strong>org.eclipse.wst.xsl.ui.internal.validation</strong></font><br>
+               Class DelegatingSourceValidatorForXSL</h2><br><hr><pre>public class <strong>DelegatingSourceValidatorForXSL</strong>
+extends DelegatingSourceValidator</pre>This performs the as-you-type validation for xsl files<hr><table width="100%" border="1"><tr bgcolor="#CCCCFF"><td width="100%"><h2>Constructor Summary</h2></td></tr><tr><td><code><strong><a href="#con_DelegatingSourceValidatorForXSL">DelegatingSourceValidatorForXSL</a></strong>()</code></td></tr></table><br><table width="100%" border="1"><tr cols="2" bgcolor="#CCCCFF"><td colspan="2" width="100%"><h2>Method Summary</h2></td></tr><tr valign="top"><td width="20%" align="right"><code>protected IValidator</code></td><td width="" align="left"><code><a href="#method_getDelegateValidator">getDelegateValidator</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>protected void</code></td><td width="" align="left"><code><a href="#method_updateValidationMessages">updateValidationMessages</a>(java.util.List messages
+         ,
+      IDOMDocument document
+         ,
+      IReporter reporter)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public void</code></td><td width="" align="left"><code><a href="#method_validate">validate</a>(IValidationContext helper
+         ,
+      IReporter reporter)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr></table><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Constructor Detail
+               </h2></td></tr></table><h2><a name="con_DelegatingSourceValidatorForXSL">DelegatingSourceValidatorForXSL</a></h2><p><code>public <strong>DelegatingSourceValidatorForXSL</strong>()</code></p><p>Constructor</p><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Methods Detail
+               </h2></td></tr></table><h2><a name="method_getDelegateValidator">getDelegateValidator</a></h2><p><code>protected IValidator <strong>getDelegateValidator</strong>()</code></p><p></p><h3>Returns</h3><p><code>IValidator</code></p><hr><h2><a name="method_updateValidationMessages">updateValidationMessages</a></h2><p><code>protected void <strong>updateValidationMessages</strong>(java.util.List messages
+         ,
+      IDOMDocument document
+         ,
+      IReporter reporter)</code></p><p></p><h3>Parameters</h3><p><code>messages</code></p><p><code>document</code></p><p><code>reporter</code></p><hr><h2><a name="method_validate">validate</a></h2><p><code>public void <strong>validate</strong>(IValidationContext helper
+         ,
+      IReporter reporter)</code></p><p></p><h3>Parameters</h3><p><code>helper</code></p><p><code>reporter</code></p><h3>Throws:</h3><p><code>ValidationException</code></p><hr></body></html>
\ No newline at end of file
diff --git a/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.validation.XSLErrorListener.html b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.validation.XSLErrorListener.html
new file mode 100644
index 0000000..fac0a24
--- /dev/null
+++ b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.validation.XSLErrorListener.html
@@ -0,0 +1,13 @@
+<html><body><p><font size="+1"><strong>Package org.eclipse.wst.xsl.ui.internal.validation</strong></font></p><hr><h2><font size="-1"><strong>org.eclipse.wst.xsl.ui.internal.validation</strong></font><br>
+               Class XSLErrorListener</h2><br><hr><pre>public class <strong>XSLErrorListener</strong>
+extends java.lang.Object</pre>This class listens for Errors tossed by a XSL Processor.<p></p><hr><table width="100%" border="1"><tr bgcolor="#CCCCFF"><td width="100%"><h2>Constructor Summary</h2></td></tr><tr><td><code><strong><a href="#con_XSLErrorListener">XSLErrorListener</a></strong>(java.util.logging.Logger logger)</code></td></tr></table><br><table width="100%" border="1"><tr cols="2" bgcolor="#CCCCFF"><td colspan="2" width="100%"><h2>Method Summary</h2></td></tr><tr valign="top"><td width="20%" align="right"><code>public void</code></td><td width="" align="left"><code><a href="#method_error">error</a>(javax.xml.transform.TransformerException exception)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               (non-Javadoc)</td></tr><tr valign="top"><td width="20%" align="right"><code>public void</code></td><td width="" align="left"><code><a href="#method_fatalError">fatalError</a>(javax.xml.transform.TransformerException exception)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               (non-Javadoc)</td></tr><tr valign="top"><td width="20%" align="right"><code>public void</code></td><td width="" align="left"><code><a href="#method_warning">warning</a>(javax.xml.transform.TransformerException exception)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               (non-Javadoc)</td></tr></table><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Constructor Detail
+               </h2></td></tr></table><h2><a name="con_XSLErrorListener">XSLErrorListener</a></h2><p><code>public <strong>XSLErrorListener</strong>(java.util.logging.Logger logger)</code></p><p>TODO: Add Javadoc</p><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Methods Detail
+               </h2></td></tr></table><h2><a name="method_error">error</a></h2><p><code>public void <strong>error</strong>(javax.xml.transform.TransformerException exception)</code></p><p>(non-Javadoc)</p><h3>Parameters</h3><p><code>exception</code></p><h3>Throws:</h3><p><code>javax.xml.transform.TransformerException</code></p><hr><h2><a name="method_fatalError">fatalError</a></h2><p><code>public void <strong>fatalError</strong>(javax.xml.transform.TransformerException exception)</code></p><p>(non-Javadoc)</p><h3>Parameters</h3><p><code>exception</code></p><h3>Throws:</h3><p><code>javax.xml.transform.TransformerException</code></p><hr><h2><a name="method_warning">warning</a></h2><p><code>public void <strong>warning</strong>(javax.xml.transform.TransformerException exception)</code></p><p>(non-Javadoc)</p><h3>Parameters</h3><p><code>exception</code></p><hr></body></html>
\ No newline at end of file
diff --git a/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.validation.XSLMarkupValidator.html b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.validation.XSLMarkupValidator.html
new file mode 100644
index 0000000..02b4ce0
--- /dev/null
+++ b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.validation.XSLMarkupValidator.html
@@ -0,0 +1,35 @@
+<html><body><p><font size="+1"><strong>Package org.eclipse.wst.xsl.ui.internal.validation</strong></font></p><hr><h2><font size="-1"><strong>org.eclipse.wst.xsl.ui.internal.validation</strong></font><br>
+               Class XSLMarkupValidator</h2><br><hr><pre>public class <strong>XSLMarkupValidator</strong>
+extends MarkupValidator</pre><p></p><hr><table width="100%" border="1"><tr bgcolor="#CCCCFF"><td width="100%"><h2>Constructor Summary</h2></td></tr><tr><td><code><strong><a href="#con_XSLMarkupValidator">XSLMarkupValidator</a></strong>()</code></td></tr></table><br><table width="100%" border="1"><tr cols="2" bgcolor="#CCCCFF"><td colspan="2" width="100%"><h2>Method Summary</h2></td></tr><tr valign="top"><td width="20%" align="right"><code>public void</code></td><td width="" align="left"><code><a href="#method_cleanup">cleanup</a>(IReporter reporter)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               (non-Javadoc)</td></tr><tr valign="top"><td width="20%" align="right"><code>public void</code></td><td width="" align="left"><code><a href="#method_connect">connect</a>(IDocument document)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               (non-Javadoc)</td></tr><tr valign="top"><td width="20%" align="right"><code>public void</code></td><td width="" align="left"><code><a href="#method_disconnect">disconnect</a>(IDocument document)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               (non-Javadoc)</td></tr><tr valign="top"><td width="20%" align="right"><code>public void</code></td><td width="" align="left"><code><a href="#method_validate">validate</a>(IValidationContext helper
+         ,
+      IReporter reporter)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public void</code></td><td width="" align="left"><code><a href="#method_validate">validate</a>(IRegion dirtyRegion
+         ,
+      IValidationContext helper
+         ,
+      IReporter reporter)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               (non-Javadoc)</td></tr><tr valign="top"><td width="20%" align="right"><code>public void</code></td><td width="" align="left"><code><a href="#method_validate">validate</a>(IStructuredDocumentRegion structuredDocumentRegion
+         ,
+      IReporter reporter)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               (non-Javadoc)</td></tr></table><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Constructor Detail
+               </h2></td></tr></table><h2><a name="con_XSLMarkupValidator">XSLMarkupValidator</a></h2><p><code>public <strong>XSLMarkupValidator</strong>()</code></p><p></p><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Methods Detail
+               </h2></td></tr></table><h2><a name="method_cleanup">cleanup</a></h2><p><code>public void <strong>cleanup</strong>(IReporter reporter)</code></p><p>(non-Javadoc)</p><h3>Parameters</h3><p><code>reporter</code></p><hr><h2><a name="method_connect">connect</a></h2><p><code>public void <strong>connect</strong>(IDocument document)</code></p><p>(non-Javadoc)</p><h3>Parameters</h3><p><code>document</code></p><hr><h2><a name="method_disconnect">disconnect</a></h2><p><code>public void <strong>disconnect</strong>(IDocument document)</code></p><p>(non-Javadoc)</p><h3>Parameters</h3><p><code>document</code></p><hr><h2><a name="method_validate">validate</a></h2><p><code>public void <strong>validate</strong>(IValidationContext helper
+         ,
+      IReporter reporter)</code></p><p></p><h3>Parameters</h3><p><code>helper</code></p><p><code>reporter</code></p><h3>Throws:</h3><p><code>ValidationException</code></p><hr><h2><a name="method_validate">validate</a></h2><p><code>public void <strong>validate</strong>(IRegion dirtyRegion
+         ,
+      IValidationContext helper
+         ,
+      IReporter reporter)</code></p><p>(non-Javadoc)</p><h3>Parameters</h3><p><code>dirtyRegion</code></p><p><code>helper</code></p><p><code>reporter</code></p><hr><h2><a name="method_validate">validate</a></h2><p><code>public void <strong>validate</strong>(IStructuredDocumentRegion structuredDocumentRegion
+         ,
+      IReporter reporter)</code></p><p>(non-Javadoc)</p><h3>Parameters</h3><p><code>structuredDocumentRegion</code></p><p><code>reporter</code></p><hr></body></html>
\ No newline at end of file
diff --git a/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.views.stylesheet.ListWorkbenchAdapter.html b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.views.stylesheet.ListWorkbenchAdapter.html
new file mode 100644
index 0000000..f3708c8
--- /dev/null
+++ b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.views.stylesheet.ListWorkbenchAdapter.html
@@ -0,0 +1,27 @@
+<html><body><p><font size="+1"><strong>Package org.eclipse.wst.xsl.ui.internal.views.stylesheet</strong></font></p><hr><h2><font size="-1"><strong>org.eclipse.wst.xsl.ui.internal.views.stylesheet</strong></font><br>
+               Class ListWorkbenchAdapter</h2><br><hr><pre>public class <strong>ListWorkbenchAdapter</strong>
+extends java.lang.Object</pre><hr><table width="100%" border="1"><tr bgcolor="#CCCCFF"><td width="100%"><h2>Constructor Summary</h2></td></tr><tr><td><code><strong><a href="#con_ListWorkbenchAdapter">ListWorkbenchAdapter</a></strong>(org.eclipse.wst.xsl.core.model.Stylesheet stylesheet
+         ,
+      java.util.List list
+         ,
+      java.lang.String label
+         ,
+      java.lang.String imgPath)</code></td></tr></table><br><table width="100%" border="1"><tr cols="2" bgcolor="#CCCCFF"><td colspan="2" width="100%"><h2>Method Summary</h2></td></tr><tr valign="top"><td width="20%" align="right"><code>public java.lang.Object[]</code></td><td width="" align="left"><code><a href="#method_getChildren">getChildren</a>(java.lang.Object o)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public ImageDescriptor</code></td><td width="" align="left"><code><a href="#method_getImageDescriptor">getImageDescriptor</a>(java.lang.Object object)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public java.lang.String</code></td><td width="" align="left"><code><a href="#method_getLabel">getLabel</a>(java.lang.Object o)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public java.lang.Object</code></td><td width="" align="left"><code><a href="#method_getParent">getParent</a>(java.lang.Object o)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr></table><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Constructor Detail
+               </h2></td></tr></table><h2><a name="con_ListWorkbenchAdapter">ListWorkbenchAdapter</a></h2><p><code>public <strong>ListWorkbenchAdapter</strong>(org.eclipse.wst.xsl.core.model.Stylesheet stylesheet
+         ,
+      java.util.List list
+         ,
+      java.lang.String label
+         ,
+      java.lang.String imgPath)</code></p><p></p><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Methods Detail
+               </h2></td></tr></table><h2><a name="method_getChildren">getChildren</a></h2><p><code>public java.lang.Object[] <strong>getChildren</strong>(java.lang.Object o)</code></p><p></p><h3>Parameters</h3><p><code>o</code></p><h3>Returns</h3><p><code>java.lang.Object[]</code></p><hr><h2><a name="method_getImageDescriptor">getImageDescriptor</a></h2><p><code>public ImageDescriptor <strong>getImageDescriptor</strong>(java.lang.Object object)</code></p><p></p><h3>Parameters</h3><p><code>object</code></p><h3>Returns</h3><p><code>ImageDescriptor</code></p><hr><h2><a name="method_getLabel">getLabel</a></h2><p><code>public java.lang.String <strong>getLabel</strong>(java.lang.Object o)</code></p><p></p><h3>Parameters</h3><p><code>o</code></p><h3>Returns</h3><p><code>java.lang.String</code></p><hr><h2><a name="method_getParent">getParent</a></h2><p><code>public java.lang.Object <strong>getParent</strong>(java.lang.Object o)</code></p><p></p><h3>Parameters</h3><p><code>o</code></p><h3>Returns</h3><p><code>java.lang.Object</code></p><hr></body></html>
\ No newline at end of file
diff --git a/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.views.stylesheet.StylesheetModelView.html b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.views.stylesheet.StylesheetModelView.html
new file mode 100644
index 0000000..060c428
--- /dev/null
+++ b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.views.stylesheet.StylesheetModelView.html
@@ -0,0 +1,19 @@
+<html><body><p><font size="+1"><strong>Package org.eclipse.wst.xsl.ui.internal.views.stylesheet</strong></font></p><hr><h2><font size="-1"><strong>org.eclipse.wst.xsl.ui.internal.views.stylesheet</strong></font><br>
+               Class StylesheetModelView</h2><br><hr><pre>public class <strong>StylesheetModelView</strong>
+extends ViewPart</pre><hr><table width="100%" border="1"><tr bgcolor="#CCCCFF"><td width="100%"><h2>Constructor Summary</h2></td></tr><tr><td><code><strong><a href="#con_StylesheetModelView">StylesheetModelView</a></strong>()</code></td></tr></table><br><table width="100%" border="1"><tr cols="2" bgcolor="#CCCCFF"><td colspan="2" width="100%"><h2>Method Summary</h2></td></tr><tr valign="top"><td width="20%" align="right"><code>public void</code></td><td width="" align="left"><code><a href="#method_createPartControl">createPartControl</a>(Composite parent)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public void</code></td><td width="" align="left"><code><a href="#method_dispose">dispose</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public void</code></td><td width="" align="left"><code><a href="#method_init">init</a>(IViewSite site
+         ,
+      IMemento memento)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public void</code></td><td width="" align="left"><code><a href="#method_setFocus">setFocus</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr></table><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Constructor Detail
+               </h2></td></tr></table><h2><a name="con_StylesheetModelView">StylesheetModelView</a></h2><p><code>public <strong>StylesheetModelView</strong>()</code></p><p></p><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Methods Detail
+               </h2></td></tr></table><h2><a name="method_createPartControl">createPartControl</a></h2><p><code>public void <strong>createPartControl</strong>(Composite parent)</code></p><p></p><h3>Parameters</h3><p><code>parent</code></p><hr><h2><a name="method_dispose">dispose</a></h2><p><code>public void <strong>dispose</strong>()</code></p><p></p><hr><h2><a name="method_init">init</a></h2><p><code>public void <strong>init</strong>(IViewSite site
+         ,
+      IMemento memento)</code></p><p></p><h3>Parameters</h3><p><code>site</code></p><p><code>memento</code></p><h3>Throws:</h3><p><code>PartInitException</code></p><hr><h2><a name="method_setFocus">setFocus</a></h2><p><code>public void <strong>setFocus</strong>()</code></p><p></p><hr></body></html>
\ No newline at end of file
diff --git a/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.views.stylesheet.XSLModelAdapterFactory.html b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.views.stylesheet.XSLModelAdapterFactory.html
new file mode 100644
index 0000000..9260b43
--- /dev/null
+++ b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.views.stylesheet.XSLModelAdapterFactory.html
@@ -0,0 +1,15 @@
+<html><body><p><font size="+1"><strong>Package org.eclipse.wst.xsl.ui.internal.views.stylesheet</strong></font></p><hr><h2><font size="-1"><strong>org.eclipse.wst.xsl.ui.internal.views.stylesheet</strong></font><br>
+               Class XSLModelAdapterFactory</h2><br><hr><pre>public class <strong>XSLModelAdapterFactory</strong>
+extends java.lang.Object</pre><hr><table width="100%" border="1"><tr bgcolor="#CCCCFF"><td width="100%"><h2>Constructor Summary</h2></td></tr><tr><td><code><strong><a href="#con_XSLModelAdapterFactory">XSLModelAdapterFactory</a></strong>()</code></td></tr></table><br><table width="100%" border="1"><tr cols="2" bgcolor="#CCCCFF"><td colspan="2" width="100%"><h2>Method Summary</h2></td></tr><tr valign="top"><td width="20%" align="right"><code>public java.lang.Object</code></td><td width="" align="left"><code><a href="#method_getAdapter">getAdapter</a>(java.lang.Object adaptableObject
+         ,
+      java.lang.Class adapterType)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public java.lang.Class[]</code></td><td width="" align="left"><code><a href="#method_getAdapterList">getAdapterList</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr></table><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Constructor Detail
+               </h2></td></tr></table><h2><a name="con_XSLModelAdapterFactory">XSLModelAdapterFactory</a></h2><p><code>public <strong>XSLModelAdapterFactory</strong>()</code></p><p></p><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Methods Detail
+               </h2></td></tr></table><h2><a name="method_getAdapter">getAdapter</a></h2><p><code>public java.lang.Object <strong>getAdapter</strong>(java.lang.Object adaptableObject
+         ,
+      java.lang.Class adapterType)</code></p><p></p><h3>Parameters</h3><p><code>adaptableObject</code></p><p><code>adapterType</code></p><h3>Returns</h3><p><code>java.lang.Object</code></p><hr><h2><a name="method_getAdapterList">getAdapterList</a></h2><p><code>public java.lang.Class[] <strong>getAdapterList</strong>()</code></p><p></p><h3>Returns</h3><p><code>java.lang.Class[]</code></p><hr></body></html>
\ No newline at end of file
diff --git a/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.views.stylesheet.XSLWorkbenchAdapter.html b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.views.stylesheet.XSLWorkbenchAdapter.html
new file mode 100644
index 0000000..8be077c
--- /dev/null
+++ b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.views.stylesheet.XSLWorkbenchAdapter.html
@@ -0,0 +1,15 @@
+<html><body><p><font size="+1"><strong>Package org.eclipse.wst.xsl.ui.internal.views.stylesheet</strong></font></p><hr><h2><font size="-1"><strong>org.eclipse.wst.xsl.ui.internal.views.stylesheet</strong></font><br>
+               Class XSLWorkbenchAdapter</h2><br><hr><pre>package-private class <strong>XSLWorkbenchAdapter</strong>
+extends java.lang.Object</pre><hr><table width="100%" border="1"><tr bgcolor="#CCCCFF"><td width="100%"><h2>Constructor Summary</h2></td></tr><tr><td><code><strong><a href="#con_XSLWorkbenchAdapter">XSLWorkbenchAdapter</a></strong>()</code></td></tr></table><br><table width="100%" border="1"><tr cols="2" bgcolor="#CCCCFF"><td colspan="2" width="100%"><h2>Method Summary</h2></td></tr><tr valign="top"><td width="20%" align="right"><code>public java.lang.Object[]</code></td><td width="" align="left"><code><a href="#method_getChildren">getChildren</a>(java.lang.Object o)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public ImageDescriptor</code></td><td width="" align="left"><code><a href="#method_getImageDescriptor">getImageDescriptor</a>(java.lang.Object object)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public java.lang.String</code></td><td width="" align="left"><code><a href="#method_getLabel">getLabel</a>(java.lang.Object o)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public java.lang.Object</code></td><td width="" align="left"><code><a href="#method_getParent">getParent</a>(java.lang.Object o)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr></table><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Constructor Detail
+               </h2></td></tr></table><h2><a name="con_XSLWorkbenchAdapter">XSLWorkbenchAdapter</a></h2><p><code>package-private <strong>XSLWorkbenchAdapter</strong>()</code></p><p></p><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Methods Detail
+               </h2></td></tr></table><h2><a name="method_getChildren">getChildren</a></h2><p><code>public java.lang.Object[] <strong>getChildren</strong>(java.lang.Object o)</code></p><p></p><h3>Parameters</h3><p><code>o</code></p><h3>Returns</h3><p><code>java.lang.Object[]</code></p><hr><h2><a name="method_getImageDescriptor">getImageDescriptor</a></h2><p><code>public ImageDescriptor <strong>getImageDescriptor</strong>(java.lang.Object object)</code></p><p></p><h3>Parameters</h3><p><code>object</code></p><h3>Returns</h3><p><code>ImageDescriptor</code></p><hr><h2><a name="method_getLabel">getLabel</a></h2><p><code>public java.lang.String <strong>getLabel</strong>(java.lang.Object o)</code></p><p></p><h3>Parameters</h3><p><code>o</code></p><h3>Returns</h3><p><code>java.lang.String</code></p><hr><h2><a name="method_getParent">getParent</a></h2><p><code>public java.lang.Object <strong>getParent</strong>(java.lang.Object o)</code></p><p></p><h3>Parameters</h3><p><code>o</code></p><h3>Returns</h3><p><code>java.lang.Object</code></p><hr></body></html>
\ No newline at end of file
diff --git a/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.wizards.NewXSLFileTemplatesWizardPage.html b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.wizards.NewXSLFileTemplatesWizardPage.html
new file mode 100644
index 0000000..cd02d7e
--- /dev/null
+++ b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.wizards.NewXSLFileTemplatesWizardPage.html
@@ -0,0 +1,19 @@
+<html><body><p><font size="+1"><strong>Package org.eclipse.wst.xsl.ui.internal.wizards</strong></font></p><hr><h2><font size="-1"><strong>org.eclipse.wst.xsl.ui.internal.wizards</strong></font><br>
+               Class NewXSLFileTemplatesWizardPage</h2><br><hr><pre>public class <strong>NewXSLFileTemplatesWizardPage</strong>
+extends WizardPage</pre><hr><table width="100%" border="1"><tr bgcolor="#CCCCFF"><td width="100%"><h2>Constructor Summary</h2></td></tr><tr><td><code><strong><a href="#con_NewXSLFileTemplatesWizardPage">NewXSLFileTemplatesWizardPage</a></strong>()</code></td></tr></table><br><table width="100%" border="1"><tr cols="2" bgcolor="#CCCCFF"><td colspan="2" width="100%"><h2>Method Summary</h2></td></tr><tr valign="top"><td width="20%" align="right"><code>public void</code></td><td width="" align="left"><code><a href="#method_createControl">createControl</a>(Composite ancestor)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>package-private void</code></td><td width="" align="left"><code><a href="#method_enableTemplates">enableTemplates</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>package-private java.lang.String</code></td><td width="" align="left"><code><a href="#method_getTemplateString">getTemplateString</a>(int[] offset)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>package-private void</code></td><td width="" align="left"><code><a href="#method_linkClicked">linkClicked</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>package-private void</code></td><td width="" align="left"><code><a href="#method_saveLastSavedPreferences">saveLastSavedPreferences</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>package-private void</code></td><td width="" align="left"><code><a href="#method_updateViewerInput">updateViewerInput</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr></table><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Constructor Detail
+               </h2></td></tr></table><h2><a name="con_NewXSLFileTemplatesWizardPage">NewXSLFileTemplatesWizardPage</a></h2><p><code>public <strong>NewXSLFileTemplatesWizardPage</strong>()</code></p><p></p><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Methods Detail
+               </h2></td></tr></table><h2><a name="method_createControl">createControl</a></h2><p><code>public void <strong>createControl</strong>(Composite ancestor)</code></p><p></p><h3>Parameters</h3><p><code>ancestor</code></p><hr><h2><a name="method_enableTemplates">enableTemplates</a></h2><p><code>package-private void <strong>enableTemplates</strong>()</code></p><p></p><hr><h2><a name="method_getTemplateString">getTemplateString</a></h2><p><code>package-private java.lang.String <strong>getTemplateString</strong>(int[] offset)</code></p><p></p><h3>Parameters</h3><p><code>offset</code></p><h3>Returns</h3><p><code>java.lang.String</code></p><hr><h2><a name="method_linkClicked">linkClicked</a></h2><p><code>package-private void <strong>linkClicked</strong>()</code></p><p></p><hr><h2><a name="method_saveLastSavedPreferences">saveLastSavedPreferences</a></h2><p><code>package-private void <strong>saveLastSavedPreferences</strong>()</code></p><p></p><hr><h2><a name="method_updateViewerInput">updateViewerInput</a></h2><p><code>package-private void <strong>updateViewerInput</strong>()</code></p><p></p><hr></body></html>
\ No newline at end of file
diff --git a/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.wizards.NewXSLFileWizard.html b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.wizards.NewXSLFileWizard.html
new file mode 100644
index 0000000..68261a5
--- /dev/null
+++ b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.wizards.NewXSLFileWizard.html
@@ -0,0 +1,17 @@
+<html><body><p><font size="+1"><strong>Package org.eclipse.wst.xsl.ui.internal.wizards</strong></font></p><hr><h2><font size="-1"><strong>org.eclipse.wst.xsl.ui.internal.wizards</strong></font><br>
+               Class NewXSLFileWizard</h2><br><hr><pre>public class <strong>NewXSLFileWizard</strong>
+extends Wizard</pre><hr><table width="100%" border="1"><tr bgcolor="#CCCCFF"><td width="100%"><h2>Constructor Summary</h2></td></tr><tr><td><code><strong><a href="#con_NewXSLFileWizard">NewXSLFileWizard</a></strong>()</code></td></tr></table><br><table width="100%" border="1"><tr cols="2" bgcolor="#CCCCFF"><td colspan="2" width="100%"><h2>Method Summary</h2></td></tr><tr valign="top"><td width="20%" align="right"><code>public void</code></td><td width="" align="left"><code><a href="#method_addPages">addPages</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public void</code></td><td width="" align="left"><code><a href="#method_init">init</a>(IWorkbench aWorkbench
+         ,
+      IStructuredSelection aSelection)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public boolean</code></td><td width="" align="left"><code><a href="#method_performFinish">performFinish</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr></table><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Constructor Detail
+               </h2></td></tr></table><h2><a name="con_NewXSLFileWizard">NewXSLFileWizard</a></h2><p><code>public <strong>NewXSLFileWizard</strong>()</code></p><p></p><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Methods Detail
+               </h2></td></tr></table><h2><a name="method_addPages">addPages</a></h2><p><code>public void <strong>addPages</strong>()</code></p><p></p><hr><h2><a name="method_init">init</a></h2><p><code>public void <strong>init</strong>(IWorkbench aWorkbench
+         ,
+      IStructuredSelection aSelection)</code></p><p></p><h3>Parameters</h3><p><code>aWorkbench</code></p><p><code>aSelection</code></p><hr><h2><a name="method_performFinish">performFinish</a></h2><p><code>public boolean <strong>performFinish</strong>()</code></p><p></p><h3>Returns</h3><p><code>boolean</code></p><hr></body></html>
\ No newline at end of file
diff --git a/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.wizards.NewXSLFileWizardPage.html b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.wizards.NewXSLFileWizardPage.html
new file mode 100644
index 0000000..55a62e8
--- /dev/null
+++ b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.wizards.NewXSLFileWizardPage.html
@@ -0,0 +1,15 @@
+<html><body><p><font size="+1"><strong>Package org.eclipse.wst.xsl.ui.internal.wizards</strong></font></p><hr><h2><font size="-1"><strong>org.eclipse.wst.xsl.ui.internal.wizards</strong></font><br>
+               Class NewXSLFileWizardPage</h2><br><hr><pre>package-private class <strong>NewXSLFileWizardPage</strong>
+extends WizardNewFileCreationPage</pre><hr><table width="100%" border="1"><tr bgcolor="#CCCCFF"><td width="100%"><h2>Constructor Summary</h2></td></tr><tr><td><code><strong><a href="#con_NewXSLFileWizardPage">NewXSLFileWizardPage</a></strong>(java.lang.String pageName
+         ,
+      IStructuredSelection selection)</code></td></tr></table><br><table width="100%" border="1"><tr cols="2" bgcolor="#CCCCFF"><td colspan="2" width="100%"><h2>Method Summary</h2></td></tr><tr valign="top"><td width="20%" align="right"><code>package-private java.lang.String</code></td><td width="" align="left"><code><a href="#method_addDefaultExtension">addDefaultExtension</a>(java.lang.String filename)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>protected boolean</code></td><td width="" align="left"><code><a href="#method_validatePage">validatePage</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr></table><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Constructor Detail
+               </h2></td></tr></table><h2><a name="con_NewXSLFileWizardPage">NewXSLFileWizardPage</a></h2><p><code>public <strong>NewXSLFileWizardPage</strong>(java.lang.String pageName
+         ,
+      IStructuredSelection selection)</code></p><p></p><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Methods Detail
+               </h2></td></tr></table><h2><a name="method_addDefaultExtension">addDefaultExtension</a></h2><p><code>package-private java.lang.String <strong>addDefaultExtension</strong>(java.lang.String filename)</code></p><p></p><h3>Parameters</h3><p><code>filename</code></p><h3>Returns</h3><p><code>java.lang.String</code></p><hr><h2><a name="method_validatePage">validatePage</a></h2><p><code>protected boolean <strong>validatePage</strong>()</code></p><p></p><h3>Returns</h3><p><code>boolean</code></p><hr></body></html>
\ No newline at end of file
diff --git a/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.wizards.TemplateContentProvider.html b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.wizards.TemplateContentProvider.html
new file mode 100644
index 0000000..15c4f57
--- /dev/null
+++ b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.wizards.TemplateContentProvider.html
@@ -0,0 +1,21 @@
+<html><body><p><font size="+1"><strong>Package org.eclipse.wst.xsl.ui.internal.wizards</strong></font></p><hr><h2><font size="-1"><strong>org.eclipse.wst.xsl.ui.internal.wizards</strong></font><br>
+               Class TemplateContentProvider</h2><br><hr><pre>package-private class <strong>TemplateContentProvider</strong>
+extends java.lang.Object</pre><hr><table width="100%" border="1"><tr bgcolor="#CCCCFF"><td width="100%"><h2>Constructor Summary</h2></td></tr><tr><td><code><strong><a href="#con_TemplateContentProvider">TemplateContentProvider</a></strong>()</code></td></tr></table><br><table width="100%" border="1"><tr cols="2" bgcolor="#CCCCFF"><td colspan="2" width="100%"><h2>Method Summary</h2></td></tr><tr valign="top"><td width="20%" align="right"><code>public void</code></td><td width="" align="left"><code><a href="#method_dispose">dispose</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public java.lang.Object[]</code></td><td width="" align="left"><code><a href="#method_getElements">getElements</a>(java.lang.Object input)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public void</code></td><td width="" align="left"><code><a href="#method_inputChanged">inputChanged</a>(Viewer viewer
+         ,
+      java.lang.Object oldInput
+         ,
+      java.lang.Object newInput)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr></table><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Constructor Detail
+               </h2></td></tr></table><h2><a name="con_TemplateContentProvider">TemplateContentProvider</a></h2><p><code>package-private <strong>TemplateContentProvider</strong>()</code></p><p></p><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Methods Detail
+               </h2></td></tr></table><h2><a name="method_dispose">dispose</a></h2><p><code>public void <strong>dispose</strong>()</code></p><p></p><hr><h2><a name="method_getElements">getElements</a></h2><p><code>public java.lang.Object[] <strong>getElements</strong>(java.lang.Object input)</code></p><p></p><h3>Parameters</h3><p><code>input</code></p><h3>Returns</h3><p><code>java.lang.Object[]</code></p><hr><h2><a name="method_inputChanged">inputChanged</a></h2><p><code>public void <strong>inputChanged</strong>(Viewer viewer
+         ,
+      java.lang.Object oldInput
+         ,
+      java.lang.Object newInput)</code></p><p></p><h3>Parameters</h3><p><code>viewer</code></p><p><code>oldInput</code></p><p><code>newInput</code></p><hr></body></html>
\ No newline at end of file
diff --git a/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.wizards.TemplateLabelProvider.html b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.wizards.TemplateLabelProvider.html
new file mode 100644
index 0000000..8320dd7
--- /dev/null
+++ b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.internal.wizards.TemplateLabelProvider.html
@@ -0,0 +1,19 @@
+<html><body><p><font size="+1"><strong>Package org.eclipse.wst.xsl.ui.internal.wizards</strong></font></p><hr><h2><font size="-1"><strong>org.eclipse.wst.xsl.ui.internal.wizards</strong></font><br>
+               Class TemplateLabelProvider</h2><br><hr><pre>package-private class <strong>TemplateLabelProvider</strong>
+extends LabelProvider</pre><hr><table width="100%" border="1"><tr bgcolor="#CCCCFF"><td width="100%"><h2>Constructor Summary</h2></td></tr><tr><td><code><strong><a href="#con_TemplateLabelProvider">TemplateLabelProvider</a></strong>()</code></td></tr></table><br><table width="100%" border="1"><tr cols="2" bgcolor="#CCCCFF"><td colspan="2" width="100%"><h2>Method Summary</h2></td></tr><tr valign="top"><td width="20%" align="right"><code>public Image</code></td><td width="" align="left"><code><a href="#method_getColumnImage">getColumnImage</a>(java.lang.Object element
+         ,
+      int columnIndex)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public java.lang.String</code></td><td width="" align="left"><code><a href="#method_getColumnText">getColumnText</a>(java.lang.Object element
+         ,
+      int columnIndex)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr></table><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Constructor Detail
+               </h2></td></tr></table><h2><a name="con_TemplateLabelProvider">TemplateLabelProvider</a></h2><p><code>package-private <strong>TemplateLabelProvider</strong>()</code></p><p></p><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Methods Detail
+               </h2></td></tr></table><h2><a name="method_getColumnImage">getColumnImage</a></h2><p><code>public Image <strong>getColumnImage</strong>(java.lang.Object element
+         ,
+      int columnIndex)</code></p><p></p><h3>Parameters</h3><p><code>element</code></p><p><code>columnIndex</code></p><h3>Returns</h3><p><code>Image</code></p><hr><h2><a name="method_getColumnText">getColumnText</a></h2><p><code>public java.lang.String <strong>getColumnText</strong>(java.lang.Object element
+         ,
+      int columnIndex)</code></p><p></p><h3>Parameters</h3><p><code>element</code></p><p><code>columnIndex</code></p><h3>Returns</h3><p><code>java.lang.String</code></p><hr></body></html>
\ No newline at end of file
diff --git a/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.provisional.contentassist.AbstractXMLElementContentAssistRequest.html b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.provisional.contentassist.AbstractXMLElementContentAssistRequest.html
new file mode 100644
index 0000000..ee297d0
--- /dev/null
+++ b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.provisional.contentassist.AbstractXMLElementContentAssistRequest.html
@@ -0,0 +1,156 @@
+<html><body><p><font size="+1"><strong>Package org.eclipse.wst.xsl.ui.provisional.contentassist</strong></font></p><hr><h2><font size="-1"><strong>org.eclipse.wst.xsl.ui.provisional.contentassist</strong></font><br>
+               Class AbstractXMLElementContentAssistRequest</h2><br><hr><pre>public class <strong>AbstractXMLElementContentAssistRequest</strong>
+extends org.eclipse.wst.xsl.ui.provisional.contentassist.AbstractXSLContentAssistRequest</pre>Adopters can extend this class to implement their own content assistance for Element
+ proposals using the XML Content Model.<p></p><p></p><hr><table width="100%" border="1"><tr cols="2" bgcolor="#CCCCFF"><td colspan="2" width="100%"><h2>Field Summary</h2></td></tr><tr valign="top"><td width="20%" align="right"><code>protected org.eclipse.wst.xsl.ui.internal.contentassist.contentmodel.XSLContentModelGenerator</code></td><td width="80%" align="left"><code><a href="#field_contentModel">contentModel</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>protected MarkupTagInfoProvider</code></td><td width="80%" align="left"><code><a href="#field_infoProvider">infoProvider</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>protected static  java.lang.String</code></td><td width="80%" align="left"><code><a href="#field_XPATH_FIRST_XSLANCESTOR_NODE">XPATH_FIRST_XSLANCESTOR_NODE</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr></table><br><table width="100%" border="1"><tr bgcolor="#CCCCFF"><td width="100%"><h2>Constructor Summary</h2></td></tr><tr><td><code><strong><a href="#con_AbstractXMLElementContentAssistRequest">AbstractXMLElementContentAssistRequest</a></strong>(org.w3c.dom.Node node
+         ,
+      IStructuredDocumentRegion documentRegion
+         ,
+      ITextRegion completionRegion
+         ,
+      int begin
+         ,
+      int length
+         ,
+      java.lang.String filter
+         ,
+      ITextViewer textViewer)</code></td></tr></table><br><table width="100%" border="1"><tr cols="2" bgcolor="#CCCCFF"><td colspan="2" width="100%"><h2>Method Summary</h2></td></tr><tr valign="top"><td width="20%" align="right"><code>protected void</code></td><td width="" align="left"><code><a href="#method_addTagNameProposals">addTagNameProposals</a>(int position)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               Adds proposals for the XML_TAG_NAME region.</td></tr><tr valign="top"><td width="20%" align="right"><code>protected boolean</code></td><td width="" align="left"><code><a href="#method_beginsWith">beginsWith</a>(java.lang.String aString
+         ,
+      java.lang.String prefix)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>protected org.eclipse.wst.xsl.ui.provisional.contentassist.CustomCompletionProposal</code></td><td width="" align="left"><code><a href="#method_createProposal">createProposal</a>(java.lang.String proposedText
+         ,
+      java.lang.String additionalInfo
+         ,
+      int offset
+         ,
+      Image image
+         ,
+      int startLength)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>protected java.lang.String</code></td><td width="" align="left"><code><a href="#method_getAdditionalInfo">getAdditionalInfo</a>(CMNode parentOrOwner
+         ,
+      CMNode cmnode)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               Retrieves cmnode's documentation to display in the completion proposal's
+ additional info. If no documentation exists for cmnode, try displaying
+ parentOrOwner's documentation
+ 
+ String any documentation information to display for cmnode.
+ <code>null</code> if there is nothing to display.</td></tr><tr valign="top"><td width="20%" align="right"><code>protected java.util.List</code></td><td width="" align="left"><code><a href="#method_getAvailableChildElementDeclarations">getAvailableChildElementDeclarations</a>(org.w3c.dom.Element parent
+         ,
+      int childPosition)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               Returns a list of CMNodes that are available within this parent context
+ Given the grammar shown below and a snippet of XML code (where the '|'
+ indicated the cursor position)
+ the list would return all of the element declarations that are
+ potential child elements of Foo.
+
+ grammar : Foo -> (A, B, C)
+ snippet : <Foo><A>|
+ result : {A, B, C}</td></tr><tr valign="top"><td width="20%" align="right"><code>protected java.util.List</code></td><td width="" align="left"><code><a href="#method_getAvailableChildrenAtIndex">getAvailableChildrenAtIndex</a>(org.w3c.dom.Element parent
+         ,
+      int index
+         ,
+      int validityChecking)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>protected java.util.Iterator</code></td><td width="" align="left"><code><a href="#method_getAvailableContentNodes">getAvailableContentNodes</a>(IDOMDocument domDocument
+         ,
+      org.w3c.dom.Node ancestorNode
+         ,
+      int includeOptions)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>protected CMElementDeclaration</code></td><td width="" align="left"><code><a href="#method_getCMElementDeclaration">getCMElementDeclaration</a>(org.w3c.dom.Node node)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>protected Image</code></td><td width="" align="left"><code><a href="#method_getCMNodeImage">getCMNodeImage</a>(CMNode cmNode)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>protected int</code></td><td width="" align="left"><code><a href="#method_getCursorPositionForProposedText">getCursorPositionForProposedText</a>(java.lang.String proposedText)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               This is the position the cursor should be in after the proposal is
+ applied</td></tr><tr valign="top"><td width="20%" align="right"><code>protected int</code></td><td width="" align="left"><code><a href="#method_getElementPosition">getElementPosition</a>(org.w3c.dom.Node child)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>protected MarkupTagInfoProvider</code></td><td width="" align="left"><code><a href="#method_getInfoProvider">getInfoProvider</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               Gets the infoProvider.
+ 
+ fInfoProvider and if fInfoProvider was <code>null</code> create a new
+ instance</td></tr><tr valign="top"><td width="20%" align="right"><code>protected ITextRegion</code></td><td width="" align="left"><code><a href="#method_getNameRegion">getNameRegion</a>(IStructuredDocumentRegion flatNode)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>protected java.lang.String</code></td><td width="" align="left"><code><a href="#method_getRequiredName">getRequiredName</a>(org.w3c.dom.Node ownerNode
+         ,
+      CMNode cmnode)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>protected boolean</code></td><td width="" align="left"><code><a href="#method_inAttributeRegion">inAttributeRegion</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               Check to see if the current position is in an Attribute Region if so,
+ return true otherwise false</td></tr><tr valign="top"><td width="20%" align="right"><code>protected boolean</code></td><td width="" align="left"><code><a href="#method_isNameRegion">isNameRegion</a>(ITextRegion region)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               Checks to the see if the element is in the correct region.</td></tr></table><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Field Detail
+               </h2></td></tr></table><h2><a name="field_contentModel">contentModel</a></h2><p><code>protected org.eclipse.wst.xsl.ui.internal.contentassist.contentmodel.XSLContentModelGenerator <strong>contentModel</strong></code></p><hr><h2><a name="field_infoProvider">infoProvider</a></h2><p><code>protected MarkupTagInfoProvider <strong>infoProvider</strong></code></p><hr><h2><a name="field_XPATH_FIRST_XSLANCESTOR_NODE">XPATH_FIRST_XSLANCESTOR_NODE</a></h2><p><code>protected static  java.lang.String <strong>XPATH_FIRST_XSLANCESTOR_NODE</strong></code></p><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Constructor Detail
+               </h2></td></tr></table><h2><a name="con_AbstractXMLElementContentAssistRequest">AbstractXMLElementContentAssistRequest</a></h2><p><code>public <strong>AbstractXMLElementContentAssistRequest</strong>(org.w3c.dom.Node node
+         ,
+      IStructuredDocumentRegion documentRegion
+         ,
+      ITextRegion completionRegion
+         ,
+      int begin
+         ,
+      int length
+         ,
+      java.lang.String filter
+         ,
+      ITextViewer textViewer)</code></p><p></p><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Methods Detail
+               </h2></td></tr></table><h2><a name="method_addTagNameProposals">addTagNameProposals</a></h2><p><code>protected void <strong>addTagNameProposals</strong>(int position)</code></p><p>Adds proposals for the XML_TAG_NAME region.</p><h3>Parameters</h3><p><code>position</code></p><hr><h2><a name="method_beginsWith">beginsWith</a></h2><p><code>protected boolean <strong>beginsWith</strong>(java.lang.String aString
+         ,
+      java.lang.String prefix)</code></p><p></p><h3>Parameters</h3><p><code>aString</code></p><p><code>prefix</code></p><h3>Returns</h3><p><code>boolean</code></p><hr><h2><a name="method_createProposal">createProposal</a></h2><p><code>protected org.eclipse.wst.xsl.ui.provisional.contentassist.CustomCompletionProposal <strong>createProposal</strong>(java.lang.String proposedText
+         ,
+      java.lang.String additionalInfo
+         ,
+      int offset
+         ,
+      Image image
+         ,
+      int startLength)</code></p><p></p><h3>Parameters</h3><p><code>proposedText</code></p><p><code>additionalInfo</code></p><p><code>offset</code></p><p><code>image</code></p><p><code>startLength</code></p><h3>Returns</h3><p><code>org.eclipse.wst.xsl.ui.provisional.contentassist.CustomCompletionProposal</code></p><hr><h2><a name="method_getAdditionalInfo">getAdditionalInfo</a></h2><p><code>protected java.lang.String <strong>getAdditionalInfo</strong>(CMNode parentOrOwner
+         ,
+      CMNode cmnode)</code></p><p>Retrieves cmnode's documentation to display in the completion proposal's
+ additional info. If no documentation exists for cmnode, try displaying
+ parentOrOwner's documentation
+ 
+ String any documentation information to display for cmnode.
+ <code>null</code> if there is nothing to display.</p><h3>Parameters</h3><p><code>parentOrOwner</code></p><p><code>cmnode</code></p><h3>Returns</h3><p><code>java.lang.String</code></p><hr><h2><a name="method_getAvailableChildElementDeclarations">getAvailableChildElementDeclarations</a></h2><p><code>protected java.util.List <strong>getAvailableChildElementDeclarations</strong>(org.w3c.dom.Element parent
+         ,
+      int childPosition)</code></p><p>Returns a list of CMNodes that are available within this parent context
+ Given the grammar shown below and a snippet of XML code (where the '|'
+ indicated the cursor position)
+ the list would return all of the element declarations that are
+ potential child elements of Foo.
+
+ grammar : Foo -> (A, B, C)
+ snippet : <Foo><A>|
+ result : {A, B, C}</p><h3>Parameters</h3><p><code>parent</code></p><p><code>childPosition</code></p><h3>Returns</h3><p><code>java.util.List</code></p><hr><h2><a name="method_getAvailableChildrenAtIndex">getAvailableChildrenAtIndex</a></h2><p><code>protected java.util.List <strong>getAvailableChildrenAtIndex</strong>(org.w3c.dom.Element parent
+         ,
+      int index
+         ,
+      int validityChecking)</code></p><p></p><h3>Parameters</h3><p><code>parent</code></p><p><code>index</code></p><p><code>validityChecking</code></p><h3>Returns</h3><p><code>java.util.List</code></p><hr><h2><a name="method_getAvailableContentNodes">getAvailableContentNodes</a></h2><p><code>protected java.util.Iterator <strong>getAvailableContentNodes</strong>(IDOMDocument domDocument
+         ,
+      org.w3c.dom.Node ancestorNode
+         ,
+      int includeOptions)</code></p><p></p><h3>Parameters</h3><p><code>domDocument</code></p><p><code>ancestorNode</code></p><p><code>includeOptions</code></p><h3>Returns</h3><p><code>java.util.Iterator</code></p><hr><h2><a name="method_getCMElementDeclaration">getCMElementDeclaration</a></h2><p><code>protected CMElementDeclaration <strong>getCMElementDeclaration</strong>(org.w3c.dom.Node node)</code></p><p></p><h3>Parameters</h3><p><code>node</code></p><h3>Returns</h3><p><code>CMElementDeclaration</code></p><hr><h2><a name="method_getCMNodeImage">getCMNodeImage</a></h2><p><code>protected Image <strong>getCMNodeImage</strong>(CMNode cmNode)</code></p><p></p><h3>Parameters</h3><p><code>cmNode</code></p><h3>Returns</h3><p><code>Image</code></p><hr><h2><a name="method_getCursorPositionForProposedText">getCursorPositionForProposedText</a></h2><p><code>protected int <strong>getCursorPositionForProposedText</strong>(java.lang.String proposedText)</code></p><p>This is the position the cursor should be in after the proposal is
+ applied</p><h3>Parameters</h3><p><code>proposedText</code></p><h3>Returns</h3><p><code>int</code> - the position the cursor should be in after the proposal is          applied</p><hr><h2><a name="method_getElementPosition">getElementPosition</a></h2><p><code>protected int <strong>getElementPosition</strong>(org.w3c.dom.Node child)</code></p><p></p><h3>Parameters</h3><p><code>child</code></p><h3>Returns</h3><p><code>int</code></p><hr><h2><a name="method_getInfoProvider">getInfoProvider</a></h2><p><code>protected MarkupTagInfoProvider <strong>getInfoProvider</strong>()</code></p><p>Gets the infoProvider.
+ 
+ fInfoProvider and if fInfoProvider was <code>null</code> create a new
+ instance</p><h3>Returns</h3><p><code>MarkupTagInfoProvider</code></p><hr><h2><a name="method_getNameRegion">getNameRegion</a></h2><p><code>protected ITextRegion <strong>getNameRegion</strong>(IStructuredDocumentRegion flatNode)</code></p><p></p><h3>Parameters</h3><p><code>flatNode</code></p><h3>Returns</h3><p><code>ITextRegion</code></p><hr><h2><a name="method_getRequiredName">getRequiredName</a></h2><p><code>protected java.lang.String <strong>getRequiredName</strong>(org.w3c.dom.Node ownerNode
+         ,
+      CMNode cmnode)</code></p><p></p><h3>Parameters</h3><p><code>ownerNode</code></p><p><code>cmnode</code></p><h3>Returns</h3><p><code>java.lang.String</code></p><hr><h2><a name="method_inAttributeRegion">inAttributeRegion</a></h2><p><code>protected boolean <strong>inAttributeRegion</strong>()</code></p><p>Check to see if the current position is in an Attribute Region if so,
+ return true otherwise false</p><h3>Returns</h3><p><code>boolean</code> - True if in attribute region, false otherwise.</p><hr><h2><a name="method_isNameRegion">isNameRegion</a></h2><p><code>protected boolean <strong>isNameRegion</strong>(ITextRegion region)</code></p><p>Checks to the see if the element is in the correct region.</p><h3>Parameters</h3><p><code>region</code></p><h3>Returns</h3><p><code>boolean</code></p><hr></body></html>
\ No newline at end of file
diff --git a/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.provisional.contentassist.AbstractXSLContentAssistProcessor.html b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.provisional.contentassist.AbstractXSLContentAssistProcessor.html
new file mode 100644
index 0000000..92ed5bd
--- /dev/null
+++ b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.provisional.contentassist.AbstractXSLContentAssistProcessor.html
@@ -0,0 +1,67 @@
+<html><body><p><font size="+1"><strong>Package org.eclipse.wst.xsl.ui.provisional.contentassist</strong></font></p><hr><h2><font size="-1"><strong>org.eclipse.wst.xsl.ui.provisional.contentassist</strong></font><br>
+               Class AbstractXSLContentAssistProcessor</h2><br><hr><pre>public class <strong>AbstractXSLContentAssistProcessor</strong>
+extends java.lang.Object</pre>This is an Abstract class that implementors should extend for implementing
+ XSL Content Assist Processors.   It provides common convience methods for
+ information that is needed to construct a content assist processor.<p></p><p></p><hr><table width="100%" border="1"><tr cols="2" bgcolor="#CCCCFF"><td colspan="2" width="100%"><h2>Field Summary</h2></td></tr><tr valign="top"><td width="20%" align="right"><code>protected ITextRegion</code></td><td width="80%" align="left"><code><a href="#field_completionRegion">completionRegion</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>protected int</code></td><td width="80%" align="left"><code><a href="#field_cursorPosition">cursorPosition</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>protected java.lang.String</code></td><td width="80%" align="left"><code><a href="#field_errorMessage">errorMessage</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>protected java.lang.String</code></td><td width="80%" align="left"><code><a href="#field_matchString">matchString</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>protected IStructuredDocumentRegion</code></td><td width="80%" align="left"><code><a href="#field_sdRegion">sdRegion</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>protected ITextViewer</code></td><td width="80%" align="left"><code><a href="#field_textViewer">textViewer</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>protected IDOMNode</code></td><td width="80%" align="left"><code><a href="#field_xmlNode">xmlNode</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr></table><br><table width="100%" border="1"><tr bgcolor="#CCCCFF"><td width="100%"><h2>Constructor Summary</h2></td></tr><tr><td><code><strong><a href="#con_AbstractXSLContentAssistProcessor">AbstractXSLContentAssistProcessor</a></strong>()</code></td></tr></table><br><table width="100%" border="1"><tr cols="2" bgcolor="#CCCCFF"><td colspan="2" width="100%"><h2>Method Summary</h2></td></tr><tr valign="top"><td width="20%" align="right"><code>public char[]</code></td><td width="" align="left"><code><a href="#method_getCompletionProposalAutoActivationCharacters">getCompletionProposalAutoActivationCharacters</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               Returns the characters which when entered by the user should
+ automatically trigger the presentation of possible completions.
+ 
+ the auto activation characters for completion proposal or
+ <code>null</code> if no auto activation is desired</td></tr><tr valign="top"><td width="20%" align="right"><code>protected ITextRegion</code></td><td width="" align="left"><code><a href="#method_getCompletionRegion">getCompletionRegion</a>(int documentPosition
+         ,
+      org.w3c.dom.Node domnode)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               Return the region whose content's require completion. This is something
+ of a misnomer as sometimes the user wants to be prompted for contents of
+ a non-existent ITextRegion, such as for enumerated attribute values
+ following an '=' sign.
+ 
+ Copied from AbstractContentAssist Processor.</td></tr><tr valign="top"><td width="20%" align="right"><code>protected ITextRegion</code></td><td width="" align="left"><code><a href="#method_getCompletionRegion">getCompletionRegion</a>(int offset
+         ,
+      IStructuredDocumentRegion sdRegion)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public java.lang.String</code></td><td width="" align="left"><code><a href="#method_getErrorMessage">getErrorMessage</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               (non-Javadoc)</td></tr><tr valign="top"><td width="20%" align="right"><code>protected void</code></td><td width="" align="left"><code><a href="#method_initializeProposalVariables">initializeProposalVariables</a>(ITextViewer textViewer
+         ,
+      int documentPosition)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public void</code></td><td width="" align="left"><code><a href="#method_setErrorMessage">setErrorMessage</a>(java.lang.String errorMessage)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               Sets the error message for why content assistance didn't complete.</td></tr></table><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Field Detail
+               </h2></td></tr></table><h2><a name="field_completionRegion">completionRegion</a></h2><p><code>protected ITextRegion <strong>completionRegion</strong></code></p><hr><h2><a name="field_cursorPosition">cursorPosition</a></h2><p><code>protected int <strong>cursorPosition</strong></code></p><hr><h2><a name="field_errorMessage">errorMessage</a></h2><p><code>protected java.lang.String <strong>errorMessage</strong></code></p><hr><h2><a name="field_matchString">matchString</a></h2><p><code>protected java.lang.String <strong>matchString</strong></code></p><hr><h2><a name="field_sdRegion">sdRegion</a></h2><p><code>protected IStructuredDocumentRegion <strong>sdRegion</strong></code></p><hr><h2><a name="field_textViewer">textViewer</a></h2><p><code>protected ITextViewer <strong>textViewer</strong></code></p><hr><h2><a name="field_xmlNode">xmlNode</a></h2><p><code>protected IDOMNode <strong>xmlNode</strong></code></p><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Constructor Detail
+               </h2></td></tr></table><h2><a name="con_AbstractXSLContentAssistProcessor">AbstractXSLContentAssistProcessor</a></h2><p><code>public <strong>AbstractXSLContentAssistProcessor</strong>()</code></p><p></p><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Methods Detail
+               </h2></td></tr></table><h2><a name="method_getCompletionProposalAutoActivationCharacters">getCompletionProposalAutoActivationCharacters</a></h2><p><code>public char[] <strong>getCompletionProposalAutoActivationCharacters</strong>()</code></p><p>Returns the characters which when entered by the user should
+ automatically trigger the presentation of possible completions.
+ 
+ the auto activation characters for completion proposal or
+ <code>null</code> if no auto activation is desired</p><h3>Returns</h3><p><code>char[]</code> - an array of activation characters</p><hr><h2><a name="method_getCompletionRegion">getCompletionRegion</a></h2><p><code>protected ITextRegion <strong>getCompletionRegion</strong>(int documentPosition
+         ,
+      org.w3c.dom.Node domnode)</code></p><p>Return the region whose content's require completion. This is something
+ of a misnomer as sometimes the user wants to be prompted for contents of
+ a non-existent ITextRegion, such as for enumerated attribute values
+ following an '=' sign.
+ 
+ Copied from AbstractContentAssist Processor.</p><h3>Parameters</h3><p><code>documentPosition</code></p><p><code>domnode</code></p><h3>Returns</h3><p><code>ITextRegion</code></p><hr><h2><a name="method_getCompletionRegion">getCompletionRegion</a></h2><p><code>protected ITextRegion <strong>getCompletionRegion</strong>(int offset
+         ,
+      IStructuredDocumentRegion sdRegion)</code></p><p></p><h3>Parameters</h3><p><code>offset</code></p><p><code>sdRegion</code></p><h3>Returns</h3><p><code>ITextRegion</code></p><hr><h2><a name="method_getErrorMessage">getErrorMessage</a></h2><p><code>public java.lang.String <strong>getErrorMessage</strong>()</code></p><p>(non-Javadoc)</p><h3>Returns</h3><p><code>java.lang.String</code></p><hr><h2><a name="method_initializeProposalVariables">initializeProposalVariables</a></h2><p><code>protected void <strong>initializeProposalVariables</strong>(ITextViewer textViewer
+         ,
+      int documentPosition)</code></p><p></p><h3>Parameters</h3><p><code>textViewer</code></p><p><code>documentPosition</code></p><hr><h2><a name="method_setErrorMessage">setErrorMessage</a></h2><p><code>public void <strong>setErrorMessage</strong>(java.lang.String errorMessage)</code></p><p>Sets the error message for why content assistance didn't complete.</p><h3>Parameters</h3><p><code>errorMessage</code></p><hr></body></html>
\ No newline at end of file
diff --git a/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.provisional.contentassist.AbstractXSLContentAssistRequest.html b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.provisional.contentassist.AbstractXSLContentAssistRequest.html
new file mode 100644
index 0000000..c478a1a
--- /dev/null
+++ b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.provisional.contentassist.AbstractXSLContentAssistRequest.html
@@ -0,0 +1,119 @@
+<html><body><p><font size="+1"><strong>Package org.eclipse.wst.xsl.ui.provisional.contentassist</strong></font></p><hr><h2><font size="-1"><strong>org.eclipse.wst.xsl.ui.provisional.contentassist</strong></font><br>
+               Class AbstractXSLContentAssistRequest</h2><br><hr><pre>public class <strong>AbstractXSLContentAssistRequest</strong>
+extends java.lang.Object</pre>An extension of the XML ContentAssistRequest class.  This provides
+ a basis for the XSL content assistance.  Classes may subclass this
+ class and implement specific functionality.<p></p><p></p><hr><table width="100%" border="1"><tr cols="2" bgcolor="#CCCCFF"><td colspan="2" width="100%"><h2>Field Summary</h2></td></tr><tr valign="top"><td width="20%" align="right"><code>protected IStructuredDocumentRegion</code></td><td width="80%" align="left"><code><a href="#field_documentRegion">documentRegion</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>protected java.util.ArrayList</code></td><td width="80%" align="left"><code><a href="#field_macros">macros</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>protected java.lang.String</code></td><td width="80%" align="left"><code><a href="#field_matchString">matchString</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>protected org.w3c.dom.Node</code></td><td width="80%" align="left"><code><a href="#field_node">node</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>protected java.util.ArrayList</code></td><td width="80%" align="left"><code><a href="#field_proposals">proposals</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>protected ITextRegion</code></td><td width="80%" align="left"><code><a href="#field_region">region</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>protected int</code></td><td width="80%" align="left"><code><a href="#field_replacementBeginPosition">replacementBeginPosition</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>protected int</code></td><td width="80%" align="left"><code><a href="#field_replacementLength">replacementLength</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>protected ITextViewer</code></td><td width="80%" align="left"><code><a href="#field_textViewer">textViewer</a></code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr></table><br><table width="100%" border="1"><tr bgcolor="#CCCCFF"><td width="100%"><h2>Constructor Summary</h2></td></tr><tr><td><code><strong><a href="#con_AbstractXSLContentAssistRequest">AbstractXSLContentAssistRequest</a></strong>(org.w3c.dom.Node node
+         ,
+      IStructuredDocumentRegion documentRegion
+         ,
+      ITextRegion completionRegion
+         ,
+      int begin
+         ,
+      int length
+         ,
+      java.lang.String filter
+         ,
+      ITextViewer textViewer)</code></td></tr></table><br><table width="100%" border="1"><tr cols="2" bgcolor="#CCCCFF"><td colspan="2" width="100%"><h2>Method Summary</h2></td></tr><tr valign="top"><td width="20%" align="right"><code>protected void</code></td><td width="" align="left"><code><a href="#method_addMacro">addMacro</a>(ICompletionProposal newProposal)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>protected void</code></td><td width="" align="left"><code><a href="#method_addProposal">addProposal</a>(ICompletionProposal newProposal)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>protected java.util.ArrayList</code></td><td width="" align="left"><code><a href="#method_getAllCompletionProposals">getAllCompletionProposals</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public java.util.ArrayList</code></td><td width="" align="left"><code><a href="#method_getCompletionProposals">getCompletionProposals</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               Returns a list of proposals.  Implementations are to provide the appropriate
+ implementation for the proposals they would like to return.   Use of the getAllCompletionProposals
+ should be used to return the actual proposals from this method.</td></tr><tr valign="top"><td width="20%" align="right"><code>protected int</code></td><td width="" align="left"><code><a href="#method_getCursorPosition">getCursorPosition</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               Get the cursor position within the Text Viewer</td></tr><tr valign="top"><td width="20%" align="right"><code>protected IStructuredDocumentRegion</code></td><td width="" align="left"><code><a href="#method_getDocumentRegion">getDocumentRegion</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>protected java.lang.String</code></td><td width="" align="left"><code><a href="#method_getLocation">getLocation</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               Retrieves the base location for the IDOMDocument for this class. This is
+ used to populate a new Path class for retrieving an IFile instance.</td></tr><tr valign="top"><td width="20%" align="right"><code>protected java.util.List</code></td><td width="" align="left"><code><a href="#method_getMacros">getMacros</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>protected java.lang.String</code></td><td width="" align="left"><code><a href="#method_getMatchString">getMatchString</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>protected java.util.Collection</code></td><td width="" align="left"><code><a href="#method_getNamespaces">getNamespaces</a>(IDOMElement element)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>protected org.w3c.dom.Node</code></td><td width="" align="left"><code><a href="#method_getNode">getNode</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>protected org.w3c.dom.Node</code></td><td width="" align="left"><code><a href="#method_getParent">getParent</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>protected java.util.List</code></td><td width="" align="left"><code><a href="#method_getProposals">getProposals</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>protected ITextRegion</code></td><td width="" align="left"><code><a href="#method_getRegion">getRegion</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>protected int</code></td><td width="" align="left"><code><a href="#method_getReplacementBeginPosition">getReplacementBeginPosition</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>protected int</code></td><td width="" align="left"><code><a href="#method_getReplacementLength">getReplacementLength</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>protected int</code></td><td width="" align="left"><code><a href="#method_getStartOffset">getStartOffset</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>protected org.eclipse.wst.xsl.core.model.StylesheetModel</code></td><td width="" align="left"><code><a href="#method_getStylesheetModel">getStylesheetModel</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>protected java.lang.String</code></td><td width="" align="left"><code><a href="#method_getText">getText</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>protected int</code></td><td width="" align="left"><code><a href="#method_getTextEndOffset">getTextEndOffset</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>protected boolean</code></td><td width="" align="left"><code><a href="#method_hasNodes">hasNodes</a>(org.w3c.dom.NodeList nodes)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               Checks to make sure that the NodeList has data</td></tr><tr valign="top"><td width="20%" align="right"><code>protected void</code></td><td width="" align="left"><code><a href="#method_setDocumentRegion">setDocumentRegion</a>(IStructuredDocumentRegion region)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>protected void</code></td><td width="" align="left"><code><a href="#method_setMatchString">setMatchString</a>(java.lang.String newMatchString)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>protected void</code></td><td width="" align="left"><code><a href="#method_setNode">setNode</a>(org.w3c.dom.Node newNode)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>protected void</code></td><td width="" align="left"><code><a href="#method_setRegion">setRegion</a>(ITextRegion newRegion)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>protected void</code></td><td width="" align="left"><code><a href="#method_setReplacementBeginPosition">setReplacementBeginPosition</a>(int newReplacementBeginPosition)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>protected void</code></td><td width="" align="left"><code><a href="#method_setReplacementLength">setReplacementLength</a>(int newReplacementLength)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>protected java.util.ArrayList</code></td><td width="" align="left"><code><a href="#method_sortProposals">sortProposals</a>(java.util.ArrayList proposalsIn)</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public java.lang.String</code></td><td width="" align="left"><code><a href="#method_toString">toString</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr></table><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Field Detail
+               </h2></td></tr></table><h2><a name="field_documentRegion">documentRegion</a></h2><p><code>protected IStructuredDocumentRegion <strong>documentRegion</strong></code></p><hr><h2><a name="field_macros">macros</a></h2><p><code>protected java.util.ArrayList <strong>macros</strong></code></p><hr><h2><a name="field_matchString">matchString</a></h2><p><code>protected java.lang.String <strong>matchString</strong></code></p><hr><h2><a name="field_node">node</a></h2><p><code>protected org.w3c.dom.Node <strong>node</strong></code></p><hr><h2><a name="field_proposals">proposals</a></h2><p><code>protected java.util.ArrayList <strong>proposals</strong></code></p><hr><h2><a name="field_region">region</a></h2><p><code>protected ITextRegion <strong>region</strong></code></p><hr><h2><a name="field_replacementBeginPosition">replacementBeginPosition</a></h2><p><code>protected int <strong>replacementBeginPosition</strong></code></p><hr><h2><a name="field_replacementLength">replacementLength</a></h2><p><code>protected int <strong>replacementLength</strong></code></p><hr><h2><a name="field_textViewer">textViewer</a></h2><p><code>protected ITextViewer <strong>textViewer</strong></code></p><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Constructor Detail
+               </h2></td></tr></table><h2><a name="con_AbstractXSLContentAssistRequest">AbstractXSLContentAssistRequest</a></h2><p><code>public <strong>AbstractXSLContentAssistRequest</strong>(org.w3c.dom.Node node
+         ,
+      IStructuredDocumentRegion documentRegion
+         ,
+      ITextRegion completionRegion
+         ,
+      int begin
+         ,
+      int length
+         ,
+      java.lang.String filter
+         ,
+      ITextViewer textViewer)</code></p><p>Handles Content Assistance requests for Select Attributes.  This is called an instantiated
+ through the use of the computeProposals method from the XSLContentAssistProcessor.  It will
+ calculate the available proposals that are available for the XSL select attribute.</p><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Methods Detail
+               </h2></td></tr></table><h2><a name="method_addMacro">addMacro</a></h2><p><code>protected void <strong>addMacro</strong>(ICompletionProposal newProposal)</code></p><p></p><h3>Parameters</h3><p><code>newProposal</code></p><hr><h2><a name="method_addProposal">addProposal</a></h2><p><code>protected void <strong>addProposal</strong>(ICompletionProposal newProposal)</code></p><p></p><h3>Parameters</h3><p><code>newProposal</code></p><hr><h2><a name="method_getAllCompletionProposals">getAllCompletionProposals</a></h2><p><code>protected java.util.ArrayList <strong>getAllCompletionProposals</strong>()</code></p><p></p><h3>Returns</h3><p><code>java.util.ArrayList</code></p><hr><h2><a name="method_getCompletionProposals">getCompletionProposals</a></h2><p><code>public java.util.ArrayList <strong>getCompletionProposals</strong>()</code></p><p>Returns a list of proposals.  Implementations are to provide the appropriate
+ implementation for the proposals they would like to return.   Use of the getAllCompletionProposals
+ should be used to return the actual proposals from this method.</p><h3>Returns</h3><p><code>java.util.ArrayList</code></p><hr><h2><a name="method_getCursorPosition">getCursorPosition</a></h2><p><code>protected int <strong>getCursorPosition</strong>()</code></p><p>Get the cursor position within the Text Viewer</p><h3>Returns</h3><p><code>int</code> - An int value containing the cursor position</p><hr><h2><a name="method_getDocumentRegion">getDocumentRegion</a></h2><p><code>protected IStructuredDocumentRegion <strong>getDocumentRegion</strong>()</code></p><p></p><h3>Returns</h3><p><code>IStructuredDocumentRegion</code></p><hr><h2><a name="method_getLocation">getLocation</a></h2><p><code>protected java.lang.String <strong>getLocation</strong>()</code></p><p>Retrieves the base location for the IDOMDocument for this class. This is
+ used to populate a new Path class for retrieving an IFile instance.</p><h3>Returns</h3><p><code>java.lang.String</code></p><hr><h2><a name="method_getMacros">getMacros</a></h2><p><code>protected java.util.List <strong>getMacros</strong>()</code></p><p></p><h3>Returns</h3><p><code>java.util.List</code></p><hr><h2><a name="method_getMatchString">getMatchString</a></h2><p><code>protected java.lang.String <strong>getMatchString</strong>()</code></p><p></p><h3>Returns</h3><p><code>java.lang.String</code></p><hr><h2><a name="method_getNamespaces">getNamespaces</a></h2><p><code>protected java.util.Collection <strong>getNamespaces</strong>(IDOMElement element)</code></p><p></p><h3>Parameters</h3><p><code>element</code></p><h3>Returns</h3><p><code>java.util.Collection</code></p><hr><h2><a name="method_getNode">getNode</a></h2><p><code>protected org.w3c.dom.Node <strong>getNode</strong>()</code></p><p></p><h3>Returns</h3><p><code>org.w3c.dom.Node</code></p><hr><h2><a name="method_getParent">getParent</a></h2><p><code>protected org.w3c.dom.Node <strong>getParent</strong>()</code></p><p></p><h3>Returns</h3><p><code>org.w3c.dom.Node</code></p><hr><h2><a name="method_getProposals">getProposals</a></h2><p><code>protected java.util.List <strong>getProposals</strong>()</code></p><p></p><h3>Returns</h3><p><code>java.util.List</code></p><hr><h2><a name="method_getRegion">getRegion</a></h2><p><code>protected ITextRegion <strong>getRegion</strong>()</code></p><p></p><h3>Returns</h3><p><code>ITextRegion</code></p><hr><h2><a name="method_getReplacementBeginPosition">getReplacementBeginPosition</a></h2><p><code>protected int <strong>getReplacementBeginPosition</strong>()</code></p><p></p><h3>Returns</h3><p><code>int</code></p><hr><h2><a name="method_getReplacementLength">getReplacementLength</a></h2><p><code>protected int <strong>getReplacementLength</strong>()</code></p><p></p><h3>Returns</h3><p><code>int</code></p><hr><h2><a name="method_getStartOffset">getStartOffset</a></h2><p><code>protected int <strong>getStartOffset</strong>()</code></p><p></p><h3>Returns</h3><p><code>int</code></p><hr><h2><a name="method_getStylesheetModel">getStylesheetModel</a></h2><p><code>protected org.eclipse.wst.xsl.core.model.StylesheetModel <strong>getStylesheetModel</strong>()</code></p><p></p><h3>Returns</h3><p><code>org.eclipse.wst.xsl.core.model.StylesheetModel</code></p><hr><h2><a name="method_getText">getText</a></h2><p><code>protected java.lang.String <strong>getText</strong>()</code></p><p></p><h3>Returns</h3><p><code>java.lang.String</code></p><hr><h2><a name="method_getTextEndOffset">getTextEndOffset</a></h2><p><code>protected int <strong>getTextEndOffset</strong>()</code></p><p></p><h3>Returns</h3><p><code>int</code></p><hr><h2><a name="method_hasNodes">hasNodes</a></h2><p><code>protected boolean <strong>hasNodes</strong>(org.w3c.dom.NodeList nodes)</code></p><p>Checks to make sure that the NodeList has data</p><h3>Parameters</h3><p><code>nodes</code> - A NodeList object</p><h3>Returns</h3><p><code>boolean</code> - True if has data, false if empty</p><hr><h2><a name="method_setDocumentRegion">setDocumentRegion</a></h2><p><code>protected void <strong>setDocumentRegion</strong>(IStructuredDocumentRegion region)</code></p><p></p><h3>Parameters</h3><p><code>region</code></p><hr><h2><a name="method_setMatchString">setMatchString</a></h2><p><code>protected void <strong>setMatchString</strong>(java.lang.String newMatchString)</code></p><p></p><h3>Parameters</h3><p><code>newMatchString</code></p><hr><h2><a name="method_setNode">setNode</a></h2><p><code>protected void <strong>setNode</strong>(org.w3c.dom.Node newNode)</code></p><p></p><h3>Parameters</h3><p><code>newNode</code></p><hr><h2><a name="method_setRegion">setRegion</a></h2><p><code>protected void <strong>setRegion</strong>(ITextRegion newRegion)</code></p><p></p><h3>Parameters</h3><p><code>newRegion</code></p><hr><h2><a name="method_setReplacementBeginPosition">setReplacementBeginPosition</a></h2><p><code>protected void <strong>setReplacementBeginPosition</strong>(int newReplacementBeginPosition)</code></p><p></p><h3>Parameters</h3><p><code>newReplacementBeginPosition</code></p><hr><h2><a name="method_setReplacementLength">setReplacementLength</a></h2><p><code>protected void <strong>setReplacementLength</strong>(int newReplacementLength)</code></p><p></p><h3>Parameters</h3><p><code>newReplacementLength</code></p><hr><h2><a name="method_sortProposals">sortProposals</a></h2><p><code>protected java.util.ArrayList <strong>sortProposals</strong>(java.util.ArrayList proposalsIn)</code></p><p></p><h3>Parameters</h3><p><code>proposalsIn</code></p><h3>Returns</h3><p><code>java.util.ArrayList</code></p><hr><h2><a name="method_toString">toString</a></h2><p><code>public java.lang.String <strong>toString</strong>()</code></p><p></p><h3>Returns</h3><p><code>java.lang.String</code> - java.lang.String</p><hr></body></html>
\ No newline at end of file
diff --git a/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.provisional.contentassist.CustomCompletionProposal.html b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.provisional.contentassist.CustomCompletionProposal.html
new file mode 100644
index 0000000..d624496
--- /dev/null
+++ b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.provisional.contentassist.CustomCompletionProposal.html
@@ -0,0 +1,77 @@
+<html><body><p><font size="+1"><strong>Package org.eclipse.wst.xsl.ui.provisional.contentassist</strong></font></p><hr><h2><font size="-1"><strong>org.eclipse.wst.xsl.ui.provisional.contentassist</strong></font><br>
+               Class CustomCompletionProposal</h2><br><hr><pre>public class <strong>CustomCompletionProposal</strong>
+extends org.eclipse.wst.sse.ui.internal.contentassist.CustomCompletionProposal</pre>Adopters can use the class to help build a custom content completion proposal.<p></p><p></p><hr><table width="100%" border="1"><tr bgcolor="#CCCCFF"><td width="100%"><h2>Constructor Summary</h2></td></tr><tr><td><code><strong><a href="#con_CustomCompletionProposal">CustomCompletionProposal</a></strong>(java.lang.String replacementString
+         ,
+      int replacementOffset
+         ,
+      int replacementLength
+         ,
+      int cursorPosition
+         ,
+      Image image
+         ,
+      java.lang.String displayString
+         ,
+      IContextInformation contextInformation
+         ,
+      java.lang.String additionalProposalInfo
+         ,
+      int relevance)</code></td></tr><tr><td><code><strong><a href="#con_CustomCompletionProposal">CustomCompletionProposal</a></strong>(java.lang.String replacementString
+         ,
+      int replacementOffset
+         ,
+      int replacementLength
+         ,
+      int cursorPosition
+         ,
+      Image image
+         ,
+      java.lang.String displayString
+         ,
+      IContextInformation contextInformation
+         ,
+      java.lang.String additionalProposalInfo
+         ,
+      int relevance
+         ,
+      boolean updateReplacementLengthOnValidate)</code></td></tr></table><br><table width="100%" border="1"><tr cols="2" bgcolor="#CCCCFF"><td colspan="2" width="100%"><h2>Method Summary</h2></td></tr><tr valign="top"><td width="20%" align="right"><code>public boolean</code></td><td width="" align="left"><code><a href="#method_isAutoInsertable">isAutoInsertable</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               (non-Javadoc)</td></tr></table><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Constructor Detail
+               </h2></td></tr></table><h2><a name="con_CustomCompletionProposal">CustomCompletionProposal</a></h2><p><code>public <strong>CustomCompletionProposal</strong>(java.lang.String replacementString
+         ,
+      int replacementOffset
+         ,
+      int replacementLength
+         ,
+      int cursorPosition
+         ,
+      Image image
+         ,
+      java.lang.String displayString
+         ,
+      IContextInformation contextInformation
+         ,
+      java.lang.String additionalProposalInfo
+         ,
+      int relevance)</code></p><p>Constructor for the Custom Completion Proposal</p><hr><h2><a name="con_CustomCompletionProposal">CustomCompletionProposal</a></h2><p><code>public <strong>CustomCompletionProposal</strong>(java.lang.String replacementString
+         ,
+      int replacementOffset
+         ,
+      int replacementLength
+         ,
+      int cursorPosition
+         ,
+      Image image
+         ,
+      java.lang.String displayString
+         ,
+      IContextInformation contextInformation
+         ,
+      java.lang.String additionalProposalInfo
+         ,
+      int relevance
+         ,
+      boolean updateReplacementLengthOnValidate)</code></p><p></p><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Methods Detail
+               </h2></td></tr></table><h2><a name="method_isAutoInsertable">isAutoInsertable</a></h2><p><code>public boolean <strong>isAutoInsertable</strong>()</code></p><p>(non-Javadoc)</p><h3>Returns</h3><p><code>boolean</code></p><hr></body></html>
\ No newline at end of file
diff --git a/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.provisional.contentassist.IContentAssistProposalRequest.html b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.provisional.contentassist.IContentAssistProposalRequest.html
new file mode 100644
index 0000000..97c752b
--- /dev/null
+++ b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.provisional.contentassist.IContentAssistProposalRequest.html
@@ -0,0 +1,7 @@
+<html><body><p><font size="+1"><strong>Package org.eclipse.wst.xsl.ui.provisional.contentassist</strong></font></p><hr><h2><font size="-1"><strong>org.eclipse.wst.xsl.ui.provisional.contentassist</strong></font><br>
+               Class IContentAssistProposalRequest</h2><br><hr><pre>public class <strong>IContentAssistProposalRequest</strong>
+extends </pre>Provides content assistance ICompletionProposals.<p></p><p></p><hr><table width="100%" border="1"><tr cols="2" bgcolor="#CCCCFF"><td colspan="2" width="100%"><h2>Method Summary</h2></td></tr><tr valign="top"><td width="20%" align="right"><code>public java.util.ArrayList</code></td><td width="" align="left"><code><a href="#method_getCompletionProposals">getCompletionProposals</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               Completion Proposals for a Content Assist Request.</td></tr></table><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Methods Detail
+               </h2></td></tr></table><h2><a name="method_getCompletionProposals">getCompletionProposals</a></h2><p><code>public java.util.ArrayList <strong>getCompletionProposals</strong>()</code></p><p>Completion Proposals for a Content Assist Request.</p><h3>Returns</h3><p><code>java.util.ArrayList</code> - ArrayLlist<ICompletionProposal></p><hr></body></html>
\ No newline at end of file
diff --git a/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.provisional.contentassist.IXSLContentAssistProcessor.html b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.provisional.contentassist.IXSLContentAssistProcessor.html
new file mode 100644
index 0000000..13ca7f5
--- /dev/null
+++ b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.provisional.contentassist.IXSLContentAssistProcessor.html
@@ -0,0 +1,11 @@
+<html><body><p><font size="+1"><strong>Package org.eclipse.wst.xsl.ui.provisional.contentassist</strong></font></p><hr><h2><font size="-1"><strong>org.eclipse.wst.xsl.ui.provisional.contentassist</strong></font><br>
+               Class IXSLContentAssistProcessor</h2><br><hr><pre>public class <strong>IXSLContentAssistProcessor</strong>
+extends </pre><p></p><hr><table width="100%" border="1"><tr cols="2" bgcolor="#CCCCFF"><td colspan="2" width="100%"><h2>Method Summary</h2></td></tr><tr valign="top"><td width="20%" align="right"><code>public java.lang.String</code></td><td width="" align="left"><code><a href="#method_getMaximumVersion">getMaximumVersion</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public java.lang.String</code></td><td width="" align="left"><code><a href="#method_getMinimumVersion">getMinimumVersion</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public java.util.ArrayList</code></td><td width="" align="left"><code><a href="#method_getNamespaces">getNamespaces</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               ArrayList of Strings for the namespaces this processor activates against.</td></tr></table><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Methods Detail
+               </h2></td></tr></table><h2><a name="method_getMaximumVersion">getMaximumVersion</a></h2><p><code>public java.lang.String <strong>getMaximumVersion</strong>()</code></p><p></p><h3>Returns</h3><p><code>java.lang.String</code></p><hr><h2><a name="method_getMinimumVersion">getMinimumVersion</a></h2><p><code>public java.lang.String <strong>getMinimumVersion</strong>()</code></p><p></p><h3>Returns</h3><p><code>java.lang.String</code></p><hr><h2><a name="method_getNamespaces">getNamespaces</a></h2><p><code>public java.util.ArrayList <strong>getNamespaces</strong>()</code></p><p>ArrayList of Strings for the namespaces this processor activates against.</p><h3>Returns</h3><p><code>java.util.ArrayList</code></p><hr></body></html>
\ No newline at end of file
diff --git a/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.provisional.contentassist.NullContentAssistRequest.html b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.provisional.contentassist.NullContentAssistRequest.html
new file mode 100644
index 0000000..44e0407
--- /dev/null
+++ b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.ui.provisional.contentassist.NullContentAssistRequest.html
@@ -0,0 +1,33 @@
+<html><body><p><font size="+1"><strong>Package org.eclipse.wst.xsl.ui.provisional.contentassist</strong></font></p><hr><h2><font size="-1"><strong>org.eclipse.wst.xsl.ui.provisional.contentassist</strong></font><br>
+               Class NullContentAssistRequest</h2><br><hr><pre>public class <strong>NullContentAssistRequest</strong>
+extends org.eclipse.wst.xsl.ui.provisional.contentassist.AbstractXSLContentAssistRequest</pre>An empty content assist request.<p></p><p></p><hr><table width="100%" border="1"><tr bgcolor="#CCCCFF"><td width="100%"><h2>Constructor Summary</h2></td></tr><tr><td><code><strong><a href="#con_NullContentAssistRequest">NullContentAssistRequest</a></strong>(org.w3c.dom.Node node
+         ,
+      IStructuredDocumentRegion documentRegion
+         ,
+      ITextRegion completionRegion
+         ,
+      int begin
+         ,
+      int length
+         ,
+      java.lang.String filter
+         ,
+      ITextViewer textViewer)</code></td></tr></table><br><table width="100%" border="1"><tr cols="2" bgcolor="#CCCCFF"><td colspan="2" width="100%"><h2>Method Summary</h2></td></tr><tr valign="top"><td width="20%" align="right"><code>public java.util.ArrayList</code></td><td width="" align="left"><code><a href="#method_getCompletionProposals">getCompletionProposals</a>()</code><br>
+               &nbsp;&nbsp;&nbsp;&nbsp;
+               </td></tr></table><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Constructor Detail
+               </h2></td></tr></table><h2><a name="con_NullContentAssistRequest">NullContentAssistRequest</a></h2><p><code>public <strong>NullContentAssistRequest</strong>(org.w3c.dom.Node node
+         ,
+      IStructuredDocumentRegion documentRegion
+         ,
+      ITextRegion completionRegion
+         ,
+      int begin
+         ,
+      int length
+         ,
+      java.lang.String filter
+         ,
+      ITextViewer textViewer)</code></p><p>A NULL ContentAssistRequest has no proposals.</p><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+                  Methods Detail
+               </h2></td></tr></table><h2><a name="method_getCompletionProposals">getCompletionProposals</a></h2><p><code>public java.util.ArrayList <strong>getCompletionProposals</strong>()</code></p><p></p><h3>Returns</h3><p><code>java.util.ArrayList</code></p><hr></body></html>
\ No newline at end of file
diff --git a/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.xalan.debugger.XalanPrintTraceListener.html b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.xalan.debugger.XalanPrintTraceListener.html
index 916f411..b0f1739 100644
--- a/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.xalan.debugger.XalanPrintTraceListener.html
+++ b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.xalan.debugger.XalanPrintTraceListener.html
@@ -1,17 +1,17 @@
 <html><body><p><font size="+1"><strong>Package org.eclipse.wst.xsl.xalan.debugger</strong></font></p><hr><h2><font size="-1"><strong>org.eclipse.wst.xsl.xalan.debugger</strong></font><br>
                Class XalanPrintTraceListener</h2><br><hr><pre>public class <strong>XalanPrintTraceListener</strong>
-extends PrintTraceListener</pre><hr><table width="100%" border="1"><tr bgcolor="#CCCCFF"><td width="100%"><h2>Constructor Summary</h2></td></tr><tr><td><code><strong><a href="#con_XalanPrintTraceListener">XalanPrintTraceListener</a></strong>(java.io.PrintWriter pw)</code></td></tr></table><br><table width="100%" border="1"><tr cols="2" bgcolor="#CCCCFF"><td colspan="2" width="100%"><h2>Method Summary</h2></td></tr><tr valign="top"><td width="20%" align="right"><code>public void</code></td><td width="" align="left"><code><a href="#method__trace">_trace</a>(TracerEvent ev)</code><br>
+extends org.apache.xalan.trace.PrintTraceListener</pre><hr><table width="100%" border="1"><tr bgcolor="#CCCCFF"><td width="100%"><h2>Constructor Summary</h2></td></tr><tr><td><code><strong><a href="#con_XalanPrintTraceListener">XalanPrintTraceListener</a></strong>(java.io.PrintWriter pw)</code></td></tr></table><br><table width="100%" border="1"><tr cols="2" bgcolor="#CCCCFF"><td colspan="2" width="100%"><h2>Method Summary</h2></td></tr><tr valign="top"><td width="20%" align="right"><code>public void</code></td><td width="" align="left"><code><a href="#method__trace">_trace</a>(org.apache.xalan.trace.TracerEvent ev)</code><br>
                &nbsp;&nbsp;&nbsp;&nbsp;
-               </td></tr><tr valign="top"><td width="20%" align="right"><code>public void</code></td><td width="" align="left"><code><a href="#method_selected">selected</a>(SelectionEvent ev)</code><br>
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public void</code></td><td width="" align="left"><code><a href="#method_selected">selected</a>(org.apache.xalan.trace.SelectionEvent ev)</code><br>
                &nbsp;&nbsp;&nbsp;&nbsp;
-               </td></tr><tr valign="top"><td width="20%" align="right"><code>public void</code></td><td width="" align="left"><code><a href="#method_selectEnd">selectEnd</a>(EndSelectionEvent ev)</code><br>
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public void</code></td><td width="" align="left"><code><a href="#method_selectEnd">selectEnd</a>(org.apache.xalan.trace.EndSelectionEvent ev)</code><br>
                &nbsp;&nbsp;&nbsp;&nbsp;
-               </td></tr><tr valign="top"><td width="20%" align="right"><code>public void</code></td><td width="" align="left"><code><a href="#method_trace">trace</a>(TracerEvent ev)</code><br>
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public void</code></td><td width="" align="left"><code><a href="#method_trace">trace</a>(org.apache.xalan.trace.TracerEvent ev)</code><br>
                &nbsp;&nbsp;&nbsp;&nbsp;
-               </td></tr><tr valign="top"><td width="20%" align="right"><code>public void</code></td><td width="" align="left"><code><a href="#method_traceEnd">traceEnd</a>(TracerEvent ev)</code><br>
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public void</code></td><td width="" align="left"><code><a href="#method_traceEnd">traceEnd</a>(org.apache.xalan.trace.TracerEvent ev)</code><br>
                &nbsp;&nbsp;&nbsp;&nbsp;
                </td></tr></table><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
                   Constructor Detail
                </h2></td></tr></table><h2><a name="con_XalanPrintTraceListener">XalanPrintTraceListener</a></h2><p><code>public <strong>XalanPrintTraceListener</strong>(java.io.PrintWriter pw)</code></p><p></p><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
                   Methods Detail
-               </h2></td></tr></table><h2><a name="method__trace">_trace</a></h2><p><code>public void <strong>_trace</strong>(TracerEvent ev)</code></p><p></p><h3>Parameters</h3><p><code>ev</code></p><hr><h2><a name="method_selected">selected</a></h2><p><code>public void <strong>selected</strong>(SelectionEvent ev)</code></p><p></p><h3>Parameters</h3><p><code>ev</code></p><h3>Throws:</h3><p><code>javax.xml.transform.TransformerException</code></p><hr><h2><a name="method_selectEnd">selectEnd</a></h2><p><code>public void <strong>selectEnd</strong>(EndSelectionEvent ev)</code></p><p></p><h3>Parameters</h3><p><code>ev</code></p><h3>Throws:</h3><p><code>javax.xml.transform.TransformerException</code></p><hr><h2><a name="method_trace">trace</a></h2><p><code>public void <strong>trace</strong>(TracerEvent ev)</code></p><p></p><h3>Parameters</h3><p><code>ev</code></p><hr><h2><a name="method_traceEnd">traceEnd</a></h2><p><code>public void <strong>traceEnd</strong>(TracerEvent ev)</code></p><p></p><h3>Parameters</h3><p><code>ev</code></p><hr></body></html>
\ No newline at end of file
+               </h2></td></tr></table><h2><a name="method__trace">_trace</a></h2><p><code>public void <strong>_trace</strong>(org.apache.xalan.trace.TracerEvent ev)</code></p><p></p><h3>Parameters</h3><p><code>ev</code></p><hr><h2><a name="method_selected">selected</a></h2><p><code>public void <strong>selected</strong>(org.apache.xalan.trace.SelectionEvent ev)</code></p><p></p><h3>Parameters</h3><p><code>ev</code></p><h3>Throws:</h3><p><code>javax.xml.transform.TransformerException</code></p><hr><h2><a name="method_selectEnd">selectEnd</a></h2><p><code>public void <strong>selectEnd</strong>(org.apache.xalan.trace.EndSelectionEvent ev)</code></p><p></p><h3>Parameters</h3><p><code>ev</code></p><h3>Throws:</h3><p><code>javax.xml.transform.TransformerException</code></p><hr><h2><a name="method_trace">trace</a></h2><p><code>public void <strong>trace</strong>(org.apache.xalan.trace.TracerEvent ev)</code></p><p></p><h3>Parameters</h3><p><code>ev</code></p><hr><h2><a name="method_traceEnd">traceEnd</a></h2><p><code>public void <strong>traceEnd</strong>(org.apache.xalan.trace.TracerEvent ev)</code></p><p></p><h3>Parameters</h3><p><code>ev</code></p><hr></body></html>
\ No newline at end of file
diff --git a/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.xalan.debugger.XalanRootStyleFrame.html b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.xalan.debugger.XalanRootStyleFrame.html
index 753800d..e94383c 100644
--- a/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.xalan.debugger.XalanRootStyleFrame.html
+++ b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.xalan.debugger.XalanRootStyleFrame.html
@@ -1,6 +1,6 @@
 <html><body><p><font size="+1"><strong>Package org.eclipse.wst.xsl.xalan.debugger</strong></font></p><hr><h2><font size="-1"><strong>org.eclipse.wst.xsl.xalan.debugger</strong></font><br>
                Class XalanRootStyleFrame</h2><br><hr><pre>public class <strong>XalanRootStyleFrame</strong>
-extends org.eclipse.wst.xsl.xalan.debugger.XalanStyleFrame</pre><hr><table width="100%" border="1"><tr bgcolor="#CCCCFF"><td width="100%"><h2>Constructor Summary</h2></td></tr><tr><td><code><strong><a href="#con_XalanRootStyleFrame">XalanRootStyleFrame</a></strong>(TracerEvent event)</code></td></tr></table><br><table width="100%" border="1"><tr cols="2" bgcolor="#CCCCFF"><td colspan="2" width="100%"><h2>Method Summary</h2></td></tr><tr valign="top"><td width="20%" align="right"><code>public void</code></td><td width="" align="left"><code><a href="#method_addVariable">addVariable</a>(org.eclipse.wst.xsl.xalan.debugger.XalanVariable xvar)</code><br>
+extends org.eclipse.wst.xsl.xalan.debugger.XalanStyleFrame</pre><hr><table width="100%" border="1"><tr bgcolor="#CCCCFF"><td width="100%"><h2>Constructor Summary</h2></td></tr><tr><td><code><strong><a href="#con_XalanRootStyleFrame">XalanRootStyleFrame</a></strong>(org.apache.xalan.trace.TracerEvent event)</code></td></tr></table><br><table width="100%" border="1"><tr cols="2" bgcolor="#CCCCFF"><td colspan="2" width="100%"><h2>Method Summary</h2></td></tr><tr valign="top"><td width="20%" align="right"><code>public void</code></td><td width="" align="left"><code><a href="#method_addVariable">addVariable</a>(org.eclipse.wst.xsl.xalan.debugger.XalanVariable xvar)</code><br>
                &nbsp;&nbsp;&nbsp;&nbsp;
                </td></tr><tr valign="top"><td width="20%" align="right"><code>protected java.util.List</code></td><td width="" align="left"><code><a href="#method_getGlobals">getGlobals</a>()</code><br>
                &nbsp;&nbsp;&nbsp;&nbsp;
@@ -8,6 +8,6 @@
                &nbsp;&nbsp;&nbsp;&nbsp;
                Gets a Variable by ID</td></tr></table><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
                   Constructor Detail
-               </h2></td></tr></table><h2><a name="con_XalanRootStyleFrame">XalanRootStyleFrame</a></h2><p><code>public <strong>XalanRootStyleFrame</strong>(TracerEvent event)</code></p><p></p><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+               </h2></td></tr></table><h2><a name="con_XalanRootStyleFrame">XalanRootStyleFrame</a></h2><p><code>public <strong>XalanRootStyleFrame</strong>(org.apache.xalan.trace.TracerEvent event)</code></p><p></p><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
                   Methods Detail
                </h2></td></tr></table><h2><a name="method_addVariable">addVariable</a></h2><p><code>public void <strong>addVariable</strong>(org.eclipse.wst.xsl.xalan.debugger.XalanVariable xvar)</code></p><p></p><h3>Parameters</h3><p><code>xvar</code></p><hr><h2><a name="method_getGlobals">getGlobals</a></h2><p><code>protected java.util.List <strong>getGlobals</strong>()</code></p><p></p><h3>Returns</h3><p><code>java.util.List</code></p><hr><h2><a name="method_getVariable">getVariable</a></h2><p><code>public Variable <strong>getVariable</strong>(int id)</code></p><p>Gets a Variable by ID</p><h3>Parameters</h3><p><code>id</code></p><h3>Returns</h3><p><code>Variable</code></p><hr></body></html>
\ No newline at end of file
diff --git a/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.xalan.debugger.XalanStyleFrame.html b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.xalan.debugger.XalanStyleFrame.html
index a756d3e..0023039 100644
--- a/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.xalan.debugger.XalanStyleFrame.html
+++ b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.xalan.debugger.XalanStyleFrame.html
@@ -1,10 +1,10 @@
 <html><body><p><font size="+1"><strong>Package org.eclipse.wst.xsl.xalan.debugger</strong></font></p><hr><h2><font size="-1"><strong>org.eclipse.wst.xsl.xalan.debugger</strong></font><br>
                Class XalanStyleFrame</h2><br><hr><pre>public class <strong>XalanStyleFrame</strong>
-extends StyleFrame</pre><hr><table width="100%" border="1"><tr cols="2" bgcolor="#CCCCFF"><td colspan="2" width="100%"><h2>Field Summary</h2></td></tr><tr valign="top"><td width="20%" align="right"><code>package-private TracerEvent</code></td><td width="80%" align="left"><code><a href="#field_event">event</a></code><br>
+extends StyleFrame</pre><hr><table width="100%" border="1"><tr cols="2" bgcolor="#CCCCFF"><td colspan="2" width="100%"><h2>Field Summary</h2></td></tr><tr valign="top"><td width="20%" align="right"><code>package-private org.apache.xalan.trace.TracerEvent</code></td><td width="80%" align="left"><code><a href="#field_event">event</a></code><br>
                &nbsp;&nbsp;&nbsp;&nbsp;
                </td></tr></table><br><table width="100%" border="1"><tr bgcolor="#CCCCFF"><td width="100%"><h2>Constructor Summary</h2></td></tr><tr><td><code><strong><a href="#con_XalanStyleFrame">XalanStyleFrame</a></strong>(StyleFrame parent
          ,
-      TracerEvent event)</code></td></tr></table><br><table width="100%" border="1"><tr cols="2" bgcolor="#CCCCFF"><td colspan="2" width="100%"><h2>Method Summary</h2></td></tr><tr valign="top"><td width="20%" align="right"><code>public int</code></td><td width="" align="left"><code><a href="#method_getCurrentLine">getCurrentLine</a>()</code><br>
+      org.apache.xalan.trace.TracerEvent event)</code></td></tr></table><br><table width="100%" border="1"><tr cols="2" bgcolor="#CCCCFF"><td colspan="2" width="100%"><h2>Method Summary</h2></td></tr><tr valign="top"><td width="20%" align="right"><code>public int</code></td><td width="" align="left"><code><a href="#method_getCurrentLine">getCurrentLine</a>()</code><br>
                &nbsp;&nbsp;&nbsp;&nbsp;
                </td></tr><tr valign="top"><td width="20%" align="right"><code>public java.lang.String</code></td><td width="" align="left"><code><a href="#method_getFilename">getFilename</a>()</code><br>
                &nbsp;&nbsp;&nbsp;&nbsp;
@@ -18,18 +18,18 @@
                &nbsp;&nbsp;&nbsp;&nbsp;
                </td></tr><tr valign="top"><td width="20%" align="right"><code>public java.util.List</code></td><td width="" align="left"><code><a href="#method_getVariableStack">getVariableStack</a>()</code><br>
                &nbsp;&nbsp;&nbsp;&nbsp;
-               </td></tr><tr valign="top"><td width="20%" align="right"><code>public TracerEvent</code></td><td width="" align="left"><code><a href="#method_peekElement">peekElement</a>()</code><br>
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public org.apache.xalan.trace.TracerEvent</code></td><td width="" align="left"><code><a href="#method_peekElement">peekElement</a>()</code><br>
                &nbsp;&nbsp;&nbsp;&nbsp;
-               </td></tr><tr valign="top"><td width="20%" align="right"><code>public TracerEvent</code></td><td width="" align="left"><code><a href="#method_popElement">popElement</a>()</code><br>
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public org.apache.xalan.trace.TracerEvent</code></td><td width="" align="left"><code><a href="#method_popElement">popElement</a>()</code><br>
                &nbsp;&nbsp;&nbsp;&nbsp;
-               </td></tr><tr valign="top"><td width="20%" align="right"><code>public void</code></td><td width="" align="left"><code><a href="#method_pushElement">pushElement</a>(TracerEvent e)</code><br>
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public void</code></td><td width="" align="left"><code><a href="#method_pushElement">pushElement</a>(org.apache.xalan.trace.TracerEvent e)</code><br>
                &nbsp;&nbsp;&nbsp;&nbsp;
                </td></tr></table><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
                   Field Detail
-               </h2></td></tr></table><h2><a name="field_event">event</a></h2><p><code>package-private TracerEvent <strong>event</strong></code></p><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+               </h2></td></tr></table><h2><a name="field_event">event</a></h2><p><code>package-private org.apache.xalan.trace.TracerEvent <strong>event</strong></code></p><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
                   Constructor Detail
                </h2></td></tr></table><h2><a name="con_XalanStyleFrame">XalanStyleFrame</a></h2><p><code>public <strong>XalanStyleFrame</strong>(StyleFrame parent
          ,
-      TracerEvent event)</code></p><p></p><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+      org.apache.xalan.trace.TracerEvent event)</code></p><p></p><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
                   Methods Detail
-               </h2></td></tr></table><h2><a name="method_getCurrentLine">getCurrentLine</a></h2><p><code>public int <strong>getCurrentLine</strong>()</code></p><p></p><h3>Returns</h3><p><code>int</code></p><hr><h2><a name="method_getFilename">getFilename</a></h2><p><code>public java.lang.String <strong>getFilename</strong>()</code></p><p></p><h3>Returns</h3><p><code>java.lang.String</code></p><hr><h2><a name="method_getGlobals">getGlobals</a></h2><p><code>protected java.util.List <strong>getGlobals</strong>()</code></p><p></p><h3>Returns</h3><p><code>java.util.List</code></p><hr><h2><a name="method_getName">getName</a></h2><p><code>public java.lang.String <strong>getName</strong>()</code></p><p></p><h3>Returns</h3><p><code>java.lang.String</code></p><hr><h2><a name="method_getSourceCurrentLine">getSourceCurrentLine</a></h2><p><code>public int <strong>getSourceCurrentLine</strong>()</code></p><p></p><h3>Returns</h3><p><code>int</code></p><hr><h2><a name="method_getSourceFilename">getSourceFilename</a></h2><p><code>public java.lang.String <strong>getSourceFilename</strong>()</code></p><p></p><h3>Returns</h3><p><code>java.lang.String</code></p><hr><h2><a name="method_getVariableStack">getVariableStack</a></h2><p><code>public java.util.List <strong>getVariableStack</strong>()</code></p><p></p><h3>Returns</h3><p><code>java.util.List</code></p><hr><h2><a name="method_peekElement">peekElement</a></h2><p><code>public TracerEvent <strong>peekElement</strong>()</code></p><p></p><h3>Returns</h3><p><code>TracerEvent</code></p><hr><h2><a name="method_popElement">popElement</a></h2><p><code>public TracerEvent <strong>popElement</strong>()</code></p><p></p><h3>Returns</h3><p><code>TracerEvent</code></p><hr><h2><a name="method_pushElement">pushElement</a></h2><p><code>public void <strong>pushElement</strong>(TracerEvent e)</code></p><p></p><h3>Parameters</h3><p><code>e</code></p><hr></body></html>
\ No newline at end of file
+               </h2></td></tr></table><h2><a name="method_getCurrentLine">getCurrentLine</a></h2><p><code>public int <strong>getCurrentLine</strong>()</code></p><p></p><h3>Returns</h3><p><code>int</code></p><hr><h2><a name="method_getFilename">getFilename</a></h2><p><code>public java.lang.String <strong>getFilename</strong>()</code></p><p></p><h3>Returns</h3><p><code>java.lang.String</code></p><hr><h2><a name="method_getGlobals">getGlobals</a></h2><p><code>protected java.util.List <strong>getGlobals</strong>()</code></p><p></p><h3>Returns</h3><p><code>java.util.List</code></p><hr><h2><a name="method_getName">getName</a></h2><p><code>public java.lang.String <strong>getName</strong>()</code></p><p></p><h3>Returns</h3><p><code>java.lang.String</code></p><hr><h2><a name="method_getSourceCurrentLine">getSourceCurrentLine</a></h2><p><code>public int <strong>getSourceCurrentLine</strong>()</code></p><p></p><h3>Returns</h3><p><code>int</code></p><hr><h2><a name="method_getSourceFilename">getSourceFilename</a></h2><p><code>public java.lang.String <strong>getSourceFilename</strong>()</code></p><p></p><h3>Returns</h3><p><code>java.lang.String</code></p><hr><h2><a name="method_getVariableStack">getVariableStack</a></h2><p><code>public java.util.List <strong>getVariableStack</strong>()</code></p><p></p><h3>Returns</h3><p><code>java.util.List</code></p><hr><h2><a name="method_peekElement">peekElement</a></h2><p><code>public org.apache.xalan.trace.TracerEvent <strong>peekElement</strong>()</code></p><p></p><h3>Returns</h3><p><code>org.apache.xalan.trace.TracerEvent</code></p><hr><h2><a name="method_popElement">popElement</a></h2><p><code>public org.apache.xalan.trace.TracerEvent <strong>popElement</strong>()</code></p><p></p><h3>Returns</h3><p><code>org.apache.xalan.trace.TracerEvent</code></p><hr><h2><a name="method_pushElement">pushElement</a></h2><p><code>public void <strong>pushElement</strong>(org.apache.xalan.trace.TracerEvent e)</code></p><p></p><h3>Parameters</h3><p><code>e</code></p><hr></body></html>
\ No newline at end of file
diff --git a/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.xalan.debugger.XalanTraceListener.html b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.xalan.debugger.XalanTraceListener.html
index 9e5bb26..062e7e5 100644
--- a/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.xalan.debugger.XalanTraceListener.html
+++ b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.xalan.debugger.XalanTraceListener.html
@@ -1,23 +1,23 @@
 <html><body><p><font size="+1"><strong>Package org.eclipse.wst.xsl.xalan.debugger</strong></font></p><hr><h2><font size="-1"><strong>org.eclipse.wst.xsl.xalan.debugger</strong></font><br>
                Class XalanTraceListener</h2><br><hr><pre>public class <strong>XalanTraceListener</strong>
-extends java.lang.Object</pre><hr><table width="100%" border="1"><tr bgcolor="#CCCCFF"><td width="100%"><h2>Constructor Summary</h2></td></tr><tr><td><code><strong><a href="#con_XalanTraceListener">XalanTraceListener</a></strong>(org.eclipse.wst.xsl.xalan.debugger.XalanDebugger debugger)</code></td></tr></table><br><table width="100%" border="1"><tr cols="2" bgcolor="#CCCCFF"><td colspan="2" width="100%"><h2>Method Summary</h2></td></tr><tr valign="top"><td width="20%" align="right"><code>public void</code></td><td width="" align="left"><code><a href="#method_extension">extension</a>(ExtensionEvent ee)</code><br>
+extends java.lang.Object</pre><hr><table width="100%" border="1"><tr bgcolor="#CCCCFF"><td width="100%"><h2>Constructor Summary</h2></td></tr><tr><td><code><strong><a href="#con_XalanTraceListener">XalanTraceListener</a></strong>(org.eclipse.wst.xsl.xalan.debugger.XalanDebugger debugger)</code></td></tr></table><br><table width="100%" border="1"><tr cols="2" bgcolor="#CCCCFF"><td colspan="2" width="100%"><h2>Method Summary</h2></td></tr><tr valign="top"><td width="20%" align="right"><code>public void</code></td><td width="" align="left"><code><a href="#method_extension">extension</a>(org.apache.xalan.trace.ExtensionEvent ee)</code><br>
                &nbsp;&nbsp;&nbsp;&nbsp;
-               </td></tr><tr valign="top"><td width="20%" align="right"><code>public void</code></td><td width="" align="left"><code><a href="#method_extensionEnd">extensionEnd</a>(ExtensionEvent ee)</code><br>
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public void</code></td><td width="" align="left"><code><a href="#method_extensionEnd">extensionEnd</a>(org.apache.xalan.trace.ExtensionEvent ee)</code><br>
                &nbsp;&nbsp;&nbsp;&nbsp;
-               </td></tr><tr valign="top"><td width="20%" align="right"><code>public void</code></td><td width="" align="left"><code><a href="#method_generated">generated</a>(GenerateEvent ev)</code><br>
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public void</code></td><td width="" align="left"><code><a href="#method_generated">generated</a>(org.apache.xalan.trace.GenerateEvent ev)</code><br>
                &nbsp;&nbsp;&nbsp;&nbsp;
                </td></tr><tr valign="top"><td width="20%" align="right"><code>public Variable</code></td><td width="" align="left"><code><a href="#method_getVariable">getVariable</a>(int id)</code><br>
                &nbsp;&nbsp;&nbsp;&nbsp;
-               </td></tr><tr valign="top"><td width="20%" align="right"><code>public void</code></td><td width="" align="left"><code><a href="#method_selected">selected</a>(SelectionEvent ev)</code><br>
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public void</code></td><td width="" align="left"><code><a href="#method_selected">selected</a>(org.apache.xalan.trace.SelectionEvent ev)</code><br>
                &nbsp;&nbsp;&nbsp;&nbsp;
-               </td></tr><tr valign="top"><td width="20%" align="right"><code>public void</code></td><td width="" align="left"><code><a href="#method_selectEnd">selectEnd</a>(EndSelectionEvent ev)</code><br>
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public void</code></td><td width="" align="left"><code><a href="#method_selectEnd">selectEnd</a>(org.apache.xalan.trace.EndSelectionEvent ev)</code><br>
                &nbsp;&nbsp;&nbsp;&nbsp;
-               </td></tr><tr valign="top"><td width="20%" align="right"><code>public void</code></td><td width="" align="left"><code><a href="#method_trace">trace</a>(TracerEvent ev)</code><br>
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public void</code></td><td width="" align="left"><code><a href="#method_trace">trace</a>(org.apache.xalan.trace.TracerEvent ev)</code><br>
                &nbsp;&nbsp;&nbsp;&nbsp;
-               </td></tr><tr valign="top"><td width="20%" align="right"><code>public void</code></td><td width="" align="left"><code><a href="#method_traceEnd">traceEnd</a>(TracerEvent ev)</code><br>
+               </td></tr><tr valign="top"><td width="20%" align="right"><code>public void</code></td><td width="" align="left"><code><a href="#method_traceEnd">traceEnd</a>(org.apache.xalan.trace.TracerEvent ev)</code><br>
                &nbsp;&nbsp;&nbsp;&nbsp;
                </td></tr></table><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
                   Constructor Detail
                </h2></td></tr></table><h2><a name="con_XalanTraceListener">XalanTraceListener</a></h2><p><code>public <strong>XalanTraceListener</strong>(org.eclipse.wst.xsl.xalan.debugger.XalanDebugger debugger)</code></p><p></p><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
                   Methods Detail
-               </h2></td></tr></table><h2><a name="method_extension">extension</a></h2><p><code>public void <strong>extension</strong>(ExtensionEvent ee)</code></p><p></p><h3>Parameters</h3><p><code>ee</code></p><hr><h2><a name="method_extensionEnd">extensionEnd</a></h2><p><code>public void <strong>extensionEnd</strong>(ExtensionEvent ee)</code></p><p></p><h3>Parameters</h3><p><code>ee</code></p><hr><h2><a name="method_generated">generated</a></h2><p><code>public void <strong>generated</strong>(GenerateEvent ev)</code></p><p></p><h3>Parameters</h3><p><code>ev</code></p><hr><h2><a name="method_getVariable">getVariable</a></h2><p><code>public Variable <strong>getVariable</strong>(int id)</code></p><p></p><h3>Parameters</h3><p><code>id</code></p><h3>Returns</h3><p><code>Variable</code></p><hr><h2><a name="method_selected">selected</a></h2><p><code>public void <strong>selected</strong>(SelectionEvent ev)</code></p><p></p><h3>Parameters</h3><p><code>ev</code></p><h3>Throws:</h3><p><code>javax.xml.transform.TransformerException</code></p><hr><h2><a name="method_selectEnd">selectEnd</a></h2><p><code>public void <strong>selectEnd</strong>(EndSelectionEvent ev)</code></p><p></p><h3>Parameters</h3><p><code>ev</code></p><h3>Throws:</h3><p><code>javax.xml.transform.TransformerException</code></p><hr><h2><a name="method_trace">trace</a></h2><p><code>public void <strong>trace</strong>(TracerEvent ev)</code></p><p></p><h3>Parameters</h3><p><code>ev</code></p><hr><h2><a name="method_traceEnd">traceEnd</a></h2><p><code>public void <strong>traceEnd</strong>(TracerEvent ev)</code></p><p></p><h3>Parameters</h3><p><code>ev</code></p><hr></body></html>
\ No newline at end of file
+               </h2></td></tr></table><h2><a name="method_extension">extension</a></h2><p><code>public void <strong>extension</strong>(org.apache.xalan.trace.ExtensionEvent ee)</code></p><p></p><h3>Parameters</h3><p><code>ee</code></p><hr><h2><a name="method_extensionEnd">extensionEnd</a></h2><p><code>public void <strong>extensionEnd</strong>(org.apache.xalan.trace.ExtensionEvent ee)</code></p><p></p><h3>Parameters</h3><p><code>ee</code></p><hr><h2><a name="method_generated">generated</a></h2><p><code>public void <strong>generated</strong>(org.apache.xalan.trace.GenerateEvent ev)</code></p><p></p><h3>Parameters</h3><p><code>ev</code></p><hr><h2><a name="method_getVariable">getVariable</a></h2><p><code>public Variable <strong>getVariable</strong>(int id)</code></p><p></p><h3>Parameters</h3><p><code>id</code></p><h3>Returns</h3><p><code>Variable</code></p><hr><h2><a name="method_selected">selected</a></h2><p><code>public void <strong>selected</strong>(org.apache.xalan.trace.SelectionEvent ev)</code></p><p></p><h3>Parameters</h3><p><code>ev</code></p><h3>Throws:</h3><p><code>javax.xml.transform.TransformerException</code></p><hr><h2><a name="method_selectEnd">selectEnd</a></h2><p><code>public void <strong>selectEnd</strong>(org.apache.xalan.trace.EndSelectionEvent ev)</code></p><p></p><h3>Parameters</h3><p><code>ev</code></p><h3>Throws:</h3><p><code>javax.xml.transform.TransformerException</code></p><hr><h2><a name="method_trace">trace</a></h2><p><code>public void <strong>trace</strong>(org.apache.xalan.trace.TracerEvent ev)</code></p><p></p><h3>Parameters</h3><p><code>ev</code></p><hr><h2><a name="method_traceEnd">traceEnd</a></h2><p><code>public void <strong>traceEnd</strong>(org.apache.xalan.trace.TracerEvent ev)</code></p><p></p><h3>Parameters</h3><p><code>ev</code></p><hr></body></html>
\ No newline at end of file
diff --git a/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.xalan.debugger.XalanVariable.html b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.xalan.debugger.XalanVariable.html
index e96a818..6c753ad 100644
--- a/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.xalan.debugger.XalanVariable.html
+++ b/docs/org.eclipse.wst.xsl.sdk.documentation/doc/html/org.eclipse.wst.xsl.xalan.debugger.XalanVariable.html
@@ -2,13 +2,13 @@
                Class XalanVariable</h2><br><hr><pre>public class <strong>XalanVariable</strong>
 extends Variable</pre><hr><table width="100%" border="1"><tr bgcolor="#CCCCFF"><td width="100%"><h2>Constructor Summary</h2></td></tr><tr><td><code><strong><a href="#con_XalanVariable">XalanVariable</a></strong>(org.eclipse.wst.xsl.xalan.debugger.XalanStyleFrame xalanStyleFrame
          ,
-      VariableStack varStack
+      org.apache.xpath.VariableStack varStack
          ,
       java.lang.String scope
          ,
       int slotNumber
          ,
-      ElemVariable elemVariable)</code></td></tr></table><br><table width="100%" border="1"><tr cols="2" bgcolor="#CCCCFF"><td colspan="2" width="100%"><h2>Method Summary</h2></td></tr><tr valign="top"><td width="20%" align="right"><code>public int</code></td><td width="" align="left"><code><a href="#method_compareTo">compareTo</a>(java.lang.Object arg0)</code><br>
+      org.apache.xalan.templates.ElemVariable elemVariable)</code></td></tr></table><br><table width="100%" border="1"><tr cols="2" bgcolor="#CCCCFF"><td colspan="2" width="100%"><h2>Method Summary</h2></td></tr><tr valign="top"><td width="20%" align="right"><code>public int</code></td><td width="" align="left"><code><a href="#method_compareTo">compareTo</a>(java.lang.Object arg0)</code><br>
                &nbsp;&nbsp;&nbsp;&nbsp;
                </td></tr><tr valign="top"><td width="20%" align="right"><code>public java.lang.String</code></td><td width="" align="left"><code><a href="#method_getType">getType</a>()</code><br>
                &nbsp;&nbsp;&nbsp;&nbsp;
@@ -18,12 +18,12 @@
                   Constructor Detail
                </h2></td></tr></table><h2><a name="con_XalanVariable">XalanVariable</a></h2><p><code>public <strong>XalanVariable</strong>(org.eclipse.wst.xsl.xalan.debugger.XalanStyleFrame xalanStyleFrame
          ,
-      VariableStack varStack
+      org.apache.xpath.VariableStack varStack
          ,
       java.lang.String scope
          ,
       int slotNumber
          ,
-      ElemVariable elemVariable)</code></p><p></p><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
+      org.apache.xalan.templates.ElemVariable elemVariable)</code></p><p></p><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
                   Methods Detail
                </h2></td></tr></table><h2><a name="method_compareTo">compareTo</a></h2><p><code>public int <strong>compareTo</strong>(java.lang.Object arg0)</code></p><p></p><h3>Parameters</h3><p><code>arg0</code></p><h3>Returns</h3><p><code>int</code></p><hr><h2><a name="method_getType">getType</a></h2><p><code>public java.lang.String <strong>getType</strong>()</code></p><p></p><h3>Returns</h3><p><code>java.lang.String</code></p><hr><h2><a name="method_getValue">getValue</a></h2><p><code>public java.lang.String <strong>getValue</strong>()</code></p><p></p><h3>Returns</h3><p><code>java.lang.String</code></p><hr></body></html>
\ No newline at end of file
diff --git a/docs/org.eclipse.wst.xsl.sdk.documentation/toc.xml b/docs/org.eclipse.wst.xsl.sdk.documentation/toc.xml
index f576053..b5806ad 100644
--- a/docs/org.eclipse.wst.xsl.sdk.documentation/toc.xml
+++ b/docs/org.eclipse.wst.xsl.sdk.documentation/toc.xml
@@ -1,47 +1,565 @@
-<?xml version="1.0" encoding="UTF-8"?><toc label="XSL Tools SDK Documentation">
-   <topic label="Reference">
-      <topic label="org.eclipse.wst.xml.xpath.core">
-         <topic href="doc/html/org.eclipse.wst.xml.xpath.core.XPathCorePlugin.html" label="org.eclipse.wst.xml.xpath.core.XPathCorePlugin"/>
-      </topic>
-      <topic label="org.eclipse.wst.xml.xpath.core.util">
-         <topic href="doc/html/org.eclipse.wst.xml.xpath.core.util.XPath20Helper.html" label="org.eclipse.wst.xml.xpath.core.util.XPath20Helper"/>
-         <topic href="doc/html/org.eclipse.wst.xml.xpath.core.util.XSLTXPathHelper.html" label="org.eclipse.wst.xml.xpath.core.util.XSLTXPathHelper"/>
-      </topic>
-      <topic label="org.eclipse.wst.xsl.core">
-         <topic href="doc/html/org.eclipse.wst.xsl.core.ValidationPreferences.html" label="org.eclipse.wst.xsl.core.ValidationPreferences"/>
-         <topic href="doc/html/org.eclipse.wst.xsl.core.XSLCore.html" label="org.eclipse.wst.xsl.core.XSLCore"/>
-      </topic>
-      <topic label="org.eclipse.wst.xsl.core.resolver">
-         <topic href="doc/html/org.eclipse.wst.xsl.core.resolver.ResolverExtension.html" label="org.eclipse.wst.xsl.core.resolver.ResolverExtension"/>
-         <topic href="doc/html/org.eclipse.wst.xsl.core.resolver.StopParsingException.html" label="org.eclipse.wst.xsl.core.resolver.StopParsingException"/>
-         <topic href="doc/html/org.eclipse.wst.xsl.core.resolver.XSLVersionHandler.html" label="org.eclipse.wst.xsl.core.resolver.XSLVersionHandler"/>
-      </topic>
-      <topic label="org.eclipse.wst.xsl.xalan.debugger">
-         <topic href="doc/html/org.eclipse.wst.xsl.xalan.debugger.XalanDebugger.html" label="org.eclipse.wst.xsl.xalan.debugger.XalanDebugger"/>
-         <topic href="doc/html/org.eclipse.wst.xsl.xalan.debugger.XalanPrintTraceListener.html" label="org.eclipse.wst.xsl.xalan.debugger.XalanPrintTraceListener"/>
-         <topic href="doc/html/org.eclipse.wst.xsl.xalan.debugger.XalanRootStyleFrame.html" label="org.eclipse.wst.xsl.xalan.debugger.XalanRootStyleFrame"/>
-         <topic href="doc/html/org.eclipse.wst.xsl.xalan.debugger.XalanStyleFrame.html" label="org.eclipse.wst.xsl.xalan.debugger.XalanStyleFrame"/>
-         <topic href="doc/html/org.eclipse.wst.xsl.xalan.debugger.XalanTraceListener.html" label="org.eclipse.wst.xsl.xalan.debugger.XalanTraceListener"/>
-         <topic href="doc/html/org.eclipse.wst.xsl.xalan.debugger.XalanVariable.html" label="org.eclipse.wst.xsl.xalan.debugger.XalanVariable"/>
-      </topic>
-   </topic>
-   <topic label="Extension Points">
-     <topic label="JAXP Debugger">
-      <topic href="doc/html/extension_point/org_eclipse_wst_xsl_jaxp_launching_debugger.html" label="org.eclipse.wst.xsl.jaxp.launching.debugger">
-      </topic>
-   </topic>
-   <topic label="JAXP Launching">
-      <topic href="doc/html/extension_point/org_eclipse_wst_xsl_jaxp_launching_invoke.html" label="org.eclipse.wst.xsl.jaxp.launching.invoke">
-      </topic>
-      <topic href="doc/html/extension_point/org_eclipse_wst_xsl_jaxp_launching_processor.html" label="org.eclipse.wst.xsl.jaxp.launching.processor">
-      </topic>
-      <topic href="doc/html/extension_point/org_eclipse_wst_xsl_jaxp_launching_processorType.html" label="org.eclipse.wst.xsl.jaxp.processorType">
-      </topic>
-   </topic>
-   <topic label="XSLT Editor">
-      <topic href="doc/html/extension_point/org_eclipse_wst_xsl_ui_contentAssistProcessor.html" label="org.eclipse.wst.xsl.ui.contentAssistProcessor">
-      </topic>
-   </topic>
-         
-   </topic>
+<?xml version="1.0" encoding="UTF-8"?>
+<toc label="XSL Tools SDK Documentation">
+	<topic label="Reference">
+		<topic label="org.eclipse.wst.xml.xpath.core">
+			<topic href="doc/html/org.eclipse.wst.xml.xpath.core.XPathCorePlugin.html"
+				label="org.eclipse.wst.xml.xpath.core.XPathCorePlugin" />
+			<topic
+				href="doc/html/org.eclipse.wst.xml.xpath.core.XPathProcessorPreferences.html"
+				label="org.eclipse.wst.xml.xpath.core.XPathProcessorPreferences" />
+		</topic>
+		<topic label="org.eclipse.wst.xml.xpath.core.internal.preferences">
+			<topic
+				href="doc/html/org.eclipse.wst.xml.xpath.core.internal.preferences.PreferenceInitializer.html"
+				label="org.eclipse.wst.xml.xpath.core.internal.preferences.PreferenceInitializer" />
+		</topic>
+		<topic label="org.eclipse.wst.xml.xpath.core.util">
+			<topic
+				href="doc/html/org.eclipse.wst.xml.xpath.core.util.NodeListImpl.html"
+				label="org.eclipse.wst.xml.xpath.core.util.NodeListImpl" />
+			<topic
+				href="doc/html/org.eclipse.wst.xml.xpath.core.util.XPath20Helper.html"
+				label="org.eclipse.wst.xml.xpath.core.util.XPath20Helper" />
+			<topic
+				href="doc/html/org.eclipse.wst.xml.xpath.core.util.XPathCoreHelper.html"
+				label="org.eclipse.wst.xml.xpath.core.util.XPathCoreHelper" />
+			<topic
+				href="doc/html/org.eclipse.wst.xml.xpath.core.util.XSLTXPathHelper.html"
+				label="org.eclipse.wst.xml.xpath.core.util.XSLTXPathHelper" />
+		</topic>
+		<topic label="org.eclipse.wst.xsl.core">
+			<topic href="doc/html/org.eclipse.wst.xsl.core.ValidationPreferences.html"
+				label="org.eclipse.wst.xsl.core.ValidationPreferences" />
+			<topic href="doc/html/org.eclipse.wst.xsl.core.XSLCore.html"
+				label="org.eclipse.wst.xsl.core.XSLCore" />
+		</topic>
+		<topic label="org.eclipse.wst.xsl.core.internal">
+			<topic href="doc/html/org.eclipse.wst.xsl.core.internal.Messages.html"
+				label="org.eclipse.wst.xsl.core.internal.Messages" />
+			<topic
+				href="doc/html/org.eclipse.wst.xsl.core.internal.XSLCorePlugin.html"
+				label="org.eclipse.wst.xsl.core.internal.XSLCorePlugin" />
+		</topic>
+		<topic label="org.eclipse.wst.xsl.core.internal.ant">
+			<topic
+				href="doc/html/org.eclipse.wst.xsl.core.internal.ant.XIncludeTask.html"
+				label="org.eclipse.wst.xsl.core.internal.ant.XIncludeTask" />
+		</topic>
+		<topic label="org.eclipse.wst.xsl.core.internal.model">
+			<topic
+				href="doc/html/org.eclipse.wst.xsl.core.internal.model.StylesheetBuilder.html"
+				label="org.eclipse.wst.xsl.core.internal.model.StylesheetBuilder" />
+			<topic
+				href="doc/html/org.eclipse.wst.xsl.core.internal.model.StylesheetParser.html"
+				label="org.eclipse.wst.xsl.core.internal.model.StylesheetParser" />
+			<topic
+				href="doc/html/org.eclipse.wst.xsl.core.internal.model.StylesheetParserData.html"
+				label="org.eclipse.wst.xsl.core.internal.model.StylesheetParserData" />
+			<topic
+				href="doc/html/org.eclipse.wst.xsl.core.internal.model.XSLElementFactory.html"
+				label="org.eclipse.wst.xsl.core.internal.model.XSLElementFactory" />
+			<topic
+				href="doc/html/org.eclipse.wst.xsl.core.internal.model.XSLModelObjectFactory.html"
+				label="org.eclipse.wst.xsl.core.internal.model.XSLModelObjectFactory" />
+		</topic>
+		<topic label="org.eclipse.wst.xsl.core.internal.preferences">
+			<topic
+				href="doc/html/org.eclipse.wst.xsl.core.internal.preferences.PreferenceInitializer.html"
+				label="org.eclipse.wst.xsl.core.internal.preferences.PreferenceInitializer" />
+		</topic>
+		<topic label="org.eclipse.wst.xsl.core.internal.util">
+			<topic href="doc/html/org.eclipse.wst.xsl.core.internal.util.Debug.html"
+				label="org.eclipse.wst.xsl.core.internal.util.Debug" />
+			<topic
+				href="doc/html/org.eclipse.wst.xsl.core.internal.util.FileUtil.html"
+				label="org.eclipse.wst.xsl.core.internal.util.FileUtil" />
+			<topic
+				href="doc/html/org.eclipse.wst.xsl.core.internal.util.StructuredDocumentUtil.html"
+				label="org.eclipse.wst.xsl.core.internal.util.StructuredDocumentUtil" />
+			<topic
+				href="doc/html/org.eclipse.wst.xsl.core.internal.util.XMLContentType.html"
+				label="org.eclipse.wst.xsl.core.internal.util.XMLContentType" />
+		</topic>
+		<topic label="org.eclipse.wst.xsl.core.internal.validation">
+			<topic
+				href="doc/html/org.eclipse.wst.xsl.core.internal.validation.MaxErrorsExceededException.html"
+				label="org.eclipse.wst.xsl.core.internal.validation.MaxErrorsExceededException" />
+			<topic
+				href="doc/html/org.eclipse.wst.xsl.core.internal.validation.XSLValidationMessage.html"
+				label="org.eclipse.wst.xsl.core.internal.validation.XSLValidationMessage" />
+			<topic
+				href="doc/html/org.eclipse.wst.xsl.core.internal.validation.XSLValidationReport.html"
+				label="org.eclipse.wst.xsl.core.internal.validation.XSLValidationReport" />
+			<topic
+				href="doc/html/org.eclipse.wst.xsl.core.internal.validation.XSLValidator.html"
+				label="org.eclipse.wst.xsl.core.internal.validation.XSLValidator" />
+		</topic>
+		<topic label="org.eclipse.wst.xsl.core.internal.validation.eclipse">
+			<topic
+				href="doc/html/org.eclipse.wst.xsl.core.internal.validation.eclipse.Validator.html"
+				label="org.eclipse.wst.xsl.core.internal.validation.eclipse.Validator" />
+			<topic
+				href="doc/html/org.eclipse.wst.xsl.core.internal.validation.eclipse.Validator2.html"
+				label="org.eclipse.wst.xsl.core.internal.validation.eclipse.Validator2" />
+			<topic
+				href="doc/html/org.eclipse.wst.xsl.core.internal.validation.eclipse.XSLValidationReport.html"
+				label="org.eclipse.wst.xsl.core.internal.validation.eclipse.XSLValidationReport" />
+		</topic>
+		<topic label="org.eclipse.wst.xsl.core.internal.xinclude">
+			<topic
+				href="doc/html/org.eclipse.wst.xsl.core.internal.xinclude.XIncluder.html"
+				label="org.eclipse.wst.xsl.core.internal.xinclude.XIncluder" />
+		</topic>
+		<topic label="org.eclipse.wst.xsl.core.model">
+			<topic href="doc/html/org.eclipse.wst.xsl.core.model.CallTemplate.html"
+				label="org.eclipse.wst.xsl.core.model.CallTemplate" />
+			<topic href="doc/html/org.eclipse.wst.xsl.core.model.Function.html"
+				label="org.eclipse.wst.xsl.core.model.Function" />
+			<topic href="doc/html/org.eclipse.wst.xsl.core.model.Import.html"
+				label="org.eclipse.wst.xsl.core.model.Import" />
+			<topic href="doc/html/org.eclipse.wst.xsl.core.model.Include.html"
+				label="org.eclipse.wst.xsl.core.model.Include" />
+			<topic href="doc/html/org.eclipse.wst.xsl.core.model.Parameter.html"
+				label="org.eclipse.wst.xsl.core.model.Parameter" />
+			<topic href="doc/html/org.eclipse.wst.xsl.core.model.Stylesheet.html"
+				label="org.eclipse.wst.xsl.core.model.Stylesheet" />
+			<topic href="doc/html/org.eclipse.wst.xsl.core.model.StylesheetModel.html"
+				label="org.eclipse.wst.xsl.core.model.StylesheetModel" />
+			<topic href="doc/html/org.eclipse.wst.xsl.core.model.Template.html"
+				label="org.eclipse.wst.xsl.core.model.Template" />
+			<topic href="doc/html/org.eclipse.wst.xsl.core.model.Variable.html"
+				label="org.eclipse.wst.xsl.core.model.Variable" />
+			<topic href="doc/html/org.eclipse.wst.xsl.core.model.XSLAttribute.html"
+				label="org.eclipse.wst.xsl.core.model.XSLAttribute" />
+			<topic href="doc/html/org.eclipse.wst.xsl.core.model.XSLElement.html"
+				label="org.eclipse.wst.xsl.core.model.XSLElement" />
+			<topic href="doc/html/org.eclipse.wst.xsl.core.model.XSLModelObject.html"
+				label="org.eclipse.wst.xsl.core.model.XSLModelObject" />
+			<topic
+				href="doc/html/org.eclipse.wst.xsl.core.model.XSLModelObject.Type.html"
+				label="org.eclipse.wst.xsl.core.model.XSLModelObject.Type" />
+			<topic
+				href="doc/html/org.eclipse.wst.xsl.core.model.XSLModelObject.Type.html"
+				label="org.eclipse.wst.xsl.core.model.XSLModelObject.Type" />
+			<topic href="doc/html/org.eclipse.wst.xsl.core.model.XSLNode.html"
+				label="org.eclipse.wst.xsl.core.model.XSLNode" />
+		</topic>
+		<topic label="org.eclipse.wst.xsl.core.resolver">
+			<topic
+				href="doc/html/org.eclipse.wst.xsl.core.resolver.ResolverExtension.html"
+				label="org.eclipse.wst.xsl.core.resolver.ResolverExtension" />
+			<topic
+				href="doc/html/org.eclipse.wst.xsl.core.resolver.StopParsingException.html"
+				label="org.eclipse.wst.xsl.core.resolver.StopParsingException" />
+			<topic
+				href="doc/html/org.eclipse.wst.xsl.core.resolver.XSLVersionHandler.html"
+				label="org.eclipse.wst.xsl.core.resolver.XSLVersionHandler" />
+		</topic>
+		<topic label="org.eclipse.wst.xsl.core.internal.encoding">
+			<topic
+				href="doc/html/org.eclipse.wst.xsl.core.internal.encoding.XSLDocumentLoader.html"
+				label="org.eclipse.wst.xsl.core.internal.encoding.XSLDocumentLoader" />
+		</topic>
+		<topic label="org.eclipse.wst.xsl.core.internal.modelhandler">
+			<topic
+				href="doc/html/org.eclipse.wst.xsl.core.internal.modelhandler.ModelHandlerForXSL.html"
+				label="org.eclipse.wst.xsl.core.internal.modelhandler.ModelHandlerForXSL" />
+			<topic
+				href="doc/html/org.eclipse.wst.xsl.core.internal.modelhandler.XSLModelLoader.html"
+				label="org.eclipse.wst.xsl.core.internal.modelhandler.XSLModelLoader" />
+		</topic>
+		<topic label="org.eclipse.wst.xsl.core.internal.parser">
+			<topic
+				href="doc/html/org.eclipse.wst.xsl.core.internal.parser.XSLSourceParser.html"
+				label="org.eclipse.wst.xsl.core.internal.parser.XSLSourceParser" />
+		</topic>
+		<topic label="org.eclipse.wst.xsl.core.internal.parser.regions">
+			<topic
+				href="doc/html/org.eclipse.wst.xsl.core.internal.parser.regions.XPathSeparatorRegion.html"
+				label="org.eclipse.wst.xsl.core.internal.parser.regions.XPathSeparatorRegion" />
+		</topic>
+		<topic label="org.eclipse.wst.xsl.core.internal.regions">
+			<topic
+				href="doc/html/org.eclipse.wst.xsl.core.internal.regions.XPathRegionContext.html"
+				label="org.eclipse.wst.xsl.core.internal.regions.XPathRegionContext" />
+			<topic
+				href="doc/html/org.eclipse.wst.xsl.core.internal.regions.XSLParserRegionFactory.html"
+				label="org.eclipse.wst.xsl.core.internal.regions.XSLParserRegionFactory" />
+		</topic>
+		<topic label="org.eclipse.wst.xsl.core.internal.text">
+			<topic
+				href="doc/html/org.eclipse.wst.xsl.core.internal.text.IXSLPartitions.html"
+				label="org.eclipse.wst.xsl.core.internal.text.IXSLPartitions" />
+		</topic>
+		<topic label="org.eclipse.wst.xsl.core.internal.text.rules">
+			<topic
+				href="doc/html/org.eclipse.wst.xsl.core.internal.text.rules.StructuredTextPartitionerForXSL.html"
+				label="org.eclipse.wst.xsl.core.internal.text.rules.StructuredTextPartitionerForXSL" />
+		</topic>
+		<topic label="org.eclipse.wst.xsl.ui.internal">
+			<topic href="doc/html/org.eclipse.wst.xsl.ui.internal.Messages.html"
+				label="org.eclipse.wst.xsl.ui.internal.Messages" />
+			<topic
+				href="doc/html/org.eclipse.wst.xsl.ui.internal.PreferenceInitializer.html"
+				label="org.eclipse.wst.xsl.ui.internal.PreferenceInitializer" />
+			<topic
+				href="doc/html/org.eclipse.wst.xsl.ui.internal.StructuredTextViewerConfigurationXSL.html"
+				label="org.eclipse.wst.xsl.ui.internal.StructuredTextViewerConfigurationXSL" />
+			<topic href="doc/html/org.eclipse.wst.xsl.ui.internal.XSLUIConstants.html"
+				label="org.eclipse.wst.xsl.ui.internal.XSLUIConstants" />
+			<topic href="doc/html/org.eclipse.wst.xsl.ui.internal.XSLUIPlugin.html"
+				label="org.eclipse.wst.xsl.ui.internal.XSLUIPlugin" />
+		</topic>
+		<topic label="org.eclipse.wst.xsl.ui.internal.actions">
+			<topic
+				href="doc/html/org.eclipse.wst.xsl.ui.internal.actions.NewDTDFileWizardDelegate.html"
+				label="org.eclipse.wst.xsl.ui.internal.actions.NewDTDFileWizardDelegate" />
+			<topic
+				href="doc/html/org.eclipse.wst.xsl.ui.internal.actions.NewWSDLFileWizardDelegate.html"
+				label="org.eclipse.wst.xsl.ui.internal.actions.NewWSDLFileWizardDelegate" />
+			<topic
+				href="doc/html/org.eclipse.wst.xsl.ui.internal.actions.NewWizardAction.html"
+				label="org.eclipse.wst.xsl.ui.internal.actions.NewWizardAction" />
+			<topic
+				href="doc/html/org.eclipse.wst.xsl.ui.internal.actions.NewXMLFileWizardDelegate.html"
+				label="org.eclipse.wst.xsl.ui.internal.actions.NewXMLFileWizardDelegate" />
+			<topic
+				href="doc/html/org.eclipse.wst.xsl.ui.internal.actions.NewXSDFileWizardDelegate.html"
+				label="org.eclipse.wst.xsl.ui.internal.actions.NewXSDFileWizardDelegate" />
+			<topic
+				href="doc/html/org.eclipse.wst.xsl.ui.internal.actions.NewXSLFileWizardDelegate.html"
+				label="org.eclipse.wst.xsl.ui.internal.actions.NewXSLFileWizardDelegate" />
+		</topic>
+		<topic label="org.eclipse.wst.xsl.ui.internal.contentassist">
+			<topic
+				href="doc/html/org.eclipse.wst.xsl.ui.internal.contentassist.AttributeContentAssist.html"
+				label="org.eclipse.wst.xsl.ui.internal.contentassist.AttributeContentAssist" />
+			<topic
+				href="doc/html/org.eclipse.wst.xsl.ui.internal.contentassist.CallTemplateContentAssistRequest.html"
+				label="org.eclipse.wst.xsl.ui.internal.contentassist.CallTemplateContentAssistRequest" />
+			<topic
+				href="doc/html/org.eclipse.wst.xsl.ui.internal.contentassist.ContentAssistProcessorFactory.html"
+				label="org.eclipse.wst.xsl.ui.internal.contentassist.ContentAssistProcessorFactory" />
+			<topic
+				href="doc/html/org.eclipse.wst.xsl.ui.internal.contentassist.ExcludeResultPrefixesContentAssist.html"
+				label="org.eclipse.wst.xsl.ui.internal.contentassist.ExcludeResultPrefixesContentAssist" />
+			<topic
+				href="doc/html/org.eclipse.wst.xsl.ui.internal.contentassist.SelectAttributeContentAssist.html"
+				label="org.eclipse.wst.xsl.ui.internal.contentassist.SelectAttributeContentAssist" />
+			<topic
+				href="doc/html/org.eclipse.wst.xsl.ui.internal.contentassist.TemplateModeAttributeContentAssist.html"
+				label="org.eclipse.wst.xsl.ui.internal.contentassist.TemplateModeAttributeContentAssist" />
+			<topic
+				href="doc/html/org.eclipse.wst.xsl.ui.internal.contentassist.TemplateNameAttributeContentAssist.html"
+				label="org.eclipse.wst.xsl.ui.internal.contentassist.TemplateNameAttributeContentAssist" />
+			<topic
+				href="doc/html/org.eclipse.wst.xsl.ui.internal.contentassist.TestAttributeContentAssist.html"
+				label="org.eclipse.wst.xsl.ui.internal.contentassist.TestAttributeContentAssist" />
+			<topic
+				href="doc/html/org.eclipse.wst.xsl.ui.internal.contentassist.XPathElementContentAssist.html"
+				label="org.eclipse.wst.xsl.ui.internal.contentassist.XPathElementContentAssist" />
+			<topic
+				href="doc/html/org.eclipse.wst.xsl.ui.internal.contentassist.XSLContentAssistProcessor.html"
+				label="org.eclipse.wst.xsl.ui.internal.contentassist.XSLContentAssistProcessor" />
+			<topic
+				href="doc/html/org.eclipse.wst.xsl.ui.internal.contentassist.XSLContentAssistRequestFactory.html"
+				label="org.eclipse.wst.xsl.ui.internal.contentassist.XSLContentAssistRequestFactory" />
+			<topic
+				href="doc/html/org.eclipse.wst.xsl.ui.internal.contentassist.XSLElementContentAssistRequest.html"
+				label="org.eclipse.wst.xsl.ui.internal.contentassist.XSLElementContentAssistRequest" />
+			<topic
+				href="doc/html/org.eclipse.wst.xsl.ui.internal.contentassist.XSLTemplateCompletionProcessor.html"
+				label="org.eclipse.wst.xsl.ui.internal.contentassist.XSLTemplateCompletionProcessor" />
+			<topic
+				href="doc/html/org.eclipse.wst.xsl.ui.internal.contentassist.XSLTemplateContentAssistProcessor.html"
+				label="org.eclipse.wst.xsl.ui.internal.contentassist.XSLTemplateContentAssistProcessor" />
+		</topic>
+		<topic label="org.eclipse.wst.xsl.ui.internal.contentassist.contentmodel">
+			<topic
+				href="doc/html/org.eclipse.wst.xsl.ui.internal.contentassist.contentmodel.XSLContentModelGenerator.html"
+				label="org.eclipse.wst.xsl.ui.internal.contentassist.contentmodel.XSLContentModelGenerator" />
+		</topic>
+		<topic label="org.eclipse.wst.xsl.ui.internal.contentassist.href">
+			<topic
+				href="doc/html/org.eclipse.wst.xsl.ui.internal.contentassist.href.HrefContentAssistRequest.html"
+				label="org.eclipse.wst.xsl.ui.internal.contentassist.href.HrefContentAssistRequest" />
+			<topic
+				href="doc/html/org.eclipse.wst.xsl.ui.internal.contentassist.href.PathComparator.html"
+				label="org.eclipse.wst.xsl.ui.internal.contentassist.href.PathComparator" />
+		</topic>
+		<topic label="org.eclipse.wst.xsl.ui.internal.contentoutline">
+			<topic
+				href="doc/html/org.eclipse.wst.xsl.ui.internal.contentoutline.AttributeShowingLabelProvider.html"
+				label="org.eclipse.wst.xsl.ui.internal.contentoutline.AttributeShowingLabelProvider" />
+			<topic
+				href="doc/html/org.eclipse.wst.xsl.ui.internal.contentoutline.JFaceNodeAdapter.html"
+				label="org.eclipse.wst.xsl.ui.internal.contentoutline.JFaceNodeAdapter" />
+			<topic
+				href="doc/html/org.eclipse.wst.xsl.ui.internal.contentoutline.JFaceNodeAdapterFactory.html"
+				label="org.eclipse.wst.xsl.ui.internal.contentoutline.JFaceNodeAdapterFactory" />
+			<topic
+				href="doc/html/org.eclipse.wst.xsl.ui.internal.contentoutline.JFaceNodeAdapterFactory.CMDocumentManagerListenerImpl.html"
+				label="org.eclipse.wst.xsl.ui.internal.contentoutline.JFaceNodeAdapterFactory.CMDocumentManagerListenerImpl" />
+			<topic
+				href="doc/html/org.eclipse.wst.xsl.ui.internal.contentoutline.JFaceNodeAdapterFactory.CMDocumentManagerListenerImpl.html"
+				label="org.eclipse.wst.xsl.ui.internal.contentoutline.JFaceNodeAdapterFactory.CMDocumentManagerListenerImpl" />
+			<topic
+				href="doc/html/org.eclipse.wst.xsl.ui.internal.contentoutline.JFaceNodeContentProvider.html"
+				label="org.eclipse.wst.xsl.ui.internal.contentoutline.JFaceNodeContentProvider" />
+			<topic
+				href="doc/html/org.eclipse.wst.xsl.ui.internal.contentoutline.JFaceNodeLabelProvider.html"
+				label="org.eclipse.wst.xsl.ui.internal.contentoutline.JFaceNodeLabelProvider" />
+			<topic
+				href="doc/html/org.eclipse.wst.xsl.ui.internal.contentoutline.RefreshStructureJob.html"
+				label="org.eclipse.wst.xsl.ui.internal.contentoutline.RefreshStructureJob" />
+			<topic
+				href="doc/html/org.eclipse.wst.xsl.ui.internal.contentoutline.XMLNodeActionManager.html"
+				label="org.eclipse.wst.xsl.ui.internal.contentoutline.XMLNodeActionManager" />
+			<topic
+				href="doc/html/org.eclipse.wst.xsl.ui.internal.contentoutline.XSLContentOutlineConfiguration.html"
+				label="org.eclipse.wst.xsl.ui.internal.contentoutline.XSLContentOutlineConfiguration" />
+		</topic>
+		<topic label="org.eclipse.wst.xsl.ui.internal.doubleclick">
+			<topic
+				href="doc/html/org.eclipse.wst.xsl.ui.internal.doubleclick.XSLDoubleClickStrategy.html"
+				label="org.eclipse.wst.xsl.ui.internal.doubleclick.XSLDoubleClickStrategy" />
+		</topic>
+		<topic label="org.eclipse.wst.xsl.ui.internal.editor">
+			<topic
+				href="doc/html/org.eclipse.wst.xsl.ui.internal.editor.OverrideIndicator.html"
+				label="org.eclipse.wst.xsl.ui.internal.editor.OverrideIndicator" />
+			<topic
+				href="doc/html/org.eclipse.wst.xsl.ui.internal.editor.OverrideIndicatorImageProvider.html"
+				label="org.eclipse.wst.xsl.ui.internal.editor.OverrideIndicatorImageProvider" />
+			<topic
+				href="doc/html/org.eclipse.wst.xsl.ui.internal.editor.OverrideIndicatorManager.html"
+				label="org.eclipse.wst.xsl.ui.internal.editor.OverrideIndicatorManager" />
+			<topic
+				href="doc/html/org.eclipse.wst.xsl.ui.internal.editor.SourceFileHyperlink.html"
+				label="org.eclipse.wst.xsl.ui.internal.editor.SourceFileHyperlink" />
+			<topic
+				href="doc/html/org.eclipse.wst.xsl.ui.internal.editor.XSLEditor.html"
+				label="org.eclipse.wst.xsl.ui.internal.editor.XSLEditor" />
+			<topic
+				href="doc/html/org.eclipse.wst.xsl.ui.internal.editor.XSLHyperlinkDetector.html"
+				label="org.eclipse.wst.xsl.ui.internal.editor.XSLHyperlinkDetector" />
+		</topic>
+		<topic label="org.eclipse.wst.xsl.ui.internal.handlers">
+			<topic
+				href="doc/html/org.eclipse.wst.xsl.ui.internal.handlers.OpenDeclarationHandler.html"
+				label="org.eclipse.wst.xsl.ui.internal.handlers.OpenDeclarationHandler" />
+		</topic>
+		<topic label="org.eclipse.wst.xsl.ui.internal.preferences">
+			<topic
+				href="doc/html/org.eclipse.wst.xsl.ui.internal.preferences.AbstractValidationSettingsPage.html"
+				label="org.eclipse.wst.xsl.ui.internal.preferences.AbstractValidationSettingsPage" />
+			<topic
+				href="doc/html/org.eclipse.wst.xsl.ui.internal.preferences.AbstractXSLPreferencePage.html"
+				label="org.eclipse.wst.xsl.ui.internal.preferences.AbstractXSLPreferencePage" />
+			<topic
+				href="doc/html/org.eclipse.wst.xsl.ui.internal.preferences.ComboData.html"
+				label="org.eclipse.wst.xsl.ui.internal.preferences.ComboData" />
+			<topic
+				href="doc/html/org.eclipse.wst.xsl.ui.internal.preferences.MainPreferencePage.html"
+				label="org.eclipse.wst.xsl.ui.internal.preferences.MainPreferencePage" />
+			<topic
+				href="doc/html/org.eclipse.wst.xsl.ui.internal.preferences.PropertyPreferencePage.html"
+				label="org.eclipse.wst.xsl.ui.internal.preferences.PropertyPreferencePage" />
+			<topic
+				href="doc/html/org.eclipse.wst.xsl.ui.internal.preferences.ValidationPreferencePage.html"
+				label="org.eclipse.wst.xsl.ui.internal.preferences.ValidationPreferencePage" />
+			<topic
+				href="doc/html/org.eclipse.wst.xsl.ui.internal.preferences.XSLSyntaxColoringPage.html"
+				label="org.eclipse.wst.xsl.ui.internal.preferences.XSLSyntaxColoringPage" />
+			<topic
+				href="doc/html/org.eclipse.wst.xsl.ui.internal.preferences.XSLTemplatePreferencePage.html"
+				label="org.eclipse.wst.xsl.ui.internal.preferences.XSLTemplatePreferencePage" />
+			<topic
+				href="doc/html/org.eclipse.wst.xsl.ui.internal.preferences.XSLUIPreferenceInitializer.html"
+				label="org.eclipse.wst.xsl.ui.internal.preferences.XSLUIPreferenceInitializer" />
+			<topic
+				href="doc/html/org.eclipse.wst.xsl.ui.internal.preferences.XSLValidationPreferencePage.html"
+				label="org.eclipse.wst.xsl.ui.internal.preferences.XSLValidationPreferencePage" />
+		</topic>
+		<topic label="org.eclipse.wst.xsl.ui.internal.quickassist">
+			<topic
+				href="doc/html/org.eclipse.wst.xsl.ui.internal.quickassist.OverrideQuickAssist.html"
+				label="org.eclipse.wst.xsl.ui.internal.quickassist.OverrideQuickAssist" />
+			<topic
+				href="doc/html/org.eclipse.wst.xsl.ui.internal.quickassist.ValidationQuickAssist.html"
+				label="org.eclipse.wst.xsl.ui.internal.quickassist.ValidationQuickAssist" />
+		</topic>
+		<topic label="org.eclipse.wst.xsl.ui.internal.registry">
+			<topic
+				href="doc/html/org.eclipse.wst.xsl.ui.internal.registry.AdapterFactoryProviderForXSL.html"
+				label="org.eclipse.wst.xsl.ui.internal.registry.AdapterFactoryProviderForXSL" />
+		</topic>
+		<topic label="org.eclipse.wst.xsl.ui.internal.style">
+			<topic
+				href="doc/html/org.eclipse.wst.xsl.ui.internal.style.AbstractXSLSemanticHighlighting.html"
+				label="org.eclipse.wst.xsl.ui.internal.style.AbstractXSLSemanticHighlighting" />
+			<topic
+				href="doc/html/org.eclipse.wst.xsl.ui.internal.style.IStyleConstantsXSL.html"
+				label="org.eclipse.wst.xsl.ui.internal.style.IStyleConstantsXSL" />
+			<topic
+				href="doc/html/org.eclipse.wst.xsl.ui.internal.style.LineStyleProviderForXSL.html"
+				label="org.eclipse.wst.xsl.ui.internal.style.LineStyleProviderForXSL" />
+			<topic
+				href="doc/html/org.eclipse.wst.xsl.ui.internal.style.XMLRegionMap.html"
+				label="org.eclipse.wst.xsl.ui.internal.style.XMLRegionMap" />
+			<topic
+				href="doc/html/org.eclipse.wst.xsl.ui.internal.style.XMLTextAttributeMap.html"
+				label="org.eclipse.wst.xsl.ui.internal.style.XMLTextAttributeMap" />
+			<topic
+				href="doc/html/org.eclipse.wst.xsl.ui.internal.style.XSLAttrNameSemanticHighlighting.html"
+				label="org.eclipse.wst.xsl.ui.internal.style.XSLAttrNameSemanticHighlighting" />
+			<topic
+				href="doc/html/org.eclipse.wst.xsl.ui.internal.style.XSLAttrValueSemanticHighlighting.html"
+				label="org.eclipse.wst.xsl.ui.internal.style.XSLAttrValueSemanticHighlighting" />
+			<topic
+				href="doc/html/org.eclipse.wst.xsl.ui.internal.style.XSLRegionMap.html"
+				label="org.eclipse.wst.xsl.ui.internal.style.XSLRegionMap" />
+			<topic
+				href="doc/html/org.eclipse.wst.xsl.ui.internal.style.XSLTagDelimsSemanticHighlighting.html"
+				label="org.eclipse.wst.xsl.ui.internal.style.XSLTagDelimsSemanticHighlighting" />
+			<topic
+				href="doc/html/org.eclipse.wst.xsl.ui.internal.style.XSLTagNameSemanticHighlighting.html"
+				label="org.eclipse.wst.xsl.ui.internal.style.XSLTagNameSemanticHighlighting" />
+			<topic
+				href="doc/html/org.eclipse.wst.xsl.ui.internal.style.XSLTextAttributeMap.html"
+				label="org.eclipse.wst.xsl.ui.internal.style.XSLTextAttributeMap" />
+		</topic>
+		<topic label="org.eclipse.wst.xsl.ui.internal.templates">
+			<topic
+				href="doc/html/org.eclipse.wst.xsl.ui.internal.templates.TemplateContextTypeXSL.html"
+				label="org.eclipse.wst.xsl.ui.internal.templates.TemplateContextTypeXSL" />
+			<topic
+				href="doc/html/org.eclipse.wst.xsl.ui.internal.templates.VersionTemplateVariableResolverXSL.html"
+				label="org.eclipse.wst.xsl.ui.internal.templates.VersionTemplateVariableResolverXSL" />
+			<topic
+				href="doc/html/org.eclipse.wst.xsl.ui.internal.templates.XSLTemplatesPage.html"
+				label="org.eclipse.wst.xsl.ui.internal.templates.XSLTemplatesPage" />
+		</topic>
+		<topic label="org.eclipse.wst.xsl.ui.internal.util">
+			<topic
+				href="doc/html/org.eclipse.wst.xsl.ui.internal.util.XSLPluginImageHelper.html"
+				label="org.eclipse.wst.xsl.ui.internal.util.XSLPluginImageHelper" />
+			<topic
+				href="doc/html/org.eclipse.wst.xsl.ui.internal.util.XSLPluginImages.html"
+				label="org.eclipse.wst.xsl.ui.internal.util.XSLPluginImages" />
+		</topic>
+		<topic label="org.eclipse.wst.xsl.ui.internal.validation">
+			<topic
+				href="doc/html/org.eclipse.wst.xsl.ui.internal.validation.DelegatingSourceValidatorForXSL.html"
+				label="org.eclipse.wst.xsl.ui.internal.validation.DelegatingSourceValidatorForXSL" />
+			<topic
+				href="doc/html/org.eclipse.wst.xsl.ui.internal.validation.XSLErrorListener.html"
+				label="org.eclipse.wst.xsl.ui.internal.validation.XSLErrorListener" />
+			<topic
+				href="doc/html/org.eclipse.wst.xsl.ui.internal.validation.XSLMarkupValidator.html"
+				label="org.eclipse.wst.xsl.ui.internal.validation.XSLMarkupValidator" />
+		</topic>
+		<topic label="org.eclipse.wst.xsl.ui.internal.views.stylesheet">
+			<topic
+				href="doc/html/org.eclipse.wst.xsl.ui.internal.views.stylesheet.ListWorkbenchAdapter.html"
+				label="org.eclipse.wst.xsl.ui.internal.views.stylesheet.ListWorkbenchAdapter" />
+			<topic
+				href="doc/html/org.eclipse.wst.xsl.ui.internal.views.stylesheet.StylesheetModelView.html"
+				label="org.eclipse.wst.xsl.ui.internal.views.stylesheet.StylesheetModelView" />
+			<topic
+				href="doc/html/org.eclipse.wst.xsl.ui.internal.views.stylesheet.XSLModelAdapterFactory.html"
+				label="org.eclipse.wst.xsl.ui.internal.views.stylesheet.XSLModelAdapterFactory" />
+			<topic
+				href="doc/html/org.eclipse.wst.xsl.ui.internal.views.stylesheet.XSLWorkbenchAdapter.html"
+				label="org.eclipse.wst.xsl.ui.internal.views.stylesheet.XSLWorkbenchAdapter" />
+		</topic>
+		<topic label="org.eclipse.wst.xsl.ui.internal.wizards">
+			<topic
+				href="doc/html/org.eclipse.wst.xsl.ui.internal.wizards.NewXSLFileTemplatesWizardPage.html"
+				label="org.eclipse.wst.xsl.ui.internal.wizards.NewXSLFileTemplatesWizardPage" />
+			<topic
+				href="doc/html/org.eclipse.wst.xsl.ui.internal.wizards.NewXSLFileWizard.html"
+				label="org.eclipse.wst.xsl.ui.internal.wizards.NewXSLFileWizard" />
+			<topic
+				href="doc/html/org.eclipse.wst.xsl.ui.internal.wizards.NewXSLFileWizardPage.html"
+				label="org.eclipse.wst.xsl.ui.internal.wizards.NewXSLFileWizardPage" />
+			<topic
+				href="doc/html/org.eclipse.wst.xsl.ui.internal.wizards.TemplateContentProvider.html"
+				label="org.eclipse.wst.xsl.ui.internal.wizards.TemplateContentProvider" />
+			<topic
+				href="doc/html/org.eclipse.wst.xsl.ui.internal.wizards.TemplateLabelProvider.html"
+				label="org.eclipse.wst.xsl.ui.internal.wizards.TemplateLabelProvider" />
+		</topic>
+		<topic label="org.eclipse.wst.xsl.ui.provisional.contentassist">
+			<topic
+				href="doc/html/org.eclipse.wst.xsl.ui.provisional.contentassist.AbstractXMLElementContentAssistRequest.html"
+				label="org.eclipse.wst.xsl.ui.provisional.contentassist.AbstractXMLElementContentAssistRequest" />
+			<topic
+				href="doc/html/org.eclipse.wst.xsl.ui.provisional.contentassist.AbstractXSLContentAssistProcessor.html"
+				label="org.eclipse.wst.xsl.ui.provisional.contentassist.AbstractXSLContentAssistProcessor" />
+			<topic
+				href="doc/html/org.eclipse.wst.xsl.ui.provisional.contentassist.AbstractXSLContentAssistRequest.html"
+				label="org.eclipse.wst.xsl.ui.provisional.contentassist.AbstractXSLContentAssistRequest" />
+			<topic
+				href="doc/html/org.eclipse.wst.xsl.ui.provisional.contentassist.CustomCompletionProposal.html"
+				label="org.eclipse.wst.xsl.ui.provisional.contentassist.CustomCompletionProposal" />
+			<topic
+				href="doc/html/org.eclipse.wst.xsl.ui.provisional.contentassist.IContentAssistProposalRequest.html"
+				label="org.eclipse.wst.xsl.ui.provisional.contentassist.IContentAssistProposalRequest" />
+			<topic
+				href="doc/html/org.eclipse.wst.xsl.ui.provisional.contentassist.IXSLContentAssistProcessor.html"
+				label="org.eclipse.wst.xsl.ui.provisional.contentassist.IXSLContentAssistProcessor" />
+			<topic
+				href="doc/html/org.eclipse.wst.xsl.ui.provisional.contentassist.NullContentAssistRequest.html"
+				label="org.eclipse.wst.xsl.ui.provisional.contentassist.NullContentAssistRequest" />
+		</topic>
+		<topic label="org.eclipse.wst.xsl.xalan.debugger">
+			<topic
+				href="doc/html/org.eclipse.wst.xsl.xalan.debugger.XalanDebugger.html"
+				label="org.eclipse.wst.xsl.xalan.debugger.XalanDebugger" />
+			<topic
+				href="doc/html/org.eclipse.wst.xsl.xalan.debugger.XalanPrintTraceListener.html"
+				label="org.eclipse.wst.xsl.xalan.debugger.XalanPrintTraceListener" />
+			<topic
+				href="doc/html/org.eclipse.wst.xsl.xalan.debugger.XalanRootStyleFrame.html"
+				label="org.eclipse.wst.xsl.xalan.debugger.XalanRootStyleFrame" />
+			<topic
+				href="doc/html/org.eclipse.wst.xsl.xalan.debugger.XalanStyleFrame.html"
+				label="org.eclipse.wst.xsl.xalan.debugger.XalanStyleFrame" />
+			<topic
+				href="doc/html/org.eclipse.wst.xsl.xalan.debugger.XalanTraceListener.html"
+				label="org.eclipse.wst.xsl.xalan.debugger.XalanTraceListener" />
+			<topic
+				href="doc/html/org.eclipse.wst.xsl.xalan.debugger.XalanVariable.html"
+				label="org.eclipse.wst.xsl.xalan.debugger.XalanVariable" />
+		</topic>
+	</topic>
+	<topic label="Extension Points">
+		<topic label="JAXP Debugger">
+			<topic
+				href="doc/html/extension_point/org_eclipse_wst_xsl_jaxp_launching_debugger.html"
+				label="org.eclipse.wst.xsl.jaxp.launching.debugger">
+			</topic>
+		</topic>
+		<topic label="JAXP Launching">
+			<topic
+				href="doc/html/extension_point/org_eclipse_wst_xsl_jaxp_launching_invoke.html"
+				label="org.eclipse.wst.xsl.jaxp.launching.invoke">
+			</topic>
+			<topic
+				href="doc/html/extension_point/org_eclipse_wst_xsl_jaxp_launching_processor.html"
+				label="org.eclipse.wst.xsl.jaxp.launching.processor">
+			</topic>
+			<topic
+				href="doc/html/extension_point/org_eclipse_wst_xsl_jaxp_launching_processorType.html"
+				label="org.eclipse.wst.xsl.jaxp.processorType">
+			</topic>
+		</topic>
+		<topic label="XSLT Editor">
+			<topic
+				href="doc/html/extension_point/org_eclipse_wst_xsl_ui_contentAssistProcessor.html"
+				label="org.eclipse.wst.xsl.ui.contentAssistProcessor">
+			</topic>
+		</topic>
+	</topic>
 </toc>
