Skip navigation.
Downloads | Product Documentation | Support

Database Administration Guide

# Data Dictionary

This section describes the database objects for each component of WebLogic Portal. The information in this section is collectively known as the data dictionary.

# Information Provided

For each component of WebLogic Portal, the following information is provided:

- An entity-relationship diagram
- A detailed description of each database table, including:

  Table Name

  The predefined name for the Table.

  Table Description

  A detailed description of the contents and purpose for the table in WebLogic Portal database schema.

  Column Name

  The predefined name for the column.

  Data Type

  The predefined characteristics for the column.

Note: Data types vary slightly by DBMS. For instance, columns defined as BLOB data types in Oracle, DB2, and PointBase would be defined as TEXT columns in Microsoft SQL Server and Sybase.

  Null Value

  Indicates whether or not null values can be stored for the column.

  Column Description

  A detailed description of the contents and purpose for the column including Primary Key (PK-) and Foreign Key (FK-) designations.

Note: The term "hint" in the descriptions refers to available capabilities that are not supported in the default skeletons provided with the WebLogic Workshop Portal Extensions

# Portal Database Components Covered

This section includes information on the following subjects:

- Behavior Tracking Database Objects
- Commerce Services Database Objects
- Order and Discount Database Objects
- Personalization Database Objects
- Data Synchronization Database Objects
- WebLogic Portal Services Database Objects
- Portal Framework Database Objects

- WSRP (Web Services for Remote Portlets) Objects

- Content Management Database Objects
- Content Management Virtual Database Objects
- Localization Database Objects
- Tracked Anonymous User Database Objects
- Entitlement Reference Database Objects

Note: WebLogic Portal DDL Modules identifies the filenames and location of DDL (database definition language) files for each set of Portal database objects.

# Behavior Tracking Database Objects

To record how online visitors are interacting with your Web site, you can record event information to a database. These kinds of events are called behavior tracking events. Analytics Marketing systems can then analyze these events offline to evaluate visitor behavior and transactional data. You can use the knowledge gained from analysis to create and optimize personalization rules, set up product offers, and develop interactive marketing campaigns. This section describes the requirements and database objects needed to log event data for analytical use.

Three tables are provided for the behavior tracking data. The `BT_EVENT` table stores all event data. The `BT_EVENT_ACTION` table logs actions used by third-party vendors against the recorded event data, and the `BT_EVENT_TYPE` table references event types and categories in the `EVENT` table. Figure 8-1 shows an entity-relation diagram for the WebLogic Portal Behavior Tracking database objects.

Figure 8-1 Entity-Relation Diagram for the Behavior Tracking Database

### The BT_EVENT_TYPE Database Table

This table references event types and categories in the `BT_EVENT` table. This table is static.

Table 8-1 BT_EVENT_TYPE Table Metadata

Column Name | Data Type | Null Value | Description
--- | --- | --- | ---
`EVENT_TYPE` | `VARCHAR(30)` | `Not Null` | PK - A unique, system-generated number used as the record ID.
`EVENT_GROUP` | `VARCHAR(10)` | `Not Null` | The event category group associated with the event type.
`DESCRIPTION` | `VARCHAR(50)` | `Null` | A description of the `EVENT_TYPE`.

To record custom events, you must create an entry in this table. If a custom event does not have a record in this table, you cannot persist it to the `BT_``EVENT` table.

### The BT_EVENT Database Table

This table stores all behavior tracking event data.

Table 8-2 The BT EVENT Table Metadata

Column Name | Data Type | Null Value | Description
--- | --- | --- | ---
`EVENT_ID` | `NUMBER` | `Not Null` | PK - A unique, system-generated number used as the record ID.
`APPLICATION` | `VARCHAR (30`) | `Not Null` | The application that created the event.
`EVENT_TYPE` | `VARCHAR(30)` | `Not Null` | FK - Set to BT_EVENT_TYPE. A string identifier showing which event was fired.
`EVENT_DATE` | `DATE` | `Not Null` | The date and time of the event.
`WLS_SESSION_ID` | `VARCHAR(254)` | `Not Null` | A unique, WebLogic Server-generated number assigned to the session.
`XML_DEFINITION` | `CLOB` | `Null` | An XML document that contains the specific event information for each event type. It is stored as a `CLOB` (Character Large Object). See Table 8-3.
`USER_ID` | `VARCHAR(50)` | `Null` | The user ID associated with the session and event. If the user has not logged in this column is null.
ANONYMOUS_USER_ID | VARCHAR(128) | Null | The user ID of the anonymous user associated with the session and event, if applicable.

As shown in Table 8-2, the `BT_EVENT` table has six columns; each column corresponds to a specific event element. Five of the `BT_EVENT` table's columns contain data common to every event type. The `XML_DEFINITION` column contains all information from these five columns plus event data that is unique to each event type. An `XML` document is created specifically for each event type. The data elements corresponding to each event type are captured in the `XML_DEFINITION` column of the `EVENT` table. These elements are listed in Table 8-3.

Table 8-3 XML_DEFINITION Data Elements

Event | Data Element
--- | ---
AddToCartEvent | `application event-date event-type session-id user-id sku quantity unit-list-price currency application-name`
BuyEvent | `application event-date event-type session-id user-id sku quantity unit-price currency application-name order-line-id`
CampaignUserActivityEvent | `application event-date event-type session-id user-id campaign-id scenario-id`
ClickCampaignEvent | `application event-date event-type session-id user-id document-type document-id campaign-id scenario-id application-name placeholder-id`
ClickContentEvent | `application event-date event-type session-id user-id document-type document-id`
ClickProductEvent | `application event-date event-type session-id user-id document-type document-id sku category-id application-name`
DisplayCampaignEvent | `application event-date event-type session-id user-id document-type document-id campaign-id scenario-id application-name placeholder-id`
DisplayContentEvent | `application event-date event-type session-id user-id document-type document-id`
DisplayProductEvent | `application event-date event-type session-id user-id document-type document-id sku category-id application-name`
PurchaseCartEvent | `application event-date event-type session-id user-id total-price order-id currency application-name`
RemoveFromCartEvent | `application event-date event-type session-id user-id sku quantity unit-price currency application-name`
RuleEvent | `application event-date event-type session-id user-id ruleset-name rule-name`
SessionBeginEvent | `application event-date event-type session-id user-id`
SessionEndEvent | `application event-date event-type session-id user-id`
SessionLoginEvent | `application event-date event-type session-id user-id`
UserRegistrationEvent | `application event-date event-type session-id user-id`

### The BT_EVENT_ACTION Database Table

This table logs actions used by third-party vendors against the recorded event data.

Table 8-4 BT_EVENT_ACTION Table Metadata

Column Name | Data Type | Null Value | Description
--- | --- | --- | ---
`EVENT_ACTION` | `VARCHAR(30)` | `Not Null` | The event action taken such as `BEGIN EXPORT` or `END EXPORT`. This field is one of the table's primary keys.
`ACTION_DATE` | `DATE` | `Not Null` | The date and time of the event. This field is one of the table's primary keys.
`EVENT_ID` | `NUMBER` | `Null` | The `ID` of the event that corresponds with the event action taken.

# Commerce Services Database Objects

The metadata for items in the Commerce Services Product Catalog are based on the Dublin Core Metadata Open Standard. This standard offers a number of advantages for a Web-based catalog. For more information about the Dublin Core Metadata Open Standard, please see http://dublincore.org.

Figure 8-2 and Figure 8-3 show the Entity-Relation for the WebLogic Portal Commerce Services core Product Catalog database objects.

Figure 8-2 Entity-Relation Diagram for the Core Product Catalog Tables

Figure 8-3 Entity-Relation Diagram for the Core Product Catalog Tables - continued

## Product Catalog Database Tables

The following tables compose the product catalog database.

- The CATALOG_ENTITY Database Table
- The CATALOG_PROPERTY_KEY Database Table
- The CATALOG_PROPERTY_VALUE Database Table
- The WLCS_CATEGORY Database Table
- The WLCS_PRODUCT Database Table
- The WLCS_PRODUCT_CATEGORY Database Table
- The WLCS_PRODUCT_KEYWORD Database Table

### The CATALOG_ENTITY Database Table

Some objects in WebLogic Portal implement a Java interface called ConfigurableEntity. Any ConfigurableEntity within the system has an entry in this table.

Table 8-5 CATALOG_ENTITY Table Metadata

Column Name | Data Type | Null Value | Description
--- | --- | --- | ---
`ENTITY_ID` | `NUMBER(15)` | `Not Null` | PK—A unique, system-generated number used as a record identifier.
`ENTITY_NAME` | `VARCHAR(200)` | `Not Null` | The name of the entity.
`ENTITY_TYPE` | `VARCHAR(100)` | `Not Null` | The type of entity; for example, User, Group, and so on.
`CREATION_DATE` | `DATE` | `Not Null` | The time and date the record was created.
`MODIFIED_DATE` | `DATE` | `Not Null` | The time and date the record was last modified.

### The CATALOG_PROPERTY_KEY Database Table

This table contains scoped property names that are associated with configurable entities. Any property assigned to a ConfigurableEntity has a unique `PROPERTY_ID`. This identifier and associated information is stored here.

Table 8-6 CATALOG_PROPERTY_KEY Table Metadata

Column Name | Data Type | Null Value | Description
--- | --- | --- | ---
`PROPERTY_KEY_ID` | `NUMBER(15)` | `Not Null` | PK—A unique, system-generated number used as a record identifier.
`PROPERTY_NAME` | `VARCHAR(100)` | `Not Null` | The name of the property (formerly `PROPERTY_NAME` from the `WLCS_PROP_ID` table).
`CREATION_DATE` | `DATE` | `Not Null` | The time and date the record was created.
`MODIFIED_DATE` | `DATE` | `Not Null` | The time and date the record was last modified.
`PROPERTY_SET_NAME` | `VARCHAR(100)` | `Null` | The name of the property set (formerly the `SCOPE_NAME` from `WLCS_PROP_ID`).
`PROPERTY_SET_TYPE` | `VARCHAR(100)` | `Null` | The type of property set (for example, `USER`)

### The CATALOG_PROPERTY_VALUE Database Table

This table contains boolean, timestamp, float, integer, text, and user-defined (object) property values that are associated with configurable entities.

Table 8-7 CATALOG_PROPERTY_VALUE Table Metadata

Column Name | Data Type | Null Value | Description
--- | --- | --- | ---
`PROPERTY_VALUE_ID` | `NUMBER(15)` | `Not Null` | PK—A unique, system-generated number used as a record identifier.
`PROPERTY_KEY_ID` | `NUMBER(15)` | `Not Null` | FK—A system-generated value and foreign key to the `PROPERTY_KEY` column.
`ENTITY_ID` | `NUMBER(15)` | `Not Null` | FK—A system-generated value and foreign key to the `ENTITY` column.
`PROPERTY_TYPE` | `NUMBER(1)` | `Not Null` | Valid entries are: 0=Boolean, 1=Integer, 2=Float, 3=Text, 4=Date and Time, 5=User-Defined (BLOB).
`CREATION_DATE` | `DATE` | `Not Null` | The time and date the record was created.
`MODIFIED_DATE` | `DATE` | `Not Null` | The time and date the record was last modified.
`BOOLEAN_VALUE` | `NUMBER(1)` | `Null` | The value for each boolean property identifier.
`DATETIME_VALUE` | `DATE` | `Null` | The value for each date and time property identifier.
`DOUBLE_VALUE` | `NUMBER` | `Null` | The value associated with each float property identifier.
`LONG_VALUE` | `NUMBER(20)` | `Null` | The value associated with the integer property.
`TEXT_VALUE` | `VARCHAR(254)` | `Null` | The value associated with the text property.
`BLOB_VALUE` | `BLOB` | `Null` | The value associated with the user-defined property.

### The WLCS_CATEGORY Database Table

This table contains categories in the Commerce database. The descriptions shown in the table reflect the "recommended best practice" for the use of that field by the Dublin Core standard.

Table 8-8 WLCS_CATEGORY Table Metadata

Column Name | Data Type | Null Value | Descriptions
--- | --- | --- | ---
`CATEGORY_ID` | `VARCHAR(20)` | `Not Null` | PK - A unique identifier for a category; the primary key for this table. This field cannot be `NULL`. All other fields in the `WLCS_CATEGORY` table can be `NULL`.
`PARENT_ID` | `VARCHAR(20)` | `Null` | The value of the `CATEGORY_ID` of the parent category in the hierarchy of categories that comprise your product catalog. If this is a top-level user-defined category, the `PARENT_ID` is `com.beasys.ROOT.`
`NAME` | `VARCHAR(50)` | `Null` | The name of the category in the product catalog.
`SOURCE` | `VARCHAR(30)` | `Null` | A reference to a category from which the present category is derived.
`LANG` | `VARCHAR(30)` | `Null` | A language of the intellectual content of the category. The recommended best practice for the values of the language element is defined by RFC 1766, which includes a two-letter Language Code (taken from the ISO 639 standard), such as: `en` for English; `fr` for French, or `de` for German. The language code can, optionally, be followed by a two-letter Country Code (taken from the ISO 3166 standard [ISO3166]). For example, `en-uk` for English used in the United Kingdom.
`RELATION` | `VARCHAR(30)` | `Null` | A reference to a related category.
`COVERAGE` | `VARCHAR(30)` | `Null` | The extent or scope of the content of the category.
`RIGHTS` | `VARCHAR(30)` | `Null` | Information about rights held in and over the category.
`CREATOR` | `VARCHAR(50)` | `Null` | An entity primarily responsible for making the content of the category.
`PUBLISHER` | `VARCHAR(50)` | `Null` | An entity responsible for making the category available.
`CONTRIBUTOR` | `VARCHAR(50)` | `Null` | An entity responsible for making contributions to the content of the category.
`CREATION_DATE` | `DATE` | `Null` | A date associated with an event in the life cycle of the category. Recommended best practice for encoding the date value is defined in a profile of ISO 8601 and follows the `YYYY-MM-DD` format.
`MODIFIED_DATE` | `DATE` | `Null` | A date associated with an event in the life cycle of the category, such as an update or insert by the DBLoader program that is provided with the Commerce Services. The recommended best practice for encoding the date value is defined in a profile of ISO 8601 and follows the `YYYY-MM-DD` format.
`SMALL_IMG_TYPE` | `NUMBER(3)` | `Null` | A type field of your own design that relates to the graphic. For example, you can implement your own numbering scheme, such as: 0 = display a low resolution graphic for users with low bandwidth. 1 = display a high resolution graphic for users with high bandwidth.
`SMALL_IMG_LANG` | `VARCHAR(30)` | `Null` | The language of the thumbnail image for the category. For related information, see the description of the `LANG` column.
`SMALL_IMG_NAME` | `VARCHAR(50)` | `Null` | The name of the thumbnail image for the category.
`SMALL_IMG_URL` | `VARCHAR(254)` | `Null` | The URL of the thumbnail image for the category.
`SMALL_IMG_ALT_TEXT` | `VARCHAR(254)` | `Null` | The alternate text to display when users have their cursor over the thumbnail image for the category, or if they have disabled the display of graphics in their browser settings.
`LARGE_IMG_TYPE` | `NUMBER(3)` | `Null` | A type field of your own design that relates to the graphic. For example, you can implement your own numbering scheme, such as: 0 = display a low resolution graphic for users with low bandwidth. 1 = display a high resolution graphic for users with high bandwidth.
`LARGE_IMG_LANG` | `VARCHAR(30)` | `Null` | The language of the full-size image for the category. For related information, see the description of the `LANG` column.
`LARGE_IMG_NAME` | `VARCHAR(50)` | `Null` | The name of the full-size image for the category.
`LARGE_IMG_URL` | `VARCHAR(254)` | `Null` | The URL of the full-size image for the category.
`LARGE_IMG_ALT_TEXT` | `VARCHAR(254)` | `Null` | The alternate text to display when users have their cursor over the full-size image for the category, or if they have disabled the display of graphics in their browser settings.
`DISPLAY_JSP_URL` | `VARCHAR(254)` | `Null` | The URL to the JSP used to display the category. For example: `/commerce/catalog/includes/ category.jsp`
`SHORT_DESC` | `VARCHAR(50)` | `Null` | A short description of the content of the category.
`LONG_DESC` | `VARCHAR(254)` | `Null` | A long description of the content of the category.

### The WLCS_PRODUCT Database Table

This table contains item records in the Commerce database.

Table 8-9 WLCS_PRODUCT Table Metadata

Column Name | Data Type | Null Value | Description
--- | --- | --- | ---
`SKU` | `VARCHAR(40)` | `Not Null` | PK—A unique identifier (the "Stock Keeping Unit," or SKU) for a product item. This field is the table's primary key and cannot be `NULL`. All other fields in the `WLCS_PRODUCT` table can be `NULL`.
`IN_STOCK` | `VARCHAR(1)` | `Null` | A flag to indicate whether the product item is in stock. 0 equates to false, 1 equates to true.
`VISIBLE` | `VARCHAR(1)` | `Null` | Indicates whether the item should be displayed to the user. Enter 1 if visible or 0 if not visible. If not specified in the database, the default is 1.
`TAX_CODE` | `VARCHAR(10)` | `Null` | The code used by the TAXWARE system to identify the specific tax category to which this item belongs.
`SHIPPING_CODE` | `VARCHAR(10)` | `Null` | The code used by the shipping company for this item.
`NAME` | `VARCHAR(100)` | `Null` | A name given to the product item.
`SOURCE` | `VARCHAR(30)` | `Null` | A reference to another product item from which the present item is derived.
`LANG` | `VARCHAR(30)` | `Null` | A language of the intellectual content of the category. The recommended best practice for the values of the language element is defined by RFC 1766, which includes a two-letter Language Code (taken from the ISO 639 standard), such as: `en` for English; `fr` for French, or `de` for German. The language code can, optionally, be followed by a two-letter Country Code (taken from the ISO 3166 standard [ISO3166]). For example, `en-uk` for English used in the United Kingdom.
`RELATION` | `VARCHAR(30)` | `Null` | A reference to a related product item.
`COVERAGE` | `VARCHAR(30)` | `Null` | The extent or scope of the content of the product item.
`RIGHTS` | `VARCHAR(30)` | `Null` | Information about rights held in and over the item.
`FORMAT` | `VARCHAR(30)` | `Null` | The physical or digital manifestation of the item.
`TYPE` | `VARCHAR(30)` | `Null` | The nature or genre of the content of the item.
`MSRP_CURRENCY` | `VARCHAR(30)` | `Null` | The currency type of the manufacturer's recommended price.
`MSRP_AMOUNT` | `NUMBER(16,4)` | `Null` | The manufacturer's recommended price.
`PRICE_CURRENCY` | `VARCHAR(30)` | `Null` | The currency type of our catalog price for this item.
`PRICE_AMOUNT` | `NUMBER(16,4)` | `Null` | Our current price for this item in the catalog.
`ESTIMATE_SHIP_TIME` | `VARCHAR(100)` | `Null` | Inventory: number of days/weeks before the item can be shipped.
`SPECIAL_NOTES` | `VARCHAR(100)` | `Null` | Inventory related message to display with the item.
`CREATOR` | `VARCHAR(50)` | `Null` | An entity primarily responsible for making the content of the product item.
`PUBLISHER` | `VARCHAR(50)` | `Null` | An entity responsible for making the product item available.
`CONTRIBUTOR` | `VARCHAR(50)` | `Null` | An entity responsible for making contributions to the content of the product item.
`CREATION_DATE` | `DATE` | `Null` | A date associated with an event in the life cycle of the product item. Recommended best practice for encoding the date value is defined in a profile of ISO 8601 and follows the `YYYY-MM-DD` format.
`MODIFIED_DATE` | `DATE` | `Null` | A date associated with an event in the life cycle of the item, such as an update or insert by the DBLoader program that is provided with the Commerce Services. The recommended best practice for encoding the date value is defined in a profile of ISO 8601 and follows the `YYYY-MM-DD` format.
`SMALL_IMG_TYPE` | `NUMBER(3)` | `Null` | A type field of your own design that relates to the graphic. For example, you can implement your own numbering scheme, such as: 0 = display a low resolution graphic for users with low bandwidth. 1 = display a high resolution graphic for users with high bandwidth.
`SMALL_IMG_LANG` | `VARCHAR(30)` | `Null` | The language of the thumbnail image for the item. For related information, see the description of the `LANG` column.
`SMALL_IMG_NAME` | `VARCHAR(50)` | `Null` | The name of the thumbnail image for the item.
`SMALL_IMG_URL` | `VARCHAR(254)` | `Null` | The URL of the thumbnail image for the category.
`SMALL_IMG_ALT_TEXT` | `VARCHAR(254)` | `Null` | The alternate text to display when the user has their cursor over the thumbnail image for the item, or if they have disabled the display of graphics in their browser settings.
`LARGE_IMG_TYPE` | `NUMBER(3)` | `Null` | A type field of your own design that relates to the graphic. For example, you can implement your own numbering scheme, such as: 0 = display a low resolution graphic for users with low bandwidth. 1 = display a high resolution graphic for users with high bandwidth.
`LARGE_IMG_LANG` | `VARCHAR(30)` | `Null` | The language of the full-size image for the item. For related information, see the description of the `LANG` column.
`LARGE_IMG_NAME` | `VARCHAR(50)` | `Null` | The name of the full-size image for the item.
`LARGE_IMG_URL` | `VARCHAR(254)` | `Null` | The URL of the full-size image for the item.
`LARGE_IMG_ALT_TEXT` | `VARCHAR(254)` | `Null` | The alternate text to display when the user has their cursor over the full-size image of the item, or if they have disabled the display of graphics in their browser settings.
`SUM_DISPLAY_JSP_URL` | `VARCHAR(254)` | `Null` | The URL to the JSP used to display the item in summary form. For example: `/commerce/catalog/includes/ itemsummary.jsp`
`DET_DISPLAY_JSP_URL` | `VARCHAR(254)` | `Null` | The URL to the JSP used to display the item in detailed form. For example: `/commerce/catalog/includes/ itemdetails.jsp`
`SHORT_DESC` | `VARCHAR(254)` | `Null` | A short description of the content of the product item.
`LONG_DESC` | `VARCHAR(2000)` | `Null` | A long description of the content of the product item.

### The WLCS_PRODUCT_CATEGORY Database Table

This table contains information that shows which product items are associated with product categories.

Table 8-10 WLCS_PRODUCT_CATEGORY Table Metadata

Column Name | Data Type | Null Value | Description
--- | --- | --- | ---
`SKU` | `VARCHAR(40)` | `Not Null` | PK—A unique identifier (the "Stock Keeping Unit," or SKU) for an item. FK to WLCS_PRODUCT.
`CATEGORY_ID` | `VARCHAR(20)` | `Not Null` | PK—A unique identifier for a category. FK to WLCS_CATEGORY.

### The WLCS_PRODUCT_KEYWORD Database Table

This table contains keywords that you associate with each product item. The keywords enable rapid retrieval of item records using the search functions on the Web site's pages or Administration pages.

Table 8-11 WLCS_PRODUCT_KEYWORD Table Metadata

Column Name | Data Type | Null Value | Description
--- | --- | --- | ---
`KEYWORD` | `VARCHAR(30)` | `Not Null` | PK - Contains a keyword that you associate with the product item assigned to the unique SKU. Recommendation—for a given item, select a value from a controlled vocabulary or formal classification scheme implemented in your company.
`SKU` | `VARCHAR(40)` | `Not Null` | PK - A unique identifier (the "Stock Keeping Unit," or SKU) for an item. FK to WLCS_PRODUCT.

# Order and Discount Database Objects

Figure 8-4 and Figure 8-5 show the Entity-Relation diagram for the WebLogic Portal order and discount objects.

Figure 8-4 Entity-Relation Diagram for the Commerce Tables

Figure 8-5 Entity-Relation Diagram for the Commerce Tables - continued

## The Order Processing Data Dictionary Tables

The Commerce Services order management system has the following tables:

- The DISCOUNT Database Table
- The DISCOUNT_ASSOCIATION Database Table
- The ORDER_ADJUSTMENT Database Table
- The ORDER_LINE_ADJUSTMENT Database Table
- The WLCS_CREDIT_CARD Database Table
- The WLCS_CUSTOMER Database Table
- The WLCS_ORDER Database Table
- The WLCS_ORDER_LINE Database Table
- The WLCS_SAVED_ITEM_LIST Database Table
- The WLCS_SECURITY Database Table
- The WLCS_SHIPPING_ADDRESS Database Table
- The WLCS_SHIPPING_METHOD Database Table
- The WLCS_TRANSACTION Database Table
- The WLCS_TRANSACTION_ENTRY Database Table

### The DISCOUNT Database Table

This table contains one or more discount records for every `DISCOUNT_SET` record.

Table 8-12 DISCOUNT

Column Name | Data Type | Null Value | Description
--- | --- | --- | ---
`DISCOUNT_ID` | `NUMBER(15)` | `Not Null` | PK—A unique, system-generated number to use as the record ID.
`APPLICATION_NAME` | `VARCHAR(100)` | `Not Null` | FK—Foreign key to the `DISCOUNT_SET` table.
`DISCOUNT_TYPE` | `VARCHAR(10)` | `Not Null` | The type of discount offered. It is used for an order or for an order line item.
`DISCOUNT_NAME` | `VARCHAR(254)` | `Not Null` | The name of the discount.
`IS_GLOBAL` | `NUMBER(1)` | `Not Null` | A flag showing whether or not this discount can be used globally.
`PRIORITY` | `NUMBER(3)` | `Not Null` | The level of priority this discount has over other discounts.
`ALLOWED_USERS` | `NUMBER(10)` | `Not Null` | The number of times the discount can be used.
`MODIFIER` | `VARCHAR(254)` | `Not Null` | Describes the actual discount to be applied. This is XML.
`DISCOUNT_RULE` | `CLOB` | `Not Null` | The method used to select items for discount. This is XML.
`START_DATE` | `DATE` | `Not Null` | The starting date and time of the discount
`END_DATE` | `DATE` | `Not Null` | The ending date and time of the discount.
`IS_ACTIVE` | `NUMBER(1)` | `Not Null` | A flag that determines whether the discount is active or not. Active=1, Not active=0
`DESCRIPTION` | `VARCHAR(254)` | Null | The discount description.
`DISPLAY_DESCRIPTION` | `VARCHAR(254)` | Null | The discount description used for display purposes only.

### The DISCOUNT_ASSOCIATION Database Table

This table contains information that associates each customer with a discount and maintains information regarding the times the customer has used each discount.

Table 8-13 DISCOUNT_ASSOCIATION

Column Name | Data Type | Null Value | Description
--- | --- | --- | ---
`DISCOUNT_ASSOCIATION_ID` | `NUMBER(15)` | `Not Null` | PK—A unique, system-generated number to use as the record ID.
`CUSTOMER_ID` | `VARCHAR(20)` | `Not Null` | FK—Foreign key to the `DISCOUNT_SET` table.
`DISCOUNT_ID` | `NUMBER(15)` | `Not Null` | FK—Foreign key to the `DISCOUNT_SET` table.
`USE_COUNT` | `NUMBER(10)` | `Not Null` | The number of times the discount has been used.
`DISPLAY_DESCRIPTION` | `VARCHAR(254)` | Null | The discount description used for display purposes only.

### The ORDER_ADJUSTMENT Database Table

This table contains information about a discount taken at the order level (for example, $20.00 off any order between 1/1/02 and 1/31/02).

Table 8-14 ORDER_ADJUSTMENT

Column Name | Data Type | Null Value | Description
--- | --- | --- | ---
`ORDER_ADJUSTMENT_ID` | `NUMBER(15)` | `Not Null` | PK—A unique, system-generated number to use as the record ID.
`ORDER_ID` | `VARCHAR(20)` | `Not Null` | FK—Foreign key to the `DISCOUNT_SET` table.
`ADJUSTMENT_TYPE` | `VARCHAR(20)` | `Null` | The type of adjustment being made to the order line item (for example, order line discount, shipping discount, and so on).
`COMPUTATION` | `VARCHAR(254)` | `Not Null` | The number of times the discount has been used.
`ADJUSTMENT_AMOUNT` | `NUMBER(16,4)` | `Not Null` | The discount description used for display purposes only.
`DISCOUNT_ID` | `NUMBER(15)` | `Null` | FK—Foreign key to the `DISCOUNT` table.
`DISPLAY_DESCRIPTION` | `VARCHAR(254)` | `Null` | The description used for display purposes only. Depending on the nature of the discount, the `DISPLAY_DESCRIPTION` is generated from either the Discount service or Campaign service.
`CREATION_DATE` | `DATE` | `Not Null` | The date and time the order adjustment was created.
`MODIFIED_DATE` | `DATE` | `Null` | The date and time the order adjustment record was last modified.

### The ORDER_LINE_ADJUSTMENT Database Table

This table contains information about a discount taken at the order line item level (for example, 10% off SKU "Power Drill").

Table 8-15 ORDER_LINE_ADJUSTMENT Table Metadata

Column Name | Data Type | Null Value | Description
--- | --- | --- | ---
`ORDER_LINE_ ADJUSTMENT_ID` | `NUMBER(15)` | `Not Null` | PK—A unique, system-generated number to use as the record `ID`.
`ORDER_LINE_ID` | `NUMBER(15)` | `Not Null` | A unique identifier for each line in a customer's shopping cart. This field is the table's primary key and cannot be `NULL`. All other fields in the `WLCS_ORDERLINE` table can be `NULL`.
`ADJUSTMENT_TYPE` | `VARCHAR(20)` | `Null` | The type of adjustment being made to the order line item (for example, order line discount, shipping discount, and so on).
`ADJUSTMENT_AMOUNT` | `NUMBER(16,4)` | `Not Null` | The dollar amount of the adjustment.
`ADJUSTMENT_QUANTITY` | `NUMBER(16,4)` | `Not Null` | The quantity amount for the adjustment.
`ADJUSTED_UNIT_PRICE` | `NUMBER(16,4)` | `Not Null` | The adjusted unit price of the specific line item.
`COMPUTATION` | `VARCHAR(254)` | `Not Null` | The computation for determining `ADJUSTED_UNIT_PRICE`.
`CREATION_DATE` | `DATE` | `Not Null` | The date and time the adjustment record was created.
`MODIFIED_DATE` | `DATE` | `Null` | The date and time the adjustment record was last modified.
`DISCOUNT_ID` | `NUMBER(15)` | `Null` | FK—a foreign key to the discount used from the `DISCOUNT` table.
`DISPLAY_DESCRIPTION` | `VARCHAR(254)` | `Null` | The adjustment description used for display purposes.

### The WLCS_CREDIT_CARD Database Table

This table contains information related to a customer's credit card(s) in the order processing database.

Table 8-16 WLCS_CREDIT_CARD Table Metadata

Column Name | Data Type | Null Value | Description and Recommendations
--- | --- | --- | ---
`CREDIT_CARD_ID` | `NUMBER(15)` | `Not Null` | A unique identifier for the credit card. This field is the table's primary key and cannot be `NULL`. All other fields in the `WLCS_CREDIT_CARD` table can be `NULL`.
`CC_NUMBER` | `VARCHAR(200)` | Null | The customer's credit card number. This is encrypted if `is.encryption. enable` is set to `true` in the `weblogiccommerce. properties` file.
`CC_TYPE` | `VARCHAR(20)` | Null | The customer's credit card type, such as VISA or MasterCard.
`CC_EXP_DATE` | `DATE` | Null | The expiration date on the customer's credit card.
`CC_NAME` | `VARCHAR(50)` | Null | The credit card holder's name.
`CC_DISPLAY_NUMBER` | `VARCHAR(20)` | Null | The version of the credit card number that is displayed (all Xs except last 4-digits).
`CC_COMPANY` | `VARCHAR(50)` | Null | The name of the credit card company.
`BILLING_GEOCODE` | `VARCHAR(2)` | Null | The code used by the TAXWARE system to identify taxes for the order based on jurisdiction.
`BILLING_STREET1` | `VARCHAR(30)` | Null | The first line in the customer's billing address.
`BILLING_STREET2` | `VARCHAR(30)` | Null | The second line in the customer's billing address.
`BILLING_CITY` | `VARCHAR(30)` | Null | The city in the customer's billing address.
`BILLING_STATE` | `VARCHAR(40)` | Null | The state in the customer's billing address.
`BILLING_COUNTRY` | `VARCHAR(40)` | Null | The country in the customer's billing address.
`BILLING_POBOX` | `VARCHAR(30)` | Null | The post office box in the customer's billing address.
`BILLING_COUNTY` | `VARCHAR(50)` | Null | The county in the customer's billing address.
`BILLING_POSTAL_CODE` | `VARCHAR(10)` | Null | The postal (ZIP) code in the customer's billing address.
`BILLING_POSTAL_CODE_ TYPE` | `VARCHAR(10)` | Null | Format or type of postal code, generally determined by country (such as ZIP code in the United States).
`CUSTOMER_ID` | `VARCHAR(20)` | Null | A unique identifier for the customer.
`MAP_KEY` | `VARCHAR(60)` | Null | Key that maps multiple credit cards with a single customer.

### The WLCS_CUSTOMER Database Table

This table contains information about the customer in the order processing database.

Table 8-17 WLCS_CUSTOMER Table Metadata

Column Name | Data Type | Null Value | Description
--- | --- | --- | ---
`CUSTOMER_ID` | `VARCHAR(20)` | Not Null | A unique identifier for the customer. This field is the table's primary key and cannot be `NULL`. All other fields in the `WLCS_CUSTOMER` table can be `NULL`.
`CUSTOMER_TYPE` | `VARCHAR(20)` | Null | A label for the customer (such as preferred, standard, or business).
`FIRST_NAME` | `VARCHAR(30)` | Null | The customer's first name.
`LAST_NAME` | `VARCHAR(30)` | Null | The customer's last name.
`MIDDLE_NAME` | `VARCHAR(30)` | Null | The customer's middle name.
`TITLE` | `VARCHAR(10)` | Null | The customer's preferred title, such as Mr., Mrs., or Ms.
`SUFFIX` | `VARCHAR(10)` | Null | The customer's preferred suffix, such as Jr. or Sr.
`EMAIL` | `VARCHAR(80)` | Null | The customer's e-mail address.
`HOME_PHONE` | `VARCHAR(15)` | Null | The customer's home phone number.
`BUSINESS_PHONE` | `VARCHAR(20)` | Null | The customer's business phone number.
`FAX` | `VARCHAR(15)` | Null | The customer's fax number.
`MAILING_GEOCODE` | `VARCHAR(2)` | Null | The code used by the TAXWARE system to identify taxes for the order based on jurisdiction.
`MAILING_STREET1` | `VARCHAR(30)` | Null | The first line in the customer's street address.
`MAILING_STREET2` | `VARCHAR(30)` | Null | The second line in the customer's street address.
`MAILING_CITY` | `VARCHAR(30)` | Null | The city in the customer's address.
`MAILING_STATE` | `VARCHAR(40)` | Null | The state in the customer's address.
`MAILING_COUNTRY` | `VARCHAR(40)` | Null | The country in the customer's address.
`MAILING_POBOX` | `VARCHAR(30)` | Null | The post office box in the customer's address.
`MAILING_COUNTY` | `VARCHAR(50)` | Null | The county in the customer's address.
`MAILING_POSTAL_CODE` | `VARCHAR(10)` | Null | The postal (ZIP) code in the customer's address.
`MAILING_POSTAL_CODE_ TYPE` | `VARCHAR(10)` | Null | Format or type of postal code, generally determined by country (such as ZIP code in the United States).

### The WLCS_ORDER Database Table

This table contains information about a customer's specific order in the order processing database. The Commerce Services product does not populate the `SHIPPING_AMOUNT`, `SHIPPING_CURRENCY`, `PRICE_AMOUNT`, or `PRICE_CURRENCY` columns.

Table 8-18 WLCS_ORDER Table Metadata

Column Name | Data Type | Null Value | Description
--- | --- | --- | ---
`ORDER_ID` | `VARCHAR(20)` | `Not` Null | PK—A unique identifier for the order. This field is the table's primary key and cannot be `NULL`. All other fields in the `WLCS_ORDER` table can be `NULL`.
`CUSTOMER_ID` | `VARCHAR(20)` | Null | A unique identifier for the customer.
`TRANSACTION_ID` | `VARCHAR(25)` | Null | A unique identifier for the transaction.
`STATUS` | `VARCHAR(20)` | Null | The status of the order.
`ORDER_DATE` | `DATE` | Null | The date the order was placed.
`SHIPPING_METHOD` | `VARCHAR(40)` | Null | The method by which the order is to be shipped.
`SHIPPING_AMOUNT` | `NUMBER(16,4)` | Null | The shipping amount for the order.
`SHIPPING_CURRENCY` | `VARCHAR(10)` | Null | The currency associated with the shipping amount.
`PRICE_AMOUNT` | `NUMBER(16,4)` | Null | The price of the order.
`PRICE_CURRENCY` | `VARCHAR(10)` | Null | The currency associated with the price.
`SHIPPING_GEOGODE` | `VARCHAR(2)` | Null | The code used by the TAXWARE system to identify taxes for the order based on jurisdiction.
`SHIPPING_STREET1` | `VARCHAR(30)` | Null | The first line in the customer's shipping address.
`SHIPPING_STREET2` | `VARCHAR(30)` | Null | The second line in the customer's shipping address.
`SHIPPING_CITY` | `VARCHAR(30)` | Null | The city in the customer's shipping address.
`SHIPPING_STATE` | `VARCHAR(40)` | Null | The state in the customer's shipping address.
`SHIPPING_COUNTRY` | `VARCHAR(40)` | Null | The country in the customer's shipping address.
`SHIPPING_POBOX` | `VARCHAR(30)` | Null | The post office box in the customer's shipping address.
`SHIPPING_COUNTY` | `VARCHAR(50)` | Null | The county in the customer's shipping address.
`SHIPPING_POSTAL_CODE` | `VARCHAR(10)` | Null | The postal (ZIP) code in the customer's shipping address.
`SHIPPING_POSTAL_CODE_TYPE` | `VARCHAR(10)` | Null | Format or type of postal code, generally determined by country, such as ZIP code in the United States.
`SPECIAL_INSTRUCTIONS` | `VARCHAR(254)` | Null | Any special shipping instructions associated with the order.
`SPLITTING_PREFERENCE` | `VARCHAR(254)` | Null | The splitting preferences for the customer's order.
`ORDER_SUBTOTAL` | `NUMBER(16,4)` | Null | The sum of all the `TOTAL_LINE_AMOUNT` columns in the `WLCS_ORDER_LINE` table for that specific order.

### The WLCS_ORDER_LINE Database Table

This table contains information about each line of a customer's shopping cart in the order processing database.

Table 8-19 WLCS_ORDER_LINE Table Metadata

Column Name | Data Type | Null Value | Description
--- | --- | --- | ---
`ORDER_LINE_ID` | `NUMBER(15)` | Not Null | PK—A unique identifier for each line in a customer's shopping cart. This field is the table's primary key and cannot be `NULL`. All other fields in the `WLCS_ORDER_LINE` table can be `NULL`.
`QUANTITY` | `NUMBER(16,4)` | Null | The quantity of the item in the shopping cart.
`PRODUCT_ID` | `VARCHAR(40)` | Null | An identification number for the item in the shopping cart.
`TAX_AMOUNT` | `NUMBER(16,4)` | Null | The tax amount for the order.
`TAX_CURRENCY` | `VARCHAR(10)` | Null | The currency associated with the tax amount.
`SHIPPING_AMOUNT` | `NUMBER(16,4)` | Null | The shipping amount for the order.
`SHIPPING_CURRENCY` | `VARCHAR(10)` | Null | The currency associated with the shipping amount.
`UNIT_PRICE_AMOUNT` | `NUMBER(16,4)` | Null | The unit price amount for the item.
`UNIT_PRICE_CURRENCY` | `VARCHAR(10)` | Null | The currency associated with the unit price.
`MSRP_AMOUNT` | `NUMBER(16,4)` | Null | The MSRP amount for the item.
`MSRP_CURRENCY` | `VARCHAR(10)` | Null | The currency associated with the MSRP amount.
`DESCRIPTION` | `VARCHAR(254)` | Null | The name of the item that is part of the order.
`ORDER_ID` | `VARCHAR(20)` | Null | FK - A unique identifier for the order.
`TOTAL_LINE_AMOUNT` | `NUMBER(16,4)` | Null | The total discounted price for the line item. `UNIT_PRICE_AMOUNT` (less any discount) times the `QUANTITY`.

### The WLCS_SAVED_ITEM_LIST Database Table

This table contains information about the customer's saved shopping cart items in the order processing database.

Table 8-20 WLCS_SAVED_ITEM_LIST Table Metadata

Column Name | Data Type | Null Value | Description
--- | --- | --- | ---
`CUSTOMER_ID` | `VARCHAR(20)` | Not Null | PK—A unique identifier for the customer.
`SKU` | `VARCHAR(40)` | Not Null | PK—A unique identifier (the Stock Keeping Unit or SKU) for a product item.

### The WLCS_SECURITY Database Table

This table persists public and private keys for encryption and decryption purposes in the order processing database. This table is meant for internal use by the Commerce Services product.

Table 8-21 WLCS_SECURITY Table Metadata

Column Name | Data Type | Null Value | Description
--- | --- | --- | ---
`ID` | `NUMBER(5)` | Not Null | PK—A unique identifier for the key pair.
`PUBLIC_KEY` | `VARCHAR(2000)` | Null | The public key to use for encryption/decryption of credit cards.
`PRIVATE_KEY` | `VARCHAR(2000)` | Null | The private key to use for encryption/decryption of credit cards.

### The WLCS_SHIPPING_ADDRESS Database Table

This table contains information related to a customer's shipping address(es) in the order processing database.

Table 8-22 WLCS_SHIPPING_ADDRESS Table Metadata

Column Name | Data Type | Null Value | Description
--- | --- | --- | ---
`SHIPPING_ADDRESS_ID` | `NUMBER(15)` | Not Null | PK - A unique identifier for the shipping address.
`MAP_KEY` | `VARCHAR(60)` | Null | Key that maps multiple shipping addresses with a single customer.
`SHIPPING_GEOCODE` | `VARCHAR(2)` | Null | The code used by the TAXWARE system to identify taxes for the order based on jurisdiction.
`SHIPPING_STREET1` | `VARCHAR(30)` | Null | The first line in the customer's shipping address.
`SHIPPING_STREET2` | `VARCHAR(30)` | Null | The second line in the customer's shipping address.
`SHIPPING_CITY` | `VARCHAR(30)` | Null | The city in the customer's shipping address.
`SHIPPING_STATE` | `VARCHAR(40)` | Null | The state in the customer's shipping address.
`SHIPPING_COUNTRY` | `VARCHAR(40)` | Null | The country in the customer's shipping address.
`SHIPPING_POBOX` | `VARCHAR(30)` | Null | The post office box in the customer's shipping address.
`SHIPPING_COUNTY` | `VARCHAR(50)` | Null | The county in the customer's shipping address.
`SHIPPING_POSTAL_CODE` | `VARCHAR(10)` | Null | The postal (ZIP) code in the customer's shipping address.
`SHIPPING_POSTAL_CODE_TYPE` | `VARCHAR(10)` | Null | Format or type of postal code, generally determined by country, such as ZIP code in the United States.
`CUSTOMER_ID` | `VARCHAR(20)` | Null | A unique identifier for the customer.

### The WLCS_SHIPPING_METHOD Database Table

This table contains information about the shipping method in the order processing database.

Table 8-23 WLCS_SHIPPING_METHOD Table Metadata

Column Name | Data Type | Null Value | Description
--- | --- | --- | ---
`PK_IDENTIFIER` | `VARCHAR(20)` | Not Null | PK - A unique identifier for the shipping method.
`CARRIER` | `VARCHAR(40)` | Null | The carrier being used to ship the order, such as UPS or FedEx.
`METHOD` | `VARCHAR(40)` | Null | The method by which the order is to be shipped, such as Air, 2nd Day Air, or Parcel Post.
`AVERAGE_SHIPPING_TIME` | `NUMBER` | Null | The average number of days it will take the order to arrive.
`PRICE_VALUE` | `NUMBER(16,4)` | Null | The amount it will cost to ship the order.
`PRICE_CURRENCY` | `VARCHAR(10)` | Null | The currency associated with the `PRICE_VALUE` column, such as dollars, pounds, or lira.
`WEIGHT_LIMIT` | `NUMBER(16,4)` | Null | The weight limit for the shipment.
`RESTRICTIONS` | `VARCHAR(254)` | Null | Any restrictions associated with the shipment.
`DESCRIPTION` | `VARCHAR(254)` | Null | A description of the shipping method, such as FedEx Overnight or Standard.
`PO_BOX_ALLOWED` | `NUMBER` | Null | Specifies whether or not the shipment can be left at a post office box.
`SIGNATURE_REQUIRED` | `NUMBER` | Null | Specifies whether or not a signature is required upon receipt of the shipment.
`SATURDAY_DELIVERY` | `NUMBER` | Null | Specifies whether or not the shipment can be delivered on Saturday.
`INTERNATIONAL_DELIVERY` | `NUMBER` | Null | Specifies whether or not international delivery is an option.
`SIZE_LIMIT` | `NUMBER(16,4)` | Null | The size limit for the shipment.
`PACKAGING_TYPE` | `VARCHAR(50)` | Null | The packaging type for the shipment.

### The WLCS_TRANSACTION Database Table

This table contains data for every payment transaction in the order processing database.

Table 8-24 WLCS_TRANSACTION Table Metadata

Column Name | Data Type | Null Value | Description
--- | --- | --- | ---
`TRANSACTION_ID` | `VARCHAR(25)` | Not Null | PK—A unique identifier for the transaction.
`BATCH_ID` | `VARCHAR(15)` | Null | A unique identifier of a batch submitted for settlement, as returned by the Payment Web service. This field need not be populated for other external payment services.
`TRAN_DATE` | `DATE` | Null | The date of the transaction (that is, date on which the transaction was first started).
`TRAN_STATUS` | `VARCHAR(20)` | Null | The current status of the transaction (Settled, Authorized, MarkedForSettle, PendingSettle, Retry, or Settled).
`TRAN_AMOUNT` | `NUMBER(16,4)` | Null | The most recent amount applied to the transaction. MarkForSettle amounts can be different from the authorization amount.
`TRAN_CURRENCY` | `VARCHAR(30)` | Null | The currency of the transaction.
`CC_NUMBER` | `VARCHAR(200)` | Null | The customer's credit card number. This is encrypted if `is.encryption.enable` is set to `true` in the `weblogiccommerce.properties` file.
`CC_TYPE` | `VARCHAR(20)` | Null | The customer's credit card type, such as VISA or MasterCard.
`CC_EXP_DATE` | `DATE` | Null | The expiration date on the customer's credit card.
`CC_NAME` | `VARCHAR(50)` | Null | The credit card holder's name.
`CC_DISPLAY_NUMBER` | `VARCHAR(20)` | Null | The version of the credit card number that is displayed (displays all Xs except last 4-digits).
`CC_COMPANY` | `VARCHAR(50)` | Null | The name of the credit card company.
`GEOCODE` | `VARCHAR(2)` | Null | The code used by the TAXWARE system to identify taxes for the order based on jurisdiction.
`STREET1` | `VARCHAR(30)` | Null | The first line in the customer's street address.
`STREET2` | `VARCHAR(30)` | Null | The second line in the customer's street address.
`CITY` | `VARCHAR(30)` | Null | The city in the customer's address.
`STATE` | `VARCHAR(40)` | Null | The state in the customer's address.
`COUNTRY` | `VARCHAR(40)` | Null | The country in the customer's address.
`POBOX` | `VARCHAR(30)` | Null | The post office box in the customer's address.
`DESCRIPTION` | `VARCHAR(30)` | Null | Any additional data. Can be `NULL`.
`COUNTY` | `VARCHAR(50)` | Null | The county in the customer's address.
`POSTAL_CODE` | `VARCHAR(10)` | Null | The postal (ZIP) code in the customer's address.
`POSTAL_CODE_TYPE` | `VARCHAR(10)` | Null | Format or type of postal code, generally determined by country, such as ZIP code in the United States.

### The WLCS_TRANSACTION_ENTRY Database Table

This table logs the different states a payment transaction has passed through in the order processing database.

Table 8-25 WLCS_TRANSACTION_ENTRY Table Metadata

Column Name | Data Type | Null Value | Description
--- | --- | --- | ---
`TRANSACTION_ENTRY_ID` | `NUMBER(25)` | Not Null | PK— A unique identifier for the transaction entry.
`TRAN_ENTRY_SEQUENCE` | `VARCHAR(30)` | Null | Represents the running count per transaction.
`TRAN_ENTRY_DATE` | `DATE` | Null | The date of the log entry.
`TRAN_ENTRY_STATUS` | `VARCHAR(20)` | Null | The status of the transaction when this entry was made.
`TRAN_ENTRY_AMOUNT` | `NUMBER(16,4)` | Null | The amount of the transaction when the log entry was made.
`TRAN_ENTRY_CURRENCY` | `VARCHAR(30)` | Null | The currency of the transaction.
`TRANSACTION_ID` | `VARCHAR(25)` | Null | A unique identifier for the transaction.

# Personalization Database Objects

This section provides information about the database objects for ProductName personalization features. Figure 8-6 shows an entity-relation diagram for the WebLogic Portal Personalization database objects.

Figure 8-6 Entity-Relation Diagram for WebLogic Portal Personalization

## The Portal Personalization Database Tables

The following tables compose the portal personalization database:

- The GROUP_HIERARCHY Database Table
- The GROUP_SECURITY Database Table
- The USER_GROUP_CACHE Database Table
- The USER_GROUP_HIERARCHY Database Table
- The USER_PROFILE Database Table
- The USER_SECURITY Database Table
- The ENTITY Database Table
- The PROPERTY_KEY Database Table
- The PROPERTY_VALUE Database Table
- The SEQUENCER Database Table
- The WEBLOGIC_IS_ALIVE Database Table

### The GROUP_HIERARCHY Database Table

This table is populated only if the RDBMSAuthenticator is used instead of the default internal LDAP store. This table stores relationship information between groups.

Table 8-26 GROUP_HIERARCHY Table Metadata

Column Name | Data Type | Null Value | Description
--- | --- | --- | ---
`PARENT_GROUP_ID` | `NUMBER(15)` | Not Null | PK—The parent group identifier. FK to the `ENTITY` table.
`CHILD_GROUP_ID` | `NUMBER(15)` | Not Null | PK—The child group identifier. FK to the `ENTITY` table.
`CREATION_DATE` | `DATE` | Not Null | The date and time this record was created.
`MODIFIED_DATE` | `DATE` | Not Null | The date and time this record was last modified.

### The GROUP_SECURITY Database Table

This table is populated only if the RDBMSAuthenticator is used instead of the default internal LDAP store. This table holds all groups that a user could be given membership for security authentication of the RDBMS realm.

Table 8-27 GROUP_SECURITY Table Metadata

Column Name | Data Type | Null Value | Description
--- | --- | --- | ---
`GROUP_ID` | `NUMBER(15)` | Not Null | PK—A unique, system-generated number used as the record identifier.
`GROUP_NAME` | `VARCHAR(200)` | Not Null | The name of the group.
CREATION_DATE | DATE | Not Null | The date and time this record was created.
MODIFIED_DATE | DATE | Not Null | The date and time this record was last modified.

### The USER_GROUP_CACHE Database Table

This table is populated only if the RDBMSAuthenticator is used instead of the default internal LDAP store. In the event of a deep group hierarchy, this table flattens the group hierarchy and enables quick group membership searches.

Note: The startup process GroupCache is disabled by default. This table is used only if enabled.

Table 8-28 USER_GROUP_CACHE Table Metadata

Column Name | Data Type | Null Value | Description
--- | --- | --- | ---
`USER_NAME` | `VARCHAR(200)` | Not Null | PK - A user name.
`GROUP_NAME` | `VARCHAR(200)` | Not Null | PK - A group name.

### The USER_GROUP_HIERARCHY Database Table

This table is populated only if the RDBMSAuthenticator is used instead of the default internal LDAP store. This table allows you to store associated users and groups.

Table 8-29 USER_GROUP_HIERARCHY Table Metadata

Column Name | Data Type | Null Value | Description
--- | --- | --- | ---
`GROUP_ID` | `NUMBER(15)` | Not Null | PK - and FK - to `USER_SECURITY.USER_ID`
`USER_ID` | `NUMBER(15)` | Not Null | PK and FK to `GROUP_SECURITY.GROUP_ID`
`CREATION_DATE` | `DATE` | Not Null | The date and time this record was created.
`MODIFIED_DATE` | `DATE` | Not Null | The date and time this record was last modified.

### The USER_PROFILE Database Table

This table associates users with profiles (such as the `WLCS_CUSTOMER` user profile). User profiles use property sets to organize the properties that they contain.

Table 8-30 USER_PROFILE Table Metadata

Column Name | Data Type | Null Value | Description
--- | --- | --- | ---
`USER_NAME` | `VARCHAR(200)` | Not Null | PK—The user name.
`PROFILE_TYPE` | `VARCHAR(100)` | Not Null | A type of profile associated with the user (such as `WLCS_Customer`).
`CREATION_DATE` | `DATE` | Not Null | The date and time this record was created.

### The USER_SECURITY Database Table

This table is populated only if the RDBMSAuthenticator is used instead of the default internal LDAP store. This table holds all the user records for security authentication.

Table 8-31 USER_SECURITY Table Metadata

Column Name | Data Type | Null Value | Description
--- | --- | --- | ---
`USER_ID` | `NUMBER(15)` | Not Null | PK—A unique, system-generated number used as the record identifier.
`USER_NAME` | `VARCHAR(200)` | Not Null | The user's name.
`PASSWORD` | `VARCHAR(50)` | Null | The user's password.
`CREATION_DATE` | `DATE` | Not Null | The date and time this record was created.
`MODIFIED_DATE` | `DATE` | Not Null | The date and time this record was last modified.

### The ENTITY Database Table

Some objects in WebLogic Portal implement a Java interface called ConfigurableEntity. Any ConfigurableEntity within the system has an entry in this table.

Table 8-32 ENTITY Table Metadata

Column Name | Data Type | Null Value | Description
--- | --- | --- | ---
`ENTITY_ID` | `NUMBER(15)` | Not Null | PK—A unique, sequence-generated number used as the record identifier.
`ENTITY_NAME` | `VARCHAR(200)` | Not Null | The name of the ConfigurableEntity.
`ENTITY_TYPE` | `VARCHAR(100)` | Not Null | Defines the type of ConfigurableEntity.
`CREATION_DATE` | `DATE` | Not Null | The date and time this record was created.
`MODIFIED_DATE` | `DATE` | Not Null | The date and time this record was last modified.

### The PROPERTY_KEY Database Table

Any property assigned to a ConfigurableEntity has a unique `PROPERTY_ID`. The identifier and associated information is stored in the following table.

Table 8-33 PROPERTY_KEY Table Metadata

Column Name | Data Type | Null Value | Description and Recommendations
--- | --- | --- | ---
`PROPERTY_KEY_ID` | `NUMBER(15)` | Not Null | PK—A unique, system-generated number used as the record identifier.
`PROPERTY_NAME` | `VARCHAR(100)` | Not Null | The property name.
`CREATION_DATE` | `DATE` | Not Null | The date and time this record was created.
`MODIFIED_DATE` | `DATE` | Not Null | The date and time this record was last modified.
`PROPERTY_SET_NAME` | `VARCHAR(100)` | Null | The name of the property set.
`PROPERTY_SET_TYPE` | `VARCHAR(100)` | Null | The type the property set.

### The PROPERTY_VALUE Database Table

This table stores property values for boolean, datetime, float, integer, text, and user-defined properties.

Table 8-34 PROPERTY_VALUE Table Metadata

Column Name | Data Type | Null Value | Description
--- | --- | --- | ---
`PROPERTY_VALUE_ID` | `NUMBER(15)` | Not Null | PK—A unique, system-generated number used as the record identifier.
`PROPERTY_KEY_ID` | `NUMBER(15)` | Not Null | FK to `PROPERTY_KEY.PROPERTY_KEY_ID`
`ENTITY_ID` | `NUMBER(15)` | Not Null | FK to `ENTITY.ENTITY_ID`
`PROPERTY_TYPE` | `NUMBER(1)` | Not Null | Valid entries are: 0=Boolean, 1=Integer, 2=Float, 3=Text, 4=Date and Time, 5=User-Defined (BLOB).
`CREATION_DATE` | `DATE` | Not Null | The date and time this record was created.
`MODIFIED_DATE` | `DATE` | Not Null | The date and time this record was last modified.
`BOOLEAN_VALUE` | `NUMBER(1)` | Null | The value for each boolean property identifier.
`DATETIME_VALUE` | `DATE` | Null | The value for each date and time property identifier.
`DOUBLE_VALUE` | `NUMBER` | Null | The value associated with each float property identifier.
`LONG_VALUE` | `NUMBER(20)` | Null | The value associated with the integer property.
`TEXT_VALUE` | `VARCHAR(254)` | Null | The value associated with the text property.
`BLOB_VALUE` | `BLOB` | Null | The value associated with the user-defined property.

### The SEQUENCER Database Table

The `SEQUENCER` table is used to maintain all of the sequence identifiers (for example, property_meta_data_id_sequence, and so on) used in the application.

Table 8-35 SEQUENCER Table Metadata

Column Name | Data Type | Null Value | Description
--- | --- | --- | ---
`SEQUENCE_NAME` | `VARCHAR(50)` | Not Null | PK—A unique name used to identify the sequence.
`CURRENT_VALUE` | `NUMBER(15)` | Not Null | The current value of the sequence.
`IS_LOCKED` | `NUMBER(1)` | Not Null | This flag identifies whether or not the particular SEQUENCE_ID has been locked for update. This column is being used as a generic locking mechanism that can be used for multiple database environments.

### The WEBLOGIC_IS_ALIVE Database Table

This table is used by the JDBC connection pools to ensure that the connection to the database is still alive.

Table 8-36 WEBLOGIC_IS_ALIVE Table Metadata

Column Name | Data Type | Null Value | Description
--- | --- | --- | ---
`NAME` | `VARCHAR(100)` | Not Null | Used by the JDBC connection pools to ensure that the connection to the database is still alive.

# Data Synchronization Database Objects

Data synchronization is a feature that manages XML data about various WebLogic Portal services. Information from the files in the META-INF data folder, under certain circumstances, is written into the data synchronization tables in the database.

This section provides information about the database objects for ProductName data synchronization features. Figure 8-7 shows an entity-relation diagram for WebLogic Portal data synchronization database objects.

Figure 8-7 Entity-Relation Diagram for WebLogic Portal Data Synchronization

The Data Synchronization Database Tables

In this section, WebLogic Portal data synchronization objects tables are arranged alphabetically as a data dictionary.

The following tables compose the data synchronization database:

- The DATA_SYNC_APPLICATION Database Table
- The DATA_SYNC_ITEM Database Table
- The DATA_SYNC_SCHEMA_URI Database Table
- The DATA_SYNC_VERSION Database Table

### The DATA_SYNC_APPLICATION Database Table

This table holds the various applications available for the data synchronization process.

Table 8-37 DATA_SYNC_APPLICATION Table Metadata

Column Name | Data Type | Null Value | Description
--- | --- | --- | ---
`APPLICATION_ID` | `NUMBER(15)` | Not Null | PK—A unique, system-generated number used as the record identifier.
`APPLICATION_NAME` | `VARCHAR(100)` | Not Null | The deployed J2EE application name. This should match the name in the WebLogic Server console.
`CREATION_DATE` | `DATE` | Not Null | The date and time this record was created.
`MODIFIED_DATE` | `DATE` | Not Null | The date and time this record was last modified.

### The DATA_SYNC_ITEM Database Table

This table stores all the data items to be synchronized.

Table 8-38 DATA_SYNC_ITEM Table Metadata

Column Name | Data Type | Null Value | Description
--- | --- | --- | ---
`DATA_SYNC_ITEM_ID` | `NUMBER(15)` | Not Null | PK—A unique, system-generated number used as the record identifier.
`APPLICATION_ID` | `NUMBER(15)` | Not Null | FK to `DATA_SYNC_ APPLICATON.APPLICATION_ID`
`SCHEMA_URI_ID` | `NUMBER(15)` | Not Null | FK to `DATA_SYNC_ SCHEMA_URI.SCHEMA_URI_ID`
`VERSION_MAJOR` | `NUMBER(15)` | Not Null | FK to `DATA_SYNC_ VERSION.VERSION_MAJOR`
`VERSION_MINOR` | `NUMBER(15)` | Not Null | FK to `DATA_SYNC_ VERSION.VERSION_MINOR`
`ITEM_CHECKSUM` | `NUMBER(15)` | Not Null | A generated number representing the contents of the `XML_DEFINITION` column.
`CREATION_DATE` | `DATE` | Not Null | The date and time this record was created.
`MODIFIED_DATE` | `DATE` | Not Null | The date and time this record was last modified.
`XML_MODIFIED_DATE` | `DATE` | Not Null | The date and time the XML file was last modified.
`XML_CREATION_DATE` | `DATE` | Not Null | The date and time the XML file was created.
`XML_DEFINITION` | `CLOB` | Not Null | The XML representation of the data item to be synchronized.
`ITEM_URI` | `VARCHAR(254)` | Not Null | The path on the file system of the data item to be synchronized.
`ITEM_AUTHOR` | `VARCHAR(200)` | Null | Metadata info—the OS login.
`ITEM_NAME` | `VARCHAR(100)` | Null | Metadata info—the full path to the item.
`ITEM_DESCRIPTION` | `VARCHAR(254)` | Null | Metadata info—a general description of the item to be synchronized.

### The DATA_SYNC_SCHEMA_URI Database Table

This table holds information pertaining to each of the governing schemas used by various documents.

Table 8-39 DATA_SYNC_SCHEMA_URI Table Metadata

Column Name | Data Type | Null Value | Description
--- | --- | --- | ---
`SCHEMA_URI_ID` | `NUMBER(15)` | Not Null | PK— A unique, system-generated number used as the record identifier.
`SCHEMA_URI` | `VARCHAR(254)` | Not Null | The governing schema of the document.
`CREATION_DATE` | `DATE` | Not Null | The date and time this record was created.
`MODIFIED_DATE` | `DATE` | Not Null | The date and time this record was last modified.

### The DATA_SYNC_VERSION Database Table

This table is not being used currently. It is reserved for future use and is expected to accommodate data synchronization versioning. As a result, this table holds only one record.

Table 8-40 DATA_SYNC_VERSION Table Metadata

Column Name | Data Type | Null Value | Description
--- | --- | --- | ---
`VERSION_MAJOR` | `NUMBER(15)` | Not Null | PK—The current record has a value of zero.
`VERSION_MINOR` | `NUMBER(15)` | Not Null | PK—The current record has a value of zero.
`CREATION_DATE` | `DATE` | Not Null | The date and time that the record was created.
`MODIFIED_DATE` | `DATE` | Not Null | The date and time that the record was last modified.
`BUILD_NUMBER` | `NUMBER(15)` | Null | The build number associated with the version.
`VERSION_DESCRIPTION` | `VARCHAR(30)` | Null | A description of the particular sync version.

# WebLogic Portal Services Database Objects

This section provides information about the database objects for ProductName Services features. Figure 8-8 shows an entity-relation diagram for WebLogic Portal services database objects.

Figure 8-8 Entity-Relation Diagram for WebLogic Portal Services

## The Portal Services Database Tables

The following tables compose the Portal services database:

- The AD_BUCKET Database Table
- The AD_COUNT Database Table
- The PLACEHOLDER_PREVIEW Database Table
- The MAIL_ADDRESS Database Table
- The MAIL_BATCH Database Table
- The MAIL_BATCH_ENTRY Database Table
- The MAIL_HEADER Database Table
- The MAIL_MESSAGE Database Table
- The SCENARIO_END_STATE Database Table

### The AD_BUCKET Database Table

This table maintains content queries for ads.

Table 8-41 AD_BUCKET Table Metadata

Column Name | Data Type | Null Value | Description
--- | --- | --- | ---
`AD_BUCKET_ID` | `NUMBER(15)` | Not Null | PK—A unique, system-generated number used as the record identifier.
`USER_NAME` | `VARCHAR (200)` | Not Null | The user's name associated with the ad.
`PLACEHOLDER_XML_REF` | `VARCHAR(254)` | Not Null | The location identifier of the XML-based placeholder definition file.
`APPLICATION_NAME` | `VARCHAR(100)` | Not Null | The name of the application for which the ad has been scoped.
`CONTEXT_REF` | `VARCHAR(254)` | Null | The scenario-unique identifier.
`CONTAINER_REF` | `VARCHAR(254)` | Null | The campaign-unique identifier.
`CONTAINER_TYPE` | `VARCHAR(50)` | Null | Identifies the service associated with the `CONTAINER_REF`.
`WEIGHT` | `NUMBER(15)` | Null | A weighted scheme used in prioritizing one placeholder over another.
`VIEW_COUNT` | `NUMBER(15)` | Null | Disabled. Reserved for future use.
`EXPIRATION_DATE` | `DATE` | Null | The date and time the ad expires or becomes invalid.
`CREATION_DATE` | `DATE` | Not Null | The date and time this record was created.
`MODIFIED_DATE` | `DATE` | Not Null | The date and time this record was last modified.
`AD_QUERY` | `CLOB` | Null | The actual content query.

### The AD_COUNT Database Table

This table tracks the number of times the ads are displayed and clicked though.

Table 8-42 AD_COUNT Table Metadata

Column Name | Data Type | Null Value | Description
--- | --- | --- | ---
`AD_ID` | `VARCHAR(254)` | Not Null | PK—A unique, system-generated number used as the record identifier.
`CONTAINER_REF` | `VARCHAR(254)` | Not Null | PK—The campaign-unique identifier.
`APPLICATION_NAME` | `VARCHAR(100)` | Not Null | PK—The name of the application for which the ad clicks or views were scoped.
`DISPLAY_COUNT` | `NUMBER(15)` | Not Null | The number of times the ad has been displayed.
`CLICK_THROUGH_COUNT` | `NUMBER(15)` | Not Null | The number of times the ad has been clicked.

### The PLACEHOLDER_PREVIEW Database Table

This table is used as a mechanism to hold the placeholder for previewing purposes only.

Table 8-43 PLACEHOLDER_PREVIEW Table Metadata

Column Name | Data Type | Null Value | Description
--- | --- | --- | ---
`PREVIEW_ID` | `NUMBER` | Not Null | PK—A unique, system-generated number used as the record identifier.
`XML_DEFINITION` | `CLOB` | Null | The representation of the expression to be previewed.

### The MAIL_ADDRESS Database Table

This table stores all of the address information for e-mail purposes.

Table 8-44 MAIL_ADDRESS Table Metadata

Column Name | Data Type | Null Value | Description
--- | --- | --- | ---
`MAIL_ADDRESS_ID` | `NUMBER(15)` | Not Null | PK—A unique, system-generated number to use as the record ID.
`MESSAGE_ID` | `NUMBER(15)` | Not Null | FK—Foreign key to the `MAIL_MESSAGE` table.
`ADDRESS` | `VARCHAR(254)` | Not Null | Stores the various e-mail addresses on the distribution list.
`SEND_TYPE` | `VARCHAR(4)` | Not Null | Determines how the `ADDRESS` should be included on the distribution. Possible values are `TO,` `CC,` or `BCC`.

### The MAIL_BATCH Database Table

This table establishes a batch for each mailing.

Table 8-45 MAIL_BATCH Table Metadata

Column Name | Data Type | Null Value | Description
--- | --- | --- | ---
`BATCH_ID` | `NUMBER(15)` | Not Null | PK—A unique, system-generated number to use as the record `ID`.
`BATCH_NAME` | `VARCHAR(254)` | Not Null | The name of the mail message batch.

### The MAIL_BATCH_ENTRY Database Table

This table is used to correlate the mail batch with the specific mail message.

Table 8-46 MAIL_BATCH_ENTRY Table Metadata

Column Name | Data Type | Null Value | Description
--- | --- | --- | ---
`BATCH_ID` | `NUMBER(15)` | Not Null | PK and FK—A unique, system-generated number to use as the record ID.
`MESSAGE_ID` | `NUMBER(15)` | Not Null | PK and FK—Foreign key to the `MAIL_MESSAGE` table.

### The MAIL_HEADER Database Table

This table contains all of the header information specific to the e-mail message.

Table 8-47 MAIL_HEADER Table Metadata

Column Name | Data Type | Null Value | Description
--- | --- | --- | ---
`HEADER_ID` | `NUMBER(15)` | Not Null | PK—A unique, system-generated number to use as the record ID.
`MESSAGE_ID` | `NUMBER(15)` | Not Null | FK—Foreign key to the `MAIL_MESSAGE` table.
`HEADER_NAME` | `VARCHAR(50)` | `Null` | The name of the mail message header.
`HEADER_VALUE` | `VARCHAR(254)` | `Null` | The value of the mail message header.

### The MAIL_MESSAGE Database Table

This table contains the specifics of the mail message (for example, the subject line, text, and so on).

Table 8-48 MAIL_MESSAGE Table Metadata

Column Name | Data Type | Null Value | Description
--- | --- | --- | ---
`MESSAGE_ID` | `NUMBER(15)` | Not Null | PK—A unique, system-generated number to use as the record ID.
`FROM_ADDRESS` | `VARCHAR(254)` | `Null` | Identifies who is sending the message.
`SUBJECT` | `VARCHAR(128)` | `Null` | Stores the mail message subject.
`MESSAGE_TEXT` | `CLOB` | `Null` | Holds the content of the mail message.

### The SCENARIO_END_STATE Database Table

This table identifies when a user is no longer eligible to participate in a particular scenario.

Table 8-49 SCENARIO_END_STATE Table Metadata

Column Name | Data Type | Null Value | Description
--- | --- | --- | ---
`SCENARIO_XML_REF` | `VARCHAR(20)` | `Not Null` | PK—The identifier for the XML-based scenario definition file.
`USER_NAME` | `VARCHAR(200)` | `Not Null` | PK—the user `ID`. FK to `WLCS_USER.IDENTIFIER`.
`CONTAINER_REF` | `VARCHAR(254)` | `Not Null` | PK—the campaign unique identifier. FK to `CAMPAIGN.CAMPAIGN_UID.`
`CONTAINER_TYPE` | `VARCHAR(50)` | `Not Null` | PK—At this time this column always holds the string `Campaign`.
`APPLICATION_NAME` | `VARCHAR(100)` | `Not Null` | PK—The deployed J2EE application name. This should match the name in the WebLogic Server console.

# Portal Framework Database Objects

This section documents the database objects for the WebLogic Portal package. Figure 8-9 and xxx (in two pages) show the entity-relation diagram for the WebLogic Portal Framework database objects.

Figure 8-9 Entity-Relation Diagram for the Portal Framework Tables (page 1 of 2)

Figure 8-10 Entity-Relation Diagram for the Portal Framework Tables (page 2 of 2)

## The Portal Framework Database Tables

In this section, WebLogic Portal Services tables are arranged alphabetically as a data dictionary. The following tables compose the Portal Framework database:

- The PF_BOOK_DEFINITION Database Table
- The PF_BOOK_GROUP Database Table
- The PF_BOOK_INSTANCE Database Table
- The PF_DESKTOP_DEFINITION Database Table
- The PF_DESKTOP_INSTANCE Database Table
- The PF_LAYOUT_DEFINITION Database Table
- The PF_LOOK_AND_FEEL_DEFINITION Database Table
- The PF_MARKUP_DEFINITION Database Table
- The PF_MENU_DEFINITION Database Table
- The PF_PAGE_DEFINITION Database Table
- The PF_PAGE_INSTANCE Database Table
- The PF_PLACEHOLDER_DEFINITION Database Table
- The PF_PLACEMENT Database Table
- The PF_PORTAL Database Table
- The PF_PORTLET_CATEGORY Database Table
- The PF_PORTLET_CATEGORY_DEFINITION Database Table
- The PF_PORTLET_DEFINITION Database Table
- The PF_PORTLET_INSTANCE Database Table

The following WSRP-related tables are a subset of the PF_PORTLET_INSTANCE database table:

- The PF_CONSUMER_PORTLETS Database Table
- The PF_CONSUMER_PROPERTIES Database Table
- The PF_CONSUMER_REGISTRY Database Table
- The PF_PRODUCER_PROPERTIES Database Table
- The PF_PRODUCER_REGISTRY Database Table
- The PF_PROXY_PORTLET_INSTANCE Database Table

To view the diagram for the tables listed above, see Entity-Relation Diagram for the WSRP Tables.

- The PF_PORTLET_PREFERENCE Database Table
- The PF_PORTLET_PREFERENCE_VALUE Database Table
- The PF_SHELL_DEFINITION Database Table
- The PF_THEME_DEFINITION Database Table

### The PF_BOOK_DEFINITION Database Table

This table defines a `BOOK` portal library resource. Books are used to aggregate `PAGES` and other `BOOKS`.

Table 8-50 PF_BOOK_DEFINITION Table Metadata

Column Name | Data Type | Null Value | Description
--- | --- | --- | ---
`BOOK_DEFINITION_ID` | `NUMBER` | Not Null | PK—A unique, system-generated number to use as the record ID.
`MARKUP_DEFINITION_ID` | `NUMBER` | Not Null | FK to `PF_MARKUP_DEFINITION`.
`IS_PUBLIC` | `NUMBER` | Not Null | A boolean flag indicating whether this book definition displays to the public. When end users create books they are not marked as public.
`IS_HIDDEN` | `NUMBER` | Not Null | A boolean flag indicating whether this book definition is hidden from the menu. Marking a page or book as hidden does not prevent it from being displayed; this indicator is only a hint to the menu control not to display a tab for the given book or page. The page or book can be activated using a link or a backing file.
CREATION_DATE | DATE | Not Null | The date and time the row was created.
MODIFIED_DATE | DATE | Not Null | The date and time the row was last modified. This column's data is maintained using a database trigger.
INTERSECTION_ID | `NUMBER` | Not Null | FK to `L10N_INTERSECTION`.
WEBAPP_NAME | VARCHAR(80) | Not Null | Name of the J2EE Web application (as defined in the `config.xml`) to which the portal resource is scoped.
BOOK_LABEL | VARCHAR(80) | `Null` | A moniker used to reference this portal resource for development purposes. This is the same as the bookDefinitionLabel in WebLogic Workshop. If a label is not supplied at creation time, the `BOOK_DEFINITION_ID` prefixed with a 'B' is used. This label can be supplied to APIs to activate books or pages.

### The PF_BOOK_GROUP Database Table

This table represents a child page or book placement on the parent book. A single record in the table represents one placement on a book. This table also identifies a customized grouping of Books and Pages. Customized groupings are represented and aggregated around the `DESKTOP_INSTANCE_ID.`

Table 8-51 PF_BOOK_GROUP Table Metadata

Column Name | Data Type | Null Value | Description
--- | --- | --- | ---
`BOOK_GROUP_ID` | `NUMBER` | Not Null | PK—A unique, system-generated number to use as the record ID.
`PARENT_BOOK_ID` | `NUMBER` | Not Null | FK to `PF_BOOK_INSTANCE` that identifies the parent `BOOK_INSTANCE_ID.`
`ALIGNMENT` | `NUMBER` | Not Null | The alignment is a 'hint' to the menu skeleton JSP to indicate whether the tab should be aligned on the left or right of the tab bar. A skeleton can either implement this feature or ignore it.
`MENU_POSITION` | `NUMBER` | Not Null | The order, in the tab menu, in which this page or book will appear on the parent book.The order does not need to be contiguous.
CREATION_DATE | `DATE` | Not Null | The date and time the row was created.
MODIFIED_DATE | `DATE` | Not Null | The date and time the row was last modified. This column's data is maintained using a database trigger.
IS_DEFAULT | `NUMBER` | Not Null | A boolean flag indicating that this is the default page or book on the parent book.
CHILD_BOOK_ID | `NUMBER` | `Null` | FK to `PF_BOOK_INSTANCE` that identifies the child `BOOK_INSTANCE_ID.`
PAGE_INSTANCE_ID | `NUMBER` | `Null` | FK to `PF_BOOK_INSTANCE.`
DESKTOP_INSTANCE_ID | `NUMBER` | `Null` | FK to `PF_DESKTOP_INSTANCE`. If this book grouping is an administrator or end user customization, this value is non null and points to the administrator's or user's desktop. If this field is null, it represents the library's view.

### The PF_BOOK_INSTANCE Database Table

This table identifies an instance of the `BOOK_DEFINITION`. There is always at least one book instance, namely the primary instance. All other instances represent customization by administrators or end users.

Table 8-52 PF_BOOK_INSTANCE Table Metadata

Column Name | Data Type | Null Value | Description
--- | --- | --- | ---
`BOOK_INSTANCE_ID` | `NUMBER` | Not Null | PK—A unique, system-generated number to use as the record ID.
`MENU_ORIENTATION` | `NUMBER` | Not Null | The orientation is a hint to the book skeleton JSP and the menu skeleton JSP to display the tabs on the top, left, right, or bottom of the main book. The skeletons can choose to ignore this field.
`INSTANCE_TYPE` | `NUMBER` | Not Null | The type of book instance: 1=Primary, 3=Admin, 4=User.
`CREATION_DATE` | `DATE` | Not Null | The date and time the row was created.
MODIFIED_DATE | `DATE` | Not Null | The date and time the row was last modified. This column's data is maintained using a database trigger.
INSTANCE_TITLE | `VARCHAR(255)` | `Null` | An end-user-customized title for this `BOOK`. This title is not internationalized as it is used only by the end user. If the end user does not customize the book title, then the value is null and the `L10N_RESOURCE` title is used.
BOOK_DEFINITION_ID | `NUMBER` | Not Null | FK to `PF_BOOK_DEFINITION`.
MENU_DEFINITION_ID | `NUMBER` | `Null` | FK to `PF_MENU_DEFINITION`. Can be null as not every book must have a menu.
THEME_DEFINITION_ID | `NUMBER` | `Null` | FK to `PF_THEME_DEFINITION`.

### The PF_DESKTOP_DEFINITION Database Table

This table defines a desktop definition. You can create Desktops from template (`.portal`) files or from existing resources.

Table 8-53 PF_DESKTOP_DEFINITION Table Metadata

Column Name | Data Type | Null Value | Description
--- | --- | --- | ---
`DESKTOP_PATH` | `VARCHAR(40)` | Not Null | Part of the PK— identifies the partial URL path to the desktop.
`PORTAL_PATH` | `VARCHAR(40)` | Not Null | Part of the PK and FK to `PF_PORTAL`— identifies the partial URL path to this desktop and parent portal.
`WEBAPP_NAME` | `VARCHAR(80)` | Not Null | Part of the PK and FK to `PF_PORTAL`. This is the name of the webapp (as defined in the `config.xml` file) to which this desktop is scoped.
`CREATION_DATE` | `DATE` | Not Null | The date and time the row was created.
MODIFIED_DATE | `DATE` | Not Null | The date and time the row was last modified. This column's data is maintained using a database trigger.
`INTERSECTION_ID` | `NUMBER` | Not Null | FK to `L10N_INTERSECTION`. The `BOOK_INSTANCE_ID` of the main or default `PF_BOOK_INSTANCE` for the desktop.
`MARKUP_DEFINITION_ID` | `NUMBER` | Not Null | FK to `PF_MARKUP_DEFINITION`.
`IS_TREE_OPTIMIZED` | `NUMBER` | Not Null | Indicates whether tree optimization is active for a desktop. Acceptable values are 0 (off; the default) or 1 (on).

### The PF_DESKTOP_INSTANCE Database Table

This table identifies a customized or localized instance of a desktop.

Table 8-54 PF_DESKTOP_INSTANCE Table Metadata

Column Name | Data Type | Null Value | Description
--- | --- | --- | ---
`DESKTOP_INSTANCE_ID` | `NUMBER` | Not Null | PK—identifies the partial URL path to the desktop.
`DESKTOP_PATH` | `VARCHAR(40` | Not Null | FK to `PF_DESKTOP_DEFINITION`.
`PORTAL_PATH` | `VARCHAR(40)` | Not Null | FK to `PF_DESKTOP_DEFINITION`.
`WEBAPP_NAME` | `VARCHAR(80)` | Not Null | FK to `PF_DESKTOP_DEFINITION`.
MAIN_BOOK_ID | `NUMBER` | Not Null | FK to `BOOK_INSTANCE_ID` of the main or default `PF_BOOK_INSTANCE` for the desktop.
USER_NAME | `VARCHAR(200)` | Null | The name of the user if the user has customized his/her desktop. This value is null if the desktop instance is not for a particular user or administrator.
CREATION_DATE | `DATE` | Not Null | The date and time the row was created.
MODIFIED_DATE | DATE | Not Null | The date and time the row was last modified. This column's data is maintained using a database trigger.
LOOK_FEEL_DEFINITION_ID | NUMBER | Null | FK to `PF_LOOK_AND_FEEL_DEFINITION`.
INSTANCE_TITLE | VARCHAR(20) | Null | An end-user-customized title for this `DESKTOP`. This title is not internationalized as it is used only by the end user. If the end user does not customize the desktop title, then the value is null and the `L10N_RESOURCE` title is used.
SHELL_DEFINITION_ID | NUMBER | Not Null | FK to `PF_SHELL_DEFINITION.`

### The PF_LAYOUT_DEFINITION Database Table

This table defines a `LAYOUT` portal library resource that is used as a specification for determining the location of items on a page. For every layout definition there is a corresponding.layout file. By updating the `.layout` file, you are updating this record.

Table 8-55 PF_LAYOUT_DEFINITION Table Metadata

Column Name | Data Type | Null Value | Description
--- | --- | --- | ---
`LAYOUT_DEFINITION_ID` | `NUMBER` | `Not Null` | PK—A unique, system-generated number to use as the record ID.
`MARKUP_DEFINITION_ID` | `NUMBER` | `Not Null` | FK to `PF_MARKUP_DEFINITION`.
`CREATION_DATE` | `DATE` | `Not Null` | The date and time the row was created.
`MODIFIED_DATE` | `DATE` | `Not Null` | The date and time the row was last modified. This column's data is maintained using a database trigger.
INTERSECTION_ID | `NUMBER` | `Not Null` | FK to `L10N_INTERSECTION`.
WEBAPP_NAME | `VARCHAR(80)` | `Not Null` | Name of the J2EE Web application to which the portal resource is scoped.
IS_LAYOUT_FILE_ DELETED | `NUMBER` | `Not Null` | A boolean indicating that the file associated with this layout was removed from the file system. If the layout is not being used, then the record is deleted outright. This flag is set to true only when the `.layout` file is deleted and the layout is still in use. You can either return the `.layout` file and this flag is automatically reset, or remove the layout with a replacement layout in the admin tools.
LAYOUT_FILE | VARCHAR(255) | Null | The name and location of the file associated with this layout definition.
ICON_URI | VARCHAR(255) | Null | The URI that identifies the `ICON` for this layout definition.
HTML_LAYOUT_URI | VARCHAR(255) | Null | The URI for the HTML for this layout definition. The htlp file is used by the admin and visitor tools to provide a visual display that emulates the real layout.

### The PF_LOOK_AND_FEEL_DEFINITION Database Table

This table defines a `LOOK and FEEL` portal library resource or template for assignment to `DESKTOPs` that control how a portal renders.

Table 8-56 PF_LOOK_AND_FEEL_DEFINITION Table Metadata

Column Name | Data Type | Null Value | Description
--- | --- | --- | ---
`LOOK_FEEL_ DEFINITION_ID` | `NUMBER` | `Not Null` | PK—A unique, system-generated number to use as the record ID.
`LOOK_FEEL_LABEL` | `VARCHAR(80)` | `Not Null` | A moniker used to reference this portal resource for development purposes.
`CREATION_DATE` | `DATE` | `Not Null` | The date and time the row was created.
`MODIFIED_DATE` | `DATE` | `Not Null` | The date and time the row was last modified. This column's data is maintained using a database trigger.
INTERSECTION_ID | `NUMBER` | `Not Null` | FK to L10N_INTERSECTION.
MARKUP_DEFINITION_ID | `NUMBER` | `Not Null` | FK to PF_MARKUP_DEFINITION.
WEBAPP_NAME | `VARCHAR(80)` | `Not Null` | Name of the J2EE Web application to which the portal resource is scoped.
IS_LOOK_FEEL_FILE_ DELETED | NUMBER | `Not Null` | A boolean indicating that the file associated with this look and feel was removed from the file system. If the look and feel is not being used, then the record is deleted outright. This flag is set to true only when the `.laf` file is deleted and the look and feel is still in use. You can either return the `.laf` file and this flag is automatically reset, or remove the look and feel with a replacement look and feel in the WebLogic Administration Portal.
LOOK_FEEL_FILE | VARCHAR(255) | `Not Null` | The fully qualified file path (from the web app) to the location of the .laf file associated with this look and feel definition.

### The PF_MARKUP_DEFINITION Database Table

This table defines the `MARKUP` (blueprint, design, model) for a portal library resource.

Table 8-57 PF_MARKUP_DEFINITION Table Metadata

Column Name | Data Type | Null Value | Description
--- | --- | --- | ---
`MARKUP_DEFINITION_ID` | `NUMBER` | Not Null | PK—A unique, system-generated number to use as the record ID.
`CREATION_DATE` | `DATE` | Not Null | The date and time the row was created.
`MODIFIED_DATE` | `DATE` | Not Null | The date and time the row was last modified. This column's data is maintained using a database trigger.
`MARKUP_NAME` | `VARCHAR(255)` | Not Null | The file name and location that contains the definition of this portal object.
MARKUP_TYPE | `VARCHAR(20)` | Not Null | The type of portal resource that this markup defines.
BEGIN_XML | `VARCHAR(2000)` | Not Null | The first 2000 characters of XML definition of this portal object.
END_XML | `VARCHAR(2000)` | Null | The last 2000 characters of the XML definition of this portal object.
MARKUP_FILE | VARCHAR(255) | Null | Location of the file containing the markup definition.
WEBAPP_NAME | VARCHAR(80) | Null | Name of the J2EE Web application to which the portal resource is scoped.

### The PF_MENU_DEFINITION Database Table

This table defines a `MENU` portal library resource or template that can be assigned to a `BOOK INSTANCE`.

Table 8-58 PF_MENU_DEFINITION Table Metadata

Column Name | Data Type | Null Value | Description
--- | --- | --- | ---
`MENU_DEFINITION_ID` | `NUMBER` | `Not Null` | PK—A unique, system-generated number to use as the record ID.
`MARKUP_DEFINITION_ID` | `NUMBER` | `Not Null` | FK to `PF_MARKUP_DEFINITION`.
`CREATION_DATE` | `DATE` | `Not Null` | The date and time the row was created.
`MODIFIED_DATE` | `DATE` | `Not Null` | The date and time the row was last modified. This column's data is maintained using a database trigger.
INTERSECTION_ID | `NUMBER` | `Not Null` | FK to `L10N_INTERSECTION`.
WEBAPP_NAME | `VARCHAR(80)` | `Not Null` | Name of the J2EE Web application to which the portal resource is scoped.
IS_MENU_FILE_DELETED | `NUMBER` | `Not Null` | A boolean indicating that the file associated with this menu was removed from the file system. If the menu is not being used then the record is deleted outright. This flag is set to true only when the`.menu` file is deleted and the menu is still in use. You can either return the `.menu` file and this flag is automatically reset, or remove the menu with a replacement menu in the WebLogic Administration Portal.
MENU_FILE | VARCHAR(255) | `Not Null` | The fully qualified path (from the Web application) to the location of the .menu file associated with this menu definition.

### The PF_PAGE_DEFINITION Database Table

This table defines a `PAGE` portal library resource or template that can be assigned to a `PAGE INSTANCE`.

Table 8-59 PF_PAGE_DEFINITION Table Metadata

Column Name | Data Type | Null Value | Description
--- | --- | --- | ---
`PAGE_DEFINITION_ID` | `NUMBER` | `Not Null` | PK—A unique, system-generated number to use as the record ID.
`MARKUP_DEFINITION_ID` | `NUMBER` | `Not Null` | FK to `PF_MARKUP_DEFINITION`.
`IS_PUBLIC` | `NUMBER` | `Not Null` | A boolean indicating this page definition is public. Only public page definitions are ever exposed to "visitors."
`IS_HIDDEN` | `NUMBER` | `Not Null` | A boolean indicating this page is hidden. The hidden flag is a hint to the menu not to render a tab for this page. The page can still be displayed by other methods (links, events).
`CREATION_DATE` | `DATE` | `Not Null` | The date and time the row was created.
`MODIFIED_DATE` | `DATE` | `Not Null` | The date and time the row was last modified. This column's data is maintained using a database trigger.
`INTERSECTION_ID` | `NUMBER` | `Not Null` | FK to `L10N_INTERSECTION`.
`WEBAPP_NAME` | `VARCHAR(80)` | `Not Null` | Name of the J2EE Web application to which the portal resource is scoped.
`PAGE_LABEL` | `VARCHAR(80)` | `Null` | A moniker used to reference this portal resource for development purposes.

### The PF_PAGE_INSTANCE Database Table

This table identifies an instance of the page definition; at least one instance per definition always exists.

Table 8-60 PF_PAGE_INSTANCE Table Metadata

Column Name | Data Type | Null Value | Description
--- | --- | --- | ---
`PAGE_INSTANCE_ID` | `NUMBER` | `Not Null` | PK—A unique, system-generated number to use as the record ID.
`CREATION_DATE` | `DATE` | `Not Null` | The date and time the row was created.
`MODIFIED_DATE` | `DATE` | `Not Null` | The date and time the row was last modified. This column's data is maintained using a database trigger.
`INSTANCE_TYPE` | `NUMBER` | `Not Null` | The type of page instance: 1=Primary, 3=Admin, 4=User.
`LAYOUT_DEFINITION_ID` | `NUMBER` | `Not Null` | FK to `PF_LAYOUT_DEFINITION`.
`PAGE_DEFINITION_ID` | `NUMBER` | `Not Null` | FK to `PF_PAGE_DEFINITION`.
`THEME_DEFINITION_ID` | `NUMBER` | `Null` | FK to `PF_THEME_DEFINITION`.
`INSTANCE_TITLE` | `VARCHAR(255)` | `Null` | A desktop- or user-customized title for this page. This instance title is valid only to end users as it cannot and need not be localized.

### The PF_PLACEHOLDER_DEFINITION Database Table

This table defines a `PLACEHOLDER` portal library resource or template that has a `LAYOUT` definition and can be assigned to a `PLACEMENT`.

Table 8-61 PF_PLACEHOLDER_DEFINITION Table Metadata

Column Name | Data Type | Null Value | Description
--- | --- | --- | ---
`PLACEHOLDER_DEFINITION_ID` | `NUMBER` | `Not Null` | PK—A unique, system-generated number to use as the record ID.
`MARKUP_DEFINITION_ID` | `NUMBER` | `Not Null` | FK to `PF_MARKUP_DEFINITION`.
`LAYOUT_LOCATION` | `NUMBER` | `Not Null` | The location of this placeholder in the layout. This is used when swapping layouts, as portlets in one layout's location are moved to the other layout's location with the same ID. If the other layout does not have the same number of placeholders, the modulus of the location by number of locations are used.
`CREATION_DATE` | `DATE` | `Not Null` | The date and time the row was created.
`MODIFIED_DATE` | `DATE` | `Not Null` | The date and time the row was last modified. This column's data is maintained using a database trigger.
`INTERSECTION_ID` | `NUMBER` | `Not Null` | FK to `L10N_INTERSECTION`.
`LAYOUT_DEFINITION_ID` | `NUMBER` | `Not Null` | FK to `PF_LAYOUT_DEFINITION`.

### The PF_PLACEMENT Database Table

Each record in this table represents a single placement of a book or portlet on a page.

Table 8-62 PF_PLACEMENT Table Metadata

Column Name | Data Type | Null Value | Description
--- | --- | --- | ---
`PLACEMENT_ID` | `NUMBER` | `Not Null` | PK—A unique, system-generated number to use as the record ID.
`PAGE_INSTANCE_ID` | `NUMBER` | `Not Null` | FK to `PF_PAGE_INSTANCE`.
`POSITION` | `NUMBER` | `Not Null` | The position within the placeholder where this placement lies. Placeholders can contain more than one placement.
`CREATION_DATE` | `DATE` | `Not Null` | The date and time the row was created.
`MODIFIED_DATE` | `DATE` | `Not Null` | The date and time the row was last modified. This column's data is maintained using a database trigger.
`PLACEHOLDER_` `DEFINITION_ID` | `NUMBER` | `Not Null` | FK to `PF_PLACEHOLDER_DEFINITION`.
`PORTLET_INSTANCE_ID` | `NUMBER` | `Null` | FK to `PF_PORTLET_INSTANCE`.
BOOK_INSTANCE_ID | NUMBER | `Null` | FK to `PF_BOOK_INSTANCE`.
DESKTOP_INSTANCE_ID | NUMBER | `Null` | FK to `PF_DESKTOP_INSTANCE.` If this placement grouping is an administrator- or end-user-customization, the value is non null and points to the administrator's or user's desktop. If this field is null, it represents the library's view.

### The PF_PORTAL Database Table

This table identifies a `PORTAL` application library resource or template that can be associated with a `DESKTOP` definition.

Table 8-63 PF_PORTAL Table Metadata

Column Name | Data Type | Null Value | Description
--- | --- | --- | ---
`PORTAL_PATH` | `VARCHAR(40)` | `Not Null` | PK—Partial primary key and partial URL to this portal.
`WEBAPP_NAME` | `VARCHAR(80)` | `Not Null` | PK—Name of the J2EE Web application to which the portal resource is scoped.
`CREATION_DATE` | `DATE` | `Not Null` | The date and time the row was created.
`MODIFIED_DATE` | `DATE` | `Not Null` | The date and time the row was last modified. This column's data is maintained using a database trigger.
`INTERSECTION_ID` | `NUMBER` | `Not Null` | FK to `L10N_INTERSECTION`.
`CONTENT_URI` | `VARCHAR(255)` | `Null` | Defines an optional URI to be forwarded to when only the portal portion of the URL is supplied. You can use this URL (JSP or `.portal`) to forward to a default desktop or to display a list of desktops available under this portal.

### The PF_PORTLET_CATEGORY Database Table

This table associates a `PORTLET` `CATEGORY` resource with a `PORTLET` `DEFINITION`.

Table 8-64 PF_PORTLET_CATEGORY Table Metadata

Column Name | Data Type | Null Value | Description
--- | --- | --- | ---
`PORTLET_DEFINITION_ID` | `NUMBER` | `Not Null` | PK—A unique, system-generated number to use as the record ID.
`PORTLET_CATEGORY_ DEFINITION_ID` | `NUMBER` | `Not Null` | FK to `PF_PORTLET_CATEGORY_ DEFINITION`.
`CREATION_DATE` | `DATE` | `Not Null` | The date and time the row was created.
`MODIFIED_DATE` | `DATE` | `Not Null` | The date and time the row was last modified. This column's data is maintained using a database trigger.

### The PF_PORTLET_CATEGORY_DEFINITION Database Table

This table identifies a `PORTLET CATEGORY` and `PORTLET CATEGORY` hierarchy resource or template for association with a `PORTLET` resource.

Table 8-65 PF_PORTLET_CATEGORY_DEFINITION Table Metadata

Column Name | Data Type | Null Value | Description
--- | --- | --- | ---
`PORTLET_CATEGORY_ DEFINITION_ID` | `NUMBER` | `Not Null` | PK—A unique, system-generated number to use as the record ID.
`CREATION_DATE` | `DATE` | `Not Null` | The date and time the row was created.
`MODIFIED_DATE` | `DATE` | `Not Null` | The date and time the row was last modified. This column's data is maintained using a database trigger.
`INTERSECTION_ID` | `NUMBER` | `Not Null` | FK to `L10N_INTERSECTION`.
`WEBAPP_NAME` | `VARCHAR(80)` | `Not Null` | Name of the J2EE Web application to which the portal resource is scoped.
`PARENT_CATEGORY_ DEFINITION_ID` | `NUMBER` | `Null` | FK to `PF_PORTLET_CATEGORY_ DEFINITION` that identifies the parent portlet category. NULL if this is a top level category.

### The PF_PORTLET_DEFINITION Database Table

This table identifies the characteristics of a `PORTLET` library resource or template that can used as the user interfaces for a web application.

Table 8-66 PF_PORTLET_DEFINITION Table Metadata

Column Name | Data Type | Null Value | Description
--- | --- | --- | ---
`PORTLET_DEFINITION_ID` | `NUMBER` | `Not Null` | PK—A unique, system-generated number to use as the record ID.
`MARKUP_DEFINITION_ID` | `NUMBER` | `Not Null` | FK to `PF_MARKUP_DEFINITION`.
`IS_PUBLIC` | `NUMBER` | `Not Null` | A boolean indicating that the portlet definition is public. Only public portlet definitions are ever exposed to "visitors."
`IS_FORKABLE` | `NUMBER` | `Not Null` | A boolean indicating that the portlet supports multi-threading.
FORK_RENDER | `NUMBER` | `Not Null` | A boolean indicating whether multi-threading is being used for this portlet; this value can be true only if `IS_FORKABLE` is true.
IS_CACHEABLE | `NUMBER` | `Not Null` | A boolean indicating whether this portlet can use render caching.
CACHE_EXPIRES | `NUMBER` | `Not Null` | Indicates whether this portlet is using caching and if so, gives the ttl: -1 indicates off; 0..n indicates a ttl for the cache. Can have a value other than -1 only if `IS_CACHEABLE` is true.
IS_PORTLET_FILE_DELETED | `NUMBER` | `Not Null` | A boolean that indicates whether the `PORTLET_FILE` associated with this object has been removed from the file system. This flag is set to true only when the `.portlet` file is deleted and the portlet is still in use. You can either return the `.portlet` file and this flag is automatically reset, or remove the portlet in the WebLogic Administration Portal.
CREATION_DATE | `DATE` | `Not Null` | The date and time the row was created.
MODIFIED_DATE | `DATE` | `Not Null` | The date and time the row was last modified. This column's data is maintained using a database trigger.
PORTLET_LABEL | `VARCHAR(80)` | `Not Null` | A moniker used to reference this portal resource for development purposes.
WEBAPP_NAME | `VARCHAR(80)` | `Not Null` | Name of the J2EE Web application to which the portal resource is scoped.
CONTENT_URI | `VARCHAR(255)` | `Not Null` | The content URI for this portlet (JSP, HTML). This value can be null for Java (JSR168) portlets.
EDIT_URI | `VARCHAR(255)` | `Null` | The Edit mode URI (JSP) for this portlet (if the portlet supports edit mode).
HELP_URI | `VARCHAR(255)` | `Null` | The Help mode URI (JSP) for this portlet (if the portlet supports help mode).
BACKING_FILE | `VARCHAR(255)` | `Null` | The optional backing file (Java class name) for this portlet. Backing classes must implement JspBacking or extend AbstractJspBacking.
PORTLET_FILE | `VARCHAR(255)` | `Null` | The (`*.portlet`) file describing the controls that make up the portlet.

### The PF_PORTLET_INSTANCE Database Table

This table identifies a customized or localized instance of a portlet.

Table 8-67 PF_PORTLET_INSTANCE Table Metadata

Column Name | Data Type | Null Value | Description
--- | --- | --- | ---
`PORTLET_INSTANCE_ID` | `NUMBER` | `Not Null` | PK—A unique, system-generated number to use as the record ID.
`PORTLET_DEFINITION_ID` | `NUMBER` | `Not Null` | FK to `PF_PORTLET_DEFINITION`.
`DEFAULT_MINIMIZED` | `NUMBER` | `Not Null` | A boolean that indicates whether the portlet is to be displayed in the minimized state by default.
`INSTANCE_TYPE` | `NUMBER` | `Not Null` | Type codes for the portlet instance. Valid values: 1=Primary, 3=Admin, 4=User.
CREATION_DATE | `DATE` | `Not Null` | The date and time the row was created.
MODIFIED_DATE | `DATE` | `Not Null` | The date and time the row was last modified. This column's data is maintained using a database trigger.
TITLE_BAR_ORIENTATION | `NUMBER` | `Null` | A hint to the skeleton file to display this portlet's title bar in either the top, left, right, or bottom location. Not all skeletons may implement this and therefore may not have any effect.
INTERSECTION_ID | `NUMBER` | `Not Null` | FK to `L10N_INTERSECTION`.
PORTLET_LABEL | `VARCHAR(80)` | `Not Null` | A moniker used to reference this portal resource for development purposes.
THEME_DEFINITION_ID | `NUMBER` | `Null` | FK to `PF_THEME_DEFINITION`.
PARENT_PORTLET_ INSTANCE_ID | `NUMBER` | `Null` | FK to `PF_PORTLET_INSTANCE` that identifies the parent portlet instance. the value is null if this is a top-level portlet instance.

## WSRP (Web Services for Remote Portlets) Objects

Figure 8-11 Entity-Relation Diagram for the WSRP Tables

### The PF_CONSUMER_PORTLETS Database Table

The PF_CONSUMER_PORTLETS table associates consumer IDs and portlet instance IDs so that when a consumer de-registers from a producer, the producer can clean up any portlets that it created for the consumer.

Table 8-68 The PF_CONSUMER_PORTLETS Database Table

Column Name | Data Type | Null Value | Description
--- | --- | --- | ---
`CONSUMER_ID` | `NUMBER` | `Not Null` | PK/FK to `PF_PRODUCER_REGISTRY`.
`PORTLET_ID` | `NUMBER` | `Not Null` | PK/FK to `PF_PORTLET_INSTANCE`.

### The PF_CONSUMER_PROPERTIES Database Table

This table contains optional registration properties. You can set up the consumer to ask for these during registration.

Table 8-69 The PF_CONSUMER_PROPERTIES Database Table

Column Name | Data Type | Null Value | Description
--- | --- | --- | ---
`PRODUCER_ID` | `INTEGER` | `Not Null` | PK/FK to `PF_PRODUCER_REGISTRY`.
`PROPERTY_NAME` | `VARCHAR (80)` | `Not Null` | PK—The name of the property.
`CREATION_DATE` | `DATE` | `Not Null` | The date and time the row was created.
`MODIFIED_DATE` | `DATE` | `Not Null` | The date and time the row was modified. The column's data is maintained using a database trigger.
`PROPERTY_VALUE` | `VARCHAR (80)` | Null | The value associated with the property name.

### The PF_CONSUMER_REGISTRY Database Table

This table contains registration handles that are assigned by the producer during registration by a consumer.

Table 8-70 The PF_CONSUMER_REGISTRY Database Table

Column Name | Data Type | Null Value | Description
--- | --- | --- | ---
`PRODUCER_ID` | `INTEGER` | `Not Null` | PK—A unique, system-generated number to use as the record ID.
`WEBAPP_NAME` | `VARCHAR (80)` | `Not Null` | Name of the J2EE Web application (as defined in `config.xml`) to which the portal application is scoped.
`CREATION_DATE` | `DATE` | `Not Null` | The date and time the row was created.
`MODIFIED_DATE` | `DATE` | Not Null | The date and time the row was modified. The column's data is maintained using a database trigger.
`PRODUCER_HANDLE` | `VARCHAR (40)` | Not Null | Uniquely identifies the producer to the consumer.
`SERVICE_DESCRIPTION_PORT_URL` | `VARCHAR (255)` | Not Null | URL to the description service port offered by the producer.
`MARKUP_PORT_URL` | `VARCHAR (255)` | Not Null | URL to the markup service port offered by the producer.
`COOKIE_PROTOCOL` | `SMALLINT` | Not Null | The cookie protocol. Values: 0 = None, 1 = Per User, 2 = Per Group.
`WSDL_URL` | `VARCHAR (255)` | Not Null | URL to the WSDL offered by the producer.
`REQUIRES_REGISTRATION` | `SMALLINT` | Not Null | A boolean indicating that registration is required.
`REGISTRATION_PORT_URL` | `VARCHAR (255)` | Null | URL to the registration service port offered by the producer (if offered).
`PORTLET_MANAGEMENT_PORT_URL` | `VARCHAR (255)` | Null | URL to the portlet management service port offered by the producer (if offered).
`REGISTRATION_HANDLE` | `VARCHAR (255)` | Null | Registration handle returned by the producer after registration.
`VENDOR_NAME` | `VARCHAR (255)` | Null | Name of the vendor of the producer implementation.
`DESCRIPTION` | `VARCHAR (255)` | Null | A description of the portlet.
`REGISTRATION_STATE` | `BLOB` | Null | Registration state returned by the producer after registration.

### The PF_PRODUCER_PROPERTIES Database Table

This table contains optional registration properties. The producer might be asked for these during registration.

Table 8-71 The PF_PRODUCER_PROPERTIES Database Table

Column Name | Data Type | Null Value | Description
--- | --- | --- | ---
`CONSUMER_ID` | `INTEGER` | Not Null | PK/FK to `PF_CONSUMER_REGISTRY`.
`PROPERTY_NAME` | `VARCHAR (80)` | Not Null | PK—The name of the property.
`CREATION_DATE` | `DATE` | Not Null | The date and time the row was created.
`MODIFIED_DATE` | `DATE` | Not Null | The date and time the row was modified. This column's data is maintained using a database trigger.
`PROPERTY_VALUE` | `VARCHAR (80)` | Null | The value associated with the `PROPERTY_NAME`.

### The PF_PRODUCER_REGISTRY Database Table

This table contains producer-generated registration handles stored for each consumer during registration.

Table 8-72 The PF_PRODUCER_REGISTRY Database Table

Column Name | Data Type | Null Value | Description
--- | --- | --- | ---
`CONSUMER_ID` | `INTEGER` | Not Null | A unique system-generated number to use as the record ID.
`WEBAPP_NAME` | `VARCHAR (80)` | Not Null | Name of the J2EE Web application to which the portal application is scoped.
`CREATION_DATE` | `DATE` | Not Null | The date and time the row was created.
`MODIFIED_DATE` | `DATE` | Not Null | The date and time the row was modified. This column's data is maintained using a database trigger.
`CONSUMER_NAME` | `VARCHAR (80)` | Null | A unique name that identifies the consumer. For the producer to assert user identity, the consumer name must correspond to the alias of the consumer's public key deployed in the producer's key store.
`CONSUMER_AGENT` | `VARCHAR (80)` | Null | Name and version of the consumer's vendor. The value must start with `productName.majorVersion.minorVersion` where `productName` identifies the product that the consumer installed for its deployment, and `majorVersion` and `minorVersion` are vendor-defined indications of the version of its product.

### The PF_PROXY_PORTLET_INSTANCE Database Table

The consumer manages remote portlet-specific data from here. The framework inserts data into this table whenever a proxy portlet instance is created (including successors). When portlet instances are deleted, the `IS_SET_FOR_DESTROY` flag is set for subsequent cleanup.

Table 8-73 The PF_PROXY_PORTLET_INSTANCE Database Table

Column Name | Data Type | Null Value | Description
--- | --- | --- | ---
`PROXY_PORTLET_ INSTANCE_ID` | `INTEGER` | Not Null | A unique system-generated number to use as the record ID.
`PRODUCER_ID` | `INTEGER` | Not Null | FK to `PF_CONSUMER_REGISTRY`.
`CREATED_DATE` | `DATE` | Not Null | The date and time the row was created.
`MODIFIED_DATE` | `DATE` | Not Null | The date and time the row was modified. This column's data is maintained using a database trigger.
`REQUIRES_URL_TEMPLATES` | `SMALLINT` | Not Null | A boolean indicating that URL templates are required by the producer.
`TEMPLATES_STORED_IN_ SESSION` | `SMALLINT` | Not Null | A boolean indicating whether the consumer should send templates with every request. The default is 1 = True.
`PORTLET_STATE_CHANGE` | `SMALLINT` | Not Null | A flag that indicates how the consumer handles customizations of remote portlets. Based on the value of this flag, the consumer may clone remote portlets. Valid values include: 0 = Readonly (default) 1 = CBW(CloneBeforeWrite) 2 = Read/Write.
`IS_PRODUCER_OFFERED` | `NUMBER` | Not Null | Identifies the portlet as producer-offered. The defaults is 1 = True. If `IS_PRODUCER_OFFERED` is True, and the `PORTLET_INSTANCE_ID` is null, this `PF_PROXY_PORTLET_INSTANCE` is removed from the database during data cleanup processing.
`PORTLET_INSTANCE_ID` | `INTEGER` | Null | FK to `PF_PORTLET_INSTANCE` for the proxy portlet. If the associated `PF_PORTLET_INSTANCE` row is deleted, the value of this column is set to null.
`PORTLET_HANDLE` | `VARCHAR (255)` | Null | The handle to the remote portlet as it is specified by the producer. The consumer uses portlet handles throughout the communication to address and interact with portlets using the producer.
`DELETE_ERROR_CAUSE` | `VARCHAR (255)` | Null | A description of the cause of the error, if an error is encountered while trying to delete the counter part of this proxy portlet on the producer.
`PORTLET_STATE` | `BLOB` | Null | Portlet state as returned by the producer after implicit/explicit cloning.

### The PF_PORTLET_PREFERENCE Database Table

This table identifies preference values for the portlet instance.

Table 8-74 PF_PORTLET_PREFERENCE Table Metadata

Column Name | Data Type | Null Value | Description
--- | --- | --- | ---
`PORTLET_INSTANCE_ID` | `NUMBER` | Not Null | PK—A unique, system-generated number to use as the record ID.
`PREFERENCE_NAME` | `VARCHAR(40)` | Not Null | An optional name associated with the preference values.
`CREATION_DATE` | `DATE` | Not Null | The date and time the row was created.
`MODIFIED_DATE` | `DATE` | Not Null | The date and time the row was last modified. This column's data is maintained using a database trigger.
IS_MODIFIABLE | `NUMBER` | Not Null | A boolean, indicating whether the name/value of this preference can be modified by portlets.
IS_MULTIVALUED | `NUMBER` | Not Null | A boolean, indicating whether a preference can have more than one value.
PREFERENCE_DESCRIPTION | `VARCHAR(255)` | Null | An optional description of the portlet preferences.

### The PF_PORTLET_PREFERENCE_VALUE Database Table

This table maintains values of portlet preferences. There is a one-to-many correspondence between the records in the PF_PORTLET_PREFERENCE table and this table.

Table 8-75 PF_PORTLET_PREFERENCE_VALUE Table Metadata

Column Name | Data Type | Null Value | Description
--- | --- | --- | ---
`PORTLET_PREFERENCE_ VALUE_ID` | `NUMBER` | `Not Null` | PK—A unique, system-generated number to use as the record ID.
`PORTLET_INSTANCE_ID` | `NUMBER` | `Not Null` | FK to `PF_PORTLET_PREFERENCE`.
`PREFERENCE_NAME` | `VARCHAR(40)` | `Not Null` | FK to `PF_PORTLET_PREFERENCE`.
`CREATION_DATE` | `DATE` | `Not Null` | The date and time the row was created.
MODIFIED_DATE | `DATE` | `Not Null` | The date and time the row was last modified. This column's data is maintained using a database trigger.
PREFERENCE_VALUE | `VARCHAR(255)` | `Null` | The actual value for this preference.

### The PF_SHELL_DEFINITION Database Table

This table represents a shell definition. There is a one-to-one correspondence between records in this table and .shell files.

Table 8-76 PF_SHELL_DEFINITION Table Metadata

Column Name | Data Type | Null Value | Description
--- | --- | --- | ---
`SHELL_DEFINITION_ID` | `NUMBER` | `Not Null` | PK—A unique, system-generated number to use as the record ID.
`MARKUP_DEFINITION_ID` | `NUMBER` | `Not Null` | FK to `PF_MARKUP_DEFINITION`.
`CREATION_DATE` | `DATE` | `Not Null` | The date and time the row was created.
`MODIFIED_DATE` | `DATE` | `Not Null` | The date and time the row was last modified. This column's data is maintained using a database trigger.
INTERSECTION_ID | `NUMBER` | `Not Null` | FK to `L10N_INTERSECTION`.
WEBAPP_NAME | `VARCHAR(80)` | `Not Null` | Name of the J2EE Web application to which the portal resource is scoped.
IS_SHELL_FILE_DELETED | `NUMBER` | `Not Null` | A boolean indicating that the file associated with this shell was removed from the file system. If the shell is not being used, then the record is deleted outright. This flag is set to true only when the .shell file is deleted and the shell is still in use. You can either return the `.shell` file and this flag is automatically reset, or remove the shell with a replacement in the WebLogic Administration Portal.
SHELL_FILE | VARCHAR(255) | `Not Null` | The name of the `.shell` file contained in the application's `framework/markup/shell` directory backing this shell definition.

### The PF_THEME_DEFINITION Database Table

This table represents a theme definition. There is a one-to-one correspondence between records in this table and `.theme` files.

Table 8-77 PF_THEME_DEFINITION Table Metadata

Column Name | Data Type | Null Value | Description
--- | --- | --- | ---
`THEME_DEFINITION_ID` | `NUMBER` | `Not Null` | PK—A unique, system-generated number to use as the record ID.
`CREATION_DATE` | `DATE` | `Not Null` | The date and time the row was created.
`MODIFIED_DATE` | `DATE` | `Not Null` | The date and time the row was last modified. This column's data is maintained using a database trigger.
`INTERSECTION_ID` | `NUMBER` | `Not Null` | FK to `L10N_INTERSECTION`.
MARKUP_DEFINITION_ID | `NUMBER` | `Not Null` | `FK to PF_MARKUP_DEFINITION`.
WEBAPP_NAME | `VARCHAR(80)` | `Not Null` | Name of the J2EE Web application to which the portal resource is scoped.
IS_THEME_FILE_DELETED | `NUMBER` | `Not Null` | A boolean indicating that the file associated with this theme was removed from the file system. If the theme is not being used, then the record is deleted outright. This flag is set to true only when the `.theme` file is deleted and the theme is still in use. You can either return the `.theme` file and this flag is automatically reset, or remove the theme using the WebLogic Administration Portal.
THEME_FILE | `VARCHAR(255)` | `Not Null` | The name of the `.theme` file contained in the application's framework/markup/theme directory backing this theme definition.

# Content Management Database Objects

Figure 8-12 shows the logical entity-relation diagram for the WebLogic Portal Content Management tables.

Figure 8-12 Entity-Relation Diagram for the Content Management Tables

## The Content Management Data Dictionary Tables

The Content Management system has the following tables:

- The CM_NODE Database Table
- The CM_OBJECT_CLASS Database Table
- The CM_PROPERTY Database Table
- The CM_PROPERTY_CHOICE Database Table
- The CM_PROPERTY_DEFINITION Database Table

### The CM_NODE Database Table

In the `CM_NODE` table, a node represents an element in a hierarchy that can either be a "Hierarchy Node" or a "Content Node." A hierarchy node can contain both other hierarchy and content nodes while a content node can contain only other content nodes. Nodes can contain properties based on the `ObjectClass` (schema) defined for it.

Both Content Nodes and Hierarchy Nodes can contain an ObjectClass and properties. Each node has a path that uniquely identifies it within the repository.

Table 8-78 CM_NODE Table Metadata

Column Name | Data Type | Null Value | Description
--- | --- | --- | ---
`NODE_ID` | `NUMBER` | `Not Null` | PK—A unique, system-generated number to use as the record ID.
`PARENT_NODE_ID` | `NUMBER` | `Null` | FK—The node's parent record `ID` (`NODE_ID`).
`CREATION_DATE` | `DATE` | `Not Null` | The date and time the row was created.
`MODIFIED_DATE` | `DATE` | `Not Null` | The date and time the row was last modified. This column's data is maintained using a database trigger.
OBJECT_CLASS_ID | `NUMBER` | `Null` | FK—The object class `ID` associated to the node.
NODE_NAME | `VARCHAR(50)` | `Not Null` | The name of the node. The name is unique relative to its siblings. The name must not contain forward or backward slashes.
NODE_TYPE | `NUMBER` | `Not Null` | The node type. Either `1` for Hierarchy Node or `2` for Content Node.
NODE_STATUS | VARCHAR(40) | `Null` | The status of the node. The available values are defined by the application as property definition choices.
CREATED_BY | VARCHAR(100) | `Not Null` | The ID of the user that created the node.
MODIFIED_BY | VARCHAR(100) | `Null` | The ID of the user that last modified the node.
CM_CREATION_DATE | DATE | `Not Null` | The date and time the row was created. Maintained by the application.
CM_MODIFIED_DATE | DATE | `Not Null` | The date and time the row was last modified. Maintained by the application.
FULL_PATH | VARCHAR(254) | `Null` | AK—Each node has a path that uniquely identifies it within the repository. The path is defined in a UNIX-like format such as /a/b/c where "/" is the root and "a" ("a" is the Nodes `NODE_NAME`) is the root's child. The path must always begin with "/" and never end with it. So neither of the following are valid: a/b/c/d or /a/b/d/d/.
LIFECYCLE_STATUS | INTEGER | `Null` | The specific lifecycle status that the node version has been assigned:

### The CM_OBJECT_CLASS Database Table

The ObjectClass is the schema for a Node. It has both an ID and a name that uniquely identifies it within a content repository. An ObjectClass can have PropertyDefinitions associated with it that define the shape of Properties required for a Node. This does not mean that the Property must contain a value, but simply that the Property must exist for the Node.

The ObjectClass may have a primary PropertyDefinition that defines the primary content Property for a Node. This allows for the definition of content in the schema since the schema does not distinguish between content and meta-content. A Node is considered valid in the repository only if its Properties conform to its ObjectClass PropertyDefinitions.

Table 8-79 CM_OBJECT_CLASS Table Metadata

Column Name | Data Type | Null Value | Description
--- | --- | --- | ---
`OBJECT_CLASS_ID` | `NUMBER` | `Not Null` | PK—A unique, system-generated number to use as the record ID.
`CREATION_DATE` | `DATE` | `Not Null` | The date and time the row was created.
`MODIFIED_DATE` | `DATE` | `Not Null` | The date and time the row was last modified. This column's data is maintained using a database trigger.
`OBJECT_CLASS_NAME` | `VARCHAR(100)` | `Not Null` | AK—A unique name for the object class.
PRIMARY_PROPERTY_ DEFINITION_ID | `NUMBER` | `Null` | FK—The `PROPERTY_DEFINITION_ID` for the primary `CM_PROPERTY_ DEFINITION` table row that defines the content for a node associated to the object class.

### The CM_PROPERTY Database Table

The `CM_PROPERTY` table identifies a property. The property consists of a name value pair; the name is unique relative to the `CM_NODE,` and the value is either a Date, `BLOB`, Boolean, Number, Float, or Varchar.

Only one value should be set on a given row; if the value is a `BLOB`, then all of the `BLOB_` columns can be set. If the `IS_MULTIVALUED` column is set to 1, then there will be multiple rows with the same property name and same `NODE_ID`. A property can represent both the content and meta-content for a Node.

Table 8-80 CM_PROPERTY Table Metadata

Column Name | Data Type | Null Value | Description
--- | --- | --- | ---
`PROPERTY_ID` | `NUMBER` | `Not Null` | PK—A unique, system-generated number to use as the record ID.
`CREATION_DATE` | `DATE` | `Not Null` | The date and time the row was created.
`MODIFIED_DATE` | `DATE` | Not Null | The date and time the row was last modified. This column's data is maintained using a database trigger.
`NODE_ID` | `NUMBER` | Not Null | FK—The ID of the node that contains the property.
PROPERTY_NAME | `VARCHAR(100)` | Not Null | The name of the property. It must be unique relative to its node.
PROPERTY_TYPE | `NUMBER` | Not Null | The type of the property: BOOLEAN = 0; NUMBER = 1; FLOAT = 2; VARCHAR = 3; DATE = 4; BLOB = 5.
PROPERTY_DEFINITION_ID | `NUMBER` | Null | FK—The ID of the property definition to which this property must conform.
BOOLEAN_VALUE | NUMBER | Null | True (1) for the Property if the `PROPERTY_TYPE` is Boolean (`PROPERTY_TYPE=0`).
DATETIME_VALUE | DATE | Null | The datetime value for the Property if the `PROPERTY_TYPE` is `DATE` (`PROPERTY_TYPE=4`).
LONG_VALUE | NUMBER | Null | The long number or integer value for the Property if the `PROPERTY_TYPE` is `NUMBER(PROPERTY_TYPE=1)`.
DOUBLE_VALUE | FLOAT | Null | The floating point decimal number value for the Property if the `PROPERTY_TYPE` is `FLOAT(PROPERTY_TYPE=2)`.
TEXT_VALUE | VARCHAR(254) | Null | The textual property value for the Property if the `PROPERTY_TYPE` is `VARCHAR(PROPERTY_TYPE=3)`.
BLOB_VALUE | BLOB | Null | The binary large object for the Property if the `PROPERTY_TYPE` is `BLOB(PROPERTY_TYPE=5)`.
BLOB_FILE_NAME | VARCHAR(50) | Null | The name of the file associated with the `BLOB_VALUE`.
BLOB_FILE_SIZE | NUMBER | `Null` | The size of the file in bytes associated with the `BLOB_VALUE`.
BLOB_CONTENT_TYPE | VARCHAR(100) | `Null` | The content type (mime type and characterset) for the `BLOB_VALUE`. For example: "text/html;charset=iso8859-1"

### The CM_PROPERTY_CHOICE Database Table

This table identifies the valid values or choices for a PropertyDefinition (row in the `CM_PROPERTY_DEFINITION` table). A property choice can identify a default choice `(DEFAULT_PROERTY=1)`; if the creator of a Property does not choose different values, it is set as a Property value.

If the `PropertyChoice` value is defined as `NULL` (no value is supplied for the `PROPERTY_TYPE`), it allows for an empty choice. For example, a Property that has a String type (or `TEXT_VALUE`) could have three PropertyChoices - "blue," "red," "*," and null.

Table 8-81 CM_PROPERTY_CHOICE Table Metadata

Column Name | Data Type | Null Value | Description
--- | --- | --- | ---
PROPERTY_CHOICE_ID | NUMBER | `Not Null` | PK—A unique, system-generated number to use as the record ID.
`CREATION_DATE` | DATE | `Not Null` | The date and time the row was created.
MODIFIED_DATE | DATE | `Not Null` | The date and time the row was last modified. This column's data is maintained using a database trigger.
PROPERTY_DEFINITION_ID | NUMBER | `Not Null` | FK—The ID of the property definition that contains the property choice.
DEFAULT_PROPERTY | NUMBER | `Not Null` | Set to `1` if the property choice is a default, or `0` if it is not.
BOOLEAN_VALUE | NUMBER | `Null` | True (1) for the Property if the `PROPERTY_TYPE` is `BOOLEAN (PROPERTY_TYPE=0)`.
DATETIME_VALUE | DATE | `Null` | The date/time value for the Property if the `PROPERTY_TYPE` is `DATE (PROPERTY_TYPE=4)`.
LONG_VALUE | NUMBER | `Null` | The long number or integer value for the Property if the `PROPERTY_TYPE` is `NUMBER(PROPERTY_TYPE=1)`.
DOUBLE_VALUE | FLOAT | `Null` | The floating point decimal number value for the Property if the `PROPERTY_TYPE` is `FLOAT(PROPERTY_TYPE=2)`.
TEXT_VALUE | VARCHAR(254) | `Null` | The textual property value for the Property if the `PROPERTY_TYPE` is `VARCHAR(PROPERTY_TYPE=3)`.
BLOB_VALUE | BLOB | `Null` | The binary large object for the Property if the `PROPERTY_TYPE` is `BLOB(PROPERTY_TYPE=5).`
BLOB_FILE_NAME | VARCHAR(50) | `Null` | The name of the file associated with the `BLOB_VALUE`.
BLOB_FILE_SIZE | NUMBER | `Null` | The size of the file in bytes associated with the `BLOB_VALUE`.
BLOB_CONTENT_TYPE | VARCHAR(100) | `Null` | The content type (mime type and characterset) for the `BLOB_VALUE`. For example: "text/html;charset=iso8859-1"

### The CM_PROPERTY_DEFINITION Database Table

The `PropertyDefinition` table defines the shape of a property. It describes the property type (BLOB, Boolean, Varchar, Float, Date, Number), whether it is required, whether it is editable, the default value, and restricted values, if applicable. A `PropertyDefinition` can have 0..n PropertyChoices.

This is a list of values that you can select for a Property's values. Rules for a `PropertyDefinition` are as follows:

- If the `PropertyDefinition` contains a reference, it cannot be multi-valued or binary.
- If the `PropertyDefinition` is binary, it cannot be multi-valued or restricted and can have only one PropertyChoice.
- If the `PropertyDefinition` is boolean, it cannot be multi-valued. If the `PropertyDefinition` is restricted, then the Property's value(s) must be contained in the `PropertyChoice` list, or be null.

For example: consider a PropertyDefinition named "color". It has PropertyChoices "blue," "green," and "red". If the PropertyDefinition is restricted then the value of a Property defined by this PropertyDefinition cannot have a value that isn't "green," "red," "blue," or null.

Table 8-82 CM_PROPERTY_DEFINITION Table Metadata

Column Name | Data Type | Null Value | Description
--- | --- | --- | ---
PROPERTY_DEFINITION_ID | NUMBER | Not Null | PK—A unique, system-generated number to use as the record ID.
`CREATION_DATE` | DATE | Not Null | The date and time the row was created.
MODIFIED_DATE | DATE | Not Null | The date and time the row was last modified. This column's data is maintained using a database trigger.
OBJECT_CLASS_ID | NUMBER | Not Null | `FK-The OBJECT_CLASS_ID` of the property definitions `CM_OBJECT_CLASS`.
PROPERTY_NAME | VARCHAR(100) | Not Null | The name associated with the property definition. The combination of `PROPERTY_NAME` and `OBJECT_ CLASS_ID` for an Alternate Key for the `CM_PROPERTY_DEFINITION` table.
PROPERTY_TYPE | NUMBER | Not Null | The type of the property: BOOLEAN = 0; NUMBER = 1; FLOAT = 2; VARCHAR = 3; DATE = 4; BLOB = 5.
IS_MANDATORY | NUMBER | Not Null | True if the value of a property must be set.
IS_READ_ONLY | NUMBER | Not Null | True if the value of a property should not be set by an end user.
IS_RESTRICTED | NUMBER | Not Null | True if the value of a property should come from the property choice values.
IS_MULTI_VALUED | NUMBER | Not Null | True if there can be multiple rows with the same property name, `node_id`, but different property IDs.
COLUMN_NAME | VARCHAR(30) | Null | The name of a column added to the `CM_NODE` table that defines an explicit property.
DESCRIPTION | VARCHAR(254) | Null | A description of the property definition.

# Content Management Virtual Database Objects

Figure 8-13 shows the logical entity-relation diagram for the WebLogic Portal Content Management tables.

Figure 8-13 Entity-Relation Diagram for the Content Management Virtual Tables

## The CMV_NODE Table

This table uniquely identifies a content-managed node from a BEA repository (that is, CM_NODE table) that has been versioned and is being edited within the Content Management Virtual Repository.

Table 8-83 The CMV_NODE Table

Column Name | Data Type | Null Value | Description
--- | --- | --- | ---
`NODE_ID` | `VARCHAR (254)` | `Not Null` | PK—A unique, system-generated number to use as the record ID.
`REPOSITORY_NAME` | `VARCHAR (254)` | `Not Null` | The name of the repository where the node was created and published.
`IS_LOCKED` | `SMALLINT` | `Not Null` | Flag to determine if the record is locked.
`OBJECT_CLASS_ID` | `VARCHAR (254)` | `Not Null` | The object class ID that is associated with the node.
OBJECT_CLASS_ID | `NUMBER` | `Null` | FK—The object class `ID` associated to the node.
ASSIGNED_TO_USER_NAME | `VARCHAR(200)` | `Null` | Username to which the node is assigned.

## The CMV_NODE_ASSIGNED_ROLE Table

This table uniquely identifies all roles for a given node that have authorization to view or alter the node.

Table 8-84 The CMV_NODE_ASSIGNED_ROLE Table

Column Name | Data Type | Null Value | Description
--- | --- | --- | ---
`NODE_ID` | `VARCHAR (254)` | `Not Null` | PK/FK—the ID of the node that roles are associated with. Foreign key relationship to CMV_NODE table.
`ROLE_NAME` | `VARCHAR (254)` | `Not Null` | PK—the name of the role.

## The CMV_NODE_VERSION Table

This table uniquely identifies all the versions of a mode within the Content Management Virtual Repository.

Table 8-85 The CMV_NODE_VERSION Table

Column Name | Data Type | Null Value | Description
--- | --- | --- | ---
`NODE_ID` | `VARCHAR (254)` | `Not Null` | PK/FK—the ID of the node for which versions have been created. Foreign key relationship to CMV_NODE table.
`NODE_VERSION_ID` | `VARCHAR (254)` | `Not Null` | PK—the unique version ID for the node.
`CM_MODIFIED_DATE` | DATE | `Not Null` | Date the node version was last edited.
`MODIFIED_BY` | VARCHAR (254) | `Not Null` | Username of the person who last edited the node version.
`VERSION_COMMENT` | VARCHAR (254) | `Not Null` | Comment added to a node version when saving.
`LIFECYCLE_STATUS` | INTEGER | `Null` | Specific lifecycle status that the node version has been assigned (for example, In Progress, Published, and so on).

## The CMV_PROPERTY Table

This table uniquely identifies a property that can be associated with a node version. For example, some properties of a book might be author, title, and subject.

Table 8-86 The CMV_PROPERTY Table

Column Name | Data Type | Null Value | Description
--- | --- | --- | ---
`PROPERTY_ID` | `VARCHAR (254)` | `Not Null` | PK—A unique, system-generated number to use as the record ID.
`CREATION_DATE` | `DATE` | `Not Null` | The date and time the row was created.
`MODIFIED_DATE` | DATE | `Not Null` | Date and time the row was last modified. This column's data is maintained using a database trigger.
`PROPERTY_NAME` | VARCHAR (100) | `Not Null` | The name of the property. It must be unique relative to its node.
`PROPERTY_TYPE` | SMALLINT | `Not Null` | The type of the property: BOOLEAN = 0 NUMBER = 1 FLOAT = 2 VARCHAR = 3 DATE = 4 BLOB = 5.

## The CMV_VALUE Table

This table uniquely identifies a value for a given property. For example, a property `SUBJECT` for a `BOOK` might have a value of `FINANCE`.

Only one value is set on a given record. If the value is `BLOB`, then all the `BLOB_` columns can be set.

Table 8-87 The CMV_VALUE Table

Column Name | Data Type | Null Value | Description
--- | --- | --- | ---
`PROPERTY_ID` | `VARCHAR (254)` | `Not Null` | PK/FK—ID of the property with which the values are associated. Foreign key relationship to CMV_PROPERTY.
`VALUE_ID` | `VARCHAR (254)` | `Not Null` | PK—A unique, system-generated number to use as the value ID.
`CREATION_DATE` | DATE | Not Null | The date and time the row was created Date and time the row was last modified. This column's data is maintained using a database trigger.
`MODIFIED_DATE` | DATE | Not Null | Date and time the row was last modified. This column's data is maintained using a database trigger.
`BOOLEAN_VALUE` | SMALLINT | Not Null | Flag to determine if property is a Boolean value: 1= True, 0 = False.
`DATETIME_VALUE` | DATE | Null | The datetime value for the property if the PROPERTY_TYPE is DATE.
`LONG_VALUE` | NUMERIC (20) | Null | The long number or integer value for the property if the PROPERTY_TYPE is NUMBER.
`DOUBLE_VALUE` | FLOAT | Null | The floating point decimal number value for the property value if the PROPERTY_TYPE is FLOAT.
`TEXT_VALUE` | VARCHAR (254) | Null | The textual property value if the PROPERTY_TYPE is VARCHAR.
`BLOB_VALUE` | BLOB | Null | The binary large object for the property value if the PROPERTY_TYPE is BLOB.
`BLOB_FILE_NAME` | VARCHAR (50) | Null | The name of the file associated with BLOB_VALUE.
`BLOB_FILE_SIZE` | INTEGER | Null | The size of the file (in bytes) associated with BLOB_VALUE.
`BLOB_CONTENT_TYPE` | VARCHAR (100) | Null | The content type (MIME and character set) for the BLOB_VALUE. For example: "text/html;charset=iso8859-1"

## The CMV_NODE_VERSION_PROPERTY Table

This table uniquely identifies a relationship between a CMV_NODE_VERSION and CMV_PROPERTY.

Table 8-88 The CMV_NODE_VERSION_PROPERTY Table

Column Name | Data Type | Null Value | Description
--- | --- | --- | ---
`NODE_ID` | `VARCHAR (254)` | `Not Null` | PK/FK—ID of the node with which the properties are associated. Foreign key relationship to CMV_NODE_VERSION.
`NODE_VERSION_ID` | `VARCHAR (254)` | `Not Null` | PK/FK—ID of the node version with which the properties are associated. Foreign key relationship to CMV_NODE_VERSION.
`PROPERTY_ID` | VARCHAR (254) | `Not Null` | PK/FK—ID of the property with which the node versions are associated. Foreign key relationship to CMV_PROPERTY.

# Localization Database Objects

This section documents the database objects for the WebLogic Portal package. Figure 8-14 shows the entity-relation diagram for the WebLogic Portal Localization database objects.

Figure 8-14 Entity-Relation Diagram for the Localization Tables

## The Localization Dictionary Tables

The following tables support localization:

- The L10N_INTERSECTION Database Table
- The L10N_LOCALE Database Table
- The L10N_RESOURCE Database Table
- The L10N_RESOURCE_TYPE Database Table

### The L10N_INTERSECTION Database Table

This table is used to tie an application resource (menu, portlet, and so on) to a localized title and description.

Table 8-89 L10N_INTERSECTION Table Metadata

Column Name | Data Type | Null Value | Description
--- | --- | --- | ---
INTERSECTION_ID | NUMBER | `Not Null` | PK—A unique, system-generated number to use as the record ID.
`CREATION_DATE` | DATE | `Not Null` | The date and time the row was created.
MODIFIED_DATE | DATE | `Not Null` | The date and time the row was last modified. This column's data is maintained using a database trigger.
RESOURCE_TYPE | VARCHAR(80) | `Not Null` | FK to `L10N_RESOURCE_TYPE.`

### The L10N_LOCALE Database Table

This table defines the characteristics of a locale that are needed to localize an application.

Table 8-90 L10N_LOCALE Table Metadata

Column Name | Data Type | Null Value | Description
--- | --- | --- | ---
LOCALE_ID | NUMBER | `Not Null` | PK—A unique, system-generated number to use as the record ID.
`CREATION_DATE` | DATE | `Not Null` | The date and time the row was created.
MODIFIED_DATE | DATE | `Not Null` | The date and time the row was last modified. This column's data is maintained using a database trigger.
ENCODING | VARCHAR(20) | `Not Null` | The encoding that is used by the locale. The default encoding is UTF-8.
LANGUAGE | CHAR(2) | `Not Null` | Lowercase two-letter ISO-639 language code that is used by the locale; for example, en, au.
COUNTRY | CHAR(2) | `Null` | Uppercase two-letter ISO-3166 country code that is used by the locale; for example, US, UK.
VARIANT | VARCHAR(40) | `Null` | Vendor- and browser-specific code variant code that is used by the locale; for example, WIN, MAC, UNIX.

### The L10N_RESOURCE Database Table

This table is used to define the localized title and description of a localized resource.

Table 8-91 L10N_RESOURCE Table Metadata

Column Name | Data Type | Null Value | Description
--- | --- | --- | ---
LOCALE_ID | NUMBER | `Not Null` | PK and FK to `L10N_LOCALE.`
`INTERSECTION_ID` | NUMBER | `Not Null` | PK and FK to `L10N_INTERSECTION.`
CREATION_DATE | DATE | `Not Null` | The date and time the row was created.
MODIFIED_DATE | DATE | `Not Null` | The date and time the row was last modified. This column's data is maintained using a database trigger.
TITLE | VARCHAR(80) | `Not Null` | A localized title for the object, typically used for display purposes; for example, the name of the portal or portlet.
DESCRIPTION | VARCHAR(500) | `Null` | A localized description of the object.

### The L10N_RESOURCE_TYPE Database Table

This table is used to define portal resource types for localization.

Table 8-92 L10N_RESOURCE _TYPE Table Metadata

Column Name | Data Type | Null Value | Description
--- | --- | --- | ---
RESOURCE_TYPE | VARCHAR(80) | `Not Null` | PK—Type of resource to be localized; for example, BOOK, DESKTOP, DESKTOP CATEGORY.
`CREATION_DATE` | DATE | `Not Null` | The date and time the row was created.
MODIFIED_DATE | DATE | `Not Null` | The date and time the row was last modified. This column's data is maintained using a database trigger.
APPLICATION_NAME | VARCHAR(100) | `Not Null` | The name of the application to which the resource belongs. `APPLICATION_ NAME` is currently set to `PORTAL` for all types of resources to be localized.

# Tracked Anonymous User Database Objects

This section documents the database objects for the WebLogic Portal package. Figure 8-15 shows the entity-relation diagram for the WebLogic Portal Anonymous User database objects.

Figure 8-15 Entity-Relation Diagram for the Anonymous User Tables

## The Tracked Anonymous User Dictionary Tables

The following tables support tracking of anonymous users:

- The P13N_ANONYMOUS_PROPERTY Database Table
- The P13N_ANONYMOUS_USER Database Table

### The P13N_ANONYMOUS_PROPERTY Database Table

This table is used to store the properties associated with the tracked anonymous user.

Table 8-93 P13N_ANONYMOUS_PROPERTY Table Metadata

Column Name | Data Type | Null Value | Description
--- | --- | --- | ---
ANONYMOUS_PROPERTY_ID | VARCHAR(128) | `Not Null` | PK—A unique, system-generated number to use as the record ID.
`CREATION_DATE` | DATE | `Not Null` | The date and time the row was created.
MODIFIED_DATE | DATE | `Not Null` | The date and time the row was last modified. This column's data is maintained using a database trigger.
PROPERTY_SET_NAME | VARCHAR(100) | `Not Null` | The name of the property set for which the tracked anonymous user data is set.
PROPERTY_NAME | VARCHAR(100) | `Not Null` | The name of the property being tracked for the anonymous user.
ANONYMOUS_USER_ID | VARCHAR(128) | `Not Null` | The foreign key that maps to the primary key of the anonymous user.
PROPERTY_VALUE | LONG RAW | `Not Null` | The value ''. Must implement `java.io.Serializable`.

### The P13N_ANONYMOUS_USER Database Table

This table is used to store the tracked anonymous user data.

Table 8-94 P13N_ANONYMOUS_USER Table Metadata

Column Name | Data Type | Null Value | Description
--- | --- | --- | ---
ANONYMOUS_USER_ID | VARCHAR(128) | `Not Null` | The foreign key that maps to the primary key of the anonymous user.
CREATION_DATE | DATE | `Not Null` | The date and time the row was created.
MODIFIED_DATE | DATE | `Not Null` | The date and time the row was last modified. This column's data is maintained using a database trigger.
LAST_VISIT_DATE | DATE | `Null` | Date when the tracked anonymous user last updated the data.

# Entitlement Reference Database Objects

This section documents the database objects for the WebLogic Portal package. Figure 8-16 shows the entity-relation diagram for the WebLogic Portal Entitlement Reference database objects.

Figure 8-16 Entity-Relation Diagram for the Entitlement Reference Tables

## The Entitlement Reference Dictionary Tables

The following tables are used by the Administration Portal to maintain security policy reference data as policies are created, edited, and deleted. These tables allow efficient searching for policies given a role name, resource ID web application name, and so on. The Entitlement Policy system has the following tables:

- The P13N_ENTITLEMENT_APPLICATION Database Table
- The P13N_ENTITLEMENT_POLICY Database Table
- The P13N_ENTITLEMENT_RESOURCE Database Table
- The P13N_ENTITLEMENT_ROLE Database Table
- The P13N_DELEGATED_HIERARCHY Database Table

### The P13N_ENTITLEMENT_APPLICATION Database Table

This table is used to uniquely identify an application for which entitlements can be applied.

Table 8-95 P13N_ENTITLEMENT_APPLICATION Table Metadata

Column Name | Data Type | Null Value | Description
--- | --- | --- | ---
ENTITLEMENT_APP_ID | NUMBER(15) | `Not Null` | PK—A unique, system-generated number to use as the record ID.
`ENTAPP_NAME` | `VARCHAR(255)` | `Not Null` | The name of the enterprise application.
WEBAPP_NAME | `VARCHAR(255)` | `Null` | The name of the web application.
ENTITLEMENT_APP_DESCRIPTION | VARCHAR(255) | `Null` | The description of the enterprise application.
CREATION_DATE | DATE | `Not Null` | The date and time the record was created; the default is the current time stamp.
MODIFIED_DATE | DATE | `Not Null` | The date and time the record was last modified; the default is the current time stamp.

### The P13N_ENTITLEMENT_POLICY Database Table

This table is used to uniquely identify an entitlement policy. An entitlement policy is created when an entitlement role is associated with an entitlement resource and capability.

Table 8-96 P13N_ENTITLEMENT_POLICY Table Metadata

Column Name | Data Type | Null Value | Description
--- | --- | --- | ---
RESOURCE_ENT_APP_ID | NUMBER(15) | `Not Null` | PK and FK to `P13N_ENTITLEMENT_APPLICATION`.
`RESOURCE_ID` | NUMBER(15) | `Not Null` | PK and FK to `P13N_ENTITLEMENT_RESOURCE`.
ROLE_ENT_APP_ID | NUMBER(15) | `Not Null` | PK and FK to `P13N_ENTITLEMENT_APPLICATION`.
ROLE_ID | NUMBER(15) | `Not Null` | PK and FK to `P13N_ENTITLEMENT_ROLE`.
POLICY_RESOURCE_CAPABILITY | VARCHAR(80) | `Not Null` | PK—Identifies the unique capability of this policy instance.
CREATION_DATE | DATE | `Not Null` | The date and time the record was created; the default is the current time stamp.
MODIFIED_DATE | DATE | `Not Null` | The date and time the record was last modified; the default is the current time stamp.

### The P13N_ENTITLEMENT_RESOURCE Database Table

This table is used to uniquely identify an application resource that can have an entitlement associated with it.

Table 8-97 P13N_ENTITLEMENT_RESOURCE Table Metadata

Column Name | Data Type | Null Value | Description
--- | --- | --- | ---
ENTITLEMENT_APP_ID | NUMBER(15) | `Not Null` | PK and FK to `P13N_ENTITLEMENT_APPLICATION`.
`RESOURCE_ID` | NUMBER(15) | `Not Null` | PK—A unique, system-generated number to use as the record ID.
RESOURCE_NAME | `VARCHAR(255)` | `Not Null` | The name of the resource having a policy applied on it.
RESOURCE_DESCRIPTION | VARCHAR(255) | `Null` | Optional description of resource.
RESOURCE_METADATA | VARCHAR(255) | `Null` | Optional application-defined metadata.
CREATION_DATE | DATE | `Not Null` | The date and time the record was last modified; the default is the current time stamp.
MODIFIED_DATE | DATE | `Not Null` | The date and time the record was last modified; the default is the current time stamp.

### The P13N_ENTITLEMENT_ROLE Database Table

This table is used to uniquely identify entitlement and delegated administration roles for a given application.

Table 8-98 P13N_ENTITLEMENT_ROLE Table Metadata

Column Name | Data Type | Null Value | Description
--- | --- | --- | ---
ENTITLEMENT_APP_ID | NUMBER(15) | `Not Null` | PK and FK to `P13N_ENTITLEMENT_APPLICATION`.
`ROLE_ID` | NUMBER(15) | `Not Null` | PK—A unique, system-generated number to use as the record ID.
ROLE_NAME | `VARCHAR(255)` | `Not Null` | The name of the security role.
ROLE_DESCRIPTION | VARCHAR(255) | `Null` | Optional description of the role.
ROLE_SEGMENT | VARCHAR(255) | `Null` | Optional role expression name.
CREATION_DATE | DATE | `Not Null` | The date and time the record was last modified; the default is the current time stamp.
MODIFIED_DATE | DATE | `Not Null` | The date and time the record was last modified; the default is the current time stamp.

### The P13N_DELEGATED_HIERARCHY Database Table

This table is used to uniquely identify an entitlement hierarchy. An entitlement hierarchy is associated with a P13N_ENTITLEMENT_APPLICATION.

Table 8-99 P13N_DELEGATED_HIERARCHY Table Metadata

Column Name | Data Type | Null Value | Description
--- | --- | --- | ---
ENTITLEMENT_APP_ID | NUMBER(15) | `Not Null` | PK and FK to `P13N_ENTITLEMENT_APPLICATION`.
`ENTITLEMENT_DOCUMENT` | CLOB | `Not Null` | An XML document containing the Delegated Administration role hierarchy.
CREATION_DATE | DATE | `Not Null` | The date and time the record was last modified; the default is the current time stamp.
MODIFIED_DATE | DATE | `Not Null` | The date and time the record was last modified; the default is the current time stamp.