5.13 ネットワーク・データ・モデル表

空間ネットワークの接続性情報は、ノード表およびリンク表の2つの表に格納されます。さらに、パス情報を、パス表およびパスリンク表に格納できます。

これらの表は、CREATE_<network-type>_NETWORKプロシージャを使用してネットワークを作成するときに、自動的に作成することができ、また、SDO_NET.CREATE_NODE_TABLESDO_NET.CREATE_LINK_TABLESDO_NET.CREATE_PATH_TABLEおよびSDO_NET.CREATE_PATH_LINK_TABLEの各プロシージャを使用して作成することもできます。

これらの表には、事前定義の名前を持つ列が含まれます。事前定義の列名は変更できません。ただし、ADD COLUMN句を指定してALTER TABLE文を実行することによって、表に列を追加できます。たとえば、各リンク表およびパス表は1つのCOST列を持つように作成されますが、追加の列を作成し、それらの列をその他の比較可能な属性に関連付けることができます。したがって、各リンクに運転時間、景色のよさ、および危険度を割り当てるには、運転時間にCOST列を使用し、SCENIC_APPEAL列およびDANGER列をリンク表に追加して、アプリケーションによって解釈される値を3つの列すべてに移入します。

次の考慮事項は、スキーマ、表、および任意のOracle Spatialメタデータ・ビューに格納されている列名に適用されます。たとえば、これらの考慮事項は、ノード表、リンク表、パス表およびパスリンク表の名前、および「ネットワーク・データ・モデルおよびネットワーク・フィーチャ編集(NFE)モデルのメタデータ・ビュー」で説明しているネットワーク・メタデータ・ビューに格納されているこれらの表の列名に適用されます。

  • 名前には、文字、数字、下線のみが使用できます。たとえば、名前にスペース( )、アポストロフィ(')、引用符(")またはカンマ(,)を含めることはできません。

  • 名前の中の文字はすべて、名前がメタデータ・ビューに格納される前または表がアクセスされる前に大文字に変換されます。表名で指定されるすべてのスキーマ名も、同様に変換されます。

5.13.1 ネットワーク・レイヤー表

この項のメタデータ表は、フィーチャ・モデリングには関連していません。

5.13.1.1 ノード表

各ネットワークには、表5-6で説明する列が含まれるノード表があります。(含まれる列は、ネットワークのタイプ、およびネットワークが階層であるかどうかによって異なります。)

表5-6 ノード表の列

列名 データ型 説明

NODE_ID

NUMBER

ネットワーク内でこのノードを一意に識別するID番号です。

NODE_NAME

VARCHAR2(32)

ノード名です。

NODE_TYPE

VARCHAR2(24)

ノードのタイプを識別するユーザー定義の文字列です。

ACTIVE

VARCHAR2(1)

ノードがアクティブである(ネットワークで認識されている)場合はY、ノードがアクティブでない場合はNです。

PARTITION_ID

NUMBER

(使用しません。かわりに、ノードとパーティションの関係は、「パーティション表」で説明されているパーティション表に格納されます。)

<node_geometry_column>、またはGEOM_IDおよびMEASURE

SDO_GEOMETRY、SDO_TOPO_GEOMETRYまたはNUMBER

空間(SDO、非LRS)ネットワークの場合、ノードに関連付けられたSDO_GEOMETRYオブジェクトです。

空間トポロジ・ネットワークの場合、ノードに関連付けられたSDO_TOPO_GEOMETRYオブジェクトです。

空間LRSネットワークの場合、ノードに関連付けられたジオメトリ・オブジェクトのGEOM_ID列およびMEASURE列の値(いずれもNUMBER型)です。

論理ネットワークの場合、この列は使用しません。

空間SDOネットワークまたはトポロジ・ネットワークの場合、実際の列名は、デフォルト名、またはSDO_NET.CREATE_NODE_TABLEプロシージャのコール時にgeom_columnパラメータの値として指定した名前のいずれかになります。

<node_cost_column>

NUMBER

ノードに関連付けられるコスト値で、ネットワークを使用するアプリケーションによって使用されます。実際の列名は、デフォルト名、またはSDO_NET.CREATE_NODE_TABLEプロシージャのコール時にcost_columnパラメータの値として指定した名前のいずれかになります。コスト値は、料金所で支払う料金など、必要な任意の値を表すことができます。

HIERARCHY_LEVEL

NUMBER

階層ネットワークでのみ使用されます。このノードのネットワーク階層でのレベルを示す数値です。(ネットワーク階層については、「ネットワーク階層」を参照してください。)

PARENT_NODE_ID

NUMBER

階層ネットワークでのみ使用されます。このノードの親ノードのノードIDです。(ネットワーク階層については、「ネットワーク階層」を参照してください。)

5.13.1.2 リンク表

各ネットワークには、表5-7で説明する列が含まれるリンク表があります。

表5-7 リンク表の列

列名 データ型 説明

LINK_ID

NUMBER

ネットワーク内でこのリンクを一意に識別するID番号です。

LINK_NAME

VARCHAR2(32)

リンク名です。

START_NODE_ID

NUMBER

リンクの開始ノードのノードIDです。

END_NODE_ID

NUMBER

リンクの終了ノードのノードIDです。

LINK_TYPE

VARCHAR2(24)

リンクのタイプを識別するユーザー定義の文字列です。

ACTIVE

VARCHAR2(1)

リンクがアクティブである(ネットワークで認識されている)場合はY、リンクがアクティブでない場合はNです。

LINK_LEVEL

NUMBER

リンクの優先順位です。ネットワーク分析に使用すると、パスの計算時に優先順位の高いリンクが最初に考慮されます。

<link_geometry_column>、またはGEOM_ID、START_MEASUREおよびEND_MEASURE

SDO_GEOMETRY、SDO_TOPO_GEOMETRYまたはNUMBER

空間(SDO、非LRS)ネットワークの場合、リンクに関連付けられたSDO_GEOMETRYオブジェクトです。

空間トポロジ・ネットワークの場合、リンクに関連付けられたSDO_TOPO_GEOMETRYオブジェクトです。

空間LRSネットワークの場合、リンクに関連付けられたジオメトリ・オブジェクトのGEOM_ID列、START_MEASURE列およびEND_MEASURE列の値(すべてNUMBER型)です。

論理ネットワークの場合、この列は使用しません。

空間SDOネットワークまたはトポロジ・ネットワークの場合、実際の列名は、デフォルト名、またはSDO_NET.CREATE_LINK_TABLEプロシージャのコール時にgeom_columnパラメータの値として指定した名前のいずれかになります。

<link_cost_column>

NUMBER

リンクに関連付けられるコスト値で、ネットワークを使用するアプリケーションによって使用されます。実際の列名は、デフォルト名、またはSDO_NET.CREATE_LINK_TABLEプロシージャのコール時にcost_columnパラメータの値として指定した名前のいずれかになります。コスト値は、リンクの推定運転時間など、必要な任意の値を表すことができます。

PARENT_LINK_ID

NUMBER

階層ネットワークでのみ使用されます。このリンクの親リンクのリンクIDです。(ネットワーク階層の親子関係については、「ネットワーク階層」を参照してください。)

BIDIRECTED

VARCHAR2(1)

有向ネットワークの場合のみ使用されます。リンクが無向(開始ノードから終了ノード、終了ノードから開始ノードのどちらの方向にも進むことが可能)の場合はY、有向(開始ノードから終了ノードの方向にのみ進むことが可能)の場合はNです。

5.13.1.3 パス表

各ネットワークにパス表を作成できます。パスは、リンクを順につなげたもので、通常、ネットワーク分析の結果として作成されます。パス表は、この分析の結果を格納する方法を提供します。パス表ごとに、対応するパスリンク表(「パスリンク表」を参照)を作成する必要があります。各パス表には、表5-8で説明する列が含まれます。

表5-8 パス表の列

列名 データ型 説明

PATH_ID

NUMBER

ネットワーク内でこのパスを一意に識別するID番号です。

PATH_NAME

VARCHAR2(32)

パス名です。

PATH_TYPE

VARCHAR2(24)

パスのタイプを識別するユーザー定義の文字列です。

START_NODE_ID

NUMBER

パスの最初のリンクを開始するノードのノードIDです。

END_NODE_ID

NUMBER

パスの最後のリンクを終了するノードのノードIDです。

COST

NUMBER

パスに関連付けられるコスト値で、ネットワークを使用するアプリケーションによって使用されます。コスト値は、パスの推定運転時間など、必要な任意の値を表すことができます。

SIMPLE

VARCHAR2(1)

単純なパスの場合はY、複雑なパスの場合はNです。単純なパスでは、各リンクを1回使用することによって開始ノードから終了ノードまで横断できる、リンクの順序付けされたリストが形成されます。複雑なパスでは、開始ノードから終了ノードまで移動するために、複数のオプションがあります。

<path_geometry_column>

SDO_GEOMETRY

論理ネットワークを除くすべてのネットワーク・タイプの場合、パスに関連付けられたジオメトリ・オブジェクトです。実際の列名は、デフォルト名、またはSDO_NET.CREATE_PATH_TABLEプロシージャのコール時にgeom_columnパラメータの値として指定した名前のいずれかになります。

論理ネットワークの場合、この列は使用しません。

5.13.1.4 パスリンク表

パス表(「パス表」を参照)ごとに、パスリンク表を作成する必要があります。パスリンク表の各行は、ネットワークのパス内でリンクを一意に識別します。つまり、PATH_ID、LINK_IDおよびSEQ_NOの値の組合せが、ネットワーク内で一意である必要があります。パスリンク表での行の順序は、重要ではありません。各パスリンク表には、表5-9で説明する列が含まれます。

表5-9 パスリンク表の列

列名 データ型 説明

PATH_ID

NUMBER

ネットワークのパスのID番号です。

LINK_ID

NUMBER

ネットワークのリンクのID番号です。

SEQ_NO

NUMBER

パスでのリンクの一意の順序番号です。(順序番号は、1から始まります。)順序番号を使用すると、同じノードおよびリンクをパスに繰り返し含めることができます。

5.13.1.5 サブパス表

各パスには、1つ以上の対応するサブパスを作成できます。ネットワーク内のすべてのサブパスに関する情報は、サブパス表に格納されます。サブパスは、パスに沿った部分的なパスです(「ネットワーク・データ・モデルの概念」を参照)。サブパス表には、表5-10で説明する列が含まれます。

表5-10 サブパス表の列

列名 データ型 説明

SUBPATH_ID

NUMBER

このサブパスを参照パス内で一意に識別するID番号です。

SUBPATH_NAME

VARCHAR2(32)

サブパス名です。

SUBPATH_TYPE

VARCHAR2(24)

サブパスのタイプを識別するユーザー定義の文字列です。

REFERENCE_PATH_ID

NUMBER

このサブパスを含むパスのパスID番号です。

START_LINK_INDEX

NUMBER

サブパスの開始を定義するために使用するリンクのリンクIDです。たとえば、「ネットワーク・データ・モデルの概念」図5-2では、START_LINK_INDEXは0で、START_PERCENTAGEは0.65です。

END_LINK_INDEX

NUMBER

サブパスの終了を定義するために使用するリンクのリンクIDです。たとえば、「ネットワーク・データ・モデルの概念」図5-2では、END_LINK_INDEXは6で、END_PERCENTAGEは0.5です。

START_PERCENTAGE

NUMBER

パスのSTART_LINK_INDEXとその次のリンクの間の距離の割合で、サブパスの開始点を表します。正の数値または負の数値となります。たとえば、「ネットワーク・データ・モデルの概念」図5-2では、START_LINK_INDEXは0で、START_PERCENTAGEは0.65です。(この場合の割合の値は0から1.0の範囲で表されるので、0.65は65パーセントです。)

END_PERCENTAGE

NUMBER

パスのEND_LINK_INDEXとその次のリンクの間の距離の割合で、サブパスの終了点を表します。正の数値または負の数値となります。たとえば、「ネットワーク・データ・モデルの概念」図5-2では、END_LINK_INDEXは6で、END_PERCENTAGEは0.5です。(この場合の割合の値は0から1.0の範囲で表されるので、0.5は50パーセントです。)

COST

NUMBER

サブパスに関連付けられるコスト値で、ネットワークを使用するアプリケーションによって使用されます。コスト値は、パスの推定運転時間など、必要な任意の値を表すことができます。

GEOM

SDO_GEOMETRY

論理ネットワークを除くすべてのネットワーク・タイプの場合、サブパスに関連付けられたジオメトリ・オブジェクトです。実際の列名は、デフォルト名、またはSDO_NET.CREATE_SUBPATH_TABLEプロシージャのコール時にgeom_columnパラメータの値として指定した名前のいずれかになります。

論理ネットワークの場合、この列は使用しません。

5.13.1.6 パーティション表

パーティション化された各ネットワークには、パーティション表があります。パーティション化されたネットワークの詳細は、「ロード・オンデマンドを使用したネットワーク分析」を参照してください。各パーティション表には、表5-11で説明する列が含まれます。

表5-11 パーティション表の列

列名 データ型 説明

NODE_ID

NUMBER

ノードのID番号です。

PARTITION_ID

NUMBER

パーティションのID番号です。ネットワーク内で一意である必要があります。

LINK_LEVEL

NUMBER

リンク・レベルです(リンク・レベルは、リンクの優先順位です。ネットワーク分析に使用すると、パスの計算時に優先順位の高いリンクが最初に考慮されます)。

5.13.1.7 パーティションBLOB表

パーティション化された各ネットワークには、パーティションBLOB表があります。この表には、ネットワークのリンク・レベルとパーティションIDの組合せごとのバイナリ・ラージ・オブジェクト(BLOB)表現が格納されます。パーティションのBLOB表現を使用すると、ネットワークのロード・オンデマンド分析操作でパフォーマンスが向上します。パーティションBLOB表を作成するには、SDO_NET.GENERATE_PARTITION_BLOBSプロシージャを使用します。このプロシージャでは、パーティションBLOB表の名前をパラメータの1つとして指定します。パーティション化されたネットワークの詳細は、「ロード・オンデマンドを使用したネットワーク分析」を参照してください。

ノート:

パーティションBLOB表を直接変更することはできません。この表は、SDO_NET.GENERATE_PARTITION_BLOBSプロシージャおよびSDO_NET.GENERATE_PARTITION_BLOBプロシージャへのコールの結果として自動的に更新されます。

各パーティション表には、表5-12で説明する列が含まれます。

表5-12 パーティションBLOB表の列

列名 データ型 説明

LINK_LEVEL

VARCHAR2(32)

リンク・レベルです(リンク・レベルは、リンクの優先順位です。ネットワーク分析に使用すると、パスの計算時に優先順位の高いリンクが最初に考慮されます)。

PARTITION_ID

NUMBER

パーティションのID番号です。

BLOB

BLOB

指定したパーティション内の指定したリンク・レベルを表すバイナリ・ラージ・オブジェクト(BLOB)です。

NUM_INODES

NUMBER

BLOBの内部ノード数(BLOB内の合計ノード数)です。

NUM_ENODES

NUMBER

外部ノードの数です。外部ノードとは、BLOB外にあるノードで、このノードが一端を構成するリンクのもう一端のノードがBLOB内にあるものを指します。

NUM_ILINKS

NUMBER

BLOBの内部リンク(完全にBLOB内にあるリンク)の数です。

NUM_ELINKS

NUMBER

外部リンクの数です。外部リンクとは、1つのノードが内部(BLOB内)で、1つのノードが外部(BLOB外)となっているリンクです。

NUM_INLINKS

NUMBER

外部からのリンクの数です。外部からのリンクとは、開始ノードがBLOB外にあり、終了ノードがBLOB内にある外部リンクです。

NUM_OUTLINKS

NUMBER

外部へのリンクの数です。外部へのリンクとは、開始ノードがBLOB内にあり、終了ノードがBLOB外にある外部リンクです。

USER_DATA_INCLUDED

VARCHAR2(1)

BLOBにユーザー・データを含めることができる場合はY、BLOBにユーザー・データを含めることができない場合はNです。

5.13.1.8 接続されているコンポーネント表

各ネットワークには、接続されているコンポーネント表を作成できます。この表には各ノードのコンポーネントIDが格納されます。同じ接続されているコンポーネントのノードは、同じコンポーネントIDを持ちます。この情報が表に格納されていると、ネットワーク分析の多くの操作でパフォーマンスが向上します。接続されているコンポーネント表を作成し、後から表の内容を更新するには、SDO_NET.FIND_CONNECTED_COMPONENTSプロシージャを使用します。このプロシージャでは、接続されているコンポーネント表の名前をパラメータの1つとして指定します。接続されているコンポーネントに関する計算済情報の使用の詳細は、「計算済の分析結果」を参照してください。

各接続されているコンポーネント表には、表5-13で説明する列が含まれます。

表5-13 接続されているコンポーネント表の列

列名 データ型 説明

LINK_LEVEL

NUMBER

コンポーネントの割当てのリンク・レベルです。(リンク・レベルは、リンクの優先順位です。ネットワーク分析に使用すると、パスの計算時に優先順位の高いリンクが最初に考慮されます。)

NODE_ID

NUMBER

到達可能なその他すべてのコンポーネントの算出元となるノードのID番号です。

COMPONENT_ID

NUMBER

指定したノードから到達可能なコンポーネントのID番号です。

5.13.1.9 ノード階層表(オプション)

各ネットワークに、ネットワークが階層を持つ場合(「ネットワーク階層」を参照)に、親子関係を格納するノード階層表を作成できます。

ノード階層表が存在する場合、この表には表5-14で説明する列が含まれます。

表5-14 ノード階層表の列

列名 データ型 説明

PARENT_ID

NUMBER

親ノードID (親ネットワーク内のノードID、あるいは子ネットワーク内のグループID、クラスタIDまたはパーティションID)です。

CHILD_ID

NUMBER

子ID (子ネットワーク内のノードID)です。

LINK_LEVEL

NUMBER

親子関係が定義されるリンク・レベルです。リンク・レベルの高いネットワークは、リンク・レベルの低いネットワークのサブネットワークとなります。リンク・レベルnのネットワークは、nより大きいか等しいリンク・レベルを持つリンクのみで構成されます。

5.13.1.10 ノード・レベル表(オプション)

各ネットワークに、各上位レベル・ノード(最大リンク・レベルが1より大きいノード)の最大リンク・レベルに関する情報を格納するノード・レベル表を作成できます。ノード・レベル表は、マルチレベル・ネットワークでのみ役立ち、この表を使用すると、ノード表とリンク表からのパーティションのロード時間を短縮できます。

ノード・レベル表が存在する場合、この表には表5-15で説明する列が含まれます。

表5-15 ノード・レベル表の列

列名 データ型 説明

NODE_ID

NUMBER

最大リンク・レベルが1より大きいノードのIDです。

LINK_LEVEL

NUMBER

ノードが接続されている最大リンク・レベルです。

5.13.1.11 ネットワーク・バッファ・スキーマ

各ネットワーク・バッファは、メタデータ、コストおよび対象範囲情報を記述したユーザー表で構成されています。これらのネットワーク・バッファ表には、ユーザーが指定した表接頭辞があります。また、事前定義された一連の接尾辞も含まれています。

初めてネットワーク・バッファをデータベースに書き込むとき、writeNetworkBuffer()ファンクションによって次の表が自動的に作成されます。既存のネットワーク・バッファ表に追加のネットワーク・バッファを追加することもできます。

5.13.1.11.1 <prefix>_NBR$

<prefix>_NBR$表は、ネットワーク・バッファとそのバッファのコストおよび方向の情報を提供します。

表5-16 <prefix>_NBR$表の列

列名 データ型 説明
BUFFER_ID NUMBER ネットワーク・バッファID
RADIUS NUMBER ネットワーク・バッファがカバーする最大コスト
DIRECTION VARCHAR2(1) ネットワーク・バッファの方向。サポートされる値は次のとおりです。
  • F: 前方
  • B: 後方
5.13.1.11.2 <prefix>_NBCL$

The <prefix>_NBCL$表は、ネットワーク・バッファとリンク上のそのバッファ・センター位置の情報を提供します。

表5-17 <prefix>_NBCL$表の列

列名 データ型 説明
BUFFER_ID NUMBER ネットワーク・バッファID
LINK_ID NUMBER バッファ・センターによって特定されたリンクID
PERCENTAGE NUMBER バッファ・センターによって特定されたリンクの割合
5.13.1.11.3 <prefix>_NBCN$

The <prefix>_NBCN$表は、ネットワーク・バッファとリンク上のそのバッファ・センター位置の情報を提供します。

表5-18 <prefix>_NBCN$表の列

列名 データ型 説明
BUFFER_ID NUMBER ネットワーク・バッファID
NODE_ID NUMBER バッファ・センターによって特定されたノードID
5.13.1.11.4 <prefix>_NBN$

<prefix>_NBN$表は、ネットワーク・バッファとそれが対象とするノードの情報を提供します。

表5-19 <prefix>_NBN$表の列

列名 データ型 説明
BUFFER_ID NUMBER ネットワーク・バッファID
NODE_ID NUMBER ネットワーク・バッファの対象となるノードID
COST NUMBER バッファ・センターと対象ノード間の最小コスト
5.13.1.11.5 <prefix>_NBL$

The <prefix>_NBL$表は、ネットワーク・バッファとそれが対象とするリンクの情報を提供します。

表5-20 <prefix>_NBL$表の列

列名 データ型 説明
BUFFER_ID NUMBER ネットワーク・バッファID
LINK_ID NUMBER ネットワーク・バッファの対象となるリンクID
PREV_LINK_ID NUMBER 対象リンクの以前の最短パス・リンクID
START_PERCENTAGE NUMBER 対象リンクの開始割合
END_PERCENTAGE NUMBER 対象リンクの終了割合
START_COST NUMBER バッファ・センターと対象リンクの開始との間の最小コスト
END_COST NUMBER バッファ・センターと対象リンクの終了との間の最小コスト

5.13.2 フィーチャ・レイヤー表

この項の表は、フィーチャ・モデリング(「フィーチャ・モデリング」を参照)に関連します。これらの表は、登録された各フィーチャ・レイヤーを説明するために使用されます。

ほとんどのアプリケーションには、フィーチャ・エンティティ情報、フィーチャとネットワークの関係またはフィーチャ階層関係を含む表がすでに存在していますが、これらの表のスキーマがNDM表のスキーマと異なる場合があります。このような場合は、既存の表のスキーマをNDM表のスキーマにマップするビューを作成できます。

5.13.2.1 フィーチャ表

フィーチャ表には、フィーチャ・エンティティ情報が含まれます。各フィーチャ表には、FEATURE_ID列が含まれている必要があります。フィーチャ分析で役立つ可能性があるその他のフィーチャ属性は、ユーザー・データとして登録できます。

各フィーチャ表には、表5-21で説明する列が含まれます。

表5-21 フィーチャ表の列

列名 データ型 説明

FEATURE_ID

NUMBER

フィーチャのIDです。

(必要に応じた追加の列)

(適宜)

(フィーチャ分析で役立つ可能性があるその他のフィーチャ属性)

5.13.2.2 フィーチャ要素関係表

フィーチャ要素関係表には、フィーチャ要素とネットワーク要素(ノードとリンク)間の関係に関する情報が含まれます。

フィーチャ要素関係表には、表5-22で説明する列が含まれます。

表5-22 フィーチャ要素関係表の列

列名 データ型 説明

FEATURE_ID

NUMBER

フィーチャのIDです。

FEAT_ELEM_TYPE

NUMBER

フィーチャ要素のタイプです。次のいずれかです: 1 SDO_NET.FEAT_ELEM_TYPE_PON (ノード上の点)、2 SDO_NET.FEAT_ELEM_TYPE_POL (リンク上の点)、3 SDO_NET.FEAT_ELEM_TYPE_LINE (線)。

NET_ELEM_ID

NUMBER

このフィーチャ要素に関連付けられているネットワーク要素(ノードまたはリンク)のIDです。

START_PERCENTAGE

NUMBER

このフィーチャ要素のNET_ELEM_IDに沿った開始の割合です(ノード上の点であるフィーチャ要素に対しては無視されます)。

END_PERCENTAGE

NUMBER

このフィーチャ要素のNET_ELEM_IDに沿った終了の割合です(ノード上の点および線上の点であるフィーチャ要素に対しては無視されます)。

SEQUENCE

NUMBER

フィーチャ要素の順序番号です。

5.13.2.3 フィーチャ階層表

フィーチャ階層表には、フィーチャ階層情報が含まれます。子フィーチャは異なるフィーチャ・レイヤーに属することができます。

フィーチャ階層表には、表5-23で説明する列が含まれます。

表5-23 フィーチャ階層表の列

列名 データ型 説明

PARENT_ID

NUMBER

親フィーチャのIDです。

CHILD_LAYER_ID

NUMBER

子フィーチャのフィーチャ・レイヤーIDです。

CHILD_ID

NUMBER

子フィーチャのIDです。

SEQUENCE

NUMBER

子フィーチャの順序番号です。

5.13.3 ネットワーク・フィーチャ編集(NFE)モデル表

この項の表は、ネットワーク・フィーチャ編集(NFE) (「ネットワーク・フィーチャ編集(NFE)を使用したフィーチャ・モデリング」を参照)を使用したフィーチャ操作に関連します。これらの表は、各NFEモデルを説明するために使用されます。

ほとんどの場合、PL/SQLファンクションのSDO_NFE.CREATE_MODEL_STRUCTUREまたはJava APIを使用して新しいNFEモデルが作成されると、これらの表は自動的に作成または更新されます。しかし、表またはビューを手動で作成し、それらを目的のモデルに登録することもできます。

5.13.3.1 自動作成される点のデフォルト属性表

自動作成される点のデフォルト属性表には、線-線接続性ルールを実行した結果として自動作成される点の属性のデフォルト値に関する情報が含まれます。

次の表では、自動作成される点のデフォルト属性表の列について説明します。NFEモデルの作成時に、この種の表にデフォルトで付けられる名前はPOINT_ATTR_DEF_[model_id]$です。

表5-24 自動作成される点のデフォルト属性表の列

列名 データ型 説明

ID

NUMBER

主キー。デフォルト値の識別子。

LINE_LINE_RULE_ID

NUMBER

外部キー。既存の線-線ルールの識別子。線-線ルール表のID列を参照します。

ATTRIBUTE_NAME

VARCHAR(50)

点フィーチャ・クラス属性名。xxx_SDO_NETWORK_USER_DATAビューのDATA_NAME列を参照します。

DEFAULT_VALUE

VARCHAR(100)

点の属性のデフォルト値。

5.13.3.2 線-線接続性ルール表

線-線接続性ルール表には、NFEモデルに含まれるフィーチャに適用可能な線-線接続性ルールの定義に関する情報が含まれます。

この定義は、2つの線フィーチャ(線-点ルールで記述される)が相互に接続するために、どのように相互作用する必要があるかを表します。

次の表では、線-線接続性ルール表の列について説明します。NFEモデルの作成時に、この種の表にデフォルトで付けられる名前はLINE_LINE_RULE_[model_id]$です。

表5-25 線-線接続性ルール表の列

列名 データ型 説明

ID

NUMBER

主キー。線-線ルールの識別子。

LINE_POINT_1_ID

NUMBER

外部キー。既存の線-点ルールの識別子。線-点ルール表のID列を参照します。

LINE_POINT_2_ID

NUMBER

外部キー。既存の線-点ルールの識別子。線-点ルール表のID列を参照します。

INTERACTION

NUMBER

2つの線間の相互作用タイプ。使用可能な値: 1 = 交差、2 = 終了点に接触、3 = 中間点に接触、4 = 任意の点に接触、5 = 任意の相互作用

DECISION_HANDLER_ID

NUMBER

外部キー。ルールに関連付けられたデシジョン・ハンドラ(ある場合)のID。ルール・デシジョン・ハンドラ表のID列を参照します。

CREATE_POINT

VARCHAR2(1)

線フィーチャ間で相互作用が発生したときに、接続点を自動的に作成するかどうかを指定します。使用可能な値: 'Y'、'N'。

5.13.3.3 線-点接続性ルール表

線-点接続性ルール表には、NFEモデルに含まれるフィーチャに適用可能な線-点接続性ルールの定義に関する情報が含まれます。

この定義には、フィーチャ・レイヤー、フィーチャ・クラスおよび接続可能な線相互作用フィーチャと点相互作用フィーチャの両方に関するフィーチャ属性の条件の指定が含まれます。

次の表では、線-点接続性ルール表の列について説明します。NFEモデルの作成時に、この種の表にデフォルトで付けられる名前はLINE_POINT_RULE_[model_id]$です。

表5-26 線-点接続性ルール表の列

列名 データ型 説明

ID

NUMBER

主キー。線-点ルールの識別子。

LINE_FEATURE_LAYER_ID

NUMBER

線が属するフィーチャ・レイヤーの識別子。xxx_SDO_NETWORK_FEATURE表を参照します。値-1は、すべてのフィーチャ・レイヤーを意味します。

LINE_FEATURE_CLASS_ID

NUMBER

ルールの適用先となる線のフィーチャ・クラスの識別子。値-1は、すべてのフィーチャ・クラスを意味します。

LINE_ATTRIBUTE_CONDITION

VARCHAR2(200)

フィーチャの線の属性についてルールで評価される条件。例: MATERIAL = 'IRON'

POINT_FEATURE_LAYER_ID

NUMBER

許可された接続点が属するフィーチャ・レイヤーの識別子。xxx_SDO_NETWORK_FEATURE表を参照します。

POINT_FEATURE_CLASS_ID

NUMBER

許可された接続点のフィーチャ・クラスの識別子。値-1は、すべてのフィーチャ・クラスを意味します。

DECISION_HANDLER_ID

NUMBER

外部キー。ルールに関連付けられたデシジョン・ハンドラ(ある場合)のID。ルール・デシジョン・ハンドラ表のID列を参照します。

MAX_IN_CONN

NUMBER

点に接続できる入力線の最大数。

MAX_OUT_CONN

NUMBER

点に接続できる出力線の最大数。

MIN_IN_CONN

NUMBER

点に接続する必要がある入力線の最小数

MIN_OUT_CONN

NUMBER

点に接続する必要がある出力線の最小数

SOURCE

NUMBER

ルールがユーザーによって作成されたのか、線-線ルールによって作成されたのかを示します。使用可能な値: 1 = ユーザー、2 = 線-線ルール。デフォルト値は1です。

ID

NUMBER

主キー。線-線ルールの識別子。

5.13.3.4 フィーチャ・クラス表

フィーチャ・クラスは、フィーチャに関連します。フィーチャ・クラス表には、フィーチャ・レイヤーのすべてのフィーチャ・クラスのレコードが含まれます。また、次の表で説明する列が含まれる必要があります。

NFEモデルの作成時に、この種の表にデフォルトで付けられる名前はFT_CLASS_[model_id]$です。

表5-27 フィーチャ・クラス表の列

列名 データ型 説明

ID

NUMBER

主キー。フィーチャ・クラスの識別子

NAME

VARCHAR2(50)

フィーチャ・クラス名

FEATURE_LAYER_ID

NUMBER

フィーチャ・レイヤーの識別子。xxx_SDO_NETWORK_FEATURE表を参照します。

SHAPE

NUMBER

フィーチャ・クラスの形状タイプ。使用可能な値: SDO_NFE.FT_CLASS_POINT (1)、SDO_NFE.FT_CLASS_SIMPLE_LINE (2)、SDO_NFE.FT_CLASS_COMPLEX_LINE (3)、SDO_NFE.FT_CLASS_PATH (4)。

STYLE

VARCHAR2(50)

フィーチャ・クラスの形式。xxx_SDO_STYLES表を参照します。

5.13.3.5 フィーチャ・クラス属性の制約表

フィーチャ・クラス属性の制約表には、フィーチャ・クラスが属するフィーチャ・レイヤーに定義されているのと同じ属性であるフィーチャ・クラス属性についてのユーザー制限に関する情報が含まれます。

この表には、次の表で説明する列が含まれる必要があります。NFEモデルの作成時に、この種の表にデフォルトで付けられる名前はFT_CLASS_ATTR_CSTR_[model_id]$です。

表5-28 フィーチャ・クラス属性の制約表の列

列名 データ型 説明

ID

NUMBER

主キー。制約の識別子。

FEATURE_CLASS_ID

NUMBER

外部キー。フィーチャ・クラスの識別子。フィーチャ・クラス表を参照します。

ATTRIBUTE_NAME

VARCHAR2(50)

制限する属性の名前。xxx_SDO_NETWORK_USER_DATAビューのDATA_NAME列を参照します。

DEFAULT_VALUE

VARCHAR2(100)

指定した属性(attribute_name)のデフォルト値。

VISIBLE

VARCHAR2(1)

属性が表示可能である必要があるかどうかを指定します。

EDITABLE

VARCHAR2(1)

属性が編集可能である必要があるかどうかを指定します。

5.13.3.6 フィーチャ・クラス事前定義済のデフォルトで接続される点表

フィーチャ・クラス事前定義済のデフォルトで接続される点表には、フィーチャ・クラスで記述された線フィーチャに沿ってデフォルトで接続される点フィーチャなどに関する情報が含まれます。

線フィーチャ・クラスは、デフォルトで接続される点を使用して定義できます。次の表では、フィーチャ・クラス事前定義済のデフォルトで接続される点表の列について説明します。NFEモデルの作成時に、この種の表にデフォルトで付けられる名前はFT_CLASS_DEF_CON_PT_[model_id]$です。

表5-29 フィーチャ・クラス事前定義済のデフォルトで接続される点表の列

列名 データ型 説明

ID

NUMBER

主キー。デフォルトで接続される点の識別子。

LINE_FEATURE_CLASS_ID

NUMBER

外部キー。線フィーチャ・クラスの識別子。フィーチャ・クラス表のID列を参照します。

POINT_FEATURE_CLASS_ID

NUMBER

外部キー。点フィーチャ・クラスの識別子。フィーチャ・クラス表のID列を参照します。

POSITION_PERCENTAGE

DECIMAL

線に沿った点の場所の割合。

5.13.3.7 フィーチャ・クラス関係表

フィーチャ・クラス関係表には、フィーチャとフィーチャ・クラス間の関係(どのフィーチャがどのフィーチャ・クラスに属するか)に関する情報が含まれます。

フィーチャ・クラス関係表には、次の表で説明する列が含まれます。NFEモデルの作成時に、この種の表にデフォルトで付けられる名前はFT_CLASS_REL_[model_id]$です。

表5-30 フィーチャ・クラス関係表の列

列名 データ型 説明

FEATURE_ID

NUMBER

主キー。フィーチャの識別子。フィーチャ表を参照します。

FEATURE_CLASS_ID

NUMBER

外部キー。フィーチャ・クラスの識別子。フィーチャ・クラス表を参照します。

5.13.3.8 フィーチャ・ルール関係表

フィーチャ・ルール関係表には、ルールに含まれる各フィーチャ要素に関連する情報が、その生成または接続の起因となるルールとともに含まれます。

フィーチャ・ルール関係表には、次の表で説明する列が含まれます。NFEモデルの作成時に、この種の表にデフォルトで付けられる名前はFT_RULE_REL_[model_id]$です。

表5-31 フィーチャ・ルール関係表の列

列名 データ型 説明

RULE_INSTANCE_ID

NUMBER

主キー。ルール・インスタンスの識別子。

FEATURE_LAYER_ID

NUMBER

主キー。フィーチャ・レイヤーの識別子。xxx_SDO_NETWORK_FEATURE表を参照します。

FEATURE_ID

NUMBER

主キー。フィーチャの識別子。フィーチャ表のFEATURE_ID列を参照します。

NET_ELEM_ID

NUMBER

主キー。ネットワーク要素の識別子。フィーチャ要素関係表のNET_ELEM_ID列を参照します。

FEAT_ELEM_TYPE

NUMBER

主キー。フィーチャ要素のタイプです。フィーチャ要素関係表のFEAT_ELEM_TYPE列を参照します。

5.13.3.9 フィーチャ・ユーザー・データ表

フィーチャ・ユーザー・データ表には、カタログ・タイプのフィーチャ・クラス属性の情報が含まれます。

フィーチャ・ユーザー・データ表は、xxx_SDO_NETWORK_USER_DATAビューを拡張したものです。次の表では、フィーチャ・ユーザー・データ表の列について説明します。NFEモデルの作成時に、この種の表にデフォルトで付けられる名前はFT_USR_DATA_[model_id]$です。

表5-32 フィーチャ・ユーザー・データ表の列

列名 データ型 説明

ID

NUMBER

主キー。フィーチャ・クラス属性の識別子。

FEATURE_LAYER_ID

NUMBER

フィーチャ・クラス属性が属するフィーチャ・レイヤーの識別子。

ATTRIBUTE_NAME

VARCHAR2(50)

属性名。xxx_SDO_NETWORK_USER_DATAビューのDATA_NAME列を参照します。

CATALOG_ID

NUMBER

外部キー。カタログの識別子。フィーチャ・ユーザー・データ・カタログ表のID列を参照します。

5.13.3.10 フィーチャ・ユーザー・データ・カタログ表

カタログからフィーチャ・クラス属性に値を割り当てることができます。つまり、フィーチャ・クラスの属性の型にカタログの型を指定できます。フィーチャ・ユーザー・データ・カタログ表では、そのために使用できるカタログの登録簿を保持します。

次の表では、フィーチャ・ユーザー・データ・カタログ表に含まれる必要がある列について説明します。NFEモデルの作成時に、この種の表にデフォルトで付けられる名前はFT_USR_DATA_CATLG_[model_id]$です。

表5-33 フィーチャ・ユーザー・データ・カタログ表の列

列名 データ型 説明

ID

NUMBER

主キー。カタログの識別子。

NAME

VARCHAR2(200)

カタログ名。

DATA_TYPE

VARCHAR2(12)

カタログのデータ型(NumberやVarchar2など)。

5.13.3.11 フィーチャ・ユーザー・データ・カタログ値表

フィーチャ・ユーザー・データ・カタログ値表には、フィーチャ・ユーザー・データ・カタログ表で定義されたカタログで保持される値のリストが含まれます。

次の表では、フィーチャ・ユーザー・データ・カタログ値表に含まれる必要がある列について説明します。NFEモデルの作成時に、この種の表にデフォルトで付けられる名前はFT_USR_DATA_CVAL_[model_id]$です。

表5-34 フィーチャ・ユーザー・データ・カタログ値表の列

列名 データ型 説明

ID

NUMBER

主キー。カタログ・エントリの識別子。

CATALOG_ID

NUMBER

外部キー。カタログの識別子。フィーチャ・ユーザー・データ・カタログ表を参照します。

VALUE

VARCHAR2(12)

カタログ・エントリ。

5.13.3.12 点カーディナリティ・ルール表

点カーディナリティ・ルール表には、特定の点フィーチャがNFEモデルでサポートする必要があるインバウンド接続およびアウトバウンド接続の最大数と最小数の構成が含まれます。

点カーディナリティ・ルール表には、次の表で説明する列が含まれます。NFEモデルの作成時に、この種の表にデフォルトで付けられる名前はPOINT_CARD_RULE_[model_id]$です。

表5-35 点カーディナリティ・ルール表の列

列名 データ型 説明

ID

NUMBER

主キー。カーディナリティ・ルールの識別子

FEATURE_LAYER_ID

NUMBER

点のフィーチャ・レイヤー

FEATURE_CLASS_ID

NUMBER

点のフィーチャ・クラス。クラスの形状は、POINTタイプである必要があります

MAX_IN_CONN

NUMBER

点に接続できる入力線の最大数

MAX_OUT_CONN

NUMBER

点に接続できる出力線の最大数

5.13.3.13 ルール・デシジョン・ハンドラ表

ルール・デシジョン・ハンドラ表には、接続性ルール(線-線または線-点)の実行時にデシジョン・ハンドラとして実行されるJavaクラスまたはPL/SQLプロシージャ(あるいはその両方)の名前に関する情報が含まれます。

ルール・デシジョン・ハンドラ表には、次の表で説明する列が含まれます。NFEモデルの作成時に、この種の表にデフォルトで付けられる名前はRULE_DEC_HANDLER_[model_id]$です。

表5-36 ルール・デシジョン・ハンドラ表の列

列名 データ型 説明

ID

NUMBER

主キー。デシジョン・ハンドラの識別子。

TYPE

VARCHAR2(1)

SDO_NFE.RULE_TYPE_LINE_LINE(線-線ルール・ハンドラの場合)またはSDO_NFE.RULE_TYPE_LINE_POINT(線-点ルール・ハンドラの場合)。

CLASS_FQNAME

VARCHAR(100)

ハンドラ・クラスの完全修飾名。このクラスは、oracle.spatial.network.nfe.model.rule.DecisionHandlerの実装である必要があります。実装クラスは、Java APIでルール・エンジンを実行するアプリケーションのクラスパスからアクセスできる必要があります。

PLSQL_SP_GET_CONN_GROUPS

VARCHAR2(50)

ルールによって接続可能な交差に加わっている要素の別のグループを取得するために使用するPL/SQLストアド・プロシージャの名前。名前にはパッケージ名を含める必要があります。タイプ'L'のハンドラの場合、デフォルト値はSDO_NFE.get_ll_conn_intersectionsであり、パラメータは次のとおりです。

model_id IN NUMBER - モデルの識別子 ll_rule_id IN NUMBER - 線-線ルールの識別子

interaction_grp IN OUT SDO_INTERACTION - 相互作用する線および点のグループ

rule_lhs_lines_indexes IN dbms_sql.NUMBER_TABLE - 相互作用グループ内の線フィーチャで、特に線-線ルールの左辺に合致する線の索引。

rule_rhs_lines_indexes IN dbms_sql.NUMBER_TABLE - 相互作用グループ内の線フィーチャで、特に線-線ルールの右辺に合致する線の索引。

rule_points_indexes IN dbms_sql.NUMBER_TABLE - 相互作用グループ内の点フィーチャで、特に線-線ルールの点フィーチャの指定に合致する点の索引。このような点は、接続可能グールの構造に考慮される点です。

詳細は、第7項のSDO_NFE.GET_LL_CONN_INTERSECTIONSファンクションのドキュメントを参照してください。

タイプ'P'のハンドラの場合、デフォルト値はSDO_NFE.get_lp_conn_intersectionsであり、パラメータは次のとおりです。

model_id IN NUMBER - モデルの識別子

lp_rule_id IN NUMBER - 線-点ルールの識別子

interaction_grp IN OUT SDO_INTERACTION - 相互作用する線および点のグループ。

rule_lines_indexes IN dbms_sql.NUMBER_TABLE - 相互作用グループ内の線フィーチャで、特に線-点ルールに合致する線の索引。このような線は、接続可能グールの構造で考慮されます。

rule_points_indexes IN dbms_sql.NUMBER_TABLE - 相互作用グループ内の点フィーチャで、特に線-点ルールの点フィーチャの指定に合致する点の索引。このような点は、接続可能グールの構造に考慮される点です。

詳細は、第7項のSDO_NFE.GET_LP_CONN_INTERSECTIONSファンクションのドキュメントを参照してください。

PLSQL_SP_GET_CONN_POINT

VARCHAR2(50)

交差に加わっている要素間の接続点のジオメトリを決定するために使用されるPL/SQLストアド・プロシージャの名前。名前にはパッケージ名を含める必要があります。デフォルト値は、SDO_NFE.get_connection_point_geomです。唯一のパラメータを相互作用フィーチャのグループであるSDO_INTERACTION型のオブジェクトとして受け入れる必要があります。詳細は、SDO_NFE.GET_CONNECTION_POINT_GEOMファンクションのドキュメントを参照してください。

カスタマイズしたルール・デシジョン・ハンドラをJava APIで使用する場合、使用するデシジョン・ハンドラのJavaクラスをCLASS_FQNAMEに指定する必要があります。カスタマイズしたルール・デシジョン・ハンドラをPL/SQLで使用する場合は、接続可能なフィーチャのグループを計算するためのサブプログラムをPLSQL_SP_GET_CONN_GROUPSに、接続するフィーチャ間で接続点のジオメトリを計算するためのサブプログラムをPLSQL_SP_GET_CONN_POINTに指定する必要があります。

5.13.3.14 ルール・インスタンス表

ルール・インスタンス表には、線-線または線-点のいずれかの接続性ルールがNFEモデルで適用されることで生成されるルール・インスタンスに関する情報が含まれます。

この定義には、ルール・インスタンスの識別子、インスタンスを生成したルールの識別子およびルールのタイプが含まれます。

次の表では、ルール・インスタンス表の列について説明します。NFEモデルの作成時に、この種の表にデフォルトで付けられる名前はRULE_INSTANCE_[model_id]$です。

表5-37 ルール・インスタンス表の列

列名 データ型 説明

ID

NUMBER

主キー。ルール・インスタンスの識別子

RULE_ID

NUMBER

ルールの識別子。線-線ルール表または線-点ルール表のID列を参照します。

RULE_TYPE

VARCHAR(1)

SDO_NFE.RULE_TYPE_LINE_LINEまたはSDO_NFE.RULE_TYPE_LINE_POINTである必要があります。