Search Results fnd_xdfdictionary_pkg




Overview

FND_XDFDICTIONARY_PKG is an Oracle Application Object Library (FND) package owned by the APPS schema that manages the metadata dictionary used by Oracle E-Business Suite's extended data dictionary and "eXtended Data File/Dictionary" (XDF) utilities. In Oracle EBS 12.1.1 and 12.2.2, this package provides the programmatic interface for registering, maintaining, and removing the structural definitions of database schema objects—tables, columns, indexes, primary keys, foreign keys, sequences, and views—within the FND dictionary tables. These dictionary tables underpin EBS features that depend on accurate schema metadata, such as the AD (Applications DBA) utilities, the cloning and patching infrastructure, and design-time or runtime tools that must introspect application database objects.

The package is classified as an OTHER API, indicating it is used internally by Oracle rather than exposed as a documented public business API. Its status is VALID in both 12.1.1 and 12.2.2, and it is referenced only by itself, with no other APPS packages depending on it.

Key Procedures and Functions

The package exposes 39 documented procedures/functions, organized around upload (create/register), removal, and supporting utility operations:

  • Table and column maintenance: UPLOADTABLE registers a table definition; UPLOADCOLUMN registers standard columns; UPLOADHISTCOLUMN registers history (audit) columns associated with a table.
  • Index maintenance: UPLOADINDEX registers an index, and UPLOADINDEXCOLUMN registers the individual columns that make up that index. REMOVEINDEX deletes an index definition.
  • Primary key maintenance: UPLOADPRIMARYKEY registers a primary key constraint; UPLOADPRIMARYKEYCOLUMN registers its constituent columns; REMOVEPRIMARYKEY removes the primary key definition.
  • Foreign key maintenance: UPLOADFOREIGNKEY registers a foreign key constraint; UPLOADFOREIGNKEYCOLUMN registers its columns; REMOVEFOREIGNKEY removes the foreign key definition.
  • Sequence maintenance: UPLOADSEQUENCE registers a sequence definition; REMOVESEQUENCE removes it.
  • View maintenance: UPLOADVIEW registers a view; UPLOADVIEWCOLUMN registers its columns; REMOVEVIEW removes the view definition; VIEWTEXTLENGTH returns the text length of a view definition.
  • Removal utilities: REMOVECOLUMN and REMOVETABLE delete column and table dictionary entries respectively.

Together these routines provide a symmetric load/unload API: the UPLOAD* routines populate dictionary metadata, while the REMOVE* routines purge it. Parameter lists are not documented here and should not be assumed.

Tables Accessed

The package reads and writes the core FND dictionary tables (accessed through APPS synonyms): FND_APPLICATION (identifying the owning application), FND_COLUMNS and FND_COLUMNS_S (column definitions and their security/translation shadow), FND_INDEXES and FND_INDEXES_S (index definitions), FND_INDEX_COLUMNS (index membership), FND_PRIMARY_KEYS and FND_PRIMARY_KEYS_S (primary key definitions), FND_PRIMARY_KEY_COLUMNS (constituent columns), FND_FOREIGN_KEYS and FND_FOREIGN_KEYS_S (foreign key definitions), FND_FOREIGN_KEY_COLUMNS (constituent columns), FND_SEQUENCES (sequence definitions), FND_OBJECT_TABLESPACES (tablespace assignments for objects), and FND_HISTOGRAM_COLS (histogram/audit column tracking). These tables collectively form the persistent metadata repository the package maintains.

Usage Notes

FND_XDFDICTIONARY_PKG is invoked primarily by Oracle's internal dictionary maintenance processes rather than by end users or typical customizations. It is characteristically called during the generation and synchronization of the FND data dictionary, when schema objects are registered or deregistered as part of patching, installation, or schema-drift correction. Because the package is an OTHER-classified API with no dependent packages and no public documentation of parameter signatures, custom developers should exercise caution: direct invocation risks inconsistency between the FND dictionary tables and the physical database objects they describe. When used, it should be called from concurrent programs or controlled administrative scripts rather than interactive forms, and changes should be followed by dictionary validation. The package relies on SYS.STANDARD and operates as APPS, so execute privileges are governed by the standard APPS schema grants.