SEM_RDFCTXパッケージには、ドキュメントに作成されるエクストラクタ・ポリシーおよびセマンティク索引を管理するサブプログラム(ファンクションとプロシージャ)が含まれます。この章のサブプログラムを使用するには、「ドキュメントのセマンティク索引付け」に記載されている概念および使用情報について理解しておく必要があります。
この章では、サブプログラムに関するリファレンス情報を示します(サブプログラムのリストはアルファベット順です)。
書式
SEM_RDFCTX.ADD_DEPENDENT_POLICY( index_name IN VARCHAR2, policy_name IN VARCHAR2, partition_name IN VARCHAR2 DEFAULT NULL);
説明
(すでに作成された)索引または索引パーティションに依存ポリシーを追加します。
パラメータ
使用上の注意
新しい依存ポリシーに対応するベース・ポリシーは、事前に索引の一部にしておく必要があります。
例
次の例では、索引ArticleIndexに新しい依存ポリシーSEM_EXTR_PLUS_GEOONTを追加します。
begin
sem_rdfctx.add_dependent_policy (index_name => 'ArticleIndex',
policy_name => 'SEM_EXTR_PLUS_GEOONT');
end;
/
書式
SEM_RDFCTX.CREATE_POLICY( policy_name IN VARCHAR2, extractor IN mdsys.rdfctx_extractor, preferences IN sys.XMLType DEFAULT NULL);
または
SEM_RDFCTX.CREATE_POLICY( policy_name IN VARCHAR2, base_policy IN VARCHAR2, user_models IN SEM_MODELS DEFAULT NULL, user_entailments IN SEM_MODELS DEFAULT NULL);
説明
エクストラクタ・ポリシーを作成します。(最初の書式はベース・ポリシー用であり、2番目の書式はベース・ポリシーに依存するポリシー用です。)
パラメータ
使用上の注意
このプロシージャを使用して作成されるエクストラクタ・ポリシーは、そのポリシーを使用して作成されるセマンティク索引の特性を決定します。各エクストラクタ・ポリシーは、エクストラクタ・タイプのインスタンスを直接または間接的に参照します。エクストラクタ・タイプのインスタンスを直接参照するエクストラクタ・ポリシーは、オントロジの追加のRDFモデルを含む他のエクストラクタ・ポリシーを構成するために使用できます。
エクストラクタ・パラメータに割り当てられるエクストラクタ・タイプのインスタンスは、タイプmdsys.rdfctx_extractorの直接的または間接的なサブタイプのインスタンスである必要があります。
user_modelsパラメータで指定されるRDFモデルは、ポリシーを作成しているユーザーにアクセス可能である必要があります。
user_entailmentsパラメータで指定されるRDF伴意は、ポリシーを作成しているユーザーにアクセス可能である必要があります。伴意の基礎となるRDFモデルは、依存ポリシーに自動的に含まれることはありません。基礎となるこれらのRDFモデルを1つ以上含めるには、モデルをuser_modelsパラメータに含める必要があります。
エクストラクタ・ポリシーに対して指定されるプリファレンスは、索引付けされるドキュメントおよびその他の関連情報に使用されているリポジトリのタイプを決定します。詳細は、「外部ドキュメントの索引付け」を参照してください。
例
次の例では、Oracle Databaseによるセマンティク索引付けのサポートに含まれているgatenlp_extractorエクストラクタ・タイプを使用して、エクストラクタ・ポリシーを作成します。
begin
sem_rdfctx.create_policy (policy_name => 'SEM_EXTR',
extractor => mdsys.gatenlp_extractor());
end;
/
次の例では、事前に作成されたエクストラクタ・ポリシーの依存ポリシーを作成し、依存ポリシーにユーザー定義のRDFモデルgeo_ontologyを追加します。
begin
sem_rdfctx.create_policy (policy_name => 'SEM_EXTR_PLUS_GEOONT',
base_policy => 'SEM_EXTR',
user_models => SEM_MODELS ('geo_ontology'));
end;
/
書式
SEM_RDFCTX.DROP_POLICY( policy_name IN VARCHAR2);
説明
使用していないエクストラクタ・ポリシーを削除します。
使用上の注意
指定されたポリシーがドキュメントのセマンティク索引に使用されている場合、または、依存エクストラクタ・ポリシーが、指定されたポリシーに存在する場合、例外が生成されます。
例
次の例では、SEM_EXTR_PLUS_GEOONTエクストラクタ・ポリシーを削除します。
begin sem_rdfctx.drop_policy (policy_name => 'SSEM_EXTR_PLUS_GEOONT'); end; /
書式
SEM_RDFCTX.MAINTAIN_TRIPLES( index_name IN VARCHAR2, where_clause IN VARCHAR2, rdfxml_content IN sys.XMLType, policy_name IN VARCHAR2 DEFAULT NULL, action IN VARCHAR2 DEFAULT 'ADD');
説明
特定のドキュメントから抽出された情報を含むグラフに、1つ以上のトリプルを追加します。
パラメータ
ドキュメントのセマンティク索引の名前。
ドキュメントが格納される表のSQL述語(WHEREキーワードのないWHERE句テキスト)で、索引を保持する行を識別します。
ドキュメントに対応する個々のグラフに追加される、RDF/XMLドキュメント形式のトリプル。
エクストラクタ・ポリシーの名前。policy_nameがNULL (デフォルト)の場合、トリプルは、索引のデフォルト(または唯一の)エクストラクタ・ポリシーによって抽出される情報に追加され、ポリシー名を指定する場合、トリプルはそのポリシーによって抽出される情報に追加されます。
トリプルで実行するメンテナンス操作のタイプ。rdfxml_contentパラメータで指定されるトリプルを追加するADDで現在サポートされている唯一の値(デフォルト)。
使用上の注意
セマンティクに索引付けされたドキュメントから抽出される情報は、不完全で、適切なコンテキストが欠けている場合があります。このプロシージャによって、ドメインは、セマンティクに索引付けされた特定のドキュメントに関連する個々のグラフにトリプルを追加できるようになるため、これ以降のすべてのSEM_CONTAINS問合せは、それらのドキュメント検索基準で、これらのトリプルを検討できるようになります。
このプロシージャは、索引名とWHERE句テキストを受け入れ、追加のトリプルで注釈を付ける特定のドキュメントを識別します。たとえば、where_clauseは、'docId IN (1,2,3)'など、数値データを含む単純な述語として指定される場合があります。
例
次の例では、対応する個々のグラフにトリプルを追加することで、セマンティク索引ArticleIndexを使用して特定のドキュメントに注釈を付けます。
begin
sem_rdfctx.maintain_triples(
index_name => 'ArticleIndex',
where_clause => 'docid = 15',
rdfxml_content => sys.xmltype(
'<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:rdfs="http://www.w3.org/2000/01/rdf-schema#"
xmlns:pred="http://myorg.com/pred/">
<rdf:Description rdf:about=" http://newscorp.com/Org/ExampleCorp">
<pred:hasShortName
rdf:datatype="http://www.w3.org/2001/XMLSchema#string">
Example
</pred:hasShortName>
</rdf:Description>
</rdf:RDF>'));
end;
/
書式
SEM_RDFCTX.SET_DEFAULT_POLICY( index_name IN VARCHAR2, policy_name IN VARCHAR2);
説明
複数のエクストラクタ・ポリシーで構成される、セマンティク索引のデフォルトのエクストラクタ・ポリシーを設定します。
パラメータ
使用上の注意
ドキュメントのセマンティク索引を作成する場合、複数のエクストラクタ・ポリシーをCREATE INDEX文のPARAMETERS句の名前のスペース区切りリストとして指定できます。「ドキュメントのセマンティク索引付け」の説明にあるとおり、エクストラクタ・ポリシーを名前で識別しないすべてのSEM_CONTAINS問合せのデフォルトのエクストラクタ・ポリシーとして、このリストの最初のポリシーが使用されます。SEM_RDFCTX.SET_DEFAULT_POLICYプロシージャを使用すると、索引に異なるデフォルトのポリシーを設定できます。
例
次の例では、ArticleIndex索引のデフォルトのエクストラクタ・ポリシーとして、CITY_EXTRを設定します。
begin
sem_rdfctx.set_default_policy (index_name => 'ArticleIndex',
policy_name => 'CITY_EXTR');
end;
/
書式
SEM_RDFCTX.SET_EXTRACTOR_PARAM( param_key IN VARCHAR2, patam_value IN VARCHAR2, param_desc IN VARCHAR2);
説明
CalaisやGATEなど、外部情報エクストラクタを使用するようにOracle Databaseセマンティク索引付けサポートを構成します。
使用上の注意
このプロシージャを使用するには、SYSDBAロールが必要です。
Calaisエクストラクタ・タイプ(「Calaisエクストラクタ・タイプの構成」を参照)を使用するには、次のパラメータの値を指定する必要があります。
CALAIS_WS_ENDPOINT: CalaisのWebサービスのエンド・ポイント。
CALAIS_KEY: Calaisのライセンス・キー。
CALAIS_WS_SOAPACTION: Calais WebサービスのSOAPアクション。
General Architecture for Text Engineering (GATE)エクストラクタ・タイプ(「General Architecture for Text Engineering (GATE)の使用」を参照)を使用するには、次のパラメータの値を指定する必要があります。
GATE_NLP_HOST: GATE NLPリスナーのホスト。
GATE_NLP_PORT: GATE NLPリスナーのポート。
これらのパラメータの他に、情報エクストラクタを使用したりファイアウォールの外側にあるドキュメントを索引付けしたりするには、HTTP_PROXYパラメータの値を指定する必要がある場合があります。
データベース・インスタンスには、これらのパラメータ用に1セットの値のみがあり、対応する情報エクストラクタを使用してセマンティク索引のすべてのインスタンスに使用されます。パラメータのいずれかの既存値を変更する必要がある場合、このプロシージャを使用できます。