### 15.5.3 Fixing up interpolated ancestries

Creating DITA structure from FrameMaker formats necessarily involves some trial and error. When you see unexpected interpolation of inappropriate parent elements in your output, it is usually because you have not specified parents for a particular format-to-element mapping. For example, suppose you map paragraph format Ref to <p>, and use a Ref paragraph at the top level of each reference topic, where <p> is not valid. On encountering a Ref paragraph in this situation, with no parents specified for the Ref format, Mif2Go would go through the list of valid parents for <p> in a reference topic, and interpolate the first set that works; which might be <codeblock><draft-comment>.

The remedy is to figure out what would be a more appropriate lineage for the element in question. You could specify that lineage for the format in [DITAParents] if it applies generally, or insert a DITAParent marker in the paragraph for an isolated instance. In this example, the following mapping would produce better results:

[DITAParents]

Ref = refbody section

The Mif2Go search algorithm finds the shortest path, but that is not always the only shortest path, or the best path.

See also:

§15.4.3.4 Omitting invalid tags for default DITA block elements

§15.5.6 Avoiding invalid ancestries

| 15.5.2 Designating DITA ancestor elements |  | 15.5.4 Deciding when to fully specify ancestry |