@jbkoh @connorjcantrell I imagine you might have something like this already. Is it as simple as just adding a new relationship between brick:Controller and brick:Point, or is there other metadata we need to include? Do we need a similar relationship between the logical bacnet:Device and a physical brick:Controller?
Related to this is the idea of Point Groups: https://github.com/idun-corp/rec4/pull/7 . We may also want to allow Points to be grouped together even if they exist across Controllers.
A PointGroup is any logical collection of Points. It may be defined by the Points hosted on some controller. It may be defined as a group of points which exist across controllers (e.g. "my favorite points" or all the points for a "virtual meter"). A couple of questions:
should we have a hierarchy of PointGroup classes? A Controller could be a point group ("here are the points hosted by Controller 1.2.3.4") . An application could define its point group (e.g. " here are the points required for running FDD Rule 3 on AHU 4"). We could also use the Point Group to capture the hierarchies defined by point naming conventions (e.g. "AHU1/FCU3/Sensor4")
Should PointGroups remain a logical idea, or should they also cross into physical? We do define Controller as a physical object. It might "host" a Point (this crosses the boundary Physical(Controller) to Logical(Point)). Is this ok, or do we need to keep these worlds separate?
PointGroups also want to contain other PointGroups
@jbkoh @connorjcantrell I imagine you might have something like this already. Is it as simple as just adding a new relationship between
brick:Controller
andbrick:Point
, or is there other metadata we need to include? Do we need a similar relationship between the logicalbacnet:Device
and a physicalbrick:Controller
?Related to this is the idea of Point Groups: https://github.com/idun-corp/rec4/pull/7 . We may also want to allow Points to be grouped together even if they exist across Controllers.
A PointGroup is any logical collection of Points. It may be defined by the Points hosted on some controller. It may be defined as a group of points which exist across controllers (e.g. "my favorite points" or all the points for a "virtual meter"). A couple of questions:
PointGroups also want to contain other PointGroups