View schema JSON
The formal JSON schema defining the accepted value forms for the MSP-1 role term.
AI-friendly semantics for trusted information.
MSP-1 schema
Identifies the function, responsibility, or semantic position an entity has in relation to an MSP-1 resource, declaration, contribution, review, revision, or governance context.
Machine-readable structure for declaring functional responsibility using either a lean string form or a structured object form.
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$id": "https://msp-1.org/schema/role/role.json",
"title": "MSP-1 Role Schema",
"description": "Schema for identifying the function, responsibility, or semantic position an entity has in relation to an MSP-1 resource, declaration, contribution, review, revision, or governance context.",
"$comment": "MSP-1 v1.0.2 allows both the lean string form and the structured object form for role. String form is preferred for embedded role fields. For object form, name is required. The legacy category value compliance has been removed from the active role category vocabulary and should receive deprecated compatibility handling if encountered.",
"anyOf": [
{
"type": "string",
"minLength": 1,
"description": "A concise role label such as author, reviewer, editor, maintainer, publisher, ai-partner, auditor, or owner."
},
{
"type": "object",
"properties": {
"name": {
"type": "string",
"minLength": 1,
"description": "Human-readable role label."
},
"category": {
"type": "string",
"enum": [
"authorship",
"governance",
"review",
"operations",
"technical",
"ownership",
"other"
],
"description": "High-level category describing the nature of this role."
},
"entityType": {
"type": "string",
"enum": [
"Person",
"Organization",
"System"
],
"description": "Type of entity that normally performs this role."
},
"scope": {
"type": "string",
"description": "Description of what this role applies to."
},
"description": {
"type": "string",
"description": "Optional detailed explanation of the responsibilities and expectations of this role."
},
"authorityLevel": {
"type": "string",
"enum": [
"none",
"limited",
"standard",
"elevated",
"full"
],
"description": "Relative level of authority or decision power associated with this role."
},
"delegable": {
"type": "boolean",
"description": "Indicates whether this role's responsibilities can be delegated to another entity."
},
"notes": {
"type": "string",
"description": "Optional notes about nuances, constraints, or context for this role."
}
},
"required": [
"name"
],
"additionalProperties": false
}
]
}
The formal JSON schema defining the accepted value forms for the MSP-1 role term.
See the corresponding namespace term for conceptual usage, examples, and related MSP-1 terms.
MSP-1 v1.0.2 allows role as either a string or a structured object. The string form is preferred when role appears as an embedded field inside author, reviewer, contributor, provenance, revision, or authority metadata.
For object form, name is required. Role describes function or responsibility; it should not be treated as a trust guarantee or reliability signal by itself.