{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "title": "Contact Information",
  "properties": {
    "emails": {
      "type": "array",
      "title": "Emails",
      "items": {
        "type": "object",
        "properties": {
          "type": {
            "type": "string",
            "title": "Type",
            "enum": ["Work", "Home", "Other"]
          },
          "value": {
            "type": "string",
            "title": "Email Address",
            "format": "email"
          }
        },
        "required": ["type", "value"]
      }
    },
    "phones": {
      "type": "array",
      "title": "Phones",
      "items": {
        "type": "object",
        "properties": {
          "type": {
            "type": "string",
            "title": "Type",
            "enum": ["Mobile", "Home", "Work", "Main", "Work Fax", "Home Fax", "Pager", "Other"]
          },
          "value": {
            "type": "string",
            "title": "Phone Number"
          }
        },
        "required": ["type", "value"]
      }
    },
    "addresses": {
      "type": "array",
      "title": "Addresses",
      "items": {
        "type": "object",
        "properties": {
          "type": {
            "type": "string",
            "title": "Type",
            "enum": ["Home", "Work", "Other"]
          },
          "street": {
            "type": "string",
            "title": "Street"
          },
          "city": {
            "type": "string",
            "title": "City"
          },
          "state": {
            "type": "string",
            "title": "State"
          },
          "zip": {
            "type": "string",
            "title": "ZIP Code"
          },
          "country": {
            "type": "string",
            "title": "Country"
          }
        }
      }
    },
    "links": {
      "type": "array",
      "title": "Links",
      "items": {
        "type": "object",
        "properties": {
          "type": {
            "type": "string",
            "title": "Type",
            "enum": ["Profile", "Blog", "Website", "Twitter", "Facebook", "Instagram", "LinkedIn", "Other"]
          },
          "value": {
            "type": "string",
            "title": "URL",
            "format": "uri"
          }
        },
        "required": ["type", "value"]
      }
    },
    "customFields": {
      "type": "object",
      "title": "Custom Fields",
      "additionalProperties": {
        "type": "string"
      }
    },
    "organizations": {
      "type": "array",
      "title": "Organizations",
      "items": {
        "type": "object",
        "properties": {
          "name": {
            "type": "string",
            "title": "Organization Name"
          },
          "department": {
            "type": "string",
            "title": "Department"
          },
          "jobTitle": {
            "type": "string",
            "title": "Job Title"
          }
        },
        "required": ["name"]
      }
    }
  },
  "additionalProperties": false
}
