Search Results dbms_xmldom




Overview

XDB.DBMS_XMLDOM is an Oracle-supplied PL/SQL package body owned by the XDB schema that implements the Document Object Model (DOM) interface for Oracle XML DB. In Oracle E-Business Suite 12.1.1 and 12.2.2, this package provides the programmatic foundation for constructing, navigating, and mutating in-memory XML document trees. ETRM documents the object type as PACKAGE BODY with status VALID, classified under the API category OTHER, reflecting its role as an infrastructure layer rather than an EBS business API. Applications do not call DBMS_XMLDOM directly to transact business data; instead, they rely on it indirectly whenever XML parsing, transformation, or generation occurs through the XDB stack. The package is referenced by 87 other database objects, confirming its position as a widely depended-upon utility within the EBS technical architecture.

Key Procedures and Functions

The ETRM documentation enumerates 243 procedures and functions within this package body. Representative entries include:

  • CREATEDOCUMENT — Instantiates a new DOM document node, serving as the root factory for building XML structures in memory.
  • HASFEATURE — Tests whether a DOM implementation supports a named feature, supporting capability discovery.
  • ISNULL — Determines whether a given node handle is null, a common guard before traversal.
  • GETNODENAME / GETNODEVALUE / SETNODEVALUE — Retrieve or assign the name and content of a node.
  • GETNODETYPE — Returns the DOM node type constant (element, attribute, text, and so on).
  • GETPARENTNODE, GETCHILDNODES, GETFIRSTCHILD, GETLASTCHILD — Navigational accessors for moving through the document hierarchy.
  • GETPREVIOUSSIBLING / GETNEXTSIBLING — Sibling traversal within a parent's child list.
  • GETATTRIBUTES / GETOWNERDOCUMENT / GETPREFIX / SETPREFIX — Attribute collection access, document ownership resolution, and namespace prefix management.
  • GETNODEFROMFRAGMENT — Resolves a document fragment reference to a concrete node.
  • INSERTBEFORE / REPLACECHILD — Structural mutation operations for inserting and substituting child nodes.

Tables Accessed

ETRM dependency analysis lists DBMS_LOB as the sole table-level reference, resolved through an APPS synonym. DBMS_LOB is not a data table but the built-in large object package; DBMS_XMLDOM depends on it for CLOB and BLOB manipulation when serializing or reading XML content that exceeds VARCHAR2 limits. No EBS application tables are accessed, which is consistent with the package's role as a generic DOM engine operating on in-memory structures and LOB-backed XML payloads.

Usage Notes

DBMS_XMLDOM is most commonly invoked indirectly. XML Publisher, Oracle Workflow, and various EBS integration components that manipulate XML documents through XMLType or the XDB API will cause this package body to execute. The package body invokes DBMS_XMLDOM_LIB, DBMS_XMLDOM_ICD, and DBMS_CLOBUTIL internally to bridge PL/SQL to the underlying C implementation of the DOM parser. Because the object is not referenced by any database object according to ETRM — only the reverse direction (87 dependents) is recorded — customizations should treat it as a stable Oracle-owned package rather than a customization point. Developers writing custom XML handling code in EBS forms, concurrent programs, or OAF controllers may call DBMS_XMLDOM directly, but should prefer higher-level XMLType methods where possible to avoid tight coupling to XDB internals. The package is not directly invoked through a specific EBS form or concurrent program registration; it executes transparently as part of the XML processing infrastructure.