{
"id": "pub.chive.graph.edge",
"defs": {
"main": {
"key": "any",
"type": "record",
"record": {
"type": "object",
"required": [
"id",
"sourceUri",
"targetUri",
"relationSlug",
"status",
"createdAt"
],
"properties": {
"id": {
"type": "string",
"description": "UUID identifier (also used as rkey)"
},
"status": {
"type": "string",
"description": "Edge lifecycle status",
"knownValues": [
"proposed",
"established",
"deprecated"
]
},
"weight": {
"type": "integer",
"maximum": 1000,
"minimum": 0,
"description": "Optional edge weight for ranking (scaled by 1000 for 0.0-1.0 range)"
},
"metadata": {
"ref": "#edgeMetadata",
"type": "ref",
"description": "Edge-specific metadata"
},
"createdAt": {
"type": "string",
"format": "datetime"
},
"createdBy": {
"type": "string",
"format": "did",
"description": "DID of creator or governance"
},
"sourceUri": {
"type": "string",
"format": "at-uri",
"description": "AT-URI of source node"
},
"targetUri": {
"type": "string",
"format": "at-uri",
"description": "AT-URI of target node"
},
"updatedAt": {
"type": "string",
"format": "datetime"
},
"proposalUri": {
"type": "string",
"format": "at-uri",
"description": "AT-URI of the proposal that created this edge (null for seeded)"
},
"relationUri": {
"type": "string",
"format": "at-uri",
"description": "AT-URI of relation type node (subkind=relation)"
},
"relationSlug": {
"type": "string",
"maxLength": 50,
"description": "Relation slug for queries (broader, narrower, related, etc.)"
},
"schemaRevision": {
"type": "integer",
"minimum": 1,
"description": "Schema revision this record was created with. Absent means revision 1."
}
}
},
"description": "Typed relationship between knowledge graph nodes. Relation types are themselves nodes with subkind=relation."
},
"edgeMetadata": {
"type": "object",
"properties": {
"source": {
"type": "string",
"maxLength": 200,
"description": "Source of the relationship assertion"
},
"endDate": {
"type": "string",
"format": "datetime",
"description": "Temporal end (for time-bounded relationships)"
},
"startDate": {
"type": "string",
"format": "datetime",
"description": "Temporal start (for time-bounded relationships)"
},
"confidence": {
"type": "integer",
"maximum": 1000,
"minimum": 0,
"description": "Confidence score for automatically inferred edges (scaled by 1000 for 0.0-1.0 range)"
}
},
"description": "Edge-specific metadata"
}
},
"$type": "com.atproto.lexicon.schema",
"lexicon": 1,
"revision": 1
}