14 Marketing, Security, and Other Elements

This chapter describes the XML API elements for Oracle Marketing Segmentation objects, security objects, and miscellaneous objects that do not fall in other categories.

This chapter contains the following topics:

14.1 Marketing Elements

Marketing elements are typically those elements that are related to features for the Oracle Marketing Segmentation product. For information about features and options related to Oracle Marketing Segmentation, see the administrator documentation for the Oracle Marketing Segmentation application.

Marketing elements include:

14.1.1 Catalog Link

The catalog link element corresponds to the conforming dimension link object in the Marketing metadata. A conforming dimension links a fact that contains target-level IDs to a fact that does not contain target-level IDs by navigating along a dimension that is shared by both fact tables.

The catalog link tag includes the following child elements:

Table 14-1 Catalog Link Child Elements

Element Name Description

From

References the presentation column that represents the primary key of the subject area from which the dimension link originates.

The primary key column is contained in a sub-element called RefPresentationColumn.

To

References the presentation column that represents the primary key of the subject area to which the dimension link points.

The primary key column is contained in a sub-element called RefPresentationColumn.


The catalog link tag does not include any attributes.

Syntax

<CatalogLink …>
   <From>
     <RefPresentationColumn …/>
   </From>
   <To>
     <RefPresentationColumn …/>
   </To>
</CatalogLink>

Example

<CatalogLink name="Customer Profile->Campaign Contacts" id="4012:280960"
     uid="2150823331">
   <Description>
     <![CDATA[Used by both Contact and Account Target Levels to filter with
     "Offered Product_segmentation" catalog.]]>
   </Description>
   <To>
     <RefPresentationColumn uid="2150707139" id="4010:223709" qualifiedName=
     "&quot;Campaign Contacts_segmentation&quot;..&quot;- Contact Profile&quot;.
     &quot;ROW_ID""/>
   </To>
</CatalogLink>

14.1.2 Target Level

The target level element corresponds to the target level object in the Marketing metadata. A target level is the entity that a marketer wants to count, typically customer types like individuals, businesses, or households.

The target level tag includes the following attributes:

Table 14-2 Target Level Tag Attributes

Attribute Name Description

hasDispName

Indicates whether this target level has a custom display name.

dispName

The value of the custom display name, if one exists for this target level.

hasDispDescription

Indicates whether this target level has a custom description.

dispDescription

The value of the custom description, if one exists for this target level.


The target level tag includes the following child elements:

Table 14-3 Target Level Child Elements

Element Name Description

PrimaryQLI

References the primary qualified list item for this target level.

The qualified list item is contained in a sub-element called RefQualifiedListItem.

PrimaryPresCatalog

References the primary segmentation catalog for this target level.

The segmentation catalog is contained in a sub-element called RefPresentationCatalog.

SamplingTables

References the physical tables used as sampling tables for this target level.

Each physical table is contained in a sub-element called RefPhysicalTable.

Catalogs

References the set of segmentation catalogs for this target level.

Each segmentation catalog is contained in a sub-element called RefSegCatalog.

PresentationCatalog

References the subject area for saved result sets (the saved results catalog).

The saved results catalog is contained in a sub-element called RefPresentationCatalog.

TargetColumn

References the Target Id presentation column.

The Target Id column is contained in a sub-element called RefPresentationColumn.

NodeColumn

References the GUID presentation column.

The GUID column is contained in a sub-element called RefPresentationColumn.

PhysicalTable

References the physical table that stores the result sets for this target level.

The physical table is contained in a sub-element called RefPhysicalTable.

ConnectionPool

References the connection pool in which this target level is mapped.

The connection pool is contained in a sub-element called RefConnectionPool.

HeaderSQL

Contains the physical SQL to insert the Saved Result Header. Used when users save a result set.

DelHeaderSQL

Contains the physical SQL to delete the saved result set header. Used when users purge saved result sets.

DelDataSQL

Contains the physical SQL to delete the saved result data set. Used when users purge saved result sets.


Syntax

<TargetLevel …
     hasDispName=""
     dispName=""
     hasDispDescription=""
     dispDescription="" >
   <PrimaryQLI>
     <RefQualifiedListItem …/>
   </PrimaryQLI>
   <PrimaryPresCatalog>
     <RefPresentationCatalog…/>
   </PrimaryPresCatalog>
   <SamplingTables>
     <RefPhysicalTable …/>
   </SamplingTables>
   <Catalogs>
     <RefSegCatalog ../>
     <RefSegCatalog ../>
   </Catalogs>
   <PresentationCatalog>
     <RefPresentationCatalog…/>
   </PresentationCatalog>
   <TargetColumn>
     <RefPresentationColumn…/>
   </TargetColumn>
   <NodeColumn>
     <RefPresentationColumn…/>
   </NodeColumn>
   <PhysicalTable>
     <RefPhysicalTable…/>
   </PhysicalTable>
   <ConnectionPool>
     <RefConnectionPool…/>
   </ConnectionPool>
   <HeaderSQL…/>
   <DelHeaderSQL…/>
   <DelDataSQL…/>
</TargetLevel>

Example

<TargetLevel name="Contacts" id="4014:280966" uid="2150343035"
     hasDispName="false"
     hasDispDescription="false">
   <Description></Description>
   <PrimaryQLI>
     <RefQualifiedListItem uid="2150343036" id="4018:280973" qualifiedName=
     "&quot;Contacts&quot;"/>
   </PrimaryQLI>
   <PrimaryPresCatalog>
     <RefPresentationCatalog uid="2150319327" id="4004:275472" qualifiedName=
     "&quot;Customer Profile_segmentation&quot;"/>
   </PrimaryPresCatalog>
   <SamplingTables>
     <RefSamplingTable uid="2150831204" id="4024:281051" qualifiedName=
     "&quot;Contacts&quot;.&quot;M_10C_PERSON_D&quot;"/>
   </SamplingTables>
   <Catalogs>
     <RefSegCatalog uid="2150343042" id="4026:281055" qualifiedName=
     "&quot;Contacts&quot;.&quot;Contacts_Customer Profile_segmentation&quot;"/>
     <RefSegCatalog uid="2150343043" id="4026:281056" qualifiedName=
     "&quot;Contacts&quot;.&quot;Contacts_Orders_segmentation&quot;"/>
     <RefSegCatalog uid="2150343044" id="4026:281057" qualifiedName=
     "&quot;Contacts&quot;.&quot;Contacts_Assets_segmentation&quot;"/>
     <RefSegCatalog uid="2150343041" id="4026:281058" qualifiedName=
     "&quot;Contacts&quot;.&quot;Contacts_Activities_segmentation&quot;"/>
   </Catalogs>
   <TargetColumn>
     <RefPresentationColumn uid="2150343373" id="4010:226666" qualifiedName=
     "&quot;Marketing Segmentation Cache and Saved Results&quot;..&quot;- Contact
     Results Data&quot;.&quot;Person ID&quot;"/>
   </TargetColumn>
   <NodeColumn>
     <RefPresentationColumn uid="2150343375" id="4010:226665" qualifiedName=
     "&quot;Marketing Segmentation Cache and Saved Results&quot;..&quot;- Contact
     Results Data&quot;.&quot;GUID&quot;"/>
   </NodeColumn>
   <PhysicalTable>
     <RefPhysicalTable uid="2150343168" id="3001:99531" qualifiedName=
     "&quot;Oracle Data Warehouse&quot;.&quot;Catalog&quot;.&quot;dbo&quot;.
     &quot;M_SR_CONTACT&quot;"/>
   </PhysicalTable>
   <HeaderSQL>
     <![CDATA[INSERT INTO M_SR_HEADER (GUID, SEGMENT_PATH, SR_CUSTOM_LABEL, 
     PRIORITY, NODE_PATH, NODE_LABEL, TARGET_LEVEL, CREATED_BY, "COUNT", DATE_
     TIME, SR_PATH, CONNECTION_POOL) VALUES ('@{guid}', '@{segmentPath}',
     '@{srCustomLabel}', @{priority}, '@{nodePath}', '@{nodeLabel}',
     '@{targetLevel}','@{createdBy}', @{count},'@{createdTime}', '@{srPath}',
     '@{connectionPool}')]]>
   </HeaderSQL>
   <DelHeaderSQL>
     <![CDATA[DELETE FROM M_SR_HEADER WHERE GUID IN (@{guids})]]>
   </DelHeaderSQL>
   <DelDataSQL>
     <![CDATA[DELETE FROM M_SR_CONTACT WHERE GUID IN (@{guids})]]>
   </DelDataSQL>
</TargetLevel>

14.1.3 List Catalog

The list catalog element corresponds to the list catalog object in the Marketing metadata. A list catalog is an object that is used to generate a list of data at the target level.

The list catalog tag includes the following child elements:

Table 14-4 List Catalog Child Elements

Element Name Description

RefPresentationCatalog

References the subject area for this list catalog. The name of the subject area is used as the name of the list catalog.

QualifyingKeys

References the set of qualifying keys for this list catalog.

Each qualifying key is contained in a sub-element called RefQualifyingKey.


The list catalog tag does not include any attributes.

Syntax

<ListCatalog …>
   <RefPresentationCatalog …/>
   <QualifyingKeys>
     <RefQualifyingKey …/>
     <RefQualifyingKey …/>
   </QualifyingKeys>
</ListCatalog>

Example

<ListCatalog name="Marketing Contact List" id="4016:281114" uid="2150825512">
   <Description></Description>
   <RefPresentationCatalog uid="2150704699" id="4004:275681" qualifiedName=
   "&quot;Marketing Contact List&quot;"/>
   <QualifyingKeys>
     <RefQualifyingKey uid="2150831265" id="4020:280989" qualifiedName=
     "&quot;Service Requests&quot;.&quot;Qualifying Key#36&quot;"/>
     <RefQualifyingKey uid="2150831263" id="4020:281020" qualifiedName=
     "&quot;Orders&quot;.&quot;Qualifying Key#37&quot;"/>
   </QualifyingKeys>
</ListCatalog>

14.1.4 Qualified List Item

The qualified list item element corresponds to the qualified list item object in the Marketing metadata. A qualified list item is an entity that is evaluated against segment criteria so that the information related to that entity can be exported in a list file.

The qualified list item tag includes the following attributes:

Table 14-5 Qualified List Item Tag Attributes

Attribute Name Description

cacheTable

Indicates whether this qualified list item is cached.


The qualified list item tag includes the following child elements:

Table 14-6 Qualified List Item Child Elements

Element Name Description

CacheCatalog

References the subject area for the cache for this qualified list item.

The subject area is contained in a sub-element called RefPresentationCatalog.

CacheConnPool

References the connection pool for the cached table.

The connection pool is contained in a sub-element called RefConnectionPool.

TargetColumn

References the Target Id presentation column.

The Target Id column is contained in a sub-element called RefPresentationColumn.

NodeColumn

References the GUID presentation column.

The GUID column is contained in a sub-element called RefPresentationColumn.

PhysicalTable

References the physical table that stores the cached qualified list item.

The physical table is contained in a sub-element called RefPhysicalTable.

DeleteSQL

Contains the physical SQL used to delete the cached results.


Syntax

<QualifiedListItem …
     cacheTable="">
   <CacheCatalog>
     <RefPresentationCatalog …/>
   </CacheCatalog>
   <CacheConnPool>
     <RefConnectionPool …/>
   </CacheConnPool>
   <TargetColumn>
     <RefPresentationColumn …/>
   </TargetColumn>
   <NodeColumn>
     <RefPresentationColumn …/>
   </NodeColumn>
   <DeleteSQL>
     <!CDATA[[…]]>
   </DeleteSQL>
</QualifiedListItem>

Example

<QualifiedListItem name="Service Requests" id="4018:280972" uid="2150831252">
   <Description></Description>
   <DeleteSQL>
     <![CDATA[DELETE FROM M_C_GENERIC WHERE GUID = '@{guid}']]>
   </DeleteSQL>
</QualifiedListItem>

14.1.5 Qualifying Key

The qualifying key element corresponds to the qualifying keys that are used in list catalog or segmentation catalog objects in the Marketing metadata. Qualifying keys map qualified list items to presentation columns.

The qualifying key tag includes the following child elements:

Table 14-7 Qualifying Key Child Elements

Element Name Description

RefSegCatalog

References the segmentation catalog to which this qualifying key belongs.

RefListCatalog

References the list catalog to which this qualifying key belongs.

RefPresentationColumn

References the presentation column for this qualifying key.


The qualifying key tag does not include any attributes.

Syntax

<QualifyingKey …>
   <RefSegCatalog ../>
   <RefListCatalog ../>
   <RefPresentatonColumn ../>
</QualifyingKey>

Example

<QualifyingKey name="Qualifying Key#37" parentName=""Orders""
     parentId="4018:280974"
     parentUid="2150831254"
     id="4020:281020"
     uid="2150831263">
   <Description></Description>
   <RefListCatalog uid="2150825512" id="4016:281114" qualifiedName=
   "&quot;Marketing Contact List&quot;"/>
   <RefPresentationColumn uid="2150705283" id="4010:266234" qualifiedName=
   "&quot;Marketing Contact List&quot;..&quot;Order&quot;.&quot;ROW_ID&quot;"/>
</QualifyingKey>

14.1.6 Sampling Table

The sampling table element corresponds to the sampling table object in the Marketing metadata. Sampling tables are created and managed as part of target level objects.

The sampling table tag includes the following attributes:

Table 14-8 Sampling Table Tag Attributes

Attribute Name Description

factor

The sampling factor (for example, 10%).


The sampling table tag includes the following child elements:

Table 14-9 Sampling Table Child Elements

Element Name Description

RefPhysicalTable

References the physical table being used as the sampling table.


Syntax

<SamplingTable … 
     factor="5%">
   <RefPhysicalTable …/>
</SamplingTable>

Example

<SamplingTable name="M_10C_PERSON_D" parentName=""Contacts""
     parentId="4014:280966"
     parentUid="2150343035"
     id="4024:281051"
     uid="2150831204"
     factor="0.1">
   <Description></Description>
   <RefPhysicalTable uid="2253227" id="3001:86873" qualifiedName="&quot;Oracle 
   Data Warehouse&quot;.&quot;Catalog&quot;.&quot;dbo&quot;.
   &quot;Dim_W_PARTY_PER_D_Contact&quot;"/>
</SamplingTable

14.1.7 Seg Catalog

The seg catalog element corresponds to the segmentation catalog object in the Marketing metadata. Segmentation catalogs are Oracle BI subject areas that are enabled for segmentation. Segmentation catalogs provides a set of dimensions and fact measures that can be used to create segment criteria.

The seg catalog tag includes the following child elements:

Table 14-10 Seg Catalog Child Elements

Element Name Description

RefPresentationCatalog

References the subject area for this segmentation catalog.

QualifyingKeys

References the set of qualifying keys for this list catalog.

Each qualifying key is contained in a sub-element called RefQualifyingKey.


The seg catalog tag does not include any attributes.

Syntax

<SegCatalog …>
   <RefPresentationCatalog …/>
   <QualifyingKeys>
     <RefQualifyingKey …/>
   </QualifyingKeys>
</SegCatalog>

Example

<SegCatalog name="Contacts_Customer Profile_segmentation" 
     parentName="&quot;Contacts&quot;"
     parentId="4014:280966"
     parentUid="2150343035"
     id="4026:281055"
     uid="2150343042">
   <Description></Description>
   <RefPresentationCatalog uid="2150319327" id="4004:275472" qualifiedName=
   "&quot;Customer Profile_segmentation&quot;"/>
   <QualifyingKeys>
     <RefQualifyingKey uid="2150707126" id="4020:280992" qualifiedName=
     "&quot;Contacts&quot;.&quot;Qualifying Key&quot;"/>
     <RefQualifyingKey uid="2150823314" id="4020:281033" qualifiedName=
     "&quot;Accounts&quot;.&quot;Qualifying Key#21&quot;"/>
   </QualifyingKeys>
</SegCatalog>

14.2 Security Elements

Security elements are typically those elements that are related to Oracle Business Intelligence security features, such as those related to variables, authentication, privileges, users, and application roles. Security elements include:

14.2.1 Variable

The variable element corresponds to the variable object in the Physical layer of the repository.

The variable tag includes the following attributes:

Table 14-11 Variable Tag Attributes

Attribute Name Description

securityMask

For session variables only. This attribute stores the value of the following options:

  • Enable any user to set the value. When selected, lets session variables be set after the initialization block has populated the value (at user login) by calling the ODBC store procedure NQSSetSessionValue(). For example, this option lets non-administrators set this variable for sampling.

  • Security Sensitive. When selected, identifies the variable as sensitive to security for virtual private databases (VPDs). When filtering cache table matches, the Oracle BI Server looks at the parent database of each column or table that is referenced in the logical request projection list. If the physical database source is a VPD, the Oracle BI Server matches a list of security-sensitive variables to each prospective cache hit. Cache hits would only occur on cache entries that included and matched all security-sensitive variables.

isSessionVar

If set to true, indicates that this variable is a session variable. Session variables are created and assigned a value when each user logs on, unlike repository variables, which have static values.


The variable tag includes the following child elements:

Table 14-12 Variable Child Elements

Element Name Description

Expr

Contains the expression that forms the definition of this variable.


Syntax

<Variable name="" id="" uid="" 
     securityMask=""
     isSessionVar="" >
   <Description />
   <Expr>...</Expr>
</Variable>

Example

<Variable name="Current Month" id="3031:16" uid="17">
   <Description />
   <Expr>
     <![CDATA[  CURRENT_DATE ]]> 
   </Expr>
</Variable>

14.2.2 LDAP Server

The LDAP server element corresponds to the LDAP server object in the Security Manager dialog in the Administration Tool.

The LDAP server tag includes the following attributes:

Table 14-13 LDAP Server Tag Attributes

Attribute Name Description

hostName

The host name of the LDAP server.

port

The port number of the LDAP server (for example, 389).

baseDN

The base distinguished name (DN) that identifies the starting point of the authentication search.

bindDN

The optional DN that is required to bind to the LDAP server. This option is required if isADSI is set to true.

userNameAttrType

A value that uniquely identifies a user, such as the user ID, the RDN (relative distinguished name), or (for ADSI) sAMAccountName.

domainID

A domain identifier that uniquely identifies the domain for which the LDAP object is responsible. This is especially useful when there are multiple LDAP objects.

password

The user password associated with the Bind DN. This option is required if isADSI is set to true. Note that passwords are encrypted.

timeout

The time period after which Administration Tool import attempts or Oracle BI Server user authentication attempts against this LDAP server will time out.

cacheExpiry

The interval at which the authentication cache entry in the LDAP cache for a logged on user is refreshed.

This option corresponds to Cache refresh interval in the Repository tab of the Options dialog in the Administration Tool.

isADSI

If set to true, indicates that this is an Active Directory LDAP server.

useSSL

If set to true, indicates that the connection to the LDAP server uses Secure Sockets Layer (SSL).

keyFile

The name of the key file that holds the client certificate and Certificate Authority (CA) certificate. Required if useSSL is set to true.

This option corresponds to Key file name in the Repository tab of the Options dialog in the Administration Tool.

version

The LDAP version number of the LDAP server, either 2 or 3. The default is 3.

cacheEntries

The maximum number of entries in the authentication cache, preallocated when the Oracle BI Server starts. If the number of users exceeds this limit, cache entries are replaced using the LRU algorithm. If this value is 0, then the authentication cache is disabled.

This option corresponds to Number of Cache Entries in the Repository tab of the Options dialog in the Administration Tool.


The LDAP server tag does not include any child elements.

Syntax

<LDAPServer …
     hostName=""
     port=""
     baseDN=""
     bindDN=""
     userNameAttrType=""
     domainID=""
     password=""
     timeout=""
     cacheExpiry=""
     entities=""
     isADSI=""
     useSSL=""
     keyFile=""
     version=""
     cacheEntries="" >
</LDAPServer>

Example

<LDAPServer name="ldap" id="3035:3119" uid="5032"
     hostName="sdacns05"
     port="389"
     version="3"
     baseDN="name1"
     bindDN="name2"
     userNameAttrType="sAMAccountName"
     domainID="as"
     password="D7EDED84BC624A917F5B462A4DCA05CDCE256EEEEEDC97D5A3D4B868D64238CA"      timeout="60"
     cacheExpiry="86400"
     cacheEntries="1000"
     isADSI="true"
     useSSL="true">
<Description></Description>
</LDAPServer>

14.2.3 Init Block

The init block element corresponds to the initialization block object in the Physical layer. Initialization blocks are used to initialize dynamic repository variables, system session variables, and nonsystem session variables.

The init block tag includes the following attributes:

Table 14-14 Init Block Tag Attributes

Attribute Name Description

isSessionVar

If set to true, indicates that this initialization block is a session initialization block. Session initialization blocks are used with session variables.

The default value is false.

refreshPeriod

The refresh interval for this initialization block, in seconds. For repository initialization blocks only.

The default value is 0.

baseTime

The start date and time for this initialization block. For repository initialization blocks only.

The default value is 2001-01-01 00:00:00.

isRowWiseInit

If set to true, indicates that row-wise initialization has been enabled. Row-wise initialization lets you create session variables dynamically and set their values when a session begins. For session initialization blocks only.

The default value is false.

isRowWiseCacheEnabled

If set to true, indicates that the Use caching option has been enabled. This option directs the Oracle BI Server to store the results of the query in a main memory cache. This option is only available if row-wise initialization has been enabled.

The default value is true.

isSuccRequired

Indicates that the Required for Authentication option has been selected for this initialization block in the Administration Tool.

If this option is selected, this initialization block must succeed for users to log in. In other words, users will be denied access to Oracle BI EE if the initialization block fails to execute. Failure to execute can occur if the wrong credentials have been defined in the initialization block, or if there is an error in the default initialization string.

The default value is false.

isEnabled

If set to true, indicates that this initialization block is enabled. For session initialization blocks only.

The default value is true.


The init block tag includes the following child elements:

Table 14-15 Init Block Child Elements

Element Name Description

RefConnectionPool

References the connection pool for this initialization block.

This element is only used if the data source type for this initialization block is Database or XML.

DBMap

Stores the value of database-specific strings. The <DBMap> element contains an <Item> tag, which in turn contains a <Value> tag, as follows:

<Item name="">
   <Value />
</Item>

Predecessors

References the initialization blocks, if any, that are initialized before this initialization block

Each initialization block is contained in a sub-element called RefInitBlock.

Variables

References the variables that are associated with this initialization block.

Each variable is contained in a sub-element called RefVariable.

InitString

The SQL initialization string needed to populate the variables.

This element is only used if the data source type for this initialization block is Database or XML.

LDAPServers

References the LDAP servers that are associated with this initialization block.

Each LDAP server is contained in a sub-element called RefLDAPServer.

This element is only used if the data source type for this initialization block is LDAP.


Syntax

<InitBlock name="" id="" uid=""
     isSessionVar=""
     refreshPeriod=""
     baseTime=""
     isRowWiseInit=""
     isRowWiseCacheEnabled=""
     isSuccRequired=""
     isEnabled="">
   <Description />
   <RefConnectionPool …/>
   <DBMap>
     <Item name="">
       <Value …/>
     </Item>
   </DBMap>
   <Predecessors>
     <RefInitBlock …/>
   </Predecessors>
   <Variables>
     <RefVariable …/>
     <RefVariable …/>
   </Variables>
   <InitString …/>
   <LDAPServers>
     <RefLDAPServer …/>
     <RefLDAPServer …/>
   </LDAPServers>
<InitBlock>

Example

<InitBlock name="Test Block" id="3033:3052" uid="2147485020"
     isSessionVar="true"
     isRowWiseCacheEnabled="false">
   <Description></Description>
   <RefConnectionPool id="3029:3045"
   qualifiedName="&quot;SQLDB_NorthwindCodedRec&quot;.
   &quot;NorthwindCodedRec Connections&quot;"/>
   <DBMap>
     <Item name="DefaultMulDB">
       <Value><![CDATA[SELECT region, country, 'SQLDB', 'North', 'wind',
       'Customers' FROM employees WHERE employeeid = 1]]></Value>
     </Item>
   </DBMap>
   <Variables>
     <RefVariable id="3031:160" qualifiedName="&quot;Test Block&quot;.
     &quot;REGION&quot;"/>
     <RefVariable id="3031:161" qualifiedName="&quot;Test Block&quot;.
     &quot;COUNTRY&quot;"/>
     <RefVariable id="3031:169" qualifiedName="&quot;Test Block&quot;.
     &quot;SQLDB&quot;"/>
     <RefVariable id="3031:170" qualifiedName="&quot;Test Block&quot;.
     &quot;North&quot;"/>
     <RefVariable id="3031:171" qualifiedName="&quot;Test Block&quot;.
     &quot;wind&quot;"/>
     <RefVariable id="3031:173" qualifiedName="&quot;Test Block&quot;.
     &quot;CustomersSamplingTable&quot;"/>
   </Variables>
   <InitString><![CDATA[SELECT region, country, 'SQLDB', 'North', 'wind',
   'Customers' FROM employees WHERE employeeid = 1]]></InitString>
</InitBlock>

14.2.4 Custom Authenticator

The Custom Authenticator element corresponds to the Custom Authenticator object in the Security Manager dialog in the Administration Tool.

The Custom Authenticator tag includes the following attributes:

Table 14-16 Custom Authenticator Tag Attributes

Attribute Name Description

cacheExpiry

The interval at which the authentication cache entry for a logged on user is refreshed for this custom authenticator.

path

The path and name of the authenticator plug-in dll.

configParam

Lists any parameters for this custom authenticator that have been explicitly exposed for configuration.

hiddenParam

Lists any parameters for this custom authenticator that have been encrypted, such as passwords.

cacheEntries

The maximum number of entries in the authentication cache for this custom authenticator, preallocated when the Oracle BI Server starts. If the number of users exceeds this limit, cache entries are replaced using the LRU algorithm. If this value is 0, then the authentication cache is disabled.


The Custom Authenticator element does not include any child elements.

Syntax

<CustomAuthenticator name="" id="" uid=""
     cacheExpiry=""
     path=""
     configParam=""
     hiddenParam=""
     cacheEntries="" >
</CustomAuthenticator>

Example

<CustomAuthenticator name="Authenticator"  id="3047:1210"
     uid="1148510121"
     cacheExpiry ="1000"
     path="authenticate.dll" >
<Description></Description>
</CustomAuthenticator>

14.2.5 Privilege Package

The privilege package element is a container for other privileges. It corresponds to a set of permissions that applies to a particular user or application role object in the repository metadata. The privilege package element contains the information available on the Object Permissions, Data Filters, and Query Limits tabs of the User/Application Role Permissions dialog in the Administration Tool.

Because privilege packages can be associated with more than one user or application role, the total number of privilege packages may not equal the total number of users and application roles.

The privilege package tag includes the following child elements:

Table 14-17 Privilege Package Child Elements

Element Name Description

QueryPrivileges

References any query privileges that belong to this privilege package, along with the corresponding database.

Each pair of query privileges and database name is contained in a sub-element called Mapping.

Each Mapping sub-element contains two additional sub-elements: RefDatabase, which references the database name, and RefQueryPrivilege, which references the query privilege.

See the syntax for the privilege package element to see the complete hierarchy for the QueryPrivileges child element.

Filters

References any data filters that belong to this privilege package by mapping an object name with the filter expression.

Each pair of object name and filter expression is contained in a sub-element called Mapping. This sub-element has one attribute called Status. Valid values are Enabled, Disabled, and Ignored.

Each Mapping sub-element contains two additional sub-elements: RefObject, which references the metadata object name, and Expr, which contains the filter expression.

See the syntax for the privilege package element to see the complete hierarchy for the Filters child element.

ObjectPrivileges

References any object privileges that belong to this privilege package.

Each object privilege is contained in a sub-element called RefObjectPrivilege.


The privilege package tag does not include any attributes. Note that the schema lists attributes for none, read, write, readwrite, delete, grant, and all, but these attributes are not used. Instead, these permissions are exposed as part of the child element definitions.

Syntax

<PrivilegePackage …>
   <QueryPrivileges>
     <Mapping>
       <RefDatabase …/>
       <RefQueryPrivilege …/>
     </Mapping>
   </QueryPrivileges>
     <RefTypePrivilege ../>
   <Filters>
     <Mapping status="">
       <RefObject …/>
       <Expr …/>
     </Mapping>
   </Filters>
   <ObjectPrivileges>
     <RefObjectPrivilege …/>
   </ObjectPrivileges>
</PrivilegePackage>

Example

<PrivilegePackage name="PrivPack_4209:16704985826474" id="4209:469" uid="425">
   <Description /> 
   <Filters>
     <Mapping status="enable">
       <RefObject id="4008:459" qualifiedName="&quot;Paint&quot;..
        &quot;Markets&quot;" /> 
       <Expr>
         <![CDATA[ "Paint"."Markets"."Region" = 'Eastern Region' ]]> 
       </Expr>
     </Mapping>
     <Mapping status="enable">
       <RefObject id="4008:462" qualifiedName="&quot;Paint&quot;..&quot;Sales
        Measures&quot;" /> 
       <Expr>
         <![CDATA[ "Paint"."Markets"."Region" = 'Eastern Region' ]]> 
       </Expr>
     </Mapping>
     <Mapping status="enable">
       <RefObject id="4008:463" qualifiedName="&quot;Paint&quot;..&quot;Share
        Measures&quot;" /> 
       <Expr>
         <![CDATA[ "Paint"."Markets"."Region" = 'Eastern Region' ]]> 
       </Expr>
     </Mapping>
     <Mapping status="enable">
       <RefObject id="4008:464" qualifiedName="&quot;Paint&quot;..&quot;Forecast
        Measures&quot;" /> 
       <Expr>
         <![CDATA[ "Paint"."Markets"."Region" = 'Eastern Region' ]]> 
       </Expr>
     </Mapping>
     <Mapping status="enable">
       <RefObject id="4008:465" qualifiedName="&quot;Paint Exec&quot;
        ..&quot;Measures&quot;" /> 
       <Expr>
         <![CDATA[ "Paint"."Markets"."Region" = 'Eastern Region' ]]> 
       </Expr>
     </Mapping>
     <Mapping status="enable">
       <RefObject id="4008:466" qualifiedName="&quot;Paint Exec&quot;..
        &quot;Markets&quot;" /> 
       <Expr>
         <![CDATA[ "Paint"."Markets"."Region" = 'Eastern Region' ]]> 
       </Expr>
     </Mapping>
   </Filters>
   <ObjectPrivileges /> 
</PrivilegePackage>

14.2.6 Object Privilege

The object privilege element corresponds to the set of object permissions you can apply to metadata objects such as logical or presentation columns. In the Administration Tool, you can set object permissions in the Presentation layer, or in the Object Permissions tab of the User/Application Role Permissions dialog.

The object privilege tag includes the following attributes:

Table 14-18 Object Privilege Tag Attributes

Attribute Name Description

type

Contains the type of privilege applied to the objects. Valid values are:

  • read: corresponds to the Read privilege in theAdministration Tool

  • readWrite: corresponds to the Read/Write privilege in the Administration Tool

  • none: corresponds to the No Access privilege in the Administration Tool

This attribute can contain the following other values: delete, write, grant, and all. These other values are for internal use.


The object privilege tag includes the following child elements:

Table 14-19 Object Privilege Child Elements

Element Name Description

Objects

References the set of objects for which this privilege type applies.

Each object is contained in a sub-element called RefObject.


Syntax

<ObjectPrivilege …
     privilege="">
   <Objects>
     <RefObject…/>
     <RefObject…/>
   </Objects>
</ObjectPrivilege>

Example

<ObjectPrivilege name="ObjPriv_1500:10072891258596599" id="1500:1007289"
     uid="2162635189"
     type="read">
   <Description></Description>
   <Objects>
     <RefObject id="4004:275554" uid="2156776977" qualifiedName="&quot;Sales - CRM
     Sales Activity&quot;"/>
     <RefObject id="4004:275556" uid="2156689246" qualifiedName="&quot;Sales - CRM
     Pipeline&quot;"/>
     <RefObject id="4004:275636" uid="2156689916" qualifiedName="&quot;Sales - CRM
     Forecasting&quot;"/>
     <RefObject id="4004:275663" uid="2156776077" qualifiedName="&quot;Sales - CRM
     Customer Overview&quot;"/>
     <RefObject id="4004:275728" uid="2160717431" qualifiedName="&quot;Sales - CRM
     Quota Management&quot;"/>
   </Objects>
</ObjectPrivilege

14.2.7 Query Privilege

The query privilege element corresponds to the set of query privileges you can apply to users or application roles. In the Administration Tool, you can set query privileges in the Query Limits tab of the User/Application Role Permissions dialog.

The query privilege tag includes the following attributes:

Table 14-20 Query Privilege Tag Attributes

Attribute Name Description

maxExecTime

The maximum number of minutes queries can run on a database.

maxExecTimePrivilege

Specifies the status of the maximum query run time limit. Valid values are:

  • Enable: Limits the time to the value specified in maxExecTime.

  • Disable: Disables any limits set in maxExecTime.

  • Warn: Does not enforce limits, but logs queries that exceed the set time limit in the Query log.

  • Ignore: Inherits limits from the parent application role. If there is no time limit to inherit, no limit is enforced.

maxRows

The maximum number of rows for users to retrieve from a database.

maxRowsPrivilege

Specifies the status of the maximum number of rows limit. Valid values are:

  • Enable: Limits the number of rows to the value specified. If the number of rows exceeds the maxRows value, the query is terminated.

  • Disable: Disables any limits set in maxRows.

  • Warn: Does not enforce limits, but logs queries that exceed the set limit in the Query log.

  • Ignore: Inherits limits from the parent application role. If there is no row limit to inherit, no limit is enforced.

populatePrivilege

Specifies whether the Populate privilege is granted or denied for a database. The Populate stored procedure writes the Cache/Saved Result Set value to the database when a criteria block is cached. Valid values are:

  • Allow: Explicitly grants the Populate privilege.

  • Disallow: Explicitly denies the Populate privilege.

  • Ignore: Inherits limits from the parent application role. If there is no limit to inherit, then the Populate privilege is allowed or disallowed based on the property Allow populate queries by default for the database object.

execPhysicalPrivilege

Specifies whether direct database requests can be executed by default. Valid values are:

  • Allow: Explicitly grants the ability to execute direct database requests.

  • Disallow: Explicitly denies the ability to execute direct database requests.

  • Ignore: Inherits limits from the parent application role. If there is no limit to inherit, then direct database requests are allowed or disallowed based on the property Allow direct database requests by default for the database object.


The query privilege tag includes the following child elements:

Table 14-21 Query Privilege Child Elements

Element Name Description

ExecTimeTable

If database access has been restricted to particular time periods, lists the time periods and whether access is allowed or disallowed.

Each time period is contained in a sub-element called Item. The Item child element has three attributes: allow (true or false), startTime, and endTime.


Syntax

<QueryPrivilege …
     maxExecTime=""
     maxExecTimePrivilege=""
     maxRows=""
     maxRowsPrivilege=""
     populatePrivilege=""
     execPhysicalPrivilege="">
   <ExecTimeTable>
     <Item allow="true" startTime="" endTime=""/>
     <Item allow="true" startTime="" endTime=""/>
   </ExecTimeTable>
</QueryPrivilege>

Example

<QueryPrivilege name="QueryPriv_4204:8253601255133864" id="4204:825360"
     uid="2162247182"
     maxExecTime="600"
     maxRows="100000">
   <Description></Description>
</QueryPrivilege

14.2.8 User

The user element corresponds to the user object in the repository. These objects represent the metadata repository copies or versions of externally managed user objects.

The user tag includes the following attributes:

Table 14-22 User Tag Attributes

Attribute Name Description

fullName

The full name of this user.

password

This attribute is not used.

periodicity

This attribute is not used.

loggingLevel

The logging level for this user.

logStatisticsStatus

This attribute is not used.

noExpiry

This attribute is not used.


The user tag includes the following child elements:

Table 14-23 User Child Elements

Element Name Description

RefPrivilegePackage

References the privilege package, or set of object privileges, data filters, and query privileges, that apply to this user.

Groups

References the application roles to which this user belongs.

Each application role is contained in a sub-element called RefGroup.

DBSignOnList

References database login user names and passwords, along with the corresponding database, if this user has database-specific logins defined.

Each pair of database credentials and database name is contained in a sub-element called DBSignOnMap.

Each DBSignOnMap sub-element contains two additional sub-elements: RefDBSignOn, which references the database credentials, and RefDatabase, which references the database name. Note that passwords are encrypted.

See the syntax for the user element to see the complete hierarchy for the DBSignOnList child element.


Syntax

<User …
     fullName=""
     loggingLevel="">
   <RefPrivilegePackage …/>
   <Groups>
     <RefGroup …/>
     <RefGroup …/>
   </Groups>
   <DBSignOnList>
     <DBSignOnMap>
       <RefDBSignOn …/>
       <RefDatabase …/>
     </DBSignOnMap>
……
   </DBSignOnList>
</User>

Example

<User name="mgr" id="1501:7" uid="8"
     fullName="East Region Manager"
     loggingLevel="0">
   <Description>
     <![CDATA[ my_desc ]]> 
   </Description>
   <Groups>
     <RefGroup id="4206:4" qualifiedName="&quot;Region Manager&quot;" /> 
   </Groups>
</User>

14.2.9 Group

The group element corresponds to the application role object in the repository metadata.

The group tag includes the following child elements:

Table 14-24 Group Child Elements

Element Name Description

RefPrivilegePackage

References the privilege package, or set of object privileges, data filters, and query privileges, that apply to this application role.

ChildGroups

References the set of application roles that belong to this application role.

Each child application role is contained in a sub-element called RefGroup.

Users

References the users that belong to this application role.

Each user is contained in a sub-element called RefUser.


The group tag does not include any attributes. Note that the schema lists attributes for logLevel and logStatisticsStatus, but these attributes are not used.

Syntax

<Group …>
   <RefPrivilegePackage …/>
   <ChildGroups>
     <RefGroup …/>
   </ChildGroups>
   <Users>
     <RefUser …/>
   </Users>
</Group>

Example

<Group name="Region Manager" id="4206:4" uid="5">
   <Description /> 
   <RefPrivilegePackage id="4209:469" qualifiedName="&quot;
    PrivPack_4209:16704985826474&quot;" /> 
</Group>

14.2.10 DB Sign-On

The DB sign-on element corresponds to the information provided in the Logons tab of the user object. If the repository has been set up for database-specific login IDs and passwords, you can set up database-specific credentials to allow privileged users to connect to the underlying databases at the level of authority granted to those users in the databases.

The DB sign-on tag includes the following attributes:

Table 14-25 DB Sign-on Tag Attributes

Attribute Name Description

user

The user name for the underlying database.

password

The corresponding password for the underlying database. Note that passwords are encrypted.


The DB sign-on tag does not include any child elements.

Syntax

<DBSignOn … 
     user=""
     password="">
</DBSignOn>

Example

<DBSignOn name="LOGON_4211:205511263581806" id="4211:20551" uid="2160777097"
     user="my_db_user"
     password="D7EDED84BC624A917F5B462A4DCA05CDCE256EEEEEDC97D51DC6FAD705A87E76AC4
     D07C3A079829F">
<Description /> 
</DBSignOn>

14.2.11 FMW Security

The FMW security element is not used.

14.3 Other Elements

The elements described in this section are miscellaneous elements that do not fit into any other category. These elements include:

14.3.1 Project

The project element corresponds to the project object in the repository metadata. Projects support multiuser development by enabling developers to work on projects in their area of responsibility.

The project tag includes the following child elements:

Table 14-26 Project Child Elements

Element Name Description

Catalogs

References the subject areas that belong to the project.

Each subject area is contained in a sub-element called RefPresentationCatalog.

FactTables

References the logical fact tables that belong to the project.

Each fact table is contained in a sub-element called RefLogicalTable.

Groups

References the application roles that belong to the project.

Each application role is contained in a sub-element called RefGroup.

Users

References the users that belong to the project.

Each user is contained in a sub-element called RefUser.

Variables

References the variables that belong to the project.

Each variable is contained in a sub-element called RefVariable.

InitBlocks

References the initialization blocks that belong to the project.

Each initialization block is contained in a sub-element called RefInitBlock.

ListCatalogs

References the list catalogs that belong to the project.

Each list catalog is contained in a sub-element called RefListCatalog.

Tables

References the presentation tables that belong to the project.

Each presentation table is contained in a sub-element called RefPresentationTable.

Columns

References the presentation columns that belong to the project.

Each presentation column is contained in a sub-element called RefPresentationColumn.

Hierarchies

References the presentation hierarchies that belong to the project.

Each presentation hierarchy is contained in a sub-element called RefPresentationHierarchy.

Levels

References the presentation levels that belong to the project.

Each presentation level is contained in a sub-element called RefPresentationLevel.

ExcludedCatalogs

References any subject areas that do not belong to the project, but that are mapped to logical objects that do belong to the project.

Each subject area is contained in a sub-element called RefPresentationCatalog.

ExcludedTables

References any presentation tables that do not belong to the project, but that are mapped to logical objects that do belong to the project.

Each presentation table is contained in a sub-element called RefPresentationTable.

ExcludedColumns

References any presentation columns that do not belong to the project, but that are mapped to logical objects that do belong to the project.

Each presentation column is contained in a sub-element called RefPresentationColumn.

ExcludedHierarchies

References any presentation hierarchies that do not belong to the project, but that are mapped to logical objects that do belong to the project.

Each presentation hierarchy is contained in a sub-element called RefPresentationHierarchy.

ExcludedLevels

References any presentation levels that do not belong to the project, but that are mapped to logical objects that do belong to the project.

Each subject area is contained in a sub-element called RefPresentationLevel.


The project tag does not include any attributes.

Syntax

<Project …>
   <Catalogs>
     <RefPresentationCatalog…/>
   </Catalogs>
   <FactTables>
     <RefLogicalTable …/>
   </FactTables>
   <Groups>
     <RefGroup…/>
   </Groups>
   <Users>
     <RefUser …/>
   </Users>
   <Variables>
     <RefVariable …/>
   </Variables>
   <InitBlocks>
     <RefInitBlock…/>
   </InitBlocks>
   <ListCatalogs>
     <RefListCatalog …/>
   </ListCatalogs>
   <Tables>
     <RefPresentationTable…/>
   </Tables>
   <Columns>
     <RefPresentationColumn…/>
   </Columns>
   <Hierarchies>
     <RefPresentationHierarchy…/>
   </Hierarchies>
   <Levels>
     <RefPresentationLevel…/>
   </Levels>
   <ExcludedCatalogs>
     <RefPresentationCatalog…/>
   </ExcludedCatalogs>
   <ExcludedTables>
     <RefPresentationTable…/>
   </ExcludedTables>
   <ExcludedColumns>
     <RefPresentationColumn…/>
   </ExcludedColumns>
   <ExcludedHierarchies>
     <RefPresentationHierarchy…/>
   </ExcludedHierarchies>
   <ExcludedLevels>
     <RefPresentationLevel…/>
   </ExcludedLevels>
</Project>

Example

<Project name="FUSION_SPE" id="4213:281691" uid="2160747109">
   <Description></Description>
   <FactTables>
     <RefLogicalTable uid="2248630" id="2035:9160" qualifiedName=
     "&quot;Core&quot;.&quot;Fact - CRM - Order Item&quot;"/>
     <RefLogicalTable uid="2248632" id="2035:9371" qualifiedName=
     "&quot;Core&quot;.&quot;Fact - CRM - Service Request&quot;"/>
     <RefLogicalTable uid="2248634" id="2035:9578" qualifiedName=
     "&quot;Core&quot;.&quot;Fact - CRM - Revenue&quot;"/>
     <RefLogicalTable uid="2248653" id="2035:9995" qualifiedName=
     "&quot;Core&quot;.&quot;Fact - CRM - Service Request Year Ago&quot;"/>
     <RefLogicalTable uid="2248654" id="2035:10002" qualifiedName=
     "&quot;Core&quot;.&quot;Fact - CRM - Service Request Quarter Ago&quot;"/>
     <RefLogicalTable uid="2248657" id="2035:10009" qualifiedName=
     "&quot;Core&quot;.&quot;Fact - CRM - Asset&quot;"/>
   </FactTables>
   <Groups>
     <RefGroup uid="2351522" id="4206:1" qualifiedName=
     "&quot;BIAdministrators&quot;"/>
   </Groups>
   <Users>
     <RefUser uid="2226247" id="1501:2" qualifiedName=
     "&quot;Administrator&quot;"/>
   </Users>
   <Variables>
     <RefVariable uid="2156160753" id="3031:250" qualifiedName=
     "&quot;User Hierarchy Level&quot;.&quot;HIER_LEVEL&quot;"/>
     <RefVariable uid="2160681301" id="3031:337" qualifiedName=
     "&quot;GetCRMCalendar&quot;.
     &quot;CRM_CAL_ID&quot;"/>
     <RefVariable uid="2160723641" id="3031:338" qualifiedName="&quot;TERR_HIER_
     LEVEL&quot;"/>
     <RefVariable uid="2160708142" id="3031:339" qualifiedName="&quot;Resource
     Hierarchy Level&quot;.&quot;RESOURCE_HIER_LEVEL&quot;"/>
   </Variables>
   <InitBlocks>
     <RefInitBlock uid="2156160754" id="3033:68605" qualifiedName=
     "&quot;User Hierarchy
     Level&quot;"/>
     <RefInitBlock uid="2160681306" id="3033:68645" qualifiedName=
     "&quot;GetCRMCalendar&quot;"/>
     <RefInitBlock uid="2160714425" id="3033:68649" qualifiedName=
     "&quot;Resource Hierarchy Level&quot;"/>
     <RefInitBlock uid="2327724" id="3033:68694" qualifiedName=
     "&quot;Authentication&quot;"/>
     <RefInitBlock uid="2327727" id="3033:68696" qualifiedName=
     "&quot;Authorization&quot;"/>
   </InitBlocks>
</Project

14.3.2 Query Object

The query object element corresponds to the saved query object in the repository metadata. You can save a query from the Query Repository dialog in the Administration Tool.

The query object tag includes the following child elements:

Table 14-27 Query Object Child Elements

Element Name Description

QueryString

Contains the query string that qualifies and defines the query.


The query object tag does not include any attributes.

Syntax

<QueryObject …>
   <QueryString…/>
</QueryObject>

Example

<QueryObject name="samplequery" id="4217:20552" uid="2160777099">
   <Description />
   <QueryString>
     <![CDATA[ (128 = "*") AND (6 = Business Model) AND (0) ]]> 
   </QueryString>
</QueryObject>