Overview
RuleReserve is a network service to store, sift, and transmit rules-as-data. There are two sifting steps. First, the RuleReserve network nodes use the package of reported facts to sift an initial collection of the ‘In Effect’ and ‘Applicable’ rules. Then separately, the originating RuleTaker component re-uses the same reported facts (and optionally, additional facts) to sift from the logic gates of the pre-sifted rules, only the Output Assertions that are ‘Invoked’ by the facts. This whole round-trip rules-as-data process can occur almost instantaneously because there are no computationally heavy processes.
The scope of the DWDS is only to enable the communication of normative propositions, without inference and without usurping the prerogatives of others to guide action. We refer to this as Artificial Naïvety. Matters relating to context, comprehension, purpose, reason, learning or motivation are all deemed to be end-user prerogatives, to be processed at the edge of the network. In this design, operators of RuleReserve nodes provide nothing other than data structuring and storage, and run-time request-response sift-and-transmit services. Each node uses passive data from transitory messages to perform sifting operations (aka ‘signal matching’) upon persistent rules in storage. Thus a RuleReserve node has no methods to retain or copy any data or metadata concerned with context, comprehension, purpose, reason, learning or motivation. All it does is return a response to the source of the run-time request. The requester is responsible for their own auditable activity logs.
DWDS’s RuleReserve network and decentralized RuleTaker applications each implement this simple, scalable, fault-tolerant design pattern which automatically sifts and sorts large volumes of distributed data in a single pass (i.e. without ‘loop’ or ‘if’ statements) using parallel processing across as many available platforms as required. The decentralized sifting process of DWDS is comparable to, but functionally much simpler than the well-known map/reduce data pipeline across a data fabric.
Anyone organizing to set up and operate a Superset RuleReserve node can obtain the latest comprehensive [rulereserve.dwd] catalogue file via its ongoing Internet dissemination; and, anyone running a Subset RuleReserve node can select from that distributed collection. Rule-taker agents may then obtain directly or via their machines, on-demand sifted selections of rules from any node(s) accessible to them across cascading nodes on the network. Downstream end users and nodes can routinely perform automated updates and integrity checks against the audited and certified Superset RR nodes.
RuleReserve relies on IPFS for network storage. The RuleReserve Superset table will eventually become very large and will be hosted on a few general-purpose high capacity, high resilience nodes. Each independently-controlled RuleReserve Subset table will be whatever size the manager of the node determines is needed to hold a table with all the rows of rules that are ‘in effect’ and ‘applicable’ to that manager’s requirements.
See documentation at:
https://gitlab.com/xalgorithms-alliance/rule-networking-software/prod-impl/-/blob/master/README.md
https://gitlab.com/xalgorithms-alliance/data-with-direction-specification/dwds-documents/-/tree/master/rr-sequence-diagram
Members
Manager: Joseph Potvin
Developer: Ali Yildirim, Andrew Feng, Charles Langlois, Don Kelly, Huda Hussain, Nhamoinesu Mtetwa
-