(register)   username:   password:  

Community KB :: DITA / FrameMaker

A collection of tips and troubleshooting information. Feel free to register and add your own items.

Tags:                                        
Keywords: 

FMN DITA .. refers to the DITA support that is provided by default in FM9 and FM8.

DITA-FMx .. is a plugin that provides extended DITA authoring support for FM9, FM8, FM7.2 and FM7.1. More info...

Submitted by: Scott Prentice (2010-10-03)

TAGS:  Authoring, DITA-FMx 1.1, FM 7.2, FM 8.0, FM 9.0
SUMMARY:  How do I get cross-references working for tables and figures?
ISSUE:  The default DITA-FMx structure applications don't support FM-based cross references (fm-xrefs) to figures and tables.

Using the standard DITA xref, you can insert references to tables and figures, but this will pull in the text of the title, not the auto-numbered label, which is often what is needed for table and figure references. For the reference to include the auto-numbered label (or other FM-based content), you'll need to use the fm-xref element.
SOLUTION:  First, when inserting an fm-xref you should always reference the "Element Tags" not Paragraphs or Cross-Reference markers. In order to get the element tags for figures and tables to show up in the Cross-Reference dialog, you'll need to edit the Topic and Book EDDs. In both of these EDDs, locate the fig and table elements, and change the "type" of the "id" attribute to "UniqueID". Save the EDDs and import each into the corresponding templates. In the templates, you'll need to add a cross-reference format for tables and figures. Be sure to save the templates.

Now, when you open a topic and insert the fm-xref element, you'll be able to select the figure and table elements in the Cross-Reference dialog. If your cross-ref format includes the "$paranumonly" variable, the figure/table numbering will be included in the reference text. When you build the book, the generated FM files should include the properly formatted cross-refs.

That's all good unless you're using the DITA-FMx feature that allows you to move the figure title or table title into the "proper" location in the generated FM files. When this happens, things can break .. especially for tables.

So, if that's not working for you, you may need to place your references to the title elements rather than the parent table or fig (yes, this isn't a best practice, but is currently the only solution). Edit your Topic and Book EDDs like before and change the "type" of the title's id attribute to UniqueID. Save and import the EDD into the templates, then save the templates.

Now when you place the references, select "title(<no label>)" in the Cross-Reference dialog. When you rebuild the book, the references to figures should look correct. Unfortunately, references to tables will still be broken since the process of moving the table titles into the "proper" location for publishing, those title elements are changed into fm-tabletitle elements. The references to the table/title elements are no longer valid.

Go back into your Book EDD (just the book now), and locate the fm-tabletitle element. Change the type of the fm-tabletitle element's id attribute to UniqueId. Save and import the EDD into the template, then save the template.

Now, when you rebuild the book, your references to the table titles should resolve properly.