The Principia Machina/Diagrams/Key for structure diagrams
Appearance
Key for the structure diagrams. Part of the TPM hub. Hand-authored at TPS 0.1.0; every structure diagram links here.
- KIND: key
- LANGUAGE: DOT
- USED BY: diagrams 01, 06, 12, C1, C2
- SOURCE SHA-256:
9d3d79a45e749ba7ca1df6068b3010c6f5034003b87c5351ef480d73711c2c1d
Rendered live from the source below; if rendering is unavailable the source still stands.

Source, verbatim, while the graphviz tag is being repaired (see TPS docket G-08):
// K2 Key for structure diagrams (DOT, Bachman form). Every shape used by the structure diagrams, with its meaning.
digraph K2_key_for_structure_diagrams {
graph [rankdir=TB, fontname="Helvetica", fontsize=10, labelloc=t, nodesep=0.5, ranksep=0.6,
label="K2 KEY FOR STRUCTURE DIAGRAMS"];
node [shape=plaintext, fontname="Helvetica", fontsize=9]; edge [fontname="Helvetica", fontsize=8, arrowhead=vee];
OWNER [label=<<TABLE BORDER="1" CELLBORDER="1" CELLSPACING="0" CELLPADDING="3">
<TR><TD COLSPAN="3" BGCOLOR="#e8e8e8"><B>RECORD TYPE OR PAGE CLASS</B> where it lives (page, row, staging)</TD></TR>
<TR><TD>identity: how one is named</TD><TD>who writes it</TD><TD>how it is allocated</TD></TR>
<TR><TD COLSPAN="3" ALIGN="LEFT">field | field | field (the fields TPS names, in TPS's words)</TD></TR>
<TR><TD COLSPAN="3">TPS addresses that state the rules for this type</TD></TR></TABLE>>];
MEMBER [label=<<TABLE BORDER="1" CELLBORDER="1" CELLSPACING="0" CELLPADDING="3">
<TR><TD COLSPAN="2" BGCOLOR="#f4f4f4"><B>RECORD CLASS</B> lighter header: a class of register record</TD></TR>
<TR><TD COLSPAN="2" ALIGN="LEFT">its fields</TD></TR>
<TR><TD COLSPAN="2">addresses</TD></TR></TABLE>>];
REF [label=<<TABLE BORDER="1" CELLBORDER="1" CELLSPACING="0" CELLPADDING="3">
<TR><TD BGCOLOR="#e8e8e8"><B>ANOTHER TYPE</B></TD></TR><TR><TD>addresses</TD></TR></TABLE>>];
OWNER -> MEMBER [label="SET NAME\nA solid arrow is a set: owner to member.\nThe label is the set's name, then the rule\n(order, count, who allocates), then addresses"];
OWNER -> REF [label="CHECKED AGAINST\nA dashed arrow is a check or\nverification relationship, not ownership", style=dashed];
MEMBER -> REF [label="POINTER\nA dotted arrow is a reference held in a\nfield: a back-pointer, a WORKLOAD pointer", style=dotted];
MEMBER -> MEMBER [label="CITES\nA loop is a set among records\nof the same type"];
subgraph cluster_simple { label="Shapes in the simpler structure diagrams (01, 06, 12)"; style=filled; fillcolor="#f2f2f2";
node [shape=box, style=""]; L1 [label="plain box: a layer, page or object"]; L2 [label="three-dimensional box:\nthe Public Recorder, the host", shape=box3d];
L3 [label="octagon: a digest", shape=octagon]; L4 [label="note: a certificate or\na chain line", shape=note]; L5 [label="diamond: a gate or check", shape=diamond];
L1 -> L2 [label="solid: the relation named on the label", arrowhead=vee]; L2 -> L3 [label="dashed: a parameter or an audit relation", style=dashed]; L3 -> L4 [label="dotted, no head: hosts or holds", style=dotted, arrowhead=none];
}
}
- record box
- a record type or page class, in Bachman form. Header: the name and where it lives (page, row, staging). Second row: identity, writer, allocation. Field rows: the fields TPS names. Last row: the TPS addresses.
- lighter header
- a class of register record (withdrawal, corroboration, named-gap, verification, entry-status).
- solid arrow
- a set, owner to member; the label is the set's name, then the rule (order, count, who allocates), then addresses.
- dashed arrow
- a check or verification relationship, not ownership.
- dotted arrow
- a reference held in a field, such as a back-pointer or the WORKLOAD pointer.
- loop
- a set among records of the same type (CITES).
- in the simpler diagrams 01, 06 and 12
- plain box a layer, page or object; three-dimensional box the Public Recorder; octagon a digest; note a certificate or chain line; diamond a gate.