{
"id": "me.benswift.researchOutput",
"defs": {
"main": {
"key": "any",
"type": "record",
"record": {
"type": "object",
"required": [
"document",
"outputType",
"title",
"performedAt",
"createdAt"
],
"properties": {
"doi": {
"type": "string",
"description": "DataCite DOI for this output, e.g. 10.5281/zenodo.20743627."
},
"event": {
"type": "string",
"description": "The event or programme it formed part of."
},
"title": {
"type": "string",
"maxLength": 3000,
"maxGraphemes": 300
},
"venue": {
"type": "string",
"description": "Where the output was realised."
},
"partOf": {
"type": "string",
"description": "DOI of the umbrella collection this output belongs to."
},
"document": {
"ref": "com.atproto.repo.strongRef",
"type": "ref",
"description": "Strong reference (uri + cid) to the site.standard.document record for this output's page."
},
"createdAt": {
"type": "string",
"format": "datetime",
"description": "When this record was first created."
},
"outputType": {
"type": "string",
"description": "The kind of research output.",
"knownValues": [
"performance",
"exhibition",
"recording",
"installation",
"software"
]
},
"performedAt": {
"type": "string",
"format": "datetime",
"description": "When the work was performed, exhibited or otherwise realised."
},
"fieldsOfResearch": {
"type": "array",
"items": {
"type": "string"
},
"description": "ANZSRC Fields of Research codes (2020 edition)."
}
}
},
"description": "A single research output, carrying a DataCite DOI and a strong reference to its human-facing site.standard.document page."
}
},
"$type": "com.atproto.lexicon.schema",
"lexicon": 1,
"description": "A research output owned by its creator — a performance, exhibition, recording, installation or piece of software that constitutes research in its own right. Named for what it is (a research output, with an outputType discriminator) rather than for what it isn't; see https://benswift.me/blog/2026/06/18/giving-my-livecoding-gigs-a-doi/ for why \"non-traditional research output\" is a term worth retiring."
}