44 lines
1.1 KiB
Plaintext

let pole_type = [| 'Yang, 'Yin, 'Spiral |] in
let level_type = [| 'Axiom, 'Tension, 'Practice, 'Project, 'Moment |] in
let edge_type = [|
'Contains,
'TensionWith,
'ManifestsIn,
'ValidatedBy,
'FlowsTo,
'CyclesIn,
'SpiralsWith,
'LimitedBy,
'Complements,
|] in
{
Pole = pole_type,
AbstractionLevel = level_type,
EdgeType = edge_type,
Node = {
id | String,
name | String,
pole | pole_type,
level | level_type,
description | String,
invariant | Bool | default = false,
artifact_paths | Array String | default = [],
adrs | Array String | default = [],
},
Edge = {
from | String,
to | String,
kind | edge_type,
weight | Number | default = 1,
note | String | default = "",
},
CoreConfig = {
nodes | Array { id | String, name | String, pole | pole_type, level | level_type, description | String, invariant | Bool, artifact_paths | Array String, adrs | Array String },
edges | Array { from | String, to | String, kind | edge_type, weight | Number, note | String },
},
}