HiRDB XML拡張機能

HiRDB XML Extension Version 8

解説・手引書

3020-6-376-20

目　　次

前書き

変更内容

はじめに

1.　解説

1.1　XML Extensionとは

1.1.1　XML Extensionの特長

1.2　XML Extensionのシステム構成

1.2.1　XML Extensionを構成するプログラム

1.2.2　XML Extensionシステムの構成例

1.3　XML Extensionを利用した検索

1.3.1　XMLデータ検索

2.　XML Extensionシステムの構築

2.1　XML Extensionシステムの構築の流れ

2.2　システムの設計

2.2.1　検討項目

2.2.2　使用する文字コードによる機能差異について

2.3　リソースの見積もり

2.3.1　メモリ所要量

2.3.2　RDエリア容量

2.3.3　ファイル容量

2.3.4　論理ファイル数

2.4　 XML Extensionの環境設定

2.4.1　XML Extensionのセットアップ（UNIXの場合）

2.4.2　 XML Extensionの登録

2.4.3　システム共通定義の変更

2.5　XMLデータ検索プラグインのデータベースの作成

2.5.1　XMLデータ検索プラグインのデータベース作成の流れ

2.5.2　データ格納領域の確保

2.5.3　表の作成

2.5.4　インデクスの定義

2.5.5　データの登録

2.5.6　同義語辞書の作成

2.5.7　同義語辞書の登録

2.6　XMLデータ検索プラグインのユーザ環境設定

2.6.1　XMLデータ型プラグインの環境設定

2.6.2　 IXXMLインデクス型プラグインの環境設定

2.7　XML Extensionの設定解除

2.7.1　設定解除の流れ

2.7.2　表の削除

2.7.3　XML Extensionの削除

2.7.4　XML Extensionのアンセットアップ（UNIXの場合）

2.7.5　システム共通定義の変更

2.7.6　HiRDBをOSから削除する場合の注意事項（UNIXの場合）

2.8　HiRDBの提供する機能の利用

3.　XML Extensionのユティリティ

3.1　ユティリティの使用方法

3.1.1　XML Extensionのユティリティとは

3.1.2　ユティリティの記述形式と操作

3.2　XMLデータ検索プラグインのユティリティ

3.2.1　phdsyndicreg（同義語辞書登録ユティリティ）

3.2.2　phdsyndicrm（同義語辞書削除ユティリティ）

3.2.3　phdsyndicbkup（同義語辞書バックアップユティリティ）（UNIXの場合）

3.2.4　phjidxls（インデクス情報の取得ユティリティ）

3.2.5　phjincmt（インデクスのインクリメンタルユティリティ）

3.2.6　phjexpnd（インデクスの拡張ユティリティ）

3.2.7　phjstartidx（インデクス作成開始ユティリティ）

3.2.8　phjdelay（インデクス分割遅延登録運用変更ユティリティ）

3.2.9　phjmodidx（インデクス情報変更ユティリティ）

3.2.10　phjcond（インデクス詰め替えユティリティ）

4.　XMLデータの操作

4.1　抽象データ型関数の操作

4.1.1　抽象データ型関数を使用したXMLデータの操作

4.1.2　 XQueryを使用した全文検索機能の利用

4.2　抽象データ型関数の文法

4.2.1　contains

4.2.2　contains_with_score

4.2.3　score

4.2.4　extracts

4.3　全文検索条件式の文法

4.3.1　構造名を指定した検索条件のAND/OR論理条件

4.3.2　構造名の指定

4.3.3　構造名のワイルドカード指定

4.3.4　テキスト検索条件の指定

4.3.5　単純文字列指定

4.3.6　異表記展開指定

4.3.7　同義語展開指定

4.3.8　近傍条件指定

4.3.9　重み

4.3.10　属性値指定

4.3.11　特定構造検索指定

4.3.12　特殊文字の指定

4.3.13　全文検索条件式の指定例

5.　XML変換ライブラリ

5.1　目的

5.2　ESIS-B形式生成機能

5.3　前提プログラム

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

5.4.1　提供するファイル一覧

5.4.2　提供するクラス一覧

5.4.3　クラスメソッドの発行順序

5.4.4　UAPのコンパイルおよび実行時の設定

5.4.5　 UAPのコンパイルおよび実行時の設定（HiRDB/Run TimeおよびHiRDB/Developer's Kitの場合）

5.4.6　XMLデータ変換コマンド（phdxmlcnv）

5.4.7　使用できる文字及び文字コード

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

5.5　XMLデータ

5.5.1　XMLデータの文字コード

5.5.2　DTD

5.5.3　エンティティ

5.5.4　XMLSchema

5.5.5　XML変換ライブラリの制限

5.6　PrdbXMLConverterクラス

createESISB

setProperty

setFilter

unsetFilter

5.7　例外クラス

getMessage

5.8　XMLのフィルタリング機能

5.8.1　フィルタリング指定項目一覧

5.8.2　フィルタ情報定義ファイルの指定規則

5.8.3　allowおよびdenyの指定例

5.8.4　複合指定例

5.9　XML変換ライブラリのエラーメッセージ

5.9.1　メッセージの記述形式

5.9.2　メッセージ一覧

6.　推奨する運用方法

6.1　推奨するデータ登録の運用方法

6.1.1　登録運用の種類

6.1.2　推奨する登録運用

6.2　性能向上の運用

6.2.1　グローバルバッファ管理の運用

6.3　ログおよびバックアップの取得方式

6.3.1　登録運用のログ取得方式の設定について

6.3.2　バックアップ取得方法

付録

付録A　検索に使用できる文字

付録B　ディレクトリおよびファイル構成

付録B.1　ディレクトリおよびファイル構成（UNIXの場合）

付録B.2　ディレクトリおよびファイル構成（Windowsの場合）

付録C　資源の排他

付録C.1　排他取得内容

付録C.2　デッドロックの防止

付録D　障害発生時の運用方法

付録E　系切り替え

付録F　エラーメッセージ

付録F.1　 SQL連絡領域に出力されるメッセージ

付録F.2　メッセージログ・標準エラー出力に出力されるメッセージ

付録F.3　メッセージの記述形式

付録F.4　メッセージ一覧

付録G　用語解説

索引

[他社商品名称に関する表示]

All Rights Reserved. Copyright (C) 2007, 2009, Hitachi, Ltd.

前書き

■ 対象製品

●適用OS：AIX 5L V5.1，AIX 5L V5.2，AIX 5L V5.3，AIX V6.1

P-1M63-9A81　 HiRDB XML Extension Version 8(64)　 08-05

●適用OS：HP-UX 11i V2サーバ(IPF)，HP-UX 11i V3サーバ(IPF)

P-1J63-9A81　 HiRDB XML Extension Version 8(64)　 08-05

●適用OS：HP-UX 11.00サーバ，HP-UX 11.00ワークステーション，HP-UX 11iサーバ，HP-UX 11iワークステーション，HP-UX 11i V2サーバ（PA-RISC）

P-1B63-9A81　 HiRDB XML Extension Version 8(64)　 08-05

●適用OS：Red Hat Enterprise Linux AS3（x86），Red Hat Enterprise Linux ES3（x86），Red Hat Enterprise Linux AS3（AMD64&Intel EM64T）※，Red Hat Enterprise Linux AS4（x86），Red Hat Enterprise Linux ES4（x86），Enterprise Linux AS4（AMD64&Intel EM64T），Red Hat Enterprise Linux ES4（AMD64&Intel EM64T），Red Hat Enterprise Linux 5（x86），Red Hat Enterprise Linux 5 Advanced Platform（x86），Red Hat Enterprise Linux 5 （AMD/Intel 64），Red Hat Enterprise Linux 5 Advanced Platform（AMD/Intel 64）

P-9S63-9A81　 HiRDB XML Extension Version 8　 08-05

注※　動作環境としては，Intel EM64Tにだけ対応しています。
●適用OS：Red Hat Enterprise Linux AS3（AMD64&EM64T），Red Hat Enterprise Linux ES3（AMD64&EM64T），Red Hat Enterprise Linux AS4（AMD64&EM64T），Red Hat Enterprise Linux ES4（AMD64&EM64T），Red Hat Enterprise Linux 5 （AMD/Intel 64），Red Hat Enterprise Linux 5 Advanced Platform（AMD/Intel 64）

P-9W63-9A81　 HiRDB XML Extension Version 8(64)　 08-05

注※　動作環境としては，Intel EM64Tにだけ対応しています。
●適用OS：Red Hat Enterprise Linux AS3（IPF），Red Hat Enterprise Linux AS4（IPF），Red Hat Enterprise Linux 5 （Intel Itanium），Red Hat Enterprise Linux 5 Advanced Platform（Intel Itanium）

P-9V63-9A81　 HiRDB XML Extension Version 8(64)　 08-05

●適用OS：Solaris 8（SPARC），Solaris 9（SPARC），Solaris 10（SPARC）

P-9D63-9A81　 HiRDB XML Extension Version 8(64)　 08-05

●適用OS：Windows 2000 Professional，Windows 2000 Server，Windows 2000 Advanced Server，Windows 2000 Datacenter Server，Windows XP Professional，Windows Server 2003 Standard Edition，Windows Server 2003 Enterprise Edition，Windows Server 2003 SE（x64），Windows Server 2003 EE（x64），Windows XP Professional（x64），Windows Server 2003 R2 SE，Windows Server 2003 R2 EE，Windows Server 2003 R2 SE（x64），Windows Server 2003 R2 EE（x64），Windows Vista Business，Windows Vista Enterprise，Windows Vista Ultimate，Windows Vista Business（x64），Windows Vista Enterprise（x64），Windows Vista Ultimate（x64），Windows Server 2008，Windows Server 2008（x64）

P-2463-9A84　 HiRDB XML Extension Version 8　 08-05

●適用OS：Windows Server 2003 SE（x64），Windows Server 2003 EE（x64），Windows Server 2003 DE（x64），Windows Server 2003 R2 SE（x64），Windows Server 2003 R2 EE（x64），Windows Vista Business（x64），Windows Vista Enterprise（x64），Windows Vista Ultimate（x64），Windows Server 2008（x64）

P-2963-9A84　 HiRDB XML Extension Version 8(64)　 08-05

これらのプログラムプロダクトのほかにもこのマニュアルをご利用になれる場合があります。詳細は「リリースノート」でご確認ください。

■ 輸出時の注意

本製品を輸出される場合には，外国為替および外国貿易法ならびに米国の輸出管理関連法規などの規制をご確認の上，必要な手続きをお取りください。
なお，ご不明な場合は，弊社担当営業にお問い合わせください。

■ 商標類

AIXは，米国における米国International Business Machines Corp.の登録商標です。
Itaniumは，アメリカ合衆国および他の国におけるインテル コーポレーションまたはその子会社の登録商標です。
HP-UXは，米国Hewlett-Packard Companyのオペレーティングシステムの名称です。
Java 及びすべてのJava関連の商標及びロゴは，米国及びその他の国における米国SunMicrosystems, Inc.の商標または登録商標です。
Linuxは，Linus Torvaldsの米国およびその他の国における登録商標あるいは商標です。
Microsoftは，米国およびその他の国における米国Microsoft Corp.の登録商標です。
Red Hatは，米国およびその他の国でRed Hat, Inc. の登録商標若しくは商標です。
Solarisは，米国Sun Microsystems, Inc.の米国およびその他の国における商標または登録商標です。
UNIXは，X/Open Company Limitedが独占的にライセンスしている米国ならびに他の国における登録商標です。
Windowsは，米国およびその他の国における米国Microsoft Corp.の登録商標です。
Windows Serverは，米国Microsoft Corporationの米国及びその他の国における登録商標です。
Windows Vistaは，米国Microsoft Corporationの米国及びその他の国における登録商標です。
X/Openは，X/Open Company Limited の英国ならびに他の国における登録商標です。

■ 発行

2007年8月（第1版）3020-6-376
2009年1月（第3版）3020-6-376-20

■ 著作権

All Rights Reserved. Copyright (C) 2007, 2009, Hitachi, Ltd.

変更内容

変更内容(3020-6-376-20)　HiRDB XML Extension Version 8 08-05

追加・変更内容 | 変更個所
メモリ所要量の見積もり式を変更しました。 | 2.3.1
RDエリア容量の見積もり式を追加，および変更しました。 | 2.3.2

単なる誤字・脱字などはお断りなく訂正しました。

変更内容（3020-6-376-10）HiRDB XML Extension Version 8 08-04

追加・変更内容

XMLデータ検索プラグインに次のユティリティを追加しました。

同義語辞書の登録

同義語辞書の削除

同義語辞書のバックアップ

インデクスのインクリメンタル（最適化）

メモリ所要量の見積もり式を追加，および変更しました。

IXXMLインデクス型情報格納用RDエリアの説明を変更しました。

テーブルスキャン併用検索を指定する場合のファイル容量見積もり式を追加しました。

XML Extensionの環境設定の説明を変更しました。

分割遅延登録・更新系SQL同時実行使用時のインデクス定義例，および注意事項を追加しました。

インデクスの定義に次の機能を使用できるようになりました。

大小文字・全角文字半角文字統一機能

拗音統一機能

濁音統一機能

削除文字指定機能

英文検索機能

テキスト形式のXMLデータを登録できるようになりました。

同義語を検索条件に使用できるようになりました。

エラーコードの詳細化指定ができるようになりました。

IXXMLインデクス型プラグインの環境定義ファイルに次の定義項目を指定できるようになりました。

同義語異表記展開用最大メモリサイズ

スコア算出法指定

1文字近傍検索実行可否

遅延データスキャン機能指定

インデクス用グローバルバッファ最適化モード指定

HiRDBをOSから削除する場合の注意事項を追加しました。

XMLデータの操作について章を追加しました。

XML変換ライブラリの機能の前提プログラムを変更しました。

XML変換ライブラリで提供するクラスにPhrdFilterExtensionクラスを追加しまた。

UAP実行時のクラスパスを変更しました。

UAPのコンパイルおよび実行時の設定（HiRDB/Run TimeおよびHiRDB/Developer's Kitの場合）を追加しました。

XMLデータ変換コマンド（phdxmlcnv）の説明を変更，および追加しました。

PrdbXMLConverterクラスにメソッドを追加しました。

setPropertyの設定項目と設定項目の説明を変更しました。

例外クラスのメソッドにクラスを追加しました。

フィルタリング情報を作成できるようになりました。

ESIS-B形式生成時に出力されるメッセージを追加しました。

性能向上の運用について説明を追加しました。

運用環境のバックアップについて説明を追加しました。

ディレクトリおよびファイル構成を変更しました。

ユティリティコマンドの排他制御のモードにphjincmtコマンドを追加しました。

同義語辞書，およびインデクス定義ファイルの系切り替えについて説明を追加しました。

SQL連絡領域に出力されるメッセージを追加しました。

標準エラー出力に出力されるメッセージを追加しました。

用語解説に次の用語を追加しました。

同義語辞書

同義語辞書テキストファイル

文字種

はじめに

このマニュアルは，次に示すプログラムプロダクトの機能，システム構築，環境設定および運用方法について説明したものです。

P-1M63-9A81　HiRDB XML Extension Version 8(64)

P-1J63-9A81　HiRDB XML Extension Version 8(64)

P-1B63-9A81　HiRDB XML Extension Version 8(64)

P-9S63-9A81　HiRDB XML Extension Version 8

P-9W63-9A81　HiRDB XML Extension Version 8(64)

P-9V63-9A81　HiRDB XML Extension Version 8(64)

P-9D63-9A81　HiRDB XML Extension Version 8(64)

P-2463-9A84　HiRDB XML Extension Version 8

P-2963-9A84　HiRDB XML Extension Version 8(64)

以降，このマニュアルでは，上記のプログラムプロダクトの総称をXML Extensionとします。また，HiRDB Version 7およびHiRDB Version 8をHiRDBとします。

対象読者

このマニュアルは次の方にお読みいただくことを前提に説明しています。

XML Extensionのシステムを構築し，構築したシステムの環境を管理・運用するHiRDB管理者の方

HiRDBに関する知識および基本操作を習得している方

UNIXまたはWindowsに関する基本的な知識をお持ちの方

XMLに関する基本的な知識をお持ちの方

マニュアルの構成

このマニュアルは，次に示す章と付録から構成されています。

第1章　解説

XML Extensionの概要，特長，および機能について説明しています。

第2章　XML Extensionシステムの構築

XML Extensionの運用を開始するために必要な定義ファイルの概要，XML Extensionの環境設定およびデータベースの作成について説明しています。また，ユーザごとの環境設定方法についても説明しています。

第3章　XML Extensionのユティリティ

XML Extensionの運用に必要なユティリティの使用方法について説明しています。

第4章　XMLデータの操作

XML ExtensionでXMLデータを操作する方法について説明しています。

第5章　XML変換ライブラリ

XML ExtensionでXML文書の登録前の処理を実行する方法について説明しています。

第6章　推奨する運用方法

XML Extensionでの推奨する運用方法および設定情報について説明しています。

付録A　検索に使用できる文字

登録する文書（テキストデータ）および文字列データに使用できる文字について説明しています。

付録B　ディレクトリおよびファイル構成

XML ExtensionをHiRDBに登録したあとの，ディレクトリおよびファイル構成を示しています。

付録C　資源の排他

資源の排他制御について説明しています。

付録D　障害発生時の運用方法

障害発生時の対処方法について説明しています。

付録E　系切り替え

XML Extensionの系切り替えについて説明しています。

付録F　エラーメッセージ

XML Extensionで出力されるエラーメッセージの内容について説明しています。

付録G　用語解説

このマニュアルで使用する用語について解説しています。

関連マニュアル

このマニュアルの関連マニュアルを次に示します。必要に応じてお読みください。

HiRDB Version 8　解説（UNIX(R)用）（3000-6-351）

HiRDB Version 8　システム導入・設計ガイド（UNIX(R)用）（3000-6-352）

HiRDB Version 8　システム定義（UNIX(R)用）（3000-6-353）

HiRDB Version 8　システム運用ガイド（UNIX(R)用）（3000-6-354）

HiRDB Version 8　コマンドリファレンス（UNIX(R)用）（3000-6-355）

HiRDB Version 8　UAP開発ガイド（UNIX(R)/Windows(R)用）（3020-6-356）

HiRDB Version 8　SQLリファレンス（UNIX(R)/Windows(R)用）（3020-6-357）

HiRDB Version 8　メッセージ（UNIX(R)/Windows(R)用）（3020-6-358）

HiRDB Version 8　解説（Windows(R)用）（3020-6-351）

HiRDB Version 8　システム導入・設計ガイド（Windows(R)用）（3020-6-352）

HiRDB Version 8　システム定義（Windows(R)用）（3020-6-353）

HiRDB Version 8　システム運用ガイド（Windows(R)用）（3020-6-354）

HiRDB Version 8　コマンドリファレンス（Windows(R)用）（3020-6-355）

HiRDB Staticizer Option Version 8（3000-6-363）

HiRDB Text Search Plug-in Version 8（3020-6-375）

Cosminexus XML Processor　ユーザーズガイド（3020-3-M44）

なお，このマニュアルでは，HiRDB関連のマニュアルについて「スケーラブルデータベースサーバ」を省略して表記しています。また，「（UNIX(R)用）」，「（UNIX(R)/Windows(R)用）」および「（Windows(R)用）」も省略して表記しています。

読書手順

このマニュアルは，利用目的に合わせて章を選択して読むことができます。利用目的別に次の流れに従ってお読みいただくことをお勧めします。

このマニュアルの図中で使用する記号

このマニュアルの図中で使用する記号を，次のように定義します。

このマニュアルで使用する記号

このマニュアルで使用する記号を次に示します。

記号
意味

｜
ストローク
横に並べられた複数の項目に対し，項目間の区切りを示し，「または」の意味を示します。
（例）
　Ａ｜Ｂ｜Ｃは，「Ａ，ＢまたはＣ」を意味します。

｛　｝
波括弧
この記号で囲まれている複数の項目のうちから一つを選択することを示します。
（例）
　｛Ａ｜Ｂ｜Ｃ｝では，Ａ，ＢまたはＣのどれか一つを指定することを示します。

〔　〕
きっ甲
この記号で囲まれている項目は省略してもよいことを示します。複数の項目が横に並べて記述されている場合には，すべてを省略するか，記号｛ ｝と同じくどれか一つを選択します。
（例）
　〔Ａ〕は「何も指定しない」か「Ａを指定する」ことを示します。
　〔Ｂ｜Ｃ〕では「何も指定しない」か「ＢまたはＣを指定する」ことを示します。

＜　＞
山括弧
この記号で囲まれた複数の項目を一つの単位として，繰り返して指定できます。
（例）
＜ＡＢＣ＞では，次のように指定できることを示します。
　ＡＢＣ
　ＡＢＣ

…
リーダ
記述が省略されていることを示します。この記号の直前に示された項目を繰り返し複数個指定できます。
（例）
　Ａ，Ｂ，Ｂ…では，「Ａの後ろにＢを複数個指定する」ことを示します。

△
白三角
1文字の半角スペースを示します。

△n
白三角とn文字
n文字以上の半角スペースを示します。

このマニュアルで使用する構文要素

このマニュアルで使用する構文要素の種類を次に示します。

種類
定義

英字
A～Z　a～z

英小文字
a～z

英大文字
A～Z

数字
0～9

英数字
A～Z　a～z　0～9

記号
！　"　＃　＄　％　＆　'　（　）　＋　，　－　．　／　：
；　＜　＝　＞　＠　［　］　＾　＿　｛　｝　￣
タブ　スペース

注

ただし，かたかな文字の直後にある「－」は，かたかな文字になります。

このマニュアルで使用する計算式の記号

このマニュアルで使用する計算式の記号の意味を次に示します。

記号
意味

↑　↑
計算結果の値の小数点以下を切り上げることを示します。
（例）
　↑34÷3↑の計算結果は12となります。

↓　↓
計算結果の値の小数点以下を切り捨てることを示します。
（例）
　↓34÷3↓の計算結果は11となります。

max
計算結果の最も大きい値を選ぶことを示します。
（例）
　max（3×6，4＋7）の計算結果は18となります。

min
計算結果の最も小さい値を選ぶことを示します。
（例）
　min（3×6，4＋7）の計算結果は11となります。

このマニュアルで使用する略語

このマニュアルで使用する主な英略語を次に示します。

英略語 | 説明
AP | Application Program
BES | Back End Server
BLOB | Binary Large OBject
DB | Data Base
DIC | Dictionary Server
DTD | Document Type Definition
ESIS-B | Element Structure Information Set-Binary Format
EUC | Extended UNIX Code
FES | Front End Server
FTP | File Transfer Protocol
IPF | Itanium(R) Processor Family
JIS | Japanese Industrial Standard code
MGR | System Manager
OS | Operating System
RDB | Relational Data Base
SDS | Single Database Server
SQL | Structured Query Language
UAP | User Application Program
XML | eXtensible Markup Language

このマニュアルでの表記

このマニュアルで使用する製品名称の略称を次に示します。

製品名称
略称

AIX 5L V5.1
AIX

AIX 5L V5.2

AIX 5L V5.3

AIX V6.1

HiRDB/Single Server Version 8
HiRDB/シングルサーバ（またはシングルサーバ）
HiRDB

HiRDB/Parallel Server Version 8
HiRDB/パラレルサーバ（またはパラレルサーバ）

HiRDB/Run Time Version 8および
HiRDB/Developer's Kit Version 8
HiRDBクライアント機能

HiRDB Staticizer Option
Staticizer Option

HiRDB Text Search Plug-in Version 8
Text Search Plug-in

Microsoft(R) Windows 2000(R) Professional Operating System，
Microsoft(R) Windows 2000(R) Server Operating System,または
Microsoft(R) Windows 2000(R) Advanced Server Operating System
Windows 2000
Windows

Microsoft(R) Windows(R) XP Professional Operating System
Windows XPまたは
Windows XP Professional

Microsoft(R) Windows(R) XP Professional x64 Edition
Windows XPまたは
Windows XP x64 Edition

Microsoft(R) Windows Server(R) 2003, Standard Edition
Windows Server 2003

Microsoft(R) Windows Server(R) 2003, Enterprise Edition

Microsoft(R) Windows Server(R) 2003, Standard x64 Edition
Windows Server 2003
または
Windows Server 2003 x64 Editions

Microsoft(R) Windows Server(R) 2003, Enterprise x64 Edition

Microsoft(R) Windows Vista Business Edition
Windows Vista

Microsoft(R) Windows Vista Enterprise Edition

Microsoft(R) Windows Vista Ultimate Edition

Microsoft(R) Windows Vista Business(x64) Edition

Microsoft(R) Windows Vista Enterprise(x64) Edition

Microsoft(R) Windows Vista Ultimate(x64) Edition

Microsoft(R) Windows Server(R) 2008, Standard
Windows Server 2008

Microsoft(R) Windows Server(R) 2008, Enterprise

Microsoft(R) Windows Server(R) 2008, Standard(x64)

Microsoft(R) Windows Server(R) 2008, Enterprise(x64)

このマニュアルでは，「ディレクトリ」と「フォルダ」は，「ディレクトリ」に統一して表記しています。また，パス名の区切りは「／」で表記している個所があります。Windows版のXML Extensionをご使用の場合は，マニュアル中の「／」を「¥」に置き換えてください。

常用漢字以外の漢字の使用について

このマニュアルでは，常用漢字を使用することを基本としていますが，次に示す用語については，常用漢字以外の漢字を使用しています。

個所（かしょ）　必須（ひっす）　閉塞（へいそく）　拗音（ようおん）

KB（キロバイト）などの単位表記について

1KB（キロバイト），1MB（メガバイト），1GB（ギガバイト），1TB（テラバイト）はそれぞれ1,024バイト，1,024²バイト，1,024³バイト，1,024⁴バイトです。

1.　解説

この章では，XML Extensionの概要，特長，および機能について説明します。

＜この章の構成＞

1.1　XML Extensionとは

1.2　XML Extensionのシステム構成

1.3　XML Extensionを利用した検索

1.1　XML Extensionとは

XML Extensionは，業務間のインターフェイスやコンテンツの標準的なフォーマットとして利用されるXMLデータを，XML型列の使用によりそのまま利用することができます。

XML型はデータ構造の定義が不要なため，XML型のデータ構造を変更した場合でも，表の定義を変更する必要はありません。XMLの持つ高い柔軟性をそのまま活かすことで，容易にデータ管理を行うことができます。このため，企業やさまざまな研究機関で保有している知的財産としての大量の文書や，取り扱うコンテンツのデータ構造に変更が発生した場合でも，システムの変更を最小限に抑え業務への影響を低くすることができます。

また，検索についても標準的なXMLへの問い合わせ言語であるXQueryを利用するSQL/XMLの主要な機能をサポートしています。

＜この節の構成＞

1.1.1　XML Extensionの特長

1.1.1　XML Extensionの特長

XML Extensionには，次の特長があります。

＜この項の構成＞

(1)　柔軟なデータ構造

(2)　インデクス作成によるXMLデータの高速な検索

(3)　自由なスケーリング

(1)　柔軟なデータ構造

XML ExtensionのXML型はデータ構造の定義が必要ないため，XMLデータをそのまま表に格納できます。また，XML型のデータ構造を変更した場合でも，表の定義を変更する必要はありません。XMLの持つ高い柔軟性をそのまま活かすことで，容易にデータ管理を行うことができます。

(2)　インデクス作成によるXMLデータの高速な検索

IXXMLインデクスの作成で，属性やテキストに対して高速な検索を行なうことができます。またHiRDBの特長を生かし，高い信頼性を持つシステムとしてXMLデータの高速な検索ができます。

(3)　自由なスケーリング

HiRDBパラレルサーバの利用で，システム要件に応じた柔軟なデータベースを作成できます。

1.2　XML Extensionのシステム構成

この節では，XML Extensionを構成するプログラムについて説明します。また，XML Extensionのシステム構成例も示します。

＜この節の構成＞

1.2.1　XML Extensionを構成するプログラム

1.2.2　XML Extensionシステムの構成例

1.2.1　XML Extensionを構成するプログラム

XML Extensionを構成するプログラムは，XMLデータ検索プラグインです。

XMLデータ検索プラグインは，XML型という抽象データ型でXMLデータを扱います。プログラムの概要を次に説明します。

＜この項の構成＞

(1)　XMLデータ検索プラグイン

(1)　XMLデータ検索プラグイン

XMLデータ検索プラグインは，XMLデータ型プラグインとIXXMLインデクス型プラグインで構成されています。

XMLデータ型プラグイン
XMLデータ型プラグインは，XML型という抽象データ型を扱うプラグインで，文字列の検索，登録などの操作機能を実現します。
XML ExtensionでのXMLデータ型プラグインの名称は，_phdxmlです。

IXXMLインデクス型プラグイン
IXXMLインデクス型プラグインは，XML型に対する検索インデクスを扱うプラグインで，IXXML型というインデクス型を追加します。IXXMLインデクス型プラグインはn-gramインデクス方式の検索エンジンを持ち，XMLデータ型プラグインに対して検索手段を提供します。
XML ExtensionでのIXXMLインデクス型プラグインの名称は，_phjxmlです。

1.2.2　XML Extensionシステムの構成例

XML Extensionシステムの構成例を次の図に示します。なお，この例では，HiRDB/パラレルサーバを前提に説明しています。

図1-1　XML Extensionシステムの構成例

1.3　XML Extensionを利用した検索

XML Extensionを利用した検索には，「XMLデータ検索」があります。この節では，XML Extensionでの検索の概要について説明します。

＜この節の構成＞

1.3.1　XMLデータ検索

1.3.1　XMLデータ検索

XML ExtensionのXMLデータ検索プラグインでは，ユーザが任意に指定したXMLデータをキーワードにして文書を検索します。例えば，キーワードを「最新技術」として，「『最新技術』という単語を含む文書を探す」という検索ができます。

検索のキーワードになる単語を，検索タームといいます。検索タームにさらに条件を付け加えることで，さまざまな条件での検索ができます。また，IXXMLインデクス型プラグインを作成することで，高速な検索を実現できます。

XML ExtensionでのXMLデータ検索の概要を次の図に示します。

図1-2　XML ExtensionでのXMLデータ検索の概要

＜この項の構成＞

(1)　XMLデータ検索の特長

(2)　XMLデータ検索の種類

(1)　XMLデータ検索の特長

XML Extensionは，XMLデータをHiRDBの表の一つの列に格納して管理しています。XML列に対して，XQueryを使って色々な操作を行うことができます。

(2)　XMLデータ検索の種類

XML ExtensionでのXMLデータ検索の基本は，検索タームを指定した検索方法です。この検索方法を基にXML Extensionで提供しているさまざまな検索機能を利用することで，文書を柔軟に検索できます。XML Extensionで提供する検索条件の種類を次に説明します。

検索タームを指定する検索
検索条件には検索タームを指定します。なお，複数の検索タームの指定はできません。

構造名を指定した検索
XMLデータ検索プラグインでXMLデータを検索する場合は，要素を指定した検索ができます。例えば「文書・章・節・項」という要素を持つXMLデータを格納する列があるとします。この列に対して「節の中に『XML』という単語を含むXMLデータ」のように，構造を条件にして検索できます。

属性検索
XMLデータの中の属性を検索できます。

(a)　ほかの列の検索条件との複合条件検索

検索タームを指定した条件に加えて，XMLデータ以外の情報を格納した列に対する検索条件を組み合わせて検索できます。例えば，XMLデータを格納している列とXMLデータの作成日付を格納している列を持つ表に対して，「『先端技術』という単語を含み，2007/1/1以降であるXMLデータ」を検索できます。

2.　XML Extensionシステムの構築

この章では，XML Extensionの運用を開始するために必要な定義ファイルの概要，XML Extensionの環境設定およびデータベースの作成について説明します。また，ユーザごとの環境設定方法についても説明します。

＜この章の構成＞

2.1　XML Extensionシステムの構築の流れ

2.2　システムの設計

2.3　リソースの見積もり

2.4　 XML Extensionの環境設定

2.5　XMLデータ検索プラグインのデータベースの作成

2.6　XMLデータ検索プラグインのユーザ環境設定

2.7　XML Extensionの設定解除

2.8　HiRDBの提供する機能の利用

2.1　XML Extensionシステムの構築の流れ

XML Extensionシステムの環境を構築する流れを次の図に示します。図に示した構築の流れに従って，次の節以降でシステム構築の方法を説明します。

図2-1　XML Extensionシステムの構築の流れ

注意

XML Extensionを運用するすべてのサーバでは，必ずシステム単位，ユニット単位，BES単位（またはシングルサーバ単位）に環境定義情報を設定してください。この情報を設定しないと，検索結果に誤りが生じたり，検索が実行できないおそれがあります。

2.2　システムの設計

XML Extensionのシステムを構築する前に，検討していただきたいことについて説明します。

＜この節の構成＞

2.2.1　検討項目

2.2.2　使用する文字コードによる機能差異について

2.2.1　検討項目

＜この項の構成＞

(1)　リソースの見積もり

(2)　運用形態の決定

(1)　リソースの見積もり

メモリ所要量やRDエリア容量など，XML Extensionが使用するリソースを見積もってください。リソースの見積もりの詳細については，「2.3　リソースの見積もり」を参照してください。

(2)　運用形態の決定

XML Extensionの運用方法を検討します。推奨する運用方法については「6.　推奨する運用方法」を参照してください。

インデクス定義時に，次の登録運用の形態を設定できます。用途に合わせて設定してください。

(a)　インデクス作成方法の指定

表のXML型列にXMLデータを登録している状態でCREATE INDEXを実行する場合，次のどれかのインデクス作成方法を指定できます。

即時登録
インデクス作成とインデクスへのXMLデータ登録を同時に実行する方法です。

初期分割登録
インデクス作成時にはXMLデータ登録をしないで，インデクス作成開始ユティリティ（phjstartidx）で実行時間やインデクスへの登録件数を指定し，XMLデータを登録する方法です。初期分割登録の対象となるのは，インデクス作成時に登録済みのデータです。例えば，表に大量のXMLデータを登録している状態でインデクス作成を実行する場合では，インデクスへのXMLデータ登録に時間が掛かります。このような場合，時間や件数で区切って登録できます。なお，初期分割登録ではインデクスへのXMLデータ登録が完了すると，以降は即時登録となります。

分割遅延登録
初期分割登録での対象範囲に加えて，インデクス作成後に登録されたXMLデータも遅延登録する方法です。インデクス作成後は初期分割登録と同様に，「インデクス作成開始ユティリティ（phjstartidx）」を実行して，XMLデータをインデクスへ一括登録できます。また，「インデクス分割遅延登録運用変更ユティリティ（phjdelay）」を利用して，分割遅延登録の開始と終了を指定することもできます。

2.2.2　使用する文字コードによる機能差異について

HiRDBで設定した文字コード種別によって，XML Extensionで使用できる機能が異なります。文字コード種別によるXML Extensionの機能差を，次の表に示します。

表2-1　使用できるユティリティ

プラグイン種別
ユティリティ
コマンド名
機能
Shift-JIS
または
EUC使用時
utf-8
使用時

XMLデータ検索プラグイン
XMLデータ型プラグイン
phdxmlcnv
XMLデータのESIS-Bデータ変換
○
○

phdsyndicreg
同義語辞書の登録
○
○

phdsyndicrm
同義語辞書の削除
○
○

phdsyndicbkup
同義語辞書のバックアップ
○
○

IXXMLインデクス型プラグイン
phjidxls
インデクス情報の取得
○
○

phjincmt
インデクスのインクリメンタル（最適化）
○
○

phjexpnd
インデクスの拡張
○
×※

phjstartidx
インデクスの作成開始
○
○

phjdelay
インデクス遅延更新開始／終了指定
○
○

phjmodidx
インデクス情報変更
○
○

phjcond
インデクス詰め替え
○
○

（凡例）

○：使用できる。

×：使用できない。

注※

文字コードutf-8の場合はインデクスを自動拡張するため，phjexpnd（インデクスの拡張）コマンドを実行する必要はありません。

2.3　リソースの見積もり

ここでは，XML Extensionが使用するリソースの所要量の見積もりについて説明します。

＜この節の構成＞

2.3.1　メモリ所要量

2.3.2　RDエリア容量

2.3.3　ファイル容量

2.3.4　論理ファイル数

2.3.1　メモリ所要量

XML Extensionのメモリ所要量の見積もり方法について説明します。

＜この項の構成＞

(1)　XMLデータ型プラグインとIXXMLインデクス型プラグインの場合

(1)　XMLデータ型プラグインとIXXMLインデクス型プラグインの場合

(a)　データ操作（XMLデータ登録／更新）

単一XMLデータ登録時

遅延更新機能またはインデクス未定義の場合
使用メモリ［メガバイト］= max ( besprocess,xmlpsize )

インデクス作成の場合
使用メモリ［メガバイト］= max ( min(config指定メモリ×10⁻³ , docsize×5×10⁻⁶ ) , besprocess )

besprocess = docsize×7.5×10⁻⁶

xmlpsize：XMLPARSE関数を使用して登録する場合
xmlpsize= 10+ ( docsize×10＋(element+attrcnt)×500)×10⁻⁶

xmlpsize：XMLPARSE関数を使用しない場合
xmlpsize=0

elementcnt：XMLデータ中の要素数合計値

attrcnt：XMLデータ中の属性数合計値

config指定メモリ：IXXMLインデクス型プラグインの環境設定項目「1件登録時最大メモリ」の設定値［キロバイト］

besprocess：BESまたはSDSでの使用メモリ［メガバイト］

docsize：XMLデータサイズ［バイト］

複数XMLデータ一括登録

差分インデクス統合，CREATE INDEX，遅延更新時のインデクス作成の場合
使用メモリ［メガバイト］= min ( config指定メモリ×10⁻³ , docsize×doccnt×6×10⁻⁶ )

pdloadの場合
使用メモリ［メガバイト］= max ( docsize×6×XML型定義列数×10⁻⁶ , min ( config指定メモリ×10⁻³ , docsize×doccnt×6×10⁻⁶ ) , xmlpsize )

docsize：平均登録XMLデータサイズ［バイト］

doccnt：登録XMLデータ数

config指定メモリ：IXXMLインデクス型プラグインの環境設定項目「一括登録時最大メモリ」の設定値［キロバイト］

xmlpsize：XMLPARSE関数を使用して登録する場合
xmlpsize= 10+ (singledocsize×10＋(element+attrcnt)×500)×10⁻⁶
登録XMLデータ中で単独のXMLデータが上記計算式で最大になる値を採用してください。

xmlpsize：XMLPARSE関数を使用しない場合
xmlpsize=0

elementcnt：単独のXMLデータ中の要素数合計値

attrcnt：単独のXMLデータ中の属性数合計値

singledocsize：単独のXMLデータサイズ［バイト］

(b)　データ操作（XMLデータ削除）

使用メモリ［キロバイト］= 24

(c)　データ操作（インデクス詰め替えユティリティ）

使用メモリ［メガバイト］= 10

(d)　検索

XMLISTS関数でIXXMLインデクスを使った検索を実行した場合
1回のXMLデータ検索での使用メモリ［メガバイト］= min ( config指定メモリ×10-3 , ヒット件数×検索ターム数×↑検索ターム平均長/2↑×20×10-6 )＋ヒット件数×12×10⁻⁶＋3

1SQLで複数のXMLISTS関数を指定した場合
検索時のメモリ所要量の最大値＝「1回の検索使用メモリ×1SQL文中に記述したプラグイン関数の個数」

(e)　1RDエリア当たりの排他制御用共用メモリ

登録・検索同時実行を実行する場合，BESまたはシングルサーバ内のIXXML型用のRDエリア単位に，次のサイズの排他制御用共用メモリが必要です。この領域は，IXXML型用の共用メモリ中に確保されます。

使用メモリ［キロバイト］= max ( ( user_cnt×lock_obj_size×10 ) ×10⁻³,8 )

user_cnt：HiRDBシステムで同時に実行できるユーザ数の最大数（HiRDB環境定義pd_max_users指定値）

lock_obj_size：1排他オブジェクト当たりのサイズ［バイト］

UNIXの場合

64ビット版XML Extensionの場合：48

64ビット版以外のXML Extensionの場合：32

Windowsの場合

32バイト固定

(f)　共用メモリ

登録・検索同時実行を実行する場合，BESまたはシングルサーバ単位に，次のサイズの共用メモリが必要です。

使用メモリ［キロバイト］= max ( ( rd_serve×8192×↓lock_size/8↓ ) /1024＋↑( 32+16×rd_serve ) /8192↑×8,16 )

rd_serve：1サーバ内のIXXML型用RDエリア数

lock_size：IXXMLインデクス型プラグインの環境設定項目

「1RDエリア当たりの排他制御用共用メモリサイズ」の設定値［キロバイト］

2.3.2　RDエリア容量

XML Extensionを使用する場合のRDエリア容量の見積もり方法について説明します。

見積もりの必要なRDエリア容量は，ユーザ用RDエリアと，ユーザLOB用RDエリア，データディクショナリ用RDエリア，レジストリ用RDエリアおよびレジストリLOB用RDエリアの容量です。

＜この項の構成＞

(1)　XMLデータ型プラグインおよびIXXMLインデクス型プラグインの場合

(1)　XMLデータ型プラグインおよびIXXMLインデクス型プラグインの場合

(a)　ユーザ用RDエリア容量

XML型列を定義した表を格納するユーザ用RDエリアで，XML型列の使用容量の見積もり式を次に示します。

XML型列容量［メガバイト］= ↑(docsize×2.5＋12) / rdpsize↑×rdpsize×doccnt×10⁻⁶

docsize：平均登録XMLデータのサイズ［バイト］

rdpsize：RDエリアのページサイズ［バイト］

doccnt：登録XMLデータ数

(b)　ユーザLOB用RDエリア容量

IXXML型情報を格納するユーザLOB用RDエリアの使用容量の見積もり式を次に示します。

IXXML型情報格納用RDエリア

次の表に示す値を設定して，IXXML型情報を格納するユーザLOB用RDエリアの容量を見積もってください。ユーザLOB用RDエリアの容量見積もり式は，マニュアル「HiRDB　システム導入・設計ガイド」を参照してください。分割遅延登録を使用する場合は，指定したインデクス分割遅延登録用領域サイズを加算したサイズとなります。また1つのRDエリアサイズの最大サイズは64GBです。64GBを超える場合は表分割してください。

表2-2　 IXXML型情報を格納するユーザLOB用RDエリアの容量

設定個所 | 変数 | 設定値
LOB列の行の総数 | b= | 128
各BLOBデータのデータ長 | Cj= | 次の説明を参照してください

C1のサイズ

C₁=2,629,632

C2のサイズ

C₂=2,629,632

C3のサイズ

C₃= max ( (↑(24×doccnt) / 8192↑＋↑(4×doccnt) / (512×8192)↑＋↑(4×doccnt) / (1024×8192)↑)×8192＋8192 , 128000＋8192 )

C4のサイズ

C₄= 3750×8192＋8192

C5のサイズ

通常インデクスの場合の場合

C₅ = max (↑(doccnt×docsize×3) / 8192↑×8192＋8192 , 200×1024×1024)

インデクス作成ルールにINDEX_ALLを使用した場合

C₅ = max (↑(doccnt×docsize×5) / 8192↑×8192＋8192 , 200×1024×1024)

C6のサイズ

C₆ = 160×8192＋8192

C7のサイズ

C₇ = 160×8192＋8192

C8のサイズ

CREATEMODE=2の分割遅延登録用インデクスの場合（DELAY_SIZE設定値のインデクス分割遅延登録用領域サイズ）

C₈ = max ( (↑(24×delaydoccnt) / 8192↑＋↑(4×delaydoccnt) / (512×8192)↑＋↑(4×delaydoccnt) / (1024×8192)↑)×8192＋8192 , 128000＋8192 )×2＋1024×1024

CREATEMODE=3の分割遅延登録・更新系SQL同時実行用インデクスの場合（DELAY_SIZE設定値の遅延登録時に情報を退避する領域サイズ）

C₈ = 16×delaydoccnt＋12×8192

C9のサイズ

文字コード種別がutf-8の場合（初期作成）

C₉=50×1024×1024

文字コード種別がutf-8の場合

次のサイズをAvailable Work Area Size（使用可能ワーク領域サイズ）※1に確保してください。

C₉=200×1024×1024 + doccnt×1XMLデータ中のUCS4文字数※2×7

注※1

phjidxls（インデクス情報取得ユティリティ）を使って取得したインデクス情報に表示されます。HiRDBのpdmodコマンドによるRDエリアの拡張を行うと拡張されます。

注※2

UCS4で表現できる文字の中で，UCS2を超える範囲（0x00010000～0x7fffffff）です。

C10のサイズ

CREATEMODE=3の分割遅延登録・更新系ＳＱＬ同時実行用インデクスの場合（WITH_TABLE_SCAN設定値のスキャンデータ格納用領域サイズ）

C₁₀ =↑(delaydocsize×2.5＋12) / 8192↑×delaydoccnt

C11～C128のサイズ

2×8192

doccnt：登録XMLデータ数

docsize：平均登録XMLデータ長［バイト］

delaydoccnt：遅延登録XMLデータ数

delaydocsize：平均遅延登録XMLデータ長［バイト］

(c)　データディクショナリのRDエリア容量

XML Extensionで，XML型やIXXML型を定義した表を格納するデータディクショナリ用RDエリアの容量は，次の表に示す値で見積もってください。データディクショナリ用RDエリア容量の見積もり式は，マニュアル「HiRDB　システム導入・設計ガイド」を参照してください。

表2-3　表の格納ページ数の設定項目と設定値

設定項目 | 設定値
ユーザ定義型の名称長の平均値 | 8［バイト］
プラグインオプション指定長の平均値 | IXXMLインデクス作成時に指定したプラグインオプション名称長［バイト］
平均データ型名称の長さの平均値 | 8［バイト］
ユーザ定義型の総数 | 1［個］
1データ型当たりの属性数の平均値 | 1［個］
データ型識別子の長さの平均値 | 8［バイト］
ユーザ定義型で定義された属性数 | 1［個］
プラグインの総数 | 2［個］
プラグイン名称の長さの平均値 | 8［バイト］
抽象データ型／インデクス型名称の長さの平均値 | 8［バイト］
インデクス型の総数 | 1［個］
インデクス型識別子の長さの平均値 | 4［バイト］
抽象データ型名称の長さの平均値 | 8［バイト］
プラグインインデクスの総数 | 1［個］
インデクス型識別子の長さの平均値 | 4［バイト］
抽象データ型名称の長さの平均値 | 8［バイト］
抽象データ型で定義された属性の総数 | 1［個］
プラグインインデクス適用関数名称の長さの平均値 | 10［バイト］
1プラグインインデクス当たりの適用関数の数 | 30［個］
LOB列を定義した表の総数 | ユーザLOB列の加えてXML型列を定義した表の数
1プラグイン当たりのパラメタ名称の長さの平均値 | 30［バイト］
プラグインライブラリパス名称の長さの平均値 | 255［バイト］
プラグインの注釈の長さの平均値 | 255［バイト］
1インデクス型当たりの適用関数の数 | 30［個］
サブタイプとして定義された抽象データ型の総数 | 0［個］
抽象データ型の総数 | XMLは1［個］として加算

表2-4　インデクスの格納ページ数の設定項目と設定値

設定項目
設定値

作成するユーザ定義データ型の数
1［個］

ユーザ定義データ型名称の長さの平均値
8［バイト］

1ユーザ定義データ型当たりの属性数の平均値
1［個］

ユーザ定義データ型属性名称の長さの平均値
30［バイト］

プラグイン名称の長さの平均値
8［バイト］

作成するプラグイン数
2［個］

インデクス型名称の長さの平均値
8［バイト］

プラグイン関数の数の平均値
30［個］
複数ある場合は各プラグインの適用関数の数との平均

プラグイン関数名称の長さの平均値
20［バイト］

1プラグイン関数当たりのパラメタ数の平均値
6［個］

1プラグイン関数当たりのパラメタ名称の長さの平均値
8［バイト］

2.3.3　ファイル容量

XML Extensionのファイル容量の見積もり方法について説明します。見積もりの必要なファイル容量は，次に説明する更新作業用ファイルとシステムログファイルの容量です。

＜この項の構成＞

(1)　XMLデータ型プラグインおよびIXXMLインデクス型プラグインの場合

(1)　XMLデータ型プラグインおよびIXXMLインデクス型プラグインの場合

(a)　ログ量

ログ量は，既登録XMLデータ量や登録するXMLデータを構成する文字列に依存します。ここでは平均値で記載します。

XML型列の追加

jnl［キロバイト］＝ 32

PURGE TABLE

jnl［キロバイト］＝ 48

これ以降のINSERT時，DELETE時，UPDATE時，一括更新時およびインクリメンタル処理のログ取得には，ログ取得モード，更新前ログ取得モードおよびログレスモードが指定できます。ただし，ログ取得モードでは，更新前ログ取得モードの約2倍必要になります。ここでは更新前ログ取得モードで記載します。

INSERT時（WITH_TABLE_SCAN指定しない場合）

jnl［キロバイト］=↑(docsize×3×10⁻³)/4＋1↑×4＋↑(60×docsize×10⁻³)/4↑×4

docsize：平均登録XMLデータサイズ［バイト］

INSERT時（WITH_TABLE_SCAN指定した場合）

jnl［キロバイト］=↑(docsize×6×10⁻³)/4＋1↑×4＋↑(60×docsize×10⁻³)/4↑×4

docsize：平均登録XMLデータサイズ［バイト］

DELETE時

jnl［キロバイト］＝ 40

UPDATE時

jnl［キロバイト］＝ INSERTで必要分＋DELETEで必要分

一括更新時（pdload，pdrorg，CREATE INDEX，phjstartidx）（WITH_TABLE_SCAN指定しない場合）

jnl［キロバイト］=↑(docsize×3×10⁻³)/4＋1↑×4×doccnt＋↑(30×docsize×10⁻³×doccnt)/4↑×4

docsize：平均登録XMLデータサイズ［バイト］

doccnt：登録XMLデータ数

一括更新時（pdload，pdrorg，CREATE INDEX，phjstartidx）（WITH_TABLE_SCAN指定した場合）

jnl［キロバイト］=↑(docsize×6×10⁻³)/4＋1↑×4×doccnt＋↑(30×docsize×10⁻³×doccnt)/4↑×4

docsize：平均登録XMLデータサイズ［バイト］

doccnt：登録XMLデータ数

インデクス詰め替え処理

jnl［キロバイト］= インデクスデータ量

2.3.4　論理ファイル数

次に示すXML Extensionが使用する論理ファイル数の値は，HiRDBの排他資源数の見積もりで使用します。排他資源数の見積もり方法についてはマニュアル「HiRDB　システム定義」を参照してください。

表2-5　論理ファイル数とファイル作成場所

プラグイン | 論理ファイル数 | ファイル作成場所
XMLデータ型プラグイン | 0［個］ | 無し
IXXMLインデクス型プラグイン | 128 | IXXML型情報格納用のユーザLOB用RDエリア

2.4　 XML Extensionの環境設定

この節では，XML Extensionのセットアップ・登録，レジストリ機能の初期設定，およびシステム共通定義の変更など，XML Extensionの環境設定について説明します。セットアップはUNIXの場合にだけ必要です。Windowsの場合は，インストール時にセットアップが実行されますので，「2.4.2　XML Extensionの登録」から参照してください。

なお，XML Extensionの環境設定では，HiRDBが提供しているユティリティおよび運用コマンドを使用する場合があります。これらのユティリティおよび運用コマンドの使用方法については，マニュアル「HiRDB　コマンドリファレンス」および「HiRDB　システム導入・設計ガイド」を参照してください。なお，ご使用のOSがAIXの場合は，マニュアル「HiRDB　システム導入・設計ガイド」を参照して，AIXに固有の指定を設定してください。

＜この節の構成＞

2.4.1　XML Extensionのセットアップ（UNIXの場合）

2.4.2　 XML Extensionの登録

2.4.3　システム共通定義の変更

2.4.1　XML Extensionのセットアップ（UNIXの場合）

セットアップとは，プラグイン実装ファイルをHiRDB運用ディレクトリにコピーすることを指します。XMLデータのXMLデータ検索機能を使う場合，XMLデータ検索プラグイン（XMLデータ型プラグインおよびIXXMLインデクス型プラグイン）に対してセットアップが必要です。

＜この項の構成＞

(1)　XML Extensionのバージョンアップ

(2)　XML Extensionのセットアップ

(1)　XML Extensionのバージョンアップ

XML Extensionのバージョンアップには，HiRDBの運用コマンド「pdplgset（プラグインのセットアップ）」を使用します。バージョンアップの手順については，マニュアル「HiRDB　システム導入・設計ガイド」を参照してください。

なお，プラグインのアンセットアップ（pdplgset -d）を行う前にプラグインの固有ファイルを退避させる必要があります。詳細は「6.3.2(2)　運用環境のバックアップ」を参照してください。

(2)　XML Extensionのセットアップ

XML Extensionのセットアップには，HiRDBの運用コマンド「pdplgset（プラグインのセットアップ）」を使用します。次の形式で実行してください。

コマンドの形式

pdplgset  プラグイン名  プラグインインストールディレクトリ

引数

プラグイン名

セットアップするプラグインの名称を指定します。各プラグインに指定するプラグイン名を次の表に示します。

表2-6　 XMLデータ検索プラグインのプラグイン名（XML Extensionのセットアップ）

XMLデータ検索プラグイン | プラグイン名
XMLデータ型プラグイン | _phdxml
IXXMLインデクス型プラグイン | _phjxml

プラグインインストールディレクトリ

サーバマシンにインストールされた，プラグインがあるディレクトリを指定します。XML Extensionでは，OSに対応してプラグインインストールディレクトリを/opt/TSPluginに指定してください。

コマンド実行例

pdplgset  _phdxml  /opt/TSPlugin
pdplgset  _phjxml  /opt/TSPlugin

2.4.2　 XML Extensionの登録

XML Extensionの登録とは，プラグインに関する定義情報をディクショナリへ登録すること，抽象データ型定義またはインデクス型定義を実行することを指します。XML Extensionで提供するXMLデータのXMLデータ検索機能を使う場合，XMLデータ検索プラグインに対して登録が必要です。

なお，XMLデータ検索プラグインを使用する場合，XMLデータ型プラグイン，およびIXXMLインデクス型プラグインの両方に対して，登録を実行してください。また，HiRDBがパラレルサーバの場合，登録およびバージョンアップは任意のサーバで実行してください。

＜この項の構成＞

(1)　XML Extensionのバージョンアップ

(2)　XML Extensionの登録

(1)　XML Extensionのバージョンアップ

XML Extensionのバージョンアップには，HiRDBの運用コマンド「pdplgrgst（プラグインの登録・削除）」を使用します。バージョンアップの手順については，マニュアル「HiRDB　システム導入・設計ガイド」を参照してください。

UNIX使用時の注意

なお，バージョンアップ時に新たにプラグインを追加して使用する場合は，追加するプラグインをセットアップから実行してください。

(2)　XML Extensionの登録

XML Extensionの登録には，HiRDBの運用コマンド「pdplgrgst（プラグインの登録・削除）」を使用します。登録の手順については，マニュアル「HiRDB　システム導入・設計ガイド」を参照してください。

XML Extensionの登録の場合は，次の形式で実行してください。なお，XMLデータ検索プラグインを使用する場合は，XMLデータ型プラグイン，IXXMLインデクス型プラグインの順に登録してください。

コマンドの形式

pdplgrgst  プラグイン定義ファイル名  PICファイル名

引数

プラグイン定義ファイル名

プラグイン定義ファイルのファイル名を指定します。コマンドを入力するときのカレントディレクトリにあるファイル名または絶対パスを含めたファイル名を指定します。各プラグインに指定するプラグイン定義ファイル名を次の表に示します。

表2-7　XMLデータ検索プラグインの定義ファイル名（XML Extensionの登録）

XMLデータ検索プラグイン | プラグイン定義ファイル名
XMLデータ型プラグイン | _phdxml.adt
IXXMLインデクス型プラグイン | _phjxml.idx

PICファイル名

PICファイルのファイル名を指定します。コマンドを入力するときのカレントディレクトリにあるファイル名または絶対パスを含めたファイル名を指定します。各プラグインに指定するPICファイル名を次の表に示します。

表2-8　XMLデータ検索プラグインのPICファイル名（XML Extensionの登録）

XMLデータ検索プラグイン | PICファイル名
XMLデータ型プラグイン | _phdxml.pic
IXXMLインデクス型プラグイン | _phjxml.pic

コマンド実行例（UNIXの場合）

pdplgrgst  $PDDIR/plugin/_phdxml/etc/_phdxml.adt ¥
            $PDDIR/plugin/_phdxml/etc/_phdxml.pic
pdplgrgst  $PDDIR/plugin/_phjxml/etc/_phjxml.idx ¥
            $PDDIR/plugin/_phjxml/etc/_phjxml.pic

上記は，2行でコマンドを入力した例を記載していますが，1行で入力する場合は，「¥」（エスケープ文字）を入力しないでください。

コマンド実行例（Windowsの場合）

pdplgrgst  %PDDIR%¥plugin¥_phdxml¥etc¥_phdxml.adt
            %PDDIR%¥plugin¥_phdxml¥etc¥_phdxml.pic
pdplgrgst  %PDDIR%¥plugin¥_phjxml¥etc¥_phjxml.idx
            %PDDIR%¥plugin¥_phjxml¥etc¥_phjxml.pic

「PDDIR」は，HiRDBインストール先フォルダパスが格納された環境変数を示します。環境変数PDDIRは「%」で囲んで「%PDDIR%」と入力してください。

上記の例では，コマンドの引数を改行して記述していますが，実際は改行しないで入力してください。

2.4.3　システム共通定義の変更

登録したXML Extensionを使用できる状態にするため，一度，HiRDBの運用コマンド「pdstop（HiRDBシステム・ユニット・サーバの終了）」でHiRDBを正常終了させたあと，すべてのサーバマシン上のシステム共通定義「pdsys」に，使用するプラグインを宣言するオペランド「pdplugin」を追加します。

システム共通定義「pdsys」の詳細については，マニュアル「HiRDB　システム定義」を参照してください。

システム共通定義のオペランド「pdplugin」は，次の形式で指定してください。

オペランドの指定形式

pdplugin  -n  プラグイン名

引数

-n プラグイン名

使用するプラグインの名称を指定します。各プラグインに指定するプラグイン名を次の表に示します。

表2-9　XMLデータ検索プラグインに指定するプラグイン名（システム共通定義の変更）

XMLデータ検索プラグイン | プラグイン名
XMLデータ型プラグイン | _phdxml
IXXMLインデクス型プラグイン | _phjxml

オペランド指定例

pdplugin  -n  _phdxml
pdplugin  -n  _phjxml

プラグインを削除する場合には，HiRDBのシステム共通定義「pdsys」に追加した，使用するプラグインを宣言する「pdplugin」オペランドを削除します。このとき，このオペランドを追加しているすべてのサーバマシン上のシステム共通定義から削除してください。

2.5　XMLデータ検索プラグインのデータベースの作成

この節では，XMLデータ検索プラグインのデータベースの作成について説明します。

なお，XML Extensionで必要となるデータベースを作成するには，HiRDBが提供しているユティリティおよび運用コマンドを使用する場合があります。これらのユティリティおよび運用コマンドの使用方法については，マニュアル「HiRDB　コマンドリファレンス」を参照してください。また，XML Extensionのユティリティの使用方法については，「3.　XML Extensionのユティリティ」を参照してください。

＜この節の構成＞

2.5.1　XMLデータ検索プラグインのデータベース作成の流れ

2.5.2　データ格納領域の確保

2.5.3　表の作成

2.5.4　インデクスの定義

2.5.5　データの登録

2.5.6　同義語辞書の作成

2.5.7　同義語辞書の登録

2.5.1　XMLデータ検索プラグインのデータベース作成の流れ

XML Extensionの導入後，表作成からデータベースへの登録までの操作方法の流れを次の図に示します。

図2-2　データベース作成の流れ（XMLデータ検索プラグイン）

以降，上記の流れに従ってデータベースの作成方法について説明します。

2.5.2　データ格納領域の確保

XML型を含む表データの格納領域，XMLデータ本体格納領域，およびIXXML型情報格納領域を確保します。データ格納領域の確保には，HiRDBの「pdinit（データベース初期設定ユティリティ）」または「pdmod（データベース構成変更ユティリティ）」のcreate rdarea文を使用します。XML Extensionでは，次の2種類の領域を確保する必要があります。

XML型を含む表の基本データ，およびXMLデータ本体格納領域

IXXML型情報格納領域

XML型を含む表の基本データ，およびXMLデータ本体格納領域にはユーザ用RDエリアを，IXXML型情報格納領域にはユーザLOB用RDエリアを確保してください。

create rdarea文の指定例を図2-3および図2-4に示します。

図2-3　create rdarea文の例（UNIXの場合）

図2-4　create rdarea文の例（Windowsの場合）

2.5.3　表の作成

表の作成には，定義系SQLのCREATE TABLEを使用します。CREATE TABLEでは，XMLデータを登録する列に対する列定義のデータ型として，「XML」と指定してください。

CREATE TABLEの指定例を次の図に示します。

図2-5　表の定義例

2.5.4　インデクスの定義

XMLデータ検索プラグインでのインデクスの作成は，通常のインデクス定義，およびインデクスファイルの自動拡張を行うインデクス定義があります。また，XMLデータの登録または更新時のインデクス作成方法を指定することもできます。

注意事項

大量のXMLデータが登録されている表に対し，CREATE INDEX文でIXXML型を作成する場合，タイムアウトが発生する場合があります。これを避けるために，大量のXMLデータのインデクスを作成するCREATE INDEX文を実行する時は，次に示す設定をしてタイムアウトを無制限にしてから実行してください。

HiRDBのシステム共通定義

pd_watch_time=0

クライアント環境変数

PDCWAITTIME=0

また，この場合はログを取得しない運用をお勧めします。ログを取得しない運用については，「6.3.1　登録運用のログ取得方式の設定について」の「(3)ログレスモード」を参照してください。

以降，各定義方法について説明します。

＜この項の構成＞

(1)　通常のインデクス定義

(2)　インデクスファイル自動拡張機能のインデクス定義

(3)　インデクス作成ルール追加機能のインデクス定義

(4)　インデクス作成方法指定

(5)　大小文字・全角文字半角文字統一機能のインデクス定義

(6)　拗音統一機能のインデクス定義

(7)　濁音統一機能のインデクス定義

(8)　削除文字指定機能のインデクス定義

(9)　英文検索機能のインデクス定義

(1)　通常のインデクス定義

XMLデータ検索用のインデクス作成情報を定義するには，定義系SQLのCREATE INDEXを使用します。この定義をすることで，XMLデータ検索機能が使用できるようになります。

CREATE INDEXのインデクス型識別子にはIXXMLと指定してください。また，RDエリア名には，「2.5.2　データ格納領域の確保」でIXXML型情報の格納領域として確保したRDエリアを指定してください。IXXMLインデクス型プラグインで使用するインデクスのRDエリアは，ログ取得モードとなります。CREATE INDEXの詳細については，マニュアル「HiRDB　SQLリファレンス」を参照してください。

インデクスの定義例を次に示します。

XMLデータ検索機能を使用する場合

XMLデータ検索機能を使用する場合の，インデクスの定義例を次の図に示します。

図2-6　XMLデータ検索機能使用時のインデクス定義例

(2)　インデクスファイル自動拡張機能のインデクス定義

インデクスファイル自動拡張機能を利用すると，インデクスファイル作成時の空き容量を，各論理ファイルの拡張領域として使用できるようになります。これによってRDエリアを有効利用できます。なお，HiRDBが文字コードutf-8でセットアップされた場合，インデクスファイル自動拡張機能は自動的に有効になります。

この機能を使用する場合は，プラグインオプションに次の定義が必要です。

PLUGIN 'FLEX_AREA'

この機能を使用するとインデクスが自動的に拡張するため，インデクスの拡張ユティリティ（phjexpnd）を実行する必要はありません。この機能を利用した場合にインデクスの拡張ユティリティを実行したときは，無視されます。

インデクスファイル自動拡張機能を使用する場合の，インデクス定義例を次の図に示します。

図2-7　インデクスファイル自動拡張機能使用時のインデクス定義例（XMLデータ検索用インデクスの場合）

(3)　インデクス作成ルール追加機能のインデクス定義

インデクス作成ルール追加機能とは，標準で作成するインデクス情報に，かたかな，漢字，数字，英字など，すべての文字の種類（文字種）の組み合わせを追加する機能です。この機能を使用することで，検索タームがさまざまな文字種の組み合わせで構成される場合の検索性能が向上します。

(a)　インデクス作成ルール追加機能の定義方法

インデクス作成ルール追加機能を使用する場合には，CREATE INDEXのプラグインオプションに対して次の表に示す内容を定義してください。

表2-10　CREATE INDEXのプラグインオプションに対する定義内容

定義内容※ | 説明
INDEX_ALL | すべての文字種の組み合わせを追加します。
INDEX_MEDIUM | かたかな，数字，および記号の一部の文字種の組み合わせを追加します。専門分野で使用する用語や技術系の用語が頻出する場合に，使用することをお勧めします。

注※

半角の英字で記述します。

インデクス作成ルール追加機能を使用する場合の，インデクスの定義例を次の図に示します。

図2-8　インデクス作成ルール追加機能使用時（INDEX_MEDIUM）のインデクス定義例

(4)　インデクス作成方法指定

表のXML型列にXMLデータを登録している状態でCREATE INDEXを実行する場合，次のどれかの方法を指定できます。運用形態に合わせて指定してください。

CREATE INDEX実行時にインデクス作成とインデクスへのXMLデータ登録を実行する方法（即時登録）

CREATE INDEX実行時にはインデクスに反映しないでXMLデータやデータの登録だけを実行し，「phjstartidx（インデクス作成開始ユティリティ）」を実行してインデクスへのXMLデータ登録を実行する方法（初期分割登録，または分割遅延登録）

(a)　インデクス作成方法指定の定義方法

インデクス作成方法指定を使用する場合，CREATE INDEXのプラグインオプションに即時登録，初期分割登録，または分割遅延登録の定義を追加します。インデクス作成方法指定の定義を省略した場合，即時登録が適用されます。

即時登録

表に登録されているXMLデータについて，CREATE INDEX実行時にインデクス作成とインデクスへのXMLデータ登録を実行します。

即時登録を使用する場合，CREATE INDEXのプラグインオプションに次の定義を追加，または省略します。

PLUGIN 'CREATEMODE=0'

初期分割登録

表に登録されているXMLデータについて，CREATE INDEX実行時にはインデクスへは反映しません。「phjstartidx（インデクス作成開始ユティリティ）」を実行してインデクスへのXMLデータ登録を実行します。

初期分割登録を使用する場合，CREATE INDEXのプラグインオプションに次の定義を追加します。

PLUGIN 'CREATEMODE=1'

初期分割登録使用時のインデクスの定義例を次の図に示します。

図2-9　初期分割登録使用時のインデクス定義例（XMLデータ検索用のインデクスの場合）

分割遅延登録

表に登録されているXMLデータについて，CREATE INDEX実行時にはインデクスへ反映しません。「phjstartidx（インデクス作成開始ユティリティ）」を実行してインデクスへのXMLデータ登録を実行します。分割遅延登録を使用する場合，インデクス分割遅延登録用の領域が必要となります。

分割遅延登録を使用する場合，CREATE INDEXのプラグインオプションに次の定義を追加します。

PLUGIN 'CREATEMODE=2,DELAY_SIZE=インデクス分割遅延登録用領域サイズ（キロバイト）'

インデクス分割遅延登録用領域サイズの見積もりについては，「2.3.2(1)(b)　ユーザLOB用RDエリア容量」を参照してください。また，分割遅延登録を設定していないインデクスに対しては，「phjmodidx（インデクス情報変更ユティリティ）」を実行することで分割遅延登録を設定したインデクスに移行できます。指定できる最大値・最小値は次のとおりです。

最大値：129,584キロバイト

最小値：2,608キロバイト

分割遅延登録時のインデクスの定義例を次の図に示します。

図2-10　分割遅延登録使用時のインデクス定義例（XMLデータ検索用のインデクスの場合）

分割遅延登録への移行時に実行する，「phjmodidx（インデクス情報変更ユティリティ）」の指定例を次の図に示します。

図2-11　分割遅延登録への移行時に実行する，インデクス情報変更ユティリティの指定例

分割遅延登録・更新系SQL同時実行

遅延登録実行時に，同時に「phjstartidx（インデクス作成開始ユティリティ）」を実行してインデクスへXMLデータを登録します。分割遅延登録・更新系SQL同時実行を利用する場合，遅延登録時に情報を退避しておく領域が必要です。CREATE INDEXのプラグインオプションに次の定義を追加します。

PLUGIN 'CREATEMODE=3,DELAY_SIZE=遅延登録時に情報を退避する領域サイズ（キロバイト）'

遅延登録時に情報を退避する領域サイズの見積もりについては，「2.3.2(1)(b)　ユーザLOB用RDエリア容量」を参照してください。

この退避領域に指定できる最大値・最小値は次のとおりです。

最大値：129,584キロバイト

最小値：12,832キロバイト

分割遅延登録・更新系SQL同時実行のインデクスの定義例を次の図に示します。

図2-12　分割遅延登録・更新系SQL同時実行使用時のインデクス定義例

分割遅延登録・更新系SQL同時実行する際に，インデクスに反映されていない文書をスキャンで検索する場合は，CREATE INDEXのプラグインオプションに次の定義を追加してください。

PLUGIN 'CREATEMODE=3,DELAY_SIZE=遅延登録時に情報を退避するサイズ,WITH_TABLE_SCAN=スキャンデータ格納用領域サイズ（キロバイト）';

スキャンデータ格納用領域サイズの見積りについては，「2.3.2(1)(b)　ユーザLOB用RDエリア容量」を参照してください。

スキャンデータ格納用領域サイズに指定できる最大値，および最小値は次のとおりです。

最大値：2,097,144キロバイト

最小値：max（44,000キロバイト，DELAY_SIZE指定容量×3＋5,120キロバイト）

なお，スキャンで検索できるのはXQueryで次の述語を使用する場合だけです。

文字列（xs:string型）同士の完全一致（＝）

fn:contains関数

fn:starts-with関数

fn:ends-with関数

インデクスに反映されていない文書をスキャンで検索する場合のインデクス定義例を次の図に示します。

図2-13　インデクス未反映文書をスキャンで検索する場合のインデクス定義例

(b)　初期分割登録・分割遅延登録使用時の注意

CREATE INDEX実行後，インデクスへ登録されていないXMLデータのインデクスは，「phjstartidx（インデクス作成開始ユティリティ）」を実行して登録してください。インデクスへ登録されていないXMLデータが存在するかどうかは，「phjidxls（インデクス情報の取得ユティリティ）」を実行して，「Number of Documents for Unfinished-Index」の項目を確認してください。

インデクス検索を使用する場合，インデクスへ登録されていないXMLデータは，検索対象になりません。

インデクスへ登録されていないXMLデータが存在する場合，登録または更新したXMLデータはインデクスへ登録されません。インデクスへ登録する場合は，「phjstartidx（インデクス作成開始ユティリティ）」を実行してください。

インデクスが作成されていないXMLデータが存在する場合，検索を実行しても，インデクスが作成されていない旨のメッセージは出力されません。

初期分割登録の場合，CREATE INDEX実行後，インデクス作成開始ユティリティを実行して，すべてのXMLデータがインデクスへ登録された時点で，インデクス作成方法が初期分割登録から即時登録に切り替わります。以降，XMLデータの登録または更新と同時にインデクスへの登録が行われるようになるため，XMLデータ登録または更新時にインデクスへ登録する時間が掛かるようになります。

「phjmodidx（インデクス情報変更ユティリティ）」で移行したインデクスに対して初期化をした場合，変更した情報は無効になります。

インデクス分割遅延登録用領域を使い切った場合は，遅延しているすべてのXMLデータをインデクスに反映するか，または「phjmodidx（インデクス情報変更ユティリティ）」を使用してインデクス分割遅延登録用領域を拡張してください。

分割遅延登録・更新系SQL同時実行をしない運用へ移行する場合，インデクスを削除してください。そのあと，運用に合わせてインデクスを再定義してください。

WITH_TABLE_SCAN指定を行う運用の場合，グローバルバッファを指定するとスキャン対象データがグローバルバッファに保持されます。このため高速な検索が実現できます。バッファサイズはWITH_TABLE_SCANで指定した値以上のサイズを指定する必要があります。

WITH_TABLE_SCAN指定をした場合，指定された領域内にESIS-Bデータを格納します。phjstartidxでインデクス作成を実行すると，格納したESIS-Bデータは削除されます。ただし，最後に実行したphjstartidxでインデクス作成したときのESIS-Bデータだけは，ロールバックに備えるため保持されます。

(5)　大小文字・全角文字半角文字統一機能のインデクス定義

大文字と小文字，または全角文字と半角文字の違いを区別しないで検索を実行したい場合には，大小文字・全角文字半角文字統一機能を使用します。

(a)　大小文字・全角文字半角文字統一機能の定義方法

大小文字・全角文字半角文字統一機能を使用する場合には，CREATE INDEXのプラグインオプションに対して次の表に示す内容を定義します。

表2-11　大小文字・全角文字半角文字の定義内容

定義内容※ | 説明
SAMECASE=ON | 英大文字と英小文字を区別しないでインデクスを作成します。
SAMEWIDE=ON | 全角文字と半角文字の英数字，かたかな，記号を区別しないでインデクスを作成します。

注※

半角の英字で記述します。また，SAMECASEとSAMEWIDEは組み合わせて指定できます。

大小文字・全角文字半角文字統一機能使用時のインデクス定義例を図2-14，図2-15に示します。

図2-14　大小文字統一機能使用時のインデクス定義例

図2-15　全角文字半角文字統一機能使用時のインデクス定義例

(b)　大小文字・全角文字半角文字統一機能使用時の注意

全角文字半角文字統一機能を指定しないで，近傍条件検索やワイルドカードに「？」を指定した検索を実行した場合，半角文字のガ行，ザ行，ダ行，バ行，パ行，および「ヴ」を2文字として扱います。しかし，全角文字半角文字統一機能を指定した場合は1文字として扱うため注意が必要です。

(6)　拗音統一機能のインデクス定義

検索時に「や」と「ゃ」，「よ」と「ょ」などの拗音を区別しないようにするには，拗音統一機能を使用します。

(a)　拗音統一機能の定義方法

拗音統一機能を使用する場合は，CREATE INDEXのプラグインオプションに次の定義を追加してください。

PLUGIN 'SAMEY=ON'

拗音統一機能を使用する場合の，インデクスの定義例を次の図に示します。

図2-16　拗音統一機能使用時のインデクス定義例

「SAMEY=ON」を指定すると，次の拗音が統一されます。

(7)　濁音統一機能のインデクス定義

検索時に「バ」と「ハ゛」，「ぱ」や「は゜」のように濁音や半濁音を区別しないようにするには，濁音統一機能を使用します。

(a)　濁音統一機能の定義方法

濁音統一機能を使用する場合は，CREATE INDEXのプラグインオプションに次の定義を追加してください。

PLUGIN 'SAMED=ON'

濁音統一機能を使用する場合の，インデクスの定義例を次の図に示します。

図2-17　濁音統一機能使用時のインデクス定義例

「SAMED=ON」を指定すると，濁音，半濁音が統一されます。

(b)　濁音統一機能使用時の注意

濁音文字統一機能を指定しないで，近傍条件検索やワイルドカードに「？」を指定した検索を実行した場合，半角文字の濁音で表示できる文字を2文字として扱います。しかし，濁音文字統一機能を指定した場合は1文字として扱うため注意が必要です。

(8)　削除文字指定機能のインデクス定義

検索に使用しない文字を除いて検索性能を向上させるには，削除文字指定機能を使用します。

(a)　削除文字指定機能の定義方法

削除文字指定機能を使用する場合は，CREATE INDEXのプラグインオプションに次の定義の追加が必要です。

PLUGIN 'DELcode=ON'

削除文字指定機能を使用する場合のインデクス定義例を次の図に示します。

図2-18　削除文字指定機能使用時のインデクス定義例

「DELcode=ON」を指定すると，次の文字が削除されます。

全角および半角文字の「。」（句点），「、」（読点）

全角スペース，半角スペース（0x20）

改行コード（0x0a，0x0d），タブコード（0x09）

(b)　削除文字指定機能使用時の注意

近傍検索で指定された語句リストの間に削除文字が含まれる場合，距離の指定方法によってはヒットしないことがあります。
例えば，登録データが「COMPUTER△NETWORK」の場合，「COMPUTER」と「NETWORK」の間の距離は0となります。

削除文字を指定したインデクスに対して検索を実行する場合，登録データから削除文字が取り除かれていることに注意してください。
例えば，削除文字が半角スペースで，登録データが「tha[△・・・△]</終了タグ>」の場合（・・・は0個以上の繰り返しを示します），「tha?」で検索してもヒットしません。

検索タームおよびすべての異表記展開・同義語異表記展開結果が，削除文字だけで構成されている場合，0件ヒットとなります。

(9)　英文検索機能のインデクス定義

英文に対する検索を行なう場合は，単語単位での検索を行なう英文インデクス定義をしてください。

英文インデクスの定義は次の方法があります。運用に応じてご使用ください。

単語一致（ENGLISH）

単語一致，前方一致（ENGLISH_STANDARD）

図2-19　英文検索機能を使用する場合のインデクス定義例（英文検索）

注意事項

英文インデクス定義は，次のインデクス定義と併用することはできません。

全角文字半角文字統一機能（SAMEWIDE=ON）

拗音統一検索（SAMEY=ON）

インデクス作成ルール追加機能（INDEX_ALL）

インデクス作成ルール追加機能（INDEX_MEDIUM）

(a)　英文検索のインデクスに指定できる項目

英文検索機能で使用するインデクスの定義ファイルについて説明します。

インデクスデリミタファイル

機能

英文検索機能で使用するインデクスを作成する場合に必要な単語の区切り（デリミタ）を定義します。定義したインデクスデリミタに従って単語を抽出し，英文検索機能で使用するインデクスを作成します。抽出した単語が64文字（バイト）を超える場合は，65文字（バイト）目以降を無視して，64文字（バイト）目までの文字でインデクスを作成します。なお，インデクスデリミタは検索対象にできません。

指定形式

CREATE INDEX文のプラグインオプションにインデクスデリミタファイルのファイル名を指定します。

INDEXdlmt=ファイル名

インデクスデリミタファイルは，CREATE INDEXを実行する前に，XML Extensionをセットアップしたすべてのサーバマシンに対して，同一の内容で次に示すディレクトリに事前に作成しておく必要があります。

$PDDIR/plugin/_phjxml/idx_def

また，サンプルファイル（$PDDIR/plugin/_phjxml/sample/pdplgdlmt）を提供しています。

記述形式

"インデクスデリミタ"［,"インデクスデリミタ"］・・・・・・

インデクスデリミタは，「"」（半角ダブルクォーテーション）で囲んで指定します。

インデクスデリミタに使用できる文字は，「0x21」～「0x7E」の範囲の1バイト文字コードです。

「0x20」（半角スペース），「0x09」（タブ）は，無条件にインデクスデリミタとなります。

複数指定する場合は，「"」で囲んだインデクスデリミタを「,」（半角コンマ）で区切って指定します。

「"」をインデクスデリミタにする場合は「""」と二つ続けて定義し，それを「"」で囲んで指定します。

注意事項

インデクスデリミタファイルは省略できます。

省略した場合は，「0x20」（半角スペース），「0x09」（タブ），記号（「0x21」～「0x2F」，「0x3A」～「0x40」，「0x5B」～「0x60」，「0x7B」～「0x7E」）がインデクスデリミタとなります。

不要語，または削除コードに指定した文字コードをインデクスデリミタに指定しないでください。指定した場合は，インデクスデリミタ，削除コード，不要語，の優先順位で処理します。

不要語ファイル

機能

英文検索機能に使用するインデクスを作成する場合，検索に不要な単語を定義します。不要語については，検索用インデクスを作成しません。

指定形式

CREATE INDEX文のプラグインオプションに不要語ファイルのファイル名を指定します。

NOindex=ファイル名

不要語ファイルは，CREATE INDEXを実行する前に，XML Extensionをセットアップしたすべてのサーバマシンに対して，同一の内容で次のディレクトリに事前に作成しておく必要があります。

$PDDIR/plugin/_phjxml/idx_def

記述形式

"不要語"［,"不要語"］・・・・・・

不要語は，「"」（半角ダブルクォーテーション）で囲んで指定します。

不要語に使用できる文字は，「0x21」～「0x7E」の範囲1バイトの文字コードです。

複数指定する場合は，「"」で囲んだ不要語を「,」（半角コンマ）で区切って指定します。不要語は100個まで指定できます。

「"」を不要語にする場合は，「""」と二つ続けて定義し，それを「"」で囲んで指定します。

不要語は64文字（バイト）まで指定できます。64文字（バイト）を超えて指定した場合，65文字（バイト）目以降を無視して，64文字（バイト）目までの文字列を不要語とします。

注意事項

不要語ファイルは省略できます。省略した場合は，不要語なしでインデクスを作成します。

インデクスデリミタ，または削除コードに指定した文字コードを不要語に指定しないようにしてください。指定した場合は，インデクスデリミタ，削除コード，不要語の優先順位で処理します。

検索条件で指定した検索タームに不要語を含む場合は，不要語を任意の1単語とみなして検索します。なお，検索条件に不要語だけを指定した場合は，入力条件エラーとなります。

削除コードファイル

機能

英文検索機能で使用するインデクスを作成する場合に，削除するコードを定義します。定義した削除コードはないものとして単語を抽出し，英文検索機能で使用するインデクスを作成します。

単語に「-」（ハイフン）のような不要なコードがある場合，削除してその前後を詰めて扱い，必要なコードだけでインデクスを作成できます。

指定形式

CREATE INDEX文のプラグインオプションに削除コードファイルのファイル名を指定します。

DELcode=ファイル名

削除コードファイルは，CREATE INDEXを実行する前に，XML Extensionをセットアップしたすべてのサーバマシンに対して，同じ内容で次のディレクトリに事前に作成しておく必要があります。

$PDDIR/plugin/_phjxml/idx_def

記述形式

"削除コード"［,"削除コード"］・・・・・・・

削除コードは，「"」（半角ダブルクォーテーション）で囲んで指定します。

削除コードに使用できる文字は，「0x21」～「0x7E」の範囲の1バイト文字コードです。

複数指定する場合は，「"」で囲んだ削除コードを「,」（半角コンマ）で区切って指定します。

「"」を削除コードにする場合は，「""」と二つ続けて定義し，それを「"」で囲んで指定します。

注意事項

削除コードファイルは省略できます。省略した場合は，削除コードなしでインデクスを作成します。

インデクスデリミタ，または不要語に指定した文字コードを削除コードに指定しないようにしてください。指定した場合は，インデクスデリミタ，削除コード，不要語の優先順位で処理します。

2.5.5　データの登録

＜この項の構成＞

(1)　データの登録方法

(2)　登録・検索同時実行の設定

(3)　分割遅延登録・更新系SQL同時実行の設定

(1)　データの登録方法

作成した表にデータを登録するには，操作系SQLのINSERT文を使用します。登録するデータは，HiRDBをセットアップしたときの文字コードに合わせて，XML変換ライブラリを使用して生成したESIS-B形式データです。XML変換ライブラリ，およびESIS-B形式データの詳細については「5.　XML変換ライブラリ」を参照してください。

テキスト形式のXMLデータで登録する場合は，INSERT文の中でXMLPARSE関数を使用します。ただし，XMLデータに対して妥当性検証を行わない，などの制約があります。

INSERT文，およびXMLPARSE関数の詳細についてはマニュアル「HiRDB　SQLリファレンス」を参照してください。

INSERT文の指定例を次の図に示します。

図2-20　INSERT文の処理の例（ESIS-B形式データの場合）

図2-21　 INSERT文の処理の例（テキスト形式XMLデータの場合）

また，HiRDBの「pdload（データベース作成ユティリティ）」を使用すると，データの一括登録ができます。

なお，SQLによるXMLデータ登録時にXMLデータのエラーを検知しても，トランザクションはロールバックしません。XMLデータのエラーが発生した場合，SQL（INSERT文またはUPDATE文）による登録の場合は，SQLCODE=997のエラーとなります。また，pdloadによる登録の場合は，該当する行の登録がスキップされます。

(2)　登録・検索同時実行の設定

登録・検索同時実行を設定すると，データの登録と検索の同時実行ができます。同時実行には次の利点があります。

ほかのユーザが更新中（トランザクションが終了していない状態）のXMLデータを検索できます。

XML型格納用RDエリアおよびIXXML型情報格納用RDエリアに対してグローバルバッファを割り当てると，登録および検索性能が向上します。

ただし，同時実行できるのは次の場合です。

SQLによる単数の更新系トランザクションと，複数の検索系トランザクションの同時実行

インデクス未作成の場合，複数の更新系トランザクションの同時実行

「phjidxls（インデクス情報の取得ユティリティ）」，「phjstartidx（インデクス作成開始ユティリティ）」と，検索系トランザクションの同時実行

(a)　指定方法

XML Extensionの環境設定項目，およびHiRDBのバックエンドサーバ定義またはシングルサーバ定義に，次の内容を設定します。XML Extensionの環境設定項目については，「2.6　XMLデータ検索プラグインのユーザ環境設定」を参照してください。また，HiRDBのバックエンドサーバ定義またはシングルサーバ定義の詳細については，マニュアル「HiRDB　システム定義」を参照してください。

XMLデータ検索プラグインの環境設定項目

XMLデータ型プラグインを使用している場合
XMLデータ型プラグインの環境設定項目「登録・検索同時実行指定」で次のように指定します。

　　set phd_search_wait=nowait

IXXMLインデクス型プラグインを使用している場合
IXXMLインデクス型プラグインの環境設定項目「1RDエリア当たりの排他制御用共用メモリサイズ」で次のように指定します。

　　set phj_lock_pool_size=共用メモリサイズ

HiRDBのバックエンドサーバ定義またはシングルサーバ定義

IXXMLインデクス型プラグインを使用している場合
IXXMLインデクス型プラグインで使用する共用メモリのサイズを指定します。
HiRDBのバックエンドサーバ定義またはシングルサーバ定義のオペランド「pdplgprm」は，次の形式で指定してください。

オペランドの指定形式

pdplgprm  -n  プラグイン名  -s  共用メモリサイズ

引数

-n　プラグイン名

共用メモリを使用するプラグインの名称を指定します。ここでは，IXXMLインデクス型プラグインのプラグイン名「_phjxml」を指定してください。

-s　共用メモリサイズ

IXXMLインデクス型プラグインで使用する共用メモリのサイズ（キロバイト）を指定します。

(b)　注意事項

HiRDBが提供しているユティリティによる登録と検索系トランザクションは同時に実行できません。

「phjidxls（インデクス情報の取得ユティリティ）」，「phjstartidx（インデクス作成開始ユティリティ）」以外のXML Extensionのユティリティと，検索系トランザクションは同時に実行できません。

同時実行を設定している場合，XML Extensionのデータの整合性確保のために，一時的に排他制御をします。このため，同時実行を設定していない場合に比べて，排他制御によるオーバヘッドが掛かります。

「phd_search_wait=nowait」を設定した場合は，IXXML型を作成していない場合でも共用メモリの定義をする必要があります。

同時実行する場合は，グローバルバッファを指定してください。実行性能が向上します。

登録・検索同時実行時に，更新系のトランザクションを複数実行した場合，排他によってwait状態になります。更新系トランザクションのwait状態が解消されるまで，以降の検索処理もwait状態になります。

LOCK文でテーブル全体を排他すると，ほかのトランザクションとの同時実行ができません。このため，分割遅延登録・更新系SQL同時実行を実施する場合は，LOCK文でテーブル全体の排他を実施しないようにしてください。

(3)　分割遅延登録・更新系SQL同時実行の設定

分割遅延登録・更新系SQL同時実行を利用すると，「(2)　登録・検索同時実行の設定」で説明した登録・検索同時実行の機能に加えて，さらに，データ登録とインデクス作成を同時に実行できます。

(a)　指定方法

XMLデータ型プラグインの環境設定項目「登録・検索同時実行」に，次のように指定します。

set phd_search_wait=nowait_with_update

(b)　注意事項

LOCK文でテーブル全体を排他すると，ほかのトランザクションとの同時実行ができません。このため，分割遅延登録・更新系SQL同時実行を実施する場合は，LOCK文でテーブル全体の排他を実施しないようにしてください。

検索トランザクションの排他が更新系SQLまたは「phjstartidx（インデクス作成開始ユティリティ）」と競合することを避けるため，検索SQL実行時は，SQLの排他オプションにWITHOUT LOCK NOWAITを指定してください。

2.5.6　同義語辞書の作成

全文検索で検索タームの同義語を検索条件として使用する場合同義語辞書の作成が必要です。

同義語辞書を作成する前に，同義語辞書の基になるファイルを作成します。このファイルを同義語辞書テキストファイルといいます。同義語辞書テキストファイルには，キーワードとなる単語（検索ターム）の同義語の展開方法を定義します。同義語辞書テキストファイルはテキストエディタなどで作成します。なお，同義語辞書を作成しない場合，このファイルを作成する必要はありません。

＜この項の構成＞

(1)　同義語辞書テキストファイルの記述形式

(2)　同義語辞書テキストファイルの記述例

(3)　同義語グループ内での文字種の制限

(1)　同義語辞書テキストファイルの記述形式

同義語辞書テキストファイルには次の形式で同義語を定義します。

記述形式

同義語，同義語〔，同義語〕…

注意事項

同義語辞書は，HiRDBをセットアップしたときの文字コード，および「付録A　検索に使用できる文字」に示す文字コードで記述してください。

一つの同義語のグループには，2語以上の同義語を記述してください。

行の先頭文字に「*」（半角アスタリスク）を記述すると注釈行とみなされ，同義語として扱われません。「*」を同義語とする場合，「¥*」と記述してください。なお「¥」（エスケープ文字）は半角でも全角でもかまいません。

行の途中に△（半角スペース）があった場合，半角スペース以降のデータは注釈として扱われます。ただし，行の先頭にある半角スペースは無視されます。
半角スペースを同義語とする場合，「¥△」と記述してください。なお「¥」は半角でも全角でもかまいません。

行の末尾が「,」（半角コンマ）で終了している場合，行が継続しているものとして扱われます。「,」を同義語とする場合「¥,」と記述してください。なお「¥」は半角でも全角でもかまいません。

「¥」を同義語とする場合，「¥¥」と記述してください。なお，「¥」は半角でも全角でもかまいません。

(2)　同義語辞書テキストファイルの記述例

同義語辞書テキストファイルの記述例を次の図に示します。

図2-22　同義語辞書テキストファイルの記述例

(3)　同義語グループ内での文字種の制限

一つの同義語のグループには，かたかな，漢字，数字，アルファベットなどの種類の文字が混在している場合があります。これらの文字の種類を，文字種といいます。例えば「アメリカ合衆国」という単語は，かたかな（アメリカ）と漢字（合衆国）の二つの文字種で構成されています。

同義語辞書テキストファイルを作成する場合，次のことに注意してください。

一つの同義語のグループを文字種ごとに分割したとき，その数の合計が1,000以下となるようにしてください。ただし，ひらがなは文字種として数えません。

長音およびハイフンは，直前にある文字と同じ文字種とします。直前に文字がない場合は，そのほかの扱いになります。

同義語のグループでの文字種の分割例を次の図に示します。

図2-23　同義語のグループでの文字種の分割例

2.5.7　同義語辞書の登録

同義語辞書の登録には，「phdsyndicreg（同義語辞書登録ユティリティ）」を使用します。

同義語辞書登録ユティリティの指定例を次に示します。

UNIXの場合

phdsyndicreg  USERDIC01  /opt/def1/mydictionary.dic

Windowsの場合

phdsyndicreg  USERDIC01  c:¥data¥def1¥mydictionary.dic

「phdsyndicreg（同義語辞書登録ユティリティ）」の詳細については「3.2.1　phdsyndicreg（同義語辞書登録ユティリティ）」を参照してください。

2.6　XMLデータ検索プラグインのユーザ環境設定

この節では，XML ExtensionシステムのXMLデータ検索プラグインの環境をユーザごとに設定する方法について説明します。

＜この節の構成＞

2.6.1　XMLデータ型プラグインの環境設定

2.6.2　 IXXMLインデクス型プラグインの環境設定

2.6.1　XMLデータ型プラグインの環境設定

＜この項の構成＞

(1)　環境情報の定義方法

(2)　設定できる項目

(3)　有効範囲

(1)　環境情報の定義方法

XMLデータ型プラグインの環境情報を設定するファイルを環境定義ファイルといいます。環境定義ファイルは，プラグインごとに作成します。XMLデータ型プラグインの環境定義ファイルは，サンプルファイルとして提供されています。

XMLデータ型プラグインの環境情報を設定できる単位を次に示します。

システム単位
システム単位に定義情報を設定するユーザは，プラグインシステム定義情報ファイルを作成します。
作成するディレクトリおよびファイル名は次のとおりです。

UNIXの場合
$PDDIR/plugin/_phdxml/conf/pdplgsys

Windowsの場合
%PDDIR%¥plugin¥_phdxml¥conf¥pdplgsys

ユニット単位
ユニット単位に定義情報を設定するユーザは，プラグインユニット定義情報ファイルを作成します。
作成するディレクトリおよびファイル名は次のとおりです。

UNIXの場合
$PDDIR/plugin/_phdxml/conf/pdplgutsys

Windowsの場合
%PDDIR%¥plugin¥_phdxml¥conf¥pdplgutsys

サーバ単位（BESまたはSDS単位）
各サーバ単位に定義情報を設定するユーザは，プラグインサーバ環境情報ファイルを作成します。
作成するディレクトリおよびファイル名は次のとおりです。

HiRDB/パラレルサーバの場合
UNIXの場合
$PDDIR/plugin/_phdxml/conf/BES名称
Windowsの場合
%PDDIR%¥plugin¥_phdxml¥conf¥BES名称

HiRDB/シングルサーバの場合
UNIXの場合
$PDDIR/plugin/_phdxml/conf/SDS名称
Windowsの場合
%PDDIR%¥plugin¥_phdxml¥conf¥SDS名称

優先順位は，サーバ単位＞ユニット単位＞システム単位です。

記述誤りなどが検出された場合，メッセージログに警告メッセージが出力され，誤りのある定義ファイルは無視されます。環境定義ファイルがないか，環境定義ファイルはあるが設定されていない定義がある場合は，エラーではなく，定義値なしとして処理されます。最終的に有効な値がない場合は，システムのデフォルトで動作します。

XMLデータ型プラグインの環境定義ファイルの定義例を次の図に示します。

図2-24　XMLデータ型プラグインの環境定義ファイルの定義例

注意事項

各設定項目の行末は改行で区切ってください。

設定項目の途中を改行で区切らないでください。

1行に設定できる文字列長は1,023バイトです。

「#」（シャープ）以降は，コメント文として扱われます。

各行は，空行なしで詰めて記述してください。

(2)　設定できる項目

XMLデータ型プラグインを動作させる環境情報をXMLデータ型プラグインの環境定義ファイルに定義することで，ユーザごとの環境を設定できます。設定できる定義項目を次の表に示します。

表2-12　XMLデータ型プラグインの環境定義ファイルに設定できる定義項目

種別
環境設定項目
パラメタ
設定値
環境設定できる単位

登録・検索同時実行
登録・検索同時実行指定
set phd_search_wait
wait，nowait，またはnowait_with_update
デフォルト：wait
サーバ

エラー処理
エラーコード詳細化指定
set phd_errorcode_detail
offまたはon
デフォルト：off
システム，ユニット，サーバ

XMLデータ登録
XMLPARSE名前空間処理指定
set phd_xmlparse_namespace
offまたはon
デフォルト：off
システム，ユニット，サーバ

登録・検索同時実行，または分割遅延登録・更新系SQL同時実行指定

登録・検索同時実行，または分割遅延登録・更新系SQL同時実行を使用するかどうかを指定します。

なお，この項目を設定できる単位は，サーバ単位だけです。

形式

set phd_search_wait=wait｜nowait｜nowait_with_update

wait
同時実行を使用しない。

nowait
登録・検索同時実行を使用する。

nowait_with_update
登録・検索同時実行機能に加えて，分割遅延登録・更新系SQL同時実行を使用する。

エラーコード詳細化指定

SQL連絡領域にメッセージが返却される場合に，エラーコードを詳細モードで出力するかどうかを指定します。

詳細モードで出力しない場合，SQLCODE=-997のエラーとなります。詳細モードで出力する場合，XML Extensionのエラーコードが出力されます。エラーコードの詳細は「付録F.1　SQL連絡領域に出力されるメッセージ」を参照してください。

形式

set phd_errorcode_detail=off｜on

off
詳細化モードで出力しません。

on
詳細化モードで出力します。

XMLPARSE名前空間処理指定

XMLPARSE関数を使用してXMLデータを登録する場合の名前空間処理方法を指定します。

形式

set phd_xmlparse_namespace=off｜on

off
名前空間を無効にします。接頭辞が記述されていても，接頭辞が指定されていないものとして処理し，すべての要素および属性は，規定のXML名前空間として扱います。

on
名前空間を有効にします。ただし，名前空間の宣言は開始タグのみ有効とし，DTDでの名前空間の宣言は無視します。なお，XMLデータ内の各接頭辞は4096バイト以内で記述してください。

注意事項

本パラメタは，環境設定先すべてのXML型列に対して有効となりますので，XMLPARSE関数で運用を行なうXML型列が複数ある場合，名前空間の有効／無効を混在できません。また，既存のXML型列にXMLPARSE関数でデータが登録されている状態で，本パラメタを変更するだけでは，登録済みのデータ内容は変更できないため，本パラメタを変更した場合は既存のXML型列のデータをすべて再登録する必要があります。旧バージョンの08-04では本パラメタがoffの状態と同じ仕様となりますので，バージョンアップ後に本パラメタをonにする場合もXMLPARSE関数を使用するXML型列のデータをすべて再登録する必要があります。

なお，名前空間の有効／無効が混在した場合は，検索時の名前空間指定内容が異なりますので，期待通りの検索結果が得られません。

(3)　有効範囲

環境定義ファイルに定義した環境情報は，サーバ開始から終了まで有効です。HiRDB稼働中に環境情報を変更した場合は，正しく動作しない場合がありますので，変更しないでください。

2.6.2　 IXXMLインデクス型プラグインの環境設定

＜この項の構成＞

(1)　環境情報の定義方法

(2)　設定できる項目

(3)　有効範囲

(1)　環境情報の定義方法

IXXMLインデクス型プラグインの環境定義ファイルは，サンプルファイルとして提供されています。

IXXMLインデクス型プラグインの環境情報を設定できる単位を次に示します。

システム単位
システム単位に定義情報を設定するユーザは，プラグインシステム定義情報ファイルを作成します。
作成するディレクトリおよびファイル名は次のとおりです。

UNIXの場合

  $PDDIR/plugin/_phjxml/conf/pdplgsys

Windowsの場合

  %PDDIR%¥plugin¥_phjxml¥conf¥pdplgsys

ユニット単位
ユニット単位に定義情報を設定するユーザは，プラグインユニット定義情報ファイルを作成します。
作成するディレクトリおよびファイル名は次のとおりです。

UNIXの場合

  $PDDIR/plugin/_phjxml/conf/pdplgutsys

Windowsの場合

  %PDDIR%¥plugin¥_phjxml¥conf¥pdplgutsys

サーバ単位
各サーバ単位に定義情報を設定するユーザは，プラグインサーバ環境情報ファイルを作成します。
作成するディレクトリおよびファイル名は次のとおりです。

HiRDB/パラレルサーバの場合
UNIXの場合
$PDDIR/plugin/_phjxml/conf/BES名称
Windowsの場合
%PDDIR%¥plugin¥_phjxml¥conf¥BES名称

HiRDB/シングルサーバの場合
UNIXの場合
$PDDIR/plugin/_phjxml/conf/SDS名称
Windowsの場合
%PDDIR%¥plugin¥_phjxml¥conf¥SDS名称

優先順位は，サーバ単位＞ユニット単位＞システム単位です。

記述誤りなどが検出された場合，メッセージログに警告メッセージを出力し，誤りのある定義ファイルは無視されます。環境定義ファイルがないか，環境定義ファイルはあるが設定されていない定義がある場合は，エラーではなく，定義値なしとして処理します。最終的に有効な値がない場合は，システムのデフォルトで動作します。

環境定義ファイルの定義例を次の図に示します。

図2-25　IXXMLインデクス型プラグインの環境定義ファイルの定義例

注意事項

各設定項目の行末は改行で区切ってください。

1行に1項目だけ指定できます。2項目以上指定した場合は，2項目目以降は無視されます。

設定項目の途中を改行で区切らないでください。

検索用ワークファイルを使用して実行した検索が異常終了した場合，検索用ワークファイルディレクトリに不要なファイルが残ることがあります。これらのファイルは定期的にユーザが削除してください。

1行に設定できる文字列長は1,023バイトです。

「#」（シャープ）以降は，コメント文として扱われます。

各行は，空行なしで詰めて記述してください。

(2)　設定できる項目

IXXMLインデクス型プラグインを動作させる環境情報をIXXMLインデクス型プラグインの環境定義ファイルに定義することで，ユーザごとの環境を設定できます。設定できる定義項目を次の表に示します。

表2-13　IXXMLインデクス型プラグインの環境定義ファイルに設定できる定義項目

種別
環境設定項目
パラメタ
設定値
環境を設定できる単位

XMLデータ検索
一括登録時最大メモリサイズ
set phj_mem_build
最大値：2,097,152キロバイト
最小値：30,720キロバイト
デフォルト：512,000キロバイト
システム，ユニット，サーバ

1件登録時最大メモリサイズ
set phj_mem_insert
最大値：2,097,152キロバイト
最小値：3,072キロバイト
デフォルト：51,200キロバイト
システム，ユニット，サーバ

検索時最大ワークメモリサイズ
set phj_mem_search
最大値：2,097,152キロバイト
最小値：2,048キロバイト
デフォルト：102,400キロバイト
システム，ユニット，サーバ

検索用ワークファイルディレクトリ
set phj_dir_search
最大長：200バイト（¥0を含む）
最小長：1バイト
UNIXの場合のデフォルト：HiRDB運用ディレクトリ/plugin/_phjxml/tmp
Windowsの場合のデフォルト：HiRDB運用フォルダ¥plugin¥_phjxml¥tmp
システム，ユニット，サーバ

検索オプション
set phj_opt_search
memoryまたはfile
デフォルト：memory
システム，ユニット，サーバ

スコア算出法指定
set phj_opt_score
booleanまたはtotal
デフォルト：boolean
システム，ユニット，サーバ

検索抑止インデクスサイズ
set phj_index_search
最大値：2,097,152キロバイト
最小値：64キロバイト
デフォルト：2,097,152キロバイト
システム，ユニット，サーバ

全文検索
1文字近傍検索実行可否
set phj_1gram_proximity_search
onまたはoff
デフォルト：on
システム，ユニット，サーバ

登録・検索同時実行
1RDエリア当たりの排他制御用共用メモリサイズ
set phj_lock_pool_size
最大値：1,024キロバイト
最小値：8キロバイト
デフォルト：8キロバイト
サーバ

分割遅延登録
分割遅延登録用ファイルオーバ時の処理
set phj_delay_over
continueまたはerror
デフォルト：error
システム，ユニット，サーバ

遅延データスキャン機能指定
set phj_table_scan
onまたはoff
デフォルト：on
システム，ユニット，サーバ

運用
インデクス用グローバルバッファ最適化モード指定
set phj_global_buffer_mode
0または1
デフォルト：0
システム，ユニット，サーバ

一括登録時最大メモリサイズ

IXXML型に対する一括追加（CREATE INDEX，pdload）をするときに使用する最大メモリサイズ（キロバイト）です。

形式

set phj_mem_build=xxxx

1件登録時最大メモリサイズ

IXXML型に1件追加（INSERT文，UPDATE文，pdloadのSYNCモード）するときに使用する最大メモリサイズ（キロバイト）です。

形式

set phj_mem_insert=xxxx

検索時最大ワークメモリサイズ

検索処理をするときに使用する作業用メモリの最大メモリサイズ（キロバイト）です。

形式

set phj_mem_search=xxxx

検索用ワークファイルディレクトリ

検索オプションに，「set phj_opt_search=file」を指定した場合，検索に使用するワークファイルを作成するディレクトリ名を絶対パスで指定します。XML Extensionは，検索開始時にファイル名が「swk」で始まるユニークなファイルを指定されたディレクトリに作成し，検索終了時に削除します。

検索が複数同時実行された場合，ディレクトリ競合による性能低下のおそれがあります。そのため，同一のBESに対して複数のユーザが同時に検索する運用の場合は，ファイルではなくメモリの使用をお勧めします。

形式

set phj_dir_search=xxxxxxxxxxxx

検索オプション

検索時の動作方法を指定します。

形式

set phj_opt_search=memory | file

memory
メモリ上で動作します。「set phj_mem_search」で指定したメモリサイズを超える場合は，メモリ不足エラーとなります。

file
メモリおよび検索用ワークファイルで動作します。

スコア算出法指定

検索時のスコア算出法を指定します。

形式

set phj_opt_score=boolean|total

boolean
論理演算時に検索条件式が論理積の場合は，演算対象内で最小のスコアを最終スコアとし，論理和の場合は，演算対象内で最大のスコアを最終スコアとします。

total
論理演算時に検索条件式が論理積，論理和のどちらの場合でも，演算対象内のスコアの総和の値を最終スコアとします。

検索抑止インデクスサイズ

検索で使用するインデクスサイズの上限値を指定します。検索時に指定した上限値を超えるインデクスを参照すると，SQL連絡領域に次のメッセージが出力されます。

Index data for search exceeds maximum size.(XX)

メッセージの詳細については，「付録F　エラーメッセージ」を参照してください。

形式

set phj_index_search = xxx

1文字近傍検索実行可否

1文字のインデクスを使用する近傍検索や，「A*A」のような1文字のインデクスを使用する前方後方一致のワイルドカード検索の実行を可能にするかを指定します。なお，これらの検索は使用するインデクスが多くなり，システムに負荷を与えるおそれがあります。このため，これらの検索を実行する必要が無い場合は「off」を指定してください。

形式

set phj_1gram_proximity_search=on|off

on
1文字のインデクスを使用する近傍検索，および前方後方一致のワイルドカード検索を実行できます。

off
1文字のインデクスを使用する近傍検索，および前方後方一致のワイルドカード検索を実行するとエラーリターンし，SQL連絡領域に「Cannot specify term of ome character in proximity.」のメッセージが出力されます。
メッセージの詳細については「付録F　エラーメッセージ」を参照してください。

1RDエリア当たりの排他制御用共用メモリサイズ

登録・検索同時実行時の排他制御に使用する共用メモリのサイズ（キロバイト）を指定します。サイズは8キロバイトの倍数で指定してください。8キロバイトの倍数でない値が指定された場合は，8キロバイト単位で切り下げられます。ただし，8キロバイトより小さい値が指定された場合は，8キロバイト（デフォルト）になります。

なお，この項目を設定できる単位は，サーバ単位だけです。

形式

set phj_lock_pool_size=xxxx

分割遅延登録用ファイルオーバ時の処理

インデクス分割遅延登録時に，指定された分割登録用の領域を使い切った場合の処理を指定します。

形式

set phj_delay_over=continue | error

continue
登録要求されたXMLデータは遅延せず即時にインデクスを作成して登録します。

error
エラーリターンします。

遅延データスキャン機能指定

遅延データスキャン機能に対応するインデクスが作成された場合，実際に遅延データスキャン機能を使用して検索するかどうかを指定します。

形式

set phj_table_scan=on | off

on
遅延データスキャン機能を適用します。

off
遅延データスキャン機能を適用しません。

インデクス用グローバルバッファ最適化モード指定

インデクスにアクセスするときHiRDB BLOB用グローバルバッファを最適化するかどうかを指定します。最適化した場合は検索性能の向上が期待できます。

形式

set phj_global_buffer_mode=0|1

0
最適化しません。

1
最適化します。
検索用の管理データファイル単位で優先してバッファリングします。各ファイルの優先付けについては，「6.2　性能向上の運用」を参照してください。

(3)　有効範囲

環境定義ファイルに定義した環境情報は，サーバ開始から終了まで有効です。HiRDB稼働中に環境情報を変更した場合は，正しく動作しない場合がありますので変更しないでください。

2.7　XML Extensionの設定解除

この節では，コマンドを使用した，XML Extensionの設定解除方法について説明します。ここでは，XMLデータ検索プラグインのデータベースを運用していることを前提に説明します。

なお，HiRDBが提供しているユティリティの使用方法については，マニュアル「HiRDB　コマンドリファレンス」および「HiRDB　システム導入・設計ガイド」を参照してください。また，XML Extensionのユティリティの使用方法については，「3.　XML Extensionのユティリティ」を参照してください。

＜この節の構成＞

2.7.1　設定解除の流れ

2.7.2　表の削除

2.7.3　XML Extensionの削除

2.7.4　XML Extensionのアンセットアップ（UNIXの場合）

2.7.5　システム共通定義の変更

2.7.6　HiRDBをOSから削除する場合の注意事項（UNIXの場合）

2.7.1　設定解除の流れ

XMLデータ検索プラグインのデータベースの運用状態から，XML Extensionの設定解除までの操作の流れを次の図に示します。

図2-26　XML Extensionの設定解除の流れ

以降，上記の流れに従って作業の詳細を説明します。

2.7.2　表の削除

XML Extensionを適用している表を削除するには，定義系SQLのDROP TABLEを使用します。XML型の列を定義している表が削除の対象となります。DROP TABLEの詳細については，マニュアル「HiRDB　SQLリファレンス」を参照してください。

2.7.3　XML Extensionの削除

XML Extensionの削除には，HiRDBの運用コマンド「pdplgrgst（プラグインの登録・削除）」を使用します。

XML Extensionの削除には，HiRDBの運用コマンド「pdplgrgst（プラグインの登録・削除）」を使用します。プラグインを削除する場合，pdplgrgstコマンド実行前に次のものを削除しておいてください。

削除するプラグインを使用した表

削除するプラグインを使用したインデクス

削除するプラグインが提供している抽象データ型，インデクス型，および関数を利用した，関数，手続き

XML Extensionを削除する場合は，次の形式で実行してください。なお，XMLデータ検索プラグインを削除する場合には，IXXMLインデクス型プラグイン，XMLデータ型プラグインの順に削除してください。

コマンドの形式

pdplgrgst -d プラグイン定義ファイル名  PICファイル名

引数

プラグイン定義ファイル名

プラグイン定義ファイルのファイル名を指定します。コマンドを入力するときのカレントディレクトリにあるファイル名または絶対パスを含めたファイル名を指定します。各プラグインに指定するプラグイン定義ファイル名を次の表に示します。

表2-14　プラグインに指定する定義ファイル名（XML Extensionの削除）

XMLデータ検索プラグイン | プラグイン定義ファイル名
XMLデータ型プラグイン | _phdxml.adt
IXXMLインデクス型プラグイン | _phjxml.idx

PICファイル名

PICファイルのファイル名を指定します。コマンドを入力するときのカレントディレクトリにあるファイル名または絶対パスを含めたファイル名を指定します。各プラグインに指定するPICファイル名を次の表に示します。

表2-15　プラグインに指定するPICファイル名（XML Extensionの削除）

XMLデータ検索プラグイン | PICファイル名
XMLデータ型プラグイン | _phdxml.pic
IXXMLインデクス型プラグイン | _phjxml.pic

コマンド実行例（UNIXの場合）

pdplgrgst  -d $PDDIR/plugin/_phjxml/etc/_phjxml.idx ¥
            $PDDIR/plugin/_phjxml/etc/_phjxml.pic
pdplgrgst  -d $PDDIR/plugin/_phdxml/etc/_phdxml.adt ¥
            $PDDIR/plugin/_phdxml/etc/_phdxml.pic

上記は，2行でコマンドを入力した例を記載していますが，1行で入力する場合は，「¥」（エスケープ文字）を入力しないでください。

コマンド実行例（Windowsの場合）

pdplgrgst  -d %PDDIR%¥plugin¥_phjxml¥etc¥_phjxml.idx
            %PDDIR%¥plugin¥_phjxml¥etc¥_phjxml.pic
pdplgrgst  -d %PDDIR%¥plugin¥_phdxml¥etc¥_phdxml.adt
            %PDDIR%¥plugin¥_phdxml¥etc¥_phdxml.pic

「PDDIR」は，HiRDBインストール先フォルダパスが格納された環境変数を示します。環境変数PDDIRは「%」で囲んで「%PDDIR%」と入力してください。

上記の例では，コマンドの引数を改行して記述していますが，実際は改行しないで入力してください。

2.7.4　XML Extensionのアンセットアップ（UNIXの場合）

HiRDB運用ディレクトリからXML Extensionの各プラグインに関するファイルを削除します。XML Extensionのアンセットアップには，HiRDBの運用コマンド「pdplgset（プラグインのセットアップ）」を使用します。HiRDBの運用コマンド「pdstop（HiRDBシステム・ユニット・サーバの終了）」で正常終了させたあとに実行してください。バックアップを実行する時には，「2.7.6　HiRDBをOSから削除する場合の注意事項」を参照してください。

XML Extensionのアンセットアップは，次の形式で実行してください。

コマンドの形式

pdplgset  -d  プラグイン名

引数

-d プラグイン名

アンセットアップするプラグインの名称を指定します。各プラグインに指定するプラグイン名を次の表に示します。

表2-16　 XMLデータ検索プラグインに指定するプラグイン名（XML Extensionのアンセットアップ）

XMLデータ検索プラグイン | プラグイン名
XMLデータ型プラグイン | _phdxml
IXXMLインデクス型プラグイン | _phjxml

コマンド実行例

pdplgset  -d  _phdxml
pdplgset  -d  _phjxml

2.7.5　システム共通定義の変更

HiRDBのシステム共通定義「pdsys」に追加した，使用するプラグインを宣言する「pdplugin」オペランドでXML Extensionの各プラグインを定義している部分を削除します。このとき，このオペランドを追加しているすべてのサーバマシン上のシステム共通定義から削除してください。なお，この作業は，HiRDBの運用コマンド「pdstop（HiRDBシステム・ユニット・サーバの終了）」で正常終了させたあとに実行してください。

削除するオペランドの例を次に示します。

pdplugin  -n  _phdxml
pdplugin  -n  _phjxml

また，登録・検索同時実行を使用していた場合は，HiRDBのバックエンドサーバ定義またはシングルサーバ定義に追加した，プラグインで使用する共用メモリのサイズを宣言する「pdplgprm」オペランドで，IXXMLインデクス型プラグインで使用する共用メモリのサイズを定義している部分を削除します。このとき，このオペランドを追加しているすべてのサーバマシン上のバックエンドサーバ定義またはシングルサーバ定義から削除してください。

削除するオペランドの例を次に示します。

pdplgprm  -n  _phjxml  -s  128

2.7.6　HiRDBをOSから削除する場合の注意事項（UNIXの場合）

HiRDBの運用コマンド「pdsetup -d（HiRDBシステムのOSからの削除）」を実行してHiRDBをOSから削除する場合は，まずHiRDBの運用コマンド「pdplgset -d（プラグインのアンセットアップ）」を実行して，XML Extensionを先にアンセットアップしてください。

ただし，「pdplgset -d」を実行するとプラグイン固有ファイルが削除されるため，バックアップが必要な場合はアンインストールの前にバックアップを実行してください。バックアップの詳細については「6.3.2　バックアップ取得方法」を参照してください。

2.8　HiRDBの提供する機能の利用

XML Extensionは，HiRDBに組み込んで利用します。このため，HiRDBの次の機能を利用できます。

データベース作成ユティリティ（pdload）
HiRDBの「pdload（データベース作成ユティリティ）」を使用して，XML Extension にデータを登録できます。
pdloadを使用してXML Extension にデータを登録するときには，入力データファイルにバイナリ形式を使用します。
指定方法の詳細については，マニュアル「HiRDB　コマンドリファレンス」を参照してください。

データベース再編成ユティリティ（pdrorg）
XML Extensionでは，HiRDBの「pdrorg（データベース再編成ユティリティ）」を使用した表の再編成またはインデクスの一括作成に対応しています。
XML Extensionでは，pdrorgに対応した次の機能を提供しています。

アンロード機能

プラグインインデクス遅延一括作成機能

プラグインインデクス一括作成部分回復機能

pdrorgを使用する場合，コンストラクタ関数およびコンストラクタパラメタ逆生成関数の指定が必要になるときがあります。コンストラクタパラメタ逆生成関数の情報を次の表に示します。

表2-17　コンストラクタパラメタ逆生成関数

抽象データ型 | コンストラクタパラメタ逆生成関数（func） | 引数の型（param）
XML型 | extracts | XML

定義ファイルでの抽象データ型関数の指定例を次に示します。指定方法の詳細については，マニュアル「HiRDB　コマンドリファレンス」を参照してください。

XML型の場合

アンロード時：unld_func type=XML,func=extracts(XML)

リロード時：reld_func type=XML,func=XML(binary)

プラグイン提供関数からの一括取得処理
XML Extensionでは，HiRDBの「プラグイン提供関数からの一括取得処理」および「プラグイン提供関数からの返却結果の一括取得処理の適用範囲拡大」に対応しています。指定方法の詳細については，マニュアル「HiRDB UAP開発ガイド」「クライアント環境定義の設定内容」の環境変数「PDSQLOPTLVL」の「プラグイン提供関数からの一括取得機能」を参照してください。

3.　XML Extensionのユティリティ

この章では，XML Extensionの運用に必要なユティリティの使用方法について説明します。

＜この章の構成＞

3.1　ユティリティの使用方法

3.2　XMLデータ検索プラグインのユティリティ

3.1　ユティリティの使用方法

この節では，XML Extensionが提供するユティリティの使用方法について説明します。

＜この節の構成＞

3.1.1　XML Extensionのユティリティとは

3.1.2　ユティリティの記述形式と操作

3.1.1　XML Extensionのユティリティとは

XML Extensionでは，XML Extensionの設定，管理および運用のためにユティリティを提供しています。ユティリティは，XML Extensionを登録したマシン上で実行します。

なお，XML Extensionの運用中には，XML Extensionのユティリティ以外に，HiRDBで提供されているユティリティや運用コマンドを使用する場合があります。HiRDBで提供されているユティリティおよび運用コマンドの使用方法については，マニュアル「HiRDB　コマンドリファレンス」を参照してください。

XML Extensionが提供するXMLデータ検索プラグインのユティリティの機能一覧を，次の表に示します。なお，XMLデータ型プラグインのユティリティについては「5.　XML変換ライブラリ」を参照してください。

表3-1　XML Extensionのユティリティの機能一覧

プラグイン種別 | ユティリティコマンド名 | 機能 | ユティリティコマンドの実行者 | HiRDB稼働中での実行可否 | 実行するHiRDB運用環境
XMLデータ検索プラグイン | XMLデータ型プラグイン | phdxmlcnv | XMLデータファイルをXMLデータ検索用ファイルに変換 | HiRDB管理者 | － | 任意
phdsyndicreg | 同義語辞書の登録 | HiRDB管理者 | ○ | XML Extensionを登録したすべてのHiRDB運用環境※1
phdsyndicrm | 同義語辞書の削除 | HiRDB管理者 | ○ | XML Extensionを登録したすべてのHiRDB運用環境※1
phdsyndicbkup（UNIXの場合） | 同義語辞書のバックアップ | HiRDB管理者 | × | XML Extensionを登録したすべてのHiRDB運用環境※1
IXXMLインデクス型プラグイン | phjidxls | インデクス情報の取得 | HiRDB管理者 | ○ | SDSまたはMGR
phjincmt※2 | インデクスのインクリメンタル（最適化）ユティリティ | HiRDB管理者 | ○ | SDSまたはMGR
phjexpnd | インデクスの拡張 | HiRDB管理者 | ○ | SDSまたはMGR
phjstartidx | インデクスの作成開始 | HiRDB管理者 | ○ | SDSまたはMGR
phjdelay | インデクス分割遅延登録運用変更 | HiRDB管理者 | ○ | SDSまたはMGR
phjmodidx | インデクス情報変更 | HiRDB管理者 | ○ | SDSまたはMGR
phjcond | インデクス詰め替え | HiRDB管理者 | ○ | SDSまたはMGR

（凡例）

○：HiRDBが稼働中のときだけ実行できます。

×：HiRDBが停止しているときだけ実行できます。

－：HiRDBの稼動／停止に関係なく実行できます。

SDS：HiRDB/シングルサーバの場合に，シングルサーバがあるサーバマシンで実行することを示します。

MGR：HiRDB/パラレルサーバの場合に，システムマネジャがあるサーバマシンで実行することを示します。

注

ユティリティの実行時に指定したファイルを，ほかのユティリティまたはUAPで同時に使用しないでください。同じファイルをユティリティまたはUAPで同時に使用した場合は，処理結果が誤りとなったり，エラーが発生したりすることがあります。

注※1

XMLデータ型プラグインを登録したすべてのHiRDB運用環境に対して，同一の操作をしてください。

注※2

英文インデクスは指定できません。

3.1.2　ユティリティの記述形式と操作

ここでは，ユティリティの入力方法と記述形式について説明します。なお，ユティリティは，open状態かつHiRDBの運用コマンド「pdhold（RDエリアの閉塞）」による閉塞状態か，open状態かつ閉塞解除状態のどちらかのときに実行してください。

＜この項の構成＞

(1)　ユティリティの記述形式

(1)　ユティリティの記述形式

ユティリティは次の形式で記述します。

ユティリティコマンド名　オプション　コマンド引数

(a)　ユティリティコマンド名

ユティリティコマンド名は，実行するユティリティコマンドのファイル名です。各ユティリティコマンドを格納しているディレクトリ名については，「付録B　ディレクトリおよびファイル構成」を参照してください。

(b)　オプション

オプションで指定するのは，ユティリティコマンドの操作そのものを修飾するか，または操作の対象物を特定するために，対象物を修飾するかのどちらかです。

次の説明中に使用する$はシェルのプロンプト，cmdはユティリティコマンド名を示します。

オプションは，「－」（マイナス記号）で始まる文字列で，フラグ引数を指定しないか，または1種類のフラグ引数を指定します。
オプションの記述形式を次に示します。
－オプションフラグ
または
－オプションフラグ　フラグ引数

（凡例）

オプションフラグ：

1文字以上の英数字（英大文字と英小文字は区別されます）

フラグ引数：

オプションフラグに対する引数

フラグ引数のないオプションフラグは，一つのマイナス記号の後ろにまとめて指定できます。

（例）

次の二つは同じ意味です。

    $ cmd -a -b -c
    $ cmd -abc

フラグ引数を必要とするオプションフラグのフラグ引数は，省略できません。

フラグ引数中にあるスペースを含める場合（UNIXの場合は，シェルから入力するとき）は，フラグ引数の前後を「"」（ダブルクォーテーション）で囲まなければなりません。

（例）

1 2を引数に持つオプションfは，次のように記述します。

    $ cmd -f "1 2"

同じオプションフラグを2回以上指定すると，最後に指定したオプションの値が有効になります。

（例）

次のように入力すると，-a 2が有効となります。

    $ cmd -a 1 -a 2

オプションは，コマンド引数よりも前に指定しなければなりません。

（例）

オプションフラグaが，フラグ引数をとらない場合，次のように入力すると，fileと-bはコマンド引数とみなされます。

    $ cmd -a file -b

二つのマイナス記号「－ －」は，オプションの終わりを示します。

（例）

次のように入力すると，-bはコマンド引数とみなされます。

    $ cmd -a -- -b

マイナス記号だけのオプションは，入力できません。

（例）

次のように入力すると，「－」はコマンド引数とみなされます。

    $ cmd -

(c)　コマンド引数

コマンド引数は，ユティリティコマンドの操作で，直接対象になる値を指定します。対象物を修飾指定する場合，オプションで対象物を指定します。

コマンド引数として制御文ファイルを指定した場合，特に明記しないかぎり通常ファイルを対象とします。

3.2　XMLデータ検索プラグインのユティリティ

この節では，XML ExtensionのXMLデータ検索プラグイン（IXXMLインデクス型プラグイン）で，XMLデータを扱うために必要なユティリティの詳細について説明します。なお，phdxmlcnv（XMLデータ変換コマンド）については「5.4.6　XMLデータ変換コマンド（phdxmlcnv）」を参照してください。

＜この節の構成＞

3.2.1　phdsyndicreg（同義語辞書登録ユティリティ）

3.2.2　phdsyndicrm（同義語辞書削除ユティリティ）

3.2.3　phdsyndicbkup（同義語辞書バックアップユティリティ）（UNIXの場合）

3.2.4　phjidxls（インデクス情報の取得ユティリティ）

3.2.5　phjincmt（インデクスのインクリメンタルユティリティ）

3.2.6　phjexpnd（インデクスの拡張ユティリティ）

3.2.7　phjstartidx（インデクス作成開始ユティリティ）

3.2.8　phjdelay（インデクス分割遅延登録運用変更ユティリティ）

3.2.9　phjmodidx（インデクス情報変更ユティリティ）

3.2.10　phjcond（インデクス詰め替えユティリティ）

3.2.1　phdsyndicreg（同義語辞書登録ユティリティ）

＜この項の構成＞

(1)　機能

(2)　実行者

(3)　形式

(4)　コマンド引数

(5)　規則

(6)　注意事項

(1)　機能

同義語検索をするために必要な同義語辞書を登録します。

(2)　実行者

HiRDB管理者が実行できます。

(3)　形式

phdsyndicreg 同義語辞書名 同義語辞書テキストファイル名

(4)　コマンド引数

同義語辞書名：

辞書を登録する際に付ける名称を指定します。システム内で区別できるユニークな名称を，1～32バイトの範囲内で指定してください。

同義語辞書テキストファイル名：

同義語辞書のテキストファイルの名称を指定します。

ユティリティを実行するときのカレントディレクトリにあるファイル名または絶対パスを含めたファイル名を指定します。

(5)　規則

このユティリティは，HiRDBが稼働中のときだけ実行できます。

(6)　注意事項

XMLデータ型プラグインを登録したすべてのHiRDB運用環境に対して，同一の同義語辞書テキストファイルを使用し，同一の同義語辞書名で登録してください。

同義語辞書名に指定できる文字は，HiRDBをセットアップしたときの文字コード，記号英数字，および半角かたかなです。ただし，次の表に示す記号および英数字は指定できません。

系切り替え運用を行なう場合は，「付録E　系切り替え」を参照してください。

表3-2　同義語辞書名に指定できない記号および英数字

文字 | 文字の略称
" | ダブルクォーテーション
, | コンマ
{ | 左波括弧
} | 右波括弧
[ | 左角括弧
] | 右角括弧
( | 左丸括弧
) | 右丸括弧
¥ | 円記号（エスケープ文字）
* | アスタリスク
? | 疑問符
| | パイプ
^ | ハット
: | コロン
△ | 空白

3.2.2　phdsyndicrm（同義語辞書削除ユティリティ）

＜この項の構成＞

(1)　機能

(2)　実行者

(3)　形式

(4)　コマンド引数

(5)　規則

(6)　注意事項

(1)　機能

phdsyndicregで登録した同義語辞書を削除します。

(2)　実行者

HiRDB管理者が実行できます。

(3)　形式

phdsyndicrm 同義語辞書名

(4)　コマンド引数

同義語辞書名：

削除する同義語辞書の同義語辞書名を指定します。登録されている名称を指定してください。

(5)　規則

このユティリティは，HiRDBが稼働中のときだけ実行できます。

(6)　注意事項

XMLデータ型プラグインを登録したすべてのHiRDB運用環境から，同一の同義語辞書名の同義語辞書を削除してください。

3.2.3　phdsyndicbkup（同義語辞書バックアップユティリティ）（UNIXの場合）

＜この項の構成＞

(1)　機能

(2)　実行者

(3)　形式

(4)　コマンド引数

(5)　規則

(6)　注意事項

(1)　機能

登録した同義語辞書のバックアップを取得します。

(2)　実行者

HiRDB管理者が実行できます。

(3)　形式

phdsyndicbkup　バックアップファイル名またはデバイス名

(4)　コマンド引数

バックアップファイル名またはデバイス名：

バックアップファイル名，またはデバイス名を指定します。

(5)　規則

このユティリティは，必ずHiRDBを停止してから実行してください。

(6)　注意事項

同義語辞書をリストアする場合，次のコマンドをHiRDB管理者が実行してください。

tar xvf バックアップファイル名またはデバイス名

リストアする場合に，すでに同じ名称の同義語辞書があるときは，登録済みの同義語辞書が上書きされます。

3.2.4　phjidxls（インデクス情報の取得ユティリティ）

＜この項の構成＞

(1)　機能

(2)　実行者

(3)　形式

(4)　コマンド引数

(5)　規則

(6)　注意事項

(1)　機能

指定されたIXXMLインデクス型プラグインの次の表に示す情報を取得します。

表3-3　 phjidxls（インデクス情報の取得ユティリティ）が取得できる情報名

情報名
内容

Index Type
インデクス種別。使用するインデクス種別によって，表示内容が異なります。
インデクス作成ルール追加機能：「ALL」または「MEDIUM」

Unicode Type
Unicode種別。文字コード種別がutf-8の場合だけ表示します。表示内容は「UCS4」です。

RD Area Size
RDエリア容量

Index File Using Size
ファイル使用容量

Free Size of Index File
インデクス空き容量

Available Work Area Size
使用可能ワーク領域サイズ

Delete Character
保守情報です。

Number of Term
トライノード数

Number of Term for Increment
インクリメント対象トライノード数

Index Size for Increment
余剰インデクス容量

Specified File Size for Sub Index
保守情報です。

Sub Index File Using Size
保守情報です。

Number of Documents for Index
登録XMLデータ数

Number of Documents for Sub-Index
保守情報です。

Ratio of Condensable Documents
詰め替え可能XMLデータ率

Ratio of Condensed Index
詰め替え作業率

Number of No Condensed Index
詰め替え未実施インデクス数

Delay Status
インデクス分割遅延作成状態

Number of Documents for Unfinished-Index
インデクス未登録XMLデータ数。CREATE INDEX実行時のプラグインオプションに初期分割登録，または分割遅延登録を定義しない場合には，常に0を表示します。

With Table Scan
テーブルスキャン併用検索使用容量および指定容量

Size of Delay File（Using ratio）
インデクス分割遅延作成用ファイル容量および使用率

(2)　実行者

HiRDB管理者が実行できます。

(3)　形式

phjidxls -d インデクス識別子 -r RDエリア名 [-w 同時実行指定] [-q 世代番号]

(4)　コマンド引数

-d インデクス識別子：

インデクス情報取得対象となるインデクス識別子を指定します。必ずインデクス作成時に指定したインデクス識別子を指定してください。

UNIXの場合
インデクス識別子を「"」（ダブルクォーテーション）で囲んだ場合は，英大文字と英小文字が区別されます。「"」で囲まない場合はすべて大文字として扱われます。また，インデクス識別子にスペースが含まれる場合は，「"」で囲む必要があります。なお，sh，cshおよびkshの場合は，さらに「'」（アポストロフィ）で囲む必要があります。

Windowsの場合
インデクス識別子を「¥"」で囲んだ場合は，英大文字と英小文字が区別されます。「¥"」で囲まない場合はすべて大文字として扱われます。また，インデクス識別子にスペースが含まれる場合は，「"」で囲む必要があります。

-r RDエリア名：

指定されたインデクスが存在するRDエリア名を指定します。

UNIXの場合
RDエリア名を「"」（ダブルクォーテーション）で囲んだ場合は，英大文字と英小文字が区別されます。「"」で囲まない場合はすべて大文字として扱われます。また，RDエリア名にスペースが含まれる場合は，「"」で囲む必要があります。なお，sh，cshおよびkshの場合は，さらに「'」（アポストロフィ）で囲む必要があります。

Windowsの場合
RDエリア名を「¥"」で囲んだ場合は，英大文字と英小文字が区別されます。「¥"」で囲まない場合はすべて大文字として扱われます。また，RDエリア名にスペースが含まれる場合は，「"」で囲む必要があります。

-w 同時実行指定：

インデクス情報の取得ユティリティと検索処理を同時に実行するかどうかを指定します。

省略時は「wait」が設定されます。

wait
同時実行しません。

nowait
同時実行します。

-q 世代番号：

Staticizer Optionのインナレプリカ機能を使用する場合，処理対象とするRDエリアを0～10の世代番号で指定します。指定を省略した場合は，カレントRDエリアが仮定されます。

0
オリジナルRDエリアを対象とします。

1～10
指定した世代番号のRDエリアを対象とします。

このオペランドは，Staticizer Optionがインストールされていない場合は指定できません。

なお，インナレプリカ機能については，マニュアル「HiRDB Staticizer Option」を参照してください。

(5)　規則

このユティリティは，HiRDBが稼働中のときだけ実行できます。

(6)　注意事項

同時実行指定で「wait」を指定した場合，対象処理となるRDエリアに対して排他モード（EX）による排他制御をするので，ほかのトランザクションと同時に実行できません。同時実行指定で「nowait」を指定した場合は，サーバ側定義が同時実行である場合に有効です。サーバ側定義が同時実行となっていない場合は，同時実行にはなりません。

3.2.5　phjincmt（インデクスのインクリメンタルユティリティ）

＜この項の構成＞

(1)　機能

(2)　実行者

(3)　形式

(4)　コマンド引数

(5)　規則

(6)　注意事項

(1)　機能

IXXML型をインクリメンタル（最適化）します。インクリメンタルは，容量が大きいため検索に時間が掛かるインデクスに対して，そのインデクスのキー（n-gram）の文字数を増やし，容量の小さなインデクスを作成することで検索性能を向上させる処理です。

インクリメンタル処理は，RDエリア名単位で指定します。

(2)　実行者

HiRDB管理者が実行できます。

(3)　形式

phjincmt -d インデクス識別子 -r RDエリア名 [-l ログ取得方式] [-t インクリメンタル実行時間] [-q 世代番号]

(4)　コマンド引数

-d インデクス識別子：

インクリメンタル対象となるインデクス識別子を指定します。必ずインデクス作成時に指定したインデクス識別子を指定してください。

UNIXの場合
インデクス識別子を「"」（ダブルクォーテーション）で囲んだ場合は，英大文字と英小文字が区別されます。「"」で囲まない場合はすべて大文字として扱われます。また，インデクス識別子にスペースが含まれる場合は，「"」で囲む必要があります。なお，sh，cshおよびkshの場合は，さらに「'」（アポストロフィ）で囲む必要があります。

Windowsの場合
インデクス識別子を「¥"」で囲んだ場合は，英大文字と英小文字が区別されます。「¥"」で囲まない場合はすべて大文字として扱われます。また，インデクス識別子にスペースが含まれる場合は，「"」で囲む必要があります。

-r RDエリア名：

指定されたインデクスが存在するRDエリア名を指定します。

UNIXの場合
RDエリア名を「"」（ダブルクォーテーション）で囲んだ場合は，英大文字と英小文字が区別されます。「"」で囲まない場合はすべて大文字として扱われます。また，RDエリア名にスペースが含まれる場合は，「"」で囲む必要があります。なお，sh，cshおよびkshの場合は，さらに「'」（アポストロフィ）で囲む必要があります。

Windowsの場合
RDエリア名を「¥"」で囲んだ場合は，英大文字と英小文字が区別されます。「¥"」で囲まない場合はすべて大文字として扱われます。また，RDエリア名にスペースが含まれる場合は，「"」で囲む必要があります。

-l ログ取得方式：

インクリメンタル処理でのログ取得方式を指定します。

省略時は「p」が設定されます。

a：
ログ取得モードで実行します。
ロールバックおよびロールフォワードに必要なデータベース更新ログを取得します。インデクスのバックアップを取得する必要はありません。

p：
更新前ログ取得モードで実行します。
ロールバックに必要なデータベース更新ログを取得します。インクリメンタル処理後，バックアップを取得する必要があります。

n：
ログレスモードで実行します。
データベース更新ログを取得しません。インクリメンタル処理前およびインクリメンタル処理後にバックアップを取得する必要があります。

-t インクリメンタル実行時間：

インデクスのインクリメンタルユティリティの実行時間を分単位で指定します。

実行時間は半角数字で0～6,000の間で15分単位で指定してください。15の倍数でない値が指定された場合は，15分単位で切り上げられます。

実行時間に0を指定した場合，またはこのオペランドを省略した場合，インクリメンタル処理が完了するまで処理を続けます。

指定した実行時間でインクリメンタル処理が完了しなかった場合，ユティリティが指定時間を過ぎて終了した旨のメッセージを出力します。

-q 世代番号：

Staticizer Optionのインナレプリカ機能を使用する場合，処理対象とするRDエリアを0～10の世代番号で指定します。指定を省略した場合は，カレントRDエリアが仮定されます。

0：
オリジナルRDエリアを対象とします。

1～10：
指定した世代番号のRDエリアを対象とします。
このオペランドは，Staticizer Optionがインストールされていない場合は指定できません。

なお，インナレプリカ機能については，マニュアル「HiRDB Staticizer Option」を参照してください。

(5)　規則

このユティリティは，HiRDBが稼働中のときだけ実行できます。

(6)　注意事項

インクリメンタル実行時間を指定して，インデクスのインクリメンタルユティリティを実行した場合，インクリメント対象トライノード数，および余剰インデクス容量が0になるまでこのユティリティを実行してください。
インクリメント対象トライノード数，および余剰インデクス容量は，「phjidxls（インデクス情報の取得ユティリティ）」で確認してください。

インデクス未登録状態の文書は，インクリメンタルの対象外となります。インクリメンタルユティリティ実行後，「phjstartidx（インデクス作成開始ユティリティ）」を実行した場合，必要に応じて文字数の多いインデクスを自動的に作成します。

このユティリティ実行中は，処理対象となるRDエリアに対して排他モード（EX）による排他制御をするので，ほかのトランザクションと同時に実行できません。

インクリメンタル実行時間を指定した場合，指定時間と実際の処理時間との間に多少のずれが生じることがあります。

インクリメンタル実行時間を指定した場合，指定時間を過ぎてインクリメンタル処理を中断して終了したときは，メッセージログに「02001-I phjincmt is Time Out.」のメッセージを出力します。インクリメンタル処理を完了して終了した場合は「02003-I phjincmt command ended.」のメッセージを出力します。

このユティリティは，英文検索機能を使用することはできません。

UCS4インデクスの場合は，処理を行なわずに正常終了します。

3.2.6　phjexpnd（インデクスの拡張ユティリティ）

＜この項の構成＞

(1)　機能

(2)　実行者

(3)　形式

(4)　コマンド引数

(5)　規則

(6)　注意事項

(1)　機能

インデクスファイルをRD空きエリアに応じて作成し，インデクス全体のサイズを拡張します。

(2)　実行者

HiRDB管理者が実行できます。

(3)　形式

phjexpnd -d インデクス識別子 -r RDエリア名 [-l ログ取得方式] [-q 世代番号]

(4)　コマンド引数

-d インデクス識別子：

拡張対象のインデクス識別子を指定します。必ずインデクス作成時に指定したインデクス識別子を指定してください。

UNIXの場合
インデクス識別子を「"」（ダブルクォーテーション）で囲んだ場合は，英大文字と英小文字が区別されます。「"」で囲まない場合はすべて大文字として扱われます。また，インデクス識別子にスペースが含まれる場合は，「"」で囲む必要があります。なお，sh，cshおよびkshの場合は，さらに「'」（アポストロフィ）で囲む必要があります。

Windowsの場合
インデクス識別子を「¥"」で囲んだ場合は，英大文字と英小文字が区別されます。「¥"」で囲まない場合はすべて大文字として扱われます。また，インデクス識別子にスペースが含まれる場合は，「"」で囲む必要があります。

-r RDエリア名：

指定されたインデクスがあるRDエリア名を指定します。

UNIXの場合
RDエリア名を「"」（ダブルクォーテーション）で囲んだ場合は，英大文字と英小文字が区別されます。「"」で囲まない場合はすべて大文字として扱われます。また，RDエリア名にスペースが含まれる場合は，「"」で囲む必要があります。なお，sh，cshおよびkshの場合は，さらに「'」（アポストロフィ）で囲む必要があります。

Windowsの場合
RDエリア名を「¥"」で囲んだ場合は，英大文字と英小文字が区別されます。「¥"」で囲まない場合はすべて大文字として扱われます。また，RDエリア名にスペースが含まれる場合は，「"」で囲む必要があります。

-l ログ取得方式：

インデクス拡張処理でのログ取得方式を指定します。

省略時は「p」が設定されます。

a：
ログ取得モードで実行します。
ロールバックおよびロールフォワードに必要なデータベース更新ログを取得します。インデクスのバックアップを取得する必要はありません。

p：
更新前ログ取得モードで実行します。
ロールバックに必要なデータベース更新ログを取得します。インデクス拡張処理後，バックアップを取得する必要があります。

n：
ログレスモードで実行します。
データベース更新ログを取得しません。インデクス拡張処理前およびインデクス拡張処理後にバックアップを取得する必要があります。

-q 世代番号：

Staticizer Optionのインナレプリカ機能を使用する場合，処理対象とするRDエリアを0～10の世代番号で指定します。指定を省略した場合は，カレントRDエリアが仮定されます。

0：
オリジナルRDエリアを対象とします。

1～10：
指定した世代番号のRDエリアを対象とします。

このオペランドは，Staticizer Optionがインストールされていない場合は指定できません。

なお，インナレプリカ機能については，マニュアル「HiRDB Staticizer Option」を参照してください。

(5)　規則

このユティリティは，HiRDBが稼働中のときだけ実行できます。

(6)　注意事項

このユティリティ実行中は，処理対象となるRDエリアに対して排他モード（EX）による排他制御をするので，ほかのトランザクションと同時に実行できません。

3.2.7　phjstartidx（インデクス作成開始ユティリティ）

＜この項の構成＞

(1)　機能

(2)　実行者

(3)　形式

(4)　コマンド引数

(5)　規則

(6)　注意事項

(1)　機能

インデクス作成方法に初期分割登録，または分割遅延登録を指定して作成したインデクスに対して，インデクス未登録状態のXMLデータをインデクスに登録します。

(2)　実行者

HiRDB管理者が実行できます。

(3)　形式

phjstartidx -d インデクス識別子 [-t インデクス作成実行時間] [-l ログ取得方式] [-c 登録件数] [-w 同時実行指定] [-q 世代番号]

(4)　コマンド引数

-d インデクス識別子：

インデクス登録対象となるインデクス識別子を指定します。必ずインデクス作成時に指定したインデクス識別子を指定してください。

UNIXの場合
インデクス識別子を「"」（ダブルクォーテーション）で囲んだ場合は，英大文字と英小文字が区別されます。「"」で囲まない場合はすべて大文字として扱われます。また，インデクス識別子にスペースが含まれる場合は，「"」で囲む必要があります。なお，sh，cshおよびkshの場合は，さらに「'」（アポストロフィ）で囲む必要があります。

Windowsの場合
インデクス識別子を「¥"」で囲んだ場合は，英大文字と英小文字が区別されます。「¥"」で囲まない場合はすべて大文字として扱われます。また，インデクス識別子にスペースが含まれる場合は，「"」で囲む必要があります。

-t インデクス作成実行時間：

インデクス作成開始ユティリティの実行時間を分単位で指定します。

指定範囲は，0～6,000となります。0を指定した場合，またはこのオペランドの指定を省略した場合は，時間では制限されません。指定を省略した場合は，実行の可否を問い合わせるメッセージを表示します。

なお，分割遅延登録・更新系SQL同時実行機能を利用する場合，このオプションは指定できません。

-l ログ取得方式：

インデクス登録処理でのログ取得方式を指定します。

省略時は「p」が設定されます。分割遅延登録・更新系SQL同時実行機能を利用する場合は，「a」または「p」を指定してください。

a：
ログ取得モードで実行します。
ロールバックおよびロールフォワードに必要なデータベース更新ログを取得します。
インデクスのバックアップを取得する必要はありません。

p：
更新前ログ取得モードで実行します。
ロールバックに必要なデータベース更新ログを取得します。
インデクス登録処理後，バックアップを取得する必要があります。

n：
ログレスモードで実行します。
データベース更新ログを取得しません。
インデクス登録処理前およびインデクス登録処理後にバックアップを取得する必要があります。

-c 登録件数：

インデクス作成をする件数を，1～2,147,483,646の範囲で指定します。

指定を省略した場合は，登録件数では制限されません。

-w 同時実行指定：

このユティリティと検索処理を同時に実行するかどうか，またはこのユティリティと遅延登録を同時に実行するかどうかを指定します。

省略時は「wait」が設定されます。

wait
同時実行しません。

nowait
登録・検索を同時実行します。

nowait_with_update
登録・検索同時実行に加えて，分割遅延登録・更新系SQLを同時実行します。

-q 世代番号：

Staticizer Optionのインナレプリカ機能を使用する場合，処理対象とするRDエリアを0～10の世代番号で指定します。指定を省略した場合は，カレントRDエリアが仮定されます。

0：
オリジナルRDエリアを対象とします。

1～10：
指定した世代番号のRDエリアを対象とします。
このオペランドは，Staticizer Optionがインストールされていない場合は指定できません。
なお，インナレプリカ機能については，マニュアル「HiRDB Staticizer Option」を参照してください。

(5)　規則

このユティリティは，HiRDBが稼働中のときだけ実行できます。

(6)　注意事項

インデクス未登録状態のXMLデータが存在しないインデクスに対して，このユティリティを実行しても，無効となり正常終了します。

インデクス作成実行時間を指定してインデクス作成開始ユティリティを実行した場合，インデクス未登録状態のXMLデータ数が0になるまでこのユティリティを実行してください。
インデクス未登録XMLデータ数は，「phjidxls（インデクス情報の取得ユティリティ）」で確認してください。

-tオプション，-cオプションの指定を省略した場合は，実行の可否を確認するメッセージを表示します。

インデクス作成開始ユティリティは，データの整合性を確保するため，インデクス作成実行時間に指定した時間が経過しても，終了しない場合があります。この場合は，データの整合性を確保できた時点で終了します。インデクス作成実行時間が経過してからユティリティが終了するまでの時間は，IXXMLインデクス型プラグインの環境定義ファイルに指定した一括登録時最大メモリ所要量とディスク性能に依存します。

インデクス作成実行時間を指定した場合，指定時間を過ぎてインデクス作成処理を中断して終了した場合は，メッセージログに「02001-I phjstartidx is Time Out.」のメッセージを出力します。インデクス作成処理を完了して終了した場合は，「02003-I phjstartidx command ended.」のメッセージを出力します。

-tオプションのインデクス実行時間と-cオプションの登録件数を指定した場合，どちらかの条件が成立した時点で登録処理を終了します。

同時実行指定で「wait」を指定した場合，対象処理となるRDエリアに対して排他モード（EX）による排他制御をするので，ほかのトランザクションと同時に実行できません。同時実行指定で「nowait」を指定した場合は，サーバ側定義が同時実行である場合に有効です。サーバ側定義が同時実行となっていない場合は，同時実行とはなりません。

分割した表のインデクスに対し，-cオプションを指定してインデクスを作成する場合，指定したXMLデータ数のインデクスを分割した表ごとに作成します。

インデクス作成開始ユティリティは，登録要求件数分の行に対して参照できる共用排他を実行します。このため，分割遅延登録・更新系SQL同時実行を指定してこのユティリティを実行する場合は，排他ができるように排他資源を確保してください。

-wオプションにnowait_with_updateを指定し，さらに-tオプションを指定した場合，メッセージログに「62014-E Option argument invalid. option=xx」のメッセージを出力します。

使用しているHiRDBのバージョンが，この製品が前提としているHiRDBのバージョンと不一致の場合は，エラーメッセージ「KFPL28000-E Internal error occurred」が出力され，異常終了します。

3.2.8　phjdelay（インデクス分割遅延登録運用変更ユティリティ）

＜この項の構成＞

(1)　機能

(2)　実行者

(3)　形式

(4)　コマンド引数

(5)　規則

(6)　注意事項

(1)　機能

インデクス作成方法に分割遅延登録を指定して作成したインデクスに対して，分割遅延登録運用開始および終了を指定します。

(2)　実行者

HiRDB管理者が実行できます。

(3)　形式

phjdelay -d インデクス識別子 -m { on|off} [-l ログ取得方式] [-f] [-q 世代番号]

(4)　コマンド引数

-ｄ インデクス識別子：

分割遅延登録運用方法を変更するインデクス識別子を指定します。必ずインデクス作成時に指定したインデクス識別子を指定してください。

UNIXの場合
インデクス識別子を「"」（ダブルクォーテーション）で囲んだ場合は，英大文字と英小文字が区別されます。「"」で囲まない場合はすべて大文字として扱われます。また，インデクス識別子にスペースが含まれる場合は，「"」で囲む必要があります。なお，sh，cshおよびkshの場合は，さらに「'」（アポストロフィ）で囲む必要があります。

Windowsの場合
インデクス識別子を「¥"」で囲んだ場合は，英大文字と英小文字が区別されます。「¥"」で囲まない場合はすべて大文字として扱われます。また，インデクス識別子にスペースが含まれる場合は，「"」で囲む必要があります。

-m：

on
インデクス分割遅延登録運用を開始します。

off
インデクス分割遅延登録運用を終了します。

-l ログ取得方式：

分割遅延登録運用方法変更処理でのログ取得方式を指定します。

省略時は「p」が設定されます。

a：
ログ取得モードで実行します。
ロールバックおよびロールフォワードに必要なデータベース更新ログを取得します。インデクスのバックアップを取得する必要はありません。

p：
更新前ログ取得モードで実行します。
ロールバックに必要なデータベース更新ログを取得します。分割遅延登録運用方法変更処理後，バックアップを取得する必要があります。

n：
ログレスモードで実行します。
データベース更新ログを取得しません。分割遅延登録運用方法変更処理前および分割遅延登録運用方法変更処理後にバックアップを取得する必要があります。

-f：

応答メッセージを出力しないで実行する場合に指定します。

-q 世代番号：

Staticizer Optionのインナレプリカ機能を使用する場合，処理対象とするRDエリアを0～10の世代番号で指定します。指定を省略した場合は，カレントRDエリアが仮定されます。

0：
オリジナルRDエリアを対象とします。

1～10：
指定した世代番号のRDエリアを対象とします。
このオペランドは，Staticizer Optionがインストールされていない場合は指定できません。
なお，インナレプリカ機能については，マニュアル「HiRDB Staticizer Option」を参照してください。

(5)　規則

このユティリティは，HiRDBが稼働中のときだけ実行できます。

(6)　注意事項

このユティリティ実行中は，処理対象となるRDエリアに対して排他モード（EX）による排他制御をするので，ほかのトランザクションと同時に実行できません。

分割遅延登録運用の終了が指定された場合，すべての未反映XMLデータを登録します。その際，時間／件数による中断はできないので，分割遅延登録運用の終了以前に「phjstartidx（インデクスの作成開始ユティリティ）」を実行して登録処理を完了させておいてください。また，分割遅延登録運用の終了実行時には，応答のメッセージを出力します。-fオプションが指定された場合は，応答のメッセージを出力しません。

分割遅延登録用でないインデクスに対して，このユティリティを実行しても無効となります（エラーになりません。正常終了します）。

3.2.9　phjmodidx（インデクス情報変更ユティリティ）

＜この項の構成＞

(1)　機能

(2)　実行者

(3)　形式

(4)　コマンド引数

(5)　規則

(6)　注意事項

(1)　機能

作成済みのインデクスに対して定義を変更します。インデクス分割遅延作成ができるインデクスへ移行できます。また，インデクス分割遅延作成用ファイルサイズを拡張できます。

(2)　実行者

HiRDB管理者が実行できます。

(3)　形式

phjmodidx -d インデクス識別子 -v 変更項目 [-l ログ取得方式] [-q 世代番号]

(4)　コマンド引数

-ｄ インデクス識別子：

インデクス情報変更の対象となる，インデクス識別子を指定します。必ずインデクス作成時に指定したインデクス識別子を指定してください。

UNIXの場合
インデクス識別子を「"」（ダブルクォーテーション）で囲んだ場合は，英大文字と英小文字が区別されます。「"」で囲まない場合はすべて大文字として扱われます。また，インデクス識別子にスペースが含まれる場合は，「"」で囲む必要があります。なお，sh，cshおよびkshの場合は，さらに「'」（アポストロフィ）で囲む必要があります。

Windowsの場合
インデクス識別子を「¥"」で囲んだ場合は，英大文字と英小文字が区別されます。「¥"」で囲まない場合はすべて大文字として扱われます。また，インデクス識別子にスペースが含まれる場合は，「"」で囲む必要があります。

-v 変更項目：

変更するインデクス定義項目を，次の形式で指定します。

DELAY_SIZE=インデクス分割遅延登録用領域サイズ
サイズは，2,608～129,584キロバイトの範囲で指定してください。
新規に移行する際には，指定されたサイズでファイルを作成します。すでにファイルがある場合は，指定されたサイズまでファイルを拡張します。最小拡張単位は2,048キロバイトです。端数は切り捨てられます。また，拡張回数の上限は62回です。

-l ログ取得方式：

インデクス情報変更処理でのログ取得方式を指定します。

省略時は「p」が設定されます。

a：
ログ取得モードで実行します。
ロールバックおよびロールフォワードに必要なデータベース更新ログを取得します。インデクスのバックアップを取得する必要はありません。

p：
更新前ログ取得モードで実行します。
ロールバックに必要なデータベース更新ログを取得します。インデクス情報変更処理後，バックアップを取得する必要があります。

n：
ログレスモードで実行します。
データベース更新ログを取得しません。インデクス情報変更処理前およびインデクス情報変更処理後にバックアップを取得する必要があります。

-q 世代番号：

Staticizer Optionのインナレプリカ機能を使用する場合，処理対象とするRDエリアを0～10の世代番号で指定します。指定を省略した場合は，カレントRDエリアが仮定されます。

0
オリジナルRDエリアを対象とします。

1～10
指定した世代番号のRDエリアを対象とします。
このオペランドは，Staticizer Optionがインストールされていない場合は指定できません。なお，インナレプリカ機能については，マニュアル「HiRDB Staticizer Option」を参照してください。

(5)　規則

このユティリティは，HiRDBが稼働中のときだけ実行できます。

(6)　注意事項

このユティリティ実行中は，処理対象となるRDエリアに対して排他モード（EX）による排他制御をするので，ほかのトランザクションと同時に実行できません。

このユティリティは，インデクス分割遅延作成用ファイルを作成または拡張します。そのまま実行すると，RDエリア不足が発生することがあります。その場合，作成または拡張するサイズ分のRDエリアを，あらかじめ追加することをお勧めします。

このユティリティで分割遅延作成できるインデクスへ移行しても，分割遅延登録運用の開始／終了状態は変更されません。運用方法を変更する場合は，別途「phjdelay（インデクス分割遅延登録運用変更ユティリティ）」を実行する必要があります。また現在の運用方法は「phjidxls（インデクス情報の取得ユティリティ）」の「Delay Status（インデクス分割遅延作成状態）」で確認できます。

分割遅延登録・更新系SQL同時実行を使用している場合は，実行できません。

インデクスの再初期化を行った場合，このユティリティでの移行情報は無効になり，はじめにインデクスを定義した状態に戻ります。

3.2.10　phjcond（インデクス詰め替えユティリティ）

＜この項の構成＞

(1)　機能

(2)　実行者

(3)　形式

(4)　コマンド引数

(5)　規則

(6)　注意事項

(1)　機能

不要なインデクスを削除します。

(2)　実行者

HiRDB管理者が実行できます。

(3)　形式

phjcond -d インデクス識別子 -r RDエリア名 [-l ログ取得方式] [-t 詰め替え時間] [-q 世代番号]

(4)　コマンド引数

-ｄ インデクス識別子：

詰め替え対象となるインデクス識別子を指定します。

必ずインデクス作成時に指定したインデクス識別子を指定してください。

UNIXの場合
インデクス識別子を「"」（ダブルクォーテーション）で囲んだ場合は，英大文字と英小文字が区別されます。「"」で囲まない場合はすべて大文字として扱われます。また，インデクス識別子にスペースが含まれる場合は，「"」で囲む必要があります。なお，sh，cshおよびkshの場合は，さらに「'」（アポストロフィ）で囲む必要があります。

Windowsの場合
インデクス識別子を「¥"」で囲んだ場合は，英大文字と英小文字が区別されます。「¥"」で囲まない場合はすべて大文字として扱われます。また，インデクス識別子にスペースが含まれる場合は，「"」で囲む必要があります。

-r RDエリア名：

指定されたインデクスがあるRDエリア名を指定します。

UNIXの場合
RDエリア名を「"」（ダブルクォーテーション）で囲んだ場合は，英大文字と英小文字が区別されます。「"」で囲まない場合はすべて大文字として扱われます。また，RDエリア名にスペースが含まれる場合は，「"」で囲む必要があります。なお，sh，cshおよびkshの場合は，さらに「'」（アポストロフィ）で囲む必要があります。

Windowsの場合
RDエリア名を「¥"」で囲んだ場合は，英大文字と英小文字が区別されます。「¥"」で囲まない場合はすべて大文字として扱われます。また，RDエリア名にスペースが含まれる場合は，「"」で囲む必要があります。

-l ログ取得方式：

インデクス詰め替え処理でのログ取得方式を指定します。

省略時は「p」が設定されます。

a：
ログ取得モードで実行します。
ロールバックおよびロールフォワードに必要なデータベース更新ログを取得します。インデクスのバックアップを取得する必要はありません。

p：
更新前ログ取得モードで実行します。
ロールバックに必要なデータベース更新ログを取得します。インデクス詰め替え処理後，バックアップを取得する必要があります。

n：
ログレスモードで実行します。
データベース更新ログを取得しません。インデクス詰め替え処理前およびインデクス詰め替え処理後にバックアップを取得する必要があります。

-ｔ 詰め替え時間：

インデクス詰め替えユティリティの実行時間を分単位で指定します。

実行時間は半角数字で0～6,000の間で15分単位で指定してください。15の倍数でない値が指定された場合は，15分単位で切り上げられます。

実行時間に0を指定した場合，またはこのオペランドを省略した場合，詰め替え処理が完了するまで処理を続けます。

指定した実行時間で詰め替え処理が完了しなかった場合，ユティリティが指定時間を過ぎて終了した旨のメッセージを出力します。

-q 世代番号：

Staticizer Optionのインナレプリカ機能を使用する場合，処理対象とするRDエリアを0～10の世代番号で指定します。指定を省略した場合は，カレントRDエリアが仮定されます。

0
オリジナルRDエリアを対象とします。

1～10
指定した世代番号のRDエリアを対象とします。
このオペランドは，Staticizer Optionがインストールされていない場合は指定できません。
なお，インナレプリカ機能については，マニュアル「HiRDB Staticizer Option」を参照してください。

(5)　規則

このユティリティは，HiRDBが稼働中のときだけ実行できます。

(6)　注意事項

詰め替え処理は，1回の処理ですべてのインデクスを処理できないことがあります。このため，詰め替え実施後，「phjidxls（インデクス情報の取得ユティリティ）」で未実施インデクス数（Number of No Condensed Index）を確認してください。この値が大きいときは，インデクス空き容量に注意して，再度詰め替えを実行してください。

このユティリティは，インデクス空き容量がある状態（推奨10%以上）で実行する必要があります。空きのない状態でユティリティを実行したとき，または詰め替え未実施インデクス数（Number of No Condensed Index）が減らない場合は，新たにRDエリアを追加して「phjexpnd（インデクスの拡張ユティリティ）」を実行し，空き容量がある状態で実行してください。空き容量は，「phjidxls（インデクス情報の取得ユティリティ）」のFree Size of Index Fileで確認してください。

詰め替え実行時間を指定した場合，指定時間と実際の処理時間との間に多少のずれが生じることがあります。

XMLデータを削除すると，詰め替え可能XMLデータ率は増加します。このため，詰め替え中断時にXMLデータを削除すると，詰め替え処理完了後でも詰め替え可能XMLデータ率は0になりません。

このユティリティ実行中は，処理対象となるRDエリアに対して排他モード（EX）による排他制御をするので，ほかのトランザクションと同時に実行できません。

詰め替えを実行する契機の指標として，「phjidxls（インデクス情報の取得ユティリティ）」の「Ratio of Condensable Documents（詰め替え可能XMLデータ率）」が，50％以上を目安としてください。

「phjidxls（インデクス情報の取得ユティリティ）」の「Ratio of Condensed Index（詰め替え作業率）」は，詰め替え処理が制限時間で終了したときの詰め替え作業進ちょく率を表します。

このユティリティを実行する際に，グローバルバッファを指定すると，実行性能が向上します。

詰め替え時間を指定した場合，指定時間を過ぎて詰め替え処理を中断したときは，メッセージログに「02001-I phjcond is Time Out.」のメッセージが出力されます。
詰め替え処理を完了して終了した場合は，「02003-I phjcond command ended」のメッセージが出力されます。

4.　XMLデータの操作

この章では，文書または文字列データを操作するためにXML Extensionが提供している，抽象データ型関数の使用方法および文法について説明します。

＜この章の構成＞

4.1　抽象データ型関数の操作

4.2　抽象データ型関数の文法

4.3　全文検索条件式の文法

4.1　抽象データ型関数の操作

この節では，XML Extensionが提供する抽象データ型関数の操作について説明します。

＜この節の構成＞

4.1.1　抽象データ型関数を使用したXMLデータの操作

4.1.2　 XQueryを使用した全文検索機能の利用

4.1.1　抽象データ型関数を使用したXMLデータの操作

XML Extensionの抽象データ型関数とは，XML Extensionが提供する全文検索機能を利用するためのインタフェース関数です。

ここでは，XML Extensionの提供する抽象データ型関数の操作について説明します。

＜この項の構成＞

(1)　抽象データ型関数の種類

(2)　XML Extensionが提供する抽象データ型関数の一覧

(1)　抽象データ型関数の種類

XML型のデータ（文書）に対するインタフェースとして，次の2種類の抽象データ型関数を提供しています。

データ出力用の抽象データ型関数

全文検索用の抽象データ型関数

抽象データ型関数をSQL文中に記述することで，XML型のデータ（文書）にアクセスできます。SQLの記述形式については，マニュアル「HiRDB　SQLリファレンス」を参照してください。

(2)　XML Extensionが提供する抽象データ型関数の一覧

XML Extensionが提供する抽象データ型関数の一覧を次の表に示します。

表4-1　XML Extensionの抽象データ型関数一覧

用途
関数名
機能

データ
出力用
extracts
登録した文書データを出力します。出力する形式には，次の2種類あります。

ESIS-B出力

XML出力

全文検索用
contains
全文検索条件式に合致する文書データを検索します。全文検索条件式には，次の6種類あります。

単純文字列指定

異表記展開指定

同義語展開指定

近傍条件指定

AND/OR論理条件

構造名指定による検索範囲の指定

contains_with_score
全文検索条件式に合致する文書を検索します。

score
contains_with_score関数で検索した文書のスコア値を取得します。検索条件に合致した文書ほどスコア値が高くなります。

4.1.2　 XQueryを使用した全文検索機能の利用

XQueryをSQL文中に記述することで，全文検索機能を利用できます。SQL，およびXQueryの記述形式については，マニュアル「HiRDB　SQLリファレンス」を参照してください。

全文検索機能を利用できるXQuery述語を次に示します。

表4-2　全文検索機能を利用できるXQuery述語

述語 | 機能
fn:contains | 第二引数に文字列を指定して検索します。
fn:starts-with | 第二引数に指定した文字列が構造の先頭に一致するか検索します。
fn:ends-with | 第二引数に指定した文字列が構造の末尾に一致するか検索します。
文字列（xs:string型）同士の完全一致（=） | 指定した文字列が構造の先頭と末尾に一致するか検索します。
hi-fn:containts | 第二引数にテキスト検索条件を指定して検索します。※

※　テキスト検索条件の記述形式については「4.3.4　テキスト検索条件の指定」を参照してください。

4.2　抽象データ型関数の文法

この節では，XML Extensionの抽象データ型関数の詳細について説明します。なお，全文検索用関数で指定する全文検索条件式の文法の詳細については，「4.3　全文検索条件式の文法」を参照してください。

＜この節の構成＞

4.2.1　contains

4.2.2　contains_with_score

4.2.3　score

4.2.4　extracts

4.2.1　contains

＜この項の構成＞

(1)　機能

(2)　書式

(3)　入力

(4)　戻り値

(5)　詳細

(6)　SQL文の例

(7)　注意事項

(1)　機能

全文検索条件式に基づき検索します。

(2)　書式

contains（列指定，全文検索条件式）

(3)　入力

列指定

全文検索条件式（varchar）（最大32,000バイト）

(4)　戻り値

常にTRUE

(5)　詳細

列指定には，全文検索をするXML型の列名を指定します。

全文検索条件式には，検索する条件として検索対象の文書構造名，検索タームなどを指定した条件式（varchar）を指定します。

contains関数はインデクスと協調して動作する検索述語であり，contains関数使用時にIXXMLインデクス型プラグインが使用できない状態の場合には，エラーとなります。IXXMLインデクス型プラグイン専用関数の実行方法に関する規則については，マニュアル「HiRDB　UAP開発ガイド」を参照してください。

(6)　SQL文の例

表「reports」のXML型の列「doc」の「概要」部分に文字列「COMPUTER」を含む文書の件数を調べる（文書の最上位構造は「文章」）。

SELECT  COUNT(*)  FROM reports
 WHERE contains(doc, '文章[概要{"COMPUTER"}]' ) IS TRUE

(7)　注意事項

全文検索条件式には，複数の条件を「AND」，または「OR」で指定できます。

4.2.2　contains_with_score

＜この項の構成＞

(1)　機能

(2)　書式

(3)　入力

(4)　戻り値

(5)　詳細

(6)　SQL文の例

(7)　注意事項

(1)　機能

全文検索条件式に基づき検索します。また，同時にスコア値の計算をします。

(2)　書式

contains_with_score（列指定，全文検索条件式）

(3)　入力

列指定

全文検索条件式（varchar）（最大32,000バイト）

(4)　戻り値

常にTRUE

(5)　詳細

列指定には全文検索をするXML型の列名を指定します。

全文検索条件式には，検索する条件として検索対象の文書構造名，検索タームなどを指定した条件式（varchar）を指定します。

contains_with_score関数は，インデクスと協調して動作する検索述語です。contains_with_score関数使用時にIXXMLインデクス型プラグインが使用できない状態の場合には，エラーとなります。

contains_with_score関数はスコア値を算出し，score関数に値を受け渡す関数です（受け渡し値送信関数）。スコア値は，score関数で受け取ります（受け渡し値受信関数）。インデクス型プラグイン専用関数および受け渡し値送受信関数の実行方法に関する規則については，マニュアル「HiRDB　UAP開発ガイド」を参照してください。

(6)　SQL文の例

表「reports」のXML型の列「doc」の「概要」部分に文字列「COMPUTER」を含む文書をスコア値順にソートし，スコア値，タイトルを格納する一覧表を作成する（文書の最上位構造は「文章」）。

SELECT score(doc), title FROM reports
 WHERE contains_with_score(doc, '文章[概要{"COMPUTER"}]' ) IS TRUE
                           ORDER BY 1 DESC

(7)　注意事項

全文検索条件式には，複数の条件を「AND」，「OR」で指定できます。

4.2.3　score

＜この項の構成＞

(1)　機能

(2)　書式

(3)　入力

(4)　戻り値

(5)　詳細

(6)　スコア値

(1)　機能

スコア値（contains_with_score関数の結果として得られるスコア値）を返却します。

(2)　書式

score（列指定）

(3)　入力

列指定

(4)　戻り値

スコア値（INTEGER）

(5)　詳細

contains_with_score関数と一緒に使用します。

列指定はcontains_with_score関数で検索する対象と同じ列名を指定します。score関数を使用するSELECTでは，必ずWHERE探索条件にscore関数と同じ列名を指定したcontains_with_score関数を使用します。検索結果をスコア順にソートして，スコアの得点の高いものから取り出す場合には，ORDER BYを使用してください。

score関数は受け渡し値受信関数であり，contains_with_score関数から値を受け取ります。受け渡し値受信関数の実行方法に関する規則については，マニュアル「HiRDB　UAP開発ガイド」を参照してください。

(6)　スコア値

1文書のスコア値は，「検索タームの文書内での出現数 × 検索タームの重み × 構造の重み」で算出されます。ただし，検索条件式に論理検索や近傍検索を使用している場合は，次のようになります。

論理検索の場合
論理積（AND）のときは，各スコアの最小値を取ります。
論理和（OR）のときは，各スコアの最大値を取ります。
論理否定（NOT）のときは，各スコア値はナル値となります。

近傍検索の場合
近傍検索のスコアは，ヒットした検索ターム間の距離で算出します。
検索ターム間の距離が近いほどスコアが高くなります。

表4-3　スコアの算出方法

検索条件
スコアの算出方法
算出例

論理積
（AND条件）※¹
論理演算の対象を比較して，値の少ない方をスコアとする
「AおよびBが含まれる文書」を検索した結果，文書内での出現数がA>Bだった場合，Bの出現数を基にスコアが付けられる※²

論理和
（OR条件）※¹
論理演算の対象を比較して，値の多い方をスコアとする
「AまたはBが含まれる文書」を検索した結果，文書内での出現数がA>Bだった場合，Aの出現数を基にスコアが付けられる※²

近傍条件
=
指定した距離とヒットした距離が等しい場合は100が与えられる
「AB間の距離が10文字ちょうどの文書」を検索した結果，文書内でのAとBの距離が10であれば100が与えられる

<=
ヒットした距離が0に近いほど100に近づく。指定した距離と同じ場合は1が与えられる
「AB間の距離が10文字以下の文書」を検索した結果，文書内でのAとBの距離が0ならば100が与えられる。10以下の値は，10に近いほど低い値が与えられる

>=
指定した距離とヒットした距離が等しい場合は100が与えられる。遠ざかるほど低くなる
「AB間の距離が10文字以上の文書」を検索した結果，文書内でのAとBの距離が10ならば100が与えられる。10を超える値は，10から遠くなるほど低いスコアが与えられる

注※1

検索ターム同士および検索条件式同士の論理演算が含まれます。

注※2

ここでの算出方法は，検索条件式の構造に重みが付けられていないことが前提です。構造に重みが付けられている場合は，「距離から算出したスコア×構造の重み」で算出されます。なお，近傍検索では検索タームに付けられた重みは無視されます。

4.2.4　extracts

登録した文書を出力します。出力形式には次に示す種類があります。

ESIS-B出力

XML出力

どの出力形式で出力するかは，extracts関数の引数で区別されます。

また，extracts関数を使用したSQLの前処理後（PREPARE文の発行後），DESCRIBE〔OUTPUT〕文の実行時にSQL記述領域に設定されるデータの長さは2ギガバイト（2,147,483,647バイト）です。

次に，各出力形式について説明します。

＜この項の構成＞

(1)　 ESIS-B出力

(2)　XML出力

(1)　 ESIS-B出力

(a)　機能

登録した文書をESIS-Bデータ形式で出力します。

(b)　書式

extracts（列指定，ドキュメントタイプ）

(c)　入力

列指定

ドキュメントタイプ　'ESIS-B'

(d)　戻り値

テキストデータ（BINARY）

(e)　詳細

列指定にはXML型の列名を指定します。

ドキュメントタイプには「ESIS-B」を指定してください。

(f)　SQL文の例

表「reports」のXML型の列「doc」の「概要」部分に文字列「COMPUTER」を含む文書をESIS-Bデータ形式で出力する。

SELECT extracts(doc,'ESIS-B')
      FROM reports
      WHERE contains(doc, '文章[概要{"COMPUTER"}]') IS TRUE

(2)　XML出力

(a)　機能

登録した文書をXMLデータ形式で出力します。

(b)　書式

extracts（列指定，ドキュメントタイプ）

(c)　入力

列指定

ドキュメントタイプ　'XML'

(d)　戻り値

テキストデータ（BINARY）

(e)　詳細

列指定には，検索するXML型の列名を指定します。

ドキュメントタイプには「XML」を指定してください。

(f)　SQL文の例

表「reports」のXML型の列「doc」の「概要」部分に文字列「COMPUTER」を含む文書をXML形式で出力する。

SELECT extracts(doc,'XML')
      FROM reports
      WHERE contains(doc, '文章[概要{"COMPUTER"}]') IS TRUE

4.3　全文検索条件式の文法

この節では，XML型のデータ（文書）に対して使用する全文検索条件式の文法について説明します。

＜この節の構成＞

4.3.1　構造名を指定した検索条件のAND/OR論理条件

4.3.2　構造名の指定

4.3.3　構造名のワイルドカード指定

4.3.4　テキスト検索条件の指定

4.3.5　単純文字列指定

4.3.6　異表記展開指定

4.3.7　同義語展開指定

4.3.8　近傍条件指定

4.3.9　重み

4.3.10　属性値指定

4.3.11　特定構造検索指定

4.3.12　特殊文字の指定

4.3.13　全文検索条件式の指定例

4.3.1　構造名を指定した検索条件のAND/OR論理条件

構造名を指定した検索条件式を構造検索パターンといいます。全文検索条件には，この構造検索パターンのAND/OR論理条件を指定できます。

全文検索条件式の形式を次の図に示します。

図4-1　全文検索条件式の形式

注意事項

AND/OR条件，またはNOT条件を指定する場合，次の優先順位に従って演算します（左側の方が優先順位が高い）。
括弧 ＞ NOT ＞ AND ＞ OR
全文検索条件にAND条件とOR条件を同じレベルで記述し，かつOR条件を優先したい場合は，OR条件の範囲を括弧で囲んでください。

指定例

構造名「文章」の下の「概要」に文字列「NETWORK」を含む。
文章[概要{"NETWORK"}]

構造名「文章」の下の「概要」に文字列「NETWORK」を含む文書以外。
NOT(文章[概要{"NETWORK"}])

構造名「文章」の下の「概要」に文字列「COMPUTER」の同義語と「NETWORK」を含む（同義語辞書は「USR01」）。
文章[概要{SYNONYM(USR01,"COMPUTER") AND "NETWORK"}]

構造名「文章」の下の「概要」に文字列「COMPUTER」の同義語を含み，かつ，構造名「文章」の下の「本文」に文字列「NETWORK」または構造名「文章」の下の「コラム」に文字列「DOCUMENT」を含む（同義語辞書は「USR01」，OR条件を優先）。
文章[概要{SYNONYM(USR01,"COMPUTER")}] AND (文章[本文{"NETWORK"}] OR 文章[コラム{"DOCUMENT"}])

4.3.2　構造名の指定

構造検索パターンでは，検索対象とする文書要素をその構造名で指定します。また，構造指定のあとに，その文書要素内での検索条件を指定します。

構造名指定は，検索対象の構造名を文字列で指定します。

波括弧で囲まれたテキスト検索条件は，指定構造内での全文検索条件を指定する条件式です。

角括弧で構造検索パターンを囲むことで，上位の構造名指定と，指定した上位構造指定以下の構造名をさらに指定した複雑な構造指定ができます。これによって，例えば，要旨の下位構造の目的の部分で，テキスト検索条件を満たす文書を探せます。

属性を持つ構造の属性値を検索条件とする場合は，構造名指定の後ろに属性値の条件を指定します。

構造検索パターンの形式を次の図に示します。

図4-2　構造検索パターンの形式

注意事項

構造名指定は，最上位構造名から順に指定してください。最上位構造名だけを指定した場合，または構造名指定を省略した場合には，文書に含まれるすべての構造を対象に検索します。

次のように指定した構造名が未登録の場合はヒットしません。
・指定した構造を持った文書が登録されていない場合
・指定した構造名が間違っている場合

構造名に半角スペース（0x20）は指定できません。

指定例

構造名「文章」の下の「概要」の下の「目的」に文字列「NETWORK」を含む。
文章[概要[目的{"NETWORK"}]]

4.3.3　構造名のワイルドカード指定

構造名は，次の図に示す形式でワイルドカードが指定できます。

図4-3　構造名指定の形式

「*」は，0個以上の任意の構造階層を示します。

「？」は，1個の任意の構造階層を示します。

また，構造名指定時に，繰り返して出現する構造名の番号を指定できます。「構造名 = 」のあとに，繰り返し構造の順番を指定します。指定方法は次のとおりです。

数1

数1に示された順番を検索対象とします（順番の単独指定）。

数1-

数1以降の順番を検索対象とします（順番の開始指定）。

-数1

数1までの順番を検索対象とします（順番の最終指定）。

数1-数2

数1～数2の順番を検索対象とします（順番の範囲指定）。

数1，数2，……

指定された数（数1，数2）の順番を検索対象とします（任意の順番指定）。

注意事項

「*」（アスタリスク），「?」（疑問符），「=」（イコール），「-」（ハイフン），「,」（コンマ）および繰り返し構造順番指定の数字は，ASCIIコードで指定します。

順番指定の範囲は1～2,147,483,647で指定します。
順番指定での範囲指定「-」の値は，数1-数2の場合，数1＜数2の関係で指定します。数1が数2より大きい値の場合はエラーとなります。

順番指定での任意の指定「,」の値に，同じ値を指定した場合，一つの設定とします。
例えば，「数1，数2，数1」は「数1，数2」となります。

順番指定での範囲指定「-」と任意の指定「,」の混在はできません。エラーとなります。
例えば，「数1-数2，数3」はエラーとなります。

「*」は最下位に指定できません。ただし，すべての階層の属性を指定する場合は除きます。
例えば，「構造名1[*:属性名{"検索ターム"}]」はエラーとなりますが，「*:属性名{"検索ターム"}」はエラーにはなりません。

「*」直後の下位構造に「*」，「?」は指定できません。
例えば，「*[?{"検索ターム"}]」のような指定です。

指定例

構造名「文章」の下の「概要」の下の2番目の「コラム」に「NETWORK」を含む。
文章[概要[コラム=2{"NETWORK"}]]

構造名「文章」の下の「概要」以下の「コラム」に文字列「NETWORK」を含む。
文章[概要[*[コラム{"NETWORK"}]]]

構造名「文章」の下の「概要」の一つ下の階層に文字列「NETWORK」を含む。
文章[概要[?{"NETWORK"}]]

4.3.4　テキスト検索条件の指定

テキスト検索条件は，検索因子と呼ぶ条件単位のAND/OR論理条件によって構成されています。検索因子を使用して，同一の文書構造内の複雑な検索条件を指定できます。

テキスト検索条件の形式を次の図に示します。

図4-4　テキスト検索条件の形式

注意事項

AND/OR条件，またはNOT条件を指定する場合，次の優先順位に従って演算します（左側の方が優先順位が高い）。

括弧 ＞ NOT ＞ AND ＞ OR

テキスト検索条件にAND条件とOR条件を同じレベルで記述し，かつOR条件を優先したい場合は，OR条件の範囲を括弧で囲んでください。

検索因子とは，単純文字列指定，異表記展開指定，同義語展開指定，および近傍条件のどれかの検索条件からなっています。

検索因子の形式を次の図に示します。

図4-5　検索因子の形式

指定例

文字列「COMPUTER」の同義語または「NETWORK」を含む（同義語辞書はUSR01）。
SYNONYM(USR01,"COMPUTER") OR "NETWORK"

文字列「NETWORK」を含まない。
NOT({"NETWORK"})

4.3.5　単純文字列指定

単純文字列指定では，検索したい文字列（検索ターム）をダブルクォーテーションで囲んで指定します。

単純文字列指定の形式を次の図に示します。

図4-6　単純文字列指定の形式

検索文字列には，ワイルドカードおよび特殊文字を指定できます。ワイルドカードおよび特殊文字は，半角で指定してください。

指定できるワイルドカードおよび特殊文字の意味を次の表に示します。

表4-4　指定できるワイルドカードおよび特殊文字

文字 | 文字の意味
* | 0文字以上の任意の文字列に相当します
? | 任意の1文字に相当します
| | 構造の先頭または末尾に一致します
¥ | ワイルドカードまたは特殊文字の意味を消します

ワイルドカード指定時の注意事項

ワイルドカードを指定した場合は，同義語展開されません。

指定例

「ネットワーク」と「コンピュータ」で構成される文字列。

"ネットワーク*コンピュータ"

注意事項

同一構造内で出現回数が多い文字を使用したワイルドカード検索または近傍検索を実行した場合，検索時最大ワークメモリサイズを超えてメモリを使用する場合があります。

英文の場合に指定できるワイルドカードおよび特殊文字の意味を次の表に示します。

表4-5　指定できるワイルドカードおよび特殊文字（英文の場合）

文字 | 文字の意味
* | 単語内の0文字以上の任意の文字列に相当します
? | 単語内の任意の1文字に相当します
¥ | ワイルドカードまたは特殊文字の意味を消します

ワイルドカード指定時の注意事項

ワイルドカードを指定した場合は，同義語展開されません。

ワイルドカードを使用する場合は，ワイルドカード以外に3文字以上指定する必要があります。2文字以下の場合はエラーになります。

指定例

単語一致検索（「Application」で構成される文字列）
Application

前方一致検索（前方が「app」，「applicatio」で構成される文字列）
app*，applicatio?

また，検索文字列には，除外文字検索用の特殊文字も指定できます。除外文字検索とは，検索タームの一部または前後に特定の文字がある場合を除外して，該当する文書を検索する方法です。除外文字検索用の特殊文字は，半角で指定してください。

ただし，英文検索では除外文字は指定できません。

指定できる除外文字検索用の特殊文字の意味と指定例を次の表に示します。

表4-6　指定できる除外文字検索用の特殊文字

文字
文字の意味
指定例

^
直後にある1文字を検索対象から除外します。ただし，特殊文字を「¥」（エスケープ文字）とともに指定した2文字は1文字とみなして除外します。

「ローマ?」から「ローマ字」の場合を除外します（?は任意の1文字）。
"ローマ^字"

「?文書」から「誤文書」の場合を除外します。
"^誤文書"

「データ???」から「データベース」の場合を除外します。
"データ^ベ^ー^ス"

「?100」から「¥100」の場合を除外します。
"^¥¥100"

[ ]
除外する1文字を「,」(コンマ)で区切って複数指定する場合に使用します。

「大阪?」から「大阪市」と「大阪府」の場合を除外します。
"大阪^[市,府]"

,
[ ]の中の文字を区切る場合に使用します。

「文書?管理」から「文書の管理」と「文書を管理」を除外します。
"文書^[の,を]管理"

除外文字検索用の特殊文字指定時の注意事項

検索ターム全体または「*」で区切られた部分に除外する文字以外の文字がない場合は，エラーとなります。指定例を次の表に示します。

表4-7　除外文字検索用の特殊文字指定例

誤った例 | ^ア，^[ア,イ]，^ア*，^ア*イ，ア*^イ，?^ア
正しい例 | ^アイ，^[ア,イ]ウ，イ^ア*，ウ^ア*イ，ア*^イウ，?^アイ

除外文字検索用の特殊文字を指定した場合，同義語展開されません。

英文検索の場合の注意事項

検索文字列は1バイト文字コードの「0x20」～「0x7E」の範囲で指定します。それ以外の1バイト文字コード，または2バイト文字コードを指定した場合，そのコードはないものとして扱い，以降の文字コードを詰めて検索します。指定した文字コードが，英文検索用インデクス作成時に定義した不要語，または削除コードと同じコードの場合は，エラーとなります。

検索文字列にインデクスデリミタを含む場合は，インデクスデリミタで前後の文字コードを区切り，フレーズ検索とみなして検索します。例えば「0x20」（半角スペース）で区切って複数の単語を記述した場合，それらの単語が隣り合って出現する一つの単語列として検索します。なお，文字列中の一単語は，64文字（バイト）まで指定できます。64文字（バイト）を超える単語が指定された場合は，65文字（バイト）目以降を無視して64文字（バイト）目までを単語として検索します。

4.3.6　異表記展開指定

単純文字列指定では，例えば，検索対象文字列に「ボウリング」を指定した場合，「ボウリング」だけを検索対象とします。これに対し，異表記展開指定では，検索対象文字列を同義語異表記の文字列に展開し，その文字列も検索対象とします。例えば，「ボウリング」を指定した場合，「ボウリング」だけではなく，「ボーリング」や「ボゥリング」などを検索することができます。英文検索の異表記展開は，半角アルファベット文字列を対象とした，半角アルファベット大小文字列展開をして文字列を検索します。このように，異表記展開を指定すると，より広い範囲での文字列検索が可能となります。

異表記展開指定の形式を次の図に示します。

図4-7　異表記展開指定の形式

展開モードは，展開する異表記に応じて指定します。異表記オプションの種類と指定する展開モードの対応を次の表に示します。

表4-8　異表記オプション

異表記オプション
展開モード
説明

アルファベット異表記
A
全角英字の文字列を，次の4パターンに展開します。
1.すべてが大文字
2.すべてが小文字
3.先頭だけ大文字
4.指定した文字列

かたかな異表記
K
全角かたかな文字列に対して，かたかな異表記の展開をします。

かたかな長音ハイフン展開
L
かたかな文字列に対して，長音・ハイフン展開をします。このとき，展開されるのは長音・ハイフンだけであり，前後のかたかな文字列は展開の対象となりません。

かたかなベーシック展開
B
かたかなルールに基づいた展開だけを実行します。

かたかな拗音展開
C
かたかな文字列に対して，拗音展開をします。

全角半角異表記
E
指定した文字列中で全角から半角にできるもの，または半角から全角にできるものに対して，次の3パターンに展開します。
1.すべてが全角文字列
2.すべてが半角文字列
3.指定した文字列

半角アルファベット展開
H
半角英字の文字列を，次の4パターンに展開します。
1.すべてが大文字
2.すべてが小文字
3.先頭だけ大文字
4.指定した文字列

ひらがな拗音展開
Y
ひらがなの拗音の展開をします。

英単語派生表記展開※
S
半角英文字の文字列を派生語に展開します。

英単語語尾表記展開※
I
英単語を語尾の変換系に展開します。

注※　このオプションを使用するには，Text Search Enhancer for Englishが必要です。

これら展開モードは単独で指定するだけではなく，組み合わせて指定することもできます。例えば，全角文字のアルファベット大小文字展開，および全角半角文字展開をする場合は，「AE」と指定します。展開モードの指定がない場合は，「AKE」が指定されたと仮定されます。なお，「BCL」を指定した場合は，「K」を指定したときと同じ展開となります。

展開モードは，順不同で指定できます。必要な組み合わせを指定してください。

異表記展開指定時の注意事項

長大な英文に対してアルファベット大小文字展開を実行したり，長大なかたかな文字列に対してかたかな異表記展開を実行したりすると，展開数の増加によって，多大なリソースが必要になったり，レスポンスが低下したりすることがあります。

異表記展開指定をする場合は，次のような点に留意してください。

エンドユーザが自由に検索条件を指定できるようなシステムの場合，環境設定時に，環境定義ファイルで同義語異表記展開用最大メモリサイズを設定しておくことをお勧めします。これによって，異表記展開数が多大になった場合にエラーで中断させることができ，システムのリソース消費量を制限できます。

英文に対して，アルファベット大小文字展開を必ず実行するような運用の場合は，異表記展開指定ではなく，大小文字統一機能を使用することをお勧めします。大小文字統一機能は，インデクス定義時に定義します。
英文に対して大小文字展開を指定すると，それぞれの単語に対して大小文字展開が実行され，そのすべての組み合わせのOR検索が実行されます。展開数は，「1単語当たり三つの展開形式＋指定文字列」の4パターンとなり，「4のn乗（ｎは単語数）」になります。ただし，指定された文字が展開パターンと一致する場合は3パターンとなり，展開数は「3のn乗（ｎは単語数）」になります。
展開例を次に示します。

指定した英文

long long ago ,there were three little pigs.

アルファベット大小文字展開の結果

long long ago ,there were three little pigs.
Long long ago ,there were three little pigs.
LONG long ago ,there were three little pigs.
long Long ago ,there were three little pigs.
                ：

この場合の展開数は「展開数＝3×3×3×3×3×3×3×3＝3⁸＝6,561パターン」となります。さらに，全角半角異表記展開を同時に指定した場合は，それぞれの展開結果をすべて全角とすべて半角の2パターンに展開するため，展開数が2倍になります。

展開数の増加は，リソースの増加およびレスポンスの低下につながるので，このような検索は避けてください。

長大なかたかな文字列に対して，かたかな異表記展開を必ず実行するような運用の場合は，拗音統一機能を使用してかたかな展開数を削減してください。拗音統一機能は，インデクス定義時に定義します。また，環境設定時に，環境定義ファイルで同義語異表記展開用最大メモリサイズを設定して，リソース消費量の上限値を設定してください。
長大なかたかな文字列に対してかたかな異表記展開を指定すると，かたかな文字列のそれぞれの部分に対してかたかな異表記展開が実行され，そのすべての組み合わせのOR検索が実行されます。なお，かたかな異表記展開は，アルファベット大小文字展開や全角半角展開のように明確な規則に従った展開でなく，XML Extensionで設定されているルールに基づいて展開されます。このため，かたかな文字列によって展開数は異なります。
展開例を次に示します。

指定したかたかな文字列

バイクバイクバイクバイクバイク

かたかな異表記展開の結果

「バイク」は「ヴアイク」，「ヴァイク」，「ヴアィク」，「ヴァィク」，「バイク」，「バィク」の6パターンに展開されるため，それぞれ「バイク」の部分を6パターンに展開した組み合わせが検索条件になります。したがって，例のように「バイク」が5回つながっているようなかたかな文字列の展開数は，「展開数＝6×6×6×6×6＝6⁵＝7,776パターン」になります。

展開数の増加は，リソースの増加およびレスポンスの低下につながるので，このような検索は避けてください。

展開速度を落とさずに検索を実行するには，部分展開検索モードを指定して検索を実行してください。この検索モードを使用するかどうかは，環境定義ファイルで指定します。指定方法については，「2.6.2(2)　設定できる項目」を参照してください。なお，部分展開検索モードで検索を実行すると，システムのリソース消費量が増加します。このため，検索最大ワークメモリサイズ（phj_mem_search）の設定値を見直す必要があります。検索最大ワークメモリサイズで指定したメモリサイズを超えた場合には，「メモリ不足エラー」，「検索用ワークファイルを使用する」のどちらかを指定できます。

指定例

文字列「COMPUTER」のアルファベット大小文字および全角半角文字展開を含む。

SOUNDEX_EXP( "COMPUTER「","」AE" )

異表記展開の例を次に示します。

4.3.7　同義語展開指定

同義語展開指定では，同義語展開に使用する辞書名と検索タームを指定します。また，異表記展開モードの指定もできます。異表記展開モードを指定した場合は，同義語展開したすべての語に関して，指定のモードで異表記展開します。異表記展開モードの指定がない場合は，同義語展開の結果で検索します。

同義語展開指定の形式を次の図に示します。

図4-8　同義語展開指定の形式

同義語展開指定時の注意事項

検索文字列にワイルドカード除外文字検索用の特殊文字を指定した場合は，同義語展開されません。

指定例

文字列「COMPUTER」の同義語，アルファベット大小文字および全角半角展開を含む（同義語辞書はUSR01）。

SYNONYM( USR01, "COMPUTER「","」AE" )

4.3.8　近傍条件指定

近傍条件指定では，二つの検索ターム（語句リスト）とそれらの距離条件，出現順序関係を指定します。それぞれの語句リスト中の検索タームのどれかがヒットした位置で，距離条件に当てはまるように近接している語句リストがヒットする文書を検索します。

距離条件として，距離には演算子と数値，距離単位には文字を表す'CHARACTERS'を使用します。これによって，二つの検索ターム間の文字数（距離）を検索条件にできます。

演算子は，指定距離に等しい・以上・以下の3種類があり，等しい場合は =を，以上の場合は >=を，以下の場合は <=を指定します。

順序指定は，第一の語句リストと第二の語句リストのどちらが先に出現してもよいとする「ANY_ORDER」と，第一の語句リストの次に第二の語句リストが出現する順序を指定する「IN_ORDER」を選択できます。

近傍条件指定の形式を次の図に示します。

図4-9　近傍条件指定の形式

指定例

文字列「COMPUTER」の同義語，アルファベット大小文字および全角半角文字展開と，文字列「ネットワーク」の同義語，アルファベット大小文字，かたかな異表記，全角半角文字展開が20文字以下に近接して出現する（同義語辞書はUSR01）。

PROXIMITY(SYNONYM( USR01, "COMPUTER「","」AE"), <=20,

CHARACTERS,ANY_ORDER,SYNONYM( USR01, "ネットワーク「","」AKE"))

英文検索用インデクスの場合
英文検索用インデクスは距離条件として，距離には演算子と数値，距離単位には単語を表す「WORDS」を使用します。
英文検索用インデクスに対して距離単位に「CHARACTERS」を指定した場合はエラーとなります。
近傍演算の距離は0～2,147,483,646の範囲で指定します。距離の単位は単語です。インデクスデリミタで区切られた単語を1単語とみなします。例えば，英文書に「I have a pen.」とある場合，インデクスデリミタが半角スペースのため，「I」と「pen」の距離は2となります。また，不要語が含まれる場合，不要語も1単語として近傍演算の距離に数えます。
演算子は，指定距離に等しい・以上・以下の3種類があり，等しい場合は =を，以上の場合は >=を，以下の場合は <=を指定します。
順序指定は，第一の語句リストと第二の語句リストのどちらが先に出現してもよいとする「ANY_ORDER」と，第一の語句リストの次に第二の語句リストが出現する順序を指定する「IN_ORDER」を選択できます。
近傍条件指定の形式を次の図に示します。

図4-10　英文インデクスの近傍条件指定の形式

指定例

文字列「COMPUTER」と「SYSTEM」が10単語以下に近接して出現する。

PROXIMITY("COMPUTER", <= 10, WORDS, ANY_ORDER, "SYSTEM")

4.3.9　重み

重みは，複数の検索タームを指定する場合，スコア値を算出するときに，より重要度を高くしたい方の検索タームに付けます。これによって，重みを付けた検索タームにはより高いスコアが付きます。重みを指定できる範囲は，1～100です。

重み指定の形式を次の図に示します。

図4-11　重み指定の形式

なお，重みは，contains_with_score関数の全文検索条件式にだけ指定できます。contains関数の全文検索条件式で重みを指定しても無視されます。contains_with_score関数，contains関数の詳細については，「4.2　抽象データ型関数の文法」を参照してください。

指定例

構造名「文章」の下の「本文」に文字列「コンピュータ」を含み，かつ構造名「文章」の下の「概要」に文字列「ネットワーク」を含む。スコア値を算出する際は，文字列「コンピュータ」の出現数に10を掛ける。
文章[本文(10){"コンピュータ"}] AND文章[概要{"ネットワーク"}]

構造名「文章」の下の「本文」に文字列「コンピュータ」または「ネットワーク」を含む。スコア値を算出する際は，文字列「ネットワーク」の出現数に10を掛ける。
文章[本文{"コンピュータ" OR "ネットワーク"(10)}]

4.3.10　属性値指定

構造に指定された属性を条件にして検索する場合，構造に対する属性名およびテキスト検索条件を指定します。

属性値指定の形式を次の図に示します。

図4-12　属性値指定の形式

指定例

構造名「文章」の属性「Author」に「Tanaka」を含む。

文章:Author{"Tanaka"}

4.3.11　特定構造検索指定

特定構造検索指定は，複数の構造を対象とした検索条件を満たす構造が，ある特定構造に含まれているかどうかを検索する場合に使用します。

特定構造検索指定では，検索の対象となる特定構造および検索条件式を二つ以上指定します。ただし，特定構造検索指定の構造検索パターンは，属性値指定できません。

特定構造検索指定の形式を次の図に示します。

図4-13　特定構造検索指定の形式

特定構造指定には，検索範囲を特定するための構造名を指定します。

特定構造指定の形式を次の図に示します。

図4-14　特定構造指定の形式

指定例

最上位構造「報告書」の下位構造「会議」の下位に，「所属」と「出席者」という構造を持つ文書について，「所属」に文字列「横浜営業所」を含み，かつ「出席者」に文字列「鈴木」を含む文書を検索する。

SPECIFIC_AND(報告書[会議]; 報告書[会議[所属{"横浜営業所"}]], 報告書[会議[出席者{"鈴木"}]])

4.3.12　特殊文字の指定

全文検索条件の条件式中で特殊な意味を持つ記号（特殊記号）は，単独では文字として指定できません。文字として指定する場合は，各特殊記号の前に「¥」（エスケープ文字）を付けてください。全文検索条件の単純文字列指定以外と，単純文字列指定内では条件式中の特殊記号が異なります。

「¥」を付ける必要のある特殊記号を表4-9および表4-10に示します。

表4-9　全文検索条件の条件式中に指定できる特殊記号（全文検索条件の単純文字列指定以外）

特殊記号 | 文字の呼称
" | ダブルクォーテーション
| スペース
, | コンマ
| タブ
{ | 左波括弧
} | 右波括弧
[ | 左角括弧
] | 右角括弧
( | 左丸括弧
) | 右丸括弧
¥ | 円記号（エスケープ文字）
: | コロン
* | アスタリスク
? | 疑問符
= | イコール
- | ハイフン

表4-10　全文検索条件の条件式中に指定できる特殊記号（全文検索条件の単純文字列指定内）

特殊記号 | 文字の呼称
* | アスタリスク
? | 疑問符
| | パイプ
¥ | 円記号（エスケープ文字）
[ | 左角括弧
] | 右角括弧
, | コンマ
( | 左丸括弧
) | 右丸括弧
" | ダブルクォーテーション
^ | ハット

4.3.13　全文検索条件式の指定例

全文検索条件式の指定例を次に示します。なお，例では表「reports」のSGMLTEXT型の列「doc」を検索対象としています。また，「概要」および「目的」は，最上位構造「文章」の下位構造です。

「概要」部分に文字列「COMPUTER」を含む文書の件数を調べる。

SELECT  COUNT(*)  FROM reports
 WHERE contains(doc, '文章[概要{"COMPUTER"}]' ) IS TRUE

「概要」部分に文字列「COMPUTER」の同義語を含む文書のタイトル一覧表を作成する。

SELECT  title  FROM reports
 WHERE contains(doc, '文章[概要{SYNONYM(USR01, "COMPUTER")}]' ) IS TRUE

「概要」部分に文字列「COMPUTER」の同義語と「NETWORK」を含む文書の件数を調べる。

SELECT  COUNT(*)  FROM reports
 WHERE contains(doc, '文章[概要{SYNONYM(USR01, "COMPUTER")
                AND "NETWORK"}]' ) IS TRUE

「概要」部分に「COMPUTER」の同義語と「NETWORK」の同義語を含む文書の件数を調べる。

SELECT  COUNT(*)  FROM reports
 WHERE contains(doc, '文章[概要{SYNONYM(USR01,
               "COMPUTER") AND SYNONYM(USR01,
               "NETWORK")}]' ) IS TRUE

「概要」部分に「COMPUTER」の同義語と「NETWORK」の同義語が10文字以内に近接して出現する文書のタイトル一覧表を作成する。

SELECT  title  FROM reports
 WHERE contains(doc, '文章[概要{PROXIMITY(SYNONYM
                (USR01, "COMPUTER"),<=10, CHARACTERS,
                ANY_ORDER,SYNONYM(USR01,
                "NETWORK"))}]' ) IS TRUE

「概要」部分に， 「COMPUTER」の同義語（同義語辞書USR01）と， 「NETWORK」の同義語（同義語辞書POLITICS）が20文字以内に近接して出現する文書のタイトル，著者一覧表を作成する。

SELECT  title, author  FROM reports
 WHERE contains(doc, '文章[概要{PROXIMITY(SYNONYM
                (USR01, "COMPUTER"),<= 20, CHARACTERS,
                ANY_ORDER, SYNONYM( POLITICS,
                "NETWORK"))}]' ) IS TRUE

「目的」部分に「COMPUTER」を含み，かつ「概要」部分に「NETWORK」を含む文書の件数を調べる。

SELECT  COUNT(*)  FROM reports
 WHERE contains(doc, '文章[目的{"COMPUTER"}] AND文章[概要
                {"NETWORK"}]' ) IS TRUE

「文章」に「NETWORK」を含む文書の件数を調べる。

SELECT  COUNT(*)  FROM reports
 WHERE contains(doc, '文章{"NETWORK"}' ) IS TRUE

「文章」の下の任意の階層にある「コラム」部分に文字列「COMPUTER」を含む文書の件数を調べる。

SELECT  COUNT(*)  FROM reports
 WHERE contains(doc, '文章[*[コラム{"COMPUTER"}]]' ) IS TRUE

3階層目にある「コラム」部分に文字列「COMPUTER」を含む文書の件数を調べる。

SELECT  COUNT(*)  FROM reports
 WHERE contains(doc, '?[?[コラム{"COMPUTER"}]]' ) IS TRUE

「文章」の下階層にある2番目の「コラム」部分に文字列「COMPUTER」を含む文書の件数を調べる。

SELECT  COUNT(*)  FROM reports
 WHERE contains(doc, '文章[コラム=2{"COMPUTER"}]') IS TRUE

「文章」に「COMPUTER」と「NETWORK」のアルファベット大小文字展開と全角半角展開を含む文書の件数を調べる。

SELECT  COUNT(*)  FROM reports
 WHERE contains(doc, '文章{SOUNDEX_EXP("COMPUTER「","」AE") AND
                     SOUNDEX_EXP("NETWORK「","」AE")}' ) IS TRUE

5.　XML変換ライブラリ

この章では，XML変換ライブラリの目的，機能および前提プログラムについて説明します。

＜この章の構成＞

5.1　目的

5.2　ESIS-B形式生成機能

5.3　前提プログラム

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

5.5　XMLデータ

5.6　PrdbXMLConverterクラス

5.7　例外クラス

5.8　XMLのフィルタリング機能

5.9　XML変換ライブラリのエラーメッセージ

5.1　目的

この節では，XML変換ライブラリの目的について説明します。

HiRDBにXML Extensionを組み込んだシステムでは，登録したXMLデータに対し全文検索機能を利用できます。このシステムでXMLデータを全文検索するには，XMLデータから生成されたXML Extensionで全文検索できる形式のデータ（ESIS-B形式）が登録されている必要があります。

XML変換ライブラリは，このESIS-B形式を生成するためのコマンドおよびUAPをJavaで作成するライブラリを提供しています。XML変換ライブラリで作成したUAPまたはコマンドを利用することで，XMLデータの構造情報とコンテンツを抽出したESIS-B形式を生成できます。なお，XML変換ライブラリはHiRDB/Run Time Version 8 08-02-04以降とHiRDB/Developer's Kit Version 8 08-02-04以降にもバンドルされています。

5.2　ESIS-B形式生成機能

この節では，XML変換ライブラリが提供するESIS-B形式生成機能の概要について説明します。

ESIS-B形式生成機能とは，XMLデータをESIS-B形式に変換する機能です。ESIS-B形式に変換されたXMLデータをXML型列に登録することで，XML型列の使用ができます。

XML変換ライブラリでESIS-B形式を作成するには，次の2種類の方法があります。

UAPから作成する
XML変換ライブラリで作成したUAPを利用して，ESIS-B形式を生成できます。XML変換ライブラリはUAP作成に必要な各種ファイルやクラスを提供していますので，ESIS-B形式を生成するUAPを効率的に作成できます。

コマンドから作成する
phdxmlcnvコマンドを実行することでESIS-B形式を生成できます。

XMLデータからESIS-B形式を生成する方法については，「5.4　ESIS-B形式データの生成」を参照してください。

5.3　前提プログラム

この節では，XML変換ライブラリの機能を利用するために必要なプログラムについて説明します。

XML変換ライブラリの機能の利用には，UAPの作成および実行するために次のどれかのプログラムが必要です。

UNIIXの場合

uCosminexus Application Server Standard

uCosminexus Application Server Enterprise

Windowsの場合

uCosminexus Application Server Standard

uCosminexus Application Server Enterprise

uCosminexus Developer Standard

uCosminexus Developer Professional

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

この節では，ESIS-B形式を生成するためのコマンドの機能，およびJavaでのUAPの作成方法について説明します。また，JavaでUAPを作成するためにXML変換ライブラリが提供するファイルおよびクラスについても説明します。

＜この節の構成＞

5.4.1　提供するファイル一覧

5.4.2　提供するクラス一覧

5.4.3　クラスメソッドの発行順序

5.4.4　UAPのコンパイルおよび実行時の設定

5.4.5　 UAPのコンパイルおよび実行時の設定（HiRDB/Run TimeおよびHiRDB/Developer's Kitの場合）

5.4.6　XMLデータ変換コマンド（phdxmlcnv）

5.4.7　使用できる文字及び文字コード

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

5.4.1　提供するファイル一覧

XML変換ライブラリで提供するファイルの一覧を示します。なお，提供するファイルを使用してUAPを作成する方法については，「5.4.4　UAPのコンパイルおよび実行時の設定」を参照してください。

提供するファイルの一覧を次の表に示します。

表5-1　 XML変換ライブラリで提供するファイル一覧

ファイル名 | ファイル種別 | 説明
XMLConverter.jar | JARファイル | UAPコンパイル時にこのファイルへクラスパスを通します。

5.4.2　提供するクラス一覧

XML変換ライブラリで提供するクラスの一覧を次の表に示します。なお，クラスの詳細については，「5.6　PrdbXMLConverterクラス」を参照してください。

表5-2　 XML変換ライブラリで提供するクラス一覧

クラス名 | 機能
PrdbXMLConverter | ESIS-B形式データの作成，作成時の各設定を行います。
PrdbIllegalXMLException | XMLConverterで発生する例外，XMLデータに起因する例外を扱うクラスです。
PrdbParameterException | XMLConverterで発生する例外，setProperty指定ミス時の例外を扱うクラスです。
PhrdFilterExtension | XMLConverterで発生する例外，setFilterに指定したフィルタ情報定義ファイルの指定ミス時の例外を扱うクラスです。

5.4.3　クラスメソッドの発行順序

XML変換ライブラリで提供するクラスメソッドを使用してUAPを作成する場合の，クラスメソッドの発行順序の例を示します。

クラスメソッドの発行順序の例を次の図に示します。

図5-1　API関数の発行順序の例

5.4.4　UAPのコンパイルおよび実行時の設定

XML変換ライブラリを使用してUAPを作成する際の，コンパイル方法について説明します。

UAPを実行するマシンには，XML変換ライブラリをインストールしてください。

＜この項の構成＞

(1)　コンパイル（UNIXの場合）

(2)　コンパイル（Windowsの場合）

(3)　実行時の設定（UNIXの場合）

(4)　実行時の設定（Windowsの場合）

(1)　コンパイル（UNIXの場合）

次に示すパスをUAPコンパイル時のクラスパスに加えてください。

HiRDB運用ディレクトリ/plugin/_phdxml/jcnv/XMLConverter.jar

(2)　コンパイル（Windowsの場合）

次に示すパスをUAPコンパイル時のクラスパスに加えてください。

HiRDB運用ディレクトリ¥plugin¥_phdxml¥jcnv¥XMLConverter.jar

(3)　実行時の設定（UNIXの場合）

次に示すパスをUAP実行時のクラスパスに加えてください。

HiRDB運用ディレクトリ/plugin/_phdxml/jcnv/XMLConverter.jar
/opt/Cosminexus/jaxp/lib/csmjaxp.jar

(4)　実行時の設定（Windowsの場合）

次に示すパスをUAP実行時のクラスパスに加えてください。

HiRDB運用ディレクトリ¥plugin¥_phdxml¥jcnv¥XMLConverter.jar
Cosminexusインストールディレクトリ¥jaxp¥lib¥csmjaxp.jar

5.4.5　 UAPのコンパイルおよび実行時の設定（HiRDB/Run TimeおよびHiRDB/Developer's Kitの場合）

HiRDB/Run Time，HiRDB/Developer's KitのXML変換ライブラリを用いてUAPを作成する場合のコンパイル方法と実行方法について説明します。

＜この項の構成＞

(1)　コンパイル（UNIXの場合）

(2)　コンパイル（Windowsの場合）

(3)　実行時の設定（UNIXの場合）

(4)　実行時の設定（Windowsの場合）

(1)　コンパイル（UNIXの場合）

次に示すパスをUAPコンパイル時のクラスパスに加えてください。

/opt/HiRDB/client/lib/XMLConverter.jar

(2)　コンパイル（Windowsの場合）

次に示すパスをUAPコンパイル時のクラスパスに加えてください。

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

(3)　実行時の設定（UNIXの場合）

次に示すパスをUAP 実行時のクラスパスに加えてください。

/opt/HiRDB/client/lib/XMLConverter.jar
/opt/Cosminexus/jaxp/lib/csmjaxp.jar

(4)　実行時の設定（Windowsの場合）

次に示すパスをUAP 実行時のクラスパスに加えてください。

HiRDB/Run Time,HiRDB/Developer's Kitインストールディレクトリ¥utl¥XMLConverter.jar
Cosminexusインストールディレクトリ¥jaxp¥lib¥csmjaxp.jar

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_VALIDATE
ON/OFF（OFF）
変換するXMLデータに対して妥当性検証を行います

PHD_XMLCONVERTER_EXTERNAL_ENTITY
ON/OFF（ON）
変換するXMLデータ内で指定している解析対象外部エンティティをESIS-Bに含めます

PHD_XMLCONVERTER_XMLSCHEMA
ON/OFF（OFF）
変換するXMLデータに対してXMLSchemaによる妥当性検証を行います

PHD_XMLCONVERTER_REGULAR_FOR_TEXT
ON/OFF（ON）
XMLデータ内のタグ間のテキストを正規化します。

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

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

引数が指定されていない

エラー情報出力ファイルアクセスエラー

ESIS-B形式変換定義ファイル形式不正

ESIS-B形式変換定義ファイルアクセスエラー

ESIS-B形式変換定義ファイル内に指定したXMLが不正

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

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

コード | 要因
0 | 正常終了
1 | 一部のXMLで変換を失敗
-1 | 上記要因でエラー終了

注

環境が正しく設定されていない場合，上記以外のエラーコードが出力されるときがあります。

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

ESIS-B形式変換定義ファイルは，変換対象ファイルごとに次の表に示す項目を順番に「，（コンマ）」で区切って指定します。ただし，パス名に「，」は使用できません。

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

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

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

ファイルパス名は200バイト以内で指定してください。

ファイル名は絶対パスで指定してください。相対パスで指定した場合，正常に動作しない場合があります。

指定例

/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)　注意事項

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

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

出力するESIS-B形式の文字コードは，必ず-mで指定してください。
この指定は，HiRDBのセットアップ環境に合わせる必要があります。

環境変数PATHを正しく指定していない場合，コマンド実行時に「Java：見つかりません」や「Exception in thread "main" java.lang.UnsupportedClassVersionError・・」などのメッセージIDが無いエラーメッセージを出力します。

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

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

5.4.7　使用できる文字及び文字コード

XML変換ライブラリで使用できるXMLデータの文字と文字コードについて説明します。

使用できるXMLデータの文字および文字コードは，前提製品のCosminexus XML Processerの仕様に従います。詳細については，マニュアル「Cosminexus XML Processer ユーザーズガイド」を参照してください。

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

XMLデータからESIS-B形式データを生成するときの，要素，属性およびタグ間テキストの変換規則について説明します。

＜この項の構成＞

(1)　要素の変換規則

(2)　属性の変換規則

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

(1)　要素の変換規則

XMLデータ中に出現したすべての要素がESIS-B形式データに適応されます。

指定した文字コードで表せない文字が要素名に含まれる場合は，「?」（疑問符）に置換されます。

(2)　属性の変換規則

指定した文字コードで表せない文字が属性に含まれる場合は，「?」（疑問符）に置換されます。また，属性値はDTDで指定した属性型によって次の表に示す規則に従って変換されます。

表5-6　属性の変換規則

属性型
規則

CDATA
属性値として記述された文字列が，そのままの形でESIS-B形式に適応されます。

ENTITY
「NMTOKEN」と同様に扱われます。ただし，DTD内で解析対象外エンティティを指定している場合の属性値は解析対象外エンティティで指定したシステムIDとなります。

ENTITIES
「NMTOKENS」と同様に扱われます。ただし，DTD内で解析対象外エンティティを指定している場合の属性値は解析対象外エンティティで指定したシステムIDとなります。

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>

5.5　XMLデータ

この節では，XML変換ライブラリに指定するXMLデータに関する注意事項を説明します。

＜この節の構成＞

5.5.1　XMLデータの文字コード

5.5.2　DTD

5.5.3　エンティティ

5.5.4　XMLSchema

5.5.5　XML変換ライブラリの制限

5.5.1　XMLデータの文字コード

XMLデータの文字コードに関する注意事項を説明します。

XML変換ライブラリに指定出来る文字コードに関してはマニュアル「Cosminexus XML Processor　ユーザーズガイド」を参照してください。ただし文字コードが"Shift_JIS"の場合XML変換ライブラリを動作させるJavaのバージョンによって「SJIS」，「Windows-31J」のどちらかで動作します。前提の「uCosminexus Application Server Standard　07-00」を使用している場合は「SJIS」として動作します。

5.5.2　DTD

この節ではXML変換ライブラリに指定するXMLデータのDTDに関する注意事項を説明します。

XML変換ライブラリに指定するXMLデータ内でDTDを宣言しているか，外部DTDファイルを定義している場合，XML変換ライブラリはDTDを解釈します。このため，外部DTDとして定義したファイルが存在しない場合はFileNotFoundExceptionが発生します。また，PrdbXMLConverterクラスのsetPropertyメソッドで妥当性検証を有効にした場合，妥当性検証に失敗するとSAXParseExceptionが発生します。

5.5.3　エンティティ

DTD内で外部エンティティを定義した場合の注意事項を説明します。

＜この項の構成＞

(1)　解析対象外部エンティティ

(2)　解析対象外外部エンティティ

(1)　解析対象外部エンティティ

PrdbXMLConverterクラスのsetPropertyメソッドで外部エンティティファイルの読込を有効にした場合は，外部エンティティファイルの内容を含んだESIS-B形式を生成します。また，外部エンティティファイルが存在しない場合はFileNotFoundExceptionが発生します。

(2)　解析対象外外部エンティティ

DTD内で解析対象外エンティティを指定して，属性値の型が「ENTITY」または，「ENTITIES」の属性値に解析対象外エンティティ名を指定した場合は，生成されたESIS-B形式内の属性値は解析対象外エンティティ宣言のSystemIDの値となります。

5.5.4　XMLSchema

この節ではXMLSchemaによる妥当性検証について説明します。

次の条件をすべて満たす場合，XML変換ライブラリはXMLSchemaによる妥当性検証を行います。

setPropertyを指定してXMLShemaによる妥当性検証を有効にしている

XMLデータファイル内でXMLSchemaファイルをschemaLocationを指定している

XMLSchemaによる妥当性検証に失敗した場合，SAXParseExceptionが発生します。

5.5.5　XML変換ライブラリの制限

この節ではXML変換ライブラリに指定するXMLデータファイルに関する，XML変換ライブラリ特有の制限について説明します。

XML変換ライブラリ特有の制限を次に示します。

createESISBの引数に「null」を指定した場合

XMLのファイルサイズが5メガバイトを超える場合

要素名，属性名，名前空間接頭語，処理命令ターゲット名の長さがsetPropertyで指定した出力文字コード換算で4096バイトを超える場合

要素のネスト数が100を超える場合

これらの制限に該当するXMLデータファイルをcreateESISBメソッドに指定した場合，PrdbIllegalXMLExceptionが発生します。

5.6　PrdbXMLConverterクラス

この節では，XML変換ライブラリで提供するクラスについてリファレンス形式で説明します。

説明

XMLデータファイルをESIS-B形式に変換するクラスです。

パッケージ名称

JP.co.Hitachi.soft.HiRDB.XMLConverter

スレッドへの対応

このクラスはマルチスレッドに対応していません。マルチスレッドでXMLデータをESIS-Bに変換する場合は，スレッドごとにPrdbXMLConverterインスタンスを生成してください。

表5-8　メソッド（パブリックメソッド）一覧（PrdbXMLConverterクラス）

機能 | メソッド名
ESIS-B形式の生成 | createESISB
ESIS-B形式生成に関する設定を行う | setProperty
XML構造によるフィルタリングを設定 | setFilter
XML構造によるフィルタリングを解除 | unsetFilter

表5-9　フィールド（パブリックフィールド）一覧（PrdbXMLConverterクラス）

説明 | フィールド名
妥当性検証を表す設定項目ID | VALIDATE
出力文字コードを表す設定項目ID | ENCODE
外部エンティティ参照を表す設定項目ID | EXTERNAL_ENTITY
XMLSchemaによる妥当性検証を表す設定項目ID | XMLSCHEMA
文字列の正規化の設定を表す設定項目ID | REGULAR_FOR_TEXT
MS規格のUTF-8を表す設定値ID | UTF_8_MS
JIS規格のUTF-8を表す設定値ID | UTF_8_JIS
MS規格のシフトJISを表す設定値ID | SJIS_MS
JIS規格のシフトJISを表す設定値ID | SJIS_JIS
MS/JISが実行環境に依存するシフトJISを表す設定値ID | SJIS
EUC_JPを表す設定値ID | EUC_JP
US_ASCIIを表す設定値ID | US_ASCII

表5-8，表5-9の各メソッドの詳細について，これ以降で説明します。

＜この節の構成＞

createESISB

setProperty

setFilter

unsetFilter

createESISB

機能

ESIS-B形式を生成します。

形式

public byte[] createESISB(String xmlFileName)

引数

String xmlFileName

ESIS-B形式に変換するXMLデータファイル名を指定します。

戻り値

byte［］

変換結果のESIS-B形式を格納します。

発生する例外

発生する例外を次の表に示します。

表5-10　 createESISBで発生する例外

名称 | 要因
PrdbIllegalXMLException | 引数に指定したXMLデータファイルはXML変換ライブラリの制限に抵触しています。
org.xml.sax.SAXParseException | 引数に指定したXMLデータファイルが不正です。
org.xml.sax.SAXException | XMLパーサがXMLデータファイルの解析を続行出来ません。
java.io.FileNotFoundException | 引数に指定したXMLデータファイルか外部参照ファイルが開けません。
java.io.IOException | XMLデータファイルの変換中に入出力例外が発生しました。
org.xml.sax.SAXNotRecognizedException | XMLパーサが不正です。
org.xml.sax.SAXNotSupportedException | XMLパーサが不正です。
javax.xml.parsers.ParserConfigurationException | XMLパーサが不正です。
PrdbSystemError | 内部矛盾が発生しています。

使用例

PrdbXMLConverter converter = new PrdbXMLConverter();
byte esisb[]=converter.createESISB("test.xml");

注意事項

引数に指定するXMLデータの注意事項については「5.5　XMLデータ」を参照してください。

setProperty

機能

ESIS-B形式生成に関する設定を行います。

形式

public void setProperty(
                        int propertyCode，
                        int value )
public void setProperty(
                        int propertyCode，
                        boolean value)

引数

設定できる項目のコードとそれぞれの項目に設定できる値の一覧を次の表に示します。

表5-11　 setPropertyの設定項目と設定値

設定項目
設定値
説明

VALIDATE
true/false
XMLデータへの妥当性検証のON/OFFを設定します。
デフォルト：false

EXTERNAL_ENTITY
true/false
外部エンティティファイルの参照のON/OFFを設定します。
デフォルト：true

ENCODE
UTF_8_MS
UTF_8_JIS
SJIS_MS
SJIS_JIS
SJIS※
EUC_JP
US_ASCII
生成するESIS-Bの文字コード種別を設定します。文字コード種別は登録するHiRDBの文字コードにあわせてください。ただし，文字コード種別がUS-ASCIIの場合は，文字コードがsjis，ujis，utf-8のHiRDBに登録できます。
設定値の語尾のMS，JISはそれぞれマイクロソフト変換仕様，JIS変換仕様を表します。
デフォルト：UTF_8_MS

XMLSCHEMA
true/false
XMLSchemaによるXMLデータへの妥当性検証のON/OFFを設定します。
デフォルト：false

REGULAR_FOR_TEXT
true/false
trueを指定した場合，タグ間テキストを正規化します。
falseを指定した場合，タグ間テキストを正規化しません。
デフォルト：true

注※

SJISを指定した場合，ESIS-B形式の文字コードは実行環境のJavaVMに依存します。このため，Cosminexus Developer's Kit for Java (TM)ではSJIS_JISとなります。

発生する例外

発生する例外を次の表に示します。

表5-12　 setPropertyで発生する例外

名称 | 要因
PrdbParameterException | 引数として指定した値に誤りがあります。

使用例

PrdbXMLConverter converter = new PrdbXMLConverter();
converter.setProperty(PrdbXMLConverter.ENCODE,
                         PrdbXMLConverter.SJIS_MS);

注意事項

指定した設定は，このメソッド発行以降のPrdbXMLConverter.createESISBの結果に適用されます。

妥当性検証，XMLSchemaによる妥当性検証にtrueを設定した場合，外部参照ファイルは設定に関わらず必ず参照します。

setFilter

機能

変換するXMLデータに対して，XML構造のフィルタリングを行います。

形式

public boid setFilter(String FileName);

引数

FileName

XML構造によるフィルタリングを行うフィルタ情報定義ファイル名を指定します。

発生する例外

発生する例外を次の表に示します。

表5-13　setFilterで発生する例外

名称 | 要因
IOException | フィルタ情報定義ファイルの読み込み時にエラーが発生しました。
NullPointerException | 引数にnullが指定されています。
PrdbFilterException | フィルタ情報定義ファイルの記述に誤りがあります。

使用例

PrdbXMLConverter converter = new PrdbXMLConverter();
/* フィルターのセット */
converter.setFilter("filter.txt");

注意事項

setFilterを発行すると，それまでに指定していたフィルタ情報は消去されます。このため，setFilterを発行したときに例外が発生すると，フィルタは未設定の状態となります。

unsetFilter

機能

XMLデータに指定した，XML構造のフィルタリングを解除します。

形式

public boid unsetFilter();

使用例

/* フィルターのアンセット */
converter.unsetFilter();

5.7　例外クラス

この節では，例外クラスの詳細について説明します。

説明

例外は指定したXMLデータに誤りがある場合，またはクラスメッドの使用方法が誤っている場合などに発生します。これらの例外を通知することで，例外が発生した位置，例外発生理由，理由，その他の情報を取得できます。

パッケージ名称

JP.co.Hitachi.soft.HiRDB.XMLConverter

PrdbIllegalXMLExceptionクラス，PrdbParameterExceptionクラス，PrdbSystemErrorクラスを使用する場合は上記のパッケージ名称を使用してください。

インスタンスの生成

XML変換ライブラリの内部で発生したエラーを通知するために，XML変換ライブラリがインスタンスを生成します。このため，このクラスのインスタンスを生成する必要はありません。

スレッドへの対応

このクラスはマルチスレッドに対応していません。一つのインスタンスに対して複数のスレッドから同時にメソッドを発行しないでください。

表5-14　メソッド（パブリックメソッド）一覧

機能 | メソッド名
エラー詳細の取得 | getMessage

表5-14で示した各メソッドの詳細について，これ以降で説明します。

＜この節の構成＞

getMessage

getMessage

機能

例外発生の詳細理由を取得します。

形式

public String getMessage()

戻り値

例外発生の詳細理由を示す文字列を出力します。

クラス一覧

getMessageのクラス一覧を次の表に示します。

表5-15　 getMessageのクラス一覧

名称 | 要因
PrdbIllegalXMLException | 引数に指定したXMLデータファイルはXML変換ライブラリの制限に抵触しています。
PrdbParameterException | 引数として指定した値に誤りがあります。
PrdbSystemError | 内部矛盾が発生しています。
PrdbFilterException | 引数に指定したフィルタ情報定義ファイルに誤りがあります。
org.xml.sax.SAXParseException | 引数に指定したXMLデータファイルが不正です。
org.xml.sax.SAXException | XMLパーサがXMLデータファイルの解析を続行出来ません。
java.io.FileNotFoundException | 引数に指定したXMLデータファイルか外部参照ファイルが開けません。
java.io.IOException | XMLデータファイルの変換中に入出力例外が発生しました。
org.xml.sax.SAXNotRecognizedException | XMLパーサが不正です。
org.xml.sax.SAXNotSupportedException | XMLパーサが不正です。
javax.xml.parsers.ParserConfigurationException | XMLパーサが不正です。

注意事項

createESISBメソッド発行時にSAXNotRecognizedException，SAXNotSupportedException，ParserConfigurationException例外が発生した場合は，クラスパスにCosminexus XML Proseccerのcsmjaxp.jarファイルが含まれていること，およびCosminexus XML Proseccer以外のXMLパーサがクラスパスに含まれていないことを確認してください。

内部矛盾が発生した場合，PrdbSystemErrorがthrowされると共に標準エラー出力に例外メッセージとスタックトレースを出力します。

5.8　XMLのフィルタリング機能

XML Extensionでは，変換するXMLデータから不要な情報をフィルタリングすることができます。フィルタリング機能を使用することで，XMLデータ中の必要な情報だけを含めたESIS-B形式を生成できます。

この章では，フィルタリング機能の使用方法について説明します。

＜この節の構成＞

5.8.1　フィルタリング指定項目一覧

5.8.2　フィルタ情報定義ファイルの指定規則

5.8.3　allowおよびdenyの指定例

5.8.4　複合指定例

5.8.1　フィルタリング指定項目一覧

この節では，フィルタ情報定義ファイルに指定できる項目を一覧で示します。

フィルタ情報定義ファイルに指定できる項目の一覧を次の表に示します。

表5-16　フィルタ情報定義ファイル指定項目一覧

指定項目
説明

encoding=
フィルタ情報定義ファイルを記述する文字コードを指定します。文字コードは，先頭行に指定してください。指定を省略した場合，フィルタ情報定義ファイルはシフトJISとして扱われます。
shift_jis：シフトJIS
utf-8：utf-8
euc_jp：EUC_JP

deny
XMLデータの構造のうち，ESIS-B形式に含めない構造名を指定します。

allow
denyで指定した構造の下位構造の中から，ESIS-B形式に含める構造名を指定します。

absorb
fontタグなど，データ構造を表さない構造を削除します。

without attribute
XMLデータに存在するすべての属性情報を削除します。

trimdown ideographicspace
文字列情報の中の連続する全角スペースを，単一の全角スペースに置換します。

delete ideographicspace
文字列情報の中から連続する全角スペースを削除します。

delete space
文字列情報の中から半角スペースを削除します。

5.8.2　フィルタ情報定義ファイルの指定規則

この節では，フィルタ情報定義ファイルの指定規則について説明します。

フィルタ情報定義ファイルは，任意の名称のファイルに文字コード指定で指定した文字コードで記述してください。また，フィルタ情報定義ファイルとして記述した英字大文字と小文字は常に区別されます。

＜この項の構成＞

(1)　フィルタ情報定義ファイルの指定形式

(2)　フィルタリング指定項目の優先順位

(3)　フィルタ情報定義ファイル指定時の注意事項

(1)　フィルタ情報定義ファイルの指定形式

フィルタ情報定義ファイルの指定形式の指定形式を次に示します。

<フィルタ情報> ::=〔<文字コード指定>〕<フィルタ内容指定>…
<文字コード指定> ::= encoding=utf-8
<フィルタ内容指定> ::=｛<allow要素指定>｜<deny要素指定>｜<属性指定>｜
　　     　　　　　　　｜<統合指定>｜<空白文字指定>｝

<allow要素指定> ::= allow△<要素指定>
<deny要素指定> ::= deny△<要素指定>
<属性指定> ::= without attribute
<統合指定> ::= absorb△<要素名>
<空白文字指定> ::=｛trimdown ideographicspace |
delete ideographicspace | delete space｝

<要素指定> ::=〔.〕｛<要素名>｜'*'｜'?'｝〔.｛<要素名>｜'*'｜'?'｝〕…
<要素名> ::=｛<文字>｜"'"<文字>"'"｝

* : 0個以上の任意の要素
? : 1個の任意の要素

文字コードは先頭行に指定し，2行目以降に必要なだけフィルタ内容を指定してください。このとき，個々の文字コード指定およびフィルタ内容指定は1行（1,023バイト以内）で記述してください。一つの指定を複数行に分割することはできません。
なお，行の先頭に「#」（シャープ）を記述すると，コメント行として扱われます。

「.」（ピリオド）で始まる要素指定は，最上位要素からの絶対要素指定となります。
ただし，最上位要素に対するフィルタリングはできません。

要素名に「.」が含まれる場合は，その要素名を「'」（アポストロフィ）で囲んでください。

（例）

要素名「文書.章1」を指定する場合は，「'文書.章1'.下位要素」と記述します。

構文上の直前要素の０個または1個の出現は?（細字）で表します。

(2)　フィルタリング指定項目の優先順位

フィルタリング指定項目の優先順位を次の表に示します。

表5-17　フィルタリング指定項目の優先順位

順位 | 指定項目
1 | without attribute
2※ | allow，deny
3 | absorb
4 | delete ideographicspace，delete space
5 | trimdown ideographicspace

注※

allowおよびdenyの優先順位については，「5.8.3　allowおよびdenyの指定例」を参照してください。

(3)　フィルタ情報定義ファイル指定時の注意事項

absorb指定による統合処理は，allowまたはdeny指定による文書構造のフィルタリングのあとに実行されます。また，属性情報は常に削除されます。

フィルタリング機能を使用する場合は，フィルタリング機能を使用しない場合と比べてESIS-B形式の生成に時間が掛かります。このときの処理に掛かる時間は，フィルタリング情報の量に依存します。

ファイルの内容は，文字コード指定で指定した文字コードで記述してください。文字コード指定を省略する場合は，シフトJIS文字コードで記述してください。

文字コード指定は，次の機能に影響を与えます。

フィルタ情報定義ファイル自体の解釈

allowおよびdenyの，要素指定および統合指定の要素名解釈

delete ideographicspace，delete space，およびtrimdown ideographicspace指定の結果

without attributeを指定した場合も，名前空間指定は削除できません。

名前空間指定を含んだ要素に対してdeny，およびabsorbを指定した場合，指定されていた名前空間指定が削除されます。また，削除された名前空間が指定されていた属性および要素は，デフォルトの名前空間が指定されます。

5.8.3　allowおよびdenyの指定例

フィルタ情報定義ファイルで，allowおよびdenyを指定する例について説明します。

＜この項の構成＞

(1)　特定の構造だけを削除する場合

(2)　特定の構造とその下位構造すべてを削除する場合

(3)　特定の構造の下位構造すべてを削除する場合（指定した構造は削除しない）

(4)　特定の構造の下位にある特定の構造だけを抽出する場合

(5)　最上位構造から指定する場合

(1)　特定の構造だけを削除する場合

deny△構造名

指定した構造だけを削除します。指定した構造が下位構造を持つ場合，下位構造は削除対象とはなりません。

(2)　特定の構造とその下位構造すべてを削除する場合

deny△構造名.*

「*」は0個以上の任意の構造として扱われるため，指定した構造とその下位構造すべてが削除対象となります。

(3)　特定の構造の下位構造すべてを削除する場合（指定した構造は削除しない）

deny△構造名.?.*

「?」は1個の任意構造として，「*」は0個以上の任意の構造として処理されます。「?.*」と指定した場合は，1個以上の任意の構造として扱われるため，指定した構造の1階層下にある構造とその下位構造すべてが削除対象となります。指定した構造は削除されません。

また，次のように指定しても同じ意味を持ちます。ただし，下記以外にもdenyまたはallowを組み合わせて指定した場合は，優先順位の問題で，意図した結果を得られない可能性があります。

deny△構造名.*
allow△構造名

このように指定した場合は，特定の構造を含めたその下位構造すべてを削除対象としたあとに，特定の構造だけを抽出するように指定します。denyで指定した構造とその下位構造すべてが削除対象となりますが，allowで指定した構造は，deny指定が無効となり，削除されません。

「deny△本文.?.*」と指定した場合のフィルタリング例を次の図に示します。

図5-2　下位構造すべて（指定した構造を除く）を削除する場合のフィルタリング例

(4)　特定の構造の下位にある特定の構造だけを抽出する場合

deny△構造名.?.*
allow△構造名.下位構造名

特定の構造の下位構造すべてを削除するように指定したあとで，ある特定の構造に対して削除を無効とするように指定します。

「allow△構造名.下位構造名」と指定した場合，allow対象となるのは，「下位構造名」の階層で出現する構造です。

「deny△プロパティ.?.*」および「allow△プロパティ.執筆者」と指定した場合のフィルタリング例を次の図に示します。

図5-3　下位にある特定の構造だけを抽出する場合のフィルタリング例

(5)　最上位構造から指定する場合

allow△.構造名1.構造名2

先頭の構造名の直前に「.」（ピリオド）を付けることで，最上位からの指定として扱われます。

5.8.4　複合指定例

allowまたはdenyと，absorbを合わせて指定した場合は，指定した順序とは関係なく，必ずallowまたはdeny指定がabsorb指定よりも先に処理されます。

allowまたはdenyと，absorbを複合指定した場合のフィルタリング処理例を次の図に示します。

図5-4　複合指定した場合のフィルタリング例

5.9　XML変換ライブラリのエラーメッセージ

XML変換ライブラリのエラーメッセージについて説明します。

XML変換ライブラリでエラーが発生した場合，XML Extensionのユティリティのメッセージは標準エラー出力に，ESIS-B形式生成時にXML変換ライブラリが出力するメッセージは，ESIS-B生成時のメッセージにそれぞれ出力されます。

なおＸＭＬ変換ライブラリのメッセージには，ここで説明した以外のメッセージが出力される場合もあります。詳細は「付録F　エラーメッセージ」を参照してください。

＜この節の構成＞

5.9.1　メッセージの記述形式

5.9.2　メッセージ一覧

5.9.1　メッセージの記述形式

XML変換ライブラリのメッセージの記述形式を次に示します。

＜この項の構成＞

(1)　標準エラーに出力されるメッセージ

(2)　ESIS-B形式生成時に出力されるメッセージ

(1)　標準エラーに出力されるメッセージ

XXXXX-Y メッセージテキスト

メッセージの意味を説明しています。
（P）メッセージを受け取ったプログラマの処置を示します。
［対策］メッセージを受け取ったHiRDB管理者の処置を示します。

(2)　ESIS-B形式生成時に出力されるメッセージ

KFPY99999-I (dddddd)xxxxx-y : zzzzz

dddddd：プラグインモジュール名

XML Extensionでは次のモジュール名が出力されます。

_phdxml：XMLデータ型プラグインで出力したメッセージ

xxxxx：XML ExtensionでのメッセージID

y：エラーメッセージの重要度

次のどれかが出力されます。

I：情報メッセージ

W：警告メッセージ

E：エラーメッセージ

KECXで始まるエラーメッセージはCosminexus XML Processorのエラーメッセージです。詳細はマニュアル「Cosminexus XML Processor　ユーザーズガイド」を参照してください。また，Java標準の例外にはエラーコードが含まれていません。詳細はエラーメッセージを参照してください。

なお，［対策］の「保守員に連絡してください」とは，購入時の契約に基づいて，システム管理者が弊社問い合わせ窓口へ連絡することを示します。

5.9.2　メッセージ一覧

＜この項の構成＞

(1)　標準エラーに出力されるメッセージ

(2)　 ESIS-B形式生成時に出力されるメッセージ

(1)　標準エラーに出力されるメッセージ

70010-I Usage:phdxmlcnv -h definition_file -e error_file -m {SJIS_MS | SJIS_JIS | SJIS | UTF_8_MS | UTF_8_JIS | EUC_JP | US_ASCII } [-r]

ユティリティコマンドの形式を示します。
［対策］なし

70011-W phdxmlcnv command warning occurred

phdxmlcnvコマンドは終了しました。ただし，一部変換に失敗したXMLデータがあります。
［対策］エラーファイルに出力されるメッセージを参照し，XMLデータを見直してください。

70012-E The environment value aa..aa can not specify bb..bb

環境変数の値が不正です。
aa..aa：環境変数名
bb.bb：指定している値
［対策］環境変数を見直してください。

70013-E File aa..aa open Failed. detail=bb..bb

ファイルのオープンに失敗しました。
aa..aa：オープンに失敗したファイル名
bb.bb：詳細エラーメッセージ
［対策］ファイルを確認してください。

70014-E File I/O error.filename=aa..aa detail=bb..bb

ファイルアクセス中にエラーが発生しました。
aa..aa：アクセス中にエラーが発生したファイル名
bb.bb：詳細エラーメッセージ
［対策］ファイルを確認してください。

(2)　 ESIS-B形式生成時に出力されるメッセージ

70000-E Element name exceeds maximum length.

指定したXMLデータファイルには4096バイトを超える要素名が含まれています。
［対策］出力に指定した文字コード換算で4096バイトを超える要素名は使用できません。XMLデータファイルを見直してください。

70001-E Attribute name exceeds maximum length.

指定したXMLデータファイルには4096バイトを超える属性名が含まれています。
［対策］出力に指定した文字コード換算で4096バイトを超える属性名は使用できません。XMLデータファイルを見直してください。

70002-E Target of processing instruction exceeds maximum length.

指定したXMLデータファイルには4096バイトを超える処理命令ノードのターゲット名が含まれています。
［対策］出力に指定した文字コード換算で4096バイトを超える処理命令ノードのターゲット名は使用できません。XMLデータファイルを見直してください。

70003-E Namespace prefix exceeds maximum length.

指定したXMLデータファイルには4096バイトを超える名前空間接頭語が含まれています。
［対策］出力に指定した文字コード換算で4096バイトを超える名前空間接頭語は使用できません。XMLデータファイルを見直してください。

70004-E The depth of the hierarchy of the element exceeds a limit value.

指定したXMLデータ内の要素のネストが100を超えています。
［対策］要素のネストは最大100ネストまでです。XMLデータを見直してください。

70005-E XML file exceeds maximum size.

指定したXMLデータのサイズがシステムの限界を超えています。
［対策］XMLデータのサイズを見直してください。

70006-E Illegal property ID. :aa

setPropertyメソッドの第一引数に既定されていない値を指定しています。
aa：指定した値
［対策］setPropertyの引数を見直してください。

70007-E Illegal property value. :aa

setPropertyメソッドの第二引数に既定されていない値を指定しています。
aa：指定した値
［対策］setPropertyの引数を見直してください。

70008-E createESISB argument is null.

createESISBメソッドの引数にnullを指定しています。
［対策］createESISBの引数を見直してください。

70009-E Fatal error occurred.detail=aa..aa

XML変換ライブラリ内で内部矛盾が発生しました。
aa.aa：内部矛盾の詳細メッセージ
［対策］保守員に連絡してください。

70016-E Filter syntax error.filename=aa line=bb detail=cc..cc

指定したフィルタ情報定義ファイルの構文が間違っています。
aa：フィルタ情報定義ファイル名
bb：定義が間違っている行番号
cc：間違っている定義の詳細情報
［対策］フィルタ情報定義ファイルを見直してください。

6.　推奨する運用方法

この章では，XML Extensionの推奨する運用方法について説明します。

＜この章の構成＞

6.1　推奨するデータ登録の運用方法

6.2　性能向上の運用

6.3　ログおよびバックアップの取得方式

6.1　推奨するデータ登録の運用方法

＜この節の構成＞

6.1.1　登録運用の種類

6.1.2　推奨する登録運用

6.1.1　登録運用の種類

XML Extensionで提供している機能を利用して，次のような運用方法でデータを登録できます。

UAPの更新による運用
INSERT文またはUPDATE文を使用し，UAPでデータを登録する方法です。

バッチ登録による運用
HiRDBの「pdload（データベース作成ユティリティ）」を使用してデータを登録する方法です。

プラグインインデクスの遅延一括作成による運用
インデクスを作成しないでUAPでデータを登録します。UAPの終了後，一括してインデクスを作成する方法です。
XML Extensionは，プラグインインデクスの遅延一括作成機能をサポートしています。プラグインインデクスの遅延一括作成については，マニュアル「HiRDB　システム運用ガイド」を参照してください。

インデクス作成方法に初期分割登録を指定してインデクスを作成する運用
大量のXMLデータまたは文字列データを表に登録したあと，空のインデクスだけを作成し，「phjstartidx（インデクス作成開始ユティリティ）」を実行してインデクスへXMLデータまたは文字列データを登録する運用

インデクス作成方法に分割遅延登録を指定してインデクスを作成する運用
インデクスを作成しないでUAPでデータを登録したあと，一括してインデクスを作成する方法です。
「プラグインインデクスの遅延一括作成による運用」に比べて，次のような特長があります。

ユティリティを使用してインデクスを作成する場合，作成時間または作成件数を指定できるため，柔軟に運用できます。

遅延登録するかどうかを，列（インデクス）単位で指定できます。

登録・検索同時実行を併用することで，ユティリティによるインデクス作成中に検索が実行できます。

登録・検索同時実行による運用
排他制御の単位を小さくすることで，SQLによる登録と検索の同時実行を可能とする運用

登録運用の長所および短所を表6-1に，登録・検索同時実行による運用の長所および短所を表6-2に示します。

表6-1　XML Extensionの登録運用の長所および短所

方式
長所
短所

UAPの更新による運用
INSERT文またはUPDATE文による通常の更新運用ができます
登録済みのデータの増大に伴い，登録時間および登録単位のログ量が増大します

バッチ登録による運用

一括してデータ更新ができます

1件ずつデータ登録するよりもログ量が削減できます※

なし

プラグインインデクスの遅延一括作成による運用

UAPのスループットが通常の更新に比べて向上します

ログ量はバッチ登録と同等です

登録データの検索がインデクスを作成するまで実行できません

インデクスは別途作成する必要があります。この間，処理中のXML型およびIXXML型に対する検索およびデータ更新はできません

UPDATE文を実行した場合，元データは削除されるため，検索対象外となります

インデクス作成方法に初期分割登録を指定してインデクス作成をする運用

インデクス作成時の処理時間が短くなります

インデクスへのXMLデータまたは文字列データの登録を時間を区切って実行できます

ログ量はバッチ登録と同じです

インデクス未登録状態のXMLデータまたは文字列データは，検索対象になりません

インデクス作成開始ユティリティを実行し，インデクスへXMLデータまたは文字列データを登録する必要があります

インデクス未登録状態のXMLデータまたは文字列データは，インクリメンタルの対象外になります

分割遅延登録による運用

UAPのスループットが通常の更新と比べて向上します

ログ容量はバッチ登録と同等です

インデクス作成時に，時間と件数を指定できます

登録・検索同時実行と併用できます

登録データの検索がインデクスを作成するまで実行できません

UPDATE文を実行した場合，元データは削除されるため検索対象外となります

注※

1件ずつ登録する場合，ログ量は通常の更新と同じです。

表6-2　登録・検索同時実行による運用の長所および短所

方式
長所
短所

登録・検索同時実行による運用

SQLによる単数の更新系トランザクションと，複数の検索系トランザクションを同時に実行できます

インデクス未作成の場合，複数の更新系トランザクションを同時に実行できます

ほかのユーザが更新中（トランザクションが終了していない状態）のXMLデータまたは文字列データを検索できます

XML Extensionのデータの整合性を確保する排他制御のため，オーバヘッドが掛かります。また，排他制御が競合した場合，一時的に待ち時間が発生します

共用メモリが必要です

ロールバックによる回復処理中のRDエリアに対して検索した場合，「回復中であるため，検索できない」というエラーになる場合があります

登録・検索同時実行を使用しない運用

XML Extensionのデータの整合性確保のための排他制御によるオーバヘッドが掛かりません

共用メモリは不要です

更新系トランザクションと，ほかのトランザクションを同時に実行できません

6.1.2　推奨する登録運用

XML Extensionの推奨する登録運用には，次の3種類の方法があります。

UAPの更新およびバッチ登録による運用

プラグインインデクスの遅延一括作成による運用

インデクス作成方法に初期分割登録を指定してインデクスを作成する運用

また，これらに加えて，次の2種類の登録運用があります。

登録・検索同時実行による運用

インデクス作成方法に分割遅延登録を指定してインデクスを作成する運用

以降，各運用方法について説明します。

＜この項の構成＞

(1)　UAPの更新およびバッチ登録による運用の場合

(2)　プラグインインデクスの遅延一括作成による運用の場合

(3)　インデクス作成方法に初期分割登録を指定してインデクスを作成する運用の場合

(4)　登録・検索同時実行による運用の場合

(5)　インデクス作成方法に分割遅延登録を指定してインデクスを作成する運用の場合

(6)　推奨する組み合わせ

(1)　UAPの更新およびバッチ登録による運用の場合

(a)　運用方法

通常のHiRDBの運用に準じます。

(2)　プラグインインデクスの遅延一括作成による運用の場合

(a)　運用方法

UAPでバッチ運用をする場合に推奨します。

削除要求（UPDATE文またはDELETE文）は即時反映しますが，追加要求は即時反映をしないためデータの整合性が確保できません。したがって，検索運用中の使用は推奨しません。

プラグインインデクスの遅延一括作成については，マニュアル「HiRDB　システム運用ガイド」を参照してください。

(3)　インデクス作成方法に初期分割登録を指定してインデクスを作成する運用の場合

(a)　インデクス作成方法指定の定義

インデクス作成方法指定に初期分割登録を定義してください。

(b)　運用方法

表に大量のXMLデータまたは文字列データを登録したあと，限られた時間単位でインデクスへXMLデータを登録する場合に使用を推奨します。「phjstartidx（インデクス作成開始ユティリティ）」によって，すべてのXMLデータまたは文字列データがインデクスに登録されるまでは，データの整合性を確保できません。したがって，すべてのXMLデータまたは文字列データをインデクスに登録する前に検索を実行する場合には，使用を推奨しません。

注意

インデクス未登録状態のXMLデータまたは文字列データがなくなれば，UAPによるデータ更新の運用，バッチ登録による運用，プラグインインデクスの遅延一括作成による運用に移行できます。

(4)　登録・検索同時実行による運用の場合

(a)　登録・検索同時実行の定義

登録・検索同時実行を定義してください。

(b)　運用方法

SQLによる更新系トランザクションが，検索系トランザクションと同時に実行される環境での使用を推奨します。

注意

インデクス未作成の場合の更新系トランザクション，またはHiRDBのプラグインインデクスの遅延一括作成を使用している場合のINSERT文によって登録する更新系トランザクションは複数同時に実行できますが，それ以外の更新系トランザクションは複数同時に実行できません。

HiRDBが提供しているユティリティによる登録と検索系トランザクションは同時に実行できません。また，XML Extensionの一部のユティリティと検索系トランザクションは同時に実行できません。詳細は「3.　XML Extensionのユティリティ」を参照してください。

インデクスLOB用RDエリアに対してグローバルバッファを指定してください。グローバルバッファを指定しない場合に比べて，登録性能が向上します。

同時実行を設定している場合，データの整合性確保のために，一時的に排他制御をします。このため，同時実行を設定していない場合に比べて，排他制御によるオーバヘッドが掛かります。

ほかのユーザが更新中（トランザクションが終了していない状態）のXMLデータを検索できます。

(5)　インデクス作成方法に分割遅延登録を指定してインデクスを作成する運用の場合

(a)　分割遅延登録用インデクスの定義

分割遅延登録用インデクスを定義するには，次の方法があります。

定義系SQLのCREATE INDEXによって定義します。

「phjmodidx（インデクス情報変更ユティリティ）」によって，インデクス定義を分割遅延登録用インデクスに変更します。

(b)　運用方法

UAPでバッチ運用する場合に推奨します。

INSERT文またはUPDATE文を使用してデータを登録します。

運用の合間に，遅延されている情報をMASTERインデクスへ反映します。
インデクスの作成は，「phjstartidx（インデクス作成開始ユティリティ）」を使用して実行します。

検索処理とインデクス作成の同時実行する場合は，ユティリティ実行時に同時実行指定（-w nowait）を指定します。また，サーバ側の定義を登録・検索同時実行で定義します。

分割遅延登録の開始／終了
即時更新／分割遅延登録の切り替えは，「phjdelay（インデクス分割遅延登録運用変更ユティリティ）」を使用します。運用形態に合わせて選択してください。

注意

削除要求（UPDATE文またはDELETE文）は即時反映します。しかし，追加要求は即時反映をしないため，データの整合性が確保できません。そのため，インデクス未作成XMLデータに対して検索が必要である場合は推奨しません。

分割遅延登録用領域使用率が100%になると，それ以上分割遅延登録を実行できません。100%にならないように，インデクスへ反映してください。インデクスへの反映を時間・件数で中断する場合は，使用率は下がりません。
使用率を下げるためには，すべての未反映XMLデータまたは文字列をインデクスに反映してください。分割遅延登録用領域を使い切った場合のSQLコマンドについては，環境定義ファイルによって，エラーリターン／即時更新を選択できます。

即時更新へ切り替える際に，インデクス未登録XMLデータがあるときはすべて登録します。時間・件数による中断はできないので注意してください。

(6)　推奨する組み合わせ

登録運用を実行する場合の推奨するパラメタの組み合わせを次の表に示します。

表6-3　登録運用で推奨するパラメタの組み合わせ

項番 | create index文のプラグインオプション | 環境定義ファイルの設定項目 | phjstartidxの-wオプション
phd_search_wait
1 | CREATEMODE=2 | FLEX_AREA | wait | wait
2 | CREATEMODE=2 | FLEX_AREA | nowait | nowait
3 | CREATEMODE=3 | FLEX_AREA | nowait_with_update | nowait_with_update

1に適した業務

インデクス作成または更新をバッチで実行し，かつインデクス作成中にほかの業務を実行しない業務に適しています。なお，この業務では，データ更新と同時に全文検索を実行する必要がないことが条件となります。

2に適した業務

インデクス作成または更新をバッチで実行し，かつインデクス作成中に検索を実行する業務に適しています。この場合，検索時には，SELECT文の排他オプションにはwithout_lock_nowaitだけが指定できます。なお，この業務では，データ更新と同時に全文検索を実行する必要がないことが条件となります。

3に適した業務

データの更新から少しあと（10分～1時間後）に，全文検索を実行する業務に適しています。またインデクス作成，更新，または更新中に更新系SQLを実行する必要がある業務にも適しています。

6.2　性能向上の運用

この節では，性能向上を目的とした機能，およびその運用方法について説明します。

＜この節の構成＞

6.2.1　グローバルバッファ管理の運用

6.2.1　グローバルバッファ管理の運用

XML Extensionのデータや，インデクス格納用RDエリアにグローバルバッファを指定する運用を行うと，データの入出力でシステムにかかる負荷を削減できます。

また，インデクス用グローバルバッファ管理方式は最適化指定ができます。最適化指定をすると，インデクスの管理情報を優先的にグローバルバッファに残すことで，最適化指定をしない場合に比べて，グローバルバッファを効率的に使用できます。グローバルバッファサイズを100メガバイト以上確保する場合は，最適化指定を行う運用を推奨します。

6.3　ログおよびバックアップの取得方式

この節では，ログ取得の方法およびバックアップを取得する方法について説明します。

＜この節の構成＞

6.3.1　登録運用のログ取得方式の設定について

6.3.2　バックアップ取得方法

6.3.1　登録運用のログ取得方式の設定について

登録運用のログ取得方式には，次の3種類のモードがあります。あらかじめログ量の見積もりをして，ログ量が不足しないように運用してください。

ログ取得モード

更新前ログ取得モード

ログレスモード

各モードの推奨する運用方法について次に説明します。

＜この項の構成＞

(1)　ログ取得モード

(2)　更新前ログ取得モード

(3)　ログレスモード

(1)　ログ取得モード

UAPから登録する場合に推奨します。

また，ログ取得モードを選択する場合は，表定義の列回復制約にALLを指定してください。詳細については，マニュアル「HiRDB　SQLリファレンス」を参照してください。

(2)　更新前ログ取得モード

HiRDBの「pdload（データベース作成ユティリティ）」使用時，および遅延更新機能からMASTERインデクスへの反映をする場合に推奨します。

更新が終わったあとは，必ずバックアップを取得してください。バックアップは，HiRDBの「pdcopy（データベース複写ユティリティ）」で取得してください。

(3)　ログレスモード

大量データに対するインデクス一括作成の場合に推奨します。ログを取得しない運用では，障害が発生した場合，データが回復されません。必ず，正常終了後にバックアップを取得してください。また，障害発生に備え，HiRDBのログレス運用の説明に従い，運用してください。

なお，検索・登録同時実行では，ログレスモードでは運用できません。

6.3.2　バックアップ取得方法

XML Extensionのデータのバックアップ，および運用環境のバックアップについて説明します。

＜この項の構成＞

(1)　データのバックアップ

(2)　運用環境のバックアップ

(1)　データのバックアップ

データのバックアップは，HiRDBの「pdcopy（データベース複写ユティリティ）」で取得してください。pdcopyの使用方法は，マニュアル「HiRDB　システム運用ガイド」および「HiRDB　コマンドリファレンス」を参照してください。

(2)　運用環境のバックアップ

XML Extensionの運用環境のバックアップを行う場合は，HiRDBの各種設定に加えてXML Extensionとして以下の情報のバックアップが必要です。

(a)　同義語辞書

同義語辞書のバックアップは，OSにより次のどちらかの方法で行ってください。

UNIXの場合

同義語辞書バックアップユティリティを使用します。同義語辞書バックアップユティリティの詳細については，「3.2.3　phdsyndicbkup（同義語辞書バックアップユティリティ）」を参照してください。

Windowsの場合

次に示す同義語辞書データをコピーしてください。

%PDDIR%¥plugin¥_phdxml¥dic※

注※

ディレクトリ名称がdicで始まるすべてのディレクトリ，およびディレクトリ内ファイルをコピーします。

(b)　インデクス定義ファイル

次のディレクトリにインデクス定義ファイルが存在する場合は，コピーしてください。

UNIXの場合

$PDDIR/plugin/_phjxml/idx_def

英文デリミタファイル

英文削除コードファイル

英文不要語ファイル

Windowsの場合

%PDDIR%¥plugin¥_phjxml¥idx_def

英文デリミタファイル

英文削除コードファイル

英文不要語ファイル

(c)　環境定義ファイル

次のディレクトリ，およびディレクトリ内のファイルをコピーしてください。

UNIXの場合

$PDDIR/plugin/_phjxml/conf

$PDDIR/plugin/_phdxml/conf

Windowsの場合

%PDDIR%¥plugin¥_phjxml¥conf

%PDDIR%¥plugin¥_phdxml¥conf

付録

＜この付録の構成＞

付録A　検索に使用できる文字

付録B　ディレクトリおよびファイル構成

付録C　資源の排他

付録D　障害発生時の運用方法

付録E　系切り替え

付録F　エラーメッセージ

付録G　用語解説

付録A　検索に使用できる文字

ここでは，XML Extensionで検索に使用できる文字に関する注意事項について説明します。

＜この節の構成＞

(1)　検索に使用できる文字

(2)　検索する文字に関する注意

(1)　検索に使用できる文字

検索に使用できる文字を，表A-1，表A-2および表A-3に示します。

表A-1　検索に使用できる文字（HiRDBの文字コード種別がSHIFT-JISのとき）

文字種
長さ（バイト）
配置

2バイトコードの1バイト目
2バイトコードの2バイト目

文字コード
1バイト
文字コード
1バイト
0x20～0x7E
0xA1～0xDF
－

2バイト
文字コード
2バイト
0x81～0x9F
0xE0～0xFC
0x40～0x7E
0x80～0xFC

制御コード
JIS制御
文字コード
1バイト
0x09
－

表A-2　検索に使用できる文字（HiRDBの文字コード種別がEUCのとき）（UNIXの場合）

文字種
長さ（バイト）
配置

2バイトコードの1バイト目
2バイトコードの2バイト目

文字コード
1バイト
文字コード
1バイト
0x20～0x7E
－

2バイト
文字コード
2バイト
0x8E
0xA1～0xDF

0xA1～0xFE
0xA1～0xFE

制御コード
JIS制御
文字コード
1バイト
0x09
－

表A-3　検索に使用できる文字（HiRDBの文字コード種別がutf-8のとき）

コードポイント | 1バイト | 2バイト | 3バイト | 4バイト | 5バイト | 6バイト
U+00000009，U+00000020～U+0000007E | 09，20～7E※ |  |  |  |  |
U+00000080～U+000007FF | C280～DFBF |  |  |  |
U+00000800～U+0000FFFF | E0A080～EFBFBF |  |  |
U+00010000～U+0010FFFF | F0908080～F48FBFBF |  |

注※

UCS4の範囲の制御文字については，記述できない範囲があります。

(2)　検索する文字に関する注意

検索条件式に表A-1，表A-2および表A-3に示す以外の文字を使用したり，HiRDBの文字コード種別と異なる文字を使用した場合，検索条件式のエラーが発生したり，検索結果が期待した結果と異なるときがあります。

付録B　ディレクトリおよびファイル構成

＜この節の構成＞

付録B.1　ディレクトリおよびファイル構成（UNIXの場合）

付録B.2　ディレクトリおよびファイル構成（Windowsの場合）

付録B.1　ディレクトリおよびファイル構成（UNIXの場合）

ここでは，XML ExtensionをHiRDBに登録したあとの，XMLデータ型プラグインとIXXMLインデクス型プラグインのディレクトリおよびファイル構成を次の表に示します。

表B-1　XMLデータ型プラグインとIXXMLインデクス型プラグインのディレクトリおよびファイル構成（UNIXの場合）

ディレクトリ名 | ファイル名 | 説明
$PDDIR/plugin/_phdxml | － | XMLデータ型プラグインを格納するディレクトリ
$PDDIR/plugin/_phdxml/bin | － | XMLデータ型プラグインのユティリティを格納するディレクトリ
| phdsyndicreg | 同義語辞書登録ユティリティ
phdsyndicrm | 同義語辞書削除ユティリティ
phdsyndicbkup | 同義語辞書バックアップユティリティ
$PDDIR/plugin/_phdxml/conf | － | XMLデータ型プラグインのコンフィグレーションファイルを格納するディレクトリ
$PDDIR/plugin/_phdxml/dic | － | 同義語辞書格納ディレクトリ
$PDDIR/plugin/_phdxml/dic_c
$PDDIR/plugin/_phdxml/dic_w
$PDDIR/plugin/_phdxml/dic_y
$PDDIR/plugin/_phdxml/dic_cw
$PDDIR/plugin/_phdxml/dic_cy
$PDDIR/plugin/_phdxml/dic_wy
$PDDIR/plugin/_phdxml/dic_cwy
$PDDIR/plugin/_phdxml/dic_cd
$PDDIR/plugin/_phdxml/dic_cdr
$PDDIR/plugin/_phdxml/dic_cr
$PDDIR/plugin/_phdxml/dic_cwd
$PDDIR/plugin/_phdxml/dic_cwdr
$PDDIR/plugin/_phdxml/dic_cwr
$PDDIR/plugin/_phdxml/dic_cwyd
$PDDIR/plugin/_phdxml/dic_cwydr
$PDDIR/plugin/_phdxml/dic_cwyr
$PDDIR/plugin/_phdxml/dic_cyd
$PDDIR/plugin/_phdxml/dic_cydr
$PDDIR/plugin/_phdxml/dic_cyr
$PDDIR/plugin/_phdxml/dic_d
$PDDIR/plugin/_phdxml/dic_dr
$PDDIR/plugin/_phdxml/dic_r
$PDDIR/plugin/_phdxml/dic_wd
$PDDIR/plugin/_phdxml/dic_wdr
$PDDIR/plugin/_phdxml/dic_wr
$PDDIR/plugin/_phdxml/dic_wyd
$PDDIR/plugin/_phdxml/dic_wydr
$PDDIR/plugin/_phdxml/dic_wyr
$PDDIR/plugin/_phdxml/dic_yd
$PDDIR/plugin/_phdxml/dic_ydr
$PDDIR/plugin/_phdxml/dic_yr
$PDDIR/plugin/_phdxml/etc | － | XMLデータ型プラグイン登録用ファイル格納ディレクトリ
_phdxml.adt | XMLデータ型プラグイン定義ファイル
_phdxml.pic | XMLデータ型プラグインPICファイル
$PDDIR/_phdxml/jcnv | － | XML変換ライブラリ格納ディレクトリ
phdxmlcnv | ESIS-B形式作成ユティリティ
XMLConverter.jar | XML変換ライブラリUAP用jarファイル
$PDDIR/plugin/_phdxml/sample | － | XMLデータ型プラグインのサンプルファイルを格納するディレクトリ
bes01 | BES単位指定コンフィグレーションファイルサンプルファイル
SampleMakeESISB.java | XML変換ライブラリを使用したサンプルコーディング
pdplgsys | システム単位指定コンフィグレーションファイルサンプルファイル
pdplgutsys | ユニット単位指定コンフィグレーションファイルサンプルファイル
$PDDIR/plugin/_phdxml/spool | － | XMLデータ型プラグインの障害情報格納ディレクトリ
$PDDIR/plugin/_phdxml/tmp | － | 作業用ファイル格納ディレクトリ
$PDDIR/plugin/_phjxml | － | IXXMLインデクス型プラグインを格納するディレクトリ
$PDDIR/plugin/_phjxml/bin | － | IXXMLインデクス型プラグインのユティリティを格納するディレクトリ
phjidxls | インデクス情報の取得ユティリティ
phjincmt | インデクス情報のインクリメンタルユティリティ
phjexpnd | インデクスの拡張ユティリティ
phjstartidx | インデクス作成開始ユティリティ
phjmodidx | インデクス情報変更ユティリティ
phjcond | インデクス詰め替えユティリティ
phjdelay | インデクス分割遅延登録運用変更ユティリティ
$PDDIR/plugin/_phjxml/conf | － | IXXMLインデクス型プラグインのコンフィグレーションファイルを格納するディレクトリ
$PDDIR/plugin/_phjxml/etc | － | IXXMLインデクス型プラグイン登録用ファイル格納ディレクトリ
_phjxml.idx | IXXMLインデクス型プラグイン定義ファイル
_phjxml.pic | IXXMLインデクス型プラグインPICファイル
$PDDIR/plugin/_phjxml/sample | － | IXXMLインデクス型プラグインのサンプルファイルを格納するディレクトリ
pdplgsys | システム単位指定コンフィグレーションファイルサンプルファイル
pdplgutsys | ユニット単位指定コンフィグレーションファイルサンプルファイル
bes01 | BES単位指定コンフィグレーションファイルサンプルファイル
$PDDIR/plugin/_phjxml/spool | － | IXXMLインデクス型プラグインの障害情報格納ディレクトリ
$PDDIR/plugin/_phjxml/tmp | － | 作業用ファイル格納ディレクトリ

（凡例）

－：該当しない。

付録B.2　ディレクトリおよびファイル構成（Windowsの場合）

ここでは，XML ExtensionをHiRDBに登録したあとの，XMLデータ型プラグインとIXXMLインデクス型プラグインのフォルダおよびファイル構成を次の表に示します。

表B-2　XMLデータ型プラグインとIXXMLインデクス型プラグインのフォルダおよびファイル構成（Windowsの場合）

フォルダ名 | ファイル名 | 説明
%PDDIR%¥plugin¥_phdxml | － | XMLデータ型プラグインを格納するフォルダ
%PDDIR%¥plugin¥_phdxml¥bin | － | XMLデータ型プラグインのユティリティを格納するフォルダ
phdsyndicreg.exe | 同義語辞書登録ユティリティ
phdsyndicrm.exe | 同義語辞書削除ユティリティ
%PDDIR%¥plugin¥_phdxml¥conf | － | XMLデータ型プラグインのコンフィグレーションファイルを格納するフォルダ
%PDDIR%¥plugin¥_phdxml¥dic | － | 同義語辞書格納フォルダ
%PDDIR%¥plugin¥_phdxml¥dic_c
%PDDIR%¥plugin¥_phdxml¥dic_w
%PDDIR%¥plugin¥_phdxml¥dic_y
%PDDIR%¥plugin¥_phdxml¥dic_cw
%PDDIR%¥plugin¥_phdxml¥dic_cy
%PDDIR%¥plugin¥_phdxml¥dic_wy
%PDDIR%¥plugin¥_phdxml¥dic_cwy
%PDDIR%¥plugin¥_phdxml¥dic_cd
%PDDIR%¥plugin¥_phdxml¥dic_cdr
%PDDIR%¥plugin¥_phdxml¥dic_cr
%PDDIR%¥plugin¥_phdxml¥dic_cwd
%PDDIR%¥plugin¥_phdxml¥dic_cwdr
%PDDIR%¥plugin¥_phdxml¥dic_cwr
%PDDIR%¥plugin¥_phdxml¥dic_cwyd
%PDDIR%¥plugin¥_phdxml¥dic_cwydr
%PDDIR%¥plugin¥_phdxml¥dic_cwyr
%PDDIR%¥plugin¥_phdxml¥dic_cyd
%PDDIR%¥plugin¥_phdxml¥dic_cydr
%PDDIR%¥plugin¥_phdxml¥dic_cyr
%PDDIR%¥plugin¥_phdxml¥dic_d
%PDDIR%¥plugin¥_phdxml¥dic_dr
%PDDIR%¥plugin¥_phdxml¥dic_r
%PDDIR%¥plugin¥_phdxml¥dic_wd
%PDDIR%¥plugin¥_phdxml¥dic_wdr
%PDDIR%¥plugin¥_phdxml¥dic_wr
%PDDIR%¥plugin¥_phdxml¥dic_wyd
%PDDIR%¥plugin¥_phdxml¥dic_wydr
%PDDIR%¥plugin¥_phdxml¥dic_wyr
%PDDIR%¥plugin¥_phdxml¥dic_yd
%PDDIR%¥plugin¥_phdxml¥dic_ydr
%PDDIR%¥plugin¥_phdxml¥dic_yr
%PDDIR%¥plugin¥_phdxml¥etc | － | XMLデータ型プラグイン登録用ファイル格納フォルダ
_phdxml.adt | XMLデータ型プラグイン定義ファイル
_phdxml.pic | XMLデータ型プラグインPICファイル
%PDDIR%¥plugin¥_phdxml¥jcnv | － | XML変換ライブラリの格納フォルダ
phdxmlcnv.bat | ESIS-B形式作成ユティリティ
XML_Converter.jar | XML変換ライブラリUAP用jarファイル
%PDDIR%¥plugin¥_phdxml¥sample | － | XMLデータ型プラグインのサンプルファイルを格納するフォルダ
bes01 | BES単位指定コンフィグレーションファイルサンプルファイル
SampleMakeESISB.java | XML変換ライブラリを使用したサンプルコーディング
pdplgsys | システム単位指定コンフィグレーションファイルサンプルファイル
pdplgutsys | ユニット単位指定コンフィグレーションファイルサンプルファイル
%PDDIR%¥plugin¥_phdxml¥spool | － | XMLデータ型プラグインの障害情報格納フォルダ
%PDDIR%¥plugin¥_phdxml¥tmp | － | 作業用ファイル格納フォルダ
%PDDIR%¥plugin¥_phjxml | － | IXXMLインデクス型プラグインを格納するフォルダ
%PDDIR%¥plugin¥_phjxml¥bin | － | IXXMLインデクス型プラグインのユティリティを格納するフォルダ
phjidxls.exe | インデクス情報の取得ユティリティ
phjincmt.exe | インデクス情報のインクリメンタルユティリティ
phjexpnd.exe | インデクスの拡張ユティリティ
phjstartidx.exe | インデクス作成開始ユティリティ
phjcond.exe | インデクス詰め替えユティリティ
phjmodidx.exe | インデクス情報変更ユティリティ
phjdelay.exe | インデクス分割遅延登録運用変更ユティリティ
%PDDIR%¥plugin¥_phjxml¥conf | － | IXXMLインデクス型プラグインのコンフィグレーションファイルを格納するフォルダ
%PDDIR%¥plugin¥_phjxml¥etc | － | IXXMLインデクス型プラグイン登録用ファイル格納フォルダ
_phjxml.idx | IXXMLインデクス型プラグイン定義ファイル
_phjxml.pic | IXXMLインデクス型プラグインPICファイル
%PDDIR%¥plugin¥_phjxml¥sample | － | IXXMLインデクス型プラグインのサンプルファイルを格納するフォルダ
pdplgsys | システム単位指定コンフィグレーションファイルサンプルファイル
pdplgutsys | ユニット単位指定コンフィグレーションファイルサンプルファイル
bes01 | BES単位指定コンフィグレーションファイルサンプルファイル
%PDDIR%¥plugin¥_phjxml¥spool | － | IXXMLインデクス型プラグインの障害情報格納フォルダ
%PDDIR%¥plugin¥_phjxml¥tmp | － | 作業用ファイル格納フォルダ

（凡例）

－：該当しない。

付録C　資源の排他

XML Extensionは，HiRDBの資源である論理ファイルを使用する場合があり，HiRDBの排他制御の規則に従っています。

ここでは，XML Extensionが使用する資源の排他規則について説明します。

＜この節の構成＞

付録C.1　排他取得内容

付録C.2　デッドロックの防止

付録C.1　排他取得内容

＜この項の構成＞

(1)　XMLデータ型プラグインおよびIXXMLインデクス型プラグインの場合

(1)　XMLデータ型プラグインおよびIXXMLインデクス型プラグインの場合

XMLデータ型プラグインおよびIXXMLインデクス型プラグインの論理ファイルに対する排他制御のモードを表C-1および表C-2に示します。論理ファイルとHiRDBの排他制御の詳細については，マニュアル「HiRDB　UAP開発ガイド」を参照してください。

表C-1　SQL実行時の排他制御のモード（SQLに対応した論理ファイルの使用）

SQL文 | XMLデータ型プラグイン | IXXMLインデクス型プラグイン
同時実行なし | 同時実行あり | 同時実行なし | 同時実行あり
検索 | PR | SR | PR | SR
更新 | EX | SU※ | EX | PU※
追加 | EX | SU※ | EX | PU※
削除 | × | × | EX | PU※
LOCK文 | × | × | × | ×
表削除 | × | × | × | ×
インデクス定義 | × | × | EX | EX
インデクス削除 | × | × | × | ×
全行削除 | × | × | EX | PU※
表定義変更 | × | × | × | ×

（凡例）

PR：共用モード

EX：排他モード

SR：意図共用モード

SU：意図排他モード

PU：共用意図排他モード

×：同時実行できません。

注※

データ更新時は，XML Extensionのデータの整合性確保のために一時的に排他モード（EX）へ遷移しますが，整合性確保後，遷移前の排他制御のモードへ戻ります。

表C-2　ユティリティコマンドの排他制御のモード

コマンド
表格納
RD
エリア
抽象データ型
列定義
LOB用RD
エリア
表
ノーウエイト表
インデクス格納RD
エリア
インデクス
ページ
行
キー値
論理ファイル

phjidxls
－
－
－
－
ex/sr
－
－
－
－
ex/sr

phjincmt
－
－
－
－
ex
－
－
－
－
ex

phjexpnd
－
－
－
－
ex
－
－
－
－
ex

phjmodidx
－
－
－
－
ex
－
－
－
－
ex

phjstartidx
SR
SR
PR
－
SU
EX/PU
－
－
－
EX/PU

phjcond
－
－
－
－
ex
－
－
－
－
ex

phjdelay
SR
SR
PR
－
EX
EX
－
－
－
EX

（凡例）

左/右：左=同時実行なし　右=同時実行あり

PRまたはpr：共用モード

EXまたはex：排他モード

SRまたはsr：意図共用モード

SUまたはsu：意図排他モード

PUまたはpu：共用意図排他モード

－：該当しません。

大文字は，表またはインデクスが存在するすべてのサーバ上で排他を取得します。

小文字は，指定されたRDエリアが存在するサーバ上でだけ排他を取得します。

付録C.2　デッドロックの防止

XML型列を含む表の行に対して，同一トランザクション内で行削除（DELETE）に続いてほかの処理を実行した場合，デッドロックが発生するおそれがあります。この場合は，行削除（DELETE）のあとにコミット（COMMIT）を実行してください。

付録D　障害発生時の運用方法

XML Extensionで障害が発生した場合，HiRDBの管理者は出力されたメッセージを確認し，「付録F　エラーメッセージ」を参照して，障害の原因を調べてください。

出力されたメッセージがHiRDB本体からの場合，必要な処置はHiRDBの障害発生時の運用に従います。マニュアル「HiRDB　メッセージ」または「HiRDB　システム運用ガイド」を参照して対処してください。

なお，XML Extension固有の運用について次に示します。

XML Extension実行時に障害が発生した場合は，障害情報を出力します。障害情報が不要となった場合は，次のディレクトリ内のファイルをすべて削除してください。ファイルの削除は，HiRDBを停止させたあとで実行してください。

UNIXの場合

$PDDIR/plugin/_phdxml/spool
$PDDIR/plugin/_phdxml/tmp
$PDDIR/plugin/_phjxml/spool
$PDDIR/plugin/_phjxml/tmp

Windowsの場合

%PDDIR%¥plugin¥_phdxml¥spool
%PDDIR%¥plugin¥_phdxml¥tmp
%PDDIR%¥plugin¥_phjxml¥spool
%PDDIR%¥plugin¥_phjxml¥tmp

付録E　系切り替え

ここでは，XML Extensionの系切り替え運用について説明します。

HiRDBの系切り替え運用を行う場合は，HiRDBの各種設定に加えてXML Extensionとして以下の設定が必要です。

＜この節の構成＞

(1)　同義語辞書

(2)　インデクス定義ファイル

(3)　環境定義ファイル

(1)　同義語辞書

同義語辞書は待機系にも設定する必要があります。辞書の登録は次のどちらかの方法で行なってください。

待機系HiRDBを起動した状態で，phdsyndicregコマンドを使って待機系に同義語辞書を登録する。

現用系に登録されている以下の同義語辞書データを待機系にコピーする。

UNIXの場合
$PDDIR/plugin/_phdxml/dic※

Windowsの場合
%PDDIR%¥plugin¥_phdxml¥dic※

注※

ディレクトリ名称がdicで始まるすべてのディレクトリ，およびディレクトリ内ファイルを待機系にコピーします。

(2)　インデクス定義ファイル

次のディレクトリにインデクス定義ファイルが存在する場合は，待機系にコピーします。

UNIXの場合
$PDDIR/plugin/_phjxml/idx_def

英文デリミタファイル

英文削除コードファイル

英文不要語ファイル

Windowsの場合
%PDDIR%¥plugin¥_phjxml¥idx_def

英文デリミタファイル

英文削除コードファイル

英文不要語ファイル

(3)　環境定義ファイル

現用系と同じ定義で運用してください。

ただし，メモリ・排他資源数等のマシン環境に依存する部分については，待機系マシンに合わせた設定としてください。

付録F　エラーメッセージ

ここでは，XML Extensionのエラーメッセージについて説明します。

XML Extensionでエラーが発生した場合，ユーザエラーのメッセージはSQL連絡領域に，システムで発生したエラーのメッセージはメッセージログに，XML Extensionのユティリティのメッセージは標準エラー出力にそれぞれ出力されます。

＜この節の構成＞

付録F.1　 SQL連絡領域に出力されるメッセージ

付録F.2　メッセージログ・標準エラー出力に出力されるメッセージ

付録F.3　メッセージの記述形式

付録F.4　メッセージ一覧

付録F.1　 SQL連絡領域に出力されるメッセージ

＜この項の構成＞

(1)　エラーコードの詳細化指定をしない場合

(2)　エラーコード詳細化指定をする場合

(1)　エラーコードの詳細化指定をしない場合

エラーコードの詳細化指定をしない場合，SQL連絡領域にメッセージが返却されるときは，HiRDBのメッセージKFPA11997-Eとともに出力されます。出力される形式は次のとおりです。

KFPA11997-E Error occurred during execution of PLUGIN function, "aa....aa"

aa....aaにXML Extensionが出力したメッセージが設定されます。

KFPA11997-Eのメッセージの詳細については，マニュアル「HiRDB　メッセージ」を参照してください。

(2)　エラーコード詳細化指定をする場合

エラーコードの詳細化指定をする場合，SQL連絡領域にメッセージが返却されるときは，HiRDBのメッセージKFPA18xxx-Eとともに出力されます。出力される形式は次のとおりです。なお，エラーコード詳細化するかどうかは，環境定義ファイルで指定できます。

KFPA18xxx-E (dddddd)aa....aa

dddddd：プラグインモジュール名

XML Extensionでは次のどれかが出力されます。

_phjxml：IXXMLインデクス型プラグインで出力したメッセージ

_phdxml：XMLデータ型プラグインで出力したメッセージ

aa....aa：（ID=xxxxx）エラー内容

aa....aaにXML Extensionが出力したメッセージが設定されます。

xxxxxxはXML Extensionが出力したSQLコードの下3けたが設定されます。

出力されるSQLコードを次に示します。

表F-1　SQLコード一覧

分類
詳細要因
対処
SQLコード

リトライ可能エラー
排他エラー，またはロールバック中に実行
再実行してください。
-3000

メモリ不足

再実行してください。

システムリソースを見積もり直して再実行してください。

-3001

リソース関連エラー
共用メモリ不足
リソース定義を見直してください。
-3020

RDエリア容量不足
リソースを見積もり直してください。
-3021

その他リソース不足
リソースを見積もり直して再実行してください。
-3022

登録データエラー
データ不正
登録データを見直してください。
-3040

SQLエラー
検索条件不正
（文法エラー）
検索条件を見直してください。
-3061

CREATE TABLE／CREATE INDEX定義情報不正
PLUGIN句を見直してください。
-3062

各種制限オーバー

定義ファイルを見直してください。

検索条件を見直してください。

-3063

検索条件不正／実行機能不正

検索条件を見直してください。

インデクスを見直してください。

-3064

運用修正
運用定義不正
運用定義を見直してください。
-3080

各種定義ファイル内容不正，またはインデクスが存在しない

各定義ファイルを見直して再実行してください。

インストール環境を見直してください。

運用環境を見直してください。

-3081

関連プログラム不足
関連プログラムを見直してください。
-3082

環境不正（ファイル指定，ディスク）
OSファイルI／Oエラー
ファイルおよびディスクの確認をおこなってから，必要に応じて回復作業をおこなってください。
-3100

DBファイルI／Oエラー
ディスクを確認してから，必要に応じて回復作業をおこなってください。
-3101

その他
HiRDBエラー

HiRDBのメッセージに従って対処してください。

保守員に連絡してください。

-3200

サーバエラー
システム管理者に連絡してください。
-3201

HiRDBセットアップ文字コード不正
システム管理者に連絡してください。
-3202

システムエラー
内部矛盾が発生しました。
保守員に連絡してください。
-3299

付録F.2　メッセージログ・標準エラー出力に出力されるメッセージ

メッセージログ・標準エラー出力に出力される場合，HiRDBのメッセージKFPY99999-Iとともに出力されます。出力される形式は次のとおりです。

KFPY99999-I (dddddd)xxxxx-y : zzzzz

dddddd：プラグインモジュール名

XML Extensionでは下記のどれかが出力されます。

_phdxml：XMLデータ型プラグインで出力したメッセージ

_phjxml：IXXMLインデクス型プラグインで出力したメッセージ

xxxxx：XML ExtensionでのメッセージID

y：エラーメッセージの重要度

次のどれかが出力されます。

I：情報メッセージ

W：警告メッセージ

E：エラーメッセージ

Q：応答待ちメッセージ

zzzzz：XML Extensionの出力したメッセージ

メッセージログに出力されたメッセージは，HiRDBの運用コマンド「pdcat（ファイルの内容表示）」で標準エラー出力に出力できます。

付録F.3　メッセージの記述形式

このマニュアルで説明するメッセージの記述形式を次に示します。

＜この項の構成＞

(1)　SQL連絡領域に出力されるメッセージ

(2)　メッセージログ・標準エラー出力に出力されるメッセージ

(1)　SQL連絡領域に出力されるメッセージ

メッセージテキスト

メッセージの意味を説明しています。
（P）メッセージを受け取ったプログラマの処置を示します。
［対策］メッセージを受け取ったHiRDB管理者の処置を示します。
また，メッセージ中に検索条件式のオフセットを出力する場合，オフセット値が不明のときは「-1」を出力します。

なお，［対策］の「保守員に連絡してください」とは，購入時の契約に基づいて，システム管理者が弊社問い合わせ窓口へ連絡することを示します。

(2)　メッセージログ・標準エラー出力に出力されるメッセージ

XXXXX-Y メッセージテキスト

メッセージの意味を説明しています。
（P）メッセージを受け取ったプログラマの処置を示します。
［対策］メッセージを受け取ったHiRDB管理者の処置を示します。

なお，［対策］の「保守員に連絡してください」とは，購入時の契約に基づいて，システム管理者が弊社問い合わせ窓口へ連絡することを示します。

付録F.4　メッセージ一覧

＜この項の構成＞

(1)　 SQL連絡領域に出力されるメッセージ

(2)　メッセージログに出力されるメッセージ

(3)　標準エラー出力に出力されるメッセージ

(1)　 SQL連絡領域に出力されるメッセージ

（A）

Asterisk symbol exists between pipe symbol and term.

前方一致，後方一致指定の「|」（パイプ）とターム条件の間に「*」（ワイルドカード）が指定されています。
（P）検索条件式を修正して再実行してください。

Attribute exist in specific_and. offset=aa

特定構造検索指定に属性指定があります。
aa：検索条件式のオフセット
（P）検索条件式を修正して再実行してください。

（B）

Brace symbol not match in condition.

検索条件式中の波括弧（ ｛ ，｝ ）が対応していません。
（P）検索条件式を修正して再実行してください。

Bracket symbol not match in condition.

検索条件式中の角括弧（ ［ ，］ ）が対応していません。
（P）検索条件式を修正して再実行してください。

（C）

Cannot open kanarule file. errno=aa file=bb

カタカナルールファイルのオープンに失敗しました。
aa：エラー番号
bb：カタカナルールファイル名
［対策］保守員に連絡してください。

Cannot read kanarule file. errno=aa file=bb

カタカナルールファイルの読み込みに失敗しました。
aa：エラー番号
bb：カタカナルールファイル名
［対策］保守員に連絡してください。

Cannot seek kanarule file. errno=aa file=bb

カタカナルールファイルのシークに失敗しました。
aa：エラー番号
bb：カタカナルールファイル名
［対策］保守員に連絡してください。

Cannot specify "specific_and" in freeword condition. offset=aa

文字列検索ではspecific_andを指定できません。
aa：検索条件式のオフセット
（P）検索条件式を修正して再実行してください。

Cannot specify term of one character in proximity.

ワイルドカード検索または近傍検索に1文字の検索条件が含まれています。
（P）検索条件を変更して再実行してください。

Column not identified.

表・列が特定できません。
（P）抽象データ型関数の列指定にIXXML型列が正しく指定されているか確認してください。IXXML型列を指定して再実行してください。

Comma not exist. offset=aa

検索条件式中の指定が必要な個所「,」（コンマ）が見つかりません。
aa：検索条件式のオフセット
（P）検索条件式を修正して再実行してください。

Comma symbol not exist in condition.

検索条件式中の指定が必要な個所に「,」（コンマ）が見つかりません。
（P）検索条件式を修正して再実行してください。

Config File I/O error.filename=aa..aa,func=bb..bb,code=XX,file=cc..cc,line=YY

コンフィグレーションファイルのアクセス中にエラーを検出しました。
aa..aa：ファイル名
bb..bb：オペレーション
XX：詳細情報
cc..cc：オペレーションを発行したソースファイル名
YY：オペレーションを発行した行
（P）HiRDB管理者に連絡してください。
［対策］メッセージログの内容を確認し，メッセージが出力されている場合はそれに従って対処してください。出力されていない場合は，保守員に連絡してください。

（D）

Define file not exist.filename= aa..aa,func=bb..bb,file=cc..cc,line=XX

指定されたインデクスデリミタファイル，不要語ファイル，または削除コードファイルが存在しません。または，指定できる個数の上限を超えています。
aa..aa：ファイル名
bb..bb：オペレーション
cc..cc：エラーの発生したファイル
XX：エラーの発生した行
［対策］プラグインオプションに指定したファイル名称を確認してください。

Document size is 0 bytes.

登録しようとしているXMLデータのデータサイズが，0バイトです。
（P）XMLデータサイズが0バイトのXMLデータを登録する場合は，NULL値を登録してください。

Document size is too large.

登録しようとしたXMLデータのデータサイズが，XML Extensionの制限値を超えています。
（P）登録XMLデータのXMLデータサイズをXML Extensionの制限値以下にしてください。

Double quote symbol not exist in condition.

単純文字列指定の前後に必要な「"」（ダブルクォーテーション）が見つかりません。
（P）検索条件式を修正して再実行してください。

（E）

Each definition unmatch. value1=Index Option aa, value2=bb

aaとbbの定義の組み合わせは，実行できない組み合わせです。
aa：CREATE INDEXのプラグインオプションに指定したインデクス作成方法
bb：環境定義またはユティリティで指定した同時実行指定（"Lockmode"）
（Ｐ）aaとbbの定義内容を見直してください。
aa=CREATEMODE=3，bb=Lockmodeの場合，データ型プラグインの環境定義ファイルのphd_search_waitに「nowait_with_update」が指定されているかどうかを確認してください。
また，インデクス作成開始ユティリティ（phjstartidx）の-wオプションに，「nowait_with_update」が指定されているかどうかを確認してください。

Enable to use n-gram index.

全文検索対象に指定したXML型の列に，インデクスが定義されていないため，全文検索できません。
または，発行した抽象データ型関数がインデクス専用関数のため，インデクスを使用した検索ができません。
（P）インデクスを定義していない場合は，その列に対してCREATE INDEXでインデクスを定義してください。
または，SQL文を見直して再実行してください。なお，インデクス型プラグイン専用関数の制限については，マニュアル「HiRDB　UAP開発ガイド」を参照してください。

English option extend term library error occurred.(aa,bb)

aa..aa：詳細情報
bb..bb：エラーの発生したファイル名
Text Search Enhancer for Englishのライブラリでエラーが発生しました。
［対策］保守員に連絡してください。

Equal not exist. offset=aa

検索条件式中の指定が必要な個所に＝（イコール）がありません。
aa：検索条件式のオフセット
（P）検索条件式を修正して再実行してください。

Error in Plugin Option aa(XX)

プラグインオプションの指定に誤りがあります。
aa：エラーの発生したファイル
XX：エラーの発生した行
［対策］プラグイン指定を修正し，再度実行してください。

Error occurred in Text Search Plug-in.reason=aa..aa

XML Extensionでエラーが発生しました。
aa..aa：エラー要因
MEMORY：サーバでメモリ不足が発生しています。
HiRDB：HiRDBのサービスでエラーが発生しています。
TS Plug-in：XML Extensionでエラーが発生しています。
（P）エラー要因がMEMORYの場合は，しばらく待って再実行してください。それでも，エラーが発生する場合はHiRDB管理者に連絡してください。
エラー要因がMEMORY以外の場合は，HiRDB管理者に連絡してください。
［対策］エラー要因がMEMORYの場合は，システムのメモリ状態を確認してください。そのほかの場合は，システムログメッセージの内容に従って対処してください。

（F）

Fail to lock aa..aa.

aa..aaの排他に失敗しました。IXXMLインデクス用RDエリアまたはXMLデータ用RDエリアへのアクセスが競合しています。
aa..aa：Index File（IXXMLインデクス用RDエリア）
XML Logical File（XMLデータ用RDエリア）
（P）しばらく待って再実行してください。
［対策］

デッドロックが発生している場合
ユーザプログラムの資源排他を見直してください。

資源排他待ちによるタイムアウトが発生している場合
システム定義，ユニット定義に指定した排他待ち限界経過時間（pd_lck_wait_time）を見直してください。

Fail to lock because file is over the process limit. filename=aa..aa, line=bb..bb.

１プロセスのオープンファイル数が上限を超えました。
aa..aa：ファイル名
bb..bb：オペレーションを発行した行
（P）しばらく待って再実行してください。
［対策］再実行の際にも同様のエラーが発生した場合には，プロセスごとに対応してください。

HiRDBのサーバプロセスの場合
HiRDB管理者に連絡してください。

ユーザ起動によるプロセス（コマンド・ユティリティ）の場合
OSのパラメタのmaxfilesの設定値を変更してください。

Fail to lock because file is over the system limit. filename=aa..aa, line=bb..bb.

システム全体のオープンファイル数が上限を超えました。
aa..aa：ファイル名
bb..bb：オペレーションを発行した行
（P）しばらく待って再実行してください。
［対策］再実行の際にも同様のエラーが発生した場合には，次に示すように対応してください。

OSのパラメタのnfileの設定値を変更する。

コマンドを実行したサーバマシンで動作している不要なプロセスを停止する。

コマンドを実行しない。

Fail to lock because of time over. file=aa..aa, line=bb..bb.

資源排他待ちによるタイムアウトが発生しました。
aa..aa：ファイル名
bb..bb：オペレーションを発行した行
（P）しばらく待って再実行してください。
［対策］システム定義，ユニット定義に指定した排他待ち限界経過時間（pd_lck_wait_timeout）を見直してください。

Fail to thread lock. filename=aa..aa, line=bb..bb.

排他に失敗しました。
aa..aa：ファイル名
bb..bb：オペレーションを発行した行
（P）しばらく待って再実行してください。

Fail to lock .file=aa..aa line=bb..bb.

排他に失敗しました。
aa..aa：ファイル名
bb..bb.：オペレーションを発行した行
（P）しばらく待って再実行してください
［対策］このメッセージの前後にKFPS00440-I，KFPS00441-I，KFPS00451-Iメッセージが出力されている場合はそれにしたがって対処してください。

Fatal error occurred. detail= aa.aa,file= bb..bb ,line= XX

システム内部で自己矛盾を検出しました。
aa..aa：詳細情報
bb..bb：エラーの発生したファイル名
XX：エラーの発生した行
（P）保守員に連絡してください。

File I/O error. filename=aa..aa ,func=bb..bb ,code=XX ,file= cc..cc ,line= YY

システムファイルのアクセス中にエラーを検出しました。
aa..aa：ファイル名
bb..bb：オペレーション
XX：詳細情報
cc..cc：オペレーションを発行したソースファイル名
YY：オペレーションを発行した行
（P）HiRDB管理者に連絡してください。
［対策］メッセージログの内容を確認し，メッセージが出力されている場合はそれに従って対処してください。出力されていない場合は，保守員に連絡してください。

File open error. filename = aa..aa , code =XX

aa..aaに示されるファイルのオープンに失敗しました。
aa..aa：オープンできなかったファイル名
XX：詳細情報
（P）HiRDB管理者に連絡してください。
［対策］メッセージログの内容を確認し，それに従って対処してください。出力されていない場合は，保守員に連絡してください。

File size is over the system limit. filename = aa..aa

aa..aaに示されるファイル容量がシステムの上限を超えました。
aa..aa：サイズがシステムの上限を超えたファイル名
（P）HiRDB管理者に連絡してください。
［対策］ファイルサイズがシステムの上限を超えないように，インデクスを作成してください。

（I）

Illegal character exist after AND/OR. offset=aa

AND/OR指定の後ろの文字が誤っています。
aa：検索条件式のオフセット
（P）検索条件式を修正して再実行してください。

Illegal character exist after structure name.

構造名指定のあとに指定できない文字列があります。指定できる文字は，丸括弧（ （ ，） ），波括弧（ ｛ ，｝ ），角括弧（ ［ ，］ ）です。
（P）検索条件式を修正して再実行してください。

Illegal characters exist after back slash symbol.

「¥」（エスケープ文字）のあとに，指定できる文字以外を指定しています。
（P）検索条件式を修正して再実行してください。

Illegal characters exist after back slash symbol in search term. offset=aa

検索ターム中の「¥」（エスケープ文字）の後ろの文字が誤っています。
aa：検索条件式のオフセット
（P）検索条件式を修正して再実行してください。

Illegal characters exist after back slash symbol. offset=aa

「¥」（エスケープ文字）の後ろの文字が誤っています。
aa：検索条件式のオフセット
（P）検索条件式を修正して再実行してください。

Illegal characters exist after condition. offset=aa

検索条件式の後ろに誤った文字があります。
aa：検索条件式のオフセット
（P）検索条件式を修正して再実行してください。

Illegal characters exist in term condition.

ターム条件中に誤った文字があります。
（P）検索条件式を修正して再実行してください。

Illegal expand option.

SYNONYM，SOUNDEX_EXPに指定している展開モード指定が誤っています。
（P）展開モードの指定内容を修正して再実行してください。

Illegal expand option. offset=aa

異表記展開モード指定が誤っています。
aa：検索条件式のオフセット
（P）検索条件式を修正して再実行してください。

Illegal expansion function invocation.

展開関数に，SOUNDEX_EXP，SYNONYM以外が指定されています。
（P）検索条件式を修正して再実行してください。

Illegal number in proximity distance.

近傍条件に指定された距離の指定が指定可能範囲（0～2,147,483,646）ではありません。
（P）距離の指定を指定可能範囲（0～2,147,483,646）にして，再実行してください。

Illegal operand in proximity distance.

近傍距離指定の演算子に，>=，=，<=以外が指定されています。
（P）近傍条件の内容を修正して再実行してください。

Illegal operand in proximity distance. offset=aa

近傍距離指定の演算子に，>=，=，<=以外が指定されています。
aa：検索条件式のオフセット
（P）検索条件式を修正して再実行してください。

Illegal order in proximity.

近傍条件の順序指定に，ANY_ORDER，IN_ORDER以外が指定されています。
（P）近傍条件の順序指定の内容を修正して再実行してください。

Illegal order in proximity. offset=aa

近傍条件の順序指定が誤っています。
aa：検索条件式のオフセット
（P）検索条件式を修正して再実行してください。

Illegal position of pipe symbol.

前方一致，後方一致指定の「|」（パイプ）の位置が誤っています。
（P）前方一致，後方一致指定の場合は，単純文字列の最前部または最後尾に指定してください。
単なる文字として指定する場合は直前に「¥」（エスケープ文字）を付けてください。

Illegal search factor exist. offset=aa

検索因子が誤っています。
aa：検索条件式のオフセット
（P）検索条件式を修正して再実行してください。

Illegal structure weight.weight=XX

構造の重みの値が指定可能範囲（1～100）ではありません。
XX：指定された重みの値
（P）構造の重みの値を指定可能範囲（1～100）にして再実行してください。

Illegal symbol exist in search term. ("*" or "?")

検索タームの「*」または「?」の指定に誤りがあります。
［対策］検索条件式を修正して再実行してください。

Illegal term weight. Weight=XX

タームの重みの値が指定可能範囲（1～100）ではありません。
XX：指定された重みの値
（P）タームの重みの値を指定可能範囲（1～100）にして再実行してください。

Illegal text function invocation.

展開指定（SOUNDEX_EXP，SYNONYM），近傍条件（PROXIMITY）または単純文字列指定が必要な所にこれらの指定がありません。
（P）中括弧のあとに，展開指定（SOUNDEX_EXP，SYNONYM），近傍条件（PROXIMITY）または単純文字列指定があるか確認してください。その後，検索条件式を修正して再実行してください。

Illegal unit in proximity.

近傍条件の距離単位指定が誤っています。
（P）近傍条件の距離単位指定を修正して再実行してください。

Illegal unit in proximity. offset=aa

近傍条件の距離単位が誤っています。
aa：検索条件式のオフセット
（P）検索条件式を修正して再実行してください。

Illegal XML data.detail=Line:xx,Column:yy,aa..aa

指定したXMLデータの内容に問題があります。
xx：XMLデータの問題が発生した行
yy：XMLデータの問題が発生したカラム数（文字単位）
aa..aa：詳細情報
（P）詳細情報をもとにXMLデータを見直してください。

Incomplete term condition.

ターム条件式が途中で終わっているため，条件式が解析できません。
（P）検索条件式を修正して再実行してください。

Incomplete text search condition.

検索条件式が途中で終わっており，検索条件式が解析できません。
（P）検索条件式を修正して再実行してください。

Incomplete text search condition. offset=aa

検索条件式が途中で終わっています。
aa：検索条件式のオフセット
（P）検索条件式を修正して再実行してください。

Index data for search exceeds maximum size.(XX)

参照するインデクスサイズが上限値を超えました。
XX：インデクスサイズの上限値
（P）検索条件を変更して再実行してください。

Invalid character code.

CREATE TABLEのプラグインオプションでの，文字コード種別の指定に誤りがあります。
（P）プラグインオプションを修正して再実行してください。

Invalid data found.filename= aa..aa,offset=XX,file= bb..bb,line=YY

指定されたインデクスデリミタファイル，不要語ファイル，または削除コードファイル中に不正なデータがあります。または，指定できる個数の上限を超えています。
aa..aa：ファイル名
XX：不正データのデータ先頭からのオフセット
bb..bb：エラーが発生したファイル
YY：エラーが発生したソースファイル行
［対策］データを確認してください。

Invalid document.

XML変換ライブラリで作成していないXMLデータを，XML型列を含む表に登録しようとしました。
（P）XML型列を含む表を登録する場合は，XML変換ライブラリで変換したXMLデータを使用してください。

Invalid ESIS-B data.code=aa

表に登録しようとしたESIS-Bデータに異常があります。
aa：エラー番号
2～6：XML変換ライブラリまたはphdxmlcnvコマンドで作成したデータではありません。
7：HiRDBの運用文字コードとESIS-Bデータの文字コードに整合性がありません。
（P）エラー番号の内容を参考にして，登録に指定したESIS-Bデータファイルを修正後再登録してください。
登録先の表名に誤りがある場合は，正しい表名を指定して再登録してください。

Invalid plugin description.

XML型の列のプラグインオプションの内容に誤りがあります。
（P）プラグインオプションの内容を確認してください。内容を確認後，再実行してください。

Invalid structure name.

要素名の指定に誤りがあります。または，要素名指定長が1,024バイトを超えています。
（P）検索条件式を修正して再実行してください。

Invalid extract parameter.line=XX

extracts関数の指定が誤っています。
XX：保守用情報
（P）extracts関数の指定を見直してください。

Invalid Number. offset=aa

有効でない数値が指定されています。
aa：検索条件式のオフセット
（P）検索条件式を修正して再実行してください。

Invalid option. offset=aa

不正なオプションです。
aa：検索条件式のオフセット
（P）検索条件式を修正して再実行してください。

Invalid score option name. offset=aa

スコアオプション名の指定に誤りがあります。
aa：検索条件式のオフセット
（P）検索条件式を修正して再実行してください。

Invalid text data type : aa..aa

テキストデータ種別（XML型の列のプラグインオプションのタグ<TEXTTYPE>の内容）の指定に，XML以外が指定されました。
aa..aa：指定された内容
（P）テキストデータ種別を正しく指定して，再実行してください。

Invalid text search condition.

全文検索条件に誤りがあります。
（P）検索条件を修正して再実行してください。

Invalid value found in Plugin Option(aa).bb(XX)

プラグインオプションの指定に誤りがあります。
aa：誤りを発見したパラメタ
bb：エラーの発生したファイル名
XX：エラーの発生した行
［対策］プラグインオプションの指定を修正し，再度実行してください。

（L）

Left paren symbol not exist after NOT symbol.

NOT演算子のあとに左括弧がありません。
（P）検索条件を修正して再実行してください。

（N）

No attribute name. offset=aa

属性名の指定がありません。
aa：検索条件式のオフセット
（P）検索条件式を修正して再実行してください。

No back slash before escape character. offset=aa

「¥」（エスケープ文字）がありません。
aa：検索条件式のオフセット
（P）検索条件式を修正して再実行してください。

No delimiter. offset=aa

区切り文字がありません。
aa：検索条件式のオフセット
（P）検索条件式を修正して再実行してください。

No dictionary name. offset=aa

同義語辞書名の指定がありません。
aa：検索条件式のオフセット
（P）検索条件式を修正して再実行してください。

No expans mode. offset=aa

異表記展開モードの指定がありません。
aa：検索条件式のオフセット
（P）検索条件式を修正して再実行してください。

No number. offset=aa

数値指定がありません。
aa：検索条件式のオフセット
（P）検索条件式を修正して再実行してください。

No structure name. offset=aa

構造名指定がありません。
aa：検索条件式のオフセット
（P）検索条件式を修正して再実行してください。

No structure weight after left paren symbol.

構造名指定のあとの，左括弧の後ろの構造重みの指定がありません。
（P）構造重みを指定して，再実行してください。

No term weight after left paren symbol.

単純文字列指定のあとの，左括弧の後ろにタームの重み指定がありません。
（P）タームの重みを指定して，再実行してください。

Not enough area.filename=Delay File

分割遅延登録用ファイル領域不足によって，登録に失敗しました。
（P）HiRDB管理者に連絡してください。
［対策］インデクス作成開始ユティリティで遅延登録文書をすべてインデクスに登録してください。

Not enough shared memory. file=aa..aa,line=XX

aa..aa：オペレーションを発行したソースファイル
XX：オペレーションを発行した行
（P）HiRDB管理者に連絡してください。
［対策］HiRDBのバックエンドサーバ定義またはシングルサーバ定義のpdplgprmオペランド指定値を見直してください。

Not enough memory.file= aa..aa,line= XX

処理に必要なメモリをシステムが取得できませんでした。
aa..aa：メモリを要求したソースファイル名
XX：エラーが発生した行
（P）システムのメモリ状態を確認してください。

Not enough memory for expand search.max memory size= XX

同義語異表記展開処理に必要なメモリが環境情報定義に指定した同義語異表記展開用最大メモリサイズを超えました。
XX：環境情報定義に指定した同義語異表記展開用最大メモリサイズ（キロバイト）
（P）検索タームを変更するか，または同義語異表記展開の指定を変更して再実行してください。
［対策］このエラーメッセージが頻繁に出力されるときは，次の対処をしてHiRDBを再度起動してください。

リソースを見積もり直して，環境情報定義の同義語異表記展開用最大メモリサイズの指定値を増やしてください。

Not enough memory for search. max memory size = XX

検索処理に必要なメモリがシステムの上限，または環境情報定義に指定した検索時最大メモリサイズを超えました。
XX：システム上限値または環境情報定義に指定した検索時最大メモリサイズ（キロバイト）
（P）論理演算の条件を変更するか，または異表記展開の指定を変更して再実行してください。
［対策］環境定義ファイルを使用時に，このエラーメッセージが頻繁に出力されるときは，次の対処をしてHiRDBを再度起動してください。

メモリに余裕があるときは，環境情報定義の検索時最大メモリサイズの指定値を増やしてください。

メモリに余裕がないときは，環境情報定義の検索オプションに「file」を指定してください。

Not enough stack memory for search.max memory size= XX

検索オプションに「file」を指定している場合の検索処理で必要なスタックメモリがシステムの上限を超えました。
XX：システム上限値（キロバイト）
（P）頻出語や１文字のワイルドカード検索または近傍検索を行わないように条件を変更して再実行してください。
［対策］このエラーメッセージが頻繁に出力されるときは，次の対処をしてHiRDBを再度起動してください。
環境情報定義の検索オプションに「memory」を指定してください。

Not enough RD area. filename=aa..aa

RDエリア容量が不足しています。
aa..aa：容量不足が発生した物理格納定義の種別
（P）HiRDB管理者に連絡してください。
［対策］RDエリア容量を増やしてください。

Not enough rdarea size for SGML structure index.

XML型の列を格納するRDエリアのページ数が少ないため，XML構造インデクスが作成できません。
（P）RDエリアのページ数を増やして，再実行してください。または，別のRDエリアに割り当ててください。

Not support language.

HiRDBで設定している文字コードをサポートしていないため処理できません。
（P）XML Extensionがサポートしている文字コードでHiRDB環境を再構築後，再実行してください。

NOT symbol unable to use at logical term condition.

ターム検索条件の論理演算（AND/OR）に対してNOT演算子を指定しています。
（P）検索条件を修正して再実行してください。

Number of file is over the system limit.

インデクスファイル数がシステムの上限を超えました。
（P）HiRDB管理者に連絡してください。
［対策］ファイル数がシステムの上限を超えないように，インデクスを作成してください。

Number overflow. offset=aa

数値指定がオーバーフローしました。
aa：検索条件式のオフセット
（P）検索条件式を修正して再実行してください。

（O）

Overflow of structure weight.

構造の重みの値がオーバーフローしています。
（P）1～100の値を指定して再実行してください。

Overflow of term weight.

タームの重みの値がオーバーフローしています。
（P）1～100の値を指定して再実行してください。

（P）

Paren symbol not exist after text function invocation.

近傍条件指定（PROXIMITY），展開指定（SOUNDEX_EXP，SYNONYM）のあとに括弧がありません。
（P）検索条件式を修正して再実行してください。

Paren symbol not match in condition.

検索条件式中の括弧が対応していません。
（P）検索条件式を修正して再実行してください。

Parenthesis nest overflow. offset=aa

括弧のネストが制限値を超えました。
aa：検索条件式のオフセット
（P）検索条件式を修正して再実行してください。

Plugin description is not specified at SGMLTEXT type column.

XML型カラムにプラグインオプションの指定がありません。
（P）定義内容を見直して再実行してください。

PLUGIN OPTION(aa..aa) Not Installed.

プラグインオプションがインストールされていません。
aa..aa：プラグインオプション名
Concept：Text Search Plug-in Conceptual Extension
［対策］表示されたプラグインオプションをインストールしてください。

PPI Error occurred.func=aa..aa,code=XX,file=bb..bb,line=YY

HiRDBのサービスコールでエラーが発生しました。
aa..aa：HiRDBサービスコール関数名
XX：返却されたエラーコード
bb..bb：オペレーションを発行したソースファイル名
YY：オペレーションを発行した行
［対策］このメッセージの直前にメッセージが出力されている場合はそれに従って対処してください。出力されていない場合は，保守員に連絡してください。

（R）

Right paren symbol not exist after structure weight.

構造重み指定の後ろに右括弧がありません。
（P）検索条件式を修正して再実行してください。

Right paren symbol not exist after term weight.

タームの重み指定の後ろに右括弧がありません。
（P）検索条件式を修正して再実行してください。

（S）

Structure name not found in SGML structure index.

全文検索条件式中に指定された構造名は，XML構造インデクスに登録されていません。
（P）指定した構造名が正しいか確認してください。正しくない場合は，検索条件式を修正して再実行してください。

Synonym dictionary data get failed.

同義語辞書データの取得に失敗しました。
（P）検索条件中に指定した同義語辞書名が正しいか確認してください。正しくない場合は修正して再実行してください。正しい場合は，HiRDB管理者に連絡してください。
［対策］同義語辞書がシステムに登録されているか確認してください。登録されていない場合は，「phdsyndicreg（同義語辞書登録ユティリティ）」で同義語辞書を登録してください。
登録されている場合は，メッセージログの内容を確認して，保守員に連絡してください。

Synonym dictionary data not found in system.

指定した同義語辞書は登録されていません。
（P）指定した同義語辞書名が正しいか確認してください。同義語辞書名が正しい場合は，HiRDB管理者に連絡してください。
［対策］同義語辞書を登録してください。

System error. offset=aa condition=bb file=cc line=dd

内部矛盾が発生しました。
aa：検索条件式のオフセット
bb：検索条件式
cc：ファイル名
dd：行番号
［対策］保守員に連絡してください。

（T）

Term condition not exists.

英文検索でインデクスデリミタ，不要語，削除コードだけで構成されたタームが存在します。
（P）検索条件式を指定して再実行してください。

Term condition not exist after structure weight.

構造重み指定の後ろにターム条件が指定されていません。
（P）検索条件式を指定して再実行してください。

Term condition not exists.

ターム条件が指定されていません。
（P）検索条件式を指定して再実行してください。

Term delimiter(") not exist. offset=aa

「"」（ダブルクォーテーション）がありません。
aa：検索条件式のオフセット
（P）検索条件式を指定して再実行してください。

Text search condition is not specified.

抽象データ型関数contains()，contains_with_score()の構造検索条件の指定がありません。
（P）検索条件式を指定して再実行してください。

The depth of the heararchy of the XML data element exceeds a limit value.

指定したXMLデータ内の要素ネストが100を超えています。
（P）要素のネストは最大100ネストまでです。XMLデータを見直してください。

Token size is over max size(255bytes)

次に示すサイズが指定できる最大数（255バイト）を超えています。
単純文字列指定：「"」（ダブルクォーテーション）で指定した文字列
同義語辞書名：SYNONYMで指定している同義語辞書名
構造名：構造名指定に指定している構造名
（P）検索条件式を修正して再実行してください。

Too much term length was specified. offset=aa

指定した長さ（バイト）が正しくありません。
aa：検索条件式のオフセット
（P）検索条件式を修正して再実行してください。

Too short search factor in specific and. offset=aa

特定構造検索で検索条件が一つしかありません。
aa：検索条件式のオフセット
（P）検索条件式を修正して再実行してください。

（U）

Unable to execute aa..aa

インデクスに対して，実行できない機能が指定されました。
aa：機能名
［対策］インデクスの種別を確認してください。

Unable to execute because of RD area rollback

対象となるRDエリアが回復処理中の為，処理できません。

［対策］対象RDエリアの回復処理完了後，再実行してください。

Unable to use directory for search work,name=aa bb(XX)

コンフィグレーションファイルに指定された検索用ワークファイルディレクトリが使用できません。
ディレクトリの指定を見直してください。
aa：ディレクトリ名
bb：エラーの発生したファイル名
XX：エラーの発生した行
［対策］コンフィグレーションファイルの指定を見直し，HiRDBを再度起動してください。

Unmatch character code.

utf-8以外のHiRDB運用環境で，CREATE TABLEのプラグインオプションにutf-8用の指定があります。または，表の文字コード種別と登録したXMLデータの文字コード種別に整合性がありません。
［対策］文字コード種別を操作対象に合わせて，指定内容または登録したXMLデータを修正して再実行してください。

（W）

Weight exist in specific struct. offset=aa

特定構造検索指定中に，重み指定があります。
aa：検索条件式のオフセット

（X）

XML data attribute name exceeds maximum length.

指定したXMLデータには4096バイトを超える属性名が含まれています。
（P）4096バイトを超える属性名は使用できません。XMLデータを見直してください。

XML data element name exceeds maximum length.

指定したXMLデータには4096バイトを超える要素名が含まれています。
（P）4096バイトを超える要素名は使用できません。XMLデータを見直してください。

XML data exceeds maximum size.

指定したXMLデータのサイズがシステムの限界を超えています。
（P）XMLデータのサイズを見直してください。

XML data namespace prefix exceeds maximum length.

指定したXMLデータには4096バイトを超える名前空間接頭辞が含まれています。
（P）4096バイトを超える名前空間接頭辞は使用できません。XMLデータを見直してください。

XML data unmatch character code.

指定したXMLデータの文字コードがHiRDB運用環境の文字コードと一致していません。
（P）HiRDB運用環境の文字コードに合わせたXMLデータを指定してください。

(2)　メッセージログに出力されるメッセージ

00001-E PPI Error occurred.func=aa..aa,code=XX,file=bb..bb,line=YY

HiRDBのサービスコールでエラーが発生しました。
aa..aa：HiRDBサービスコール関数名
XX：返却されたエラーコード
bb..bb：オペレーションを発行したソースファイル名
YY：オペレーションを発行した行
［対策］このメッセージの直前にメッセージが出力されている場合は，それに従って対処してください。出力されていない場合は，保守員に連絡してください。

00005-E Not enough memory.file= aa..aa,line=XX

処理に必要なメモリをシステムが取得できませんでした。
aa..aa：メモリを要求したソースファイル名
XX：エラーが発生した行
［対策］システムのメモリ状態を確認してください。

00006-E File open error.filename=aa..aa,code=XX

aa..aaに示されるファイルのオープンに失敗しました。
aa..aa：オープンできなかったファイル名
XX：詳細情報
［対策］このメッセージの直前にメッセージが出力されている場合はそれに従って対処してください。出力されていない場合は，保守員に連絡してください。

00007-E File I/O error.filename=aa..aa,func=bb..bb,code=XX,file=cc..cc,line=YY

システムファイルのアクセス中にエラーを検出しました。
aa..aa：ファイル名
bb..bb：オペレーション
XX：詳細情報
cc..cc：オペレーションを発行したソースファイル名
YY：オペレーションを発行した行
［対策］このメッセージの直前にメッセージが出力されている場合はそれに従って対処してください。出力されていない場合は，保守員に連絡してください。

00008-E Fatal error occurred.detail=aa..aa,file=bb..bb,line=XX

システム内部で自己矛盾を検出しました。
aa..aa：詳細情報
bb..bb：エラーの発生したファイル名
XX：エラーの発生した行
［対策］このメッセージの直前にメッセージが出力されている場合は，それに従って対処してください。出力されていない場合は，保守員に連絡してください。

00009-E Not enough memory for search.max memory size= XX

検索処理に必要なメモリがシステムの上限または環境情報定義に指定した検索時最大メモリサイズを超えました。
XX：システム上限値または環境情報定義に指定した検索時最大メモリサイズ（キロバイト）
（P）論理演算の条件を変更するか，または異表記展開の指定を変更して再実行してください。
［対策］環境定義ファイルを使用時に，このエラーメッセージが頻繁に出力されるときは，次の対処をしてHiRDBを再度起動してください。

メモリに余裕があるときは，環境情報定義の検索時最大メモリサイズの指定値を増やしてください。

メモリに余裕がないときは，環境情報定義の検索オプションに「file」を指定してください。

00010-E Not enough RD area.filename=aa..aa

RDエリア容量が不足しています。
aa..aa：容量不足が発生した物理格納定義の種別
［対策］RDエリア容量を増やしてください。RDエリアは，HiRDBの「pdmod（データベース構成変更ユティリティ）」を実行して追加します。また，インデクス領域として使用する場合は，「phjexpnd（インデクスの拡張ユティリティ）」を実行してください。

00011-E File size is over the system limit. filename = aa..aa

aa..aaに示されるファイル容量がシステムの上限を超えました。
aa..aa：サイズがシステムの上限を超えたファイル名
（P）HiRDB管理者に連絡してください。
［対策］ファイルサイズがシステムの上限を超えないように，インデクスを作成してください。

00012-E Config File I/O error.filename=aa..aa,func=bb..bb,code=XX,file=cc..cc,line=YY

コンフィグレーションファイルのアクセス中にエラーを検出しました。
aa..aa：ファイル名
bb..bb：オペレーション
XX：詳細情報
cc..cc：オペレーションを発行したソースファイル名
YY：オペレーションを発行した行
［対策］このメッセージの直前にメッセージが出力されている場合は，それに従って対処してください。出力されていない場合は，保守員に連絡してください。

00013-E Number of file is over the system limit.

インデクスファイル数がシステムの上限を超えました。
［対策］ファイル数がシステムの上限を超えないインデクスを作成してください。

00014-E Error in Plugin Option aa(XX)

プラグインオプションの指定に誤りがあります。
aa：エラーの発生したファイル名
XX：エラーの発生した行
［対策］プラグインオプションの指定を修正し，再度実行してください。

00015-E Invalid value found in Plugin Option(aa).bb(XX)

プラグインオプションの指定に誤りがあります。または，utf-8のHiRDB運用環境で使用できないオプションを指定しています。
aa：誤りを発見したパラメタ
bb：エラーの発生したファイル名
XX：エラーの発生した行
［対策］プラグインオプションの指定を修正し，再度実行してください。

00016-E Unable to use directory for search work,name=aa bb(XX)

コンフィグレーションファイルに指定された検索用ワークファイルディレクトリが使用できません。
ディレクトリの指定を見直してください。
aa：ディレクトリ名
bb：エラーの発生したファイル名
XX：エラーの発生した行
［対策］コンフィグレーションファイルの指定を見直し，HiRDBを再度起動してください。

00017-E PLUGIN OPTION(aa..aa) Not Installed.

プラグインオプションがインストールされていません。
aa..aa：プラグインオプション名
Concept：Text Search Plug-in Conceptual Extension
［対策］表示されたプラグインオプションをインストールしてください。

00018-E Define file not exist.filename= aa..aa,func=bb..bb,file=cc..cc,line=XX

指定されたインデクスデリミタファイル，不要語ファイル，または削除コードファイルが存在しません。
aa..aa：ファイル名
bb..bb：オペレーション
cc..cc：オペレーションを発行したソースファイル
XX：オペレーションを発行したソースファイル行
［対策］プラグインオプションに指定したファイル名称を確認してください。

00019-E Invalid data found.filename= aa..aa,offset=XX,file= bb..bb,line=YY

指定されたインデクスデリミタファイル，不要語ファイル，または削除コードファイル中に不正なデータが存在します。
aa..aa：ファイル名
XX：不正データのデータ先頭からのオフセット
bb..bb：エラーが発生したソースファイル
YY：エラーが発生したソースファイル行
［対策］データを確認してください。

00020-E Fail to lock aa..aa.

aa..aaの排他に失敗しました。IXXMLインデクス用RDエリアまたはXMLデータ用RDエリアへのアクセスが競合しています。
aa..aa：Index File（IXXMLインデクス用RDエリア）
XML Logical File（XMLデータ用RDエリア）
［対策］しばらく待って再実行してください。このメッセージの直前または直後にメッセージが出力されている場合は，そのメッセージの内容に従って対処してください。

00021-E Unable to execute because of RD area rollback.

対象となるＲＤエリアが回復処理中の為，処理できません。
［対策］対象ＲＤエリアの回復処理完了後，再実行してください。

00024-E Not enough shared memory. file= aa..aa, line=bb..bb.

プラグインに割り当てられた共用メモリが不足しています。
aa..aa：ファイル名
bb..bb：オペレーションを発行した行
［対策］HiRDBのバックエンドサーバ定義またはシングルサーバ定義の「pdplgprm」オペランド指定値を見直してください。

00026-E Fail to lock because file is over the process limit. filename=aa..aa, line=bb..bb.

１プロセスのオープンファイル数が上限を超えました。
aa..aa：ファイル名
bb..bb：オペレーションを発行した行
［対策］しばらく待って再実行してください。再実行の際にも同様のエラーが発生した場合は，プロセスごとに対応してください。

HiRDBのサーバプロセスの場合
HiRDB管理者に連絡してください。

ユーザ起動によるプロセス（コマンド・ユティリティ）の場合
OSのパラメタのmaxfilesの設定値を変更してください。

00027-E Fail to lock because file is over the system limit. filename=aa..aa, line=bb..bb.

システム全体のオープンファイル数が上限を超えました。
aa..aa：ファイル名
bb..bb：オペレーションを発行した行
［対策］しばらく待って再実行してください。再実行の際にも同様のエラーが発生した場合は，次に示すように対応してください。

OSのパラメタのnfileの設定値を変更する。

コマンドを実行したサーバマシンで動作している不要なプロセスを停止する。

コマンドを実行しない。

00028-E Fail to thread lock. filename=aa..aa, line=bb..bb.

排他に失敗しました。排他エリアへのアクセスが競合しています。
aa..aa：ファイル名
bb..bb：オペレーションを発行した行
［対策］しばらく待って再実行してください。

00029-E Shared memory is not defined in HiRDB definition. file=aa..aa, line=bb..bb.

プラグイン用の共用メモリがHiRDBサーバ定義に指定されていません。
aa..aa：ファイル名
bb..bb：オペレーションを発行した行
［対策］プラグイン用の共用メモリをHiRDBサーバ定義に指定してください。

00030-E Not enough area.filename=Delay File

分割遅延登録用ファイル領域不足によって，登録に失敗しました。
（P）HiRDB管理者に連絡してください。
［対索］インデクス作成開始ユティリティで遅延登録したXMLデータをすべてインデクスに登録してください。

00031-E Not enough stack memory for search.max memory size= XX

検索オプションに「file」を指定している場合の検索処理で必要なスタックメモリがシステムの上限を超えました。
XX：システム上限値（キロバイト）
（P）頻出語や１文字のワイルドカード検索または近傍検索を行わないように条件を変更して再実行してください。
［対策］このエラーメッセージが頻繁に出力されるときは，次の対処をしてHiRDBを再度起動してください。
環境情報定義の検索オプションに「memory」を指定してください。

00032-E Not Concept Index.

処理対象のインデクスは概念検索用インデクスではありません。
［対策］インデクスの種別を確認してください。

00034-E Invalid Index Type.

指定したインデクス種別はサポートしていません。
（P）インデクスの種別を確認してください。

00035-E Index data for search exceeds maximum size.(XX)

上限値を超えるインデクスを使用した検索が実行されました。
XX：インデクスサイズの上限値
［対策］ひらがなやかたかな１文字などの，システムに高負荷を与える検索タームを指定しています。検索タームを見直して再実行してください。

00037-E Not enough memory for expand search.max memory size= XX

同義語異表記展開処理に必要なメモリが環境情報定義に指定した同義語異表記展開用最大メモリサイズを超えました。
XX：環境情報定義に指定した同義語異表記展開用最大メモリサイズ（キロバイト）
（P）検索タームを変更するか，または同義語異表記展開の指定を変更して再実行してください。
［対策］このエラーメッセージが頻繁に出力されるときは，次の対処をしてHiRDBを再度起動してください。

リソースを見積もり直して，環境情報定義の同義語異表記展開用最大メモリサイズの指定値を増やしてください。

00038-E Each definition unmatch. value1=Index Option aa, value2=bb

aaとbbの定義の組み合わせは，実行できない組み合わせです。
aa：CREATE INDEXのプラグインオプションに指定したインデクス作成方法
bb：Lockmode
［対策］aaとbbの定義内容を見直してください。

aa | bb | 対策
CREATEMODE=3 | Lockmode | データ型プラグインの環境定義ファイルのphd_search_waitに「nowait_with_update」が指定されているかどうかを確認してください。また，インデクス作成開始ユティリティ（phjstartidx）の-wオプションに，「nowait_with_update」が指定されているかどうかを確認してください。

00040-E Unable to use function. function name=INDEX_UCS4.

サポート外機能です。
［対策］phn(x)modidxコマンドでUCS4インデクスへ移行する際に，UCS4インデクスがサポートしていない機能を使用したインデクスではないかを確認してください。

01001-W Invalid data found.file=aa,line=XX.bb(YY)

誤りのある行がコンフィグレーションファイルにあります。誤りを発見したコンフィグレーションファイルの指定内容をすべて無効とします。
aa ：誤りを発見したコンフィグレーションファイル名
XX：誤りを発見したコンフィグレーションファイルの行番号
bb ：エラーの発生したファイル名
YY：エラーの発生した行
［対策］コンフィグレーションファイルの内容を修正し，HiRDBを再度起動してください。

01002-W Invalid value found. file=aa,line=XX,item=bb.cc(YY)

コンフィグレーションファイルの指定内容に誤りがあります。誤りを発見したコンフィグレーションファイルの指定内容をすべて無効とします。
aa：誤りを発見したコンフィグレーションファイル名
XX：誤りを発見したコンフィグレーションファイルの行番号
bb：誤りを発見した指定項目
cc：エラーの発生したファイル名
YY：エラーの発生した行
［対策］コンフィグレーションファイルの内容を修正し，HiRDBを再度起動してください。

01003-W Not enough RD area for expand.

インデクスを拡張するためのRDエリアが不足しています。インデクスの拡張処理を実行しません。
［対策］RDエリアを拡張後，再実行してください。

01004-W Unable to execute aa..aa

インデクスに対して実行できない機能が指定されました。
aa：機能名
［対策］インデクスの種別を確認してください。

01005-W Specified size not enough for expand.

指定されたサイズが小さいため，ファイルが拡張できません。
［対策］拡張するファイルが分割遅延登録用ファイルである場合，拡張できる最小単位は2,048キロバイトです。そのため，現在の分割遅延登録用ファイルサイズ＋2,048キロバイト以上を指定してください。

02000-I Sub index using ratio XX percent

差分インデクスの使用率がXXパーセントになりました。
XX：差分インデクスの使用率

02001-I aa..aa is Time Out.

コマンドが指定時間を過ぎて終了しました。
aa..aa：コマンド名

02002-I aa..aa command started.

コマンドを開始しました。
aa..aa：コマンド名

02003-I aa..aa command ended.

コマンドを終了しました。
aa..aa：コマンド名

02004-I Delay file using ratio XX percent.

分割遅延登録用ファイル使用率がXXパーセントになりました。
XX：分割遅延登録用ファイル使用率

02005-I To have processed in the full counts, aa has finished.

コマンドに指定された件数の登録が完了しました。
aa..aa：コマンド名

02006-I XX Processed.

XX件のデータをインデクス作成しました。
XX：インデクスを作成したデータ件数

02007-I Unable to make index complete. Because of Lock.

作成要求された件数に達する前に，処理できる件数が終わりました。

50001-E Fatal error occurred.

回復不能エラーが発生しました。
［対策］このメッセージの直前にメッセージが出力されている場合はそれに従って対処してください。出力されていない場合は，保守員に連絡してください。

50002-E Not enough memory.size=XX file=aa..aa line=YY

メモリ不足が発生しました。
XX：要求したサイズ
aa..aa：エラーが発生したファイル名
YY：エラーが発生した場所
［対策］システムのメモリ状態を確認してください。

50003-E Registry data get failed. Key name=aa..aa code=XX

レジストリ登録情報の取得でエラーが発生しました。
aa..aa：レジストリ登録情報名
XX：エラーコード
［対策］このメッセージの直前にメッセージが出力されている場合はそれに従って対処してください。また，レジストリ機能の初期設定を実施しているか確認してください。
何もメッセージが出力されていない場合は保守員に連絡してください。

50004-E Initialize SGML structure index failed.code=XX file=aa..aa line=YY

XML構造インデクスの初期化に失敗しました。
XX：エラーコード
aa..aa：エラーの発生したファイル名
YY：エラーの発生した場所
［対策］このメッセージの直前に，別のメッセージが出力されている場合はそのメッセージに従って対処してください。それ以外は，保守員に連絡してください。

50005-E SGML compiler error occurred.file=aa..aa line=XX

XMLデータの解析中にエラーが発生しました。
aa..aa：エラーの発生したファイル名
XX：エラーの発生した場所
［対策］保守員に連絡してください。

50006-E SGML structure index open failed.code=XX file=aa..aa line=YY

XML構造インデクスのオープンでエラーが発生しました。
XX：エラーコード
aa..aa：エラーが発生したファイル名
YY：エラーが発生した場所
［対策］このメッセージの直前にメッセージが出力されている場合はそれに従って対処してください。何もメッセージが出力されていない場合は，保守員に連絡してください。

50007-E SGML structure index add failed.code=XX file=aa..aa line=YY

XML構造インデクスの追加でエラーが発生しました。
XX：エラーコード
aa..aa：エラーが発生したファイル名
YY：エラーが発生した場所
［対策］このメッセージの直前にメッセージが出力されている場合はそれに従って対処してください。何もメッセージが出力されていない場合は，保守員に連絡してください。

50008-E Plain text compiler error occurred.file=aa..aa line=XX

プレーンテキストの解析中にText Search Plug-inでエラーが発生しました。
aa..aa：エラーの発生したファイル名
XX：エラーの発生した場所
［対策］保守員に連絡してください。

50009-E SGML Compiler Message file open failed.

XML Extensionが必要なメッセージファイルのオープンに失敗しました。
［対策］このメッセージの直前にメッセージが出力されている場合はそれに従って対処してください。何もメッセージが出力されていない場合は，XML Extensionが正しく登録されているか確認してください。

50010-E SPK Message file open failed.

XML Extensionが必要なメッセージファイルのオープンに失敗しました。
［対策］このメッセージの直前にメッセージが出力されている場合はそれに従って対処してください。何もメッセージが出力されていない場合は，XML Extensionが正しく登録されているか確認してください。

50011-E PPI Error occurred. func=aa...aa code=XX,file=bb..bb,line=YY

HiRDBのサービスコールでエラーが発生しました。
aa..aa：HiRDBサービスコール関数名
XX：返却されたエラーコード
bb..bb：エラーの発生したファイル名
YY：エラーの発生した場所
［対策］このメッセージの直前にメッセージが出力されている場合はそれに従って対処してください。出力されていない場合は，保守員に連絡してください。

50013-E Katakana rule data get failed.

カタカナルールファイルの読み込みに失敗しました。
［対策］このメッセージの直前に，別のメッセージが出力されている場合はそのメッセージに従って対処してください。それ以外は，保守員に連絡してください。

50014-E Logical file I/O error occurred.func=aa..aa code=XX

論理ファイル操作でエラーが発生しました。
［対策］このメッセージの直前に，別のメッセージが出力されている場合はそのメッセージに従って対処してください。それ以外は，保守員に連絡してください。

50015-E Synonym dictionary data get failed.func=aa..aa code=XX file=bb..bb line=YY

同義語辞書の読み込みに失敗しました。
aa..aa：関数名
XX：エラーコード
bb..bb：エラーの発生したファイル名
YY：エラーの発生した場所
［対策］このメッセージの直前に，別のメッセージが出力されている場合はそのメッセージに従って対処してください。それ以外は，保守員に連絡してください。

50016-E Invalid extract parameter. line=XX

extractsパラメタの内容が誤っています。
XX：誤りのある行
［対策］extractsパラメタの内容を見直してください。

50017-E No highlight tag in extract parameter.

extractsパラメタにハイライトタグの指定がありません。
［対策］extractsパラメタの内容を見直してください。

50020-E Specified character code set not supported.

指定されている文字コード種別はサポートしていません。
［対策］HiRDBシステムのOSへの登録時に指定した文字コード種別を見直してください。

62043-E Specified character code set not supported.

未サポート文字コードのHiRDB運用環境にXML ExtensionをセットアップしてHiRDBを起動しました。
［対策］XML Extensionがサポートしている文字コードのHiRDB運用環境でセットアップしてください。

(3)　標準エラー出力に出力されるメッセージ

52001-I aa..aa command started.

aa..aaに示すコマンドを開始しました。
aa..aa：コマンド名
［対策］なし

52002-I aa..aa command ended.

aa..aaに示すコマンドが正常終了しました。
aa..aa：コマンド名
［対策］なし

52003-E aa..aa command error occurred.code=XX

aa..aaに示すコマンドが異常終了しました。
aa..aa：コマンド名
XX：エラーコード
［対策］直前に出力されているメッセージに従って対処してください。

52004-E System call error occurred.func=aa..aa code=XX

システムコールでエラーが発生しました。
aa..aa：システムコール名
XX：エラーコード
［対策］OSのマニュアルに従って対処してください。

52005-E Illegal options - XX

オプションの指定が間違っています。
XX：指定されたオプションの内容
［対策］正しいオプションを指定して再実行してください。

52013-E Communication error occurred.

HiRDBと接続できませんでした。
［対策］直前に出力されているHiRDBのメッセージに従って対処してください。

52021-E Illegal attribute name - aa..aa

定義属性名の指定に誤りがあります。
［対策］正しい定義属性名を指定して再実行してください。

52022-E Not found FilePathName - aa..aa

実体ファイル名に指定したファイルが見つかりません。
［対策］正しい実体ファイル名を指定して再実行してください。

52023-E AttrFileName is too long.

定義属性名が最大長を超えています。
［対策］定義ファイル名を240バイト未満にして再実行してください。

52024-E Not enough memory.

メモリ不足が発生しました。
［対策］不要なプログラムを終了するなどしてメモリを確保し，再実行してください。

52032-E Attribute file data exceeds maximum size.

XML定義情報のデータサイズが制限値（5メガバイト）を超えています。
［対策］XML定義情報のデータサイズを制限値（5メガバイト）以下にして再実行してください。

52033-E AttrFileName length is 0 byte.

指定した定義ファイル名の長さが0バイトです。
［対策］定義ファイル名の長さを有効長（1～240バイト）の範囲で指定し，再実行してください。

52034-E File path name length is 0 byte.

指定したファイル名の長さが0バイトです。
［対策］ファイル名を正しく指定して再実行してください。

52035-E Output file path name length is 0 byte.

指定した出力ファイル名の長さが0バイトです。
［対策］出力ファイル名を正しく指定して再実行してください。

52036-E HiRDB library error occurred.func=aa..aa code= XX file=bb..bb line=YY

HiRDBクライアントライブラリ関数でエラーが発生しました。
aa..aa：関数名
XX：エラーコード
bb..bb：ファイル名
YY：エラーが発生した行
［対策］直前に出力されているHiRDBのメッセージに従って対処してください。

52303-E File aa..aa open failed.(code:XX)

ファイルのオープンに失敗しました。
aa..aa：ファイル名
XX：エラーコード
［対策］OSのマニュアルを参照の上，対処してください。

52301-E Continuous comma exist.line=XX

「,」（半角コンマ）が連続して存在しています。
または，同義語辞書群の中に「¥」（エスケープ文字）だけの同義語辞書があります。「¥」を同義語とする場合，「¥¥」と記述してください。
XX：エラーの発生した行
［対策］同義語辞書テキストファイルを修正して再実行してください。

52302-E Text data ended with comma.line=XX

同義語辞書テキストファイルが「,」（半角コンマ）で終わっています。
または，同義語辞書群の中に「¥」（エスケープ文字）だけの同義語辞書があります。「¥」を同義語とする場合，「¥¥」と記述してください。
XX：エラーの発生した行
［対策］同義語辞書テキストファイルを修正して再実行してください。

52303-E File aa..aa open failed.(code:XX)

ファイルのオープンに失敗しました。
aa..aa：ファイル名
XX：エラーコード
［対策］OSのマニュアルを参照の上，対処してください。

52304-E File aa..aa read failed.(code:XX)

ファイルからの読み込みに失敗しました。
aa..aa：ファイル名
XX：エラーコード
［対策］OSのマニュアルを参照の上，対処してください。

52305-E File aa..aa remove failed.(code:XX)

ファイルの削除に失敗しました。
aa..aa：ファイル名
XX：エラーコード
［対策］OSのマニュアルを参照の上，対処してください。

52306-E File aa..aa write failed.(code:XX)

ファイルの書き込みに失敗しました。
aa..aa：ファイル名
XX：エラーコード
［対策］OSのマニュアルを参照の上，対処してください。

52307-E Illegal characters exist.line=XX

同義語辞書テキストファイルに誤った文字があります。
XX：エラーの発生した行
［対策］同義語辞書テキストファイルを修正して再実行してください。

52308-E Invalid file path name (aa..aa).

同義語辞書テキストファイルのパス名が誤っています。
aa..aa：同義語辞書テキストファイルのパス名
［対策］正しいパス名を指定して再実行してください。

52309-E Synonym dictionary file aa..aa not found in system.

同義語辞書はシステムに登録されていません。
aa..aa：同義語辞書名
［対策］システムに登録されている同義語辞書名を指定して再実行してください。

52310-E Synonym data not found.

同義語辞書テキストファイルに登録が必要なデータが存在しません。
［対策］同義語辞書テキストファイルを修正して再実行してください。

52311-E Not enough memory.file=aa..aa line=XX

メモリ不足が発生しました。
aa..aa：エラーの発生したファイル名
XX：エラーの発生した場所
［対策］しばらく待って再実行してください。

52313-E Only one word in synonym group.line=XX

同義語群の中に同義語が一つしか指定されていません。
XX：エラーの発生した行
［対策］同義語辞書テキストファイルを修正して再実行してください。

52314-E Num of character's kind over 1000.line=XX

文字種が1,000を超えました。
XX：エラーの発生した行
［対策］同義語辞書テキストファイルを修正して再実行してください。

52315-E Text data started with comma.line=XX

同義語辞書の先頭カラムに「,」（半角コンマ）が存在する行があります。または，同義語辞書群の中に「¥」（エスケープ文字）だけの同義語があります。「¥」を同義語とする場合，「¥¥」と記述してください。
XX：エラーの発生した行
［対策］同義語辞書テキストファイルを修正して再実行してください。

52316-I Usage : aa..aa <dictionary name> <file path name>

ユティリティコマンドの形式を示します。
aa..aa：ユティリティコマンド名（phdsyndicreg）
［対策］なし

52317-I Usage : aa..aa <dictionary name>

ユティリティコマンドの形式を示します。
aa..aa：ユティリティコマンド名（phssyndicrmまたはphcsyndicrm）
［対策］なし

52318-Q aa..aa is already exist.overwrite?(y/n default n)

同義語辞書はすでに登録されているので，上書きしてもよいか問い合わせます。
aa..aa：同義語辞書名
［対策］上書きして登録する場合は「y」，処理を中断する場合はその他を入力してください。

52319-E Synonym dictionary name is too long.

同義語辞書名が最大長を超えています。
［対策］同義語辞書名を32バイト以下にして再実行してください。

52320-E Synonym dictionary name length is 0 byte.

指定した同義語辞書名の長さが0バイトです。
［対策］同義語辞書名を有効長（1～32バイト）の範囲で指定し，再実行してください。

52321-E Invalid character is specified in synonym dictionary name.

指定した同義語辞書名に誤った文字が使用されています。
［対策］同義語辞書名を正しく指定して再実行してください。

52322-E Tab code exist. line=XX

同義語辞書テキストファイル中にタブコードがあります。
XX：エラーの発生した行
［対策］同義語辞書テキストファイルを修正して再実行してください。

52323-E Illegal character exist after back slash symbol. line=XX

同義語辞書テキストファイル中に，「¥」（エスケープ文字）の後ろに誤った文字が存在する行があります。
XX：エラーの発生した行
［対策］同義語辞書テキストファイルを修正して再実行してください。

62001-I aa..aa command started.

ユティリティコマンドが開始しました。
aa..aa：ユティリティコマンド名
［対策］なし

62002-I aa..aa command ended.

ユティリティコマンドが正常終了しました。
aa..aa：ユティリティコマンド名
［対策］なし

62003-E aa..aa command error occurred.code=XX

ユティリティコマンドが異常終了しました。
aa..aa：ユティリティコマンド名
XX：エラーコード
［対策］直前に出力されているメッセージに従って対処してください。

62004-E Environment value(aa..aa) get failed.

環境変数の取得に失敗しました。
aa..aa：環境変数名
［対策］メッセージに出力された環境変数を設定して再実行してください。

62005-E System call error occurred.func=aa..aa code=XX

システムコールでエラーが発生しました。
aa..aa：システムコール名
XX：エラーコード
［対策］OSのマニュアルを参照の上，対処してください。

62006-E Not enough memory.

メモリ不足が発生しました。
［対策］不要なプログラムを終了するなどしてメモリを確保し，再実行してください。

62007-E Error occurred in n-gram index plugin.

IXXMLインデクス型プラグインでエラーが発生しました。
［対策］直前に出力されているメッセージに従って対処してください。

62008-E HiRDB command (aa..aa) not found in system.

HiRDBのコマンドが見つかりません。
aa..aa：HiRDBコマンド名
［対策］HiRDBが正しくセットアップされているか，またはパスに$PDDIR/binが設定されているか確認してください。確認後，HiRDBを再セットアップ，または$PDDIR/binをパスに設定して再実行してください。

62009-E HiRDB command (aa..aa) error occurred.code=XX

HiRDBのコマンドでエラーが発生しました。
aa..aa：HiRDBコマンド名
XX：エラーコード
［対策］直前に出力されているメッセージに従って対処してください。

62010-I Usage : aa..aa -d index_name -r rdarea_name [ -l log_mode ] [ -t time_out_minutes ] [ -q generation_num]

ユティリティコマンドの形式を示します。
aa..aa：ユティリティコマンド名（phjincmt）
［対策］なし

62011-I Usage : aa..aa -d index_name -r rdarea_name [ -w wait_mode ] [ -q generation_num ]

ユティリティコマンドの形式を示します。
aa..aa：ユティリティコマンド名（phjidxls）
［対策］なし

62012-E Index name length is 0 byte.

指定したインデクス名の長さが0バイトです。
［対策］インデクス名を正しく指定し，再実行してください。

62013-E "RDAREA name length is 0 byte.

指定したRDエリア名の長さが0バイトです。
［対策］RDエリア名を正しく指定し，再実行してください。

62014-E Option argument invalid. option=xx

オプションに指定された引数xxが誤っています。
xx：オプション名
［対策］正しい引数を指定して，再度実行してください。

62016-I Usage : aa..aa -d index_name -r rdarea_name [ -l log_mode ] [ -q generation_num ]

ユティリティコマンドの形式を示します。
aa..aa：ユティリティコマンド名（phjexpnd）
［対策］なし

62017-I Usage : aa..aa -d index_name [ -t time ] [ -l log_mode ] [ -c count ] [ -w wait mode ] [ -q generation_num ]

ユティリティコマンドの形式を示します。
aa..aa：ユティリティコマンド名（phjstartidx）
［対策］なし

62018-Q Do you really want to make index without time option ? (y/n default n)

実行時間が指定されていません。
［対策］yを入力した場合，時間制限なしで動作します。nを入力した場合，処理を中断します。

62019-Q All Documents of Unfinished Index are Processed, Is it OK? (y/n default n)

分割遅延登録対象に登録したXMLデータをすべてインデクスに登録します。
［対策］yを入力した場合，分割遅延登録対象に登録したXMLデータをすべてインデクスに登録します。nを入力した場合，処理を中断します。

62020-I Usage : aa..aa -d index_name -r rdarea_name [ -l log_mode ] [ -t time_out_minutes ] [ -q generation_num ]

ユティリティコマンドの形式を示します。
aa..aa：ユティリティコマンド名（phjcond）
［対策］なし

62021-I Usage : aa..aa -d index_name -v value [ -l log_mode ] [ -q generation_num ]

ユティリティコマンドの形式を示します。
aa..aa：ユティリティコマンド名（phjmodidx）
［対策］なし

62022-I Usage : aa..aa -d index_name -m delay_mode [ -l log_mode ] [ -f ] [ -q generation_num ]

ユティリティコマンドの形式を示します。
aa..aa：ユティリティコマンド名（phjdelay）
［対策］なし

62023-E Usage : phjchgcon -d index_name { -r rdarea_name | -m termget_option } [ -l log_mode ] [ -q generation_num]

ユティリティコマンドの形式を示します。
aa..aa：ユティリティコマンド名（phjchgcon）
［対策］なし

62024-I Usage : aa..aa -d index_name [ -r rdarea_name ] -o file_name [ -w wait_mode ] -m collect_mode [ -q generation_num ]

ユティリティコマンドの形式を示します。
aa..aa：ユティリティコマンド名（phjconget）
［対策］なし

62025-I Usage : aa..aa -i file_name -o file_name

ユティリティコマンドの形式を示します。
aa..aa：ユティリティコマンド名（phjconbuild）
［対策］なし

62026-I Usage : aa..aa -d index_name [ -r rdarea_name ] -i file_name [ -l log_mode ] [ -q generation_num ]

ユティリティコマンドの形式を示します。
aa..aa：ユティリティコマンド名（phjconrstr）
［対策］なし

62027-E　File name length is 0 byte.

ファイル名の長さが0バイトです。
［対策］指定したファイル名を見直してください。

62028-E　File size error.

ファイルサイズが不正です。
［対策］指定したファイル名を見直してください。

62029-E　File format error.

ファイル内容が不正です。
［対策］指定したファイルを見直してください。

62030-E Not enough memory.file=aa..aa,line=XX ¥n"

メモリ不足が発生しました。
aa..aa：エラーの発生したファイル名
XX：エラーの発生した場所
［対策］しばらく待って再実行してください。

62031-E File aa..aa open Failed. (code:XX) file=bb..bb line=YY

ファイルのオープンに失敗しました。
aa..aa：ファイル名
XX：エラーコード
bb..bb：エラーの発生したファイル名
YY：エラーの発生した場所
［対策］OSマニュアルを参考の上，対処してください。

62032-E File I/O error.filename=aa..aa,func=bb..bb,code=XX,file=cc..cc,line=YY

システムファイルのアクセス中にエラーを検出しました。
aa..aa：ファイル名
bb..bb：オペレーション
XX：詳細情報
cc..cc：オペレーションを発行したソースファイル名
YY：オペレーションを発行した行
［対策］このメッセージの直前にメッセージが出力されている場合はそれに従って対処してください。出力されていない場合は，保守員に連絡してください。

62033-E Fatal error occurred.detail=aa..aa,file=bb..bb,line=XX

システム内部で自己矛盾を検出しました。
aa..aa：詳細情報
bb..bb：エラーの発生したファイル名
XX：エラーの発生した行
［対策］このメッセージの直前にメッセージが出力されている場合は，それに従って対処してください。出力されていない場合は，保守員に連絡してください。

62034-E Filename or status error. filename=aa..aa

ファイル名またはパス名が不正です。
aa..aa：ファイル名
［対策］指定したファイル名，またはパス名を見直してください。

62035-E Communication error occurred.

HiRDBと接続できませんでした。
［対策］直前に出力されているHiRDBのメッセージに従って対処してください。

62036-E HiRDB library error occurred.func=aa..aa code=XX file=bb..bb line=YY

HiRDBクライアントライブラリ関数でエラーが発生しました。
aa..aa：関数名
XX：エラーコード
bb..bb：ファイル名
YY：エラーが発生した行
［対策］直前に出力されているHiRDBのメッセージに従って対処してください。

62037-E File not found in default directory.

定義ファイルのDEFAULTに指定したパスにファイルが存在しません。
［対策］DEFAULTに指定したパスにファイルが存在するか見直してください。

62038-E File or Directory not found. filename=aa..aa

指定したファイル名，またはパス名が見つかりません。
aa..aa：ファイル名
［対策］指定したファイル名，またはパス名が存在するか見直してください。

62039-E File or Directory already exist. filename=aa..aa

指定したファイル名，またはパス名はすでに存在します。
aa..aa：ファイル名
［対策］存在しないファイル名，またはパス名を指定してください。

62040-E Directory or File for Concept Information not exist or destroyed.

指定したパス，またはファイルが存在しないか，破壊されています。
［対策］指定されたパス名，またはファイル名を見直してください。

62043-E Specified character code set not supported.

utf-8のHiRDB運用環境で使用できないユティリティコマンドを実行しました。
［対策］HiRDBの運用環境を見直してください。

99999-E TSPlugin version unmatch.

XMLデータ型プラグイン/IXXMLインデクス型プラグイン間のバージョンが不整合です。
［対策］XML Extensionを再登録してください。

付録G　用語解説

（英字）

BLOB

XMLデータや画像，音声など，キロバイト，メガバイト，またはギガバイト単位の長大なデータのことです。

ESIS-B形式

XMLデータの内容を解析して，XMLデータの要素情報とコンテンツを抽出したデータの形式です。

HiRDB管理者

HiRDBの運用コマンドの実行者で，スーパユーザが登録したシステム管理者用のユーザIDでログインしたユーザのことです。HiRDBのディレクトリおよびファイルの所有者です。

IXXML型

XMLデータを扱う抽象データ型に対応するインデクス型のことです。

RDエリア

データベースの表，インデクス，およびデータディクショナリを格納するデータ領域のことです。

UCS2（Universal multi-octet Character Set 2）

ISOによって規定された国際文字コードISO/IEC 10646-1の16ビット文字コードです。

UCS4（Universal multi-octet Character Set 4）

ISOによって規定された国際文字コードISO/IEC 10646-1の32ビット文字コードです。

XML型

XMLデータを扱う抽象データ型のことです。

XMLデータ検索プラグイン

XMLデータの検索や登録など，XMLデータを扱うためのプラグインです。XMLデータ検索プラグインは，XML型という抽象データ型を扱うXMLデータ型プラグインと，XML型に対応するIXXML型というインデクス型を扱うIXXMLインデクス型プラグインで構成されています。

XQuery

XQueryは，XMLデータ問合せのための関数型言語です。XMLデータソースのための照会機能を提供しています。

（ア行）

異表記展開

表記方法が異なるものを同じ意味の語とみなすことです。かたかな異表記，アルファベット異表記，全角半角異表記などがあります。

インクリメンタル

インデクス作成単位の文字数を増やすことです。

インデクス作成方法

登録しているXMLデータまたは文字列データに対してインデクスを作成する場合，次の方法があります。

即時登録
インデクス作成とインデクスへのXMLデータ登録を同時に実行する方法です。

初期分割登録または分割遅延登録
インデクスへ反映しないで，XMLデータの登録だけを実行し，インデクス作成開始ユティリティを使ってインデクスへのXMLデータ登録を実行する方法です。

重み

検索条件を複数指定するときに，各検索条件に対して付ける重要度のことです。

（カ行）

検索条件

データベースのXMLデータを検索するための条件です。

検索ターム

検索条件に指定するキーワードです。

更新前ログ取得モード

UAPまたはユティリティを実行するときのデータベースの更新ログ取得方式の一つです。UAPまたはユティリティがRDエリアの内容を更新するときに，ロールバックに必要なデータベース更新ログだけを取得する方式のことです。

（サ行）

属性名

要素に付加された属性の名前のことです。

（タ行）

抽象データ型

ユーザが複雑な要素を持つデータとその操作を独自に定義し，利用できるデータ型のことです。

同義語辞書

同義語の展開方法を定義したファイルです。

同義語辞書テキストファイル

同義語辞書の基になるファイルです。同義語辞書を作成する前に作成します。

登録・検索同時実行

排他制御の単位を小さくすることで，SQLによるデータ登録と検索の同時実行を可能とする機能です。

（ハ行）

プラグインインデクスの遅延一括作成

プラグインインデクスを定義した表に行データを追加したとき，プラグインインデクスのデータ追加処理をしないで，データベース再編成ユティリティを使用して，あとで一括してプラグインインデクスのデータ追加処理をする機能です。

プラグインインデクスを定義した表の行データを大量追加（または大量更新）するときにこの機能を使用できます。

（マ行）

文字種

一つの同義語のグループには，かたかな，漢字，数字，アルファベットなどの種類の文字が混在している場合があります。これらの文字の種類をいいます。

（ヤ行）

ユーザLOB用RDエリア

画像，音声などの長大な可変長データを格納するためのRDエリアのことです。次に示すデータを，ユーザLOB用RDエリアに格納する必要があります。

BLOB型を指定した列（BLOB列）

抽象データ型内の，BLOB型を指定した属性

プラグインインデクス

ユーザ用RDエリア

ユーザが作成する表とインデクスを格納するためのRDエリアのことです。

ユニット

一つのサーバマシン内の，HiRDBの動作環境のことです。

要素名

XMLデータ中の要素のことです。XMLデータの内容は，要素ごとに分けられています。

（ラ行）

ログ取得モード

UAPまたはユティリティを実行するときのデータベースの更新ログ取得方式の一つです。UAPまたはユティリティがRDエリアの内容を更新するときに，ロールバックおよびロールフォワードに必要なデータベース更新ログを取得する方式のことです。

ログレスモード

UAPまたはユティリティを実行するときのデータベースの更新ログ取得方式の一つです。UAPまたはユティリティがRDエリアの内容を更新するときに，データベース更新ログを取得しない方式のことです。

索引

[数字]
[Ａ][Ｂ][Ｃ][Ｄ][Ｅ][Ｇ][Ｈ][Ｉ][Ｎ][Ｐ][Ｒ][Ｓ][Ｔ][Ｕ][Ｗ][Ｘ]
[ア行][カ行][サ行][タ行][ナ行][ハ行][マ行][ヤ行][ラ行]

(数字)

1RDエリア当たりの排他制御用共用メモリサイズ〔IXXMLインデクス型プラグイン〕

1件登録時最大メモリサイズ〔IXXMLインデクス型プラグイン〕

1文字近傍検索実行可否

(英字)

(Ａ)

absorb

allow

allowおよびdenyの指定例

(Ｂ)

BLOB

(Ｃ)

CDATA

CDATAセクション

contains

contains_with_score

createESISB

CREATE INDEX〔XMLデータ検索プラグイン〕

CREATE TABLE〔XMLデータ検索プラグイン〕

(Ｄ)

delete ideographicspace

delete space

deny

(Ｅ)

ELEMENTを内包する文字列

encoding=

ENTITIES

ENTITY

ESIS-B形式

ESIS-B形式

ESIS-B形式生成時に出力されるメッセージ

ESIS-B形式データの生成

ESIS-B出力

extracts

(Ｇ)

getMessage

(Ｈ)

HiRDB管理者

HiRDBをOSから削除する場合の注意事項

(Ｉ)

ID

IDREF

IDREFS

IXXMLインデクス型プラグイン

IXXMLインデクス型プラグインの環境設定

IXFREEWORD型

IXXML型

(Ｎ)

NMTOKEN

NMTOKENS

(Ｐ)

pdload

pdrorg

phdsyndicbkup

phdsyndicreg

phdsyndicrm

phjcond

phjdelay

phjexpnd

phjidxls

phjincmt

phjmodidx

phjstartidx

PhrdFilterExtension

PICファイル名

PrdbIllegalXMLException

PrdbParameterException

PrdbXMLConverter

PrdbXMLConverterクラス

(Ｒ)

RDエリア

RDエリア容量

(Ｓ)

SAMECASE

SAMEWIDE

score

setFilter

setProperty

SQL実行時の排他制御のモード

SQL連絡領域に出力されるメッセージ

SQL連絡領域に出力されるメッセージ

(Ｔ)

trimdown ideographicspace

(Ｕ)

UAPの更新およびバッチ登録による運用

UAPのコンパイルおよび実行時の設定

UAPのコンパイルおよび実行時の設定（HiRDB/Run TimeおよびHiRDB/Developer's Kitの場合）

UCS2（Universal multi-octet Character Set 2）

UCS4（Universal multi-octet Character Set 4）

unsetFilter

(Ｗ)

without attribute

(Ｘ)

XML Extensionシステムの構築

XML Extensionとは

XML Extensionの抽象データ型関数

XML Extensionの登録運用の長所および短所

XML Extensionのユティリティ

XML Extensionのユティリティ

XML Extensionを利用した検索

XML Extensionシステムの構成例

XML Extensionシステムの構築の流れ

XML Extensionのアンセットアップ（UNIXの場合）

XML Extensionの環境設定

XML Extensionの削除

XML Extensionの設定解除

XML Extensionのセットアップ（UNIXの場合）

XML Extensionの登録

XML Extensionの登録

XML Extensionの特長

XML Extensionのバージョンアップ

XML Extensionを構成するプログラム

XML型

XML型

XML型

XML出力

XMLデータ検索

XMLデータ検索の特長

XMLデータ型プラグイン

XMLデータ検索機能使用時のインデクス定義例〔XMLデータ検索プラグイン〕

XMLデータ検索プラグイン

XMLデータ変換コマンド（phdxmlcnv）

XMLのフィルタリング機能

XML変換ライブラリ

XML変換ライブラリ

XML変換ライブラリで提供するクラス一覧

XML変換ライブラリで提供するファイル一覧

XQuery

XQueryを使用した全文検索機能の利用

(ア行)

(い)

一括登録時最大メモリサイズ〔IXXMLインデクス型プラグイン〕

異表記オプション

異表記展開

異表記展開指定

異表記展開指定の形式

異表記展開の例

インクリメンタル

インクリメンタル

インデクス型

インデクス作成開始ユティリティ〔XMLデータ検索プラグイン〕

インデクス作成方法

インデクス作成方法指定〔XMLデータ検索プラグイン〕

インデクス作成方法指定の定義方法

インデクス作成方法に初期分割登録を指定してインデクスを作成する運用

インデクス作成方法に分割遅延登録を指定してインデクスを作成する運用

インデクス作成ルール追加機能使用時（INDEX_MEDIUM）のインデクス定義例

インデクス作成ルール追加機能のインデクス定義

インデクス情報の取得ユティリティ〔XMLデータ検索プラグイン〕

インデクス情報変更ユティリティ〔XMLデータ検索プラグイン〕

インデクス詰め替えユティリティ〔XMLデータ検索プラグイン〕

インデクス定義ファイル〔バックアップ〕

インデクス定義ファイル〔系切り替え〕

インデクスのインクリメンタルユティリティ〔XMLデータ検索プラグイン〕

インデクスの拡張ユティリティ〔XMLデータ検索プラグイン〕

インデクスの格納ページ数の設定項目と設定値

インデクスの定義〔XMLデータ検索プラグイン〕

インデクスファイル自動拡張機能使用時のインデクス定義例（XMLデータ検索用インデクスの場合）

インデクスファイル自動拡張機能のインデクス定義

インデクス分割遅延登録運用変更ユティリティ〔XMLデータ検索プラグイン〕

インデクス用グローバルバッファ最適化モード指定

(う)

運用環境のバックアップ

(え)

英文検索機能のインデクス定義

英文検索のインデクスに指定できる項目

エラーコード詳細化指定

エラー発生位置および詳細の取得

エラーメッセージ

(お)

重み

重み

重み指定の形式

(カ行)

(か)

環境情報の定義方法［IXXMLインデクス型プラグイン］

環境情報の定義方法［XMLデータ型プラグイン］

環境定義ファイル

環境定義ファイル〔バックアップ〕

環境定義ファイル〔系切り替え〕

環境定義ファイルに設定できる定義項目〔IXXMLインデクス型プラグイン〕

環境定義ファイルに設定できる定義項目〔XMLデータ型プラグイン〕

環境定義ファイルの定義例［IXXMLインデクス型プラグイン］

環境定義ファイルの定義例［XMLデータ型プラグイン］

(き)

機能

距離

近傍条件指定

近傍条件指定の形式

(く)

クラスメソッドの発行順序

グローバルバッファ管理の運用

(け)

系切り替え

検索因子

検索因子の形式

検索オプション〔IXXMLインデクス型プラグイン〕

検索時最大ワークメモリサイズ〔IXXMLインデクス型プラグイン〕

検索条件

検索ターム

検索ターム

検索に使用できる文字

検索用ワークファイルディレクトリ〔IXXMLインデクス型プラグイン〕

検索抑止インデクスサイズ

(こ)

更新前ログ取得モード

更新前ログ取得モード

構造検索パターン

構造検索パターンの形式

構造名指定の形式

構造名の指定

構造名のワイルドカード指定

構造名を指定した検索条件のAND/OR論理条件

(サ行)

(さ)

サーバ単位

サーバ単位

削除文字指定機能使用時のインデクス定義例

削除文字指定機能のインデクス定義

(し)

資源の排他

システム共通定義の変更

システム共通定義の変更

システム単位

システム単位

指定できるワイルドカードおよび特殊文字

障害発生時の運用方法

使用できる文字

除外文字検索

初期分割登録

初期分割登録〔XMLデータ検索プラグイン〕

初期分割登録〔XMLデータ検索プラグイン〕

初期分割登録使用時のインデクス定義例〔XMLデータ検索プラグイン〕

(す)

推奨する運用方法

推奨する組み合わせ

推奨する登録運用

スコア算出法指定

スコア値

(せ)

性能向上の運用

全角文字半角文字統一機能使用時のインデクス定義例

前提プログラム

全文検索条件式の形式

全文検索条件式の指定例

全文検索条件式の文法

全文検索用データへの変換規則

(そ)

即時登録

即時登録〔XMLデータ検索プラグイン〕

即時登録〔XMLデータ検索プラグイン〕

属性値指定

属性値指定の形式

属性の変換規則

属性名

(タ行)

(た)

大小文字・全角文字半角文字統一機能のインデクス定義

大小文字統一機能使用時のインデクス定義例

濁音統一機能使用時のインデクス定義例

濁音統一機能のインデクス定義

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

タグ間テキスト内のシフトJISコードで表せないUnicode文字

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

単純文字列指定

単純文字列指定の形式

(ち)

遅延データスキャン機能指定

抽象データ型

抽象データ型

抽象データ型

抽象データ型関数

抽象データ型関数の文法

(つ)

通常のインデクス定義〔XMLデータ検索プラグイン〕

(て)

提供するクラス一覧

提供するファイル一覧

データ格納領域の確保〔XMLデータ検索プラグイン〕

データディクショナリのRDエリア容量

データの登録〔XMLデータ検索プラグイン〕

データのバックアップ

データベース再編成ユティリティ

データベース作成の流れ〔XMLデータ検索プラグイン〕

データベース作成ユティリティ

データベースの作成〔XMLデータ検索プラグイン〕

テキスト検索条件の形式

テキスト検索条件の指定

デッドロックの防止

(と)

同義語グループ内での文字種の制限

同義語辞書

同義語辞書〔バックアップ〕

同義語辞書〔系切り替え〕

同義語辞書

同義語辞書削除ユティリティ〔XMLデータ検索プラグイン〕

同義語辞書テキストファイル

同義語辞書テキストファイル

同義語辞書テキストファイルの記述例

同義語辞書登録ユティリティ〔XMLデータ検索プラグイン〕

同義語辞書の作成

同義語辞書の登録

同義語辞書バックアップユティリティ〔XMLデータ検索プラグイン〕

同義語辞書名に指定できない記号および英数字

同義語展開指定

同義語展開指定の形式

登録

登録・検索同時実行

登録・検索同時実行による運用

登録・検索同時実行による運用の長所および短所

登録・検索同時実行の設定〔XMLデータ検索プラグイン〕

登録運用で推奨するパラメタの組み合わせ

登録運用の種類

登録運用のログ取得方式の設定

特殊文字の指定

特定構造検索指定

特定構造検索指定

特定構造検索指定の形式

特定構造指定の形式

(ナ行)

(な)

名前字句

名前字句並び

(ハ行)

(は)

排他取得内容

バックアップ取得方法

(ひ)

標準エラー出力に出力されるメッセージ

表の格納ページ数の設定項目と設定値

表の削除

表の作成〔XMLデータ検索プラグイン〕

(ふ)

ファイル容量

フィルタ情報定義ファイル指定時の注意事項

フィルタ情報定義ファイルの指定規則

フィルタ情報定義ファイルの指定形式

フィルタリング指定項目一覧

フィルタリング指定項目の優先順位

複合指定例

複合条件検索

プラグインインストールディレクトリ

プラグインインデクスの遅延一括作成

プラグインインデクスの遅延一括作成による運用

プラグイン定義ファイル名

プラグイン提供関数からの一括取得処理

プラグイン名

分割遅延登録

分割遅延登録・更新系SQL同時実行使用時のインデクス定義例

分割遅延登録・更新系SQL同時実行の設定

分割遅延登録〔XMLデータ検索プラグイン〕

分割遅延登録〔XMLデータ検索プラグイン〕

分割遅延登録使用時のインデクス定義例〔XMLデータ検索プラグイン〕

分割遅延登録への移行時に実行する，インデクス情報変更ユティリティの指定例〔XMLデータ検索プラグイン〕

分割遅延登録用ファイルオーバ時の処理〔IXXMLインデクス型プラグイン〕

(マ行)

(め)

メッセージ一覧

メッセージの記述形式

メッセージログ・標準エラー出力に出力されるメッセージ

メッセージログに出力されるメッセージ

メモリ所要量

(も)

目的

文字コードによる機能差異

文字種

文字種

(ヤ行)

(ゆ)

ユーザLOB用RDエリア

ユーザLOB用RDエリア容量

ユーザ環境設定〔XMLデータ検索プラグイン〕

ユーザ用RDエリア

ユーザ用RDエリア容量

ユティリティ〔XMLデータ検索プラグイン〕

ユティリティコマンドの排他制御のモード

ユティリティの記述形式

ユティリティの使用方法

ユニット

ユニット単位

ユニット単位

(よ)

拗音統一機能使用時のインデクス定義例

拗音統一機能のインデクス定義

要素名

要素の変換規則

(ラ行)

(り)

リソースの見積もり

(れ)

例外クラス

(ろ)

ログ取得モード

ログ取得モード

ログ量

ログレスモード

ログレスモード

論理ファイル数

■ 商標類

AIXは，米国における米国International Business Machines Corp.の登録商標です。
Itaniumは，アメリカ合衆国および他の国におけるインテル コーポレーションまたはその子会社の登録商標です。
HP-UXは，米国Hewlett-Packard Companyのオペレーティングシステムの名称です。
Java 及びすべてのJava関連の商標及びロゴは，米国及びその他の国における米国SunMicrosystems, Inc.の商標または登録商標です。
Linuxは，Linus Torvaldsの米国およびその他の国における登録商標あるいは商標です。
Microsoftは，米国およびその他の国における米国Microsoft Corp.の登録商標です。
Red Hatは，米国およびその他の国でRed Hat, Inc. の登録商標若しくは商標です。
Solarisは，米国Sun Microsystems, Inc.の米国およびその他の国における商標または登録商標です。
UNIXは，X/Open Company Limitedが独占的にライセンスしている米国ならびに他の国における登録商標です。
Windowsは，米国およびその他の国における米国Microsoft Corp.の登録商標です。
Windows Serverは，米国Microsoft Corporationの米国及びその他の国における登録商標です。
Windows Vistaは，米国Microsoft Corporationの米国及びその他の国における登録商標です。
X/Openは，X/Open Company Limited の英国ならびに他の国における登録商標です。