Unified proposal for creating, updating, merging, or deprecating knowledge graph nodes (stored in user PDS)
tid
Timestamp-based ID
Properties
createdAt
string
datetime
Required
An RFC 3339 formatted timestamp.
evidence
array
of
ref
#evidence
Optional
Supporting evidence for the proposal
maxLength: 10 itemskind
string
Required
Node kind being proposed
type, objectmergeIntoUri
string
at-uri
Optional
AT-URI of node to merge into (for merge action)
proposalType
string
Required
Type of proposal action
create, update, merge, deprecateproposedNode
ref
#proposedNodeData
Optional
Proposed node data (for create/update)
rationale
string
Required
Justification for the proposal
maxLength: 2000 bytesschemaRevision
integer
Optional
Schema revision this record was created with. Absent means revision 1.
minimum: 1subkind
string
Optional
Subkind slug (e.g., 'field', 'institution', 'contribution-type')
maxLength: 50 bytestargetUri
string
at-uri
Optional
AT-URI of node to update/deprecate/merge
View raw schema
{
"description": "Unified proposal for creating, updating, merging, or deprecating knowledge graph nodes (stored in user PDS)",
"key": "tid",
"record": {
"properties": {
"createdAt": {
"format": "datetime",
"type": "string"
},
"evidence": {
"description": "Supporting evidence for the proposal",
"items": {
"ref": "#evidence",
"type": "ref"
},
"maxLength": 10,
"type": "array"
},
"kind": {
"description": "Node kind being proposed",
"knownValues": [
"type",
"object"
],
"type": "string"
},
"mergeIntoUri": {
"description": "AT-URI of node to merge into (for merge action)",
"format": "at-uri",
"type": "string"
},
"proposalType": {
"description": "Type of proposal action",
"knownValues": [
"create",
"update",
"merge",
"deprecate"
],
"type": "string"
},
"proposedNode": {
"description": "Proposed node data (for create/update)",
"ref": "#proposedNodeData",
"type": "ref"
},
"rationale": {
"description": "Justification for the proposal",
"maxLength": 2000,
"type": "string"
},
"schemaRevision": {
"description": "Schema revision this record was created with. Absent means revision 1.",
"minimum": 1,
"type": "integer"
},
"subkind": {
"description": "Subkind slug (e.g., 'field', 'institution', 'contribution-type')",
"maxLength": 50,
"type": "string"
},
"targetUri": {
"description": "AT-URI of node to update/deprecate/merge",
"format": "at-uri",
"type": "string"
}
},
"required": [
"proposalType",
"kind",
"rationale",
"createdAt"
],
"type": "object"
},
"type": "record"
}