Rule Maker RFC » History » Version 2
Calvin Hutcheon, 05/09/2022 11:16 PM
| 1 | 1 | Calvin Hutcheon | # Rule Maker RFC |
|---|---|---|---|
| 2 | |||
| 3 | 2 | Calvin Hutcheon | ## Description |
| 4 | |||
| 5 | There's a need for a distributed, general-purpose method that enables any person to author, publish, discover, fetch, scrutinize, prioritize and optionally automate rules on digital networks at scale and with speed. The Xalgorithms Foundation has created a general purpose free/libre/open method called [DWDS](https://gitlab.com/xalgorithms-alliance/dwds-documents/-/blob/master/current/DBA-Thesis_JPotvin_UQuebec-UQO.pdf). Rule Maker is an interface that enables users to construct rules in a way that is consistent with the Data with Direction specification. |
||
| 6 | |||
| 7 | Rule Maker adopts a philosophy of iterative development... |
||
| 8 | |||
| 9 | Given the emergent nature of the interface, Rule Maker is being developed using a methodology of continuous testing |
||
| 10 | |||
| 11 | RM v0.4 is a webapp built in Svelte |
||
| 12 | |||
| 13 | |||
| 14 | ## Features |
||
| 15 | |||
| 16 | Rule authoring is a complex process comprised of a number of activities. However, only some of these must be supported by RMv4. This diagram shows what is supported in the application and what takes place outside. |
||
| 17 | |||
| 18 | <iframe border="1px solid rgba(0, 0, 0, 0.1);" width="100%" height="450" src="https://www.figma.com/embed?embed_host=share&url=https%3A%2F%2Fwww.figma.com%2Ffile%2FXz37GPQS5Zw5CRf1ljobHM%2FRM-Activity-Map%3Fnode-id%3D0%253A1" allowfullscreen></iframe> |
||
| 19 | |||
| 20 | This diagram defines all the actions that a user would need to accomplish in rule maker. |
||
| 21 | |||
| 22 | <iframe border="1px solid rgba(0, 0, 0, 0.1)" width="800" height="450" src="https://www.figma.com/embed?embed_host=share&url=https%3A%2F%2Fwww.figma.com%2Ffile%2FDqjfZzcD8kYAHEKpMohY1f%2Frule-maker%3Fnode-id%3D0%253A1" allowfullscreen></iframe> |
||
| 23 | |||
| 24 | A required actions across the main areas of RM |
||
| 25 | |||
| 26 | - dev |
||
| 27 | - manifest doc enabling dev to define: |
||
| 28 | - path to json doc defining custom metadata fields (aka a [rule template](https://communications.xalgorithms.org/rule-maker/rule-templates/)) |
||
| 29 | - path to css defining custom styling choices |
||
| 30 | |||
| 31 | - application |
||
| 32 | - metadata |
||
| 33 | - display fields as defined by json document |
||
| 34 | - structure user input into well formatted json per DWDS |
||
| 35 | - table editor |
||
| 36 | - display table editor UI |
||
| 37 | - structure user input into well formatted json per DWDS |
||
| 38 | - output |
||
| 39 | - display fields as defined by json document |
||
| 40 | - structure user input into well formatted json per DWDS |
||
| 41 | - publication |
||
| 42 | - download json |
||
| 43 | - publish to RR (??) |
||
| 44 | |||
| 45 | ## Iterative Development |
||
| 46 | |||
| 47 | What's been learned so far? |
||
| 48 | |||
| 49 | ## Developer and User Experience |
-