{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "oneOf": [
    {
      "type": "object",
      "properties": {
        "media_type": {
          "type": "string",
          "const": "text/plain"
        },
        "max_bytes": {
          "type": "number",
          "const": 4096
        },
        "schema_id": {
          "type": "null"
        }
      },
      "required": [
        "media_type",
        "max_bytes",
        "schema_id"
      ],
      "additionalProperties": false
    },
    {
      "type": "object",
      "properties": {
        "media_type": {
          "type": "string",
          "const": "text/markdown"
        },
        "max_bytes": {
          "type": "number",
          "const": 4096
        },
        "schema_id": {
          "type": "null"
        }
      },
      "required": [
        "media_type",
        "max_bytes",
        "schema_id"
      ],
      "additionalProperties": false
    },
    {
      "type": "object",
      "properties": {
        "media_type": {
          "type": "string",
          "const": "application/json"
        },
        "max_bytes": {
          "type": "number",
          "const": 4096
        },
        "schema_id": {
          "type": "string",
          "enum": [
            "GardenFacts",
            "WeatherFacts"
          ]
        }
      },
      "required": [
        "media_type",
        "max_bytes",
        "schema_id"
      ],
      "additionalProperties": false
    }
  ],
  "description": "The job declares exactly which deliverable to return; the server checks the media type and UTF-8 byte count.",
  "title": "OutputContract",
  "$comment": "owp-market-local/0.2; fictional loopback market, non-redeemable test credits only."
}
