Jumping Between Books

So far, we've been describing multimedia titles consisting of a single .MVB file. For these titles, a single .MVB file corresponds to a single .IND (search index) file; you build the title and the index in a single build pass.

You can, however, build Viewer titles that consist of multiple .MVB files. For example, if you are producing a writer's guide using Viewer, you might want to include a dictionary, thesaurus, style guide, and dictionary of quotations in the same title. Each of these components would have its own .MVB file, but they would share a single .IND file. In Viewer terminology, each .MVB file is a separate book, and all of the books plus the .IND file they share make up the title.

To combine all of these books into a single title, you create a separate project (.MVP) file for each book in the title and compile each book separately. Each book has its own .MVB file. Finally, you create an index file for all of the .MVB files in the title. Because these books share a single index file, readers can use full-text searching to look in any book in the title for specific text. Users can also jump from one book to another just as they might within a single book.

In Chapter 11, “Advanced Build Options,” you will find information on how to build a multi-book title and perform full-text searches in such a title. Here, it is assumed that you've compiled the individual .MVB files for the different books and want to create a jump from one book to another.

You can create jumps from one book to a topic in a different book in one of two ways:

By adding the name of the .MVB file to the context string, as shown in the following syntax:

context-string@.MVB-file name

By coding the jump using the Viewer JumpId command, as shown in the following syntax:

!JumpId("filename", "context-string")

For example, to create a jump from a topic in the USA.MVB file to the topic
with context string “apache” in the TRIBES.MVB file, adding the filename to
the context string creates the jump (formatted as hidden text), as shown in the following code fragment:

apache@tribes.mvb

Or you could code the jump (again as hidden text) using the JumpId command, as shown in the following code fragment:

!JumpId("tribes.mvb", "apache")

In either case, the jump would follow text or a bitmap reference formatted as double-underline text.