Index > 構造エラーはないはずなのにXML書き出しすると構造エラーが出る場合(FrameMaker7.0)...結論はコンディショナルのしわざ
Tue, October 30, 2007

構造エラーはないはずなのにXML書き出しすると構造エラーが出る場合(FrameMaker7.0)...結論はコンディショナルのしわざ

FrameMakerデータをXML形式で保存すると、構造エラーが出る。 FrameMaker上では、構造図を見てもエラーはない(赤く表示されている部分はない)し、 メニューから 【エレメント-検証】を使用してもエラーは報告されない。 なにが問題なのだろうか?

コンディショナルテキストで非表示部分に注意

XML形式で保存すると、処理の最後に出力したデータのXMLの検証(validate)が行われて、 そこで(not valid)構造エラーがあるとのエラーログが出る。
ならば、構造エラーが存在しているのだろうと、 構造図を表示させて赤い部分を探したり、【エレメント-検証】を使用して構造エラーが起きている部分を 探そうとすると、どこにも問題は見つからない。

さんざん悩んだ挙げ句の結論は、コンディショナルで非表示にしていた部分で構造エラーが起きていた ということ。 FrameMakerは、コンディショナル非表示部分まで、構造エラーを検知してくれないのであった。 (いや設定などで回避できる問題なのかも知れないが)
考えてみれば致し方ないのかもしれないが、コンディショナルで非表示だといって構造エラーを 通知してくれないのはつらい。 XML保存したときには、非表示指定しているコンディショナルも書き出すわけだから、 その段階で、構造エラーが出るのは妥当だけど。 いっそ、非表示設定しているコンディショナル部分は書き出さないとか(それも問題ありそうだけど) もっと親切で、場所の特定が容易なエラーメッセージを出してくれればいいのに。

でも考えてみると、XMLデータに対しての検証用ツール(validator)は、 既存に優れたツールが出回っているので、それを使うべきなんだろうな。 (このプロジェクトでは、それができないから困っているのだが...)

 Twitter
follow me on Twitter
 Categories