Edit online

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 the baseJVMArgLine 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.