Skip to content

DITA-OT plugin for generating release notes from DITA topics

License

Notifications You must be signed in to change notification settings

stefan-jung/org.jung.release-notes

Repository files navigation

org.jung.release-notes

DITA-OT 3.x DITA-OT 4.x license

org.jung.release-notes is a plugin for the DITA-OT that extends the org.dita.pdf2 plugin to automatically create release-notes lists or tables from the DITA 1.3 release-management domain elements.

Tip: To learn more about the release-management domain, read the official DITA 1.3 release management domain feature article.

Installation

dita --install https://github.com/stefan-jung/org.jung.release-notes/archive/master.zip

Usage

Add a <booklist type="change-historylist"/> element as a child of a <booklists> element on your <bookmap>, for example:

<frontmatter>
    <booklists>
        <toc/>
        <booklist type="change-historylist"/>
    </booklists>
</frontmatter>

Publish a pdf2 based PDF. You can optionally set the changelist.style property to table to publish the changes in a table format, for example:

dita --input your.ditamap --format pdf -Dchangelist.style=table

You can find more information in the documentation on stefan-jung.org.

Usage with custom pdf2 based plugins

If you like to use this plugin with custom pdf2 based plugins that use a shell XSL file which is passed to the DITA-OT by using the args.xsl.pdf extension point, you need to add some additional <xsl:import> statements to make this plugin work correctly.

Info: This is, for example, the case, when you have generated your plugin using the dita-generator.

At the top of your shell XSL add:

<xsl:import href="plugin:org.dita.pdf2:xsl/fo/topic2fo.xsl"/>

At the bottom of your shell XSL add:

<xsl:import href="plugin:org.jung.release-notes:xsl/fo/root-processing.xsl"/>
<xsl:import href="plugin:org.jung.release-notes:cfg/fo/attrs/release-notes.xsl"/>
<xsl:import href="plugin:org.jung.release-notes:xsl/fo/release-notes.xsl"/>

Because you now have added a hard dependency to org.jung.release-notes, you should explicitely name it so by adding the following <require> element to your plugin.xml:

<require plugin="org.jung.release-notes"/>