processing-pipeline-modules.html 6.2 KB

12345678910111213141516171819202122232425262728293031323334353637
  1. <!DOCTYPE html
  2. SYSTEM "about:legacy-compat">
  3. <html lang="en-us"><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><meta charset="UTF-8"><meta name="copyright" content="(C) Copyright 2019"><meta name="DC.rights.owner" content="(C) Copyright 2019"><meta name="DC.type" content="concept"><meta name="description" content="The DITA-OT processing pipeline is implemented using Ant. Individual modules within the Ant script are implemented in either Java or XSLT, depending on such factors as performance or requirements for customization. Virtually all Ant and XSLT modules can be extended by adding a plug-in to the toolkit; new Ant targets may be inserted before or after common processing, and new rules may be imported into common XSLT modules to override default processing."><meta name="DC.subject" content="specializations, DITA, processing, Ant, extending, Java, processing modules, XSLT, preprocessing, extension points (overview), index, sorting, pipelines, Ant module, Java module, locale"><meta name="keywords" content="specializations, DITA, processing, Ant, extending, Java, processing modules, XSLT, preprocessing, extension points (overview), index, sorting, pipelines, Ant module, Java module, locale"><meta name="DC.relation" scheme="URI" content="../reference/architecture.html"><meta name="DC.format" content="HTML5"><meta name="DC.identifier" content="processing-pipeline-modules"><meta name="DC.language" content="en-US"><link rel="stylesheet" type="text/css" href="../css/commonltr.css"><link rel="stylesheet" type="text/css" href="../css/dita-ot-doc.css"><title>Processing modules</title></head><body id="processing-pipeline-modules"><header role="banner"><div class="header">
  4. <p>DITA Open Toolkit</p>
  5. <hr>
  6. </div></header><nav role="toc"><ul><li><a href="../index.html">DITA Open Toolkit 3.3</a></li><li><a href="../release-notes/index.html">Release Notes</a></li><li><a href="../topics/installing-client.html">Installing DITA-OT</a></li><li><a href="../topics/alternative-input-formats.html">Authoring formats</a></li><li><a href="../topics/building-output.html">Building output</a></li><li><a href="../parameters/index.html">Setting parameters</a></li><li><a href="../topics/customizing.html">Customizing DITA-OT</a></li><li><a href="../topics/troubleshooting-overview.html">Troubleshooting</a></li><li><a href="../reference/index.html">Reference</a><ul><li><a href="../reference/architecture.html">DITA-OT architecture</a><ul><li><a href="../reference/processing-structure.html">Processing structure</a></li><li><a href="../reference/map-first-preprocessing.html">Map-first preprocessing</a></li><li class="active"><a href="../reference/processing-pipeline-modules.html">Processing modules</a></li><li><a href="../reference/processing-order.html">Processing order</a></li><li><a href="../reference/preprocessing.html">Pre-processing modules</a></li><li><a href="../reference/XhtmlWithNavigation.html">HTML-based processing modules</a></li><li><a href="../reference/pdf-transform.html">PDF processing modules</a></li></ul></li><li><a href="../reference/DITA_spec-support.html">DITA specification support</a></li><li><a href="../reference/license.html">License</a></li></ul></li><li><a href="../topics/dita-and-dita-ot-resources.html">Resources</a></li></ul></nav><main role="main"><article role="article" aria-labelledby="ariaid-title1">
  7. <h1 class="title topictitle1" id="ariaid-title1">Processing modules</h1>
  8. <div class="body conbody"><p class="shortdesc">The DITA-OT processing pipeline is implemented using Ant. Individual modules within the Ant script are
  9. implemented in either Java or XSLT, depending on such factors as performance or requirements for customization.
  10. Virtually all Ant and XSLT modules can be extended by adding a plug-in to the toolkit; new Ant targets may be
  11. inserted before or after common processing, and new rules may be imported into common XSLT modules to override
  12. default processing.</p>
  13. <section class="section"><h2 class="title sectiontitle">XSLT modules</h2>
  14. <p class="p">The XSLT modules use shell files. Typically, each shell file begins by importing common rules that apply to all
  15. topics. This set of common processing rules may in turn import additional common modules, such as those used for
  16. reporting errors or determining the document locale. After the common rules are imported, additional imports can
  17. be included in order to support processing for DITA specializations.</p>
  18. <p class="p">For example, XHTML processing is controlled by the <span class="ph filepath">xsl/dita2xhtml.xsl</span> file. The shell
  19. begins by importing common rules that are applicable to all general topics:
  20. <span class="ph filepath">xslhtml/dita2htmlImpl.xsl</span>. After that, additional XSLT overrides are imported for
  21. specializations that require modified processing. For example, an override for reference topics is imported in
  22. order to add default headers to property tables. Additional modules are imported for tasks, for the highlighting
  23. domain, and for several other standard specializations. After the standard XSLT overrides occur, plug-ins may
  24. add in additional processing rules for local styles or for additional specializations.</p>
  25. </section>
  26. <section class="section"><h2 class="title sectiontitle">Java modules</h2>
  27. <p class="p">Java modules are typically used when XSLT is a poor fit, such as for processes that make use of standard Java
  28. libraries (like those used for index sorting). Java modules are also used in many cases where a step involves
  29. copying files, such as the initial process where source files are parsed and copied to a temporary processing
  30. directory.</p>
  31. </section>
  32. </div>
  33. <nav role="navigation" class="related-links"><div class="familylinks"><div class="parentlink"><strong>Parent topic:</strong> <a class="link" href="../reference/architecture.html" title="DITA Open Toolkit is an open-source implementation of the OASIS specification for the Darwin Information Typing Architecture. The toolkit uses Ant, XSLT, and Java to transform DITA content (maps and topics) into different deliverable formats.">DITA Open Toolkit Architecture</a></div></div></nav></article></main></body></html>