FrameMaker で非構造化文書を構造化文書に変換するための変換規則例について説明します。
変換規則を並べる順序は重要です。 この順序は、低レベルのエレメントから高レベルのエレメントという順序である必要があります。 例えば、以下のマッピングルールがあるとします。
Wrap this object or objects | In this element | With this qualifier |
---|---|---|
G: |
image |
|
P:alt |
Alt |
|
E:image, E:caption |
fig |
<image>
と <alt>
エレメントが <fig>
エレメントにラップされるルールは、<image>
と <alt>
が作成されるルールの後に発生しなければなりません。
複数の段落スタイルを同じエレメントにマッピングして、その後、異なる親にラップする必要がある場合は、3 列目を修飾子として使います。 例えば、ビュレットリストと番号リストでは、どちらも ListItem エレメントが使われます。 ビュレットとステップ段落を ListItem エレメントでラップした場合、それが OrderedList と UnorderedList のどちらに属しているのかを区別する方法が必要になります。 この区別を行うには、以下の例で示すように、修飾子の列を使います。
Wrap this object or objects | In this element | With this qualifier |
---|---|---|
P:Bullet |
li |
b |
P:Step1 |
li |
st |
P:Step2 |
li |
st |
E:ListItem[b]+ |
ul |
|
E:ListItem[st]+ |
ol |
文書のルートエレメントを指定するには、以下を使います。
Wrap this object or objects | In this element | With this qualifier |
---|---|---|
RE:RootElement |
topic |
ルートエレメントは、変換表 1 つに対して 1 つしか指定できません。
非構造化文書では、グラフィックスや表は、前の段落にアンカーされていることが多いです。 このような文書を構造化した場合には、Graphic および Table エレメントは、その前の Para エレメントの子になります。
Graphic エレメントを子ではなく、Para の兄弟(右図)として変換したい場合は、「promote」コマンドを使用します。
Wrap this object or objects | In this element | With this qualifier |
---|---|---|
G: |
image(promote) |