code-srv-test/dita-ot-3.6/doc/reference/processing-pipeline-modules.html
2021-03-23 22:38:58 +00:00

37 lines
No EOL
6.2 KiB
HTML

<!DOCTYPE html
SYSTEM "about:legacy-compat">
<html lang="en"><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><meta charset="UTF-8"><meta name="copyright" content="(C) Copyright 2020"><meta name="generator" content="DITA-OT"><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="keywords" content="specializations, DITA, specializations, DITA, processing, Ant, extending, Java, processing modules, XSLT, preprocessing, extension points (overview), index, sorting, pipelines, Ant module, Java module, locale"><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">
<p>DITA Open Toolkit</p>
<hr>
</div></header><nav role="toc"><ul><li><a href="../index.html">DITA Open Toolkit 3.6</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/building-output.html">Building output</a></li><li><a href="../topics/input-formats.html">Authoring formats</a></li><li><a href="../topics/output-formats.html">Output formats</a></li><li><a href="../parameters/index.html">Parameters</a></li><li><a href="../topics/html-customization.html">Customizing HTML</a></li><li><a href="../topics/pdf-customization.html">Customizing PDF</a></li><li><a href="../topics/adding-plugins.html">Adding plug-ins</a></li><li><a href="../topics/custom-plugins.html">Creating plug-ins</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/store-api.html">Store API</a></li><li><a href="../reference/preprocessing.html">Pre-processing modules</a></li><li><a href="../reference/html-based-processing.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="../extension-points/plugin-extension-points.html">Extension points</a></li><li><a href="../reference/license.html">License</a></li><li><a href="../reference/glossary.html#glossary">Glossary</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">
<h1 class="title topictitle1" id="ariaid-title1">Processing modules</h1>
<div class="body conbody"><p class="shortdesc">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.</p>
<section class="section"><h2 class="title sectiontitle">XSLT modules</h2>
<p class="p">The XSLT modules use shell files. Typically, each shell file begins by importing common rules that apply to all
topics. This set of common processing rules may in turn import additional common modules, such as those used for
reporting errors or determining the document locale. After the common rules are imported, additional imports can
be included in order to support processing for DITA specializations.</p>
<p class="p">For example, XHTML processing is controlled by the <span class="ph filepath">xsl/dita2xhtml.xsl</span> file. The shell
begins by importing common rules that are applicable to all general topics:
<span class="ph filepath">xslhtml/dita2htmlImpl.xsl</span>. After that, additional XSLT overrides are imported for
specializations that require modified processing. For example, an override for reference topics is imported in
order to add default headers to property tables. Additional modules are imported for tasks, for the highlighting
domain, and for several other standard specializations. After the standard XSLT overrides occur, plug-ins may
add in additional processing rules for local styles or for additional specializations.</p>
</section>
<section class="section"><h2 class="title sectiontitle">Java modules</h2>
<p class="p">Java modules are typically used when XSLT is a poor fit, such as for processes that make use of standard Java
libraries (like those used for index sorting). Java modules are also used in many cases where a step involves
copying files, such as the initial process where source files are parsed and copied to a temporary processing
directory.</p>
</section>
</div>
<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>