拡張テキスト検索構文は、基本テキスト検索とは異なり、基盤となるテキスト・エンジンを使用する ため、検索構文が異なります。 拡張テキスト検索は、近接検索やファジー検索などの機能をサポートします。
基本テキスト検索で「contains-text-basic」関数および「score-basic」関数が使用されるのと同様に、拡張テキスト検索構文ではデータベース専用の関数が使用されます。 拡張検索は、 基盤となるテキスト・エンジン (DB2® UDB の DB2 Net Search Extender、Oracle の OracleText、 および IBM® Text Search for DB2 for z/OS®) によって サポートされる検索構文を使用するため、検索構文は異なります。 Oracle の場合、拡張検索は OracleText でサポートされる検索構文を使用します。
例:
/Book[contains-text-db2(@Title, “ 'ibm' ”)=1] SORTBY(score-db2(@Title, “ 'ibm' ”))
IBM Content Manager バージョン 8 リリース 2 との互換性により、拡張テキスト検索関数「contains-text」および「score」も引き続きサポートされます。 これらの関数は contains-text-db2 関数および score-db2 関数に相当します。
例:
/Book[contains-text-db2ts(@Title, “ibm”)=1] SORTBY(score-db2ts(@Title, “ibm”))
また、DB2TS は追加の
検索引数オプションとして QUERYLANGUAGE、RESULTLIMIT、および SYNONYM を
サポートしています。例:
/Book[contains-text-db2ts(@Title, “ibm”, “QUERYLANGUAGE=en_US RESULTLIMIT=10 SYNONYM=ON”)=1]
例:
/Book[contains-text-oracle(@Title, “ibm”,1) > 0] SORTBY(score-oracle(1))
contains-text-oracle 関数には、 オプションで 3 番目のパラメーターであるラベル名が含まれ、score-oracle に対するパラメーターとして使用されます。拡張テキスト検索について詳しくは、SSearchICM サンプルを参照してください。
