{
  "@context": {
    "@vocab": "https://satohub.ai/schema#",
    "schema": "https://schema.org/",
    "xsd": "http://www.w3.org/2001/XMLSchema#",
    "dcterms": "http://purl.org/dc/terms/",
    "satohub": "https://satohub.ai/schema#",
    "version": "satohub:version",
    "id": {
      "@id": "satohub:id",
      "@type": "xsd:string"
    },
    "project_id": {
      "@id": "satohub:project_id",
      "@type": "xsd:string"
    },
    "schema_version": {
      "@id": "satohub:schema_version",
      "@type": "xsd:integer"
    },
    "parent_version_id": {
      "@id": "satohub:parent_version_id",
      "@type": "xsd:string"
    },
    "artifact_digest": {
      "@id": "satohub:artifact_digest",
      "@type": "xsd:string"
    },
    "artifact_bytes": {
      "@id": "satohub:artifact_bytes",
      "@type": "xsd:integer"
    },
    "manifest": {
      "@id": "satohub:manifest"
    },
    "dependency_lock": {
      "@id": "satohub:dependency_lock"
    },
    "io_schemas": {
      "@id": "satohub:io_schemas"
    },
    "runtime": {
      "@id": "satohub:runtime"
    },
    "model_policy": {
      "@id": "satohub:model_policy"
    },
    "capabilities": {
      "@id": "satohub:capabilities",
      "@container": "@list"
    },
    "requested_permissions": {
      "@id": "satohub:requested_permissions",
      "@container": "@list"
    },
    "declared_secret_names": {
      "@id": "satohub:declared_secret_names",
      "@container": "@list"
    },
    "licenses": {
      "@id": "satohub:licenses",
      "@container": "@list"
    },
    "provenance": {
      "@id": "satohub:provenance"
    },
    "signature": {
      "@id": "satohub:signature"
    },
    "signing": {
      "@id": "satohub:signing"
    },
    "sealed_at": {
      "@id": "satohub:sealed_at",
      "@type": "xsd:dateTime"
    },
    "ops": {
      "@id": "satohub:ops"
    },
    "evidence": {
      "@id": "satohub:evidence",
      "@container": "@list"
    },
    "interpretation": "satohub:interpretation",
    "interpreted_as": {
      "@id": "satohub:interpreted_as",
      "@type": "xsd:string"
    },
    "requested": {
      "@id": "satohub:requested",
      "@type": "xsd:string"
    },
    "rule": {
      "@id": "satohub:rule",
      "@type": "xsd:string"
    },
    "note": {
      "@id": "satohub:note",
      "@type": "xsd:string"
    },
    "needs-input": "satohub:needs-input",
    "status": {
      "@id": "satohub:status",
      "@type": "xsd:string"
    },
    "needs_input": {
      "@id": "satohub:needs_input",
      "@type": "xsd:boolean"
    },
    "endpoint": {
      "@id": "satohub:endpoint",
      "@type": "@id"
    },
    "accepted": {
      "@id": "satohub:accepted"
    },
    "examples": {
      "@id": "satohub:examples",
      "@container": "@list"
    },
    "docs": {
      "@id": "satohub:docs",
      "@type": "@id"
    }
  },
  "@type": "schema:Dataset",
  "schema:name": "satohub-ai API JSON-LD context",
  "schema:description": "A JSON-LD @context for the objects satohub-ai's own API contract declares: one class per component schema, one property per declared field, typed from the contract. Derived by script (derive-json-ld.py, 2026-10-30) from openapi/satohub-ai-openapi.json.",
  "dcterms:created": "2026-10-30",
  "dcterms:source": [
    "openapi/satohub-ai-openapi.json"
  ]
}