{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://docs.oracle.com/schemas/solaris/zone.json",
  "title": "Oracle Solaris Zone",
  "description": "Represents an Oracle Solaris Zone instance managed through the RAD zonemgr module, including its identity, brand type, lifecycle state, and auxiliary state information.",
  "type": "object",
  "properties": {
    "name": {
      "type": "string",
      "description": "Unique zone name used as the primary identifier",
      "pattern": "^[a-zA-Z][a-zA-Z0-9._-]*$",
      "maxLength": 64
    },
    "brand": {
      "type": "string",
      "description": "Zone brand type determining the virtualization model",
      "enum": ["solaris", "solaris-kz", "solaris10", "labeled"],
      "examples": ["solaris", "solaris-kz"]
    },
    "id": {
      "type": "integer",
      "description": "Numeric zone ID assigned when the zone is running or ready. The global zone is always ID 0.",
      "minimum": -1
    },
    "uuid": {
      "type": ["string", "null"],
      "format": "uuid",
      "description": "Universally unique identifier for the zone"
    },
    "state": {
      "type": "string",
      "description": "Current lifecycle state of the zone",
      "enum": [
        "configured",
        "incomplete",
        "installed",
        "ready",
        "running",
        "shutting_down",
        "down"
      ]
    },
    "auxstate": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "description": "Dynamic auxiliary state flags providing additional status information"
    }
  },
  "required": ["name"]
}
