Databases Reference
In-Depth Information
.
Nonprocessable major objects have only to be deployed before they can be used.
They are pure metadata objects; they do not work with data. For example, the
Assembly object is a nonprocessable major object: It can be created on the server
independent of its parents ( Server or Database ), but because it does not have data
associated with it, it does not have to be processed before it can be used by the
client applications.
Minor Objects
A minor object can be created, updated, or deleted only as part of an operation on its
parent object. The Name and ID properties of minor objects follow the same rules as major
objects. That is, the value of the ID property cannot be changed over the lifetime of the
object, but the value of the Name property can.
Minor objects can be divided further:
.
Named minor objects contain Name and ID properties, and can be referenced by
them. A minor object can also contain a Description property—extended human-
readable information about the object—and an Annotation property that contains
valid XML that allows enrichment of the model and provides extensible information
about the object. The Hierarchy object is a good example of a named minor object
because it cannot be created on its own; it can be created only as part of its parent
Dimension .
.
Unnamed minor objects exist only as part of the collection they belong to. They do
not have Name or ID properties; for example, Translation or Account objects have
neither Name nor ID properties.
From an implementation point of view, named minor objects are derived from the
unnamed minor objects, nonprocessable major objects are derived from named minor
objects, and processable major objects are derived from unprocessable major objects.
Unnamed Objects and Collections of Unnamed Objects
All unnamed minor objects are derived from the System.ComponentModel.Component class;
therefore, all objects in the AMO object model are derived from the System.Component
Model.Component class. The AMO classes are designed to be components, so a class can be
used in a Rapid Application Development (RAD) environment such as Visual Studio .NET,
in which they can be dragged and dropped onto a form and manipulated on a design
surface.
All AMO objects also implement the ICloneable interface, which allows you to create new
instances of the object with the same properties (see Figure 34.2). AMO objects can be
created in two ways:
System.ComponentModel.Component
System.ICloneble
AnalysisServices.MinorObject
FIGURE 34.2
All AMO objects implement the ICloneable standard interface.
Search WWH ::




Custom Search