org.latha.gathering

nandi.uk

Schema Diff

+11 -195

From

CID
bafyreibmlbvifme...
Indexed At
2026-04-25 20:35 UTC
View this version

To

CID
bafyreigskbtu55t...
Indexed At
2026-04-25 22:34 UTC
View this version

Compatibility Analysis

Breaking Changes Detected

69 breaking changes, 0 non-breaking changes.

Breaking Changes (69)
  • RequiredEdgeRemoved RequiredEdgeRemoved { vertex_id: "org.latha.gathering#infraLayer", src: "org.latha.gathering#infraLayer", tgt: "org.latha.gathering#infraLayer.name", kind: "prop", name: Some("name") }
  • RequiredEdgeRemoved RequiredEdgeRemoved { vertex_id: "org.latha.gathering#convergenceAssessment", src: "org.latha.gathering#convergenceAssessment", tgt: "org.latha.gathering#convergenceAssessment.framework", kind: "prop", name: Some("framework") }
  • RequiredEdgeRemoved RequiredEdgeRemoved { vertex_id: "org.latha.gathering#connection", src: "org.latha.gathering#connection", tgt: "org.latha.gathering#connection.target", kind: "prop", name: Some("target") }
  • RequiredEdgeRemoved RequiredEdgeRemoved { vertex_id: "org.latha.gathering#connection", src: "org.latha.gathering#connection", tgt: "org.latha.gathering#connection.type", kind: "prop", name: Some("type") }
  • RequiredEdgeRemoved RequiredEdgeRemoved { vertex_id: "org.latha.gathering#connection", src: "org.latha.gathering#connection", tgt: "org.latha.gathering#connection.source", kind: "prop", name: Some("source") }
  • RequiredEdgeRemoved RequiredEdgeRemoved { vertex_id: "org.latha.gathering#alignment", src: "org.latha.gathering#alignment", tgt: "org.latha.gathering#alignment.principle", kind: "prop", name: Some("principle") }
  • RequiredEdgeRemoved RequiredEdgeRemoved { vertex_id: "org.latha.gathering#alignment", src: "org.latha.gathering#alignment", tgt: "org.latha.gathering#alignment.feature", kind: "prop", name: Some("feature") }
  • RemovedVertex RemovedVertex { vertex_id: "org.latha.gathering#alignment" }
  • RemovedVertex RemovedVertex { vertex_id: "org.latha.gathering#alignment.feature" }
  • RemovedVertex RemovedVertex { vertex_id: "org.latha.gathering#alignment.principle" }
  • RemovedVertex RemovedVertex { vertex_id: "org.latha.gathering#alignment.strength" }
  • RemovedVertex RemovedVertex { vertex_id: "org.latha.gathering#connection" }
  • RemovedVertex RemovedVertex { vertex_id: "org.latha.gathering#connection.description" }
  • RemovedVertex RemovedVertex { vertex_id: "org.latha.gathering#connection.source" }
  • RemovedVertex RemovedVertex { vertex_id: "org.latha.gathering#connection.target" }
  • RemovedVertex RemovedVertex { vertex_id: "org.latha.gathering#connection.type" }
  • RemovedVertex RemovedVertex { vertex_id: "org.latha.gathering#convergenceAssessment" }
  • RemovedVertex RemovedVertex { vertex_id: "org.latha.gathering#convergenceAssessment.alignments" }
  • RemovedVertex RemovedVertex { vertex_id: "org.latha.gathering#convergenceAssessment.alignments:items" }
  • RemovedVertex RemovedVertex { vertex_id: "org.latha.gathering#convergenceAssessment.framework" }
  • RemovedVertex RemovedVertex { vertex_id: "org.latha.gathering#convergenceAssessment.gaps" }
  • RemovedVertex RemovedVertex { vertex_id: "org.latha.gathering#convergenceAssessment.overallAlignment" }
  • RemovedVertex RemovedVertex { vertex_id: "org.latha.gathering#emerging" }
  • RemovedVertex RemovedVertex { vertex_id: "org.latha.gathering#infraLayer" }
  • RemovedVertex RemovedVertex { vertex_id: "org.latha.gathering#infraLayer.description" }
  • RemovedVertex RemovedVertex { vertex_id: "org.latha.gathering#infraLayer.name" }
  • RemovedVertex RemovedVertex { vertex_id: "org.latha.gathering#infraLayer.responsible" }
  • RemovedVertex RemovedVertex { vertex_id: "org.latha.gathering#infraLayer.responsible:items" }
  • RemovedVertex RemovedVertex { vertex_id: "org.latha.gathering#infrastructureMap" }
  • RemovedVertex RemovedVertex { vertex_id: "org.latha.gathering#infrastructureMap.layers" }
  • RemovedVertex RemovedVertex { vertex_id: "org.latha.gathering#infrastructureMap.layers:items" }
  • RemovedVertex RemovedVertex { vertex_id: "org.latha.gathering#moderate" }
  • RemovedVertex RemovedVertex { vertex_id: "org.latha.gathering#networkAnalysis" }
  • RemovedVertex RemovedVertex { vertex_id: "org.latha.gathering#networkAnalysis.connections" }
  • RemovedVertex RemovedVertex { vertex_id: "org.latha.gathering#networkAnalysis.connections:items" }
  • RemovedVertex RemovedVertex { vertex_id: "org.latha.gathering#networkAnalysis.keyInsights" }
  • RemovedVertex RemovedVertex { vertex_id: "org.latha.gathering#networkAnalysis.keyInsights:items" }
  • RemovedVertex RemovedVertex { vertex_id: "org.latha.gathering#none" }
  • RemovedVertex RemovedVertex { vertex_id: "org.latha.gathering#strong" }
  • RemovedVertex RemovedVertex { vertex_id: "org.latha.gathering:body.sections:items:variant1" }
  • RemovedVertex RemovedVertex { vertex_id: "org.latha.gathering:body.sections:items:variant2" }
  • RemovedVertex RemovedVertex { vertex_id: "org.latha.gathering:body.sections:items:variant3" }
  • RemovedEdge RemovedEdge { src: "org.latha.gathering#alignment", tgt: "org.latha.gathering#alignment.strength", kind: "prop", name: Some("strength") }
  • RemovedEdge RemovedEdge { src: "org.latha.gathering#connection", tgt: "org.latha.gathering#connection.description", kind: "prop", name: Some("description") }
  • RemovedEdge RemovedEdge { src: "org.latha.gathering#connection.source", tgt: "org.latha.gathering#actorRef", kind: "ref", name: None }
  • RemovedEdge RemovedEdge { src: "org.latha.gathering#connection.target", tgt: "org.latha.gathering#actorRef", kind: "ref", name: None }
  • RemovedEdge RemovedEdge { src: "org.latha.gathering#convergenceAssessment", tgt: "org.latha.gathering#convergenceAssessment.alignments", kind: "prop", name: Some("alignments") }
  • RemovedEdge RemovedEdge { src: "org.latha.gathering#convergenceAssessment", tgt: "org.latha.gathering#convergenceAssessment.gaps", kind: "prop", name: Some("gaps") }
  • RemovedEdge RemovedEdge { src: "org.latha.gathering#convergenceAssessment", tgt: "org.latha.gathering#convergenceAssessment.overallAlignment", kind: "prop", name: Some("overallAlignment") }
  • RemovedEdge RemovedEdge { src: "org.latha.gathering#convergenceAssessment.alignments", tgt: "org.latha.gathering#convergenceAssessment.alignments:items", kind: "items", name: None }
  • RemovedEdge RemovedEdge { src: "org.latha.gathering#convergenceAssessment.alignments:items", tgt: "org.latha.gathering#alignment", kind: "ref", name: None }
  • RemovedEdge RemovedEdge { src: "org.latha.gathering#infraLayer", tgt: "org.latha.gathering#infraLayer.description", kind: "prop", name: Some("description") }
  • RemovedEdge RemovedEdge { src: "org.latha.gathering#infraLayer", tgt: "org.latha.gathering#infraLayer.responsible", kind: "prop", name: Some("responsible") }
  • RemovedEdge RemovedEdge { src: "org.latha.gathering#infraLayer.responsible", tgt: "org.latha.gathering#infraLayer.responsible:items", kind: "items", name: None }
  • RemovedEdge RemovedEdge { src: "org.latha.gathering#infraLayer.responsible:items", tgt: "org.latha.gathering#actorRef", kind: "ref", name: None }
  • RemovedEdge RemovedEdge { src: "org.latha.gathering#infrastructureMap", tgt: "org.latha.gathering#infrastructureMap.layers", kind: "prop", name: Some("layers") }
  • RemovedEdge RemovedEdge { src: "org.latha.gathering#infrastructureMap.layers", tgt: "org.latha.gathering#infrastructureMap.layers:items", kind: "items", name: None }
  • RemovedEdge RemovedEdge { src: "org.latha.gathering#infrastructureMap.layers:items", tgt: "org.latha.gathering#infraLayer", kind: "ref", name: None }
  • RemovedEdge RemovedEdge { src: "org.latha.gathering#networkAnalysis", tgt: "org.latha.gathering#networkAnalysis.connections", kind: "prop", name: Some("connections") }
  • RemovedEdge RemovedEdge { src: "org.latha.gathering#networkAnalysis", tgt: "org.latha.gathering#networkAnalysis.keyInsights", kind: "prop", name: Some("keyInsights") }
  • RemovedEdge RemovedEdge { src: "org.latha.gathering#networkAnalysis.connections", tgt: "org.latha.gathering#networkAnalysis.connections:items", kind: "items", name: None }
  • RemovedEdge RemovedEdge { src: "org.latha.gathering#networkAnalysis.connections:items", tgt: "org.latha.gathering#connection", kind: "ref", name: None }
  • RemovedEdge RemovedEdge { src: "org.latha.gathering#networkAnalysis.keyInsights", tgt: "org.latha.gathering#networkAnalysis.keyInsights:items", kind: "items", name: None }
  • RemovedEdge RemovedEdge { src: "org.latha.gathering:body.sections:items", tgt: "org.latha.gathering:body.sections:items:variant1", kind: "variant", name: Some("org.latha.gathering#networkAnalysis") }
  • RemovedEdge RemovedEdge { src: "org.latha.gathering:body.sections:items", tgt: "org.latha.gathering:body.sections:items:variant2", kind: "variant", name: Some("org.latha.gathering#convergenceAssessment") }
  • RemovedEdge RemovedEdge { src: "org.latha.gathering:body.sections:items", tgt: "org.latha.gathering:body.sections:items:variant3", kind: "variant", name: Some("org.latha.gathering#infrastructureMap") }
  • RemovedEdge RemovedEdge { src: "org.latha.gathering:body.sections:items:variant1", tgt: "org.latha.gathering#networkAnalysis", kind: "ref", name: None }
  • RemovedEdge RemovedEdge { src: "org.latha.gathering:body.sections:items:variant2", tgt: "org.latha.gathering#convergenceAssessment", kind: "ref", name: None }
  • RemovedEdge RemovedEdge { src: "org.latha.gathering:body.sections:items:variant3", tgt: "org.latha.gathering#infrastructureMap", kind: "ref", name: None }

Migration Guidance

Removed Elements

  • RemovedVertex { vertex_id: "org.latha.gathering#alignment" }
  • RemovedVertex { vertex_id: "org.latha.gathering#alignment.feature" }
  • RemovedVertex { vertex_id: "org.latha.gathering#alignment.principle" }
  • RemovedVertex { vertex_id: "org.latha.gathering#alignment.strength" }
  • RemovedVertex { vertex_id: "org.latha.gathering#connection" }
  • RemovedVertex { vertex_id: "org.latha.gathering#connection.description" }
  • RemovedVertex { vertex_id: "org.latha.gathering#connection.source" }
  • RemovedVertex { vertex_id: "org.latha.gathering#connection.target" }
  • RemovedVertex { vertex_id: "org.latha.gathering#connection.type" }
  • RemovedVertex { vertex_id: "org.latha.gathering#convergenceAssessment" }
  • RemovedVertex { vertex_id: "org.latha.gathering#convergenceAssessment.alignments" }
  • RemovedVertex { vertex_id: "org.latha.gathering#convergenceAssessment.alignments:items" }
  • RemovedVertex { vertex_id: "org.latha.gathering#convergenceAssessment.framework" }
  • RemovedVertex { vertex_id: "org.latha.gathering#convergenceAssessment.gaps" }
  • RemovedVertex { vertex_id: "org.latha.gathering#convergenceAssessment.overallAlignment" }
  • RemovedVertex { vertex_id: "org.latha.gathering#emerging" }
  • RemovedVertex { vertex_id: "org.latha.gathering#infraLayer" }
  • RemovedVertex { vertex_id: "org.latha.gathering#infraLayer.description" }
  • RemovedVertex { vertex_id: "org.latha.gathering#infraLayer.name" }
  • RemovedVertex { vertex_id: "org.latha.gathering#infraLayer.responsible" }
  • RemovedVertex { vertex_id: "org.latha.gathering#infraLayer.responsible:items" }
  • RemovedVertex { vertex_id: "org.latha.gathering#infrastructureMap" }
  • RemovedVertex { vertex_id: "org.latha.gathering#infrastructureMap.layers" }
  • RemovedVertex { vertex_id: "org.latha.gathering#infrastructureMap.layers:items" }
  • RemovedVertex { vertex_id: "org.latha.gathering#moderate" }
  • RemovedVertex { vertex_id: "org.latha.gathering#networkAnalysis" }
  • RemovedVertex { vertex_id: "org.latha.gathering#networkAnalysis.connections" }
  • RemovedVertex { vertex_id: "org.latha.gathering#networkAnalysis.connections:items" }
  • RemovedVertex { vertex_id: "org.latha.gathering#networkAnalysis.keyInsights" }
  • RemovedVertex { vertex_id: "org.latha.gathering#networkAnalysis.keyInsights:items" }
  • RemovedVertex { vertex_id: "org.latha.gathering#none" }
  • RemovedVertex { vertex_id: "org.latha.gathering#strong" }
  • RemovedVertex { vertex_id: "org.latha.gathering:body.sections:items:variant1" }
  • RemovedVertex { vertex_id: "org.latha.gathering:body.sections:items:variant2" }
  • RemovedVertex { vertex_id: "org.latha.gathering:body.sections:items:variant3" }

Additional Notes

  • Breaking: RequiredEdgeRemoved { vertex_id: "org.latha.gathering#connection", src: "org.latha.gathering#connection", tgt: "org.latha.gathering#connection.target", kind: "prop", name: Some("target") }
  • Breaking: RequiredEdgeRemoved { vertex_id: "org.latha.gathering#connection", src: "org.latha.gathering#connection", tgt: "org.latha.gathering#connection.type", kind: "prop", name: Some("type") }
  • Breaking: RequiredEdgeRemoved { vertex_id: "org.latha.gathering#connection", src: "org.latha.gathering#connection", tgt: "org.latha.gathering#connection.source", kind: "prop", name: Some("source") }
  • Breaking: RequiredEdgeRemoved { vertex_id: "org.latha.gathering#convergenceAssessment", src: "org.latha.gathering#convergenceAssessment", tgt: "org.latha.gathering#convergenceAssessment.framework", kind: "prop", name: Some("framework") }
  • Breaking: RequiredEdgeRemoved { vertex_id: "org.latha.gathering#alignment", src: "org.latha.gathering#alignment", tgt: "org.latha.gathering#alignment.principle", kind: "prop", name: Some("principle") }
  • Breaking: RequiredEdgeRemoved { vertex_id: "org.latha.gathering#alignment", src: "org.latha.gathering#alignment", tgt: "org.latha.gathering#alignment.feature", kind: "prop", name: Some("feature") }
  • Breaking: RequiredEdgeRemoved { vertex_id: "org.latha.gathering#infraLayer", src: "org.latha.gathering#infraLayer", tgt: "org.latha.gathering#infraLayer.name", kind: "prop", name: Some("name") }
  • Breaking: RemovedEdge { src: "org.latha.gathering#alignment", tgt: "org.latha.gathering#alignment.strength", kind: "prop", name: Some("strength") }
  • Breaking: RemovedEdge { src: "org.latha.gathering#connection", tgt: "org.latha.gathering#connection.description", kind: "prop", name: Some("description") }
  • Breaking: RemovedEdge { src: "org.latha.gathering#connection.source", tgt: "org.latha.gathering#actorRef", kind: "ref", name: None }
  • Breaking: RemovedEdge { src: "org.latha.gathering#connection.target", tgt: "org.latha.gathering#actorRef", kind: "ref", name: None }
  • Breaking: RemovedEdge { src: "org.latha.gathering#convergenceAssessment", tgt: "org.latha.gathering#convergenceAssessment.alignments", kind: "prop", name: Some("alignments") }
  • Breaking: RemovedEdge { src: "org.latha.gathering#convergenceAssessment", tgt: "org.latha.gathering#convergenceAssessment.gaps", kind: "prop", name: Some("gaps") }
  • Breaking: RemovedEdge { src: "org.latha.gathering#convergenceAssessment", tgt: "org.latha.gathering#convergenceAssessment.overallAlignment", kind: "prop", name: Some("overallAlignment") }
  • Breaking: RemovedEdge { src: "org.latha.gathering#convergenceAssessment.alignments", tgt: "org.latha.gathering#convergenceAssessment.alignments:items", kind: "items", name: None }
  • Breaking: RemovedEdge { src: "org.latha.gathering#convergenceAssessment.alignments:items", tgt: "org.latha.gathering#alignment", kind: "ref", name: None }
  • Breaking: RemovedEdge { src: "org.latha.gathering#infraLayer", tgt: "org.latha.gathering#infraLayer.description", kind: "prop", name: Some("description") }
  • Breaking: RemovedEdge { src: "org.latha.gathering#infraLayer", tgt: "org.latha.gathering#infraLayer.responsible", kind: "prop", name: Some("responsible") }
  • Breaking: RemovedEdge { src: "org.latha.gathering#infraLayer.responsible", tgt: "org.latha.gathering#infraLayer.responsible:items", kind: "items", name: None }
  • Breaking: RemovedEdge { src: "org.latha.gathering#infraLayer.responsible:items", tgt: "org.latha.gathering#actorRef", kind: "ref", name: None }
  • Breaking: RemovedEdge { src: "org.latha.gathering#infrastructureMap", tgt: "org.latha.gathering#infrastructureMap.layers", kind: "prop", name: Some("layers") }
  • Breaking: RemovedEdge { src: "org.latha.gathering#infrastructureMap.layers", tgt: "org.latha.gathering#infrastructureMap.layers:items", kind: "items", name: None }
  • Breaking: RemovedEdge { src: "org.latha.gathering#infrastructureMap.layers:items", tgt: "org.latha.gathering#infraLayer", kind: "ref", name: None }
  • Breaking: RemovedEdge { src: "org.latha.gathering#networkAnalysis", tgt: "org.latha.gathering#networkAnalysis.connections", kind: "prop", name: Some("connections") }
  • Breaking: RemovedEdge { src: "org.latha.gathering#networkAnalysis", tgt: "org.latha.gathering#networkAnalysis.keyInsights", kind: "prop", name: Some("keyInsights") }
  • Breaking: RemovedEdge { src: "org.latha.gathering#networkAnalysis.connections", tgt: "org.latha.gathering#networkAnalysis.connections:items", kind: "items", name: None }
  • Breaking: RemovedEdge { src: "org.latha.gathering#networkAnalysis.connections:items", tgt: "org.latha.gathering#connection", kind: "ref", name: None }
  • Breaking: RemovedEdge { src: "org.latha.gathering#networkAnalysis.keyInsights", tgt: "org.latha.gathering#networkAnalysis.keyInsights:items", kind: "items", name: None }
  • Breaking: RemovedEdge { src: "org.latha.gathering:body.sections:items", tgt: "org.latha.gathering:body.sections:items:variant1", kind: "variant", name: Some("org.latha.gathering#networkAnalysis") }
  • Breaking: RemovedEdge { src: "org.latha.gathering:body.sections:items", tgt: "org.latha.gathering:body.sections:items:variant2", kind: "variant", name: Some("org.latha.gathering#convergenceAssessment") }
  • Breaking: RemovedEdge { src: "org.latha.gathering:body.sections:items", tgt: "org.latha.gathering:body.sections:items:variant3", kind: "variant", name: Some("org.latha.gathering#infrastructureMap") }
  • Breaking: RemovedEdge { src: "org.latha.gathering:body.sections:items:variant1", tgt: "org.latha.gathering#networkAnalysis", kind: "ref", name: None }
  • Breaking: RemovedEdge { src: "org.latha.gathering:body.sections:items:variant2", tgt: "org.latha.gathering#convergenceAssessment", kind: "ref", name: None }
  • Breaking: RemovedEdge { src: "org.latha.gathering:body.sections:items:variant3", tgt: "org.latha.gathering#infrastructureMap", kind: "ref", name: None }
1 1
{
2 2
  "$type": "com.atproto.lexicon.schema",
3 3
  "defs": {
4 4
    "actorRef": {
5 5
      "description": "A lightweight reference to an ATProto identity.",
6 6
      "properties": {
7 7
        "did": {
8 8
          "description": "ATProto DID.",
9 9
          "format": "did",
10 10
          "type": "string"
11 11
        },
12 12
        "handle": {
13 13
          "description": "Current ATProto handle.",
14 14
          "type": "string"
15 15
        }
16 16
      },
17 17
      "required": [
18 18
        "did"
19 19
      ],
20 20
      "type": "object"
21 21
    },
22 -
    "alignment": {
23 -
      "description": "A mapping between a framework principle and an observed feature, with strength rating.",
24 -
      "properties": {
25 -
        "feature": {
26 -
          "description": "The observed feature (e.g., self-authenticating data, interoperable apps).",
27 -
          "maxGraphemes": 200,
28 -
          "maxLength": 2000,
29 -
          "type": "string"
30 -
        },
31 -
        "principle": {
32 -
          "description": "The framework principle (e.g., user sovereignty, anti-monopoly).",
33 -
          "maxGraphemes": 100,
34 -
          "maxLength": 1000,
35 -
          "type": "string"
36 -
        },
37 -
        "strength": {
38 -
          "description": "Alignment strength.",
39 -
          "knownValues": [
40 -
            "org.latha.gathering#strong",
41 -
            "org.latha.gathering#moderate",
42 -
            "org.latha.gathering#emerging",
43 -
            "org.latha.gathering#none"
44 -
          ],
45 -
          "type": "string"
46 -
        }
47 -
      },
48 -
      "required": [
49 -
        "principle",
50 -
        "feature"
51 -
      ],
52 -
      "type": "object"
53 -
    },
54 22
    "attendee": {
55 -
      "description": "A rich attendee record with role, projects, and metadata. Fills the gap left by community.lexicon.calendar.rsvp (which has no role field).",
23 +
      "description": "A rich attendee record with role, projects, and metadata. Extends community.lexicon.calendar.rsvp with role, bio, projects, and tags.",
56 24
      "properties": {
57 25
        "bio": {
58 26
          "description": "Short bio or tagline.",
59 27
          "maxGraphemes": 500,
60 28
          "maxLength": 5000,
61 29
          "type": "string"
62 30
        },
63 31
        "did": {
64 32
          "description": "ATProto DID.",
65 33
          "format": "did",
66 34
          "type": "string"
67 35
        },
68 36
        "displayName": {
69 37
          "description": "Display name.",
70 38
          "maxGraphemes": 100,
71 39
          "maxLength": 1000,
72 40
          "type": "string"
73 41
        },
74 42
        "handle": {
75 43
          "description": "ATProto handle.",
76 44
          "type": "string"
77 45
        },
78 46
        "notes": {
79 47
          "description": "Researcher notes about this attendee.",
80 48
          "maxGraphemes": 1000,
81 49
          "maxLength": 10000,
82 50
          "type": "string"
83 51
        },
84 52
        "projects": {
85 53
          "description": "Projects this person builds or maintains.",
86 54
          "items": {
87 55
            "ref": "org.latha.gathering#projectRef",
88 56
            "type": "ref"
89 57
          },
90 58
          "type": "array"
91 59
        },
92 60
        "role": {
93 61
          "description": "Role in the gathering: host, organizer, participant, speaker, volunteer.",
94 62
          "ref": "org.latha.gathering#role",
95 63
          "type": "ref"
96 64
        },
97 65
        "tags": {
98 66
          "description": "Interest tags (a11y, privacy, transit, category-theory, etc.).",
99 67
          "items": {
100 68
            "maxLength": 640,
101 69
            "type": "string"
102 70
          },
103 71
          "type": "array"
104 72
        }
105 73
      },
106 74
      "required": [
107 75
        "did"
108 76
      ],
109 77
      "type": "object"
110 78
    },
111 79
    "cancelled": {
112 80
      "description": "Gathering has been cancelled.",
113 81
      "type": "token"
114 82
    },
115 -
    "connection": {
116 -
      "description": "A typed relationship between two actors. DID-based, unlike network.cosmik.connection which is URL-based.",
117 -
      "properties": {
118 -
        "description": {
119 -
          "description": "Why this connection matters.",
120 -
          "maxGraphemes": 500,
121 -
          "maxLength": 5000,
122 -
          "type": "string"
123 -
        },
124 -
        "source": {
125 -
          "description": "Source person.",
126 -
          "ref": "org.latha.gathering#actorRef",
127 -
          "type": "ref"
128 -
        },
129 -
        "target": {
130 -
          "description": "Target person.",
131 -
          "ref": "org.latha.gathering#actorRef",
132 -
          "type": "ref"
133 -
        },
134 -
        "type": {
135 -
          "description": "Relationship type (e.g., conviviality-alignment, civic-infrastructure, shared-practice).",
136 -
          "maxLength": 500,
137 -
          "type": "string"
138 -
        }
139 -
      },
140 -
      "required": [
141 -
        "source",
142 -
        "target",
143 -
        "type"
144 -
      ],
145 -
      "type": "object"
146 -
    },
147 -
    "convergenceAssessment": {
148 -
      "description": "Assessment of the gathering's alignment with a theoretical framework (degrowth, conviviality, commons, etc.).",
149 -
      "properties": {
150 -
        "alignments": {
151 -
          "description": "Principle-to-feature alignment records.",
152 -
          "items": {
153 -
            "ref": "org.latha.gathering#alignment",
154 -
            "type": "ref"
155 -
          },
156 -
          "type": "array"
157 -
        },
158 -
        "framework": {
159 -
          "description": "The framework being assessed (e.g., degrowth, conviviality, commons, permacomputing).",
160 -
          "maxGraphemes": 100,
161 -
          "maxLength": 1000,
162 -
          "type": "string"
163 -
        },
164 -
        "gaps": {
165 -
          "description": "Where the gathering or network falls short of the framework.",
166 -
          "maxGraphemes": 2000,
167 -
          "maxLength": 20000,
168 -
          "type": "string"
169 -
        },
170 -
        "overallAlignment": {
171 -
          "description": "Summary assessment of overall alignment.",
172 -
          "maxGraphemes": 500,
173 -
          "maxLength": 5000,
174 -
          "type": "string"
175 -
        }
176 -
      },
177 -
      "required": [
178 -
        "framework"
179 -
      ],
180 -
      "type": "object"
181 -
    },
182 -
    "emerging": {
183 -
      "description": "Emerging alignment.",
184 -
      "type": "token"
185 -
    },
186 83
    "host": {
187 84
      "description": "Host of the gathering.",
188 85
      "type": "token"
189 86
    },
190 87
    "hybrid": {
191 88
      "description": "Hybrid (in-person and virtual) gathering.",
192 89
      "type": "token"
193 90
    },
194 -
    "infraLayer": {
195 -
      "description": "A named infrastructure layer with responsible parties.",
196 -
      "properties": {
197 -
        "description": {
198 -
          "description": "What this layer provides.",
199 -
          "maxGraphemes": 500,
200 -
          "maxLength": 5000,
201 -
          "type": "string"
202 -
        },
203 -
        "name": {
204 -
          "description": "Layer name (e.g., Physical infrastructure, Protocol infrastructure).",
205 -
          "maxGraphemes": 100,
206 -
          "maxLength": 1000,
207 -
          "type": "string"
208 -
        },
209 -
        "responsible": {
210 -
          "description": "People or identities responsible for this layer.",
211 -
          "items": {
212 -
            "ref": "org.latha.gathering#actorRef",
213 -
            "type": "ref"
214 -
          },
215 -
          "type": "array"
216 -
        }
217 -
      },
218 -
      "required": [
219 -
        "name"
220 -
      ],
221 -
      "type": "object"
222 -
    },
223 -
    "infrastructureMap": {
224 -
      "description": "A map of social and technical infrastructure layers present at the gathering.",
225 -
      "properties": {
226 -
        "layers": {
227 -
          "description": "Named infrastructure layers with responsible parties.",
228 -
          "items": {
229 -
            "ref": "org.latha.gathering#infraLayer",
230 -
            "type": "ref"
231 -
          },
232 -
          "type": "array"
233 -
        }
234 -
      },
235 -
      "type": "object"
236 -
    },
237 91
    "inperson": {
238 92
      "description": "In-person gathering.",
239 93
      "type": "token"
240 94
    },
241 95
    "location": {
242 -
      "description": "A physical location. Mirrors community.lexicon.location.address fields.",
96 +
      "description": "A physical location.",
243 97
      "properties": {
244 98
        "address": {
245 99
          "description": "Street address.",
246 100
          "maxGraphemes": 200,
247 101
          "maxLength": 2000,
248 102
          "type": "string"
249 103
        },
250 104
        "country": {
251 105
          "description": "ISO 3166-1 alpha-2 country code.",
252 106
          "maxLength": 2,
253 107
          "type": "string"
254 108
        },
255 109
        "locality": {
256 110
          "description": "City or locality.",
257 111
          "maxGraphemes": 50,
258 112
          "maxLength": 500,
259 113
          "type": "string"
260 114
        },
261 115
        "name": {
262 116
          "description": "Venue name.",
263 117
          "maxGraphemes": 100,
264 118
          "maxLength": 1000,
265 119
          "type": "string"
266 120
        },
267 121
        "postalCode": {
268 122
          "description": "Postal code.",
269 123
          "maxLength": 20,
270 124
          "type": "string"
271 125
        },
272 126
        "region": {
273 127
          "description": "State or province.",
274 128
          "maxGraphemes": 50,
275 129
          "maxLength": 500,
276 130
          "type": "string"
277 131
        }
278 132
      },
279 133
      "type": "object"
280 134
    },
281 135
    "main": {
282 -
      "description": "A community gathering or meetup with structured attendee data and extensible analysis sections.",
136 +
      "description": "A community gathering or meetup with structured attendee data and extensible thematic sections.",
283 137
      "key": "tid",
284 138
      "record": {
285 139
        "properties": {
286 140
          "attendees": {
287 141
            "description": "People who attended the gathering, with roles and metadata.",
288 142
            "items": {
289 143
              "ref": "org.latha.gathering#attendee",
290 144
              "type": "ref"
291 145
            },
292 146
            "type": "array"
293 147
          },
294 148
          "createdAt": {
295 149
            "description": "Client-declared timestamp when this record was created.",
296 150
            "format": "datetime",
297 151
            "type": "string"
298 152
          },
299 153
          "description": {
300 154
            "description": "Brief description of the gathering.",
301 155
            "maxGraphemes": 2000,
302 156
            "maxLength": 20000,
303 157
            "type": "string"
304 158
          },
305 159
          "endsAt": {
306 160
            "description": "Client-declared timestamp when the gathering ends.",
307 161
            "format": "datetime",
308 162
            "type": "string"
309 163
          },
310 164
          "format": {
311 165
            "description": "Gathering format (e.g., unconference, workshop, hackathon, panel).",
312 166
            "maxGraphemes": 100,
313 167
            "maxLength": 1000,
314 168
            "type": "string"
315 169
          },
316 170
          "host": {
317 171
            "description": "The primary host or organizing identity.",
318 172
            "ref": "org.latha.gathering#actorRef",
319 173
            "type": "ref"
320 174
          },
321 175
          "locations": {
322 176
            "description": "Where the gathering takes place.",
323 177
            "items": {
324 178
              "ref": "org.latha.gathering#location",
325 179
              "type": "ref"
326 180
            },
327 181
            "type": "array"
328 182
          },
329 183
          "mode": {
330 184
            "description": "The attendance mode of the gathering.",
331 185
            "ref": "org.latha.gathering#mode",
332 186
            "type": "ref"
333 187
          },
334 188
          "name": {
335 189
            "description": "Name of the gathering.",
336 190
            "maxGraphemes": 200,
337 191
            "maxLength": 2000,
338 192
            "type": "string"
339 193
          },
340 194
          "sections": {
341 -
            "description": "Open union of modular analysis sections. Each entry must specify a $type. Built-in section types: thematicCluster, networkAnalysis, convergenceAssessment, infrastructureMap. Other lexicons may add additional section types.",
195 +
            "description": "Modular sections for grouping and analyzing the gathering. Each entry must specify a $type. Built-in: thematicCluster. Other lexicons may add more.",
342 196
            "items": {
343 197
              "closed": false,
344 198
              "refs": [
345 -
                "org.latha.gathering#thematicCluster",
346 -
                "org.latha.gathering#networkAnalysis",
347 -
                "org.latha.gathering#convergenceAssessment",
348 -
                "org.latha.gathering#infrastructureMap"
199 +
                "org.latha.gathering#thematicCluster"
349 200
              ],
350 201
              "type": "union"
351 202
            },
352 203
            "type": "array"
353 204
          },
354 205
          "startsAt": {
355 206
            "description": "Client-declared timestamp when the gathering starts.",
356 207
            "format": "datetime",
357 208
            "type": "string"
358 209
          },
359 210
          "status": {
360 211
            "description": "The status of the gathering.",
361 212
            "ref": "org.latha.gathering#status",
362 213
            "type": "ref"
363 214
          },
364 215
          "uris": {
365 216
            "description": "Platform links (OpenMeet, Meetup.com, etc.).",
366 217
            "items": {
367 218
              "ref": "org.latha.gathering#uri",
368 219
              "type": "ref"
369 220
            },
370 221
            "type": "array"
371 222
          }
372 223
        },
373 224
        "required": [
374 225
          "name",
375 226
          "createdAt"
376 227
        ],
377 228
        "type": "object"
378 229
      },
379 230
      "type": "record"
380 231
    },
381 232
    "mode": {
382 233
      "description": "Attendance mode of the gathering.",
383 234
      "knownValues": [
384 235
        "org.latha.gathering#inperson",
385 236
        "org.latha.gathering#hybrid",
386 237
        "org.latha.gathering#virtual"
387 238
      ],
388 239
      "type": "string"
389 240
    },
390 -
    "moderate": {
391 -
      "description": "Moderate alignment.",
392 -
      "type": "token"
393 -
    },
394 -
    "networkAnalysis": {
395 -
      "description": "Structured analysis of connections between attendees and projects.",
396 -
      "properties": {
397 -
        "connections": {
398 -
          "description": "Typed relationships between attendees.",
399 -
          "items": {
400 -
            "ref": "org.latha.gathering#connection",
401 -
            "type": "ref"
402 -
          },
403 -
          "type": "array"
404 -
        },
405 -
        "keyInsights": {
406 -
          "description": "What the network structure reveals.",
407 -
          "items": {
408 -
            "maxGraphemes": 500,
409 -
            "maxLength": 5000,
410 -
            "type": "string"
411 -
          },
412 -
          "type": "array"
413 -
        }
414 -
      },
415 -
      "type": "object"
416 -
    },
417 -
    "none": {
418 -
      "description": "No alignment.",
419 -
      "type": "token"
420 -
    },
421 241
    "organizer": {
422 242
      "description": "Organizer of the gathering.",
423 243
      "type": "token"
424 244
    },
425 245
    "participant": {
426 246
      "description": "Participant in the gathering.",
427 247
      "type": "token"
428 248
    },
429 249
    "planned": {
430 250
      "description": "Gathering is planned.",
431 251
      "type": "token"
432 252
    },
433 253
    "postponed": {
434 254
      "description": "Gathering has been postponed.",
435 255
      "type": "token"
436 256
    },
437 257
    "projectRef": {
438 258
      "description": "A reference to a project or tool.",
439 259
      "properties": {
440 260
        "name": {
441 261
          "description": "Project name.",
442 262
          "maxGraphemes": 100,
443 263
          "maxLength": 1000,
444 264
          "type": "string"
445 265
        },
446 266
        "uri": {
447 267
          "description": "Link to the project.",
448 268
          "format": "uri",
449 269
          "type": "string"
450 270
        }
451 271
      },
452 272
      "required": [
453 273
        "name"
454 274
      ],
455 275
      "type": "object"
456 276
    },
457 277
    "rescheduled": {
458 278
      "description": "Gathering has been rescheduled.",
459 279
      "type": "token"
460 280
    },
461 281
    "role": {
462 282
      "description": "Role of an attendee in the gathering.",
463 283
      "knownValues": [
464 284
        "org.latha.gathering#host",
465 285
        "org.latha.gathering#organizer",
466 286
        "org.latha.gathering#participant",
467 287
        "org.latha.gathering#speaker",
468 288
        "org.latha.gathering#volunteer"
469 289
      ],
470 290
      "type": "string"
471 291
    },
472 292
    "scheduled": {
473 293
      "description": "Gathering is scheduled.",
474 294
      "type": "token"
475 295
    },
476 296
    "speaker": {
477 297
      "description": "Speaker at the gathering.",
478 298
      "type": "token"
479 299
    },
480 300
    "status": {
481 301
      "description": "Status of the gathering.",
482 302
      "knownValues": [
483 303
        "org.latha.gathering#planned",
484 304
        "org.latha.gathering#scheduled",
485 305
        "org.latha.gathering#rescheduled",
486 306
        "org.latha.gathering#postponed",
487 307
        "org.latha.gathering#cancelled"
488 308
      ],
489 309
      "type": "string"
490 -
    },
491 -
    "strong": {
492 -
      "description": "Strong alignment.",
493 -
      "type": "token"
494 310
    },
495 311
    "thematicCluster": {
496 -
      "description": "A group of attendees united by a shared theme or practice.",
312 +
      "description": "A group of attendees united by a shared theme, practice, or infrastructure role. Each cluster names a social or technical layer present at the gathering.",
497 313
      "properties": {
498 314
        "description": {
499 -
          "description": "What unites this cluster.",
315 +
          "description": "What brings this group together or what they provide.",
500 316
          "maxGraphemes": 1000,
501 317
          "maxLength": 10000,
502 318
          "type": "string"
503 319
        },
504 320
        "members": {
505 -
          "description": "DIDs and handles of cluster members.",
321 +
          "description": "People in this cluster.",
506 322
          "items": {
507 323
            "ref": "org.latha.gathering#actorRef",
508 324
            "type": "ref"
509 325
          },
510 326
          "type": "array"
511 327
        },
512 328
        "name": {
513 -
          "description": "Cluster name (e.g., Organizer Core, Technologist-Philosophers).",
329 +
          "description": "Cluster name (e.g., Organizer Core, Protocol Infrastructure, Technologist-Philosophers).",
514 330
          "maxGraphemes": 100,
515 331
          "maxLength": 1000,
516 332
          "type": "string"
517 333
        }
518 334
      },
519 335
      "required": [
520 336
        "name"
521 337
      ],
522 338
      "type": "object"
523 339
    },
524 340
    "uri": {
525 -
      "description": "A named URI. Mirrors community.lexicon.calendar.event#uri.",
341 +
      "description": "A named link.",
526 342
      "properties": {
527 343
        "name": {
528 344
          "description": "Label for the URI.",
529 345
          "maxGraphemes": 50,
530 346
          "maxLength": 500,
531 347
          "type": "string"
532 348
        },
533 349
        "uri": {
534 350
          "description": "The URI.",
535 351
          "format": "uri",
536 352
          "type": "string"
537 353
        }
538 354
      },
539 355
      "required": [
540 356
        "uri"
541 357
      ],
542 358
      "type": "object"
543 359
    },
544 360
    "virtual": {
545 361
      "description": "Virtual gathering.",
546 362
      "type": "token"
547 363
    },
548 364
    "volunteer": {
549 365
      "description": "Volunteer at the gathering.",
550 366
      "type": "token"
551 367
    }
552 368
  },
553 -
  "description": "A community gathering or meetup record with attendees, analysis sections, and framework convergence assessments. Self-contained record covering event metadata, rich attendee data, and extensible modular analysis.",
369 +
  "description": "A community gathering or meetup record with attendees and extensible thematic sections. Covers event metadata, rich attendee data, and modular grouping of people by theme or infrastructure role. Schema: https://gathering.latha.org/#at://did:plc:ngokl2gnmpbvuvrfckja3g7p/org.latha.gathering/3mkdvt6ljja2e",
554 370
  "id": "org.latha.gathering",
555 371
  "lexicon": 1
556 372
}

Compare Other Versions

Lexicon Garden

@