Entity-Relationship Modeling
An entity is any identifiable object (point, device, etc.) that exists independently. A relationship captures how one entity relates to another. For example, in your system you might have an AHU device that supplies air to a specific VAV device.
Using an English grammar analogy, entities can be thought of as nouns, while relationships can be thought of as verbs connecting two or more nouns (entities). For example: where AHU1 supplies VAV1, both AHU1 and VAV1 are nouns (entities) and “supplies” is the verb (relationship). Taking it further, AHU1 (the subject) supplies (the verb/predicate) VAV1 (the object).
You can also determine the relationship direction by examining the structure of the relationship. From the context of the first entity (the subject), the relation is an “outbound” relation. While from the context of the second entity (the object) the relation is an “inbound” relation.
In the
Component space, a BComponent is an entity, and BRelation is used to declare a relationship from one BComponent
to another BComponent. The from component is the subject
of the relation and the to component is the object of the relation.
A relation is created by adding a dynamic BRelation slot on
the object of the relationship. A “BLink” is a
specialized type of relation that defines a “data-flow”
relationship between a value slot of one component to a value slot
of one or more other components.