15.11.3 Treating FrameMaker variables as conrefs
You can make the content of FrameMaker user variables (and some FrameMaker system variables) available as DITA conrefs; see §15.11.2 Specifying how to treat FrameMaker variables.
To specify that FrameMaker variables should be treated as DITA conrefs:
When VariableType=Conref, the following settings are effective:
; VariableFile = file for referencing variables
; VariableTopicID = topic ID for the single topic in the VariableFile
; VariableElement = wrapper element for variables,
; WriteVariableFile = No (default) or Yes (write a file containing all
; variables defined in the Frame file after processing that file).
The VariableFile library file for referencing variables contains a single topic, with a single definition list in the <body>:
<dd><ph id="varname">variable content</ph></dd>
Each definition term is the name of a variable with spaces and punctuation removed. The corresponding description has an ID identical to the name, and content identical to the FrameMaker variable definition, except in plain text only.
Re-importing to FrameMaker, you would see (for example):
<ph conref="varfile.dita#varsetid/varname"></ph>
If the file name and topic ID match your setting, you can be sure that varname is a FrameMaker variable, and you can retrieve its definition.
When WriteVariableFile=Yes, Mif2Go generates a VariableFile library file for each FrameMaker file.
Retaining variables for an entire book
If you are producing DITA output from a FrameMaker book, the VariableFile library file will be overwritten for each FrameMaker chapter file until the last. Your variables-turned-conrefs will appear correctly in DITA output after conversion, but only the variables in the last FrameMaker file processed will remain in the VariableFile library file. This is because a FrameMaker variable does not have a single book-wide definition; the same variable can be defined differently in every FrameMaker file, or might not be defined at all in some files.
To preserve all the variables in a book, you can do one of the following, depending on whether variables are always defined the same wherever they occur in your FrameMaker book:
Defined differently in some chapters.
To produce one variables library file for the entire book, create a dummy FrameMaker file that defines all the variables, and put it last in the book. Then the last variables file written will be complete, and all the other files will reference it.
Defined differently in some chapters
To produce a variables library file for a single FrameMaker chapter file, specify a different value of [DITAOptions]VariableFile in a separate configuration file named for each FrameMaker file. See §30.4 Including chapter-specific configuration files. If only a few chapters have variant definitions, you can provide chapter-specific configuration files only for those chapters, and include at the end of the book a dummy FrameMaker file with all the standard definitions.
Note: You might have an issue with the DITA version of that last dummy file appearing as a chapter in the bookmap.
> 15 Converting to DITA XML > 15.11 Exporting FrameMaker variables to DITA XML > 15.11.3 Treating FrameMaker variables as conrefs