Release Documentation

Release Notes

Release 7.1.2

17th September 2018

  • Bug Fix: Fixed an issue with FrameMaker Tracked Changes output format. When using identical inputs to a Map Topicset comparison, the topics would incorrectly receive a status of "changed". This was customer support case 707.

Release 7.1.1

29th August 2018

  • Bug Fix: Fixed an edge case of moved topics where nested child topics produced duplicate ids. This was customer support case 681.
  • Bug Fix: Fixed inline formatting elements and handle moves interaction bug. The inline formatting elements will not be considered as moved candidates anymore. This was customer support case 698.
  • Bug Fix: Fixed issues with the Windows GUI batch script when the JAVA_HOME path environment variable contained certain characters such as spaces, parentheses, or quotes.

Release 7.1

6th June 2018

  • Enhancement: DITA Compare is now shipped with version 61.1 of icu4j, updated from version 52.1 This was customer support case 678.
  • Bug Fix: Improved the GUI batch script so that it doesn't rely on JAVA_HOME being set. If JAVA_HOME is not set but 'java' is on the default path, the script will run using the java command.
  • Bug Fix: When ModifiedAttributeMode is set to ENCODE_AS_ATTRIBUTES, changes to the @conref attribute are now shown as part of the encoding. This also applies to other reference attributes. This was customer support case 674.
  • Bug Fix: CALS table processing has been updated to reflect changes made in other products. This fixes a number of potential bugs.
  • Bug Fix: Fixed an issue where nested element moves resulted in duplicate id values in the result file. This was customer support case 681.

Release 7.0.1

8th January 2018

  • Bug Fix: A change in the build process for version 7.0 caused some parameter settings to be omitted in the GUI. This has been resolved. This was customer support case 629.
  • Bug Fix: The Java release now includes the deltaxml-dita-gui.bat file for starting the GUI on Windows. This was customer support case 629.

Release 7.0

5th December 2017

Dependency Changes

  • DITA Compare now requires JavaSE version 7.0 or later to run (using a JDK or JRE as appropriate).
  • DITA Compare is now shipped with Saxon 9.8.0.5. Saxon 9.8.x and 9.7.x are compatible with this release.
  • Distributed version of Apache Xerces updated to Xerces 2.11.0 from 2.9.0

Enhancements

  • New Feature: DeltaXML DITA Compare now handles inline formatting element changes. The list of elements that are considered to be inline formatting has been defined and it is possible to modify this list using inclusion and exclusion lists passed as parameters. This was customer support case 478.
  • New Feature: Element moves are now supported in DITA Compare. This feature makes use of id attributes on elements to identify situations where the result contains a single addition and deletion of elements with the same id. These can be treated as a move. This was customer support case 485.
  • New Feature: DeltaXML DITA compare now provides an option to use phrase elements for 'non-phrase' changes. Please see the show-non-phrase-changes parameter and com.deltaxml.dita.ShowNonPhraseChanges API documentation for more details. This was customer support case 519, 546.
  • New Feature: Updates to allow restriction of comparison results when running with an evaluation license. This has unfortunately become necessary after abuse of our terms and conditions regarding evaluations. Please see the DITA Compare download page for more details on the nature of the restrictions.
  • New Feature: Support for orderless table row comparison has been introduced. Please see the user guide for more details. This was customer support case 378.
  • Enhancement: Topic comparison errors are now, by default, propagated to the map-level comparison. Please see the map-topic-propagation-mode parameter and com.deltaxml.dita.MapTopicPropagationMode API documentation for more details. This was customer support case 414, 529.
  • Enhancement: oXygen's tracked change format for attribute change is now supported as part of the oXygen tracked change result type.
  • Enhancement: The DITA Map Topicset Progress Listener was not reporting last 15 output filters for each topic level comparison. This has now been fixed.
  • Enhancement: Similar to conref, the conkeyref attribute changes now trigger a status="changed" attribute to be added to the containing element. This was customer support case 454.

Bug fixes

  • Bug Fix: Reordering of CALS table constraints in order to avoid an exception when colnum value is zero This was customer support case 488.
  • Bug Fix: When Map A points to a missing topic but Map B fixes that by including both the reference and the topic, then result file had a broken reference to the topic rather than the fixed one. This has now been fixed. This was customer support case 434.
  • Bug Fix: The 'status' attributes were added for conref changes even if 'add-status-att' is set to no. This has now been fixed. This was customer support case 454.
  • Bug Fix: Fixed a bug that was causing a NullPointerException during a map comparison. The Exception is caused by an <xref> element containing an external href, e.g. http://www.deltaxml.com, but without an explicit scope="external" attribute. The code now assumes an external scope when no scope is defined. This was customer support case 619 621.
  • Bug Fix: CALS table column alignment improvements. If a CALS table has colspec definitions for each column and they each have a unique colname attribute, colname attributes are added to each entry in the table to improve column alignment. This is particularly noticeable when columns are added or deleted from the middle of the table. This was customer support case 495.

Release 6.5.7

9th August 2017

  • Bug Fix: Fixed a problem where an Exception was thrown when processing elements containing certain types of external href references. This was customer support case 587.

Release 6.5.6

4th April 2017

  • Bug Fix: For DITA map comparison, a NPE exception was thrown if any of the DITA map files contained no topicref elements. This issue has now been fixed. This was customer support case 557.

Release 6.5.5

4th November 2016

  • Bug Fix: Prevented duplication of single use elements where id values have changed and setUseIdsAsKeys=true. This was customer support case 524.

Release 6.5.4

8th August 2016

  • Bug Fix: When ModifiedAttributesMode is set to ENCODE_AS_ATTRIBUTES, id attribute modifications are now encoded correctly instead of being removed from the output. This was customer support case 490.

Release 6.5.3

13th July 2016

  • New Feature: Flexera License management is included in this release to support new named-user, server and concurrent server/user licensing systems. There are some API modifications to support new licensing system, but otherwise the release functionality should be equivalent to release 5.5.3.

Release 5.5.5

4th November 2016

  • Bug Fix: Prevented duplication of single use elements where id values have changed and setUseIdsAsKeys=true. This was customer support case 524.
  • Bug Fix: Added script for Windows to launch the matching 32 or 64 bit GUI for the JVM in use.

Release 5.5.4

8th August 2016

  • Bug Fix: When ModifiedAttributesMode is set to ENCODE_AS_ATTRIBUTES, id attribute modifications are now encoded correctly instead of being removed from the output. This was customer support case 490.

Release 5.5.3

12th May 2016

  • Enhancement: Improved results when existing text is wrapped in a new element hierarchy. e.g. adding a <ph> element around existing text. This was customer support case 478.
  • Bug Fix: The 'Mac App' release uses an updated Java Application Stub which has improved Java version detection. If you have had problems running the App release on El Capitan, this should resolve the issue.

Release 5.5.2

3rd March 2016

  • Bug Fix: Fixed an error which was causing <ph> elements to be added inappropriately to some elements within bookmaps. This was customer support case 470.

Release 5.5.1

15th February 2016

  • Bug Fix: Significant speed improvements to topic comparison operations. Time-intensive operations have been moved into the DITATopicCompare constructor meaning that multiple topic comparisons on the same DITATopicCompareobject will benefit from speed improvements. This was customer support case 464.
  • Bug Fix: Fixed a bug where attribute changes on a shortdesc element could result in it being removed from the output. This was customer support case 469.

Release 5.5

18th January 2016

  • Enhancement: It is now possible to list specialized elements where phrase elements are no longer permitted by the content model. This prevents the addition of invalid phrase elements when text changes occur. Elements should be listed by full specialization name, e.g. topic/title, in a comma-separated list. This was customer support case 459.

Release 5.4

12th January 2016

  • New Feature: Id attributes may optionally be used as keys to provide additional identification information to the comparison process. This was customer support case 460.
  • Enhancement: conref attribute changes now trigger a status="changed" attribute to be added to the containing element. In addition, conref attributes that were removed from an element are no longer output in the result. This was customer support case 454.

Release 5.3

24th November 2015

  • Enhancement: Changes to the way in which <ph> elements are added around text changes. This results in improvements in the behaviour for change-marking in topic specializations which now include <ph> elements where appropriate in place of text-based markup. This was customer support case 448.
  • Enhancement: Added additional logging messages to code associated with the resolver to improve debugging of potential errors. This was customer support case 441.

Release 5.2

29th October 2015

  • New Feature: Added support for ditaBase (composite) files as inputs to DitaTopicCompare This was customer support case 444.
  • Enhancement: Added checks for class attributes on topic inputs so that the correct error is thrown if they are not present. All topic or topic specialization inputs to DitaTopicCompare must have class attributes defined (either explicitly or via a schema/DTD reference). This is to ensure that later processing works correctly.

Release 5.1.4

14th August 2015

  • Bug Fix: Further fixes for problems relating to the use of XML Schema This was customer support case 431.

Release 5.1.3

11th August 2015

  • Bug Fix: Fixed a bug that stopped the comparison from running correctly when an XML Schema was used rather than a DTD. The error message received was 'Cannot output a namespace node for the default namespace when the element is in no namespace'.

Release 5.1.2

18th June 2015

  • Bug Fix: Fix for a map comparison issue where a missing DITA sub-map file caused an unhandled Null Pointer Exception, a warning is now logged instead. Affects map topicset comparisons where the result structure is set to UnifiedMap. This was customer support case 424.

Release 5.1.1

23rd April 2015

  • Bug Fix: Fixed an issue where redistribution licensing caused a license not found exception when used with map topicset comparisons. This was customer support case 419.

Release 5.1

23rd February 2015

  • New Feature: It is now possible to compare the XML content of two map files. For further information please refer to the 'Mapfile' map comparison sections of the User Guide and Reference documentation. This was customer support case 343.
  • New Feature: Added support for the FrameMaker track change output format.
  • New Feature: When using the DITA-markup output format it is now possible to specify an outputclass attribute value that indicates whether the element has been added or deleted. This was customer support case 393.
  • Enhancement: The map topicset comparison now supports a 'unified map' result structure. For more information on this please refer to the 'map topicset' sections in the User Guide and Reference documentation. This was customer support case 357.
  • Enhancement: The DITA input checker previously insisted that there is no leading whitespace in a DITA class attribute. The leading and trailing whitespace in DITA class attributes are now normalised before this check is performed. Here, all leading whitespace is removed and all trailing whitespace (if any) is replaced by precisely one space. This was customer support case 359.
  • Enhancement: A class attribute of '- topic/ph ' is added to phrase elements that are inserted to markup change, whenever: the incoming DITA has no DOCTYPE; and the phrase-element parameter has its default value of 'ph'.
  • Enhancement: Improved the exception message when a class attribute cannot be used to generalize a DITA topic or map. This was customer support case 359.
  • Bug Fix: Differences in 'id' attributes could lead to duplicated/conflicting 'id' definitions. This can cause problems when producing 'redline' documents. Therefore, conflicting 'id' definitions are now renamed, in order to avoid such conflicts (when DITA-Markup output format is selected). The associated 'href' and 'conref' attributes are updated in a consistent manner. This was customer support case 384.
  • Bug Fix: The debugging and timing configuration property names accidentally changed in the 5.0 release; they were inconsistent with the reference guide documentation, which had not changed. These properties have now been changed back to their pre 'DITA Compare 5.0' names.
  • Bug Fix: Fragment only hrefs were being expanded on copy to include the 'file name' of the topic that contains them. They are now being left as fragment only hrefs.
  • Bug Fix: When both the HTML table processing and the change grouping were enabled at the same time it was possible to produce invalid tables. This bug only affected the format specific output formats. It has now been fixed.
  • Bug Fix: In the catalog, <group uri="machineryIndustry/dtd/"> should be <group xml:base="machineryIndustry/dtd/"> [OASIS DITA Errata]. This has been fixed in the tool's built-in catalog.

Release 5.0.6

3rd September 2014

  • Bug Fix: A null pointer exception was thrown when performing a map comparison with a document containing external 'href' references that have fragments. This has now been fixed. This was customer support case 382.

Release 5.0.5

25th June 2014

  • Enhancement: The performance of the CALS tables input filters has been improved when running with saxon 9.5.1.x library (which is the version included in the download). This was customer support case 374, 376.

Release 5.0.4

16th January 2014

  • Customer Specific: Special release that provided support for a specific customer. This relates to support case 343.

Release 5.0.3

17th December 2013

  • Enhancement: While Saxon PE 9.5.1.3 is the currently supported and distributed version of Saxon, we have provided an interoperability mechanism for Saxon PE/EE versions 9.3 and 9.4.

Release 5.0.2

21st November 2013

  • Bug Fix: Spaces in file paths are now being handled by the map comparator.
  • Bug Fix: The GUI Help within the Mac and Windows variants of the product have been updated to discuss the latest version of the GUI.
  • Bug Fix: The DITA Map comparator now supports oXygen editor plugin that has window URL's with the %20 space escaping.
  • Bug Fix: Fixed some absolute paths issues for DITA Maps on Windows OS when invoked through the oXygen plugin.

Release 5.0.1

15th November 2013

  • Bug Fix: Corrected parameter ordering within groups for use with our oXygen plugin.
  • Bug Fix: Corrected some broken links in the documentation.
  • Bug Fix: When explicitly setting a preservation mode to a non 'automatic' value, the 'automatic' whitespace handling was incorrectly based on the output format setting. It is now based on the preservation mode setting in this context. Here the 'document' and 'round trip' based preservation modes set the whitespace handling to 'normalize' and 'ignore' respectively.

Release 5.0

12th November 2013

  • New Feature: DITA Map comparison support. See product documentation for more details.
  • Enhancement: Added a changebar example (typically for PDF output formats) to the sample ditaval file with documentation on usage and dependencies.
  • Enhancement: Changes to DITA href and keyref attributes in elements, such as xref and link, are now represented by propagating the change to the parent element level (i.e. copying the 'A' and 'B' versions of the source element). For further information please read the Attribute Change section of the User Guide. This was customer support case 320.
  • Enhancement: A URI resolver can now be set on instances of the DITA comparators. This was customer support case 331.
  • Enhancement: Upgraded the Saxon XSLT transformer library to version 9.5.1.3.
  • Enhancement: .NET assembly generation upgraded to use IKVM version 7.2
  • Enhancement: Existing DITA change markup stripped prior to comparison. 'status' attributes are always removed. 'rev' attributes are removed when they match the pattern set in the 'remove-rev-attribute-regex' parameter.
  • API Change: The original DitaCompare class has now been renamed DitaTopicCompare. A DitaMapCompare class has been introduced for performing map-based topic comparisons. The new DitaCompare class provides access to both topic and map level comparisons, through a simplified interface.
  • API Change: The original DitaCompareDotNet class has now been renamed DitaTopicCompareDotNet. A DitaMapCompareDotNet class has been introduced for performing map-based topic comparisons. The new DitaCompareDotNet class provides access to both topic and map level comparisons, through a simplified interface.
  • Bug Fix: When both entity references and their content is kept by the comparison process it was possible for their expanded text content to lose its comparison status (i.e. whether it was in the 'A' or 'B' document). This has now been fixed.
  • Bug Fix: The standalone attribute of the XML declaration is no longer preserved in the output, due to incompatibilities in parsing and serialisation technologies.
  • Bug Fix: The Windows GUI's File->Exit menu item now exits the application. And the File->Close menu item now only appears instead of the File->Exit menu item when using Mac OS X.
  • Bug Fix: class attributes are now passed through to the result file if they are explicitly included in the inputs or if the preservation mode is set to one that does not remove defaulted attributes This was customer support case 348.

Release 4.2.6

22nd August 2013

  • Bug Fix: Change to the generalization and specialization process used during comparison so that the foreign content is no longer externalized (using the process described in Appendix B.4 of the DITA 1.2 Specification). A consequence of this change is that the DITA-OT generalization and specialization code is no longer used and the dependency on dost.jar has been removed. This was customer support case 333.

Release 4.2.5

3rd June 2013

  • Enhancement: The CALS table processing now detects invalid tables and processes them as specified by the invalid-cals-table-behaviour and warning-report-mode parameters. Please see the parameter documentation in the user-guide for more details. This was customer support case 272, 273, 321.
  • Bug Fix: 'Empty' attribute change markers were sometimes present on elements when using the Arbotext TC output. This has been resolved.

Release 4.2.4

3rd October 2012

  • Bug Fix: Configuring enumerated parameters within the GUI caused the comparison to fail with a reported exception and/or hang indefinitely. The precise type of failure depended on the operating system and version of the GUI being run. This has now been fixed.
  • Bug Fix: When running the GUI on a Mac only one of the three toolbar buttons appeared. This has now been fixed.
  • Bug Fix: The Mac app's install command now installs the command-line utilities into an appropriately named directory that reflects the product's name and version.

Release 4.2.3

28th September 2012

  • New Feature: Added support for logging of resolver lookup. See http://www.deltaxml.com/resources/logging.html This was customer support case 284.

Release 4.2.2

21st August 2012

  • Enhancement: Improved diagnostics to identify underlying cause of CPC-12 and related errors. This was customer support case 284.

Release 4.2.1

8th August 2012

  • Enhancement: When launching the Mac version of the tool on the OS X Mountain Lion the application was being reported as corrupt. This has now been addressed by signing the code with our certificate.
  • Bug Fix: When launching the Graphical version of the tool on the Window's operating system an 'Unknown' publisher warning was produced. This has now been addressed by signing the code with our certificate. The warning now contains 'DeltaXML Limited' publisher in its text, which is a hyperlink to this certificate and its authorisation chain.

Release 4.2

31st July 2012

  • Incompatible Change: .NET OEM Redistribution Licensing Code now uses ulong array instead of long array. This makes it consistent with the underpinning DeltaXML Core product.
  • Mac Application now runs under 10.8 Mountain Lion.
  • New Feature: Added the ability to switch off HTML table processing.
  • New Feature: Added the ability to switch off CALS table processing. In some cases, invalid CALS tables in the input files can cause the comparison to fail. In these cases, the comparison can be completed successfully by turning off the CALS table processing.
  • Enhancement: The word boundary processing has been reimplemented using the icu-project implementation of the Unicode Standard Annex #29. This means that word separation for non-English locales is now much improved. The xml:lang attribute can be used to specify the locale used when detecting word boundaries. The identification of unchanged spaces has also been improved.
  • Enhancement: The lexical preservation filters now make use of the new Saxon 9.3.0.11 features to reduce some of the limitations on what information can be preserved. See the lexical preservation limitations section in the user guide for details on the current limitations.
  • Enhancement: Upgraded the embedded Saxon XSLT processor to SaxonPE 9.3.0.11.
  • Bug Fix: The unmarked change handling is not applied to attributes as originally suggested in the parameter documentation. Attribute change is now handled by a new modified-attribute-mode parameter (as discussed in the user guide).
  • Bug Fix: oXygen/XMetaL deletion could previously break when the deleted 'text' region contained more than one XML node. This has now been fixed.
  • Bug Fix: Whitespace within elements that have mixed content was sometimes normalised away when the only text was whitespace. This has now been fixed (via explicitly marking relevant elements as mixed content, and not relying on the presence of a DTD).
  • Bug Fix: Drag and dropping of files into the GUI now works properly.
  • Bug Fix: The GUI now correctly identifies the character encoding of input files and handles unicode characters properly.

Release 4.1.1

18th May 2012

  • Bug Fix: Changing the cols attribute as well as other attributes on a CALS table tgroup element caused the comparison to fail. This has now been fixed.
  • Bug Fix: Modified attributes on a CALS table element were not appearing correctly in the result. This was customer support case 275.

Release 4.1

4th May 2012

  • New Feature: Added Arbortext Editor tracked changes output format
  • Bug Fix: CALS table overlapping row calculation was taking too long on large tables, this has now been optimised. This was customer support case 270.
  • Bug Fix: Fix to ensure that namespaces referenced by processing instructions that mark deletions are correctly serialized in the processing instruction when necessary. This was customer support case 271.
  • Bug Fix: Improved the handling of whitespace in deleted markup for the oXygen Tracked Change output format
  • Bug Fix: The GUI now uses updated string parameter values correctly. When they are updated, the new value is retained on the comparison configuration dialog.

Release 4.0.1

13th April 2012

  • Bug Fix: Table cells with row-spans were not being properly grouped; this is now fixed.
  • Bug Fix: Added display of XML Processing Instructions and Comments in GUI display pane (in order to display the tracked change output formats)

Release 4.0

12th April 2012

  • New Feature: Added the oXygen Editor/Author tracked change output format.
  • New Feature: Added XMetaL Editor tracked change output format
  • Enhancement: The re-ordering filter has been enhanced so that elements not mentioned by the ordering specification, comments, and processing instructions are kept in the same relative positions as far as is possible. In particular, comments above an element are kept with that element as it is re-ordered.
  • Deprecation: The show-whitespace-changes parameter has been deprecated. Please make use of the new whitespace-processing-mode parameter, see User Guide or API documentation for details.
  • Bug Fix: Reduced the amount of extra whitespace added to tables when whitespace changes were requested.

Release 3.3

16th March 2012

  • New Feature: Added a user guide to the release which gives details of how the comparison works and full descriptions of all parameters.
  • New Feature: New DITA GUI, making it a lot easier to run your DITA comparisons.
  • New release distributions You can now get DeltaXML DITA Compare for Windows, Mac OS X, Java and .NET.

Release 3.2

1st November 2011

  • Bug Fix: The matching of specialized data could cause certain outputs to be generated where child elements appear in the wrong order. Code has been order to reorder these children using the appropriate grammar rules. This was customer support cases 239 and 242.

    Bug Fix: Certain DITA grammar rules provide for mutually exclusive child elements, for example a taskbody contains either a steps or steps-unordered child. A parameter (steps-conflict-resolution) is provided to control which of these elements is included in the result. This problem has been solved. This was customer support case 242.

Release 3.1.1

19th October 2011

  • Bug Fix: If the two inputs contained different specializations of the same topic element e.g. menucascade and uicontrol that, once generalized, match together, there is the potential for the result file to be invalid. This problem has been solved. This was customer support cases 240, 241 and 243.

Release 3.1

13th October 2011

  • New Feature: If the input documents are of differing DITA types, the output document is not re-specialized, it remains as a Topic with class attributes to show specialization details. It is possible to override this behaviour and force specialization using a new parameter. This was customer support case 238.

Release 3.0.1

7th October 2011

  • Bug Fix: Provided values for the $productName and $productNameSpaces variables, which are used in the documentation.

    Bug Fix: The .NET API sample now references the up-to-date versions of the third-party libraries.

Release 3.0

30th September 2011

  • Enhancement: Comparison of CALS tables has been improved significantly.
  • Enhancement: Change to the way that status attributes are added. status="changed" is now only added to a leaf node (i.e. the deepest node in the XML hierarchy) where a change has occurred rather than at every level of a changed tree.
  • Incompatible API change: The AttributesWithValue class has been moved into the DITA package (com.deltaxml.dita).
  • Incompatible API Change: The com.deltaxml.config.ConfigProperties class is no longer available. Its functionality should now be accessed using com.deltaxml.dita.ConfigProperties.
  • Licensing: Changes to the licensing mechanism for OEM customers.

Release 2.2.1

30th March 2011

  • Bug Fix: The input checking no longer requires a space character at the end of a class attribute on the root element.

Release 2.2

10th December 2010

  • New Feature: Now uses Saxon 9.3 (Professional Edition).

    New Feature: Added functionality that allows arbitrary attributes to be included on added/deleted items. These are placed on the same elements that the 'rev' attributes are added on if they are enabled. N.B. It is left to the user to ensure that the specified attributes are valid in the context where they are added.

    Update: Multi-site license type has been replaced by the Team and Bespoke license types.

Release 2.1

26th November 2010 - dev 1

  • New Feature: Added support for progress monitoring.

Release 2.0

23rd July 2010 - release candidate 2

  • First Public Release: First public release of the full DITA comparison tool.

Release 1.0

6th April 2010

  • New Feature: DITA Compare now includes a Java API

Release 0.1

18th January 2010

  • First Release: First release of the DITA comparison tool