[117755] Updated extension point documentation build process. Overview page and toc are now generated.
diff --git a/docs/org.eclipse.jst.doc.isv/buildExtDocs.properties b/docs/org.eclipse.jst.doc.isv/buildExtDocs.properties
new file mode 100644
index 0000000..355b4f2
--- /dev/null
+++ b/docs/org.eclipse.jst.doc.isv/buildExtDocs.properties
@@ -0,0 +1,8 @@
+################################################################
+# Information for extension point overview document
+################################################################
+# Overview document title
+title = WTP J2EE Standard Tools (WST) Extension Points
+header = JST Extension Points 
+# Introduction paragraph
+overview = The following extension points can be used to extend the capabilities of the JST infrastructure: 
diff --git a/docs/org.eclipse.jst.doc.isv/buildExtDocs.xml b/docs/org.eclipse.jst.doc.isv/buildExtDocs.xml
index ca8cab3..6a04364 100644
--- a/docs/org.eclipse.jst.doc.isv/buildExtDocs.xml
+++ b/docs/org.eclipse.jst.doc.isv/buildExtDocs.xml
@@ -1,33 +1,91 @@
 <?xml version="1.0" encoding="UTF-8"?>
-<project name="Build Extension Point Documentation" default="buildExtDocs" basedir=".">
+<project name="Build Extension Point Documentation" default="createExtDocs" basedir=".">
 
-	<property name="outputDir" value="${basedir}/reference/extension-points"/>
+	<property file="buildExtDocs.properties"/>
+	<property name="outputDir" value="${basedir}${file.separator}reference${file.separator}extension-points"/>
+	<property name="entOutputDir" value="${outputDir}${file.separator}enterprise${file.separator}"/>
+	<property name="serverOutputDir" value="${outputDir}${file.separator}server${file.separator}"/>
+	<property name="webOutputDir" value="${outputDir}${file.separator}web${file.separator}"/>
 
+	<target name="createExtDocs" depends="buildExtDocs, createDocListings"/>
+	
 	<target name="buildExtDocs" depends="buildEntExtDocs, buildServerExtDocs, buildWebExtDocs"/>
 	
  	<target name="buildEntExtDocs">
- 		<pde.convertSchemaToHTML manifest="../org.eclipse.jst.j2ee/plugin.xml" destination="${outputDir}" />
- 		<pde.convertSchemaToHTML manifest="../org.eclipse.jst.j2ee.core/plugin.xml" destination="${outputDir}" />
- 		<pde.convertSchemaToHTML manifest="../org.eclipse.jst.j2ee.ejb.annotation.model/plugin.xml" destination="${outputDir}" />
- 		<pde.convertSchemaToHTML manifest="../org.eclipse.jst.j2ee.ejb.annotations.emitter/plugin.xml" destination="${outputDir}" />
- 		<pde.convertSchemaToHTML manifest="../org.eclipse.jst.j2ee.ejb.annotations.xdoclet/plugin.xml" destination="${outputDir}" />
- 		<pde.convertSchemaToHTML manifest="../org.eclipse.jst.j2ee.webservice/plugin.xml" destination="${outputDir}" />
- 		<pde.convertSchemaToHTML manifest="../org.eclipse.jst.j2ee.navigator.ui/plugin.xml" destination="${outputDir}" />
- 		<pde.convertSchemaToHTML manifest="../org.eclipse.jst.ws.consumption/plugin.xml" destination="${outputDir}" />
- 		<pde.convertSchemaToHTML manifest="../org.eclipse.jst.ws.consumption.ui/plugin.xml" destination="${outputDir}" />
- 		<pde.convertSchemaToHTML manifest="../org.eclipse.jst.ws.uddiregistry/plugin.xml" destination="${outputDir}" />
+ 		<pde.convertSchemaToHTML manifest="../org.eclipse.jst.j2ee/plugin.xml" destination="${entOutputDir}" />
+ 		<pde.convertSchemaToHTML manifest="../org.eclipse.jst.j2ee.core/plugin.xml" destination="${entOutputDir}" />
+ 		<pde.convertSchemaToHTML manifest="../org.eclipse.jst.j2ee.ejb.annotation.model/plugin.xml" destination="${entOutputDir}" />
+ 		<pde.convertSchemaToHTML manifest="../org.eclipse.jst.j2ee.ejb.annotations.emitter/plugin.xml" destination="${entOutputDir}" />
+ 		<pde.convertSchemaToHTML manifest="../org.eclipse.jst.j2ee.ejb.annotations.xdoclet/plugin.xml" destination="${entOutputDir}" />
+ 		<pde.convertSchemaToHTML manifest="../org.eclipse.jst.j2ee.webservice/plugin.xml" destination="${entOutputDir}" />
+ 		<pde.convertSchemaToHTML manifest="../org.eclipse.jst.j2ee.navigator.ui/plugin.xml" destination="${entOutputDir}" />
+ 		<pde.convertSchemaToHTML manifest="../org.eclipse.jst.ws.consumption/plugin.xml" destination="${entOutputDir}" />
+ 		<pde.convertSchemaToHTML manifest="../org.eclipse.jst.ws.consumption.ui/plugin.xml" destination="${entOutputDir}" />
+ 		<pde.convertSchemaToHTML manifest="../org.eclipse.jst.ws.uddiregistry/plugin.xml" destination="${entOutputDir}" />
+ 		
+ 		<!-- Get the list of extension doc files. -->
+ 		<fileset dir="${entOutputDir}" casesensitive="yes" id="ext-docs-list-ent">
+ 			<include name="*.html"/>
+ 		</fileset>
+ 		 						
+ 		<!-- Convert the list to an XML representation. -->
+ 		<pathconvert property="ext-doc-ent" refid="ext-docs-list-ent" pathsep="&lt;/file&gt;&lt;file&gt;">
+ 			<map from="${entOutputDir}" to=""/>
+ 		</pathconvert>
+ 		<echo file="entextdocs.xml">&lt;files component="enterprise"&gt;&lt;file&gt;${ext-doc-ent}&lt;/file&gt;&lt;/files&gt;</echo>
+ 		 						
  	</target>
 	
 	 	
 	<target name="buildServerExtDocs">
-	 	<pde.convertSchemaToHTML manifest="../org.eclipse.jst.server.core/plugin.xml" destination="${outputDir}" />
-	 	<pde.convertSchemaToHTML manifest="../org.eclipse.jst.server.generic.core/plugin.xml" destination="${outputDir}" />
+	 	<pde.convertSchemaToHTML manifest="../org.eclipse.jst.server.core/plugin.xml" destination="${serverOutputDir}" />
+	 	<pde.convertSchemaToHTML manifest="../org.eclipse.jst.server.generic.core/plugin.xml" destination="${serverOutputDir}" />
+		
+		<!-- Get the list of extension doc files. -->
+		<fileset dir="${serverOutputDir}" casesensitive="yes" id="ext-docs-list-server">
+			<include name="*.html"/>
+		</fileset>
+								
+		<!-- Convert the list to an XML representation. -->
+		<pathconvert property="ext-doc-server" refid="ext-docs-list-server" pathsep="&lt;/file&gt;&lt;file&gt;">
+			<map from="${serverOutputDir}" to=""/>
+		</pathconvert>
+		<echo file="serverextdocs.xml">&lt;files component="server"&gt;&lt;file&gt;${ext-doc-server}&lt;/file&gt;&lt;/files&gt;</echo>
+						
 	</target>
 	
 	<target name="buildWebExtDocs">
-		<pde.convertSchemaToHTML manifest="../org.eclipse.jst.common.annotations.controller/plugin.xml" destination="${outputDir}" />
-		<pde.convertSchemaToHTML manifest="../org.eclipse.jst.common.navigator.java/plugin.xml" destination="${outputDir}" />
-		<pde.convertSchemaToHTML manifest="../org.eclipse.jst.j2ee.web/plugin.xml" destination="${outputDir}" />
+		<pde.convertSchemaToHTML manifest="../org.eclipse.jst.common.annotations.controller/plugin.xml" destination="${webOutputDir}" />
+		<pde.convertSchemaToHTML manifest="../org.eclipse.jst.common.navigator.java/plugin.xml" destination="${webOutputDir}" />
+		<pde.convertSchemaToHTML manifest="../org.eclipse.jst.j2ee.web/plugin.xml" destination="${webOutputDir}" />
+		
+		<!-- Get the list of extension doc files. -->
+		<fileset dir="${webOutputDir}" casesensitive="yes" id="ext-docs-list-web">
+			<include name="*.html"/>
+		</fileset>
+								
+		<!-- Convert the list to an XML representation. -->
+		<pathconvert property="ext-doc-web" refid="ext-docs-list-web" pathsep="&lt;/file&gt;&lt;file&gt;">
+			<map from="${webOutputDir}" to=""/>
+		</pathconvert>
+		<echo file="webextdocs.xml">&lt;files component="web"&gt;&lt;file&gt;${ext-doc-web}&lt;/file&gt;&lt;/files&gt;</echo>
+					
+	</target>
+	
+	<target name="createDocListings">
+		<!-- Create the overview document. -->
+		<xslt basedir="${basedir}" in="extDocListings.xml" out="${outputDir}${file.separator}index.html" style="extDocOverview.xsl">
+	  		<param name="title" expression="${title}"/>
+	  		<param name="header" expression="${header}"/>
+	  		<param name="overview" expression="${overview}"/>
+		</xslt>
+			
+		<!-- Create the extention point toc. -->
+		<xslt basedir="${basedir}" in="extDocListings.xml" out="topics_ExtPoint_Reference.xml" style="extDocToc.xsl">
+			<outputproperty name="method" value="xml"/>
+			 <outputproperty name="indent" value="yes"/>
+		</xslt>
+			
 	</target>
 
 </project>
\ No newline at end of file
diff --git a/docs/org.eclipse.jst.doc.isv/extDocListings.xml b/docs/org.eclipse.jst.doc.isv/extDocListings.xml
new file mode 100644
index 0000000..de7daad
--- /dev/null
+++ b/docs/org.eclipse.jst.doc.isv/extDocListings.xml
@@ -0,0 +1,6 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<components>
+	<component name="Enterprise Java" id="enterprise" file="entextdocs.xml"/>
+	<component name="Server" id="server" file="serverextdocs.xml"/>
+	<component name="Web" id="web" file="webextdocs.xml"/>
+</components>
diff --git a/docs/org.eclipse.jst.doc.isv/extDocOverview.xsl b/docs/org.eclipse.jst.doc.isv/extDocOverview.xsl
new file mode 100644
index 0000000..d9b239a
--- /dev/null
+++ b/docs/org.eclipse.jst.doc.isv/extDocOverview.xsl
@@ -0,0 +1,48 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
+    version="1.0"
+    xmlns:xalan="http://xml.apache.org/xslt">
+    <xsl:param name="title"/>
+    <xsl:param name="header"/>
+    <xsl:param name="overview"/>
+    
+    <xsl:template match="components">
+    	
+    	<xsl:text disable-output-escaping="yes">
+    	&lt;!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 TRANSITIONAL//EN"&gt;
+		</xsl:text>
+		<html>
+		<head>
+		<xsl:text disable-output-escaping="yes">
+		&lt;meta name="copyright" content="Copyright (c) IBM Corporation and others 2000, 2005. This page is made available under license. For full details see the LEGAL in the documentation book that contains this page." &gt;
+
+   		&lt;meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"&gt;
+   		</xsl:text>
+   		<title><xsl:value-of select="$title"/></title>
+   		<xsl:text disable-output-escaping="yes">
+		&lt;LINK REL="STYLESHEET" HREF="../../book.css" CHARSET="ISO-8859-1" TYPE="text/css"&gt;
+		</xsl:text>
+		</head>
+		<body link="#0000FF" vlink="#800080">
+
+		<center>
+		<h1><xsl:value-of select="$header"/></h1>
+		</center>
+
+		<xsl:value-of select="$overview"/>
+    	<xsl:for-each select="component">
+    		<xsl:sort select="@id"/>
+    		<h3><a name="{@id}"></a><xsl:value-of select="@name"/></h3>
+    		<ul>
+    			<xsl:for-each select="document(@file)/files/file">
+    				<xsl:sort select="text()"/>
+  					<li>
+  						<a href="{../@component}/{text()}"><xsl:value-of select="translate(substring(text(), 0, string-length(text()) - 4),'_','.')"/></a> 
+  					</li>
+    			</xsl:for-each>
+    		</ul>
+    	</xsl:for-each>
+    	</body>
+		</html>
+    </xsl:template>
+</xsl:stylesheet>
diff --git a/docs/org.eclipse.jst.doc.isv/extDocToc.xsl b/docs/org.eclipse.jst.doc.isv/extDocToc.xsl
new file mode 100644
index 0000000..735638c
--- /dev/null
+++ b/docs/org.eclipse.jst.doc.isv/extDocToc.xsl
@@ -0,0 +1,20 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
+    version="1.0"
+    xmlns:xalan="http://xml.apache.org/xslt"
+    exclude-result-prefixes="xalan">
+    
+     <xsl:template match="components">
+     <xsl:text disable-output-escaping="yes">
+&lt;?NLS TYPE="org.eclipse.help.toc"?&gt;
+	 </xsl:text>
+	 <toc label="Extension Points Reference">
+	 <xsl:for-each select="document(component/@file)/files/file">
+	 <xsl:sort select="text()"/>
+	 <topic label="{translate(substring(text(), 0, string-length(text()) - 4),'_','.')}" href="reference/extension-points/{../@component}/{text()}">
+	 </topic>
+	 </xsl:for-each>
+	
+	 </toc> 
+	</xsl:template>
+</xsl:stylesheet>
diff --git a/docs/org.eclipse.jst.doc.isv/reference/book.css b/docs/org.eclipse.jst.doc.isv/reference/book.css
new file mode 100644
index 0000000..a4eedda
--- /dev/null
+++ b/docs/org.eclipse.jst.doc.isv/reference/book.css
@@ -0,0 +1 @@
+@import "../PRODUCT_PLUGIN/book.css";

\ No newline at end of file
diff --git a/docs/org.eclipse.jst.doc.isv/reference/extension-points/index.html b/docs/org.eclipse.jst.doc.isv/reference/extension-points/index.html
deleted file mode 100644
index 061545a..0000000
--- a/docs/org.eclipse.jst.doc.isv/reference/extension-points/index.html
+++ /dev/null
@@ -1,56 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 TRANSITIONAL//EN">
-<html>
-<head>
-
-<meta name="copyright" content="Copyright (c) IBM Corporation and others 2000, 2005. This page is made available under license. For full details see the LEGAL in the documentation book that contains this page." >
-
-   <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
-   <title>WTP J2EE Standard Tools (JST) Extension Points</title>
-<LINK REL="STYLESHEET" HREF="../../book.css" CHARSET="ISO-8859-1" TYPE="text/css">
-</head>
-<body link="#0000FF" vlink="#800080">
-
-<center>
-<h1>JST Extension Points
-</h1></center>
-
-The following extension points can be used to extend the capabilities
-of the JST infrastructure:
-<h3><a name="enterprise"></a>Enterprise Java</h3>
-<ul>
-  <li><a href="org_eclipse_jst_j2ee_DeployerExtension.html">org.eclipse.jst.j2ee.DeployerExtension</a></li>
-  <li><a href="org_eclipse_jst_j2ee_EARModuleExtension.html">org.eclipse.jst.j2ee.EARModuleExtension</a></li>
-  <li><a href="org_eclipse_jst_j2ee_ejb_annotation_model_ejbGenerator.html">org.eclipse.jst.j2ee.ejb.annotation.model.ejbGenerator</a></li>
-  <li><a href="org_eclipse_jst_j2ee_ejb_annotations_emitter_template.html">org.eclipse.jst.j2ee.ejb.annotations.emitter.template</a></li>
-  <li><a href="org_eclipse_jst_j2ee_ejb_annotations_xdoclet_ejbDocletTaskProvider.html">org.eclipse.jst.j2ee.ejb.annotations.xdoclet.ejbDocletTaskProvider</a></li>
-  <li><a href="org_eclipse_jst_j2ee_ejb_annotations_xdoclet_webdocletTaskProvider.html">org.eclipse.jst.j2ee.ejb.annotations.xdoclet.webdocletTaskProvider</a></li>
-  <li><a href="org_eclipse_jst_j2ee_ejb_annotations_xdoclet_xdocletRuntime.html">org.eclipse.jst.j2ee.ejb.annotations.xdoclet.xdocletRuntime</a></li>
-  <li><a href="org_eclipse_jst_j2ee_EJBCommandExtension.html">org.eclipse.jst.j2ee.EJBCommandExtension</a></li>
-  <li><a href="org_eclipse_jst_j2ee_ExtendedModuleImport.html">org.eclipse.jst.j2ee.ExtendedModuleImport</a></li>
-  <li><a href="org_eclipse_jst_j2ee_J2EEModulePostImport.html">org.eclipse.jst.j2ee.J2EEModulePostImport</a></li>
-  <li><a href="org_eclipse_jst_j2ee_navigator_ui_componentWorkingSet.html">org.eclipse.jst.j2ee.navigator.ui.componentWorkingSet</a></li>
-  <li><a href="org_eclipse_jst_j2ee_resourceEnvRefType.html">org.eclipse.wst.common.modulecore.ComponentProjectMigrator</a></li>
-  <li><a href="org_eclipse_jst_j2ee_resourceRefType.html">org.eclipse.jst.j2ee.resourceRefType</a></li>
-  <li><a href="org_eclipse_jst_j2ee_WebServiceClientGenerator.html">org.eclipse.jst.j2ee.WebServiceClientGenerator</a></li>
-  <li><a href="org_eclipse_jst_j2ee_WSDLServiceHelper.html">org.eclipse.jst.j2ee.WSDLServiceHelper</a></li>
-</ul>
-
-<h3><a name="server"></a>Server</h3>
-<ul>
-	<li><a href="org_eclipse_jst_server_core_runtimeClasspathProviders.html">org.eclipse.jst.server.core.runtimeClasspathProviders</a></li>
-	<li><a href="org_eclipse_jst_server_core_runtimeFacetMappings.html">org.eclipse.jst.server.core.runtimeFacetMappings</a></li>
-	<li><a href="org_eclipse_jst_server_generic_core_genericpublisher.html">org.eclipse.jst.server.generic.core.genericpublisher</a></li>
-	<li><a href="org_eclipse_jst_server_generic_core_serverdefinition.html">org.eclipse.jst.server.generic.core.serverdefinition</a></li>
-</ul>
-<h3><a name="web"></a>Web</h3>
-<ul>
-  <li><a href="org_eclipse_jst_common_annotations_controller_annotationsController.html">org.eclipse.jst.common.annotations.controller.annotationsController</a></li>
-  <li><a href="org_eclipse_jst_common_annotations_controller_annotationTagDynamicInitializer.html">org.eclipse.jst.common.annotations.controller_annotationTagDynamicInitializer</a></li>
-  <li><a href="org_eclipse_jst_common_annotations_controller_AnnotationTagInfo.html">org.eclipse.jst.common.annotations.controller.AnnotationTagInfo</a></li>
-  <li><a href="org_eclipse_jst_common_annotations_controller_AnnotationTagSet.html">org.eclipse.jst.common.annotations.controller.AnnotationTagSet</a></li>
-  <li><a href="org_eclipse_jst_common_navigator_java_compressedProject.html">org.eclipse.jst.common.navigator.java.compressedProject</a></li>
-  <li><a href="org_eclipse_jst_common_navigator_java_workingSetProviders.html">org.eclipse.jst.common.navigator.java.workingSetProviders</a></li>
- </ul>
-
-</body>
-</html>
\ No newline at end of file
diff --git a/docs/org.eclipse.jst.doc.isv/reference/schema.css b/docs/org.eclipse.jst.doc.isv/reference/schema.css
new file mode 100644
index 0000000..00f9d01
--- /dev/null
+++ b/docs/org.eclipse.jst.doc.isv/reference/schema.css
@@ -0,0 +1,66 @@
+H6.CaptionFigColumn#header {
+	font-size:16px; 
+	display:inline
+}
+
+P.Note#copyright {
+	font-size: smaller; 
+	font-style: normal;
+	color: #336699; 
+	display:inline;
+	margin-top: 3.000000pt;
+	margin-bottom: 11.000000pt;
+	margin-right: 0.000000pt;
+	margin-left: 0.000000pt;
+}
+
+P.Code#dtd {
+	color: #800000; 
+	margin-top: 0.000000pt;
+	margin-bottom: 0.000000pt;
+	margin-right: 0.000000pt;
+	margin-left: 10.000000pt;
+}
+
+P.Code#dtdAttlist {
+	color: #800000; 
+	margin-top: 0.000000pt;
+	margin-bottom: 0.000000pt;
+	margin-right: 0.000000pt;
+	margin-left: 20.000000pt;
+}
+
+P.Code#tag {
+	color: #000080; 
+	display:inline;
+	margin-top: 0.000000pt;
+	margin-bottom: 0.000000pt;
+	margin-right: 0.000000pt;
+	margin-left: 0.000000pt;
+}
+
+P.Code#cstring {
+	color: #008000; 
+	display:inline;
+	margin-top: 0.000000pt;
+	margin-bottom: 0.000000pt;
+	margin-right: 0.000000pt;
+	margin-left: 0.000000pt;	
+}
+
+.ConfigMarkup#elementDesc {
+	color: black;
+	margin-top: 0.000000pt;
+	margin-bottom: 0.000000pt;
+	margin-right: 0.000000pt;
+	margin-left: 10.000000pt;
+}
+
+.ConfigMarkup#attlistDesc {
+	color: black;
+	margin-top: 0.000000pt;
+	margin-bottom: 0.000000pt;
+	margin-right: 0.000000pt;
+	margin-left: 32.000000pt;
+}
+
diff --git a/docs/org.eclipse.jst.doc.isv/schema.css b/docs/org.eclipse.jst.doc.isv/schema.css
new file mode 100644
index 0000000..00f9d01
--- /dev/null
+++ b/docs/org.eclipse.jst.doc.isv/schema.css
@@ -0,0 +1,66 @@
+H6.CaptionFigColumn#header {
+	font-size:16px; 
+	display:inline
+}
+
+P.Note#copyright {
+	font-size: smaller; 
+	font-style: normal;
+	color: #336699; 
+	display:inline;
+	margin-top: 3.000000pt;
+	margin-bottom: 11.000000pt;
+	margin-right: 0.000000pt;
+	margin-left: 0.000000pt;
+}
+
+P.Code#dtd {
+	color: #800000; 
+	margin-top: 0.000000pt;
+	margin-bottom: 0.000000pt;
+	margin-right: 0.000000pt;
+	margin-left: 10.000000pt;
+}
+
+P.Code#dtdAttlist {
+	color: #800000; 
+	margin-top: 0.000000pt;
+	margin-bottom: 0.000000pt;
+	margin-right: 0.000000pt;
+	margin-left: 20.000000pt;
+}
+
+P.Code#tag {
+	color: #000080; 
+	display:inline;
+	margin-top: 0.000000pt;
+	margin-bottom: 0.000000pt;
+	margin-right: 0.000000pt;
+	margin-left: 0.000000pt;
+}
+
+P.Code#cstring {
+	color: #008000; 
+	display:inline;
+	margin-top: 0.000000pt;
+	margin-bottom: 0.000000pt;
+	margin-right: 0.000000pt;
+	margin-left: 0.000000pt;	
+}
+
+.ConfigMarkup#elementDesc {
+	color: black;
+	margin-top: 0.000000pt;
+	margin-bottom: 0.000000pt;
+	margin-right: 0.000000pt;
+	margin-left: 10.000000pt;
+}
+
+.ConfigMarkup#attlistDesc {
+	color: black;
+	margin-top: 0.000000pt;
+	margin-bottom: 0.000000pt;
+	margin-right: 0.000000pt;
+	margin-left: 32.000000pt;
+}
+