XSLT-import extension points
You can use these extension points to override XSLT processing steps in pre-processing and certain transformation types. The value of the @file
attribute in the <feature>
element specifies a relative path to an XSL file in the current plug-in. The plug-in installer adds a XSL import statement to the default DITA-OT code, so that the XSL override becomes part of the normal build.
Pre-processing
You can use the following extension points to add XSLT processing to modules in the pre-processing pipeline:
-
dita.xsl.conref
Overrides the pre-processing step that resolves conref.
-
dita.xsl.maplink
Overrides the
maplink
step in the pre-processing pipeline. This is the step that generates map-based links. -
dita.xsl.mappull
Overrides the
mappull
step in the pre-processing pipeline. This is the step that updates navigation titles in maps and causes attributes to cascade. -
dita.xsl.mapref
Overrides the
mapref
step in the pre-processing pipeline. This is the step that resolves references to other maps. -
dita.xsl.topicpull
Overrides the
topicpull
step in the pre-processing pipeline. This is the step that pulls text into<xref>
elements, as well as performing other tasks.
Transformations
You can use the following extension points to add XSLT processing to modules in DITA-OT transformations:
-
dita.map.eclipse.index.pre
Runs an Ant target before the Eclipse index extraction process.
-
dita.xsl.eclipse.plugin
Overrides the default XSLT step that generates the
plugin.xml
file for Eclipse Help. -
dita.xsl.eclipse.toc
Overrides the default XSLT step that generates the Eclipse Help table of contents (TOC).
-
dita.xsl.html.cover
Overrides the default HTML cover page generation process.
-
dita.xsl.htmltoc
Overrides the default XSLT step that generates the HTML table of contents (TOC).
-
dita.xsl.html5
Overrides the default HTML5 transformation. The referenced file is integrated directly into the XSLT step that generates HTML5.
-
dita.xsl.html5.cover
Overrides the default HTML5 cover page generation process.
-
dita.xsl.html5.toc
Overrides the default XSLT step that generates the HTML5 table of contents (TOC).
-
dita.xsl.htmlhelp.map2hhc
Overrides the default XSLT step that generates the HTML Help contents (
.hhc
) file. -
dita.xsl.htmlhelp.map2hhp
Overrides the default XSLT step that generates the HTML Help project (
.hhp
) file. -
dita.xsl.xhtml
Overrides the default HTML or XHTML transformation, including HTML Help and Eclipse Help. The referenced file is integrated directly into the XSLT step that generates XHTML.
-
dita.xsl.xslfo
Overrides the default PDF transformation. The referenced XSL file is integrated directly into the XSLT step that generates the XSL-FO.
Example
The following two files represent a complete (albeit simple) plug-in that adds a company banner to the XHTML output. The plugin.xml
file declares an XSLT file that extends the XHTML processing; the xsl/header.xsl
file overrides the default header processing to provide a company banner.
<?xml version="1.0" encoding="UTF-8"?>
<plugin id="com.example.brandheader">
<feature extension="dita.xsl.xhtml" file="xsl/header.xsl"/>
</plugin>
<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:template name="gen-user-header">
<div>
<img src="http://www.example.com/company_banner.jpg"
alt="Example Company Banner"/>
</div>
</xsl:template>
</xsl:stylesheet>