The stream of ARD fields is supplied in the form of a GRP group expression (and stored in a normal GRP group) with the following control characters (see SUN/150):
^'' is used to mark the start of an indirection file, from which
further ARD fields should be read.
#'' is used to initiate a comment.
;'' is used to delimit GRP elements. A GRP element may contain
any
number of ARD fields (within the restrictions on string length set by GRP).
Argument lists for keyword and statement fields can be split between elements.
An element may consist of a single reference to an indirection file (using the
``^'' character). In this case the element must not contain any
explicit ARD fields. Note, GRP elements cannot span records. Thus,
carriage returns (either in a file or entered at a prompt) also act as GRP
element delimiters, in addition to the ``;'' character.
*'' is used as the token which represents basis names
within a modification element.
|'' is used to separate old and new substitution strings
when editing names.
-'' is used as the flag character. If a group expression is
supplied which ends with ``-'', then the user is re-prompted for a
further group expression, which will be appended to the end of the earlier ones.
The interpretation of ``-'' as the GRP flag character takes precedence
over it's interpretation as a synonym for the .NOT. operator.
{'' is used to open a new kernel.
}'' is used to close a kernel. A typical use of the kernel
characters is to allow the contents of an indirection file to be edited before
being used. An element such as ``{^file1.ard}|100|200|'' would cause the
contents of file1.ard to be read, and then all occurrences of 100 would
be replaced by 200.
A complete ARD description can be broken across several lines of an indirection
file, or across several directly supplied group expressions (each one terminated
with the flag character ``-''). However, breaks must occur either between fields or between values in a keyword or statement argument list.
ARD A Textual Language for Describing Regions within a Data Array