rel3.0.dita 48 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694
  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <!DOCTYPE reference PUBLIC "-//OASIS//DTD DITA Reference//EN" "reference.dtd">
  3. <!-- This file is part of the DITA Open Toolkit project. See the accompanying LICENSE file for applicable license. -->
  4. <reference id="ID" rev="3.0">
  5. <title>DITA Open Toolkit 3.0.4 Release Notes</title>
  6. <titlealts>
  7. <navtitle>Release Notes</navtitle>
  8. </titlealts>
  9. <abstract>
  10. <shortdesc>DITA Open Toolkit 3.0.4 is a maintenance release that fixes issues
  11. reported in DITA-OT 3.0, which <ph conref="#highlights/summary"/></shortdesc>
  12. <p conkeyref="conref-task/semver-info"/>
  13. <note type="tip"><ph conref="../resources/conref-task.dita#ID/download-ot"/></note>
  14. </abstract>
  15. <reference id="requirements">
  16. <title>Requirements</title>
  17. <refbody>
  18. <section>
  19. <draft-comment author="Roger">Add info on new minimum Java version or any other requirements that have changed
  20. since previous release.</draft-comment>
  21. <p>DITA Open Toolkit Release 3.0 requires the Java Runtime Environment (JRE) version
  22. <keyword keyref="tool.java.version"/> or later.</p>
  23. </section>
  24. </refbody>
  25. </reference>
  26. <reference id="v304">
  27. <title>DITA-OT 3.0.4
  28. <ph outputclass="small">released May 10, 2018</ph></title>
  29. <refbody>
  30. <section>
  31. <p>DITA Open Toolkit 3.0.4 is a maintenance release that includes the
  32. following bug fixes.</p>
  33. <ul>
  34. <li id="2005">In previous releases, including a <codeph>&lt;!DOCTYPE></codeph> declaration in a DITAVAL
  35. document resulted in a build failure. This is now fixed, and the referenced grammar file will be found using
  36. the same catalog that is used to locate other grammar files.
  37. <xref href="https://github.com/dita-ot/dita-ot/issues/2005" format="html" scope="external">#2005</xref>,
  38. <xref href="https://github.com/dita-ot/dita-ot/pull/2922" format="html" scope="external">#2922</xref>
  39. </li>
  40. <!--
  41. <li id="2821">HTML5 builds in DITA-OT 3.0 warned that the <filepath>map2html5Impl.xsl</filepath> stylesheet
  42. was included or imported more than once. The redundant import has been removed to quiet the log message.
  43. <xref href="https://github.com/dita-ot/dita-ot/issues/2821" format="html" scope="external">#2821</xref>,
  44. <xref href="https://github.com/dita-ot/dita-ot/pull/2950" format="html" scope="external">#2950</xref>
  45. </li>
  46. -->
  47. <li id="2835">DITA-OT 3.0 failed to recognize PDF customizations if the custom plug-in used the same file
  48. names as the base PDF plug-in. The default catalog has been removed from the catalog configuration file to
  49. ensure that only explicitly configured catalogs are used and customizations take precedence regardless of
  50. the file names in the custom plug-in.
  51. <xref href="https://github.com/dita-ot/dita-ot/issues/2835" format="html" scope="external">#2835</xref>,
  52. <xref href="https://github.com/dita-ot/dita-ot/pull/2937" format="html" scope="external">#2937</xref>
  53. </li>
  54. <li id="2841">In DITA-OT 3.0, URI-based links may cause NullPointerExceptions when link targets do not exist
  55. until after <xmlatt>copy-to</xmlatt> attributes are evaluated. The build failure has been removed, and this
  56. type of link will now generate normal build errors as in previous releases.
  57. <xref href="https://github.com/dita-ot/dita-ot/issues/2841" format="html" scope="external">#2841</xref>,
  58. <xref href="https://github.com/dita-ot/dita-ot/issues/2936" format="html" scope="external">#2936</xref>
  59. </li>
  60. <li id="2842">In previous releases, if a key definition specified both <xmlatt>href</xmlatt> and
  61. <xmlatt>copy-to</xmlatt> attributes, references to that key always resolved to the original
  62. <xmlatt>href</xmlatt> rather than to the new copy specified with <xmlatt>copy-to</xmlatt>. Key references
  63. to this type of definition will now resolve to the appropriate copy of the resource.
  64. <xref href="https://github.com/dita-ot/dita-ot/issues/2842" format="html" scope="external">#2842</xref>,
  65. <xref href="https://github.com/dita-ot/dita-ot/pull/2935" format="html" scope="external">#2935</xref>
  66. </li>
  67. <li id="2901">In DITA-OT 3.0.1, <xmlelement>coderef</xmlelement> elements that contained references to line
  68. ranges in DITA map files were not reliably included in PDF output as the preprocessing routine may change
  69. maps. All code references are now resolved from the original files to ensure that code blocks reflect the
  70. intended source range.
  71. <xref href="https://github.com/dita-ot/dita-ot/issues/2901" format="html" scope="external">#2901</xref>,
  72. <xref href="https://github.com/dita-ot/dita-ot/pull/2916" format="html" scope="external">#2916</xref>
  73. </li>
  74. <li id="2910">In DITA-OT 3.0, PDF output files were created outside of the specified output directory when the
  75. map referenced content outside of the map directory. This has been fixed to ensure that PDFs are always
  76. placed in the specified output directory.
  77. <xref href="https://github.com/dita-ot/dita-ot/issues/2910" format="html" scope="external">#2910</xref>,
  78. <xref href="https://github.com/dita-ot/dita-ot/pull/2923" format="html" scope="external">#2923</xref>
  79. </li>
  80. <li id="2917">When generating HTML output with DITA-OT 3.0.2, images referenced indirectly via keys were not
  81. copied to the output folder. Processing has been corrected to ensure that the list of images in the job
  82. configuration includes those referenced via keys.
  83. <xref href="https://github.com/dita-ot/dita-ot/issues/2917" format="html" scope="external">#2917</xref>,
  84. <xref href="https://github.com/dita-ot/dita-ot/pull/2921" format="html" scope="external">#2921</xref>
  85. </li>
  86. <li id="2926">In earlier releases, <xmlatt>scale</xmlatt> attributes on the <xmlelement>fig</xmlelement>
  87. element were ignored for PDF output. The <xmlatt>scale</xmlatt> attribute is now respected for PDF figures,
  88. which may include text content (such as code blocks), inline images inside the text, or block images.
  89. <xref href="https://github.com/dita-ot/dita-ot/pull/2926" format="html" scope="external">#2926</xref>
  90. </li>
  91. <li id="2927">In earlier releases, topic references to peer DITA content reported “missing navigation title”
  92. errors even when the reference included <xmlelement>linktext</xmlelement>. As with all other peer, external,
  93. and non-DITA references, the <xmlelement>linktext</xmlelement> for peer topics will now be used as a
  94. fallback title when no navigation title is available.
  95. <xref href="https://github.com/dita-ot/dita-ot/pull/2927" format="html" scope="external">#2927</xref>
  96. </li>
  97. <li id="2929">The Lightweight DITA plug-in has been updated to the latest version (2.0.3) to prevent errors
  98. when processing Markdown input that contains typographic quotation marks with the <xmlatt>format</xmlatt>
  99. attribute set to <codeph>markdown</codeph>
  100. <xref href="https://github.com/dita-ot/dita-ot/issues/2929" format="html" scope="external">#2929</xref>,
  101. <xref href="https://github.com/dita-ot/dita-ot/pull/2956" format="html" scope="external">#2956</xref>
  102. </li>
  103. <li id="2942">When generating PDF output for tables that specified row headers, DITA-OT failed to honor
  104. vertical spans defined via the <xmlatt>morerows</xmlatt> attribute on an <xmlelement>entry</xmlelement>
  105. (cell). Row headers are now properly applied when cells span additional rows.
  106. <xref href="https://github.com/dita-ot/dita-ot/issues/2942" format="html" scope="external">#2942</xref>,
  107. <xref href="https://github.com/dita-ot/dita-ot/pull/2946" format="html" scope="external">#2946</xref>
  108. </li>
  109. <li id="2945">When <xmlelement>fragref</xmlelement> elements were used to reference a syntax diagram fragment,
  110. earlier versions of DITA-OT displayed an error. Processing has been updated to use the latest designs from
  111. the topicpull module and fix the error.
  112. <xref href="https://github.com/dita-ot/dita-ot/issues/2945" format="html" scope="external">#2945</xref>
  113. </li>
  114. </ul>
  115. <p>For the complete list of changes since the previous release, see the
  116. <xref href="https://github.com/dita-ot/dita-ot/compare/3.0.3...3.0.4" format="html" scope="external">
  117. changelog</xref> on GitHub.</p>
  118. </section>
  119. </refbody>
  120. </reference>
  121. <reference id="v303">
  122. <title>DITA-OT 3.0.3 <ph outputclass="small">released March 10, 2018</ph></title>
  123. <refbody>
  124. <section>
  125. <p>DITA Open Toolkit 3.0.3 is a maintenance release that includes the following bug fixes.</p>
  126. <ul>
  127. <li id="2892">In some scenarios on Windows, the version of Saxon shipped in DITA-OT 3.0 caches one copy of the
  128. toolkit module <filepath>functions.xsl</filepath> and then uses that copy in place of a second (different)
  129. module with the same name. This causes problems when using the <cmdname>ant</cmdname> command to run HTML5
  130. builds. Adding an explicit path to one of the imports works around the problem.
  131. <xref href="https://github.com/dita-ot/dita-ot/pull/2892" format="html" scope="external">#2892</xref>
  132. </li>
  133. <li id="2894">If an XSLT message is declared to be fatal, throwing that message should halt the build. This
  134. stopped working with a refactored message process several releases ago, but was missed because the default
  135. toolkit does not declare any fatal messages for XSLT modules.
  136. <xref href="https://github.com/dita-ot/dita-ot/pull/2894" format="html" scope="external">#2894</xref>
  137. </li>
  138. <li id="2896">When a DITAVAL document contains a typo in the <xmlatt>action</xmlatt> attribute (which should
  139. be set to one of <codeph>include</codeph>, <codeph>exclude</codeph>, <codeph>flag</codeph>, or
  140. <codeph>passthrough</codeph>), the build ends with a message that is difficult to diagnose. The message
  141. has been updated to be more explicit and to use the toolkit’s standard message format.
  142. <xref href="https://github.com/dita-ot/dita-ot/pull/2896" format="html" scope="external">#2896</xref></li>
  143. <li id="2897">When the <xmlelement>navtitle</xmlelement> element is used in a map, it should be ignored by
  144. default (for the purposes of TOC titles, PDF bookmarks or generated links), except in cases where the
  145. <xmlatt>locktitle</xmlatt> attribute on the containing topic reference is set to <codeph>yes</codeph>.
  146. This has always worked when using the <xmlatt>navtitle</xmlatt> attribute on topic references, but
  147. previously the <xmlelement>navtitle</xmlelement> element in maps was used even if it was not locked.
  148. <xref href="https://github.com/dita-ot/dita-ot/pull/2897" format="html" scope="external">#2897</xref>
  149. </li>
  150. <li id="2900">When a DITA document contains more than one <xmlelement>glossentry</xmlelement> element, and
  151. keys are defined for those entries using the file name but <i>without</i> including the entry ID, XHTML and
  152. HTML5 builds would fail to process topics that reference the key. This error has been corrected so that
  153. terms linking to glossary entries will go to the correct file, and no error will be generated.
  154. <xref href="https://github.com/dita-ot/dita-ot/pull/2900" format="html" scope="external">#2900</xref>
  155. </li>
  156. <li id="2904">In PDF builds, the <xmlelement>navtitle</xmlelement> element inside of a topic was ignored when
  157. creating bookmarks and the table of contents. The <xmlelement>navtitle</xmlelement> element in topics is now
  158. used for each of those cases except when a map overrides the navigation title.
  159. <xref href="https://github.com/dita-ot/dita-ot/issues/2904" format="html" scope="external">#2904</xref>,
  160. <xref href="https://github.com/dita-ot/dita-ot/pull/2906" format="html" scope="external">#2906</xref>
  161. </li>
  162. <li id="2908"> When the <xmlelement>choicetable</xmlelement> element does not specify a table header, it
  163. should generate default values for the "Option" and "Description" fields. In PDF, the "Description" column
  164. was not generating the correct header. This has been fixed so that each column gets the proper header.
  165. <xref href="https://github.com/dita-ot/dita-ot/issues/2908" format="html" scope="external">#2908</xref>,
  166. <xref href="https://github.com/dita-ot/dita-ot/pull/2909" format="html" scope="external">#2909</xref></li>
  167. <li id="2912">In HTML5, the default output process generates a Dublin Core metadata tag that specifies the
  168. content format as XHTML. This is left over from earlier releases when the two formats shared the same code.
  169. The format value is now correctly set to HTML5.
  170. <xref href="https://github.com/dita-ot/dita-ot/pull/2912" format="html" scope="external">#2912</xref></li>
  171. </ul>
  172. <p>For the complete list of changes since the previous release, see the
  173. <xref href="https://github.com/dita-ot/dita-ot/compare/3.0.2...3.0.3" format="html" scope="external">
  174. changelog</xref> on GitHub.</p>
  175. </section>
  176. </refbody>
  177. </reference>
  178. <reference id="v302">
  179. <title>DITA-OT 3.0.2 <ph outputclass="small">released February 5, 2018</ph></title>
  180. <refbody>
  181. <section>
  182. <p>DITA Open Toolkit 3.0.2 is a maintenance release that includes the following bug fixes.</p>
  183. <ul>
  184. <li id="1550">If a map or branch of a map was chunked to create a single document, but that portion of the map
  185. also contained a <xmlelement>topicref</xmlelement> reference to a non-DITA resource, earlier versions of
  186. DITA-OT attempted to read and chunk the non-DITA file. This resulted in build errors and a broken reference.
  187. The non-DITA references are no longer read or renamed when chunking.
  188. <xref href="https://github.com/dita-ot/dita-ot/issues/1550" format="html" scope="external">#1550</xref>,
  189. <xref href="https://github.com/dita-ot/dita-ot/pull/2883" format="html" scope="external">#2883</xref></li>
  190. <li id="2432">Several issues related to relationship table column headings have been resolved:
  191. <xref href="https://github.com/dita-ot/dita-ot/issues/2432" format="html" scope="external">#2432</xref>,
  192. <xref href="https://github.com/dita-ot/dita-ot/pull/2873" format="html" scope="external">#2873</xref>.
  193. <ul>
  194. <li>If a relationship table heading uses a <xmlatt>navtitle</xmlatt> without a topic, earlier versions of
  195. DITA-OT would fail with an XSLT error. If the <xmlatt>href</xmlatt> attribute is not present, the
  196. navigation title will now be used as expected. </li>
  197. <li>You can now set a heading on any relationship table column to apply that heading to the group of links
  198. generated by cells in that column. For example, if you create a column for
  199. <xmlelement>glossentry</xmlelement> topics and set a title of “Related terms”, the generated links
  200. will appear in a group titled “Related terms” (rather than the default “Related concepts”). In earlier
  201. releases, these headings were ignored unless every column specified its own heading.</li>
  202. </ul>
  203. </li>
  204. <li id="2596">If a bookmap is referenced from within another map or topic reference, earlier versions of
  205. DITA-OT generated an invalid <xmlelement>fo:page-sequence</xmlelement> within an
  206. <xmlelement>fo:block</xmlelement>, which caused FO processing to fail. DITA-OT now checks the bookmap
  207. elements at the root level to determine whether page sequences and static content should be generated. This
  208. allows processing to complete without errors.
  209. <xref href="https://github.com/dita-ot/dita-ot/issues/2596" format="html" scope="external">#2596</xref>,
  210. <xref href="https://github.com/dita-ot/dita-ot/pull/2859" format="html" scope="external">#2859</xref>
  211. </li>
  212. <li id="2725">The bundled DITA grammar files have been updated to reflect the latest changes from the OASIS
  213. DITA Technical Committee (Errata 02, 16 January 2018). These changes allow XML Schema-based validators like
  214. Saxon EE to resolve schema references based on URI mappings, and replace declarations of the
  215. <xmlatt>domains</xmlatt> attribute in modules with <codeph>domains-att</codeph> references to facilitate
  216. domain attribute substitution.
  217. <xref href="https://github.com/dita-ot/dita-ot/issues/2725" format="html" scope="external">#2725</xref>,
  218. <xref href="https://github.com/dita-ot/dita-ot/issues/2818" format="html" scope="external">#2818</xref>,
  219. <xref href="https://github.com/dita-ot/dita-ot/pull/2860" format="html" scope="external">#2860</xref>
  220. </li>
  221. <li id="2828">In DITA-OT 3.0, image references in bookmap bookmeta data caused builds to fail. Processing has
  222. been corrected to ignore images when reading topics from the map, allowing builds to complete successfully.
  223. <xref href="https://github.com/dita-ot/dita-ot/issues/2828" format="html" scope="external">#2828</xref>
  224. </li>
  225. <li id="2829">Earlier versions of DITA-OT failed to process resources where the filename includes the percent
  226. <codeph>%</codeph> character. The URI parser has been corrected to escape these characters correctly and
  227. rewrite references in valid URI syntax.
  228. <xref href="https://github.com/dita-ot/dita-ot/issues/2829" format="html" scope="external">#2829</xref>
  229. </li>
  230. <li id="2837">The Lightweight DITA plug-in has been updated to the latest version (2.0.2) to prevent errors
  231. when processing Markdown input that contains typographic quotation marks.
  232. <xref href="https://github.com/dita-ot/dita-ot/issues/2837" format="html" scope="external">#2837</xref>,
  233. <xref href="https://github.com/dita-ot/dita-ot/issues/2866" format="html" scope="external">#2866</xref>
  234. </li>
  235. <li id="2862">In DITA-OT 3.0, cross-references to external resources caused problems if the
  236. <xmlatt>scope</xmlatt> attribute was not explicitly set to <codeph>external</codeph>. The preprocess
  237. validation filter has been revised to implicitly treat such references as external in lax processing mode
  238. per the DITA specification and issue a warning.
  239. <xref href="https://github.com/dita-ot/dita-ot/issues/2862" format="html" scope="external">#2862</xref>,
  240. <xref href="https://github.com/dita-ot/dita-ot/pull/2877" format="html" scope="external">#2877</xref>
  241. </li>
  242. <li id="2864">The German translation for <codeph>danger</codeph> note labels has been changed from <cite
  243. xml:lang="de">VORSICHT</cite> to <cite xml:lang="de">GEFAHR</cite> to align with recommendations in ANSI
  244. Z535.4 Annex D.
  245. <xref href="https://github.com/dita-ot/dita-ot/issues/2864" format="html" scope="external">#2864</xref>,
  246. <xref href="https://github.com/dita-ot/dita-ot/pull/2871" format="html" scope="external">#2871</xref>
  247. </li>
  248. <li id="2867">DITA-OT 3.0 would fail with an error when generating HTML output with non-DITA resource
  249. references such as MathML, which were treated as <codeph>html</codeph>. The <xmlatt>format</xmlatt> tracking
  250. has been corrected to use the correct format in the job configuration instead of <codeph>html</codeph>.
  251. <xref href="https://github.com/dita-ot/dita-ot/issues/2867" format="html" scope="external">#2867</xref>,
  252. <xref href="https://github.com/dita-ot/dita-ot/pull/2889" format="html" scope="external">#2889</xref>
  253. </li>
  254. <li id="2874">The DITA 1.2 schemas have been corrected to use DITA 1.2 version-specific identifiers in all
  255. <xmlatt>schemaLocation</xmlatt> references. Previously one module was referenced with an unversioned
  256. identifier, causing DITA 1.3 rules to be pulled into the DITA 1.2 task schema.
  257. <xref href="https://github.com/dita-ot/dita-ot/issues/2874" format="html" scope="external">#2874</xref>,
  258. <xref href="https://github.com/dita-ot/dita-ot/pull/2878" format="html" scope="external">#2878</xref>
  259. </li>
  260. <li id="2887">The bundled Saxon-HE library was updated to version 9.8.0.7, which restores the ability to run
  261. XSLT 1.0–based stylesheets. This change will allow existing plug-ins that still use XSLT 1.0 syntax to work
  262. in DITA-OT 3.0.2 without migration.
  263. <xref href="https://github.com/dita-ot/dita-ot/issues/2887" format="html" scope="external">#2887</xref>,
  264. <xref href="https://github.com/dita-ot/dita-ot/pull/2888" format="html" scope="external">#2888</xref>
  265. </li>
  266. </ul>
  267. <p>For the complete list of changes since the previous release, see the
  268. <xref href="https://github.com/dita-ot/dita-ot/compare/3.0.1...3.0.2" format="html" scope="external">
  269. changelog</xref> on GitHub.</p>
  270. </section>
  271. </refbody>
  272. </reference>
  273. <reference id="v301">
  274. <title>DITA-OT 3.0.1 <ph outputclass="small">released November 30, 2017</ph></title>
  275. <refbody>
  276. <section>
  277. <p>DITA Open Toolkit 3.0.1 is a maintenance release that includes the following bug fixes.</p>
  278. <ul>
  279. <li id="1151">Microsoft Compiled HTML Help requires a Windows codepage rather than UTF-8, so many characters
  280. are converted to HTML entities to ensure they are preserved during the codepage conversion. In earlier
  281. versions of DITA-OT, these entities were not rendered correctly in index terms or in topic titles on the
  282. <uicontrol>Contents</uicontrol> tab of the .chm file. This is now fixed; characters that exist in the
  283. target codepage are not converted to entities, so they will appear properly in the compiled help file.
  284. <xref href="https://github.com/dita-ot/dita-ot/issues/1151" format="html" scope="external">#1151</xref>,
  285. <xref href="https://github.com/dita-ot/dita-ot/issues/1271" format="html" scope="external">#1271</xref>,
  286. <xref href="https://github.com/dita-ot/dita-ot/pull/2852" format="html" scope="external">#2852</xref>
  287. </li>
  288. <li id="2824">When unordered lists nest greater than 4 levels, PDF processing generates a warning about a
  289. missing variable, and deeply nested lists use text such as <codeph>Unordered List bullet 5</codeph> instead
  290. of a bullet character. Characters for levels 1 through 4 now repeat in deeply nested lists.
  291. <xref href="https://github.com/dita-ot/dita-ot/issues/2824" format="html" scope="external">#2824</xref>,
  292. <xref href="https://github.com/dita-ot/dita-ot/pull/2853" format="html" scope="external">#2853</xref>
  293. </li>
  294. <li id="2830">Map-first processing in 3.0 uses generated file names in the temp directory for HTML Help, but
  295. this breaks any existing context-sensitive help projects that call topics directly by file name rather than
  296. by aliased constants (topic IDs) or help context numbers. Topics in the compiled help file are now restored
  297. to their original names to support external applications that to link to topics within a CHM by file name.
  298. <xref href="https://github.com/dita-ot/dita-ot/issues/2830" format="html" scope="external">#2830</xref>
  299. </li>
  300. <li id="2833">Simplified common variable definitions in 3.0 could not be overridden using the traditional
  301. customization approach; the override process now checks for common variables to ensure those in the
  302. configuration directory are used.
  303. <xref href="https://github.com/dita-ot/dita-ot/issues/2833" format="html" scope="external">#2833</xref>,
  304. <xref href="https://github.com/dita-ot/dita-ot/pull/2838" format="html" scope="external">#2838</xref>
  305. </li>
  306. <li id="2836">Generating Markdown output with DITA-OT 3.0 failed with references to a missing stylesheet. The
  307. Lightweight DITA plug-in has been updated to the latest version (2.0.1), which corrects the plug-in
  308. directory path in the stylesheet reference, so Markdown output is now generated as expected.
  309. <xref href="https://github.com/dita-ot/dita-ot/issues/2836" format="html" scope="external">#2836</xref>,
  310. <xref href="https://github.com/dita-ot/dita-ot/issues/2846" format="html" scope="external">#2846</xref>
  311. </li>
  312. <li id="2851">In 3.0, HTML Help project files would not compile to CHM files because a property definition was
  313. not properly initialized. This has been fixed and CHM files are generated using the original map name.
  314. <xref href="https://github.com/dita-ot/dita-ot/issues/2851" format="html" scope="external">#2851</xref>
  315. </li>
  316. <li id="2854">In 3.0, the <parmname>args.output.base</parmname> property to name output files does not work
  317. properly for HTML Help. The property is now used to produce a CHM file with the correct name and contents.
  318. <xref href="https://github.com/dita-ot/dita-ot/pull/2854" format="html" scope="external">#2854</xref>
  319. </li>
  320. <li id="2856">In 3.0, content references to warehouse topics that contain unresolved cross-references would
  321. cause PDF builds to fail, even if the invalid reference was not explicitly included in the content
  322. reference. DITA-OT now checks to make sure such files exist and only parses them if available.
  323. <xref href="https://github.com/dita-ot/dita-ot/issues/2856" format="html" scope="external">#2856</xref>
  324. </li>
  325. <li>
  326. <p>The documentation includes minor
  327. <xref href="https://github.com/dita-ot/docs/compare/3.0...3.0.1" format="html" scope="external">
  328. changes</xref> with
  329. <xref href="https://github.com/dita-ot/docs/milestone/30?closed=1" format="html" scope="external"
  330. >corrections and improvements</xref> to existing topics.</p>
  331. </li>
  332. </ul>
  333. <p>For the complete list of changes since the previous release, see the
  334. <xref href="https://github.com/dita-ot/dita-ot/compare/3.0...3.0.1" format="html" scope="external">
  335. changelog</xref> on GitHub.</p>
  336. </section>
  337. </refbody>
  338. </reference>
  339. <reference id="highlights">
  340. <title>DITA-OT 3.0 <ph outputclass="small">released October 28, 2017</ph></title>
  341. <refbody>
  342. <section>
  343. <p>DITA-OT 3.0
  344. <ph id="summary">adds support for Markdown, normalized DITA output, and the alternative authoring formats
  345. proposed for Lightweight DITA. The map-first preprocessing approach provides a modern alternative to the
  346. default <codeph>preprocess</codeph> operation.</ph></p>
  347. </section>
  348. <section id="markdown">
  349. <title>Markdown support</title>
  350. <p>The
  351. <xref keyref="markdown"/> implementation previously provided by the external <codeph>dita-ot-markdown</codeph>
  352. plug-in has been updated to support additional edge cases and bundled into the DITA-OT 3.0 release.
  353. <xref href="https://github.com/dita-ot/dita-ot/issues/2774" format="html" scope="external">#2774</xref></p>
  354. <p>Markdown topics can be added to DITA publications by setting the <xmlatt>format</xmlatt> attribute to
  355. <codeph>markdown</codeph> so the toolkit will recognize the source file as Markdown and convert it to
  356. DITA:</p>
  357. <p>
  358. <codeblock>&lt;map>
  359. &lt;topicref href="markdown-dita-topic.md" <b>format="markdown"</b>/>
  360. &lt;/map></codeblock>
  361. </p>
  362. <p>Along with Markdown input, DITA-OT now provides three new output formats to convert DITA content to Markdown,
  363. including the original <codeph>markdown</codeph> syntax, <codeph>markdown_github</codeph> for
  364. <xref keyref="gfm-spec"/>, and <codeph>markdown_gitbook</codeph> for publishing via GitBook.</p>
  365. <p>Markdown output can be generated by passing one of these keywords to the <cmdname>dita</cmdname> command with
  366. the <option>--format</option> option:</p>
  367. <p>
  368. <codeblock>dita --input=userguide.ditamap --format=markdown</codeblock></p>
  369. <p>The new output formats can be used to feed DITA content into Markdown-based publishing systems or other
  370. workflows that lack the ability to process DITA XML.</p>
  371. <note>The Markdown support is based on
  372. <xref keyref="commonmark"/>, a strongly defined, highly compatible specification of Markdown and implemented
  373. via the <codeph>flexmark-java</codeph> parser.</note>
  374. </section>
  375. <section id="lwdita">
  376. <title>Preview support for Lightweight DITA</title>
  377. <p>The new <codeph>org.lwdita</codeph> plug-in replaces the earlier <codeph>dita-ot-markdown</codeph> plug-in
  378. and provides preview support for the MDITA and HDITA authoring formats proposed for
  379. <xref keyref="lwdita"/>.</p>
  380. <p>The <xmlatt>format</xmlatt> attribute can be set to <codeph>mdita</codeph> to apply LwDITA-specific
  381. processing to Markdown topics:</p>
  382. <p>
  383. <codeblock>&lt;map>
  384. &lt;topicref href="mdita-topic.md" <b>format="mdita"</b>/>
  385. &lt;/map></codeblock>
  386. </p>
  387. <p>In this case, the first paragraph in the topic will be treated as a short description, for example, and
  388. additional metadata can be specified for the topic via a YAML front matter block.</p>
  389. <note type="attention">Since
  390. <xref keyref="lwdita"/> has not yet been released as a formal specification, the implementation for MDITA and
  391. HDITA authoring formats is subject to change. Future versions of DITA Open Toolkit will be updated as LwDITA
  392. proposals evolve.</note>
  393. </section>
  394. <section id="norm-dita">
  395. <title>Normalized DITA output</title>
  396. <p>The new <codeph>dita</codeph> transformation generates normalized topics and maps from DITA input. The
  397. normalized output includes the results of the DITA Open Toolkit pre-processing operations, which resolve map
  398. references, keys, content references, code references and push metadata back and forth between maps and
  399. topics.</p>
  400. <p>In comparison to the source DITA files, the normalized DITA files are modified in the following ways:</p>
  401. <ul>
  402. <li>References from one DITA map to another are resolved</li>
  403. <li>Map-based links, such as those generated by map hierarchy and relationship tables, are added to the
  404. topics.</li>
  405. <li>Link text is resolved.</li>
  406. <li>Map attributes that cascade are made explicit on child elements.</li>
  407. <li>Map metadata such as index entries and copyrights are pushed into topics.</li>
  408. <li>Topic metadata such as navigation titles, link text and short descriptions are pulled from topics into the
  409. map.</li>
  410. <li>XML comments are removed.</li>
  411. </ul>
  412. <p>Normalized output can be used during plug-in development to troubleshoot the results of preprocessing
  413. routines, or in situations where post-processing of DITA content is required, but the downstream systems are
  414. limited in their ability to resolve DITA references.
  415. <xref href="https://github.com/dita-ot/dita-ot/issues/2775" format="html" scope="external">#2775</xref></p>
  416. <note type="tip">The <codeph>dita</codeph> transformation can also be used to convert Markdown topics or the
  417. alternative input formats supported by the <codeph>org.lwdita</codeph> plug-in to standard DITA XML.</note>
  418. </section>
  419. <section id="map-first">
  420. <title>Map-first preprocessing</title>
  421. <p><ph conref="../reference/map-first-preprocessing.dita#ID/map-first-preproc-desc"/>
  422. <xref href="https://github.com/dita-ot/dita-ot/pull/2763" format="html" scope="external">#2763</xref></p>
  423. <p conref="../reference/map-first-preprocessing.dita#ID/map-first-preproc-gain"/>
  424. <note conref="../reference/map-first-preprocessing.dita#ID/map-first-preproc-note"/>
  425. </section>
  426. </refbody>
  427. </reference>
  428. <reference id="issues">
  429. <title>Resolved issues</title>
  430. <refbody>
  431. <section>
  432. <p>In addition to the highlights mentioned above, DITA Open Toolkit Release 3.0 includes
  433. the following changes.</p>
  434. </section>
  435. <section id="features">
  436. <title>Features</title>
  437. <p>DITA Open Toolkit Release 3.0 includes the following new features:</p>
  438. <!-- https://github.com/dita-ot/dita-ot/issues?q=milestone%3A3.0+is%3Aclosed+label%3Afeature+sort%3Acreated-asc -->
  439. <ul>
  440. <li id="1200">A new property named <parmname>args.output.base</parmname> can be used to control the name of
  441. the output file for transformation types that produce a single output file. The value of the property is the
  442. base file name of the output file, without file extension. The file extension is defined by the
  443. transformation type.
  444. <xref href="https://github.com/dita-ot/dita-ot/issues/1200" format="html" scope="external">#1200</xref>
  445. </li>
  446. <li id="1471">The custom logging implementation used by earlier toolkit versions has been replaced with the
  447. Simple Logging Facade for Java (SLF4J) and the Logback logging framework to better support parameterized log
  448. messages and reduce dependencies on the underlying logging mechanisms.
  449. <xref href="https://github.com/dita-ot/dita-ot/issues/1471" format="html" scope="external">#1471</xref>
  450. </li>
  451. <li id="1551">HTML Help project files are now generated in a temporary directory, so that only the Compiled
  452. HTML Help (.chm) file is returned.
  453. <xref href="https://github.com/dita-ot/dita-ot/issues/1551" format="html" scope="external">#1551</xref>
  454. </li>
  455. <li id="2626">The
  456. <xref keyref="map-first-preproc"/> routine has been extended to support subject schemes
  457. <xref href="https://github.com/dita-ot/dita-ot/issues/2626" format="html" scope="external">#2626</xref>
  458. </li>
  459. <li id="2766">A new <codeph>ant.import</codeph> extension point has been added to make it easier to add new
  460. targets to the Ant processing pipeline.
  461. <xref href="https://github.com/dita-ot/dita-ot/issues/2766" format="html" scope="external">#2766</xref>
  462. <note type="tip">See
  463. <xref keyref="plugin-anttarget"/> for details.</note>
  464. </li>
  465. </ul>
  466. </section>
  467. <section id="enhancements">
  468. <title>Enhancements and changes</title>
  469. <p>DITA Open Toolkit Release 3.0 includes the following enhancements and changes to
  470. existing features:</p>
  471. <!-- https://github.com/dita-ot/dita-ot/issues?q=milestone%3A3.0+is%3Aclosed+label%3Aenhancement+sort%3Acreated-asc -->
  472. <ul>
  473. <li id="2121">Legacy plug-ins that were removed from the distribution package in earlier releases have been
  474. moved to their own repositories. The following plug-ins have been moved: DocBook, Eclipse Content, Eclipse
  475. map specialization, RTF, ODT, and support for pre-OASIS DITA document types.
  476. <xref href="https://github.com/dita-ot/dita-ot/issues/2121" format="html" scope="external">#2121</xref>
  477. </li>
  478. <li id="2232">Use XMLUnit 2
  479. <xref href="https://github.com/dita-ot/dita-ot/issues/2232" format="html" scope="external">#2232</xref>,
  480. <xref href="https://github.com/dita-ot/dita-ot/pull/2723" format="html" scope="external">#2723</xref>
  481. </li>
  482. <li id="2447">Generated link groups in XHTML and HTML5 now use list markup rather than
  483. <xmlelement>div</xmlelement>, as required to comply with WCAG 2.0 accessibility guidelines.
  484. <xref href="https://github.com/dita-ot/dita-ot/issues/2447" format="html" scope="external">#2447</xref>
  485. </li>
  486. <li id="2713">Upgrade Gradle to version 3.5
  487. <xref href="https://github.com/dita-ot/dita-ot/pull/2713" format="html" scope="external">#2713</xref>
  488. </li>
  489. <li id="2718">When building PDF from files that do not use <filepath>.dita</filepath> or
  490. <filepath>.ditamap</filepath> extensions, the input file extension (such as <filepath>.xml</filepath>) is
  491. no longer included in the generated PDF file name.
  492. <xref href="https://github.com/dita-ot/dita-ot/issues/2718" format="html" scope="external">#2718</xref>
  493. </li>
  494. <li id="2721">Upgrade Saxon-HE to version 9.8
  495. <xref href="https://github.com/dita-ot/dita-ot/issues/2721" format="html" scope="external">#2721</xref>,
  496. <xref href="https://github.com/dita-ot/dita-ot/pull/2727" format="html" scope="external">#2727</xref>,
  497. <xref href="https://github.com/dita-ot/dita-ot/issues/2822" format="html" scope="external">#2822</xref>
  498. </li>
  499. <li id="2736">Upgrade <tm tmtype="tm">Apache</tm> FOP to version 2.2
  500. <xref href="https://github.com/dita-ot/dita-ot/issues/2736" format="html" scope="external">#2736</xref>
  501. </li>
  502. <li id="2739">When merging submaps for processing, preserve titles and metadata from the referenced submap so
  503. that they may be used in later processing stages.
  504. <xref href="https://github.com/dita-ot/dita-ot/pull/2739" format="html" scope="external">#2739</xref>
  505. </li>
  506. <li id="2748">Add flagging information from DITAVAL during the same step that handles DITAVAL filtering.
  507. <xref href="https://github.com/dita-ot/dita-ot/pull/2748" format="html" scope="external">#2748</xref>
  508. </li>
  509. <li id="2755">Allow plug-ins to specify custom parameters of type <codeph>url</codeph>
  510. <xref href="https://github.com/dita-ot/dita-ot/issues/2755" format="html" scope="external">#2755</xref>
  511. </li>
  512. <li id="2765">Move or rename Java classes
  513. <xref href="https://github.com/dita-ot/dita-ot/issues/2765" format="html" scope="external">#2765</xref>
  514. </li>
  515. <li id="2770">Make it easier for PDF plug-ins or overrides to customize how processing handles the DITA
  516. <xmlatt>outputclass</xmlatt> attribute, such as by mapping it to corresponding XSL:FO attributes.
  517. <xref href="https://github.com/dita-ot/dita-ot/issues/2770" format="html" scope="external">#2770</xref>
  518. </li>
  519. <li id="2780">Topics exploded by chunk should be written to the topic folder
  520. <xref href="https://github.com/dita-ot/dita-ot/pull/2780" format="html" scope="external">#2780</xref>
  521. </li>
  522. <li id="2781">Move configuration files to a dedicated <filepath>config/</filepath> directory, which ensures
  523. that configuration files and generated files like <filepath>messages.xml</filepath> will not be bundled into
  524. the compiled <filepath>dost.jar</filepath>
  525. <xref href="https://github.com/dita-ot/dita-ot/issues/2781" format="html" scope="external">#2781</xref>,
  526. <xref href="https://github.com/dita-ot/dita-ot/pull/2783" format="html" scope="external">#2783</xref>
  527. </li>
  528. <li id="2784">Allow any attribute to be used for profiling
  529. <xref href="https://github.com/dita-ot/dita-ot/pull/2784" format="html" scope="external">#2784</xref>
  530. </li>
  531. <li id="2789">Support language-independent variable files. For variables common to all (or nearly all)
  532. languages, this means we no longer need to maintain an individual copy of the variable for every language.
  533. Plugins may also now define variables that are used by all languages.
  534. <xref href="https://github.com/dita-ot/dita-ot/pull/2789" format="html" scope="external">#2789</xref>
  535. </li>
  536. <li id="2808">Use double-hyphen syntax for CLI options in error messages
  537. <xref href="https://github.com/dita-ot/dita-ot/issues/2808" format="html" scope="external">#2808</xref>
  538. </li>
  539. <li id="2811">Refactor HTML5 <xmlelement>simpletable</xmlelement> accessibility to use more modern attributes
  540. to associate table entries with header cells.
  541. <xref href="https://github.com/dita-ot/dita-ot/pull/2811" format="html" scope="external">#2811</xref>,
  542. <xref href="https://github.com/dita-ot/dita-ot/issues/2448" format="html" scope="external">#2448</xref>
  543. </li>
  544. </ul>
  545. </section>
  546. <section id="bugs">
  547. <title>Bugs</title>
  548. <p>DITA Open Toolkit Release 3.0 provides fixes for the following bugs:</p>
  549. <!-- https://github.com/dita-ot/dita-ot/issues?q=milestone%3A3.0+is%3Aclosed+label%3Abug+sort%3Acreated-asc -->
  550. <ul>
  551. <!--
  552. <li id="1364">Images referenced in conref source copied to output
  553. <xref href="https://github.com/dita-ot/dita-ot/issues/1364" format="html" scope="external">#1364</xref>
  554. </li>
  555. -->
  556. <li id="2654">Email links without a scope or format previously generated a NullPointerException. The
  557. <codeph>mailto:</codeph> syntax is now recognized as an email link and will not be read as a file
  558. reference.
  559. <xref href="https://github.com/dita-ot/dita-ot/issues/2654" format="html" scope="external">#2654</xref>
  560. </li>
  561. <li id="2742">The wrong language code was previously set when documents set <xmlatt>xml:lang</xmlatt> to the
  562. value <codeph>zh-Hans</codeph>
  563. <xref href="https://github.com/dita-ot/dita-ot/issues/2742" format="html" scope="external">#2742</xref>
  564. </li>
  565. <li id="2752">According to the DITA 1.3 specification, when key definitions refer to images, text that would
  566. otherwise become link text should be placed in the images <xmlatt>alt</xmlatt> element as alternative text.
  567. Previously the text was placed directly into the <xmlelement>image</xmlelement>, which was not valid and
  568. ignored by later processing.
  569. <xref href="https://github.com/dita-ot/dita-ot/issues/2752" format="html" scope="external">#2752</xref>,
  570. <xref href="https://github.com/dita-ot/dita-ot/pull/2814" format="html" scope="external">#2814</xref>
  571. </li>
  572. <li id="2782">In earlier releases, when a <xmlelement>table</xmlelement> element included too many entries in
  573. a row, FOP would crash during PDF processing. The extra entries are now ignored with an error message.
  574. <xref href="https://github.com/dita-ot/dita-ot/pull/2782" format="html" scope="external">#2782</xref>
  575. </li>
  576. <li id="2797">A Java method for generating relative paths failed on Windows when comparing two paths from
  577. different drives. The method has been fixed so that it does not try to construct a relative path between
  578. drives.
  579. <xref href="https://github.com/dita-ot/dita-ot/pull/2797" format="html" scope="external">#2797</xref>
  580. </li>
  581. <li id="2807">In HTML5, a DITA <xmlelement>stepsction</xmlelement> that contained paragraphs resulted in HTML5
  582. <xmlelement>p</xmlelement> elements that contained <xmlelement>p</xmlelement>. The
  583. <xmlelement>stepsection</xmlelement> now generates a <xmlelement>div</xmlelement> to ensure valid HTML5
  584. output regardless of what it contains.
  585. <xref href="https://github.com/dita-ot/dita-ot/issues/2807" format="html" scope="external">#2807</xref>
  586. </li>
  587. <li id="2810">An updated errata has been approved for DITA 1.3 that removes default values for
  588. <xmlatt>rowheader</xmlatt> on <xmlelement>colspec</xmlelement>. The relevant grammar file modules from
  589. OASIS have been updated to include this errata.
  590. <xref href="https://github.com/dita-ot/dita-ot/pull/2810" format="html" scope="external">#2810</xref>
  591. </li>
  592. </ul>
  593. </section>
  594. <section id="contrib">
  595. <title>Contributors</title>
  596. <p>DITA Open Toolkit Release 3.0 includes
  597. <xref keyref="contributions"/> by the following people:</p>
  598. <!-- https://github.com/tj/git-extras/blob/master/Commands.md#git-summary – `git summary 2.4..` -->
  599. <draft-comment author="Roger">NOTE: This lists contributions to the core toolkit, not docs.</draft-comment>
  600. <ol>
  601. <li>Jarno Elovirta</li>
  602. <li>Robert D. Anderson</li>
  603. <li>Roger Sheen</li>
  604. <li>Alexey Mironov</li>
  605. </ol>
  606. <p>For the complete list of changes since the previous release, see the
  607. <xref href="https://github.com/dita-ot/dita-ot/compare/2.5...3.0" format="html" scope="external">
  608. changelog</xref> on GitHub.</p>
  609. </section>
  610. <section id="docs">
  611. <title>Documentation updates</title>
  612. <p>The documentation for DITA Open Toolkit Release 3.0 provides corrections and
  613. improvements to existing topics, along with new information:</p>
  614. <ul>
  615. <li>The top-level documentation structure has been revised to replace book-based paradigms (<cite>User
  616. Guide</cite>, <cite>Developer Reference</cite>) with more task-oriented groupings
  617. <xref href="https://github.com/dita-ot/docs/issues/121" format="html" scope="external">#121</xref>
  618. <ul>
  619. <li>
  620. <xref keyref="installing-client"/></li>
  621. <li>
  622. <xref keyref="building-output"/></li>
  623. <li>
  624. <xref keyref="extending-the-ot"/></li>
  625. <li>
  626. <xref keyref="troubleshooting-overview"/></li>
  627. </ul>
  628. </li>
  629. <li>New input formats
  630. <xref href="https://github.com/dita-ot/docs/issues/150" format="html" scope="external">#150</xref>
  631. <xref href="https://github.com/dita-ot/docs/issues/151" format="html" scope="external">#151</xref>
  632. <ul>
  633. <li>
  634. <xref keyref="markdown-input"/></li>
  635. <li>
  636. <xref keyref="lwdita-input"/></li>
  637. </ul></li>
  638. <li>New output formats
  639. <xref href="https://github.com/dita-ot/docs/issues/152" format="html" scope="external">#152</xref>
  640. <ul>
  641. <li>
  642. <xref keyref="dita2markdown"/></li>
  643. <li>
  644. <xref keyref="dita2dita"/></li>
  645. </ul>
  646. </li>
  647. <li>
  648. <xref keyref="map-first-preproc"/></li>
  649. <li>
  650. <xref keyref="migrating-to-3.0"/></li>
  651. </ul>
  652. <p>For additional information on documentation issues resolved in DITA Open Toolkit Release <keyword
  653. keyref="release"/>, see the
  654. <xref href="https://github.com/dita-ot/docs/issues?q=milestone%3A3.0+is%3Aclosed" format="html"
  655. scope="external">
  656. 3.0 milestone</xref> in the documentation repository.</p>
  657. <p>DITA Open Toolkit Release 3.0 includes
  658. <xref keyref="docs-contributions"/> by the following people:</p>
  659. <draft-comment author="Roger">NOTE: This lists contributions to docs, not to the core toolkit.</draft-comment>
  660. <ol>
  661. <li>Roger Sheen</li>
  662. <li>Robert D. Anderson</li>
  663. <li>Jarno Elovirta</li>
  664. <li>Shane Taylor</li>
  665. <li>Misti Pinter</li>
  666. <li>Garrett Guillotte</li>
  667. <li>Lionel Moizeau</li>
  668. <li>Stefan Eike</li>
  669. </ol>
  670. <p>For the complete list of documentation changes since the previous release, see the
  671. <xref href="https://github.com/dita-ot/docs/compare/2.5...3.0" format="html" scope="external">
  672. changelog</xref>.</p>
  673. </section>
  674. </refbody>
  675. </reference>
  676. </reference>