Cloning the Default Structure Applications

The first step in customizing the layout or formatting of a structure application is to create your own application; the easiest way to create your own is to clone the existing apps.

First, copy the FrameMaker\Structure\xml\DITA-FMx_1.2 folder (with all subfolders included) to a new folder name, for our purposes here, we’ll call it MyCo-DITA-1.2. In the new MyCo-DITA-1.2 folder are the three application folders (Topic, Map, and Book), and the DTD folder.

You’ll be modifying files in the application folders, and leaving the DTD folder as it is (unless you’re specializing, which we won’t go into here). You’ll want to make the same initial changes to each of the applications (replace APP with the Topic, Map, or Book application in the steps below).

  1. In the new MyCo-DITA-1.2\Topic folder open the topic_1.2.edd.fm file in FrameMaker. At the top of the file, you’ll see a line that says “Structured Application: DITA-FMx-Topic-1.2”, change that to “MyCo-DITA-1.2-Topic”. Save this file, but keep it open for now.
  2. In the MyCo-DITA-1.2\Topic folder open the topic_1.2.template.fm file in FrameMaker. Choose File > Import > Element Definitions, select the topic_1.2.edd.fm EDD file from the list and choose Import.
  3. Save and close the template, then save and close the EDD.
  4. In the MyCo-DITA-1.2\Topic folder open the structapps-stub_topic_1.2.fm file in FrameMaker. Change all instances of “DITA-FMx” to “MyCo-DITA”.
    This involves modifying the text of a variable. You’ll actually want to create a new variable and use that, don’t just modify the content of the existing variable; if you modify the content of the variable, it may break other applications since this “stub” file is imported into the structure application definitions file.
    1. Open the Variable dialog (Special > Variable).
    2. Select “DITA-FMx-Path” from the list and choose Edit Definition.
    3. In the Edit user variable dialog, change the name from “DITA-FMx-Path” to “MyCo-DITA-Path”, then in the Definition field change “DITA-FMx” to “MyCo-DITA”. Then choose Add then Done. Choose Done again in the Variables dialog.
    4. Double-click the first DITA-FMx-Path variable and in the Variables dialog select “MyCo-DITA-Path” and choose Replace.
    5. Now copy and paste this new variable overall instances of it in the stub file (in the Template, DTD, Read/Write Rules, and numerous places in Entity Locations).
  5. Save and close the stub file.
  6. Now open the structure application definitions file with the Structure Tools > Edit Application Definitions command.
  7. Place the insertion point just after the Version element (use the Structure View window to see this location easily), and choose File > Import > File. Navigate to the new structapps-stub_topic_1.2.fm file and select it. In the Import Text Flow By Reference dialog, accept the defaults and choose Import.

Repeat this task for each of the applications, Topic, Map, and Book. Once you have updated each application, you’ll have created a “clone” of the default applications and are now ready to customize them as needed.