Omni Systems, Inc.

  

Mif2Go User's Guide, Version 33u53

  

Valid HTML 4.01!

 

Made with Mif2Go

14 Producing DITA XML > 14.12 Converting conditions to DITA attributes


14.12 Converting conditions to DITA attributes

Mif2Go can convert FrameMaker text conditions to attributes in DITA output elements. To use this feature, set FrameMaker Show/Hide to show all the conditions for which you want content present; for migration, that would be Show All. The conditions shown are identified in DITA output. Content that remains hidden in FrameMaker is not included. Multiple conditions result in multiple conditional attribute values.

To map a FrameMaker condition to an element attribute:

[ConditionAttributes]

; Condition name = attributes for elements

CondName= attrname="attrvalue"

For DITA, the attribute name is usually one of props, platform, product, audience, or otherprops. For example:

[ConditionAttributes]

ProductA= product="A"

ProductB= product="B"

If a full element (either paragraph or character, block or inline) is conditional, Mif2Go sets the designated attributes for it. If the condition does not apply to the entire element, Mif2Go encloses the conditional part in a pair of tags, with the same attributes. By default, Mif2Go uses <ph>. However, you can specify another tag to use for this purpose:

[HTMLOptions]

; ConditionCharTag = tag to interpolate for conditions that affect

; only part of the enclosing element, default ph for DITA.

ConditionCharTag = tagname

For example:

<ph platform="linux">...</ph>

When conditions overlap each other, or overlap inline elements, Mif2Go creates a new tag pair for each change, to respect XML no-overlap rules. For example:

<p>This paragraph contains <ph product="A">text for </ph>

<i><ph product="A">ProductA </ph><ph product="A B">as well as</ph>

<ph product="B"> text</ph></i><ph product="B"> for ProductB</ph>,

with overlapping conditions and a character format overlapping both,

resulting in five &lt;ph&gt; elements.</p>

In addition to text, Mif2Go applies conditions to <table>, <image>, <xref>, and <indexentry> elements, based on the conditions in effect in FrameMaker at the point of the table or figure anchor, cross reference, or marker.

Mif2Go supports conditional table rows; row condition attributes are not applied to the paragraphs within cells. Likewise, the attributes of block tags are not applied to inline tags enclosed within the block.

Where multiple blocks make up a larger element, such as when a DITA <title> element plus some <p> elements make up a <section>, Mif2Go does not push the attributes up to the <section> element; they remain on the enclosed block elements.

See also:

§12.10 Converting conditions to HTML attributes



14 Producing DITA XML > 14.12 Converting conditions to DITA attributes