Default BIS presentation rules
iTwin.js delivers a supplemental presentation ruleset that gets automatically merged into all presentation rulesets that support BisCore ECSchema. The ruleset provides default behavior for various BIS types: Elements, Models, etc.
Label overrides
Label override rules are used when we calculate ECInstance display labels for trees, property grid and other components. Below is the algorithm for calculating the labels.
- For
BisCore:GeometricElement
and it's subclasses:- Use
CodeValue
. If empty, go to #2. - Use
UserLabel [base36(briefcase id)-base36(local id)]
. IfUserLabel
empty, go to #3. - Use
ECClassLabel [base36(briefcase id)-base36(local id)]
.
- Use
- For all other
BisCore:Element
subclasses:- Use
UserLabel
. If empty, go to #2. - Use
CodeValue
. If empty, go to #3. - Use
ECClassLabel [base36(briefcase id)-base36(local id)]
.
- Use
- For all
BisCore:Model
subclasses:- Use modeled
Element
's label (calculated using the above)
- Use modeled
briefcase id
and local id
are calculated from Element
's id:
briefcase id = element id >> 40
local id = element id & (1 << 40 - 1)
Content modifiers
Content modifier rules are applied when creating content for property grid, table and similar components. Each modifier is applied on specific types of ECInstances.
BisCore:Element
- Append properties
- of all related
BisCore:ElementUniqueAspect
s throughBisCore:ElementOwnsUniqueAspect
forward relationship - of all related
BisCore:ElementMultiAspect
s throughBisCore:ElementOwnsMultiAspects
forward relationship - of all related
BisCore:LinkElement
s throughBisCore:ElementHasLinks
forward relationship - of all related
BisCore:GroupInformationElement
s throughBisCore:ElementGroupsMembers
backward relationship- and their related
BisCore:LinkElement
s throughBisCore:ElementHasLinks
forward relationship
- and their related
- 'Identifier' as 'Source Element ID' of related
BisCore:ExternalSourceAspect
throughBisCore:ElementOwnsMultiAspects
forward relationship into the 'Source File Information' category - 'Url' as 'Source File Path' and 'UserLabel' as 'Source File Name' of related
BisCore:RepositoryLink
throughBisCore:ModelContainsElements
->BisCore:Model
->BisCore:ModelModelsElement
->BisCore:PhysicalPartition | BisCore:Drawing
->BisCore:ElementHasLinks
path.
- of all related
BisCore:PhysicalElement
- Append properties
- of all related
BisCore:PhysicalType
s throughBisCore:PhysicalElementIsOfType
forward relationship
- of all related
BisCore:SpatialLocationElement
- Append properties
- of all related
BisCore:SpatialLocationType
s throughBisCore:SpatialLocationIsOfType
forward relationship
- of all related
BisCore:DrawingGraphic
- Append properties
- of all related
BisCore:Element
s throughBisCore:DrawingGraphicRepresentsElement
forward relationship
- of all related
BisCore:GraphicalElement3d
- Append properties
- of all related
BisCore:Element
s throughBisCore:GraphicalElement3dRepresentsElement
forward relationship
- of all related
BisCore:PhysicalType
- Hide all properties (excluding subclass properties)
BisCore:SpatialLocationType
- Hide all properties (excluding subclass properties)
BisCore:LinkElement
- Hide
CodeValue
andUserLabel
properties
BisCore:UrlLink
- Hide
Description
property
BisCore:EmbeddedFileLink
- Hide
Description
property
Last Updated: 15 May, 2024
Found something wrong, missing, or unclear on this page?Raise an issue in our repo.