Start a new topic
Answered

Hierarchy types xDM supports

What kinds of hierarchies does xDM support? 

  • ragged?
  • fixed levels?
  • self-join?
  • any others?

Best Answer

Modeling hierarchies

Hierarchies can be modeled in Semarchy in three general patterns (or styles):

  1. Balanced hierarchies are usually (but not always) modeled as a series of different entities (one for each level of the hierarchy), with reference relationships linking the levels via foreign keys.  Each entity will have attributes appropriate for that level of the hierarchy. Product hierarchies are a typical example, and our Tutorial that configures a "Product Retail Demo" uses such a structure to define a product family, a product sub family, a product, and product items (SKUs/UPCs).
  2. Ragged hierarchies can be modeled using a self-join reference relationship within a single entity.  This allows a recursive structure to be captured, to any depth:
    1. You add foreign keys in the usual way - most commonly in the Diagram view of the Semarchy Workbench: click Add Reference and then drag and drop to create the relationships between an entity and itself - drag from the entity slightly away and then back onto itself, and it will create a self-join foreign key.
  3. Ragged hierarchies can also be modeled using a separate relationship entity, that contains the foreign keys of the parent and of the child records in a recursive relationship.  This gives more flexibility than the simple self-join in (2) above, because multiple relationships can be defined for different reasons - and that reason can become an additional attribute in the relationship entity.  This permits alternate roll-up structures to be modeled - for example, different aggregations in financial hierarchies are common in EPM, BI and reporting applications (eg. to generate financial reports that are compliant with different global accounting standards).
    1. You add foreign keys in the usual way - most commonly in the Diagram view of the Workbench: click Add Reference and then drag and drop to create the relationships between the entity and the relationship entity
    2. In Semarchy, these relationship entities are usually Basic entities (even though the entities whose structures they control might be Fuzzy Matched or ID Matched entities).

Navigating hierarchies

Hierarchies can be displayed and navigated in Semarchy by using the hierarchy options when defining a business view.

  • The same process is used no matter which style of modeling was used.  The Semarchy xDM Developer's Guide describes how to configure hierarchies in the section on Business Views.
  • It is possible to display multiple hierarchical relationships in Semarchy - for example, in the Product Retail Demo application it is possible to configure hierarchy navigation by Product Family, Product Sub-Family, Product and Item, and also to navigate (in the same tree view) into the permitted sizes that are appropriate for each Product Family.
1 Comment

Answer

Modeling hierarchies

Hierarchies can be modeled in Semarchy in three general patterns (or styles):

  1. Balanced hierarchies are usually (but not always) modeled as a series of different entities (one for each level of the hierarchy), with reference relationships linking the levels via foreign keys.  Each entity will have attributes appropriate for that level of the hierarchy. Product hierarchies are a typical example, and our Tutorial that configures a "Product Retail Demo" uses such a structure to define a product family, a product sub family, a product, and product items (SKUs/UPCs).
  2. Ragged hierarchies can be modeled using a self-join reference relationship within a single entity.  This allows a recursive structure to be captured, to any depth:
    1. You add foreign keys in the usual way - most commonly in the Diagram view of the Semarchy Workbench: click Add Reference and then drag and drop to create the relationships between an entity and itself - drag from the entity slightly away and then back onto itself, and it will create a self-join foreign key.
  3. Ragged hierarchies can also be modeled using a separate relationship entity, that contains the foreign keys of the parent and of the child records in a recursive relationship.  This gives more flexibility than the simple self-join in (2) above, because multiple relationships can be defined for different reasons - and that reason can become an additional attribute in the relationship entity.  This permits alternate roll-up structures to be modeled - for example, different aggregations in financial hierarchies are common in EPM, BI and reporting applications (eg. to generate financial reports that are compliant with different global accounting standards).
    1. You add foreign keys in the usual way - most commonly in the Diagram view of the Workbench: click Add Reference and then drag and drop to create the relationships between the entity and the relationship entity
    2. In Semarchy, these relationship entities are usually Basic entities (even though the entities whose structures they control might be Fuzzy Matched or ID Matched entities).

Navigating hierarchies

Hierarchies can be displayed and navigated in Semarchy by using the hierarchy options when defining a business view.

  • The same process is used no matter which style of modeling was used.  The Semarchy xDM Developer's Guide describes how to configure hierarchies in the section on Business Views.
  • It is possible to display multiple hierarchical relationships in Semarchy - for example, in the Product Retail Demo application it is possible to configure hierarchy navigation by Product Family, Product Sub-Family, Product and Item, and also to navigate (in the same tree view) into the permitted sizes that are appropriate for each Product Family.
Login to post a comment