ヘッダーをスキップ
Oracle® Textアプリケーション開発者ガイド
12cリリース1 (12.1)
B71317-04
  目次へ移動
目次
索引へ移動
索引

前
次
 

フィールド・セクション

フィールド・セクションは、ゾーン・セクションと同じように、開始タグと終了タグで区切られたテキストの範囲です。フィールド・セクションはゾーン・セクションより効率的で、リージョンがドキュメントの残りの部分とは別に索引付けされる点でゾーン・セクションと異なります。作成できるフィールド・セクションの数は無制限です。

フィールド・セクションは異なる方法で索引付けされるため、大量のドキュメントが索引付けされている場合は、ゾーン・セクションに比べて問合せパフォーマンスが向上します。

フィールド・セクションは、ドキュメント内のセクションに1回のみ出現するニュース・ヘッダーのフィールドなどに最適です。また、フィールド・セクションは、ドキュメントの残りの部分で参照できます。

ゾーン・セクションとは異なり、フィールド・セクションには次の制限事項があります。

この項では、次の項目について説明します。

Visibleなフィールド・セクションおよびInvisibleなフィールド・セクション

デフォルトでは、フィールド・セクションはドキュメントの残りの部分とは別にサブドキュメントとして索引付けされます。このため、フィールド・セクションは前後のテキストから参照不能であり、WITHIN句でそのセクション名を明示的に指定することによってのみ問い合せることができます。

フィールド・セクション内のテキストをドキュメント全体の一部として索引付けする場合は、フィールド・セクションを参照可能にできます。参照可能なフィールド・セクション内のテキストは、WITHIN演算子を使用するかどうかにかかわらず問い合せることができます。

次の例では、参照不能なフィールド・セクションと参照可能なフィールド・セクションの相違点を示します。

次のコードは、BASIC_SECTION_GROUP型のセクション・グループbasicgroupを定義します。次に、<A>タグに対してAuthorというフィールド・セクションをbasicgroupに作成します。また、参照可能フラグをFALSEに設定して、参照不能なセクションを作成します。

begin
ctx_ddl.create_section_group('basicgroup', 'BASIC_SECTION_GROUP');
ctx_ddl.add_field_section('basicgroup', 'Author', 'A', FALSE);
end;

Authorフィールド・セクションは参照不能であるため、Authorセクション内のテキストを検索するには、次のようにWITHIN演算子を使用する必要があります。

'(Martin Luther King) WITHIN Author'

WITHIN演算子を使用せずにMartin Luther Kingを問い合せても、フィールド・セクション内のこの語句のインスタンスは戻りません。WITHINを指定せずにフィールド・セクション内のテキストを問い合せる場合は、セクション作成時に次のように参照可能フラグをTRUEに設定する必要があります。

begin
ctx_ddl.add_field_section('basicgroup', 'Author', 'A', TRUE);
end;

ネストされたフィールド・セクション

フィールド・セクションはネストできません。たとえば、フィールド・セクションを<TITLE>で始まるように定義し、別のフィールド・セクションを<FOO>で始まるように定義した場合、この2つのセクションは次のようにネストすることはできません

<TITLE> dog <FOO> cat </FOO> </TITLE>

ネストされたセクションを使用するには、これらをゾーン・セクションとして定義します。

繰返しフィールド・セクション

繰返しフィールド・セクションは使用できますが、WITHIN問合せはこれらを1つのセクションとして処理します。次に、ドキュメントの繰返しフィールド・セクションの例を示します。

<TITLE> cat </TITLE>
<TITLE> dog </TITLE>

問合せ(dog and cat)within titleは、これらのワードが別のセクション内に存在している場合でも、ドキュメントを検出します。

WITHIN問合せで繰返しセクションを区別するには、これらをゾーン・セクションとして定義します。