Request-Line = Method SP Handle SP Frame SP CATP-Version SP Request-Code SP Request-Phrase CRLF
(1) Method
Method = "INDEXLIST"
(2) Handle
GETHANDLEリクエストによって取得したハンドルを指定する。
(3) Frame
フレームには3桁の任意の数字を指定する。但し、このフレームの値はサーバにて参照されない。
(4) CATP-Version
クライアントがサポートしている最新のCATPバージョンを指定する。
(5) Request-Code
リクエストコードは、リクエストを表すコードである数字3桁の0を指定する。
Request-Code = "000" ; 数字3桁の0
(6) Request-Phrase
リクエストの説明句として、下記のトークンを指定する。
Request-Phrase = "REQUEST"
Request-Header = Database-names [Number-of-entries]
(1) Database-names
検索対象のデータベース名を指定する。データベース名はリスト形式で複数指定可能である。
Database-names = "Database-names" ":" 1#Database-name CRLF Database-name = token
(2) Number-of-entries
データベースの検索の結果、取得したいインデックスの数を指定する。本フィールドは前方一致等のワイルドカード機能がサーバで実装されている場合に有効である。サーバは本値分のインデックス情報を必ず返送しなければいけないわけではない。本フィールドが省略された場合のデフォルト値はサーバの実装による。
Number-of-entries = "Number-of-entries" ":" 1*DIGIT CRLF
オブジェクトボディのレングスを指定する。
オブジェクトボディのエンコーディング方式を指定する。
オブジェクトボディには検索対象のインデックスキーワードを指定する。
Index-keyword = Tag ":" Value CRLF Tag = token ; 検索対象タグ Value = text
Status-Line = Method SP Handle SP Frame SP CATP-Version SP Status-Code SP Reason-Phrase CRLF
(1) Method
メソッドはクライアントがリクエストラインに指定したメソッドと同じものを指定する。
(2) Handle
ハンドルはクライアントがリクエストラインに指定したハンドルと同じものを指定する。
(3) Frame
フレームはクライアントがリクエストラインに指定したフレームと同じものを指定する。
(4) CATP-Version
CATPバージョンは、サーバで使用されるプロトコールのバージョンを指定する。クライアントがリクエストラインで指定したCATPバージョンが、サーバがサポートしているバージョンよりも古い場合、サーバはそのバージョンをサポートしていることが望まれる。その場合クライアント指定のCATPバージョンをステータスラインに指定する。
(5) Status-CodeとReason-Phrase
サーバでのリクエストに対する処理結果を意味する。各コードの詳細並びにReason-Phraseはサーバの実装による。
2xx : 成功本メソッドがサーバにおいて正常に処理されたことを意味する。
4xx : クライアントエラーリクエストに間違った構文があるか、実行がもともと不可能である。
5xx : サーバエラーサーバはリクエストを遂行できなかったことを意味する。
Response-Header = Number-of-fields-returned
(1) Result-count
データベース検索の結果ヒットしたインデックス数を指定する。
Result-count = "Result-count" ":" 1*DIGIT CRLF
(1) Number-of-fields-returned
オブジェクトボディ(Object-Body)に設定されたインデックス情報の数を指定する。
Number-of-fields-returned = "Number-of-fields-returned" ":" 1*DIGIT CRLF
(1) Content-Length
オブジェクトボディのレングスを指定する。
オブジェクトボディのエンコーディング方式を指定する。オブジェクトボディが存在しない場合は省略しても良い。
オブジェクトボディには検索の結果、該当するインデックス情報レコードまたは診断レコードを設定する。インデックス情報レコードは、インデックス情報をフィールドとする単一レコードである。
尚、下記の場合はオブジェクトボディ部にインデックス情報レコードは設定されない。
Object-Body = Diagnostic-record | Index-info-record Index-info-record = Record Record = 1*Field Field = Index-keyword "=" Number-of-record CRLF Index-keyword = token ; インデックスキーワード Number-of-record = 1*DIGIT ; インデックスキーワードに対応するデータベースレコード数