{
  "handle": "Role",
  "data_schema": {
    "type": "object",
    "required": [
      "role_id",
      "function"
    ],
    "properties": {
      "role_id": {
        "type": "string",
        "description": "Unique role identifier"
      },
      "function": {
        "type": "string",
        "description": "Expected contribution of an occupant in context"
      },
      "permissions": {
        "type": "array",
        "items": {
          "type": "string"
        },
        "description": "Authority identifiers associated with this role"
      },
      "responsibilities": {
        "type": "array",
        "items": {
          "type": "string"
        },
        "description": "Obligation identifiers associated with this role"
      }
    }
  },
  "mechanism": "An assignable definition of a contextual function, stated independently of any particular {{identity}}. It records the occupant's expected contribution and may include associated authorities or obligations; assignment and occupancy are caller operations.",
  "gloss": "Assignable contextual function",
  "_meta": {
    "ring": 1,
    "tier": 1,
    "supersedes": [
      "sema:Role#mh:SHA-256:9896a85afde9651bef9f99eb9f8608d7be2046cb1355d158964ff22da4c5c973",
      "sema:Role#mh:SHA-256:ec350b7eb604507b04321ca566e34f4da0007f203f1b465fe9ee2c836871caa8",
      "sema:Role#mh:SHA-256:456d385ea60f9f4df82bdefec9bfc215acedb1ae7acff5bdf6d79730bc15d12a",
      "sema:Role#mh:SHA-256:6877fadfd0ca68b67a16eb3378ff7bf9bdb92ecb7ef1ec0c99cafaac407f46fb",
      "sema:Role#mh:SHA-256:80dff5a7dd9afaf02aeedfe83bf88eef0062d47b630f21b49c79ecac232363a4",
      "sema:Role#mh:SHA-256:14013c8943992b44dc09aae9e21e975ac0c182e099ca5832ed133e9af14ccbae"
    ],
    "path": [
      "Infrastructure",
      "Data Structures"
    ],
    "related": [
      "Absentseat#d6ab"
    ]
  },
  "sema_id": "sema:Role#mh:SHA-256:262ab6d2c03de5beab24c98cb3168948a3bb043a6a81b68237ab53919d153999",
  "sema_ref": "Role#262a",
  "sema_stub": "262a",
  "dependencies": {
    "references": {
      "identity": "sema:Identity#mh:SHA-256:b24a57fdd59ebf2ef019be30af8fa10fc127f61d346a74ab0b49f729b4e32093"
    }
  },
  "sema_layer": "Infrastructure",
  "sema_category": "Data Structures",
  "used_by": {
    "references": {
      "Absentseat": "sema:Absentseat#mh:SHA-256:d6ab5c37a7f855568d7bd85dc78b01952df51a6f3abed10ae7fe67760cf61706",
      "Workflow": "sema:Workflow#mh:SHA-256:808de72d3285e4ac086b85bfe4ba028ad2904b4088f7a22b60259ff8d8ffe057"
    }
  }
}
