-
Notifications
You must be signed in to change notification settings - Fork 0
Techinical Overview
The core of DSB (Dynamic Structure-Base) is made up of a collection of dynamic hyperarcs that collectively form a hypergraph (1)(2). A hyperarc represents a directed relationship, in the case of DSB two things are related to one other just as an object+attribute relates to a value. The hyperarcs are dynamic as they are defined by a hyperpath and so the relationship the hyperarc gives can change when the structure of the hypergraph changes. Using dependency maintenance, hyperarcs are informed when their hyperpaths have changed and so must be re-navigated to determine their relationship.
Communication between hyperarcs and between external agents and the hypergraph is performed entirely by events. Events are generated to observe and modify the hypergraph, as well as for path navigation and dependency maintenance. Therefore, the core of DSB is an event router that routes the events to the relevant hyperarcs that may be located on different machines.
A DSB hyperarc has a tail of cardinality 2; in other words each hyperarc is identified by and consists of two source connections which together point to a single head connection.
Each hyperarc is defined by a hyperpath through the same hypergraph that the hyperarc belongs to. It would be problematic, however, if a hyperarcs hyperpath definition referred to the hyperarc being defined by it as that would, in effect, result in an infinite loop (there are ways to work around this).
A hyperpath consists of a set of starting points which, when combined, describe a route through the hypergraph that must finish at a single point. The single result then becomes the head of the hyperarc defined by the hyperpath.

