{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://schema.govfresh.com/v1/elections/political-party.schema.json",
  "title": "PoliticalParty",
  "description": "A political party. schema:PoliticalParty is a real type and is used unchanged. Kept out of _core because a party is not a government body: it has no jurisdiction it governs and no place in the organizational hierarchy, so the _core Organization requirements do not apply to it.",
  "type": "object",
  "properties": {
    "@context": {},
    "@id": {
      "type": "string",
      "format": "iri",
      "description": "This party's own dereferenceable identifier."
    },
    "@type": {
      "const": "PoliticalParty"
    },
    "name": {
      "type": "string",
      "description": "The party's official name."
    },
    "alternateName": {
      "type": "array",
      "description": "Other names or abbreviations this party is known by.",
      "items": {
        "type": "string"
      }
    },
    "description": {
      "type": "string",
      "description": "A plain-language description of the party."
    },
    "url": {
      "type": "string",
      "format": "iri",
      "description": "The party's official page, when one exists."
    },
    "identifier": {
      "type": "array",
      "description": "Any scheme-qualified identifiers for this party beyond its `@id`.",
      "items": {
        "$ref": "../_core/identifier.schema.json"
      }
    },
    "areaServed": {
      "$ref": "../_core/reference.schema.json",
      "description": "The `Jurisdiction` this party contests elections in, where it's specific to one."
    },
    "foundingDate": {
      "type": "string",
      "format": "date",
      "description": "When this party was founded."
    },
    "dissolutionDate": {
      "type": "string",
      "format": "date",
      "description": "Present means the party no longer exists."
    }
  },
  "required": [
    "@id",
    "@type",
    "name"
  ],
  "additionalProperties": true
}
