Hierarchy
Abstract base class for OLAP hierarchies that organize dimension members into structured levels, enabling multidimensional analysis through drill-down, roll-up, and slice-and-dice operations. Hierarchies serve as navigational pathways through dimension data, organizing members from most detailed (leaf) to most aggregated (all member) levels. They support both explicit level-based structures and parent-child self-referencing relationships.
Extends
- AbstractElement 🔗
Attributes
Name | Id | Type | Lower | Upper |
---|---|---|---|---|
allLevelName | false | EString | 0 | 1 |
Custom name for the All level when hasAll is true. If not specified, defaults to '(All)'. The All level represents the topmost aggregation level containing the single All member that aggregates all members in the hierarchy. | ||||
allMemberCaption | false | EString | 0 | 1 |
Display caption for the All member that appears in client tools and reports. This provides a user-friendly label that may differ from the internal allMemberName, supporting localization and business-friendly terminology. | ||||
allMemberName | false | EString | 0 | 1 |
Name of the All member when hasAll is true. If not specified, defaults to 'All [HierarchyName]s'. The All member serves as the root aggregation member containing the sum of all members in the hierarchy. | ||||
defaultMember | false | EString | 0 | 1 |
MDX expression identifying the default member used when this hierarchy is referenced in queries without an explicit member selection. If not specified, defaults to the All member (when hasAll=true) or the first member of the first level. This member serves as the implicit context for calculations and filtering. | ||||
displayFolder | false | EString | 0 | 1 |
Optional folder path for organizing this hierarchy in client tool dimension browsers and metadata trees. Supports hierarchical folder structures using forward slashes (e.g., 'Geography/Administrative') to create logical groupings for improved user experience and dimension organization. | ||||
hasAll | false | Boolean | 1 | 1 |
Controls whether this hierarchy includes an 'All' level containing a single member that aggregates all other members. When true (default), enables total aggregations and 'grand total' calculations. Time hierarchies often set this to false to prevent meaningless temporal aggregations across all time periods. | ||||
memberReaderClass | false | EString | 0 | 1 |
Fully qualified class name of a custom Java MemberReader implementation for loading hierarchy members. When specified, overrides the default member loading behavior to enable custom data sources, specialized caching strategies, security integration, or advanced member computation logic. The class must implement the MemberReader interface. | ||||
origin | false | EString | 0 | 1 |
Source system identifier indicating the origin of this hierarchy definition. Used for provenance tracking, debugging, and managing hierarchies that originate from multiple source systems or schema generation processes. Helpful for maintaining data lineage in complex multi-source OLAP environments. | ||||
uniqueKeyLevelName | false | EString | 0 | 1 |
Name of the level within this hierarchy that contains unique key values for member identification, establishing the granularity level where member keys become distinct and enabling proper member resolution in MDX queries, drill-through operations, and dimensional navigation scenarios. The unique key level defines the point in the hierarchical structure where member identification transitions from potentially shared keys at higher levels to guaranteed unique identifiers, which is crucial for maintaining data integrity. | ||||
visible | false | Boolean | 0 | 1 |
Boolean flag controlling whether this hierarchy appears in client tool hierarchy browsers, XMLA metadata discovery responses, and dimensional navigation interfaces, enabling sophisticated visibility management for hierarchical structures that may need to be hidden from general users while remaining accessible for programmatic access and advanced analytical scenarios. When set to false, the hierarchy becomes invisible to standard user interfaces and metadata enumeration operations but remains fully functional for direct MDX references, programmatic queries, and system-level operations that explicitly reference the hierarchy by name. |
References
Name | Type | Lower | Upper | Containment |
---|---|---|---|---|
memberReaderParameters | MemberReaderParameter🔗 | 0 | ∞ | true |
Collection of custom parameters passed to the member reader implementation for controlling member loading behavior, caching strategies, and performance optimization. These parameters enable fine-tuning of hierarchy-specific behaviors like prefetch depth, cache size, and custom loading rules. | ||||
primaryKey | Column🔗 | 1 | 1 | false |
Reference to the database column that serves as the primary key for this hierarchy's main dimension table, establishing the unique identifier system that enables proper member identification, hierarchical relationships, and join operations across the dimensional model. The primary key column is fundamental to the hierarchy's data integrity and query performance, providing the basis for all member lookups, parent-child relationships, and cross-dimensional joins that enable multidimensional analysis. | ||||
query | Query🔗 | 0 | 1 | false |
Reference to the Query object that defines how hierarchy members are retrieved from the underlying data source, specifying the SQL logic, table relationships, and data transformation rules required to populate this hierarchy with members from the dimensional database structures. The query reference establishes the critical link between the logical hierarchy definition and the physical data sources, enabling sophisticated data integration scenarios where hierarchy members may be sourced from complex table joins, views, stored procedures, or federated data sources. |
Used by
- Dimension🔗 → hierarchies
- Dimension🔗 → defaultHierarchy
- CalculatedMember🔗 → hierarchy
- DrillThroughAttribute🔗 → hierarchy
- AccessHierarchyGrant🔗 → hierarchy