Model Fundamentals
A Model
is a container that owns a collection of Elements. Every Element is contained by exactly one Model as defined by the ModelContainsElements
relationship. Models help organize the overall contents of the repository as there is a separate container for each collection of Elements.
The Model contents are driven by:
- The Model subclass
- Model specializations may limit the types of Elements that can be contained.
- The granularity or level of detail
- The object as a whole vs. a finer-grained breakdown of it.
- User preferences
- Some users may organize by spatial location (east wing vs. west wing) while others may organize by discipline (building vs. civil).
- Domain rules
- Some rules are enforced by code and are not customizable by users.
Core Model Types
Model subclass | Type of Elements contained |
---|---|
PhysicalModel |
PhysicalElements, SpatialLocationElements, GraphicalElement3d and InformationContentElements |
SpatialLocationModel |
SpatialLocationElements, GraphicalElement3d and InformationContentElements |
DrawingModel |
GeometricElement2d elements |
GraphicalModel3d |
GraphicalElement3d elements |
DefinitionModel |
DefinitionElements and InformationContentElements |
InformationRecordModel |
InformationRecordElements |
GroupInformationModel |
GroupInformationElements |
DocumentListModel |
Document elements |
RoleModel |
RoleElements and InformationContentElements |
Model Identity
Models are also a key building block of the information hierarchy within a BIS repository. Looking down the information hierarchy, Models are collections of Elements. Looking up the information hierarchy, Models are more detail about an Element from a higher level. This higher-level Element is known as the modeled element. The modeled element is what gives a Model its identity. The value of the model's Id matches the value of the modeled element's Id.
The Model is related to its modeled Element via the ModelModelsElement
relationship. Also, a Model does not store a name of its own. Instead, its name comes from the CodeValue
of its modeled element.
See Information Hierarchy for more details.
| Next: Relationship Fundamentals |:---
Last Updated: 30 November, 2023