An asset may consist of several sub-assets, and those may have sub-assets as well. In order to expose such a hierarchy, the concept of References is used. Sub-assets shall be referenced from the asset with a hierarchical Reference, preferable 0:HasComponent or a subtype of it. Assets may reference their sub-assets directly, or have additional grouping Objects in between, potentially several layers of grouping Objects. In Figure 17, some examples are given. X:Asset1 contains two sub-assets, directly referenced, and the sub-asset X:Subasset1.2 contains additional two sub-assets. For X:Asset2, the sub-assets are not directly referenced, but some grouping Objects are in between.
Figure 17 – Example of structuring Sub-assets
In order to identify all sub-assets of an asset, a Client needs to follow all hierarchical References in forward direction from the asset recursively.