
ADOBE FRAMEMAKER 10
MIF Reference
37
The format of a cross-reference determines its appearance and the wording. Cross-reference formats include
building
blocks,
instructions to FrameMaker about what information to extract from the reference source. A common
building block is
<$pagenum>
, which FrameMaker replaces with the page number of the reference source. Another
common building block is <$paratext>, which FrameMaker replaces with the text content of the paragraph,
excluding autonumbering and special characters such as tabs and forced line breaks.
Within a FrameMaker document, you insert and format cross-references by choosing Cross-Reference from the
Special menu. In a MIF file, you create a cross-reference as follows:
•
Create the format of cross-references by using
XRefFormats
and
XRefFormat
statements.
•
Insert a marker at the reference source by using a
Marker
statement.
•
Insert the reference point by using an
XRef
statement.
Creating cross-reference formats
The cross-reference formats for a document are defined in one
XRefFormats
statement. A document can have only
one
XRefFormats
statement.
The
XRefFormats
statement contains one or more
XRefFormat
statements that define the cross-reference formats.
A cross-reference format consists of a name and a definition.
<XRefFormats
<XRefFormat
<XRefName `Page'>
<XRefDef `page\x11 <$pagenum\>'>
>
# end of XRefFormat
>
# end of XRefFormats
The name can be any string allowed in a MIF file (see
“Character set in strings” on page 7
). In this example, a
nonbreaking space (
\x11
) appears between the word “page” and the page number. Each cross-reference format must
have a unique name; names are case-sensitive. The cross-reference definition contains text and cross-reference
building blocks. See your user’s manual or the online Help system for a list of building blocks.
Inserting the reference source marker
To mark the location of the reference source, insert a
Marker
statement at the beginning of the reference source. The
following example creates a cross-reference to a heading:
<Para
<PgfTag `Heading'>
<ParaLine
<Marker
<MType 9>
# Identifies this as a cross-reference
<MText `34126: Heading: My Heading'>
# Cross-reference source
>
# end of Marker
<String `My Heading'>
>
# end of ParaLine
>
# end of Para
The
<MType 9>
statement identifies this as a cross-reference marker; it is required. The
MText
statement contains
the cross-reference source text, which must be unique. When FrameMaker writes a cross-reference, it adds a unique
number and the paragraph tag to the
MText
statement, as shown in the previous example. While the number is not
required, it guarantees that the cross-reference points to a unique source when the number is present. In the previous
example, the number in
<MText>
is not mandatory. However, the number in the example ensures that the new cross-
reference points to the
‘My heading’
heading.