4 返信 最新の回答 日時: Jul 3, 2003 7:47 AM ユーザー:(hero-3004206)

    整形されたXMLの読み込み

      見やすいようにタブやスペースで整形されたXML文書をFMに読み込むと、タブやスペースがそのまま読み込まれてしまい、レイアウトが崩れてしまいます。<br /><br />---<br /><br />例:<br /><aaa><br />  <bbb>xxxxxxx</bbb><br /></aaa><br /><br />というXMLががあると、<bbb>の前にある、整形のために入れたスペースを文字スペースとして読み込んでしまいます。<br /><br />---<br /><br />原因は、DTDで<aaa>に<bbb>の他に、テキストも入る設定をしているためなのですが、<aaa>にはテキストが入る場合もあるので、どうしてもこの設定ははずせません。<br /><br />何かよい回避策はありませんでしょうか。
        • 1. Re: 整形されたXMLの読み込み
          hero様、こんにちわ。<br /><br />回避策の前に…。<br />『<bbb>の前にある、整形のために入れたスペース』って書いてますが、<br />整形のためのスペースって確実に判断できるんでしょうか...。<br />DTDで#PCDATAが許可されているって事は、<br />整形じゃなく、文字データとしてスペースを入れてるかもしれませんよね?<br />今は、人が見て判断してると思うんですが、<br />それを自動認識するには、区別する条件が必要かと。
          • 2. Re: 整形されたXMLの読み込み
            Level 1
            ymgcさん、こんにちは。

            言葉足りずすみません。
            おっしゃるとおりです。
            区別する条件としては、「タグの中身がスペースだけの場合」としかあげられません。
            もしくは「スペースが連続する場合」とか。

            全く違う考え方をした方がいいのでしょうか...
            (FMで処理するのはあきらめて、FMに読み込む前にテキストエディタか何かで整形し直すとか)
            • 3. Re: 整形されたXMLの読み込み
              Level 1
              あまりお勧めできない方法ですが、XML読み込み用のAPIclientを作成して、
              条件に合わせて文字列データを取り込まないようにする制御は出来ます。
              実装してみないと分かりませんが、制御のタイミング等によって、悪影響がありそうです。

              hero様のおっしゃっている『全く違う考え方』の方が良いかなぁ、と思いますが…。
              • 4. Re: 整形されたXMLの読み込み
                Level 1
                ymgcさん、こんにちは。

                なるほど、わかりました。
                制御ができるということがわかっただけでもありがたいです。
                もう少しこちらでも検討してみます。
                ありがとうございました。