What's New in the Topology and Network Data Models?

This section describes new and changed features of the Oracle Spatial topology and network data models for the current release.

New SDO_TOPO_MAP Subprograms

The SDO_TOPO_MAP package (described in Chapter 4) contains the following new subprograms and major changes to existing subprograms:

Additional Topology Operators

Support is provided for topology operators in addition to SDO_ANYINTERACT, as explained in Section 1.8.1.

New GET_TGL_OBJECTS Member Function

The SDO_TOPO_GEOMETRY type has a member function GET_TGL_OBJECTS, which you can use to return the SDO_TOPO_OBJECT_ARRAY object for a topology geometry object in a geometry layer with a hierarchy level greater than 0 (zero) in a topology with a topology geometry layer hierarchy. For more information, see Section 1.6.4.

Collection Layers

A collection layer is a topology geometry layer that can contain topological elements of different topology geometry types. For example, using the sample CITY_DATA topology, you could create a collection layer to contain specific land parcel, city street, and traffic sign elements.

Collection layers are explained in Section 1.3.2.

Features Built from Topological Elements in Parent Layers

In a topology with a topology geometry layer hierarchy, within each level above level 0, each layer can now contain features built from topological elements (faces, nodes, edges) in addition to (or instead of) features built from features at the next lower level. For example, a tracts layer can contain tracts built from block groups or tracts built from faces, or both. For more information, see Section 1.4. For information about SDO_TOPO_GEOMETRY constructor formats and options in dealing with topology geometry layer hierarchies, see Section 1.6.2.

New Format for Topology Operators and SDO_TOPO.RELATE Function

The topology operators now support an additional format: a topology geometry object (type SDO_TOPO_GEOMETRY) as the first parameter and a topology object array (type SDO_TOPO_OBJECT_ARRAY) as the second parameter. Topology operators are described in Section 1.8.1.

The format with a topology geometry object as the first parameter and a topology object array as the second parameter is also now supported for the SDO_TOPO.RELATE function, which is documented in Chapter 3.

Simplified Process for Exporting and Importing Topologies

The process for exporting a topology and importing the topology into a target database has been simplified. This process is explained in Section 1.9.

Two new procedures support the exporting and importing of topologies: SDO_TOPO.PREPARE_FOR_EXPORT and SDO_TOPO.INITIALIZE_AFTER_IMPORT. These procedures are documented in Chapter 3.

SDO_NET_MEM Package for Network Editing and Analysis

The network data model includes the new SDO_NET_MEM package, which enables you to use a network memory object to perform network editing and analysis. This PL/SQL package implements capabilities that have been available, and continue to be available, using the network data model Java application programming interface (API). For information about using SDO_NET_MEM subprograms and network memory objects, see Section 5.7 and Section 5.10.1. For reference information about the SDO_NET_MEM subprograms, see Chapter 7.

Bidirected Links

Within a directed network, any link can be bidirected (that is, able to be traversed either from the start node to the end node or from the end node to the start node) or unidirected (that is, able to be traversed only from the start node to the end node). To indicate whether a link is bidirected, the link table now contains a column named BIDIRECTED. (Link concepts are explained in Section 5.3, and the link table is explained in Section 5.8.2.)

Cost Computation by a PL/SQL Function

The NODE_COST_COLUMN and LINK_COST_COLUMN columns in the USER_SDO_NETWORK_METADATA and ALL_SDO_NETWORK_METADATA views can now specify a PL/SQL function to compute the cost value, instead of the name of the column that contains the cost value. (These views are explained in Section 5.9.1.)