5.4.6 XMLデータ変換コマンド(phdxmlcnv)

この節では,XML変換ライブラリの提供するコマンドを使ったESIS-B形式データ生成について説明します。

<この項の構成>
(1) 機能
(2) 形式
(3) 引数
(4) 実行時の設定
(5) 環境変数によるESIS-B形式生成時の設定変更
(6) エラー要因とリターンコード
(7) ESIS-B形式変換定義ファイルのファイル形式
(8) メモリ不足の対処
(9) 注意事項

(1) 機能

XMLデータから,ESIS-B形式のデータを作成します。

(2) 形式

phdxmlcnv -h ESIS-B形式変換定義ファイル
         -e エラー情報出力ファイル
         -m 変換後データ文字コード種別
        [-r]

(3) 引数

-h ESIS-B形式変換定義ファイル
変換前のXMLデータ,出力先ファイル名を定義した,定義ファイル名を指定します。
このファイル形式の詳細については,「(7)ESIS-B形式変換定義ファイルのファイル形式」を参照してください。
-e エラー情報出力ファイル
XMLデータ変換中にエラーが発生した場合,変換に失敗したXMLデータとエラー要因を出力するファイル名を指定します。このとき,エラー情報の文字コードは,-m実行時のロケールに合わせて出力されます。
エラー要因については,「(6)エラー要因とリターンコード」を参照してください。
-m 変換後データ文字コード種別
変換後のデータの文字コード種別を指定します。この文字コード種別は,変換後のデータ(ESIS-B形式ファイル)を登録するHiRDBの文字コードに合わせて指定します。ただし,文字コード種別がUS-ASCIIの場合は,文字コードがsjis,ujis,utf-8のHiRDBに登録できます。
指定できる文字コード種別を次に示します。
  • SJIS_MS
  • SJIS_JIS
  • SJIS
  • UTF_8_MS
  • UTF_8_JIS
  • EUC_JP
  • US_ASCII
注※
「SJIS」と指定した場合,実行環境として使用しているJavaのバージョンによって「SJIS_MS」と「SJIS_JIS」のどちらかで認識されます。Cosminexus Developer's Kit for Java(TM)ではSJIS_JISとして認識します。
-r
同じ名称のファイルがすでに登録されている場合は,新しいファイルに置き換えます。

引数に指定するファイル名およびディレクトリ名に使用できる文字は,半角文字の英数字および記号です。使用できる記号を次に示します。

Windwos上で引数のパス名に空白を含めたい場合は,前後を引用符(”)で囲んでください。

(4) 実行時の設定

XMLデータ変換コマンドを使用するには,次の環境変数を設定する必要があります。

(a) UNIXの場合
環境変数名
PATH
指定値

/opt/Cosminexus/jdk/bin

環境変数名
PDDIR
指定値

HiRDB運用ディレクトリ

HiRDB/Run Time,またはHiRDB/Developer's Kitでphdxmlcnvコマンドを使用する場合は,環境変数PDDIRの代わりに環境変数PDXMLCNVPATHに次の値を指定します。

PDXMLCNVPATH=/opt/HiRDB/client/lib

なお,PDDIRとPDXMLCNVPATHが同時に指定されている場合はPDXMLCNVPATHの値が優先されます。

(b) Windowsの場合
環境変数名
PATH
指定値

Cosminexusのインストールフォルダ¥jdk¥bin

環境変数名
PHD_XMLCNV_COSMINEXUS_PATH
指定値

Cosminexusのインストールフォルダ

環境変数名
PDDIR
指定値
HiRDB運用ディレクトリ

HiRDB/Run Time,またはHiRDB/Developer's Kitでphdxmlcnvコマンドを使用する場合は,環境変数PDDIRの代わりに環境変数PDXMLCNVPATHに次の値を指定します。

PDXMLCNVPATH=HiRDB/Run Time,HiRDB/Developer's Kitインストールディレクトリ¥utl

なお,PDDIRとPDXMLCNVPATHが同時に指定されている場合はPDXMLCNVPATHの値が優先されます。

(5) 環境変数によるESIS-B形式生成時の設定変更

次に示す環境変数を定義することによりXML変換時の設定を変更してESIS-Bを生成することができます。

環境変数に設定可能な値以外の値を設定しているとphdxmlcnvコマンド実行時にエラ-となります。

表5-3 phdxmlcnvコマンド実行時に指定できる環境変数一覧

環境変数名設定可能な値
(カッコ内はデフォルト値)
説明
PHD_XMLCONVERTER_VALIDATEON/OFF(OFF)変換するXMLデータに対して妥当性検証を行います
PHD_XMLCONVERTER_EXTERNAL_ENTITYON/OFF(ON)変換するXMLデータ内で指定している解析対象外部エンティティをESIS-Bに含めます
PHD_XMLCONVERTER_XMLSCHEMAON/OFF(OFF)変換するXMLデータに対してXMLSchemaによる妥当性検証を行います
PHD_XMLCONVERTER_REGULAR_FOR_TEXTON/OFF(ON)XMLデータ内のタグ間のテキストを正規化します。

(6) エラー要因とリターンコード

コマンド実行時にエラーが発生した場合は,次に示す原因が考えられます。

phdxmlcnvコマンドのリターンコードを次の表に示します。

表5-4  phdxmlcnvコマンドのリターンコード

コード要因
0正常終了
1一部のXMLで変換を失敗
-1上記要因でエラー終了
環境が正しく設定されていない場合,上記以外のエラーコードが出力されるときがあります。

(7) ESIS-B形式変換定義ファイルのファイル形式

ESIS-B形式変換定義ファイルの項目を次の表に示します。

表5-5  ESIS-B形式変換定義ファイルの項目

項目指定内容省略可否
変換前XMLデータ絶対パス名変換するXMLデータファイル名を絶対パスで指定します。不可
変換後データ格納先ファイル名変換後のESIS-B形式のデータを格納するファイル名を絶対パスで指定します。不可
フィルタ情報定義ファイル名変換するXMLデータに対して,XML構造によるフィルタリングを行う場合は,フィルタ情報定義ファイル名を絶対パスで指定します。
指定例

/users/xmldoc/xml1.xml,/users/outdoc/outdoc1
/users/xmldoc/xml2.xml,/users/outdoc/outdoc2,/users/filter1.txt
/userx/xmldoc/xml3.xml,/users/outdoc/outdoc3,/users/filter2.txt

(8) メモリ不足の対処

XMLデータ変換コマンド(phdxmlcnv)実行中にメモリ不足が発生した場合,次の環境変数名を指定して,XMLデータ変換コマンド(phdxmlcnv)が使用できるメモリを増やしてください。

環境変数名
PHD_XMLCNV_MAXMEM
指定値
2~システムで利用できる仮想メモリ量(単位:メガバイト)
指定値の目安

max ( 64,XMLファイルの最大サイズ[Mbyte]×100)

(9) 注意事項