{
  "$schema": "http://json-schema.org/draft-07/schema",
  "$id": "animal.schema.json",
  "title": "animal",
  "description": "Enthält Daten des Hundes/der Hunde",
  "type": "object",
  "properties": {
    "name": {
      "type": "string",
      "minLength": 1,
      "description": "Name des Hundes"
    },
    "birthdate": {
      "type": "string",
      "format": "date",
      "description": "Geburtsdatum des Hundes 'YYYY-MM-DD'"
    },
    "age": {
      "type": "integer",
      "description": "Alter des Hundes in Jahren (Kundenangabe Input 1)"
    },
    "gender": {
      "type": "string",
      "$ref": "enum/gender.schema.json#/$defs/gender",
      "minLength": 1,
      "description": "Geschlecht des Tieres"
    },
    "purebred": {
      "type": "boolean",
      "description": "Reinrassig oder Mischling"
    },
    "breed_id_1st": {
      "type": "integer",
      "description": "Check24 Breed-ID der ersten Rasse"
    },
    "breed_name_1st": {
      "type": "string",
      "minLength": 1,
      "description": "erste Rasse des Hundes"
    },
    "animal_type": {
      "type": "string",
      "$ref": "enum/animal_type.schema.json#/$defs/animal_type",
      "description": "Katze oder Hund"
    },
    "disease_has_damages": {
      "type": "string",
      "$ref": "enum/yes-or-no.schema.json#/$defs/yes-or-no",
      "description": "Schaden"
    },
    "disease_has_damages_count": {
      "type": "string",
      "description": "Beschreibung Schaden"
    },
    "height": {
      "type": "string",
      "$ref": "enum/height.schema.json#/$defs/height"
    },
    "disease_is_healthy": {
      "type": "string",
      "$ref": "enum/yes-or-no.schema.json#/$defs/yes-or-no"
    },
    "disease_vaccination_first_12_weeks": {
      "type": "string",
      "$ref": "enum/yes-or-no.schema.json#/$defs/yes-or-no",
      "description": "Erstimpfung erhalten"
    },
    "breed_id_2nd": {
      "type": "integer",
      "description": "Check24 Breed-ID der zweiten Rasse"
    },
    "breed_name_2nd": {
      "type": "string",
      "minLength": 1,
      "description": "zweite Rasse bei Mischlingen, im Falle von reinrassigen Hunden leer"
    },
    "diseas_type": {
      "type": "string",
      "description": "Freitext, Beschreibung Krankheit"
    }
  },

  "required": ["name", "birthdate", "age", "gender", "purebred", "breed_id_1st", "breed_name_1st", "animal_type", "height"]
}