PK
;Aoa, mimetypeapplication/epub+zipPK ;A iTunesMetadata.plistg
Topology and Network Data Models Developer's Guide
11g Release 2 (11.2)
E11831-04
August 2011
Provides usage and reference information about the topology data model and network data model capabilities of Oracle Spatial.
Oracle Spatial Topology and Network Data Models Developer's Guide, 11g Release 2 (11.2)
E11831-04
Copyright © 2003, 2011, Oracle and/or its affiliates. All rights reserved.
Primary Author: Chuck Murray
Contributors: Ning An, Betsy George, Huiling Gong, Siva Ravada, Jack Wang
This software and related documentation are provided under a license agreement containing restrictions on use and disclosure and are protected by intellectual property laws. Except as expressly permitted in your license agreement or allowed by law, you may not use, copy, reproduce, translate, broadcast, modify, license, transmit, distribute, exhibit, perform, publish, or display any part, in any form, or by any means. Reverse engineering, disassembly, or decompilation of this software, unless required by law for interoperability, is prohibited.
The information contained herein is subject to change without notice and is not warranted to be error-free. If you find any errors, please report them to us in writing.
If this is software or related documentation that is delivered to the U.S. Government or anyone licensing it on behalf of the U.S. Government, the following notice is applicable:
U.S. GOVERNMENT RIGHTS Programs, software, databases, and related documentation and technical data delivered to U.S. Government customers are "commercial computer software" or "commercial technical data" pursuant to the applicable Federal Acquisition Regulation and agency-specific supplemental regulations. As such, the use, duplication, disclosure, modification, and adaptation shall be subject to the restrictions and license terms set forth in the applicable Government contract, and, to the extent applicable by the terms of the Government contract, the additional rights set forth in FAR 52.227-19, Commercial Computer Software License (December 2007). Oracle America, Inc., 500 Oracle Parkway, Redwood City, CA 94065.
This software or hardware is developed for general use in a variety of information management applications. It is not developed or intended for use in any inherently dangerous applications, including applications that may create a risk of personal injury. If you use this software or hardware in dangerous applications, then you shall be responsible to take all appropriate fail-safe, backup, redundancy, and other measures to ensure its safe use. Oracle Corporation and its affiliates disclaim any liability for any damages caused by use of this software or hardware in dangerous applications.
Oracle and Java are registered trademarks of Oracle and/or its affiliates. Other names may be trademarks of their respective owners.
Intel and Intel Xeon are trademarks or registered trademarks of Intel Corporation. All SPARC trademarks are used under license and are trademarks or registered trademarks of SPARC International, Inc. AMD, Opteron, the AMD logo, and the AMD Opteron logo are trademarks or registered trademarks of Advanced Micro Devices. UNIX is a registered trademark of The Open Group.
This software or hardware and documentation may provide access to or information on content, products, and services from third parties. Oracle Corporation and its affiliates are not responsible for and expressly disclaim all warranties of any kind with respect to third-party content, products, and services. Oracle Corporation and its affiliates will not be responsible for any loss, costs, or damages incurred due to your access to or use of third-party content, products, or services.
The MDSYS.SDO_NET package contains subprograms (functions and procedures) for managing networks. To use the subprograms in this chapter, you must understand the conceptual information in Chapter 5.
For a listing of the subprograms grouped in logical categories, see Section 5.11.1. The rest of this chapter provides reference information about the subprograms, listed in alphabetical order.
Format
SDO_NET.COMPUTE_PATH_GEOMETRY(
network IN VARCHAR2,
path_id IN NUMBER,
tolerance IN NUMBER
) RETURN SDO_GEOMETRY;
Description
Returns the spatial geometry for a path.
Parameters
Network name.
Path ID number.
Tolerance value associated with geometries in the network. (Tolerance is explained in Chapter 1 of Oracle Spatial Developer's Guide.) This value should be consistent with the tolerance values of the geometries in the link table and node table for the network.
Usage Notes
This function computes and returns the SDO_GEOMETRY object for the specified path.
This function and the SDO_NET_MEM.PATH.COMPUTE_GEOMETRY procedure (documented in Chapter 6) both compute a path geometry, but they have the following differences:
The SDO_NET.COMPUTE_PATH_GEOMETRY function computes the path from the links in the database, and does not use a network memory object. It returns the path geometry.
The SDO_NET_MEM.PATH.COMPUTE_GEOMETRY procedure computes the path using a network memory object that has been loaded. It does not return the path geometry; you must use the SDO_NET_MEM.PATH.GET_GEOMETRY function to get the geometry.
Examples
The following example computes and returns the spatial geometry of the path with path ID 1 in the network named SDO_NET1
, using a tolerance value of 0.005. The returned path geometry is a straight line from (1,1) to (15,1) because this path consists of a single link.
SELECT SDO_NET.COMPUTE_PATH_GEOMETRY('SDO_NET1', 1, 0.005) FROM DUAL; SDO_NET.COMPUTE_PATH_GEOMETRY('SDO_NET1',1,0.005)(SDO_GTYPE, SDO_SRID, SDO_POINT -------------------------------------------------------------------------------- SDO_GEOMETRY(2002, NULL, NULL, SDO_ELEM_INFO_ARRAY(1, 2, 1), SDO_ORDINATE_ARRAY( 1, 1, 15, 1))
Format
SDO_NET.COPY_NETWORK(
source_network IN VARCHAR2,
target_network IN VARCHAR2,
storage_parameters IN VARCHAR2 DEFAULT NULL);
Description
Creates a copy of a network, including its metadata tables.
Parameters
Name of the network to be copied.
Name of the network to be created as a copy of source_network
.
Physical storage parameters used internally to create network tables. Must be a valid string for use with the CREATE TABLE statement. For example: TABLESPACE tbs_3 STORAGE (INITIAL 100K NEXT 200K)
. If you do not specify this parameter, the default physical storage values are used.
Usage Notes
This procedure creates an entry in the xxx_SDO_NETWORK_METADATA views (described in Section 5.10.1) for target_network
that has the same information as for source_network
, except for the new network name.
This procedure also creates a new node table, link table, and path table (if a path table exists for source_network
) for target_network
based on the metadata and data in these tables for source_network
. These tables have names in the form <target-network>_NODE$, <target-network>_LINK$, and <target-network>_PATH$. For example, if target_network
has the value ROADS_NETWORK2
and if source_network
has a path table, the names of the created metadata tables are ROADS_NETWORK2_NODE$, ROADS_NETWORK2_LINK$, and ROADS_NETWORK2_PATH$.
Examples
The following example creates a new network named ROADS_NETWORK2
that is a copy of the network named ROADS_NETWORK
.
EXECUTE SDO_NET.COPY_NETWORK('ROADS_NETWORK', 'ROADS_NETWORK2');
Format
SDO_NET.CREATE_LINK_TABLE(
table_name IN VARCHAR2,
geom_type IN VARCHAR2,
geom_column IN VARCHAR2,
cost_column IN VARCHAR2,
no_of_hierarchy_levels IN NUMBER,
add_bidirected_column IN BOOLEAN DEFALT FALSE,
storage_parameters IN VARCHAR2 DEFAULT NULL);
Description
Creates a link table for a network.
Parameters
Name of the link table.
For a spatial network, specify a value indicating the geometry type of links: SDO_GEOMETRY
for non-LRS SDO_GEOMETRY objects, LRS_GEOMETRY
for LRS SDO_GEOMETRY objects, or TOPO_GEOMETRY
for SDO_TOPO_GEOMETRY objects.
For a spatial network, the name of the column containing the geometry objects associated with the links.
Name of the column containing the cost values to be associated with the links.
Number of hierarchy levels for links in the network. (For an explanation of network hierarchy, see Section 5.5.)
TRUE
adds a column named BIDIRECTED to the link table; FALSE
(the default) does not add a column named BIDIRECTED to the link table.
Physical storage parameters used internally to create the link table. Must be a valid string for use with the CREATE TABLE statement. For example: TABLESPACE tbs_3 STORAGE (INITIAL 100K NEXT 200K)
. If you do not specify this parameter, the default physical storage values are used.
Usage Notes
The link table is described in Section 5.9.2.
Examples
The following example creates a link table named ROADS_LINKS, with a geometry column named LINK_GEOMETRY that will contain LRS geometries, a cost column named COST, and a single hierarchy level.
EXECUTE SDO_NET.CREATE_LINK_TABLE('ROADS_LINKS', 'LRS_GEOMETRY', 'LINK_GEOMETRY', 'COST', 1);
Format
SDO_NET.CREATE_LOGICAL_NETWORK(
network IN VARCHAR2,
no_of_hierarchy_levels IN NUMBER,
is_directed IN BOOLEAN,
node_with_cost IN BOOLEAN DEFAULT FALSE,
is_complex IN BOOLEAN DEFAULT FALSE,
storage_parameters IN VARCHAR2 DEFAULT NULL);
or
SDO_NET.CREATE_LOGICAL_NETWORK(
network IN VARCHAR2,
no_of_hierarchy_levels IN NUMBER,
is_directed IN BOOLEAN,
node_table_name IN VARCHAR2,
node_cost_column IN VARCHAR2,
link_table_name IN VARCHAR2,
link_cost_column IN VARCHAR2,
path_table_name IN VARCHAR2,
path_link_table_name IN VARCHAR2,
subpath_table_name IN VARCHAR2,
is_complex IN BOOLEAN DEFAULT FALSE,
storage_parameters IN VARCHAR2 DEFAULT NULL);
Description
Creates a logical network, creates all necessary tables, and updates the network metadata.
Parameters
Network name.
Number of hierarchy levels for links in the network. (For an explanation of network hierarchy, see Section 5.5.)
A Boolean value. TRUE
indicates that the links are directed; FALSE
indicates that the links are undirected (not directed).
A Boolean value. TRUE
causes a column named COST to be included in the <network-name>_NODE$ table; FALSE
(the default) causes a column named COST not to be included in the <network-name>_NODE$ table.
Name of the node table to be created. (The node table is explained in Section 5.9.1.) If you use the format that does not specify this parameter, a node table named <network-name>_NODE$ is created.
Name of the cost column in the node table. (The node table is explained in Section 5.9.1.) If you use the format that does not specify this parameter, the geometry column is named COST.
Name of the link table to be created. (The link table is explained in Section 5.9.2.) If you use the format that does not specify this parameter, a link table named <network-name>_LINK$ is created.
Name of the cost column in the link table. (The link table is explained in Section 5.9.2.) If you use the format that does not specify this parameter, the geometry column is named COST.
Name of the path table to be created. (The path table is explained in Section 5.9.3.) If you use the format that does not specify this parameter, a path table named <network-name>_PATH$ is created.
Name of the path-link table to be created. (The path-link table is explained in Section 5.9.4.) If you use the format that does not specify this parameter, a path-link table named <network-name>_PLINK$ is created.
Name of the subpath table to be created. (The subpath table is explained in Section 5.9.5.)
Reserved for future use. Ignored for the current release.
Physical storage parameters used internally to create network tables. Must be a valid string for use with the CREATE TABLE statement. For example: TABLESPACE tbs_3 STORAGE (INITIAL 100K NEXT 200K)
. If you do not specify this parameter, the default physical storage values are used.
Usage Notes
This procedure provides a convenient way to create a logical network when the node, link, and optional related tables do not already exist. The procedure creates the network; creates the node, link, path, and path-link tables for the network; and inserts the appropriate information in the xxx_SDO_NETWORK_METADATA views (described in Section 5.10.1).
An exception is generated if any of the tables to be created already exists.
The procedure has two formats. The simpler format creates the tables using default values for the table name and the cost column name. The other format lets you specify names for the tables and the cost column.
As an alternative to using this procedure, you can create the network using the SDO_NET.CREATE_LOGICAL_NETWORK procedure; create the tables using the SDO_NET.CREATE_NODE_TABLE, SDO_NET.CREATE_LINK_TABLE, SDO_NET.CREATE_PATH_TABLE, and SDO_NET.CREATE_PATH_LINK_TABLE procedures; and insert the appropriate row in the USER_SDO_NETWORK_METADATA view.
Examples
The following example creates a directed logical network named LOG_NET1
. The example creates the LOG_NET1_NODE$, LOG_NET1_LINK$,LOG_NET1_PATH$, and LOG_NET1_PLINK$ tables, and updates the xxx_SDO_NETWORK_METADATA views. Both the node and link tables contain a cost column named COST.
EXECUTE SDO_NET.CREATE_LOGICAL_NETWORK('LOG_NET1', 1, TRUE, TRUE);
Format
SDO_NET.CREATE_LRS_NETWORK(
network IN VARCHAR2,
lrs_table_name IN VARCHAR2,
lrs_geom_column IN VARCHAR2,
no_of_hierarchy_levels IN NUMBER,
is_directed IN BOOLEAN,
node_with_cost IN BOOLEAN DEFAULT FALSE,
is_complex IN BOOLEAN DEFAULT FALSE,
storage_parameters IN VARCHAR2 DEFAULT NULL);
or
SDO_NET.CREATE_LRS_NETWORK(
network IN VARCHAR2,
no_of_hierarchy_levels IN NUMBER,
is_directed IN BOOLEAN,
node_table_name IN VARCHAR2,
node_cost_column IN VARCHAR2,
link_table_name IN VARCHAR2,
link_cost_column IN VARCHAR2,
lrs_table_name IN VARCHAR2,
lrs_geom_column IN VARCHAR2,
path_table_name IN VARCHAR2,
path_geom_column IN VARCHAR2,
path_link_table_name IN VARCHAR2,
subpath_table_name IN VARCHAR2,
subpath_geom_column IN VARCHAR2,
is_complex IN BOOLEAN DEFAULT FALSE,
storage_parameters IN VARCHAR2 DEFAULT NULL);
Description
Creates a spatial network containing LRS SDO_GEOMETRY objects, creates all necessary tables, and updates the network metadata.
Parameters
Network name.
Name of the table containing the LRS geometry column.
Name of the column in lrs_table_name
that contains LRS geometries (that is, SDO_GEOMETRY objects that include measure information for linear referencing).
A Boolean value. TRUE
indicates that the links are directed; FALSE
indicates that the links are undirected (not directed).
Number of hierarchy levels for links in the network. (For an explanation of network hierarchy, see Section 5.5.)
A Boolean value. TRUE
causes a column named COST to be included in the <network-name>_NODE$ table; FALSE
(the default) causes a column named COST not to be included in the <network-name>_NODE$ table.
Reserved for future use. Ignored for the current release.
Name of the node table to be created. (The node table is explained in Section 5.9.1.) If you use the format that does not specify this parameter, a node table named <network-name>_NODE$ is created.
Name of the cost column in the node table. (The node table is explained in Section 5.9.1.) If you use the format that does not specify this parameter, the geometry column is named COST.
Name of the link table to be created. (The link table is explained in Section 5.9.2.) If you use the format that does not specify this parameter, a link table named <network-name>_LINK$ is created.
Name of the cost column in the link table. (The link table is explained in Section 5.9.2.) If you use the format that does not specify this parameter, the geometry column is named COST.
Name of the path table to be created. (The path table is explained in Section 5.9.3.) If you use the format that does not specify this parameter, a path table named <network-name>_PATH$ is created.
Name of the geometry column in the path table. (The path table is explained in Section 5.9.3.) If you use the format that does not specify this parameter, the geometry column is named GEOMETRY.
Name of the path-link table to be created. (The path-link table is explained in Section 5.9.4.) If you use the format that does not specify this parameter, a path-link table named <network-name>_PLINK$ is created.
Name of the subpath table to be created. (The subpath table is explained in Section 5.9.5.).
Name of the geometry column in the subpath table. (The subpath table is explained in Section 5.9.5.)
Physical storage parameters used internally to create network tables. Must be a valid string for use with the CREATE TABLE statement. For example: TABLESPACE tbs_3 STORAGE (INITIAL 100K NEXT 200K)
. If you do not specify this parameter, the default physical storage values are used.
Usage Notes
This procedure provides a convenient way to create a spatial network of LRS geometries when the node, link, and optional related tables do not already exist. The procedure creates the network; creates the node, link, path, and path-link tables for the network; and inserts the appropriate information in the xxx_SDO_NETWORK_METADATA views (described in Section 5.10.1).
An exception is generated if any of the tables to be created already exists.
The procedure has two formats. The simpler format creates the tables using default values for the table name and the geometry and cost column names. The other format lets you specify names for the tables and the geometry and cost columns.
As an alternative to using this procedure, you can create the network using the SDO_NET.CREATE_LRS_NETWORK procedure; create the tables using the SDO_NET.CREATE_NODE_TABLE, SDO_NET.CREATE_LINK_TABLE, SDO_NET.CREATE_PATH_TABLE, and SDO_NET.CREATE_PATH_LINK_TABLE procedures; and insert the appropriate row in the USER_SDO_NETWORK_METADATA view.
Examples
The following example creates a directed spatial network named LRS_NET1
. The LRS geometries are in the column named LRS_GEOM in the table named LRS_TAB. The example creates the LRS_NET1_NODE$, LRS_NET1_LINK$, LRS_NET1_PATH$, and LRS_NET1_PLINK$ tables, and updates the xxx_SDO_NETWORK_METADATA views. All geometry columns are named GEOMETRY. Both the node and link tables contain a cost column named COST.
EXECUTE SDO_NET.CREATE_LRS_NETWORK('LRS_NET1', 'LRS_TAB', 'LRS_GEOM', 1, TRUE, TRUE);
Format
SDO_NET.CREATE_LRS_TABLE(
table_name IN VARCHAR2,
geom_column IN VARCHAR2,
storage_parameters IN VARCHAR2 DEFAULT NULL);
Description
Creates a table for storing Oracle Spatial linear referencing system (LRS) geometries.
Parameters
Name of the table containing the geometry column specified in geom_column
.
Name of the column (of type SDO_GEOMETRY) to contain geometry objects.
Physical storage parameters used internally to create the LRS table. Must be a valid string for use with the CREATE TABLE statement. For example: TABLESPACE tbs_3 STORAGE (INITIAL 100K NEXT 200K)
. If you do not specify this parameter, the default physical storage values are used.
Usage Notes
This procedure creates a table named table_name
with two columns: GEOM_ID of type NUMBER and geom_column
of type SDO_GEOMETRY.
Although the created table does not need to be used to store LRS geometries, the procedure is intended as a convenient method for creating a table to store such geometries. You will probably want to modify the table to add other columns before you store data in the table.
Examples
The following example creates a table named HIGHWAYS with a geometry column named GEOM.
EXECUTE SDO_NET.CREATE_LRS_TABLE('HIGHWAYS', 'GEOM'); PL/SQL procedure successfully completed. DESCRIBE highways Name Null? Type ----------------------------------------- -------- ---------------------------- GEOM_ID NOT NULL NUMBER GEOM MDSYS.SDO_GEOMETRY
Format
SDO_NET.CREATE_NODE_TABLE(
table_name IN VARCHAR2,
geom_type IN VARCHAR2,
geom_column IN VARCHAR2,
cost_column IN VARCHAR2,
no_of_hierarchy_levels IN NUMBER,
is_complex IN BOOLEAN DEFAULT FALSE,
storage_parameters IN VARCHAR2 DEFAULT NULL);
or
SDO_NET.CREATE_NODE_TABLE(
table_name IN VARCHAR2,
geom_type IN VARCHAR2,
geom_column IN VARCHAR2,
cost_column IN VARCHAR2,
partition_column IN VARCHAR2,
no_of_hierarchy_levels IN NUMBER,
is_complex IN BOOLEAN DEFAULT FALSE,
storage_parameters IN VARCHAR2 DEFAULT NULL);
Description
Creates a node table.
Parameters
Name of the node table.
For a spatial network, specify a value indicating the geometry type of nodes: SDO_GEOMETRY
for non-LRS SDO_GEOMETRY objects, LRS_GEOMETRY
for LRS SDO_GEOMETRY objects, or TOPO_GEOMETRY
for SDO_TOPO_GEOMETRY objects.
For a spatial network, the name of the column containing the geometry objects associated with the nodes.
Name of the column containing the cost values to be associated with the nodes.
Name of the column containing the partition ID values to be associated with the nodes.
Number of hierarchy levels for nodes in the network. (For an explanation of network hierarchy, see Section 5.5.)
Reserved for future use. Ignored for the current release.
Physical storage parameters used internally to create the <network-name>_NODE$ table (described in Section 5.9.1). Must be a valid string for use with the CREATE TABLE statement. For example: TABLESPACE tbs_3 STORAGE (INITIAL 100K NEXT 200K)
. If you do not specify this parameter, the default physical storage values are used.
Usage Notes
This procedure has two formats, one without the partition_column
parameter and one with the partition_column
parameter.
The node table is described in Section 5.9.1.
Examples
The following example creates a node table named ROADS_NODES with a geometry column named NODE_GEOMETRY that will contain LRS geometries, no cost column, and a single hierarchy level.
EXECUTE SDO_NET.CREATE_NODE_TABLE('ROADS_NODES', 'LRS_GEOMETRY', 'NODE_GEOMETRY', NULL, 1);
Format
SDO_NET.CREATE_PARTITION_TABLE(
table_name IN VARCHAR2);
Description
Creates a partition table.
Parameters
Name of the partition table.
Usage Notes
The partition table is described in Section 5.9.6.
For information about using partitioned networks to perform analysis using the load on demand approach, see Section 5.7.
Examples
The following example creates a partition table named MY_PART_TAB.
EXECUTE SDO_NET.CREATE_PARTITION_TABLE('MY_PART_TAB');
Format
SDO_NET.CREATE_PATH_LINK_TABLE(
table_name IN VARCHAR2,
storage_paramet ers IN VARCHAR2 DEFAULT NULL);
Description
Creates a path-link table, that is, a table with a row for each link in each path in the path table.
Parameters
Name of the path-link table.
Physical storage parameters used internally to create the path-link table. Must be a valid string for use with the CREATE TABLE statement. For example: TABLESPACE tbs_3 STORAGE (INITIAL 100K NEXT 200K)
. If you do not specify this parameter, the default physical storage values are used.
Usage Notes
The path-link table is described in Section 5.9.4.
To use paths with a network, you must populate the path-link table.
Examples
The following example creates a path-link table named ROADS_PATHS_LINKS.
EXECUTE SDO_NET.CREATE_PATH_LINK_TABLE('ROADS_PATHS_LINKS');
Format
SDO_NET.CREATE_PATH_TABLE(
table_name IN VARCHAR2,
geom_column IN VARCHAR2,
storage_parameters IN VARCHAR2 DEFAULT NULL);
Description
Creates a path table.
Parameters
Name of the path table.
For a spatial network, name of the column containing the geometry objects associated with the paths.
Physical storage parameters used internally to create the path table. Must be a valid string for use with the CREATE TABLE statement. For example: TABLESPACE tbs_3 STORAGE (INITIAL 100K NEXT 200K)
. If you do not specify this parameter, the default physical storage values are used.
Usage Notes
The path table is described in Section 5.9.3.
To use paths with a network, after you create the path table, you must create the path-link table using the SDO_NET.CREATE_PATH_LINK_TABLE procedure, and populate the path-link table.
Examples
The following example creates a path table named ROADS_PATHS that contains a geometry column named PATH_GEOMETRY.
EXECUTE SDO_NET.CREATE_PATH_TABLE('ROADS_PATHS', 'PATH_GEOMETRY');
Format
SDO_NET.CREATE_SDO_NETWORK(
network IN VARCHAR2,
no_of_hierarchy_levels IN NUMBER,
is_directed IN BOOLEAN,
node_with_cost IN BOOLEAN DEFAULT FALSE,
is_complex IN BOOLEAN DEFAULT FALSE,
storage_parameters IN VARCHAR2 DEFAULT NULL);
or
SDO_NET.CREATE_SDO_NETWORK(
network IN VARCHAR2,
no_of_hierarchy_levels IN NUMBER,
is_directed IN BOOLEAN,
node_table_name IN VARCHAR2,
node_geom_column IN VARCHAR2,
node_cost_column IN VARCHAR2,
link_table_name IN VARCHAR2,
link_geom_column IN VARCHAR2,
link_cost_column IN VARCHAR2,
path_table_name IN VARCHAR2,
path_geom_column IN VARCHAR2,
path_link_table_name IN VARCHAR2,
subpath_table_name IN VARCHAR2,
subpath_geom_column IN VARCHAR2,
is_complex IN BOOLEAN DEFAULT FALSE,
storage_parameters IN VARCHAR2 DEFAULT NULL);
Description
Creates a spatial network containing non-LRS SDO_GEOMETRY objects, creates all necessary tables, and updates the network metadata.
Parameters
Network name.
Number of hierarchy levels for links in the network. (For an explanation of network hierarchy, see Section 5.5.)
A Boolean value. TRUE
indicates that the links are directed; FALSE
indicates that the links are undirected (not directed).
A Boolean value. TRUE
causes a column named COST to be included in the <network-name>_NODE$ table; FALSE
(the default) causes a column named COST not to be included in the <network-name>_NODE$ table.
Name of the node table to be created. (The node table is explained in Section 5.9.1.) If you use the format that does not specify this parameter, a node table named <network-name>_NODE$ is created.
Name of the geometry column in the node table. (The node table is explained in Section 5.9.1.) If you use the format that does not specify this parameter, the geometry column is named GEOMETRY.
Name of the cost column in the node table. (The node table is explained in Section 5.9.1.) If you use the format that does not specify this parameter, the geometry column is named COST.
Name of the link table to be created. (The link table is explained in Section 5.9.2.) If you use the format that does not specify this parameter, a link table named <network-name>_LINK$ is created.
Name of the geometry column in the link table. (The link table is explained in Section 5.9.2.) If you use the format that does not specify this parameter, the geometry column is named GEOMETRY.
Name of the cost column in the link table. (The link table is explained in Section 5.9.2.) If you use the format that does not specify this parameter, the geometry column is named COST.
Name of the path table to be created. (The path table is explained in Section 5.9.3.) If you use the format that does not specify this parameter, a path table named <network-name>_PATH$ is created.
Name of the geometry column in the path table. (The path table is explained in Section 5.9.3.) If you use the format that does not specify this parameter, the geometry column is named GEOMETRY.
Name of the path-link table to be created. (The path-link table is explained in Section 5.9.4.) If you use the format that does not specify this parameter, a path-link table named <network-name>_PLINK$ is created.
Name of the subpath table to be created. (The subpath table is explained in Section 5.9.5.)
Name of the geometry column in the subpath table. (The subpath table is explained in Section 5.9.5.).
Reserved for future use. Ignored for the current release.
Physical storage parameters used internally to create network tables. Must be a valid string for use with the CREATE TABLE statement. For example: TABLESPACE tbs_3 STORAGE (INITIAL 100K NEXT 200K)
. If you do not specify this parameter, the default physical storage values are used.
Usage Notes
This procedure provides a convenient way to create a spatial network when the node, link, and optional related tables do not already exist. The procedure creates the network; creates the node, link, path, and path-link tables for the network; and inserts the appropriate information in the xxx_SDO_NETWORK_METADATA views (described in Section 5.10.1).
An exception is generated if any of the tables to be created already exists.
The procedure has two formats. The simpler format creates the tables using default values for the table name and the geometry and cost column names. The other format lets you specify names for the tables and the geometry and cost columns.
As an alternative to using this procedure, you can create the network using the SDO_NET.CREATE_SDO_NETWORK procedure; create the tables using the SDO_NET.CREATE_NODE_TABLE, SDO_NET.CREATE_LINK_TABLE, SDO_NET.CREATE_PATH_TABLE, and SDO_NET.CREATE_PATH_LINK_TABLE procedures; and insert the appropriate row in the USER_SDO_NETWORK_METADATA view.
Examples
The following example creates a directed spatial network named SDO_NET1
. The example creates the SDO_NET1_NODE$, SDO_NET1_LINK$, SDO_NET1_PATH$, and SDO_NET1_PLINK$ tables, and updates the xxx_SDO_NETWORK_METADATA views. All geometry columns are named GEOMETRY. Both the node and link tables contain a cost column named COST.
EXECUTE SDO_NET.CREATE_SDO_NETWORK('SDO_NET1', 1, TRUE, TRUE);
Format
SDO_NET.CREATE_PATH_TABLE(
table_name IN VARCHAR2,
geom_column IN VARCHAR2,
storage_parameters IN VARCHAR2 DEFAULT NULL);
Description
Creates a subpath table.
Parameters
Name of the subpath table.
For a spatial network, name of the column containing the geometry objects associated with the subpaths.
Physical storage parameters used internally to create the subpath table (described in Section 5.9.1). Must be a valid string for use with the CREATE TABLE statement. For example: TABLESPACE tbs_3 STORAGE (INITIAL 100K NEXT 200K)
. If you do not specify this parameter, the default physical storage values are used.
Usage Notes
The subpath table is described in Section 5.9.5.
To use subpaths with a network, you must create one or more path tables and their associated path-link tables.
Examples
The following example creates a subpath table named ROADS_SUBPATHS that contains a geometry column named SUBPATH_GEOMETRY.
EXECUTE SDO_NET.CREATE_SUBPATH_TABLE('ROADS_SUBPATHS', 'SUBPATH_GEOMETRY');
Format
SDO_NET.CREATE_TOPO_NETWORK(
network IN VARCHAR2,
no_of_hierarchy_levels IN NUMBER,
is_directed IN BOOLEAN,
node_with_cost IN BOOLEAN DEFAULT FALSE,
is_complex IN BOOLEAN DEFAULT FALSE,
storage_parameters IN VARCHAR2 DEFAULT NULL);
or
SDO_NET.CREATE_TOPO_NETWORK(
network IN VARCHAR2,
no_of_hierarchy_levels IN NUMBER,
is_directed IN BOOLEAN,
node_table_name IN VARCHAR2,
node_cost_column IN VARCHAR2,
link_table_name IN VARCHAR2,
link_cost_column IN VARCHAR2,
path_table_name IN VARCHAR2,
path_geom_column IN VARCHAR2,
path_link_table_name IN VARCHAR2,
is_complex IN BOOLEAN DEFAULT FALSE,
storage_parameters IN VARCHAR2 DEFAULT NULL);
or
SDO_NET.CREATE_TOPO_NETWORK(
network IN VARCHAR2,
no_of_hierarchy_levels IN NUMBER,
is_directed IN BOOLEAN,
node_table_name IN VARCHAR2,
node_geom_column IN VARCHAR2,
node_cost_column IN VARCHAR2,
link_table_name IN VARCHAR2,
link_cost_column IN VARCHAR2,
path_table_name IN VARCHAR2,
path_geom_column IN VARCHAR2,
path_link_table_name IN VARCHAR2,
subpath_table_name IN VARCHAR2,
subpath_geom_column IN VARCHAR2,
is_complex IN BOOLEAN DEFAULT FALSE,
storage_parameters IN VARCHAR2 DEFAULT NULL);
Description
Creates a spatial topology network containing SDO_TOPO_GEOMETRY objects, creates all necessary tables, and updates the network metadata.
Parameters
Network name.
Number of hierarchy levels for links in the network. (For an explanation of network hierarchy, see Section 5.5.)
A Boolean value. TRUE
indicates that the links are directed; FALSE
indicates that the links are undirected (not directed).
A Boolean value. TRUE
causes a column named COST to be included in the <network-name>_NODE$ table; FALSE
(the default) causes a column named COST not to be included in the <network-name>_NODE$ table.
Name of the node table to be created. (The node table is explained in Section 5.9.1.) If you use the format that does not specify this parameter, a node table named <network-name>_NODE$ is created.
Name of the cost column in the node table. (The node table is explained in Section 5.9.1.) If you use the format that does not specify this parameter, the geometry column is named COST.
Name of the link table to be created. (The link table is explained in Section 5.9.2.) If you use the format that does not specify this parameter, a link table named <network-name>_LINK$ is created.
Name of the cost column in the link table. (The link table is explained in Section 5.9.2.) If you use the format that does not specify this parameter, the geometry column is named COST.
Name of the path table to be created. (The path table is explained in Section 5.9.3.) If you use the format that does not specify this parameter, a path table named <network-name>_PATH$ is created.
Name of the geometry column in the path table. (The path table is explained in Section 5.9.3.) If you use the format that does not specify this parameter, the geometry column is named GEOMETRY.
Name of the path-link table to be created. (The path-link table is explained in Section 5.9.4.) If you use the format that does not specify this parameter, a path-link table named <network-name>_PLINK$ is created.
Name of the subpath table to be created. (The subpath table is explained in Section 5.9.5.).
Name of the geometry column in the subpath table. (The subpath table is explained in Section 5.9.5.)
Reserved for future use. Ignored for the current release.
Physical storage parameters used internally to create network tables. Must be a valid string for use with the CREATE TABLE statement. For example: TABLESPACE tbs_3 STORAGE (INITIAL 100K NEXT 200K)
. If you do not specify this parameter, the default physical storage values are used.
Usage Notes
This procedure provides a convenient way to create a spatial network when the node, link, and optional related tables do not already exist. The procedure creates the network; creates the node, link, path, and path-link tables for the network; and inserts the appropriate information in the xxx_SDO_NETWORK_METADATA views (described in Section 5.10.1). The node and link tables contain a topology geometry column named TOPO_GEOMETRY of type SDO_TOPO_GEOMETRY.
An exception is generated if any of the tables to be created already exists.
The procedure has two formats. The simpler format creates the tables using default values for the table name and the geometry and cost column names. The other format lets you specify names for the tables and the geometry and cost columns.
As an alternative to using this procedure, you can create the network using the SDO_NET.CREATE_TOPO_NETWORK procedure; create the tables using the SDO_NET.CREATE_NODE_TABLE, SDO_NET.CREATE_LINK_TABLE, SDO_NET.CREATE_PATH_TABLE, and SDO_NET.CREATE_PATH_LINK_TABLE procedures; and insert the appropriate row in the USER_SDO_NETWORK_METADATA view.
Examples
The following example creates a directed spatial topology geometry network named TOPO_NET1
. The example creates the TOPO_NET1_NODE$, TOPO_NET1_LINK$, TOPO_NET1_PATH$, and TOPO_NET1_PLINK$ tables, and updates the xxx_SDO_NETWORK_METADATA views. The topology geometry columns are named TOPO_GEOMETRY. Both the node and link tables contain a cost column named COST.
EXECUTE SDO_NET.CREATE_TOPO_NETWORK('TOPO_NET1', 1, TRUE, TRUE);
Format
SDO_NET.DELETE_LINK(
network IN VARCHAR2,
link_id IN NUMBER);
Description
Deletes a link and all dependent network elements.
Parameters
Network name.
ID of the link to delete.
Usage Notes
This procedure deletes the specified link from the link table (described in Section 5.9.2), and it deletes any other network elements that depend on this link. For example, if the specified link is included in any paths and subpaths, those paths and subpaths are deleted also.
Examples
The following example deletes the link in the SDO_NET2 network whose link ID is 1.
SELECT SDO_NET.DELETE_LINK('SDO_NET2', 1);
Format
SDO_NET.DELETE_NODE(
network IN VARCHAR2,
node_id IN NUMBER);
Description
Deletes a node and all dependent network elements.
Parameters
Network name.
ID of the node to delete.
Usage Notes
This procedure deletes the specified node from the node table (described in Section 5.9.1), and it deletes any other network elements that depend on this node. For example, if the specified node is included in any link definitions, those links are deleted; and if any of the deleted links are included in any paths and subpaths, those paths and subpaths are deleted also.
Examples
The following example deletes the node in the SDO_NET2 network whose node ID is 1.
SELECT SDO_NET.DELETE_NODE('SDO_NET2', 1);
Format
SDO_NET.DELETE_PATH(
network IN VARCHAR2,
path_id IN NUMBER);
Description
Deletes a path and all dependent network elements.
Parameters
Network name.
ID of the path to delete.
Usage Notes
This procedure deletes the specified path from the path table (described in Section 5.9.3), and it deletes any other network elements that depend on this path. For example, if the specified path has any subpaths, those subpaths are deleted also.
Examples
The following example deletes the path in the SDO_NET2 network whose path ID is 1.
SELECT SDO_NET.DELETE_PATH('SDO_NET2', 1);
Format
SDO_NET.DELETE_SUBPATH(
network IN VARCHAR2,
subpath_id IN NUMBER);
Description
Deletes a subpath.
Parameters
Network name.
ID of the subpath to delete.
Usage Notes
This procedure deletes the specified subpath from the path table (described in Section 5.9.3). It does not delete any other network elements, because no other elements depend on a subpath definition.
Examples
The following example deletes the subpath in the SDO_NET2 network whose subpath ID is 17.
SELECT SDO_NET.DELETE_SUBPATH('SDO_NET2', 17);
Format
SDO_NET.DEREGISTER_CONSTRAINT(
constraint_name IN VARCHAR2);
Description
Unloads (removes) the class for the specified network constraint from the Java repository in the database, and deletes the row for that constraint from the USER_SDO_NETWORK_CONSTRAINTS view (described in Section 5.10.2).
Parameters
Name of the network constraint. Must match a value in the CONSTRAINT column of the USER_SDO_NETWORK_CONSTRAINTS view.
Usage Notes
Use this procedure if you want to disable a network constraint that you had previously enabled, such as by using the SDO_NET.REGISTER_CONSTRAINTprocedure. For more information about network constraints, see Section 5.6.
Examples
The following example deregisters (disables) a network constraint named GivenProhibitedTurn
.
EXECUTE SDO_NET.DEREGISTER_CONSTRAINT('GivenProhibitedTurn');
Format
SDO_NET.DROP_NETWORK(
network IN VARCHAR2);
Description
Drops (deletes) a network.
Parameters
Name of the network to be dropped.
Usage Notes
This procedure also deletes the node, link, and path tables associated with the network, and the network metadata for the network.
Examples
The following example drops the network named ROADS_NETWORK
.
EXECUTE SDO_NET.DROP_NETWORK('ROADS_NETWORK');
Format
SDO_NET.FIND_CONNECTED_COMPONENTS(
network IN VARCHAR2,
link_level IN NUMBER DEFAULT 1,
component_table_name IN VARCHAR2,
log_loc IN VARCHAR2,
log_file IN VARCHAR2,
open_mode IN VARCHAR2 DEFAULT 'A');
Description
Finds all connected components for a specified link level in a network, and stores the information in the connected component table.
Parameters
Network name.
Link level for which to find connected components (default = 1). The link level reflects the priority level for the link, and is used for network analysis, so that links with higher priority levels can be considered first in computing a path.
Name of the connected component table, which is created by this procedure. (If an existing table with the specified name already exists, it is updated with information for the specified link level.) The connected component table is described in Section 5.9.8.
Directory object that identifies the path for the log file. To create a directory object, use the SQL*Plus command CREATE DIRECTORY.
Log file containing information about Spatial network operations, including any possible errors or problems.
A one-character code indicating the mode in which to open the log file: W
for write over (that is, delete any existing log file at the specified location and name, and create a new file), or A
(the default) for append (that is, append information to the existing specified log file). If you specify A
and the log file does not exist, a new log file is created.
Usage Notes
This procedure finds, for each node in the specified network, information about all other nodes that are reachable from that node, and it stores the information in the specified connected component table. Having this information in the table enables better performance for many network analysis operations.
Examples
The following example finds the connected components for link level 1 in the SDO_PAR TITIONED network, and creates or updates the SDO_PARTITIONED_CONN_COMP_TAB table. Information about the operation is added (open_mode => 'a'
) to the sdo_partitioned.log
file, located in the location associated with the directory object named LOG_DIR
.
EXECUTE SDO_NET.FIND_CONNECTED_COMPONENTS(- network => 'SDO_PARTITIONED', - link_level => 1,- component_table_name => 'sdo_partitioned_conn_comp_tab',- log_loc => 'LOG_DIR', log_file=> 'sdo_partitioned.log',- open_mode => 'a');
Format
SDO_NET.GENERATE_NODE_LEVELS(
network IN VARCHAR2,
node_level_table_name IN VARCHAR2,
overwrite IN BOOLEAN DEFAULT FALSE,
log_loc IN VARCHAR2,
log_file IN VARCHAR2,
open_mode IN VARCHAR2 DEFAULT 'A');
Description
Generates node levels for a specified hierarchical (multilevel) network, and stores the information in a table.
Parameters
Network name.
Table in which to store node level information. This table must have the following definition: (node_id NUMBER PRIMARY KEY, link_level NUMBER)
Controls the behavior if the table specified in node_level_table_name
already exists: TRUE
replaces the contents of that table with new data; FALSE
(the default) generates an error. (This parameter has no effect if the table specified in node_level_table_name
does not exist.)
Directory object that identifies the path for the log file. To create a directory object, use the SQL*Plus command CREATE DIRECTORY.
Log file containing information about Spatial network operations, including any possible errors or problems.
A one-character code indicating the mode in which to open the log file: W
for write over (that is, delete any existing log file at the specified location and name, and create a new file), or A
(the default) for append (that is, append information to the existing specified log file). If you specify A
and the log file does not exist, a new log file is created.
Usage Notes
If network
is not a hierarchical network (one with multiple link levels), this procedure does not perform any operation. For information about hierarchical networks, see Section 5.5.
The node level table name is stored in the NODE_LEVEL_TABLE_NAME column of the USER_SDO_NETWORK_METADATA view, which is described in Section 5.10.1.
Examples
The following example generates the node level information for the MY_MULTILEVEL_NET network, and stores the information in the MY_NET_NODE_LEVELS table. Information about the operation is added (open_mode => 'a'
) to the my_multilevel_net.log
file, located in the location associated with the directory object named LOG_DIR
.
EXECUTE SDO_NET.GENERATE_NODE_LEVELS(- network => 'MY_MULTILEVEL_NET', - node_level_table_name => 'MY_NET_NODE_LEVELS',- overwrite => FALSE,- log_loc => 'LOG_DIR', log_file=> 'my_multilevel_net.log',- open_mode => 'a');
Format
SDO_NET.GENERATE_PARTITION_BLOB(
network IN VARCHAR2,
link_level IN NUMBER DEFAULT 1,
partition_id IN VARCHAR2,
include_user_data IN BOOLEAN,
log_loc IN VARCHAR2,
log_file IN VARCHAR2,
open_mode IN VARCHAR2 DEFAULT 'A',
preform_delta_update IN BOOLEAN DEFAULT FALSE);
Description
Generates a single binary large object (BLOB) representation for a specified partition associated with a specified link level in the network, and stores the information in the existing partition BLOB table.
Parameters
Network name.
Link level for links to be included in the BLOB (default = 1). The link level reflects the priority level for the link, and is used for network analysis, so that links with higher priority levels can be considered first in computing a path.
Partition ID number. Network elements associated with the specified combination of link level and partition ID are included in the generated BLOB.
TRUE
if the BLOB should include any user data associated with the network elements represented in each BLOB, or FALSE
if the BLOB should not include any user data.
Directory object that identifies the path for the log file. To create a directory object, use the SQL*Plus command CREATE DIRECTORY.
Log file containing information about Spatial network operations, including any possible errors or problems.
A one-character code indicating the mode in which to open the log file: W
for write over (that is, delete any existing log file at the specified location and name, and create a new file), or A
(the default) for append (that is, append information to the existing specified log file). If you specify A
and the log file does not exist, a new log file is created.
(Reserved for future use. The only permitted value is FALSE
, the default.)
Usage Notes
This procedure adds a single new BLOB or replaces a single existing BLOB in the partition BLOB table, which must have been previously created using the SDO_NET.GENERATE_PARTITION_BLOBS procedure.
One use for this procedure is to perform a relatively quick update of the BLOB for a desired partition in a network that contains multiple large partitions, as opposed to than updating the BLOBs for all partitions using the SDO_NET.GENERATE_PARTITION_BLOBS procedure.
Examples
The following example generates the partition BLOB for the partition associated with partition ID 1 and link level 1 in the SDO_PARTITIONED network, and adds or replaces the appropriate BLOB in the SDO_PARTITIONED_PART_BLOB_TAB table. Any user data associated with the network elements is also included. Information about the operation is added (open_mode => 'a'
) to the sdo_partitioned.log
file, located in the location associated with the directory object named LOG_DIR
.
EXECUTE SDO_NET.GENERATE_PARTITION_BLOB(- network => 'SDO_PARTITIONED', - link_level => 1,- partition_id => 1,- include_user_data => true,- log_loc => 'LOG_DIR', log_file=> 'sdo_partitioned.log',- open_mode => 'a');
Format
SDO_NET.GENERATE_PARTITION_BLOBS(
network IN VARCHAR2,
link_level IN NUMBER DEFAULT 1,
partition_blob_table_name IN VARCHAR2,
include_user_data IN BOOLEAN,
commit_for_each_blob IN BOOLEAN DEFAULT TRUE,
log_loc IN VARCHAR2,
log_file IN VARCHAR2,
open_mode IN VARCHAR2 DEFAULT 'A',
preform_delta_update IN BOOLEAN DEFAULT FALSE,
regenerate_node_levels IN BOOLEAN DEFAULT FALSE);
Description
Generates a binary large object (BLOB) representation for partitions associated with a specified link level in the network, and stores the information in the partition BLOB table.
Parameters
Network name.
Link level for links to be included in each BLOB (default = 1). The link level reflects the priority level for the link, and is used for network analysis, so that links with higher priority levels can be considered first in computing a path.
Name of the partition BLOB table, which is created by this procedure. (If an existing table with the specified name already exists, it is updated with information for the specified link level.) The partition BLOB table is described in Section 5.9.7.
TRUE
if each BLOB should include any user data associated with the network elements represented in each BLOB, or FALSE
if each BLOB should not include any user data.
TRUE
(the default) if each partition BLOB should be committed to the database after it is generated, or FALSE
if each BLOB should not be committed (in which case you must perform one or more explicit commit operations).
Directory object that identifies the path for the log file. To create a directory object, use the SQL*Plus command CREATE DIRECTORY.
Log file containing information about Spatial network operations, including any possible errors or problems.
A one-character code indicating the mode in which to open the log file: W
for write over (that is, delete any existing log file at the specified location and name, and create a new file), or A
(the default) for append (that is, append information to the existing specified log file). If you specify A
and the log file does not exist, a new log file is created.
(Reserved for future use. The only permitted value is FALSE
, the default.)
TRUE
to regenerate the node level table for multilevel networks, or FALSE
(the default) not to regenerate the node level table for multilevel networks. You should set this parameter to TRUE
if higher-level (second level or above) nodes are added or deleted from the network, or if the level of a node is changed. The level of a node is defined as the maximum link level coming into or out of the node.
Usage Notes
Generating partition BLOBs enables better performance for many network analysis operations, especially with large networks.
If the network is not partitioned, this procedure generates a single BLOB representing the entire network.
Do not confuse this procedure with SDO_NET.GENERATE_PARTITION_BLOB, which regenerates a single BLOB for a specified combination of link level and partition ID, and adds that information to the existing partition BLOB table.
Examples
The following example generates partition BLOBs for link level 1 in the SDO_PARTITIONED network, and creates or updates the SDO_PARTITIONED_PART_BLOB_TAB table. Any user data associated with the network elements is also included. Information about the operation is added (open_mode => 'a'
) to the sdo_partitioned.log
file, located in the location associated with the directory object named LOG_DIR
.
EXECUTE SDO_NET.GENERATE_PARTITION_BLOBS(- network => 'SDO_PARTITIONED', - link_level => 1,- partition_blob_table_name => 'sdo_partitioned_part_blob_tab',- include_user_data => true,- log_loc => 'LOG_DIR', log_file=> 'sdo_partitioned.log',- open_mode => 'a');
Format
SDO_NET.GET_CHILD_LINKS(
network IN VARCHAR2,
link_id IN NUMBER
) RETURN SDO_NUMBER_ARRAY;
Description
Returns the child links of a link.
Parameters
Network name.
ID of the link for which to return the child links.
Usage Notes
For information about parent and child nodes and links in a network hierarchy, see Section 5.5.
Examples
The following example returns the child links of the link in the XYZ_NETWORK
network whose link ID is 1001.
SELECT SDO_NET.GET_CHILD_LINKS('XYZ_NETWORK', 1001) FROM DUAL; SDO_NET.GET_CHILD_LINKS('XYZ_NETWORK',1001) -------------------------------------------------------------------------------- SDO_NUMBER_ARRAY(1108, 1109)
Format
SDO_NET.GET_CHILD_NODES(
network IN VARCHAR2,
node_id IN NUMBER
) RETURN SDO_NUMBER_ARRAY;
Description
Returns the child nodes of a node.
Parameters
Network name.
ID of the node for which to return the child nodes.
Usage Notes
For information about parent and child nodes and links in a network hierarchy, see Section 5.5.
Examples
The following example returns the child nodes of the node in the XYZ_NETWORK
network whose node ID is 1.
SELECT SDO_NET.GET_CHILD_NODES('XYZ_NETWORK', 1) FROM DUAL; SDO_NET.GET_CHILD_NODES('XYZ_NETWORK',1) -------------------------------------------------------------------------------- SDO_NUMBER_ARRAY(101, 102, 103, 104, 105, 106)
Format
SDO_NET.GET_GEOMETRY_TYPE(
network IN VARCHAR2
) RETURN VARCHAR2;
Description
Returns the geometry type for a spatial network.
Parameters
Network name.
Usage Notes
This function returns the value of the GEOMETRY_TYPE column for the network in the USER_SDO_NETWORK_METADATA view (see Table 5-9 in Section 5.10.1).
Examples
The following example returns the geometry type for the network named ROADS_NETWORK
.
SELECT SDO_NET.GET_GEOMETRY_TYPE('ROADS_NETWORK') FROM DUAL; SDO_NET.GET_GEOMETRY_TYPE('ROADS_NETWORK') -------------------------------------------------------------------------------- LRS_GEOMETRY
Format
SDO_NET.GET_IN_LINKS(
network IN VARCHAR2,
node_id IN NUMBER
) RETURN SDO_NUMBER_ARRAY;
Description
Returns an array of link ID numbers of the inbound links to a node.
Parameters
Network name.
ID of the node for which to return the array of inbound links.
Usage Notes
For information about inbound links and related network data model concepts, see Section 5.3.
Examples
The following example returns an array of link ID numbers of the inbound links into the node whose node ID is 3 in the network named ROADS_NETWORK
.
SELECT SDO_NET.GET_IN_LINKS('ROADS_NETWORK', 3) FROM DUAL; SDO_NET.GET_IN_LINKS('ROADS_NETWORK',3) -------------------------------------------------------------------------------- SDO_NUMBER_ARRAY(102)
Format
SDO_NET.GET_INVALID_LINKS(
network IN VARCHAR2
) RETURN SDO_NUMBER_ARRAY;
Description
Returns the invalid links in a network.
Parameters
Network name.
Usage Notes
This function returns an SDO_NUMBER_ARRAY object with a comma-delimited list of node ID numbers of invalid links in the specified network. If there are no invalid links, this function returns a null value.
Examples
The following example returns the invalid links in the SDO_PARTITIONED network.
SELECT SDO_NET.GET_INVALID_LINKS('SDO_PARTITIONED') FROM DUAL;
Format
SDO_NET.GET_INVALID_NODES(
network IN VARCHAR2
) RETURN SDO_NUMBER_ARRAY;
Description
Returns the invalid nodes in a network.
Parameters
Network name.
Usage Notes
This function returns an SDO_NUMBER_ARRAY object with a comma-delimited list of node ID numbers of invalid nodes in the specified network. If there are no invalid nodes, this function returns a null value.
Examples
The following example returns the invalid nodes in the SDO_PARTITIONED network.
SELECT SDO_NET.GET_INVALID_NODES('SDO_PARTITIONED') FROM DUAL;
Format
SDO_NET.GET_INVALID_PATHS(
network IN VARCHAR2
) RETURN SDO_NUMBER_ARRAY;
Description
Returns the invalid paths in a network.
Parameters
Network name.
Usage Notes
This function returns an SDO_NUMBER_ARRAY object with a comma-delimited list of node ID numbers of invalid paths in the specified network. If there are no invalid paths, this function returns a null value.
Examples
The following example returns the invalid paths in the SDO_PARTITIONED network.
SELECT SDO_NET.GET_INVALID_PATHS('SDO_PARTITIONED') FROM DUAL;
Format
SDO_NET.GET_ISOLATED_NODES(
network IN VARCHAR2
) RETURN SDO_NUMBER_ARRAY;
Description
Returns the isolated nodes in a network.
Parameters
Network name.
Usage Notes
This function returns an SDO_NUMBER_ARRAY object with a comma-delimited list of node ID numbers of isolated nodes in the specified network. If there are no isolated nodes, this function returns a null value.
For a brief explanation of isolated nodes in a network, see Section 5.3.
Examples
The following example returns the isolated nodes in the SDO_PARTITIONED network.
SELECT SDO_NET.GET_ISOLATED_NODES('SDO_PARTITIONED') FROM DUAL;
Format
SDO_NET.GET_LINK_COST_COLUMN(
network IN VARCHAR2
) RETURN VARCHAR2;
Description
Returns the name of the link cost column for a network.
Parameters
Network name.
Usage Notes
This function returns the value of the LINK_COST_COLUMN column for the network in the USER_SDO_NETWORK_METADATA view (see Table 5-9 in Section 5.10.1).
Examples
The following example returns the name of the link cost column for the network named ROADS_NETWORK
.
SELECT SDO_NET.GET_LINK_COST_COLUMN('ROADS_NETWORK') FROM DUAL; SDO_NET.GET_LINK_COST_COLUMN('ROADS_NETWORK') -------------------------------------------------------------------------------- COST
Format
SDO_NET.GET_LINK_DIRECTION(
network IN VARCHAR2
) RETURN VARCHAR2;
Description
Returns the link direction for a network.
Parameters
Network name.
Usage Notes
This function returns the value of the LINK_DIRECTION column for the network in the USER_SDO_NETWORK_METADATA view (see Table 5-9 in Section 5.10.1).
Examples
The following example returns the link direction for the network named ROADS_NETWORK
.
SELECT SDO_NET.GET_LINK_DIRECTION('ROADS_NETWORK') FROM DUAL; SDO_NET.GET_LINK_DIRECTION('ROADS_NETWORK') -------------------------------------------------------------------------------- DIRECTED
Format
SDO_NET.GET_LINK_GEOM_COLUMN(
network IN VARCHAR2
) RETURN VARCHAR2;
Description
Returns the name of the link geometry column for a spatial network.
Parameters
Network name.
Usage Notes
This function returns the value of the LINK_GEOM_COLUMN column for the network in the USER_SDO_NETWORK_METADATA view (see Table 5-9 in Section 5.10.1).
Examples
The following example returns the name of the link geometry column for the network named ROADS_NETWORK
.
SELECT SDO_NET.GET_LINK_GEOM_COLUMN('ROADS_NETWORK') FROM DUAL; SDO_NET.GET_LINK_GEOM_COLUMN('ROADS_NETWORK') -------------------------------------------------------------------------------- LINK_GEOMETRY
Format
SDO_NET.GET_LINK_GEOMETRY(
network IN VARCHAR2,
link_id IN NUMBER,
start_percentage IN NUMBER DEFAULT 0,
end_percentage IN NUMBER DEFAULT 1.0
) RETURN SDO_GEOMETRY;
Description
Returns the entire geometry or a portion of the geometry associated with a link in a spatial network.
Parameters
Network name.
ID number of the link for which to return the geometry.
Percentage of the distance along the link to be used for the start point of the returned geometry. Expressed as a number between 0 and 1.0; for example, 0.5 is 50 percent. The default value is 0; that is, the start of the returned geometry is associated with the start point of the link.
Percentage of the distance along the link to be used for the end point of the returned geometry. Expressed as a number between 0 and 1.0; for example, 0.5 is 50 percent. The default value is 1.0; that is, the end of returned geometry is associated with the end point of the link.
Usage Notes
None.
Examples
The following example returns the geometry associated with the link whose link ID is 103 in the network named ROADS_NETWORK
.
SELECT SDO_NET.GET_LINK_GEOMETRY('ROADS_NETWORK', 103) FROM DUAL; SDO_NET.GET_LINK_GEOMETRY('ROADS_NETWORK',103)(SDO_GTYPE, SDO_SRID, SDO_POINT(X, -------------------------------------------------------------------------------- SDO_GEOMETRY(2002, NULL, NULL, SDO_ELEM_INFO_ARRAY(1, 2, 1), SDO_ORDINATE_ARRAY( 8, 4, 12, 4))
Format
SDO_NET.GET_LINK_TABLE_NAME(
network IN VARCHAR2
) RETURN VARCHAR2;
Description
Returns the name of the link table for a network.
Parameters
Network name.
Usage Notes
This function returns the value of the LINK_TABLE_NAME column for the network in the USER_SDO_NETWORK_METADATA view (see Table 5-9 in Section 5.10.1).