Objects in Analysis Services Scripting Language (ASSL) follow specific guidelines in regards to object groups, inheritance, naming, expansion, and processing.
All Microsoft SQL Server Analysis Services objects have an XML representation. The objects are divided into two groups:
Major objects can be independently created, altered, and deleted. Major objects include:
Commands associated with a server or database
Major objects have the following properties to track their history and status.
LastProcessed (where appropriate)
The classification of an object as a major object affects how an instance of Analysis Services treats that object and how that object is handled in the object definition language. However, this classification does not guarantee that Analysis Services management and development tools will allow the independent creation, modification, or deletion of these objects.
Minor objects can only be created, altered, or deleted as part of creating, altering, or deleting the parent major object. Minor objects include:
Hierarchies and levels
Mining model columns
Commands associated with a cube
The ObjectExpansion restriction can be used to control the degree of expansion of ASSL XML returned by the server. This restriction has the options listed in the following table.
|Enumeration value||Allowed for <Alter>||Description|
|ReferenceOnly||no||Returns only the name, ID, and timestamp for the requested object and for all contained major objects recursively.|
|ObjectProperties||yes||Expands the requested object and minor contained objects, but does not return major contained objects.|
|ExpandObject||no||Same as ObjectProperties, but also returns the name, ID, and timestamp for contained major objects.|
|ExpandFull||yes||Fully expands the requested object and all contained objects recursively.|
This ASSL reference section describes the ExpandFull representation. All other ObjectExpansion levels are derived from this level.
ASSL includes read-only elements or properties (for example, LastProcessed) that can be read from the Analysis Services instance, but which are omitted when command scripts are submitted to the instance. Analysis Services ignores modified values for read-only elements without warning or error.
Analysis Services also ignores inappropriate or irrelevant properties without raising validation errors. For example, the X element should only be present when the Y element has a particular value. The Analysis Services instance ignores the X element instead of validating that element against the value of the Y element.