Publishing with a DITA-OT Project File
The DITA Open Toolkit project file allows you to define all your DITA map input and filter pairs and to produce the desired output formats by applying the publishing engine over this single project file: https://www.dita-ot.org/dev/topics/using-project-files.html.
Once a DITA-OT project file is opened in the application, two
predefined publishing scenarios become available in the Configure Transformation
Scenario(s) dialog box:
- Publish DITA-OT Project (all deliverables) - Runs the publishing engine and produces output for all deliverables defined in the project file.
- Publish DITA-OT Project (select deliverable) - Runs the publishing engine and produces output for only one deliverable specified by the end-user.
Some of the allowed transformation parameters that are relevant to
the DITA-OT project file include:
- project.file - Specifies the path to the project file.
- dita-ot.dir - Specifies the directory where DITA-OT, used in transformation is installed.
- additional.args - Specifies the additional arguments used in transformation.
- deliverable.id - Specifies the id of the deliverable. This parameter is only available in the Publish DITA-OT Project (select deliverable) transformation.
- jvm.args - Specifies the JVM arguments used by the
transformation for each deliverable. This can be used to increase the memory allocation
used by the transformation.Example: To set the JVM memory allocation to 5 GB for publishing deliverables, append the following value to the existing ones:
-Xmx5G
If the "pdf-css-html5" (based on Chemistry PDF CSS processor) deliverable publication fails with an Out Of Memory Error, try appending thebaseJVMArgLine
parameter to the "jvm.args" parameter value. For example:-DbaseJVMArgLine=-Xmx5G
Tip: When a DITA-OT project file is open in
Author mode, there is a play button () next to the project file name.
You can use this button to publish all deliverables specified in the file. While the
transformation is running, the button turns into a stop button in case you need to terminate
the process.