{
  "$comment": "Version 1.1",
  "$schema": "http://json-schema.org/draft-04/schema#",
  "anyOf": [
    {
      "$ref": "https://json.schemastore.org/jsonld.json"
    }
  ],
  "description": "This is a JSON schema representation of the schema.org Thing schema: https://schema.org/Thing",
  "id": "https://json.schemastore.org/schema-org-thing.json",
  "properties": {
    "@context": {
      "type": "string",
      "format": "regex",
      "pattern": "http://schema.org",
      "description": "override the @context property to ensure the schema.org URI is used"
    },
    "additionalType": {
      "type": "string",
      "format": "uri",
      "description": "An additional type for the item, typically used for adding more specific types from external vocabularies in microdata syntax. This is a relationship between something and a class that the thing is in. In RDFa syntax, it is better to use the native RDFa syntax - the 'typeof' attribute - for multiple types. Schema.org tools may have only weaker understanding of extra types, in particular those defined externally."
    },
    "alternateName": {
      "type": "string",
      "description": "An alias for the item."
    },
    "description": {
      "type": "string",
      "description": "A description of the item."
    },
    "disambiguatingDescription": {
      "type": "string",
      "description": "A sub property of description. A short description of the item used to disambiguate from other, similar items. Information from other properties (in particular, name) may be necessary for the description to be useful for disambiguation."
    },
    "image": {
      "description": "An image of the item. This can be a URL or a fully described ImageObject.",
      "oneOf": [
        {
          "type": "string",
          "format": "uri"
        },
        {
          "type": "object"
        }
      ]
    },
    "mainEntityOfPage": {
      "description": "Indicates a page (or other CreativeWork) for which this thing is the main entity being described. See background notes for details. Inverse property mainEntity.",
      "oneOf": [
        {
          "type": "string",
          "format": "uri"
        },
        {
          "type": "object"
        }
      ]
    },
    "name": {
      "type": "string",
      "description": "The name of the item."
    },
    "potentialAction": {
      "type": "object",
      "description": "Indicates a potential Action, which describes an idealized action in which this thing would play an 'object' role."
    },
    "sameAs": {
      "type": "string",
      "format": "uri",
      "description": "URL of a reference Web page that unambiguously indicates the item's identity. E.g. the URL of the item's Wikipedia page, Freebase page, or official website."
    },
    "url": {
      "type": "string",
      "format": "uri",
      "description": "URL of the item."
    }
  },
  "required": ["@type"],
  "title": "JSON schema for schema.org / Thing",
  "type": "object"
}
