Table of Contents

Search

  1. Preface
  2. Introduction to Data Transformation
  3. Data Processor Transformation
  4. Wizard Input and Output Formats
  5. Relational Input and Output
  6. Using the IntelliScript Editor
  7. XMap
  8. Libraries
  9. Schema Object
  10. Command Line Interface
  11. Scripts
  12. Parsers
  13. Script Ports
  14. Document Processors
  15. Formats
  16. Data Holders
  17. Anchors
  18. Transformers
  19. Actions
  20. Serializers
  21. Mappers
  22. Locators, Keys, and Indexing
  23. Streamers
  24. Validators, Notifications, and Failure Handling
  25. Validation Rules
  26. Custom Script Components

Data Transformation User Guide

Data Transformation User Guide

Marking Property

Marking Property

Consider the following source-document structure:
MARKER %%%CONTENT A ^^^CONTENT B
Suppose that the sequence of
Content A
and
Content B
varies among the source documents. In some documents,
Content B
precedes
Content A
.
In that case, the search criteria are:
  • Content A
    and
    Content B
    both follow the
    Marker
    anchor.
  • Content A
    begins with
    %%%
    , and
    Content B
    begins with
    ^^^
    .
By default, the search scope for
Content A
is from the end of the
Marker
to the end of the document. The search scope for
Content B
is from the end of
Content A
to the end of the document. This does not work because in some source documents,
Content A
and
Content B
are reversed.
The solution is to change the search scope for
Content B
. You can do this by setting the
marking
property of
Content A
. The
marking
property specifies where the Script places the reference points that determine the start and end of the search scope.
The default setting is
marking = full
, which means that the Script places reference points before and after each anchor. The search scope for
Content B
begins at the last reference point, which is the one following
Content A
. This leads to incorrect parsing, as we have seen.
To prevent the Script from placing reference points around
Content A,
set the
marking
property of
Content A
to
none
. As a result, the search scope for
Content B
starts at the end of the
Marker
. This allows the Script to find
Content B
, even if it precedes
Content A
.
The following table describes all four possible values of the
marking
property. The Result column assumes that you assign the
marking
value to
Content A
in the above example.
Marking Property
Explanation
Result
full
The Script places reference marks at the beginning and end of the current anchor. This is the default behavior.
The Script seeks the next anchor after the end of the current anchor.
Content B
follows
Content A
.
begin position
The Script places a reference mark only at the start of the current anchor.
The Script seeks the next anchor after the start of the current anchor.
Content B
overlaps or follows
Content A
.
end position
The Script places a reference mark only at the end of the current anchor.
The Script seeks the next anchor after the end of the current anchor.
Content B
follows
Content A
.
none
The Script does not place any reference marks at the current anchor.
The Script seeks the next anchor after the end of the preceding anchor.
Content B
follows
Marker
, without regard to
Content
A
.
There are a few circumstances where you must use an anchor that marks a reference point. An example is the separator of a
RepeatingGroup
. If the separator does not mark, it does nothing. A warning appears if you attempt to use a non-marking anchor in a location where marking is required.


Updated September 26, 2018