プライマリ・コンテンツに移動
Oracle® Spatial and Graph RDFセマンティック・グラフ開発者ガイド
12cリリース1 (12.1)
B72469-07
目次へ移動
目次
索引へ移動
索引

前
次

14 SEM_RDFCTXパッケージのサブプログラム

SEM_RDFCTXパッケージには、ドキュメントに作成されるエクストラクタ・ポリシーおよびセマンティク索引を管理するサブプログラム(ファンクションとプロシージャ)が含まれます。この章のサブプログラムを使用するには、「ドキュメントのセマンティク索引付け」に記載されている概念および使用情報について理解しておく必要があります。

この章では、サブプログラムに関するリファレンス情報を示します(サブプログラムのリストはアルファベット順です)。

14.1 SEM_RDFCTX.ADD_DEPENDENT_POLICY

書式

SEM_RDFCTX.ADD_DEPENDENT_POLICY(
     index_name     IN VARCHAR2, 
     policy_name    IN VARCHAR2, 
     partition_name IN VARCHAR2 DEFAULT NULL);

説明

(すでに作成された)索引または索引パーティションに依存ポリシーを追加します。

パラメータ

index_name

索引の名前。

policy_name

依存ポリシーの名前。

partition_name

指定された索引がローカルの場合、ターゲット・パーティションの名前。(それ以外の場合は、NULLである必要があります。)

使用上の注意

新しい依存ポリシーに対応するベース・ポリシーは、事前に索引の一部にしておく必要があります。

次の例では、索引ArticleIndexに新しい依存ポリシーSEM_EXTR_PLUS_GEOONTを追加します。

begin
  sem_rdfctx.add_dependent_policy (index_name  => 'ArticleIndex',
                                   policy_name => 'SEM_EXTR_PLUS_GEOONT');
end;
/

14.2 SEM_RDFCTX.CREATE_POLICY

書式

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番目の書式はベース・ポリシーに依存するポリシー用です。)

パラメータ

policy_name

エクストラクタ・ポリシーの名前。

extractor

情報エクストラクタの抽出ロジックをカプセル化するRDFCTX_EXTRACTORタイプのサブタイプのインスタンス。

preferences

ポリシーに関連付けられているプリファレンス。

base_policy

依存ポリシーのベース・エクストラクタ・ポリシー。

user_models

依存ポリシーのユーザー・モデルのリスト。

user_entailments

依存ポリシーのユーザー伴意のリスト。

使用上の注意

このプロシージャを使用して作成されるエクストラクタ・ポリシーは、そのポリシーを使用して作成されるセマンティク索引の特性を決定します。各エクストラクタ・ポリシーは、エクストラクタ・タイプのインスタンスを直接または間接的に参照します。エクストラクタ・タイプのインスタンスを直接参照するエクストラクタ・ポリシーは、オントロジの追加の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;
/

14.3 SEM_RDFCTX.DROP_POLICY

書式

SEM_RDFCTX.DROP_POLICY(
     policy_name  IN VARCHAR2);

説明

使用していないエクストラクタ・ポリシーを削除します。

パラメータ

policy_name

エクストラクタ・ポリシーの名前。

使用上の注意

指定されたポリシーがドキュメントのセマンティク索引に使用されている場合、または、依存エクストラクタ・ポリシーが、指定されたポリシーに存在する場合、例外が生成されます。

次の例では、SEM_EXTR_PLUS_GEOONTエクストラクタ・ポリシーを削除します。

begin
  sem_rdfctx.drop_policy (policy_name => 'SSEM_EXTR_PLUS_GEOONT');
end;
/

14.4 SEM_RDFCTX.MAINTAIN_TRIPLES

書式

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つ以上のトリプルを追加します。

パラメータ

index_name

ドキュメントのセマンティク索引の名前。

where_clause

ドキュメントが格納される表のSQL述語(WHEREキーワードのないWHERE句テキスト)で、索引を保持する行を識別します。

rdfxml_content

ドキュメントに対応する個々のグラフに追加される、RDF/XMLドキュメント形式のトリプル。

policy_name

エクストラクタ・ポリシーの名前。policy_nameがNULL (デフォルト)の場合、トリプルは、索引のデフォルト(または唯一の)エクストラクタ・ポリシーによって抽出される情報に追加され、ポリシー名を指定する場合、トリプルはそのポリシーによって抽出される情報に追加されます。

action

トリプルで実行するメンテナンス操作のタイプ。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;
/

14.5 SEM_RDFCTX.SET_DEFAULT_POLICY

書式

SEM_RDFCTX.SET_DEFAULT_POLICY(
     index_name   IN VARCHAR2, 
     policy_name  IN VARCHAR2);

説明

複数のエクストラクタ・ポリシーで構成される、セマンティク索引のデフォルトのエクストラクタ・ポリシーを設定します。

パラメータ

index_name

ドキュメントのセマンティク索引の名前。

policy_name

指定されたセマンティク索引のデフォルトのエクストラクタ・ポリシーとして使用されるエクストラクタ・ポリシーの名前。index_nameを作成したCREATE INDEX文のPARAMETERS句に示されるエクストラクタ・ポリシーの1つである必要があります。

使用上の注意

ドキュメントのセマンティク索引を作成する場合、複数のエクストラクタ・ポリシーを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;
/

14.6 SEM_RDFCTX.SET_EXTRACTOR_PARAM

書式

SEM_RDFCTX.SET_EXTRACTOR_PARAM(
     param_key    IN VARCHAR2, 
     patam_value  IN VARCHAR2, 
     param_desc   IN VARCHAR2);

説明

CalaisやGATEなど、外部情報エクストラクタを使用するようにOracle Databaseセマンティク索引付けサポートを構成します。

パラメータ

param_key

設定されるパラメータのキー。

param_value

設定されるパラメータの値。

param_desc

設定されるパラメータの短い説明。

使用上の注意

このプロシージャを使用するには、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セットの値のみがあり、対応する情報エクストラクタを使用してセマンティク索引のすべてのインスタンスに使用されます。パラメータのいずれかの既存値を変更する必要がある場合、このプロシージャを使用できます。