DITA-OT Sample plug-ins

Before we begin: if you use the toolkit, you owe a huge debt of thanks to Jarno Elovirta. He's been the primary developer for the toolkit for a couple of years now, and if you've gotten a fix, seen a performance improvement, or used a new feature, chances are he's the reason. He does it all for free, because he enjoys it, but I'd encourage everybody to toss a few bucks in his tip jar.

About the samples

This page includes a series of plug-ins intended to guide new DITA-OT developers through the creation of DITA-OT plug-ins. Most of these were originally created as part of a presentation to the Boston and RTP DITA User Groups in December 2011; development now continues at GitHub in the "metadita" repository, but ready-to-install zip versions are posted here. My long term goal is to have at least one sample plug-in for each new extension point in the toolkit.

Each plug-in here was tested with DITA-OT 1.8.M2 (release 1.8, patch 2), but should work with version 1.6 and later. For archived versions designed to work with DITA-OT 1.5.4, see the original posting from 2011.

To install any of the plug-ins below, unzip the selected archive into the DITA-OT/plugins/ directory. If you download a bundle with multiple plug-ins, you only need to unzip that bundle into the same location. Complete documentation for extension points can be found at the DITA-OT landing page; look in the follow the documentation link and look under Developer Reference -> Creating DITA-OT plug-ins.

What can you override? What samples are available?

Overview of available samples; details are below the table
Plug-in ID What does it extend?
XHTML style PDF style New XSLT parameter XML Catalog (Specialization) New Ant code Extend Ant pre-process New transform type Add generated text Add error messages Add Java library New extension point Builds on pre-requisite
org.metadita.xsl.xhtmlbrand Yes----------------------
org.metadita.specialization.cmdref Yes----Yes----------------
Music YesYes--Yes----------------
org.metadita.transtype.faketxt --------Yes--Yes----------
org.metadita.xslparam Yes--Yes--Yes--------------
org.metadita.strings --------------Yes--------
org.metadita.strings --------------Yes--------
org.metadita.xsl.puffinbrand Yes--------------------strings
org.metadita.bundle-gentext (zip file) Bundles org.metadita.strings and org.metadita.xsl.puffinbrand into a single install package.
org.metadita.errors ----------------Yes------
org.metadita.xsl.validation ----------------Yes----errors
org.metadita.run.validation --------YesYes----Yes----errors; xsl.validation
org.metadita.bundle-validation (zip file) Bundles org.metadita.errors, org.metadita.xsl.validation, and org.metadita.run.validation into a single install package.
org.metadita.samplejava --------YesYes----YesYes----
org.metadita.fullbundle (zip file) Bundles all of the previous plug-ins into a single install package.

Downloadable packages

Related information