The new ArticleAttributeStructureGroupAttributeMap (AASGAM) entity

The old AASGAM model had two main disadvantages or bugs:

  • The reference to the structure group was based on the group identifier. Referencing identifiers is always a bad idea, because they can change. Imagine a structure group with about 1000 referencing items, all of them would have to be updated if the identifer of the structure group changes. That´s not really performant. Another more technical disadvantage is that the relation handler framework does not work.

  • The second disadvantage or bug is that the AASGAM had a reference to the subentity structure group attribute. This does not work together with the versioning algorithm due to the fact that only root entities can be versioned and so only root entites should be referenced.

The new model fixes both problems. By referencing proxies (and so database ids) you don´t have to update AASGAMs when the identifier of a group changes. In addition it offers new possibilities, for example a usage list.

Also the versioning problem is solved by the new model. By deleting the reference to structure group attribute, only root entities are referenced and so the versioning mechanism works (because the proxies/root entities references ids of tables above the Revision table).
The corresponding structure group attribute can be determined by the combination of the structuregroup and structure feature.

Last but not least we moved the default domain value to the AASGAM because this value is only valid for a structure which should be the key. The old default domain value (ArticleAttributeType.DomainValue) still exists but will be removed in next versions.

images/download/attachments/513738902/AASGAM_old.PNG

images/download/attachments/513738902/AASGAM_new.PNG