BOOK STRUCTURE VIEWER


What is BSV?


Book Structure Viewer (BSV) is a tool for performing global operations on multi-file DITA and IBMIDDOC documents.

BSV provides some extra functionality not found in the IDWB. For example, the Epic editor has only a limited concept of a book -- it is basically a single-file editor. BSV, on the other hand, "sees" a DITA or IBMIDDOC document as a complete entity, and allows you to view and edit it as such.

Imagine, for example, that you have a document consisting of 1000+ files, many of which are 500 - 600 lines long. You want to find all instances of a specific text string and change some, but not all, to a different value. Furthermore, the order in which the instances occur is significant, so you want to examine each one in the order in which it occurs in the book. You want to do this quickly. For a job like this, you need BSV!

The following sections describe some of the things you can do with BSV.

Functions available in both DITA and IBMIDDOC documents

Viewer functions

  1. Explore the structure of a DITA or IBMIDDOC document. Opening a .ditamap file gives you a tree view of its navigable files. Similarly, opening an .IDD file gives you a tree view of its embedded files (including common files). You can expand or contract branches of the tree.

    Clicking on a text file file in the tree view immediately displays the file in a separate edit window. This has all the usual edit functions. (Readonly files are never overwritten.)

    Clicking on an .EPS or .GIF file in the tree view displays the graphic in your chosen graphics-viewer program (for example, GhostView (for EPS files) or Windows Paint (for GIF files)).

  2. Go to a specified line number in a particular file. This is useful for debugging IDWB error messages that invariably quote a line number.

Search and replace functions

  1. Do a fast, interactive, sequential, global search (LFIND) of the whole document.
  2. Do a fast, interactive, sequential, global search-and-replace (LCHANGE). All the usual "Y/N", "skip file", "replace all", "quit" functions are supported.
  3. Use regular expressions in a global search or global search-and-replace. As of Version 8, regular expressions are fully supported.

IDs functions

  1. List all the IDs in your book, or in a specific file. The listings include full information about each ID -- e.g. the type of element it occurs on, the element's title or caption, and the name of the file the ID occurs in.
  2. Sort the IDs in various ways, filter them, and print or save the listings. For example, if another writer needs to create hypertext links to information in your book, you can give them a printed listing of IDs/division titles, sorted sequentially by file.
  3. Run a "single-click" check for duplicate IDs.

Cross-reference functions

  1. List all the cross-references (xrefs) in your book, or in a specific file. The listings show the REFID itself, the file it's in, the element-type of the target (division, fig, table, etc.), the title or caption of the target, and the target filename. If the target doesn't exist, the xref is listed as UNRESOLVED.
  2. Filter, print, and save the listings. For example, you can show just the xrefs that are UNRESOLVED.
  3. Run a "single-click" check for unresolved cross-references.

Revision bar functions

  1. Remove all revbars from a book, or from a specific file, in seconds.
  2. Change all revbar identifiers in a book, or in a file, to a single value ("flatten").
  3. List revbar IDs and see which files each occurs in; filter lists by revbar ID and/or file-type (R/O, R/W, ALL).
  4. Selectively remove or flatten revbars.

Trademark functions

  1. List all trademarks, all registered trademarks, or all non-registered trademarks in a book (i.e. all phrases that have been marked as trademarks).
  2. Filter the list to remove duplicates, showing only unique trademarks.
  3. Run a "single-click" job to remove all trademark tagging from an entire document.

Configuration functions

You can create and save multiple configurations, and switch between them at the click of a button. For example, you can save multiple filepaths, enabling you to open books that embed files from different sets of directories. Other preferences you can specify include:

DITA-specific functions

Topics functions

  1. List the navigable topics referenced from a .ditamap or .maplist file. Only navigable topics are listed, and inherited attributes (such as 'toc=no') are supported. Information about each topic-reference includes the topic-type (topic, concept, task, or reference), navtitle, href, numeric "level" in the navigation tree, and name of the topic file. The IDWB algorithms are used to find the values of attributes such as navtitle.
  2. Filter the listings by topic-type and level, and print or save them.
  3. Display information about the topic file referenced by a topicref: e.g. its full filename, title, type, ID, navtitle, and searchtitle; the topic's parent XML node; its child XML nodes.
  4. Display the XML content of the topic, its parent node, or any of its child nodes in a separate window.

XML function

  1. Validate the XML content of each referenced topic file against the relevant DTD, as the map file is loaded.

Links functions

  1. List all the links in a document, or in a specific file. The listings show: the link ID, the source file in which the link occurs, the element-type of the target (division, table, fig, etc.), the title or caption (if any) of the target element, and the target book.
  2. Run a "single-click" check for unresolved links.

Configuration function

IBMIDDOC-specific functions

Divisions functions

  1. List all the divisions in your book, or in a specific file. The listings include full information about each division -- e.g. division-level, ID, title, name of the file it occurs in, and whether it is classified as "task", "concept", or "reference"-style information (or none).
  2. Filter the divisions in various ways, and print or save the listings. For example, you can list all the division 2s that don't have IDs; or all the Parts, division 1 and 2s that are classified as "concept" information.

Links functions

  1. List all the inter-book links in your book, or in a specific file. The listings show: the link ID, the link text, the source file in which the link occurs, the element-type of the target (division, table, fig, etc.), and the target book.
  2. Run a "single-click" check for undefined links.

Configuration functions

User-written global change program

Classification functions

  1. Categorize the information in your book as "concept", "task", or "reference".
  2. Choose which division-levels you want to classify -- e.g. Parts, division 1s, 2s, 3s or all.
  3. Classify a single file, or the whole book (you can stop at any point - changes up to that point are saved). Changes are reversible.

Classification is done from drop-down lists, by adding class attributes to divisions. Full information about each division is displayed.

The advantages of classifying from BSV are that you can quickly and easily identify the division-levels you want to classify (e.g. div 2s); that the correct tagging is entered automatically; and that only "approved" values can be entered -- the values in the lists.

Back to Home page