• 検索結果がありません。

ESIS-B 形式データへの変換規則

ドキュメント内 HiRDB XML Extension Version 9 (ページ 157-160)

5.4  ESIS-B 形式データの生成

5.4.8  ESIS-B 形式データへの変換規則

(9) 注意事項

• XML データ変換中に変換エラーが発生した場合,障害要因と XML データファイル名をエラー情報出力 ファイルに出力し,変換処理を続行します。変換に失敗した XML データがある場合は,コマンド終了 時に一部の XML データの変換に失敗したとの警告メッセージを出力し,正常終了します。エラー情報 ファイルの出力ファイルを参照して,エラー要因を取り除いてから再度コマンドを実行してください。

• エラー情報は,出力ごとにエラー情報出力ファイルに追加されます。

• 出力する ESIS-B 形式データの文字コードは,必ず-m で指定してください。

この指定は,HiRDB のセットアップ環境に合わせる必要があります。

• 入力する XML データの文字コードは,登録する HiRDB の文字コードに合わせてください。

• PHD_XMLCNV_MAXMEM の値が不正,または大き過ぎる場合は,エラーコードのないエラーメッ セージが出力されます。その場合は,設定値を見直してください。

属性型 規則

ID 「NMTOKEN」と同様に扱われます。

IDREF 「NMTOKEN」と同様に扱われます。

IDREFS 「NMTOKENS」と同様に扱われます。

NMTOKEN 名前字句

属性値として記述された文字列が,前後の半角 スペースとタブおよび改行を削除した形で ESIS-B 形式に適応されます。

NMTOKENS 名前字句並び

属性値として記述された文字列が,一つ以上の 空白文字を区切りとして個々の属性値に分解さ れ,それぞれの属性値が ESIS-B 形式に適応さ れます。検索時には,分解されたそれぞれの属 性値に対して検索を実行できます。

(例)

<element attr="abc△def"/>と記述され ている場合は,複数の属性値"abc","def"と して適応されます。

(3) タグ間テキストの変換規則

タグ間テキストは出現単位に個別に変換されます。タグ間テキストの変換規則を次の表に示します。

表 5‒7 タグ間テキストの変換規則

条件 規則 説明

ENTITY 連結 エンティティの前後に文字列がある場合は,連続した文字列とします。

(例)

エンティティとして,'copyright'を'(c)'にしている場合,「コピーラ イトマークは&copyright;です。」は,「コピーライトマークは(c)で す。」となります。

CDATA セクション 連結 CDATA セクションの前後に文字列がある場合は,連続した文字列とし

ます。

(例)

「エレメントは<![CDATA[<element>]]>と記述します。」は,「エ レメントは<element>と記述します。」となります。

ELEMENT を内包する文字列 独立 タグ間テキスト内に要素ノードがある場合は,内包する要素ノードの前 後で,それぞれの独立した文字列として扱われます。

(例)

「XML<略語 term="XML" context="Extensible Markup Language"/>とは」は,「XML」と「とは」の個別の文字列としま す。この場合,「XML とは」で検索してもヒットしません。

タグ間テキスト内の,変換に指定した文字コードで表せない文字,空白文字および改行コードの扱いを次に 示します。

(a) タグ間テキスト内の指定文字コードで表せない文字

タグ間テキスト内の指定文字コードで表せない文字は,「?」(疑問符)に置換されます。ただし,XML デー タの XML 宣言部に書かれている文字コードで変換できないコードが含まれている場合は,変換エラーとな ります。

(b) タグ間テキスト内の空白文字

タグ間テキスト内の空白文字(タブ(0x09),半角スペース(0x20)),

改行コード(LF(0x0a),CR(0x0d),DOS 改行(0x0d 0x0a))は,次のように扱われます。

• タグ間テキスト先頭,および末尾の空白文字,改行コードは削除されます。

• タグ間テキスト内の改行コードは,すべて LF(0x0a)に置換されます。

• 空白文字と改行コードが連続する文字列は,それぞれ出現順に一つにまとめられます。

(例)

変換前:<root>改行と(0x20)(0x0a)(0x09)(0x20)(0x0a)(0x09)空白の例</root>

変換後:<root>改行と(0x20)(0x0a)(0x09)空白の例</root>

ドキュメント内 HiRDB XML Extension Version 9 (ページ 157-160)