{
  "$schema": "http://json-schema.org/draft-07/schema",
  "$id": "DomainV1alpha1",
  "description": "A Domain groups a collection of systems that share terminology, domain models, business purpose, or documentation, i.e. form a bounded context.",
  "examples": [
    {
      "apiVersion": "backstage.io/v1alpha1",
      "kind": "Domain",
      "metadata": {
        "name": "artists",
        "description": "Everything about artists"
      },
      "spec": {
        "owner": "artist-relations-team"
      }
    }
  ],
  "allOf": [
    {
      "$ref": "Entity"
    },
    {
      "type": "object",
      "required": ["spec"],
      "properties": {
        "apiVersion": {
          "enum": ["backstage.io/v1alpha1", "backstage.io/v1beta1"]
        },
        "kind": {
          "enum": ["Domain"]
        },
        "spec": {
          "type": "object",
          "required": ["owner"],
          "properties": {
            "owner": {
              "type": "string",
              "description": "An entity reference to the owner of the component.",
              "examples": ["artist-relations-team", "user:john.johnson"],
              "minLength": 1
            }
          }
        }
      }
    }
  ]
}
