This chapter provides information on how best to use FrameMaker features to produce online books, as well as pointers to related information elsewhere in the book. This chapter contains these sections:
“Tagging FrameMaker Files” provides some important rules for using paragraph and character tags in your FrameMaker files.
“Creating Online Links” explains the different types of links and how they appear and behave in the IRIS InSight viewer. This section also provides guidelines and instructions for creating links, such as internal, cross-book, glossary, index, reference page, and launchable applications, in your book.
For information on creating and importing figures, see the instructions in Chapter 5, “Working With Figures”.
For instructions on creating online help and integrating it into a GUI application, see Chapter 8, “ Creating Online Help”.
Before you begin, be sure you are using the standard SGI IPTemplate. The example files that come with the templates contain information on basic tagging sequences and standard uses of the various tags.
This section offers some general tips for tagging.
If you want individual characters to have a particular look, be sure to use the supplied character tags to change their appearance. Do not use FrameMaker's character designer tool to simply change the format of a character. The build tools look only at tags, not at any modifications you may have made to a character's format. If you don't understand the distinction between tags and formats, refer to the FrameMaker documentation.
The example files that come with the templates and Chapter 3, “Using the IPTemplates to Author Documents” contain descriptions of the various tags and where and how they may be used. For example, don't put the ChapTitle tag before the ChapNum tag, or the FigTitle tag before the ChapTitle tag, or the Heading2 tag directly after the ChapTitle tag. The online translator expects to see only certain sequences of paragraph and character tags and produces errors for what it considers invalid sequences.
![]() | Note: Don't create your own tags, because the build tools cannot translate any tags they don't know about. |
Use the correct character tag for each tagged word or phrase. Content-based tags (based on the kind of information being tagged) are preferable to format-based tags (based on the physical appearance of characters). For example, if you're tagging a command, use the Command character tag rather than the Italics character tag. Use the format-based character tags, such as Italics and Bold, only when the template doesn't contain a specific tag that fits your word or phrase.
The current build tools do not support FrameMaker equations. If you want an equation in your online book, you must use snapshot or some other screen capture tools to capture a picture of the equation. snapshot saves the equation as a .rgb file and you can import this .rgb file as if it were a figure. Don't give the equation a figure title, though, or it will show up in the list of figures as a figure. For more information about creating equations, see “ Equation Paragraph Tags” in Chapter 3; information about screen captures can be found in “Capturing Images” in Chapter 5.
In general, try to keep character tags on the specific word or phrase you're tagging, without tagging surrounding whitespace. In particular, never apply a character tag to a tab or a soft return[8] . It's easy to apply character tags to whitespace characters by mistake, particularly when you're working with a hanging list (note that a tab character that has a character tag generates a warning message), so be careful.
Here are a couple of things to watch for when tagging:
If possible, select the word you're tagging by double-clicking on it. This keeps you from accidentally selecting extra spaces or tabs. (Unfortunately, sometimes double-clicking does not select the entire “word” you're tagging, because the word is a C expression or something else containing unusual characters.)
Sometimes it is difficult to see your selection clearly in FrameMaker, so it's hard to tell if you've selected spaces or tabs in addition to words. If you've accidentally tagged a hard return or a soft return along with the preceding word, insert a space between the return and the word before it. Tag this space with the Default Paragraph Format character tag. This procedure is necessary because hard and soft returns in FrameMaker take the character tag of the character preceding them; you can't just tag the return itself to fix the problem.
Format code examples with spaces, rather than with tabs. Tabs in code don't display properly online because the translator doesn't recognize them for that paragraph tag. Conversion scripts exist to convert tabs to spaces before importing code examples into FrameMaker files.
Create copyright, registration, and trademark symbols according to the instructions listed here. If you use any other method for creating these symbols, you'll run into problems when you convert your files to SGML.
To create the copyright symbol (©), hold down Ctrl and press Q then release both keys, hold down Shift and type a right parenthesis ( ) ).
To create a registered trademark symbol (®), hold down Ctrl and press Q, then release both keys, hold down Shift, and type a left parenthesis ( ( ). Apply the Superscript character tag to the registered trademark symbol after it is inserted. If you don't know whether to use a trademark symbol or a registered-trademark symbol, consult your company's legal department.
To create a trademark symbol (™), hold down Ctrl and press Q, then release both keys, hold down Shift, and press asterisk (*). Apply the Superscript character tag to the trademark symbol after it is inserted.
Create en dashes and em dashes according to the instructions listed here. If you use any other method for creating these symbols, you might create problems when you convert your files to SGML.
To create an en dash (–), hold down Ctrl and press Q, then release both keys, hold down Shift, and press P.
To create an em dash (—), hold down Ctrl and press Q, then release both keys, hold down Shift, and press Q.
Links are connections between items of information, whether within the same online book or between separate online documents. When the reader clicks a linked item (whether text or an icon), either the IRIS InSight viewer scrolls to the referenced material (a target), or the material appears in a popup window (depending on what kind of material is referenced).
Links fall into two groups based on whether they are automatically generated from the structure of the document (structural links) and require no writer effort, or explicitly created by the writer during document development (writer-generated links).
A structural link is automatically created from the structure of the document during the conversion process. Lists of such links appear in the IRIS InSight > Views menu. All the headings listed in the Table of Contents (TOC) view in InSight, for example, are automatically linked to the corresponding headings within the book itself. The same goes for all figures, tables, and media shown in their respective View lists. The result is that a reader can click any item in a list view and the text area scrolls to the appropriate location in the online book.
The writer can use various FrameMaker tools to create links to text, tables, or figures in the same book (or in another book), between the text and the glossary, or between the index and the text. Each link has its own appearance and behavior.
Table 4-1 summarizes the writer-generated link types:
Table 4-1. Cross-Reference Link Types
Link Type | How to Create | Appearance in InSight | Link Behavior |
|---|---|---|---|
Cross-reference to text or table within a book | Use the Special > Cross-Reference format | Cross-reference appears in bold blue in the text | Viewer scrolls to referenced information |
Cross-reference to a figure within a book | Use the Special > Cross-Reference format | Cross-reference appears in bold blue in the text | Viewer scrolls to referenced figure |
Cross-reference to another book | Use the Special > Marker > Types 18 and 19 as described in “Creating Cross-Reference Links to Other Books ” | Cross-reference appears in red in text | Referenced information appears in new viewer |
Glossary link | Use the FrameMaker character tag, GlossaryItem; then create a glossary entry in your book's glossary file as described in “Creating Glossary Links” | Item appears in blue italicized text | Definition appears in a pop-up window |
Index link | Use the Special > Marker >Index marker as described in “Creating Index Entries” | Index entry appears in the Index View. Instead of a page number, location in the text appears as bold blue cross- reference to the associated heading/title | Viewer scrolls to referenced information |
Reference page link | Tag an item with the RefPage character tag as described in “Creating Reference (Man) Page Links” | Item appears as red text | Text window appears containing indicated reference page |
Inline media | Use the InlineObj and InlineTitle paragraph tags as described in “Creating Inline Media Links” | Object appears in media viewer inside InSight viewer window | Media viewer controls appropriate to media type allow user to manipulate or view media |
Launch an application (including a World Wide Web browser) | Use Special > Marker > Type 17, as described in “Creating Links to URLs and Applications” | Either icon in margin or hot text, depending on how you set up the link | Application comes up in a new window |
It is recommended that for each chapter and appendix of your book, you begin with a bulleted list of the top-level sections in that part, making part of each item a cross-reference to the specified heading. This approach serves two purposes:
It allows the online reader to click on any item in the list and have the viewer scroll to that point in the text.
It creates cross-reference targets on all top-level headings. Whenever you create a cross-reference, FrameMaker automatically creates a target marker at the referenced location. These targets can be used by other writers to link to your book (see “Creating Cross-Reference Links to Other Books ”).
Cross-reference links within a book are created using the FrameMaker Cross-Reference tool. They appear as bold blue text within the online document. When the reader clicks the link, IRIS InSight either scrolls to the text if the link is to a table or text, or opens the figure in a restricted view if the link is to a figure.
In the example shown in Figure 4-1, the cross reference is referring to Figure A, and Figure A is located two paragraphs below the cross reference. When the reader clicks on the blue “Figure A” text, they are automatically jumped to the image and title for Figure A.
To establish a cross-reference:
Insert your cursor where you want the link to appear.
Choose Special > Cross-Reference.
The Cross-Reference dialog box appears.
Select the paragraph tag of the item you to which you want to link from the list of paragraph tags in the left field.
Select the appropriate heading, title, or text in the right field.
Choose the appropriate cross-reference format from the Format popup menu.
Click Insert.
Table 4-2 shows a matrix of the possible cross-reference formats for each tag.
![]() | Note: Only paragraph tags and their possible cross-reference formats that can generate a useful cross-reference are listed in Table 4-2. |
Table 4-2. Cross-Reference Format by Paragraph Tag
| Cross-Reference Formats Supported by SGIDOC DTD | Cross-Reference Formats Supported by SGIDOCBK DTD[a] |
|---|---|---|
ChapTitle | AppRef, AppRef1st w/com, AppRef1st w/o end punct, AppRef1st w/per, ChapRef, ChapRef1st w/com, ChapRef1st w/o end punct, ChapRef1st w/per | AppRef, ChapRef, ChapRef1st w/o end punct |
CodeTitle | FgTblExEqRef | FgTblExEqRef |
ExampleTitle | FgTblExEqRef | FgTblExEqRef |
FigTitle | FgTblExEqRef | FgTblExEqRef |
Heading* | HdRef, HdRef & App, HdRef & Chap, HdRef & Page, HdRef w/comma, HdRef w/period | HdRef, HdRef & App, HdRef & Chap, HdRef & Page |
InlineTitle | FgTblExEqRef | FgTblExEqRef |
List1st | ParaNumber | ParaNumber |
List* | ParaNumber | ParaNumber |
TableTitle | FgTblExEqRef | FgTblExEqRef |
[a] The cross-reference formats containing embedded punctuation (w/com, w/per) may still be used in docu ments built with the SGIDOCBK DTD, however the punctuation will be lost in the translation. | ||
Be sure to use an appropriate cross-reference format. Note that the conversion tool automatically removes any page numbers that appear in your cross-reference text; if your book will appear in print as well as online, it's a good idea to use cross-reference formats that include page numbers to help hard copy readers navigate through the book.
Cross-book links appear as bold red text within the online document. When the reader clicks on the link, IRIS InSight opens the appropriate book (if it's available) and either scrolls to the text if the link is to a table or text, or opens the figure in a restricted view if the link is to a figure.
Although cross-references between documents are much like cross-references between files within a book, there are two problems that complicate the situation tremendously:
There is no way to guarantee that any two books (even those documenting the same product) will be revised simultaneously, so it's possible that another book you link to may change after your book releases, breaking your link to the other book.
You usually don't have the same access to another book that you have to your own; in particular, you can't create a new link target in the referenced book.
The first problem is a coordination and document management issue. If you want to create cross-book links, please take the time to evaluate the risk of having it break. If the book you want to link to is in development, be sure to talk with the author. If the book has already been released, find out when it will be revised and how extensive the changes will be.
Once you have decided to create a cross-book link, you must make sure that there's a cross-reference target in the other book at the point to which you want to link. If such a target doesn't exist already, you need to ask the writer of the other book to create a target for you. It's probably not a good idea to make changes to someone else's book without asking first, especially if you use a revision control system to check documents into and out of a central archive.
To create a cross-book link using markers:
Open the FrameMaker chapter in your book and insert the cursor at the beginning of the text where the cross-book link marker will be placed.
Go to the FrameMaker menu bar and choose Special > Marker.
In the Marker dialog, select Type 18 from the Marker Type pop-up menu.
In the Marker Text box, enter information about the cross-book link using this syntax:
target_short_title<Space>unique_id |
where target_short_title is the short title of the target book, and unique_id is the identifying number associated with the target element in the target book. To identify the correct unique_id, look in the SGML file for the target book; find the target element and look for an XREF LINKEND= tag nearby. For instance, in the following example the unique_id for the TITLE element is 57332:
<SECTION ID="LE57332-PARENT"<TITLE ID=LE57332-TITLE">Supplementary Reading</TITLE><PARAGRAPH>Refer to these documents to supplement the information in this guide:</PARAGRAPH> |
Or, open the FrameMaker file containing your target information and find the marker associated with the title or heading you to which you want to link. Highlight the target marker and note the marker ID number shown in the Marker Text field. This is the unique_ID you want to use in your cross-book link.
Press the New Marker button to create a new marker containing the information you've specified.
Move the cursor from the beginning of the text where the cross-book link will be placed to the end of the text.
From the Marker dialog box, select Type 19 from the Marker Type popup menu. Leave the Marker Text box empty.
Press the New Marker button to create a new empty marker of type 19.
If the cross-book link is the title of another book, tag the entire construct (markers and the title in between them) with the DocTitle character tag.
The result is a piece of your document with this structure:
<type-18_marker>text<type-19_marker> |
where “text” is the text that will be marked as a link, the type-18 marker contains the name of the target book and the ID of the target element, and the type-19 marker is empty (a placeholder to indicate the end of the cross-reference text).
![]() | Note: The text between the markers cannot contain any character tags other than DocTitle. |
Glossary links appear as blue italicized words in the online text. When the reader clicks on the word, the definition appears in a restricted viewer. The link itself is either to the SGI Glossary of Terms, a global glossary common to all books, or to a local glossary specific to the book. IRIS InSight searches the local glossary first (if it exists), then searches the global glossary.
To make a glossary item, tag the word using the GlossaryItem character tag. Do this only where you think it is important, not every time the word appears; otherwise your book will be peppered with blue italicized glossary links. In order to match, the text that you tag GlossaryItem must be spelled and punctuated identically to the text of a GlossaryTerm in your glossary.
To create a local glossary tailored specifically to your book, use the IPGlossary.doc template provided with the book template files. Once you've created your glossary, add its filename (usually simply glossary.doc) to your Makefile at the end of the list of chapter files. The build tools automatically create links between words tagged GlossaryItem and the corresponding entries in the glossary file.
Index entries appear in the Index View in much the same way as they would in a hard copy index. The major difference is that instead of a page number, the location in the text appears as a bold blue cross-reference to the associated heading or title.
Use FrameMaker index markers to create index entries for the back-of-the-book index (so called to distinguish it from the full-text index that the build tools create).
To create index entries using markers:
Insert the cursor next to the text to be indexed.
Choose Special > Marker.
Select Index from the Marker Type popup list.
Type the index information in the Marker Text field.
For second- and third-level index entries, a colon is used as the delimiter. Follow the syntax
<main_entry>:<sub-level> |
Click New Marker.
To edit an existing index entry:
Choose Special > Marker.
Highlight the index marker so the text appears in the Marker Text field.
Edit the text.
Click Edit Marker.
As an alternative, if you are trying to update a large set of index markers, use the conditional text format, IndexEntry. The IndexEntry conditional text format is part of the standard set of conditional text formats provided with each template file.
To determine if your document includes index entries created using this conditional text technique:
Choose Special > Conditional Text.
Click Show/Hide.
Highlight IndexEntry and use the <-- button to move it to the left window.
Click Set.
To find an existing index entry done with IndexEntry conditional text:
Choose Special > Marker to display the Marker dialog box.
Choose Edit > Find/Change.
Set up Find to Marker of Type: and type Index into the dialog box.
In the Change popup menu, select To Text.
Click Find.
When you have found the index entry you want to edit:
Click Change so the index marker information changes to text.
Edit the index entry in the text of the document (it will appear in blue underlined text).
Select the index entry text (highlight it).
Ensure that the new text appears in the Marker Text field.
Click Edit Marker.
To hide conditional text index entries in a document:
Choose Special > Conditional Text.
Select Show/Hide.
Select IndexEntry and move it to the Hide column using the --> button.
Select Set.
To hide conditional text index entries in an entire document.
Open a document in a book that has its index entries hidden.
In the bookfile, Choose File > Import Formats.
From the Import from Document scroll list, select the document that has its index entries hidden.
Select only the Conditional Text check box.
Ensure that all files you wish to update are listed in the Update scroll list.
Click Import.
Below are some tips to help make index creation a less painful experience:
Be careful about how you treat blank spaces before and after your index entries. For example, if you put an index entry at the beginning of a paragraph and put an unconditional blank between the index entry and the real beginning of the text, your paragraph will be improperly indented.
FrameMaker can automatically generate lists of markers. In the bookfile, choose File > Generate/Book, check List, select List of Markers or Alphabetical Marker List, and click Generate.
In your FrameMaker files, choose Edit > Find/Change to search for Any Marker, Marker of Type:, or Marker Text.
Online books require certain limitations in index entries:
Index entries can be no more than three levels deep.
You can't put an index marker in a table footnote.
A character format in an index entry can't cross a semicolon or colon boundary; for instance, <Italics>entry:subentry<Default Para Font> won't work the way you might expect it to. Instead, you'd have to use <Italics>entry<Default Para Font>:<Italics>subentry<Default Para Font>.
Special characters that result in entity references (such as special characters for foreign languages) may not sort correctly in the online index.
Sorting ignores these characters if they appear as the first character in an index entry: “, <, $, ., /, and <space>. The syntax for overriding the ignore instructions are outlined in “Template-Specific Index Entry Syntax Rules”.
For an explanation of the standard rules for index entry syntax, see the FrameMaker documentation. The templates have defined the following characters as “ignored” for index sorting purposes:
$ dollar sign / slash . period < less than " double quote “ left double quote ” right double quote - hyphen – endash — emdash |
So, for instance, the entry
/etc/hosts |
is sorted as though the slashes were absent. The full entry (under E) appears as
E /etc/hosts |
Be aware that because all instances of an ignored character are ignored, sequences like the following are possible:
/etc/ghosts /etchosts /etc/root |
This is primarily a problem with the / character, since the other ignored characters rarely appear anywhere but the beginning of an index entry. In the case of the / character, it was decided that the advantage of having the leading / ignored outweighed the disadvantage of having to put up with a few cases where an ignored / in the midst of an entry caused an unusual sort order.
The following rules apply to ignored characters in index entry syntax.
If an ignored character appears in brackets, it is “unignored” for sorting purposes:
/etc/hosts[/] is sorted (under Symbols) as:
Symbols /etc/hosts |
If the ignored character in brackets is followed by any text, the entry is sorted according to the full bracketed string, and the ignored character is ignored.
/etc[/etc] is sorted as:
E /etc |
The unignore “flag” can be grouped with other sort instructions in brackets.
/etc[;/;blah] is sorted as:
Symbols /etc |
and
B /etc |
and
E /etc |
To create a link to a reference page, use the Refpage character tag. Be sure to tag the entire reference page name, including the parentheses, if there are any. The reference page name will appear in red text online and, when clicked, will launch the reference page in a shell. In print, the reference page name appears in the default font (Palatino).
IRIS InSight supports the inclusion of digital media files created from SGIVIDEO, SGIRGB, SGIAUDIO, or SGIINVENTOR. To create a link to digital media in your online document, perform the following steps:
Open the FrameMaker file and insert your cursor where you want the inline media to appear in your document.
Press Enter to create an empty paragraph tag.
Tag the paragraph with the InlineObj paragraph tag.
Type the inline object information following the syntax:
type:referenced_filename
where type can be SGIVIDEO, SGIRGB, SGIAUDIO , or SGIINVENTOR .
Press Enter. The new paragraph is automatically tagged as InlineTitle.
Type the title of your media.
![]() | Note: The title paragraph is optional. If you don't need a title for your media to appear in the online document, delete this paragraph. |
Highlight and tag both the InlineObj and InlineTitle paragraphs with the OnlineOnly conditional tag.
Here is an example of an SGIINVENTOR file.
IRIS Insight supports the ability to launch a Web browser and point it to a particular Universal Resource Locator (URL) as well as to launch an application using the Launchword character tag in conjunction with Marker Type 17.
To launch Netscape and link to a URL address, perform the following steps:
Open the FrameMaker file and insert your cursor where you want the link to appear in your document.
If a URL is very long, put it on a line by itself by either pressing Enter to create a new paragraph or by pressing Shift +Enter to create a soft return.
Type the URL.
If the URL is longer than one line, make it wrap after a slash.
Insert the cursor in front of the URL.
Choose Special > Marker.
Select custom marker 17 from the Marker Type scroll list.
In the Marker Text box, type
Launchword:/usr/sbin/nr:<URL> |
Click New Marker.
Tag the URL with the Launchword character tag, but do not tag the marker.
The URL will appear as default font (Palatino) in print and as red text in your online document.
To launch an application from your online book, perform the following steps:
Open the FrameMaker file and insert your cursor in front of the name of the application.
Choose Special > Marker.
Select custom marker 17 from the Marker Type scroll list.
In the Marker Text box, type
Launchword:/<path>/<to>/<program> |
For example, to launch the application MovieMaker, type
Launchword:/usr/sbin/moviemaker |
Click New Marker.
Tag the application name with the Launchword character tag, but do not tag the marker.
The application name will appear as default font (Palatino) in print and as red text in your online document.