Search Results ibc_validate_pvt




Overview

IBC_VALIDATE_PVT is a private PL/SQL package in the APPS schema that serves as the central validation engine for the Oracle iMarketing/IBC (Interactive Business Content) module in Oracle E-Business Suite. The package consolidates the referential integrity and data-type validation logic used throughout the content management subsystem, ensuring that caller-supplied identifiers, codes, and attributes conform to the expected formats before any database operation is performed. It is classified as a PVT (private) API, meaning it is intended for internal consumption by the IBC public and private APIs rather than as a supported entry point for customer extensions.

The package depends on the standard Oracle EBS API infrastructure, specifically FND_API and the SYS.STANDARD package, and is itself referenced by eleven sibling packages including IBC_ASSOCIATIONS_GRP, IBC_ASSOCIATION_TYPES_PVT, IBC_CITEM_ADMIN_GRP, IBC_CITEM_RUNTIME_PUB, IBC_CITEM_RUNTIME_PVT, IBC_CTYPE_PVT, IBC_CV_LABEL_GRP, IBC_DIRECTORY_NODE_GRP, IBC_LABELS_GRP, IBC_STYLESHEETS_GRP, and IBC_UTILITIES_GRP. This dependency pattern confirms its role as a shared, low-level service consumed across the IBC group and private API layers.

Key Procedures and Functions

The package exposes 33 documented procedures and functions, of which the following are named in the ETRM 12.2.2 metadata: ISAPPROVED, ISAPPROVEDITEM, ISBOOLEAN, ISDATE, ISNUMBER, ISVALIDASSOC, ISVALIDASSOCTYPE, ISVALIDATTRCODE, ISVALIDATTACHMENT, ISVALIDCITEM, ISVALIDCITEMVER, ISVALIDCITEMVERFORCITEM, ISVALIDLANGUAGE, ISVALIDCTYPE, ISVALIDDIRNODE, ISVALIDLOB, ISVALIDRESOURCE, ISVALIDUSER, ISVALIDSTATUS, and ISVALIDLABEL.

  • Primitive type checks — ISBOOLEAN, ISDATE, and ISNUMBER validate that an input value conforms to Oracle's expected boolean, date, and numeric representations. These are generic helpers used by higher-level validators to normalise and verify data before persistence.
  • Content item validators — ISVALIDCITEM, ISVALIDCITEMVER, and ISVALIDCITEMVERFORCITEM confirm the existence and validity of a content item, a specific content item version, and a content item version in relation to its parent content item. ISAPPROVEDITEM extends this to determine whether a content item is in an approved state.
  • Association validators — ISVALIDASSOC and ISVALIDASSOCTYPE verify that a content association and its association type exist and are usable.
  • Reference validators — ISVALIDCTYPE, ISVALIDDIRNODE, ISVALIDLOB, ISVALIDRESOURCE, ISVALIDATTACHMENT, ISVALIDLANGUAGE, and ISVALIDUSER validate content types, directory nodes, large objects, resources, attachments, language codes, and users respectively.
  • Attribute, status, and label validators — ISVALIDATTRCODE, ISVALIDSTATUS, and ISVALIDLABEL check attribute codes, workflow/approval statuses, and label definitions.

ISAPPROVED and ISAPPROVEDITEM are the two approval-oriented validators; all others follow the conventional "ISVALID..." naming pattern and return a boolean or raise an error through the standard FND_API error handling convention.

Tables Accessed

The package reads from a defined set of IBC and FND tables via APPS synonyms. FND_LANGUAGES and FND_USER support ISVALIDLANGUAGE and ISVALIDUSER; FND_LOBS supports ISVALIDLOB and ISVALIDATTACHMENT. The IBC tables form the core of its referential checks: IBC_CONTENT_ITEMS, IBC_CONTENT_TYPES_B, IBC_CITEM_VERSIONS_B, and IBC_CITEM_VERSIONS_TL support the content item and version validators; IBC_ASSOCIATIONS and IBC_ASSOCIATION_TYPES_B support the association validators; IBC_ATTRIBUTE_TYPES_B supports attribute code validation; IBC_DIRECTORY_NODES_B supports directory node validation; and IBC_LABELS_B supports label validation. These accesses are predominantly existence and status lookups rather than DML.

Usage Notes

IBC_VALIDATE_PVT is invoked internally by the eleven IBC packages listed above, and indirectly by IBC Forms-based administrative screens and any concurrent programs that manipulate interactive business content. Because it is a private API, Oracle does not guarantee its signature across releases; custom code requiring similar checks should prefer the public runtime APIs (for example IBC_CITEM_RUNTIME_PUB) or duplicate the necessary validation logic locally. When troubleshooting IBC content errors — such as invalid content item references, unsupported languages, or missing associations — developers should inspect the calling stack to determine which validator raised the exception, since the package's purpose is to fail fast before invalid data reaches the base tables.