Skip Headers
Oracle® OLAP Developer's Guide to the OLAP API
10g Release 2 (10.2)

Part Number B14347-02
Go to Documentation Home
Home
Go to Book List
Book List
Go to Table of Contents
Contents
Go to Index
Index
Go to Master Index
Master Index
Go to Feedback page
Contact Us

Go to previous page
Previous
Go to next page
Next
View PDF

What's New

This preface describes the features of the Oracle OLAP API that are new in Oracle OLAP 10g Release 2 (10.2) . This preface contains the following topics:

What's New in 10.2.0.3

The examples of code in this documentation are excerpts from complete example programs. For release 10.2.0.3, those example programs use a new version of the Global Schema for Documentation. The OLAP metadata objects used by the examples are generated by a dynamic analytic workspace that is defined by an example program that uses the Oracle OLAP Analytic Workspace Java API.

All of the example programs and the Global Schema are available on the Oracle Technology Network (OTN). For more information, see the topic "Sample Schema for OLAP API Examples" in Chapter 1.

Because the examples for this release query an analytic workspace, this documentation no longer includes information on the classes in the oracle.olapi.metadata.mtm package. The mtm classes map OLAP metadata objects to columns in relational tables or views that are not maintained by a dynamic analytic workspace. For an analytic workspace, that mapping is performed by classes in the Oracle OLAP Analytic Workspace Java API.

What's New in 10.2

In Oracle OLAP, 10g Release 2 (10.2) the Oracle OLAP API has new features that the 10g, Release 1 (10.1) versions of the API do not have. Those new features are described in the following topics.

Introducing Custom Dimension Members

The Oracle OLAP API now supports the creation of custom dimension members, which are calculated virtual members that you can use in specifying a query. When you create a custom dimension member, you provide a Source that Oracle OLAP uses to calculate the value for a dimensioned object that is specified by the custom member. When you specify a query that retrieves the value of a dimensioned object that is specified by the custom member, Oracle OLAP calculates the value for the custom member and assigns it as the value of the dimensioned object.

Custom dimension members are instances of the classes that implement the new MdmMember interface. You can create a custom member for an MdmStandardDimension, an MdmTimeDimension, or an MdmMeasureDimension. For more information on custom dimension members and for examples of creating them, see Chapter 2, "Understanding OLAP API Metadata".

Oracle OLAP uses an MdmModel to hold information for a custom dimension member. An MdmModel implements the Model interface. When you create a custom dimension member, Oracle OLAP automatically creates an Assignment object and adds it to the MdmModel associated with the dimension. The Assignment object specifies the dimension, the dimension member, and the Source that Oracle OLAP uses to calculate the value to assign for the dimension member. For information about the Model interface and the Assignment class, see "Introducing the OLAP API Model Class".

Introducing the OLAP API Model Class

A Source that has inputs is a dimensioned Source. With an OLAP API Model, you can assign calculated values to a dimensioned Source. Using Model objects, you can specify elements of the inputs and specify the calculation that produces the value to assign to the dimensioned Source.

The MdmModel class and its subclasses implement the Model interface for MdmObject objects. Those classes are in the oracle.olapi.metadata.mdm package.

The CustomModel class implements the interface for an object that you can explicitly create and that is not necessarily associated with an MdmObject. In creating a CustomModel, you specify its input Source objects.

A Model is closely related to a Source, so the Model interface, the associated Assignment and Qualification classes, and the CustomModel class are in the oracle.olapi.data.source package. A Qualification identifies an element of a Source. For example, a Qualification might specify a member of a dimension. An Assignment has one or more Qualification objects and a Source that Oracle OLAP uses to calculate the value to assign. A Model can have from zero to many Assignment objects.

When Oracle OLAP retrieves the values for a dimensioned Source, it evaluates the Assignment objects of the Model associated with the Source. It assigns the results of the calculations specified by the Assignment objects to the elements of the dimensioned Source that are specified by the Qualification objects of the Assignment objects.

Because the calculations specified by the Assignment objects of a Model can apply to any Source that has the same inputs as the Model, the OLAP API requires a way to represent the Source to which Oracle OLAP is currently applying the Model. The role of representing the current dimensioned Source is taken by a placeholder Source, which is a new type of Source.

The OLAP API has placeholder Source objects for the different data types. You get a placeholder Source by first getting a FundamentalMetadataObject object for a placeholder of a specific data type from your FundamentalMetadataProvider. You then call the getSource method of the FundamentalMetadataObject. For more information on the Model classes, see Chapter 5, "Understanding Source Objects".

Introducing DataProvider Language Specification and Other Properties

The ExpressDataProvider class now has constructors that take a java.util.Locale object, a java.util.Properties object, or both. By passing a Locale object to the constructor, you can create an ExpressDataProvider that can provide string values in the language specified for an analytic workspace that supports the language.

An ExpressDataProvider has certain default characteristics or properties, which include the following.

By passing a Properties object to the constructor, you can create an ExpressDataProvider that has different properties. You can specify that the ExpressDataProvider use local dimension member values. For information on local and unique dimension member values, see "Unique and Local Dimension Values" in Chapter 1, "Introduction to the OLAP API".

You can also create an ExpressDataProvider that has an associated MetadataProvider that recognizes only OLAP Catalog metadata, which is generated by Oracle Enterprise Manager and by PL/SQL CWM2 package APIs, or only standard form analytic workspace metadata, which is generated by Analytic Workspace Manager and by the Oracle OLAP Analytic Workspace Java API, or only the custom metadata objects you create by using classes in the oracle.olapi.metadata.mdm and oracle.olapi.metadata.mtm packages.

If you want your application to control the language properties, then you can specify that the ExpressDataProvider does not use the default language. For more information on setting the properties of an ExpressDataProvider, see the description of that class in the Oracle OLAP Java API Reference.

New OLAP API Classes

This section describes the new classes in the OLAP API.

New Classes in the oracle.olap.data.source Package

The following table lists the new classes in the oracle.olapi.data.source package and provides brief descriptions of them.

Class Description
Model An interface for an object that contains Assignment objects. This interface is implemented by the MdmModel and CustomModel classes.
CustomModel A Model that an application can explicitly create.
Assignment A class that contains one or more Qualification objects and a Source that Oracle OLAP uses to calculate a value to assign.
Qualification An abstract class that represents an element of a Source for an Assignment of a Model. A Qualification identifies the element of an input Source to which the Assignment applies.
LiteralQualification A concrete class that extends Qualification and that represents a literal value that identifies an element of an input Source, such as a member of a dimension.
ModelSolutionDefinition A SourceDefinition that has information about solving a CustomModel.
PlaceholderDefinition A SourceDefinition for a placeholder Source.

For more information on these new classes, see Chapter 5, "Understanding Source Objects".

New Classes in the oracle.olap.metadata.mdm Package

The following table lists the new classes in the oracle.olapi.metadata.mdm package and provides brief descriptions of them.

Class Description
MdmModel An abstract class that implements the Model interface for MdmObject objects.
MdmDimensionCalculationModel An MdmModel of a specific data type for an MdmPrimaryDimension.
MdmDimensionedObjectModel An abstract class that extends MdmModel for dimensioned objects.
MdmAttributeModel An MdmDimensionedObjectModel for MdmAttribute objects.
MdmMeasureModel An MdmDimensionedObjectModel for MdmMeasure objects.
MdmMember An interface for a custom dimension member.
MdmStandardMember An implementation of MdmMember for an MdmStandardDimension.
MdmTimeMember An implementation of MdmMember for an MdmTimeDimension.

The MdmMeasure class now implements the MdmMember interface for members of an MdmMeasureDimension.

For more information on these new classes, see Chapter 2, "Understanding OLAP API Metadata".

New Methods of Existing Classes

The following classes in the oracle.olapi.data.source package have new factory or accessor methods related to an OLAP API Model or to custom dimension members.

The following classes in the oracle.olapi.metadata.mdm package have new factory, accessor, or other methods related to an OLAP API Model or to custom dimension members.

The oracle.express.olapi.data.full.ExpressDataProvider class has new constructor methods that accept java.util.Locale or java.util.Properties objects or both. It also has new methods that accept a Properties object and that create one or more CursorManager objects.