{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "$id": "https://json.schemastore.org/gematik-test-hcps.json",
  "title": "HCPsRepository",
  "description": "List of all hcps",
  "definitions": {
    "Hcp": {
      "title": "HCP",
      "description": "An HCP",
      "type": "object",
      "additionalProperties": false,
      "properties": {
        "hcpData": {
          "type": "object",
          "additionalProperties": false,
          "properties": {
            "name": {
              "type": "object",
              "additionalProperties": false,
              "properties": {
                "title": {
                  "type": "string"
                },
                "given": {
                  "type": "string"
                },
                "last": {
                  "type": "string"
                }
              },
              "required": ["given", "last"]
            },
            "telematik-id": {
              "type": "string"
            },
            "hcpi": {
              "type": "string"
            },
            "hcpRole": {
              "type": "string"
            }
          },
          "required": ["name", "telematik-id", "hcpi", "hcpRole"]
        },
        "ownerTestsuite": {
          "type": "string"
        },
        "cards": {
          "type": "array",
          "items": {
            "$ref": "https://json.schemastore.org/gematik-test-patients.json#/definitions/Card",
            "type": "object"
          }
        }
      },
      "required": ["hcpData", "cards"]
    }
  },
  "type": "object",
  "properties": {
    "hcps": {
      "type": "object",
      "existingJavaType": "java.util.Map<String, Hcp>",
      "additionalProperties": {
        "$ref": "#/definitions/Hcp",
        "type": "object"
      }
    }
  }
}
