DeltaXML.CoreS9Api.Config ResultReadabilityOptions
Namespace: DeltaXML.CoreS9Api.Config
Assembly: DeltaXML.CoreS9Api (in DeltaXML.CoreS9Api.dll) Version: 10.4.0.1000 (10.4.0.1000)
Sets options to change the granularity and ordering of changes in the result in order to improve readability.
The underlying comparison engine attempts to produce a result based on the Levenshtein distance between the inputs. While this will produce a mathematically optimal result, when looking at individual word changes in a block of text, the results produced are not always very readable as they can appear to be a mix of added, deleted and unchanged items. This configuration object can be used to make the result more readable using a variety of techniques, including:
- Element splitting
This involves splitting a modified element that contains text when the amount of text that is actually common/unchanged fall below a given percentage of the total content - Orphaned word detection
This involves detecting cases where unchanged words lie within a larger block of modified text. This often occurs when common words such as 'the', 'and', 'a' etc are matched together in otherwise unrelated sentences. When these unchanged words are detected, they are treated as if they have been deleted and added again in order to make the larger change much more readable. - Change gathering
This can have an effect at all levels of the XML tree. When sibling element/text is a mix of added and deleted content, it can be reordered to show, for example, all deleted content followed by all added content.
Changes to whitespace within a document can be insignificant, such as when editors automatically add line wrapping an indentation within a DITA, DocBook, or HTML paragraph. In these cases, it would be useful if changes in whitespace are not reported. This can be achieved in a number of ways, including: normalizing the whitespace in the inputs; and identifying and then ignoring modified whitespace in the raw comparison output. Here whitespace, at a given point in the document, is considered to be modified if, and only if, both documents have some whitespace at this point which differs.
Note: if there are subtrees in a document where whitespace change is important this can be identified by adding the standard XML xml:space="preserve" attribute to the top-element of the subtree, in the input filtering. Conversely, it is possible to specify that the whitespace within a subtree does not need to be preserved by adding the xml:space="default" attribute to the top-element of that subtree, which is the implicit setting.
See also: Element Splitting
See also: Orphaned Words
See also: Gathering Changes Together