A reusable scope atom for work scope logic expressions. Scopes can represent topics, languages, domains, deliverables, methods, regions, tags, or other categorical labels. Tags are composed into structured expressions via CEL (Common Expression Language) on activity records.
tid
Timestamp-based ID
Properties
aliases
array
of
string
Optional
Alternative human-readable names for this scope (e.g., translations, abbreviations, or common synonyms). Unlike sameAs, these are plain-text labels, not links to external ontologies.
maxLength: 50 itemscategory
string
Optional
Category type of this scope.
maxLength: 50 bytestopic, language, domain, methodcreatedAt
string
datetime
Required
Client-declared timestamp when this record was originally created.
description
string
Optional
Optional longer description of this scope.
maxLength: 10000 bytesmaxGraphemes: 1000 graphemeskey
string
Required
Lowercase, underscore-separated machine-readable key for this scope (e.g., 'mangrove_restoration', 'biodiversity_monitoring'). Used as the canonical identifier in CEL expressions.
maxLength: 120 bytesname
string
Required
Human-readable name for this scope.
maxLength: 200 bytesparent
ref
com.atproto.repo.strongRef
Optional
Optional strong reference to a parent work scope tag record for taxonomy/hierarchy support. The record referenced must conform with the lexicon org.hypercerts.workscope.tag.
referenceDocument
union
Optional
Link to a governance or reference document where this work scope tag is defined and further explained.
sameAs
array
of
string
uri
Optional
URIs to semantically equivalent concepts in external ontologies or taxonomies (e.g., Wikidata QIDs, ENVO terms, SDG targets). Used for interoperability, not as documentation.
maxLength: 20 itemsstatus
string
Optional
Lifecycle status of this tag. Communities propose tags, curators accept them, deprecated tags point to replacements via supersededBy.
maxLength: 20 bytesproposed, accepted, deprecatedsupersededBy
ref
com.atproto.repo.strongRef
Optional
When status is 'deprecated', points to the replacement work scope tag record. The record referenced must conform with the lexicon org.hypercerts.workscope.tag.
View raw schema
{
"key": "tid",
"type": "record",
"record": {
"type": "object",
"required": [
"key",
"name",
"createdAt"
],
"properties": {
"key": {
"type": "string",
"maxLength": 120,
"description": "Lowercase, underscore-separated machine-readable key for this scope (e.g., 'mangrove_restoration', 'biodiversity_monitoring'). Used as the canonical identifier in CEL expressions."
},
"name": {
"type": "string",
"maxLength": 200,
"description": "Human-readable name for this scope."
},
"parent": {
"ref": "com.atproto.repo.strongRef",
"type": "ref",
"description": "Optional strong reference to a parent work scope tag record for taxonomy/hierarchy support. The record referenced must conform with the lexicon org.hypercerts.workscope.tag."
},
"sameAs": {
"type": "array",
"items": {
"type": "string",
"format": "uri",
"maxLength": 2048
},
"maxLength": 20,
"description": "URIs to semantically equivalent concepts in external ontologies or taxonomies (e.g., Wikidata QIDs, ENVO terms, SDG targets). Used for interoperability, not as documentation."
},
"status": {
"type": "string",
"maxLength": 20,
"description": "Lifecycle status of this tag. Communities propose tags, curators accept them, deprecated tags point to replacements via supersededBy.",
"knownValues": [
"proposed",
"accepted",
"deprecated"
]
},
"aliases": {
"type": "array",
"items": {
"type": "string",
"maxLength": 200
},
"maxLength": 50,
"description": "Alternative human-readable names for this scope (e.g., translations, abbreviations, or common synonyms). Unlike sameAs, these are plain-text labels, not links to external ontologies."
},
"category": {
"type": "string",
"maxLength": 50,
"description": "Category type of this scope.",
"knownValues": [
"topic",
"language",
"domain",
"method"
]
},
"createdAt": {
"type": "string",
"format": "datetime",
"description": "Client-declared timestamp when this record was originally created."
},
"description": {
"type": "string",
"maxLength": 10000,
"description": "Optional longer description of this scope.",
"maxGraphemes": 1000
},
"supersededBy": {
"ref": "com.atproto.repo.strongRef",
"type": "ref",
"description": "When status is 'deprecated', points to the replacement work scope tag record. The record referenced must conform with the lexicon org.hypercerts.workscope.tag."
},
"referenceDocument": {
"refs": [
"org.hypercerts.defs#uri",
"org.hypercerts.defs#smallBlob"
],
"type": "union",
"description": "Link to a governance or reference document where this work scope tag is defined and further explained."
}
}
},
"description": "A reusable scope atom for work scope logic expressions. Scopes can represent topics, languages, domains, deliverables, methods, regions, tags, or other categorical labels. Tags are composed into structured expressions via CEL (Common Expression Language) on activity records."
}