DTCP Schema Guide

DTCP Schema Guide

This guide provides a short description of each element and attribute defined in the XML schema for the Data Comparator Pipeline (DTCP).
A fuller description of DTCP, along with an example and an explanation of the main concepts can be found in the DTCP Pipeline Overview.

Element Index

Element

#

Description

advancedConfig

2

Configuration options providing low-level control of the comparison; more general options are in standardConfig

attributeLocation

51

Represents an attribute location XPath, separator, regular expression or output separator

attributeLocations

30

Represents locations for attributes which will be processed and split

attributeSplittingConfig

15

Specifies configuration options for attribute splitting

booleanParameter

13

Declares a boolean pipeline parameter referenceable by parameterRef attributes or as $variables in XPath expressions

booleanProperty

24

A named boolean property for the Saxon XSLT transformer

changeGatheringEnabled

40

Sets whether to reorder consecutive changed items to improve readability

characterByCharacterEnabled

41

Sets whether to enable character-by-character comparison

childAlignment

61

Represents child alignment specifiers for subtree configuration

class

56

Loads a Java class implementing the SAX XMLFilter interface from the ClassPath

comparisonReport

16

Specifies whether and where to generate a comparison report containing analysis and recommendations

dataComparator

1

Root element for defining overrides to a DataComparator; default settings apply if no child elements are present

defaultNamespace

38

Defines the default namespace

description

29

Short summary of the purpose of the parameter

elementSplittingEnabled

42

Sets whether modified elements containing text should be split when unchanged text falls below a given percentage

elementSplittingThreshold

43

Sets the percentage of unchanged text below which a modified element will be split

extensionPoints

3

Declares the extension points and contained filters to be inserted within the DataComparator pipeline

feature

23

Sets the boolean value of a named parser feature

file

57

Loads an XSLT filter from the file system

filter

50

An XSLT or Java XML processing filter to be loaded into the comparator pipeline

finalPoint

28

Final filter extension point in the DataComparator output pipeline

fullDescription

4

Provides meaningful description and basic help information to the user; may contain HTML

generateReport

32

Specifies whether to generate a comparison report

http

58

Loads an XSLT filter from an identified HTTP resource

ignoreChangesConfig

17

Specifies configuration options for Ignore Changes processing

inputExtensionPoints

11

Extension points for modifying A and B input filters

inputPoint

26

Extension point for modifying A and B input filters, after element flattening

inputPreFlatteningPoint

27

Extension point for modifying A and B input filters, before element flattening

isEnabled

31

Sets whether the comparator should enable the feature or not

location

52

Represents a location XPath and result rule for ignore-changes processing

locations

34

Represents locations for elements and attributes on which changes will be ignored

mixedContentDetectionScope

44

Sets the scope for determining if each element is of a mixed-content type

modifiedWhitespaceBehaviour

45

Sets the ModifiedWhitespaceBehaviour for changes to whitespace

moveCandidate

53

Represents move candidate element XPath and class XPath pairs

moveCandidates

35

Represents move candidates

moveDetectionConfig

18

Specifies configuration options for move detection

moveDetectionType

36

Sets the type of move detection (restricted or unrestricted)

namespaceConfiguration

19

Defines prefix/URI pairs for namespaces used within XPath expressions in configurations such as ignoreChangesConfig or subtreeProcessingMode

orphanedWordDetectionEnabled

46

States whether or not orphaned word detection is enabled

orphanedWordLengthLimit

47

Sets the maximum number of consecutive unchanged words that can be treated as orphaned

orphanedWordMaxPercentage

48

Sets the maximum proportion of total change size that orphaned words can constitute

outputExtensionPoints

12

Extension points for modifying output filter chains

outputProperties

7

Sets Serializer property settings for the built-in Saxon Serializer

parameter

59

A named parameter to supply to a filter; any XPath-item type can be supplied using the xpath attribute

parserFeatures

8

Sets features on the underlying SAX parser used in the pipeline

parserProperties

9

Sets properties on the underlying SAX parser used in the pipeline

pipelineParameters

5

Container for all pipeline parameters; parameters have global scope and a default value

property

22

Sets the string value of a named property

reportDirectory

33

Specifies where to write the generated comparison report

resource

60

Loads an XSLT filter as a resource from a jar file

resultReadabilityOptions

20

Sets options to change the granularity and ordering of changes to improve readability

showMoveSource

37

Sets whether the comparator should show the move source

standardConfig

6

General configuration options for the DataComparator — see advancedConfig for lower-level options

stringParameter

14

Declares a string pipeline parameter referenceable by parameterRef attributes or as $variables in XPath expressions

stringProperty

25

A named string property for the Saxon XSLT transformer

subtree

55

Represents a subtree XPath and processing type

subtreeProcessingMode

21

Specifies configuration options for subtree processing (text or data)

subtrees

49

Represents subtrees

transformerConfigurationProperties

10

Sets configuration options on the Saxon XSLT transformers used in the pipeline

userNamespace

54

Defines a user namespace

userNamespaces

39

Defines user namespaces

Element Detail

Elements are listed in document-tree order, top-level elements first, then alphabetically:

Element: dataComparator

The root element for defining the overrides to a DataComparator whose defaults are as described in the API documentation.
A Data Comparator instance with default settings is created if no child elements are present.

A unique identifier for this pipeline configuration - listed as
'configuration id' in the command-line description.

version string — The DTCP specification version this conforms to - fixed at '1.0'.

description string — Short description of this DTCP configuration.
The DTCP specification version this conforms to - fixed at '1.0' description string
Short description of this DTCP configuration.

Configuration options providing low-level control of the comparison, more general configuration options are in 'standardConfig'

Element: advancedConfig

Configuration options providing low-level control of the comparison, more general configuration options are in 'standardConfig'

Declare the extension points and contained filters to be inserted within the DataComparator pipeline

General configuration options for the DataComparator - see
'advancedConfig' for further options extensionPoints fullDescription pipelineParameters standardConfig dataComparator

Element: extensionPoints

Declare the extension points and contained filters to be inserted within the DataComparator pipeline.
In EBNF the required sequence S of child elements is:
S := 'inputPreFlatteningPoint'? IP 'outputExtensionPoints'?
IP := 'inputExtensionPoints'? | ( 'inputAExtensionPoints'? 'inputBExtensionPoints'? )

Element: fullDescription

Description

Designed to provide meaningful description and basic help information to the user.
It can contain PCDATA content. It should include a description of the Data Comparator configuration defined by the DTCP. How this information is presented to users is a tool- dependent operation, for example a GUI-based tool may provide a pop-up window and show
HTML formatted content.

Element: pipelineParameters

Container for all pipeline parameters.
Pipeline parameters have global scope and are referenced using the 'paremeterRef' attribute.
Pipeline parameters have a default value that can be overridden through the API. The maximum number of child elements is not restricted.

Element: standardConfig

General configuration options for the DataComparator - see
'advancedConfig' for further options.

Declare a boolean parameter that may be referenced by
'parameterRef' attributes or as $variables from within XPath expressions
Declare a string parameter that may be referenced by
'parameterRef' attributes or as $variables from within XPath expressions

Element: outputProperties

Serializer property settings for the built in Saxon Serializer.

Defines a set of prefix uri pairs for namespaces that can be used within XPath expressions provided to certain configurations such as ignoreChangesConfig or subtreeProcessingMode

Element: parserFeatures

Set features on the underlying SAX parser used in the pipeline. For more detail, see in the API documentation.

Element: parserProperties

Set properties on the underlying SAX parser used in the pipeline.
For more detail, see
Sets the string value of a named property property
setParserFeature dataComparator advancedConfig
Sets the boolean value of a named feature

feature in the API documentation.

Element: transformerConfigurationProperties

Set configuration option on the Saxon XSLT transformers used in the pipeline.
The maximum number of child elements is not restricted.

Sets the string value of a named property

Element: inputExtensionPoints

Element: outputExtensionPoints

A named boolean property
A named string property

Description

Extension point for modifying A and B input filters, after element flattening
Extension point for modifying A and B input filters, before element flattening

Element: booleanParameter

Declare a boolean parameter that may be referenced by 'parameterRef' attributes or as $variables from within XPath expressions.

Final filter extension point in the DataComparator output pipeline

Element: stringParameter

Declare a string parameter that may be referenced by 'parameterRef' attributes or as $variables from within XPath expressions.

NCName

The default boolean value - may be overriden externally

NCName

The default string value - may be overriden externally

Element: attributeSplittingConfig

Specifies configuration options for attribute splitting.
These options can be specified on a comparator to configure its behaviour. Attribute Splitting is off by default.

[enum]
Permitted values / descriptions: narrativeText
This mode sets the default mode to narrative text. dataSet
This mode sets the default mode to data set. dataList

Element: comparisonReport

Specifies whether and where to generate comparison report which contains comparison analysis and recommendations to improve comparison result.

This mode sets the default mode to data list.

Element: ignoreChangesConfig

Specifies configuration options for Ignore Changes processing.
These options can be specified on a comparator to configure its behaviour.

Element: moveDetectionConfig

Specifies configuration options for moves.
These configuration options can be specified on a comparator to configure its behaviour.

/ dataComparator standardConfig

Element: namespaceConfiguration

Defines a set of prefix uri pairs for namespaces that can be used within XPath expressions provided to certain configurations such as ignoreChangesConfig or subtreeProcessingMode.

Sets the type of move detection, determining how move processing should be executed

Element: resultReadabilityOptions

Sets options to change the granularity and ordering of changes in the result in order to improve readability.

Sets whether modified elements containing text should be split when the amount of unchanged text falls below a given percentage

Element: subtreeProcessingMode

Specifies configuration options for subtree processing.
These options can be specified on a comparator to configure its behaviour.

Sets the percentage of unchanged text present in a modified element below which the element will be split
Set the scope to use for determining if each element in the document is of a mixed-content type

Element: property

Sets the string value of a named property

/ defaultMode
[enum]
Permitted values / descriptions: text
This mode sets the subtree mode to text. data
This mode sets the subtree mode to data.

Element: feature

Sets the boolean value of a named feature.

/ dataComparator advancedConfig parserProperties name anyNameType

Element: booleanProperty

A named boolean property

/ parserFeatures literalValue boolean
The literal boolean value for the feature setting. name anyURI
The fully qualitifed feature name. parameterRef string

Element: stringProperty

A named string property

Description

Element: inputPoint

Extension point for modifying A and B input filters, after element flattening.

Element: inputPreFlatteningPoint

Description

filter

Extension point for modifying A and B input filters, before element flattening.

Element: finalPoint

Final filter extension point in the DataComparator output pipeline.

/ dataComparator extensionPoints inputExtensionPoints

Element: description

Short summary of the purpose of the parameter.

/ extensionPoints outputExtensionPoints

Type: xs:string

Element: attributeLocations

This class is used to represent locations for attributes which will be processed and split.

Element: isEnabled

Sets whether the comparator should enable the feature or not. stringParameter dataComparator standardConfig attributeSplittingConfig
This is used to represent an attribute location XPath, separator, regular expression or output separator

attributeLocation

Element: generateReport

Set 'true' to enable the feature. parameterRef string

Specifies whether to generate comparison report.

Element: reportDirectory

Specifies where to generate comparison report.

/ dataComparator standardConfig comparisonReport literalValue boolean
Set 'true' to generate comparison report as an additional output. parameterRef string

Element: locations

This class is used to represent locations for elements and attributes on which the changes will be ignored.

/ dataComparator standardConfig comparisonReport literalValue string
The location of the directory to write the comparison report to. parameterRef string

Element: moveCandidates

This class is used to represent move candidates.

moveCandidate

Element: moveDetectionType

Sets the type of move detection, determining how move processing should be executed.

[enum]
Permitted values / descriptions: restricted
This mode only detects moves at the roots of added or deleted subtrees.
This may offer a performance benefit in some cases. unrestricted
This mode is used to detect moves anywhere in the tree.

Element: showMoveSource

Sets whether the comparator should show move source or not.

Set 'true' to show move source. parameterRef string

Element: defaultNamespace

This element is used to define the default namespace.

Element: userNamespaces

This element is used to define user namespaces.

/ dataComparator standardConfig namespaceConfiguration uri
Sets the uri of the default namespace.

Element: changeGatheringEnabled

Sets whether to change the order of consecutive changed items to improve readability.
If the result contains a sequence of elements whose deltaxml:deltaV2 attribute values are mixed up in a sequence of As and Bs, enabling this feature will cause them to be reordered so that they are not mixed.

Element: characterByCharacterEnabled

Element: elementSplittingEnabled

Sets whether modified elements containing text should be split when the amount of unchanged text falls below a given percentage.

Element: elementSplittingThreshold

Description

Sets the percentage of unchanged text present in a modified element below which the element will be split.

Element: mixedContentDetectionScope

Set the scope to use for determining if each element in the document is of a mixed-content type.
The mixed content type affects whitespace processing. If DTD or XML Schema validation is used this setting has no effect. dataComparator standardConfig resultReadabilityOptions literalValue
Percentage
The threshold percentage as in integer (1 to 100) parameterRef string

[enum]
Permitted values / descriptions: document
Determine if an element is mixed-content using information from elements of the same name in the document. Using this scope significantly slows processing for large files. local
Determine mixed content information for each element in turn, based on the contents of that element alone. parameterRef string

Element: modifiedWhitespaceBehaviour

Set the ModifiedWhitespaceBehaviour to use for changes to whitespace.
Here, both documents must have some whitespace at a given point in order for there to be a change in whitespace. This will then be processed in accordance with the specified behaviour.
Whitespace insertions and deletions are not affected by the modified whitespace behaviour.

[enum]
Permitted values / descriptions: useDefault
The context dependent automatic whitespace setting.

Element: orphanedWordDetectionEnabled

States whether or not orphaned word detection is enabled.

/ ignore
Ignore differences in whitespace that is not explicitly preserved. keepA
Similar to 'ignore' except that 'A' document's whitespace is kept (instead of the 'B' document's whitespace). normalize
Normalize whitespace in inputs before comparison. show

Element: orphanedWordLengthLimit

Sets the maximum number of words to consider for orphaned word detection.
Sequences of words longer than the specified length will never be detected as orphaned words, regardless of the amount of changed words around them.

/ standardConfig resultReadabilityOptions literalValue boolean
Enable/disable. parameterRef string

Element: orphanedWordMaxPercentage

Sets the maximum proportion of the total change size that orphaned words can take while still being considered orphans.
If the percentage value for a possibly orphaned section is less than or equal to this value, then it is classified as orphaned (unless there are more words than the length limit allows). The percentage value for a possibly orphaned section is calculated as follows:

Element: subtrees

This class is used to represent subtrees.

Percentage
An integer value (1 to 100) that is the max percentage of the total change size were a change is considered to be orphaned. parameterRef string

Element: filter

An XSLT or Java XML processing filter to be loaded into the comparator pipeline.
There must be one 'class', 'http', 'resource' or 'file' child element for a filter element as this defines the filter type and how it is to be loaded.
Attributes on the filter element may be used to control whether the filter is enabled or disabled.
Child 'parameter' elements may also be added so that parameter values are passed on to matching parameters in the XML filter. Any number of filter elements may be added to an extension point, filters are processed in the pipeline in order of occurrence.

NCName
Enable filter when named boolean pipelineParameter is true. unless
NCName

Element: attributeLocation

This is used to represent an attribute location XPath, separator, regular expression or output separator.

/ true. when string
Enable filter when XPath expression evaluates true.

Load a Java class implementing the SAX XMLFilter interface from the
ClassPath

A named parameter to supply to a filter - any XPath-item type
(including a sequence) can be supplied to an XSLT filter using the xpath attribute
Load an XSLT filter as a resource in a jar file class file http parameter resource dataComparator

[enum]
Permitted values / descriptions: narrativeText
This mode sets the default mode to narrative text. dataSet
This mode sets the default mode to data set. dataList
This mode sets the default mode to data list. separator string
Sets the separator used to split the attribute text. regex string
Sets the regular expression used to split the attribute text.

Element: location

This is used to represent location XPath and result rule.

Sets the output separator used to separate tokens in the output. dataComparator standardConfig ignoreChangesConfig locations ignoreXpath
Sets the node XPath. resultRule
[enum]
Permitted values / descriptions:
BA
Default. This

Element: moveCandidate

This is used to represent move candidate element XPath and class XPath pairs.

/ copies new value if it exists, otherwise copy old value.
AB
This copies old value if it exists, otherwise copy new value.
A
This copies old value if it exists, otherwise don’t output.
B
This copies new value if it exists, otherwise don’t output
DELETE
Don’t copy under any circumstances (but process the subtree if present) dataComparator standardConfig moveDetectionConfig

Element: userNamespace

This element is used to define user namespace.

Sets the element Xpath. classXpath
Sets the class Xpath.

Element: subtree

This is used to represent subtree XPath and type.

Sets the prefix of the user namespace. uri
Sets the uri of the user namespace. dataComparator standardConfig subtreeProcessingMode subtrees elemXpath
Sets the element XPath. mode
[enum]
Permitted values / descriptions: text

Element: class

Load a Java class implementing the SAX XMLFilter interface from the
ClassPath.

This mode sets the subtree mode to text. data
This mode sets the subtree mode to data. ordered boolean
Sets the boolean where true represents ordered alignment, and false represents unordered alignment.

/ filter dataComparator extensionPoints inputExtensionPoints inputPreFlatteningPoint filter dataComparator extensionPoints outputExtensionPoints finalPoint

Element: file

Load an XSLT filter from the file system.

/ filter name anyNameType
The fully qualified name of the class.

The path of the filter to be loaded, relative paths are

Element: http

Load XSLT filter from an identified HTTP resource.

/ resolved according to the setting of the 'relBase' attribute. relBase
[enum]
The relBase attribute is used to specify how the relative path to a file is resolved.
Permitted values / descriptions: current
Resolve using the current working directory, obtained from the Java user.dir system property. home
Resolve using the user's home directory. dxp
Resolve using the directory containing the DXP file, when it is loaded from a file.

/ dataComparator extensionPoints inputExtensionPoints inputPoint filter dataComparator extensionPoints inputExtensionPoints inputPreFlatteningPoint filter dataComparator

Element: parameter

A named parameter to supply to a filter - any XPath-item type (including a sequence) can be supplied to an XSLT filter using the xpath attribute.

/ extensionPoints outputExtensionPoints finalPoint filter url anyURI
The URL of the HTTP resource.

/ inputExtensionPoints inputPoint filter dataComparator extensionPoints inputExtensionPoints inputPreFlatteningPoint filter dataComparator extensionPoints outputExtensionPoints

Element: resource

Load an XSLT filter as a resource in a jar file.

/ finalPoint filter name anyNameType

/ inputPoint filter dataComparator extensionPoints inputExtensionPoints inputPreFlatteningPoint filter dataComparator extensionPoints outputExtensionPoints

Element: childAlignment

This class represents child alignment specifiers for the subtree configuration.

The resource name, for example, '/xxxsl/resource.xsl``'

This documentation was auto-generated from the XML Schema XSD. childXpath