ABCDEFGHIJKLMNOPQRSTUVWXYZ
1
EntitiesPersona (user) or Purpose (system)
2
Users (humans)
3
Murmurations User (MU)• Wants to find orgs and enterprises operating in the solidarity economy (or other regenerative projects)
4
Node Operator (NO)• Wants to make their project/organisation/news visible to MUs
5
Aggregator (AG)• Wants to show maps, directories and other profile data provided by NOs to MUs (generally related to a specific topic or geographic focus)
6
Index Operator (IO)• Wants to hold Node-Schema references/indices and share it with AGs
7
Developer (DEV)• Wants to build/improve software for the Murmurations Protocol and/or for AGs
8
Steering Group (SG)• Wants to have stewardship of the Murmurations Protocol
• Wants to manage and share Schemas and Field definitions
• Wants to disambiguate Field names when needed
• Wants to maintain a Schema white list to ensure relevant content
9
Systems (machines)
10
Node (website)• The holder of data to be discovered by AGs (can be NO's own website or a service that hosts Node profile data)
11
Node UI (website)• Enables NOs to provide Node profile data for one or more Schemas and submit to an Index
12
Index service (server)• Stores and provides a list of all Nodes and associated Schemas
• Enables AGs to search for Nodes using specific Schemas (and by date/time of any changes made)
13
Aggregator App (website or mobile app)• Enables AGs to share aggregated Node data with the world
14
Library (git repo)• Stores and provides all Fields and Schemas
• Enables discovery of Schemas/Fields by NOs and AGs
• Enables AGs to upload new Schemas & suggest new Field definitions
• Enables SGs to review/publish Schemas
• Enables SGs to add/modify Fields
15
Library service (server)• Pulls updated Schemas and Field definitions from the Library (git repo)
• Stores and provides a list of all Schemas to Node UIs to enable NOs to select relevant networks in which to add their Node profile
• Stores and provides a list of all Schemas and Field definitions to Index to enable Node profile data validation
16
17
LayersWhat is it?What does it / do they do?Who interacts with it & how?How are changes managed?Final outputAffects
18
ProtocolA set of rules which define how data is transmitted through the Murmurations network• Defines the rules of the data structures (i.e., how Schemas and Fields work)
• Enables creation of Schemas/Fields by Aggregators
• Enables indexing of Nodes by Indices
• Enables discovery of Nodes by Aggregator Apps
• DEVs write software (Index, UIs) that follow the Murmurations Protocol• Protocol changes are managed carefully by the SGText documentsEveryone using MP
19
20
Data StructureSchemas are sets of specific Fields• Defines data that aggregators want to collect for their apps• AGs through Library UI
• NOs through Node UI
• Index validates all data according to Schema and Field definitions before indexing it
• Schema changes are managed by AggregatorsJSON Schema documentsUsers of particular Schemas (NOs and AGs)
21
22
Fields capture the data inputs from Nodes• Defines lexical semantics of data properties (what is a "name"? - input type (string, number, array of strings, etc.), min/max length, URL to field definition (e.g., Schema.org/name), etc.)• NOs through Node UI
• AGs & SGs through Library
• Node Operators (NOs) can change the data they enter into Fields at any time
• Field definitions are reviewed by the SG
JSON data filesUsers of particular Fields (NOs and AGs)
23
24
InterfacesNode UI - User Interface for NOs• Provides access to the Schemas (and associated Fields) via the Wordpress 'Murmurations settings' page AND via the JSON creator form (for non WP sites)
• NOs through Node UI/JSON creator form• Murmurations DEVs define changes, based on user needsCodeNOs
25
26
Aggregator App - User interface for MUs• Delivers maps, directories and other aggregators, which pull in Murmurations data• Anyone who browses a AG's website or uses its app (MUs)
• DEVs who want to build specific Aggregator Apps
• Changes defined by the Aggregator Apps' developersCodeUsers of particular Schemas (NOs and AGs) and MUs
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100