15.23 SEM_APIS.BUILD_RESULT_TAB

形式

SEM_APIS.BUILD_RESULT_TAB (
    query_pattern_type IN NUMBER,
    result_tab_name    IN VARCHAR2,
    rdf_graph_name     IN VARCHAR2,
    key_string         IN VARCHAR2,
    prefixes           IN VARCHAR2 DEFAULT NULL,
    tablespace_name    IN DBMS_ID DEFAULT NULL,
    degree             IN NUMBER DEFAULT NULL,
    options            IN VARCHAR2 DEFAULT NULL,
    network_owner      IN DBMS_ID DEFAULT NULL,
    network_name       IN VARCHAR2 DEFAULT NULL);

説明

指定されたRDFグラフの、指定されたタイプの結果表を作成します。

これらのパラメータの詳細は、次のパラメータの項を参照してください。

パラメータ

query_pattern_type

結果表のタイプ。

次のいずれかの値を使用できます。
  • SEM_APIS.SPM_TYPE_SVP
  • SEM_APIS.SPM_TYPE_MVP
  • SEM_APIS.SPM_TYPE_PCN
result_tab_name

結果表の名前の一部として使用する文字列。

key_stringパラメータで指定された(単一)プロパティについては名前がId(<property>)として自動生成されるため、MVP表の場合はNULLである必要があります。

rdf_graph_name

RDFグラフの名前。

key_string

含めるプロパティのリストを指定します。各プロパティは、RDFグラフのデータに基づいた単一値である必要があります。プロパティの前に'+'が付いている場合、その表には字句値の列が含まれます。逆プロパティを含めるには、このプロパティの前に^を使用します。たとえば、+^:fatherOfを使用すると、逆プロパティの字句値情報が含まれます(字句値情報を含む:hasFatherプロパティと直観的に同等)。

prefixes

key_stringパラメータで使用されているプロパティに関連する接頭辞を指定します。構文は、SPARQL問合せで使用されるPREFIX構文と同じです。

tablespace_name

結果表のターゲット表領域の名前。

degree

操作中に使用する並列度。

options

操作時に使用する任意のオプションを指定する文字列。

サポートされるオプションは次のとおりです。

  • INMEMORY=T: すべての述語を含むインメモリーSVP表またはインメモリーMVP表を構築します。
  • S_INDEX=F: MVP表およびPCN表のSTART_NODE_ID列に対する一意でない索引の作成をスキップします。
  • P_INDEXES=F: PCN表の個々のプロパティ列に対する一意でない索引の作成をスキップします。
network_owner

RDFネットワークの所有者。(表1-2を参照してください。)

network_name

RDFネットワークの名前。(表1-2を参照してください。)

使用に関するノート

  • この操作にはDDLセマンティクスがあります。
  • 起動側は、RDFグラフまたはRDFネットワーク(あるいはその両方)の所有者である必要があります。

次の例では、SVP表を作成します:

BEGIN
  SEM_APIS.BUILD_RESULT_TAB(
     query_pattern_type => SEM_APIS.SPM_TYPE_SVP
   , result_tab_name    => 'FLHF'
   , rdf_graph_name     => 'M1'
   , key_string         => ' :fname :lname :height ^:fatherOf '
   , prefixes           => ' PREFIX : <http://www.example.com#> ' 
   , network_owner      => 'RDFUSER'
   , network_name       => 'NET1'
  );
END;
/

次の例では、PCN表を作成します。

BEGIN
  SEM_APIS.BUILD_RESULT_TAB(
     result_tab_name    => ‘GRANDPA’
   , query_pattern_type => SEM_APIS.SPM_TYPE_PCN
   , rdf_graph_name     => 'M1'
   , key_string         => ' S :fatherOf :fatherOf '
   , prefixes           => ' PREFIX : <http://www.example.com#> ' 
   , network_owner      => 'RDFUSER'
   , network_name       => 'NET1'
  );
END;
/

次の例では、MVP表を作成します:

BEGIN
  SEM_APIS.BUILD_RESULT_TAB(
     query_pattern_type => SEM_APIS.SPM_TYPE_MVP
   , result_tab_name    => null /* must be NULL (the name is auto-generated based on id(property) */
   , rdf_graph_name     => 'M1'
   , key_string         => ' :motherOf ' /* must have exactly one property */
   , prefixes           => ' PREFIX : <http://www.example.com#> ' 
   , network_owner      => 'RDFUSER'
   , network_name       => 'NET1'
  );
END;
/