Search Results dbms_assert




Overview

MDSYS.SDO_GCDR is a VALID package body owned by the MDSYS schema and shipped as part of the Oracle Spatial and Graph geocoding engine. In the Oracle E-Business Suite 12.1.1 and 12.2.2 environment, SDO_GCDR provides the server-side implementation of the geocoding and reverse geocoding services that convert street addresses into geographic coordinates (longitude/latitude) and convert coordinates back into normalized addresses. This capability underpins territory assignment, sales tax jurisdiction determination, shipping and logistics routing, and location-aware reporting used across EBS modules such as Order Management, Receivables, and the Trading Community Architecture (TCA). Because it resides in the MDSYS schema, it is registered as a database-level utility rather than an EBS application object, and the APPS schema reaches it through standard synonyms and direct schema-qualified references. The package body logic is classified in the ETRM catalog as OTHER, reflecting its role as an infrastructure geocoding API rather than a business-flow package. The searched term "dbms_assert" is relevant because SDO_GCDR depends directly on DBMS_ASSERT for input validation and SQL injection protection.

Key Procedures and Functions

The documented metadata lists 27 procedures and functions spanning three functional groups.

  • Validation functions/rows: VALIDATECOUNTRYROW, VALIDATEREGIONROW, VALIDATECITYROW, VALIDATELOCALITYDICTROW, VALIDATESTREETDICTROW, VALIDATESTREETTYPEROW, VALIDATEINLINESTREETTYPEROW, VALIDATESTREETPREFIXROW, VALIDATESTREETSUFFIXROW, VALIDATESECONDUNITROW, VALIDATEPOBOXROW, and VALIDATEPLACENAMEROW. Each validates a specific address component against the reference data dictionaries before geocoding proceeds, ensuring that country, region, city, locality, street type, prefix, suffix, and secondary unit tokens are recognized.
  • Configuration and dictionary management: CREATE_PROFILE_TABLES, which establishes the profile and lookup tables that the geocoder queries during matching operations.
  • Geocoding entry points: GEOCODE, GEOCODE_AS_GEOMETRY, GEOCODE_ADDR, GEOCODE_ALL, GEOCODE_ADDR_ALL, BATCH_GEOCODE, and REVERSE_GEOCODE. The GEOCODE family returns match results for single or complete addresses, with GEOCODE_AS_GEOMETRY returning an SDO_GEOMETRY object. The *_ALL variants return all candidate matches rather than the best match. BATCH_GEOCODE processes sets of addresses in bulk, and REVERSE_GEOCODE translates coordinates back into a normalized address.

Tables Accessed

The dependency information records that SDO_GCDR references MDSYS spatial types SDO_ADDR_ARRAY, SDO_GEOMETRY, SDO_GEO_ADDR, SDO_KEYWORDARRAY, SDO_ORDINATE_ARRAY, SDO_POINT_TYPE, and SDO_STRING_ARRAY, which carry address records, coordinate arrays, and geometry structures between caller and package. It depends on PUBLIC and SYS DBMS_ASSERT for validated SQL identifier handling, on DBMS_STANDARD and STANDARD, and on PLITBLM. Through APPS synonyms the package reaches DBMS_ASSERT and PLITBLM. The ETRM metadata records no application tables directly owned by the package; geocoding reference data is stored in MDSYS dictionary and profile tables created by CREATE_PROFILE_TABLES.

Usage Notes

SDO_GCDR is normally invoked directly from PL/SQL, typically by custom geocoding routines, concurrent programs that batch-geocode customer or supplier addresses, or database triggers that populate coordinate columns on address records. Because it is not referenced by other database objects in the documented dependency graph, it functions as a leaf utility called only at runtime. EBS forms are unlikely to call it directly; instead, integration is achieved through concurrent programs or custom APIs that pass an SDO_GEO_ADDR or address string and consume the returned SDO_GEOMETRY. DBMS_ASSERT is used internally to guard dynamically constructed SQL, so callers should always pass trusted, validated inputs.