{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "title": "FRESH Resume Schema",
  "type": "object",
  "additionalProperties": true,
  "properties": {



    "name": {
      "type": "string",
      "description": "The candidate's name as it should appear on the resume.",
      "required": true
    },



    "meta": {
      "type": "object",
      "additionalProperties": true,
      "required": true,
      "description": "The 'meta' section contains metadata information for the resume, including the resume version, schema, and any other fields required by tools.",
      "properties": {
        "format": {
          "type": "string",
          "description": "The canonical resume format and version. Should be 'FRESH@0.1.0'.",
          "required": true
        },
        "version": {
          "type": "string",
          "description": "The semantic version number for this resume."
        }
      }
    },



    "info": {
      "type": "object",
      "additionalProperties": true,
      "description": "The 'info' section contains basic summary information for the candidate, including an optional label or job title, candidate photo, summary, and quote.",
      "properties": {
        "label": {
          "type": "string",
          "description": "A label for this resume, such as 'Full-Stack Developer'."
        },
        "class": {
          "type": "string",
          "description": "Profession type or 'character class'."
        },
        "image": {
          "type": "string",
          "description": "URL or path to your picture in JPEG, PNG, GIF, or BMP format."
        },
        "brief": {
          "type": "string",
          "description": "A short description or summary of yourself as a candidate."
        },
        "quote": {
          "type": "string",
          "description": "Candidate quote or byline."
        }
      }
    },



    "disposition": {
      "type": "object",
      "additionalProperties": true,
      "description": "The disposition section describes the candidate's overall attitude towards new employment opportunities including: travel, relocation, schedule, desired type of work, and the like.",
      "properties": {

        "travel": {
          "type": "integer",
          "description": "Percentage of time willing to travel (0 to 100)."
        },

        "authorization": {
          "type": "string",
          "description": "Work authorization: citizen, work visa, etc."
        },

        "commitment": {
          "type": "array",
          "additionalItems": false,
          "description": "Types of work commitment desired: contract, perm, seasonal, etc.",
          "items": {
            "type": "string",
            "description": "One of: contract, permanent, part-time, seasonal, full-time."
          }
        },

        "remote": {
          "type": "boolean",
          "description": "Open to remote employment opportunities."
        },

        "relocation": {
          "type": "object",
          "additionalProperties": true,
          "properties": {

            "willing": {
              "type": ["string","boolean"],
              "description": "Willingness to relocate."
            },

            "destinations": {
              "type": "array",
              "description": "Preferred destinations for relocation",
              "additionalItems": false,
              "items": {
                "type": "string",
                "description": "City or area of relocation."
              }
            }
          }
        }
      }
    },



    "contact": {
      "type": "object",
      "additionalProperties": true,
      "description": "The 'contact' section contains the candidate's contact information, including phone numbers, emails, websites, IMs, and custom contact types.",
      "properties": {

        "email": {
          "type": "string",
          "description": "Primary contact email.",
          "format": "email"
        },

        "phone": {
          "type": "string",
          "description": "Primary phone number."
        },

        "website": {
          "type": "string",
          "description": "Website, blog, or home page.",
          "format": "uri"
        },

        "other": {
          "type": "array",
          "additionalItems": false,
          "items": {
            "type": "object",
            "additionalProperties": true,
            "properties": {

              "label": {
                "type": "string",
                "description": "A label for this contact information."
              },

              "category": {
                "type": "string",
                "description": "Type of contact information: email, phone, url, postal, or IM."
              },

              "value": {
                "type": "string",
                "description": "Phone number, email address, website, etc."
              }
            }
          }
        }
      }
    },



    "location": {
      "type": "object",
      "description": "The 'location' section, when present, contains the candidate's location and address info.",
      "additionalProperties": true,
      "properties": {

        "address": {
          "type": "string",
          "description": "Your full postal address."
        },

        "code": {
          "type": "string",
          "description": "Postal or other official routing code."
        },

        "city": {
          "type": "string",
          "description": "Your home city."
        },

        "country": {
          "type": "string",
          "description": "Two-digit country code (US, AU, UK, IN, etc.)."
        },

        "region": {
          "type": "string",
          "description": "Your state, region, or province."
        }
      }
    },



    "employment": {
      "type": "object",
      "description": "The 'employment' section describes the candidate's formal employment history.",
      "additionalProperties": true,
      "properties": {

        "summary": {
          "type": "string",
          "description:": "Summary of overall employment."
        },

        "history": {
          "type": "array",
          "additionalItems": false,
          "items": {
            "type": "object",
            "additionalProperties": true,
            "properties": {

              "employer": {
                "type": "string",
                "description": "Employer name.",
                "required": true
              },

              "position": {
                "type": "string",
                "description": "Your position or formal job title."
              },

              "url": {
                "type": "string",
                "description": "Employer website.",
                "format": "uri"
              },

              "start": {
                "type": "string",
                "description": "Date you began work, in YYYY, YYYY-MM, or YYYY-MM-DD format.",
                "format": "date"
              },

              "end": {
                "type": "string",
                "description": "Date you finished work, in YYYY, YYYY-MM, or YYYY-MM-DD format.",
                "format": "date"
              },

              "summary": {
                "type": "string",
                "description": "A summary of your achievements and responsibilities under this employer."
              },

              "highlights": {
                "type": "array",
                "description": "Noteworthy achievements and/or highlights.",
                "additionalItems": false,
                "items": {
                  "type": "string",
                  "description": "For ex, 'Led 5-person development team, increasing profits by 50% year-over-year'."
                }
              },

              "location": {
                "type": "string",
                "description": "Freeform location of the job or position, e.g., 'San Francisco, CA' or 'Tokyo'."
              },

              "keywords": {
                "type": "array",
                "description": "Keywords associated with this position.",
                "additionalItems": false,
                "items": {
                  "type": "string",
                  "description": "For example, C++, HTML, HIPAA, etc."
                }
              }
            }
          }
        }
      }
    },



    "projects": {
      "type": "array",
      "additionalItems": false,
      "description": "The 'projects' section describes the candidate's project history -- not the jobs the candidate has worked but the specific projects and enterprises the candidate has created or been involved in, whether paid or unpaid.",
      "items": {
        "type": "object",
        "additionalProperties": true,
        "properties": {

          "title": {
            "type": "string",
            "description": "Project name or code-name.",
            "required": true
          },

          "category": {
            "type": "string",
            "description": "Project type: open-source, private, side project, etc."
          },

          "description": {
            "type": "string",
            "description": "Project description or summary."
          },

          "summary": {
            "type": "string",
            "description": "A summary of your achievements and responsibilities on the project."
          },

          "role": {
            "type": "string",
            "description": "Your role on the project: Contributor, Creator, etc."
          },

          "url": {
            "type": "string",
            "description": "Project URL.",
            "format": "uri"
          },

          "media": {
            "type": "array",
            "additionalItems": false,
            "description": "Media associated with this project.",
            "items": {
              "type": "object",
              "additionalProperties": true,
              "properties": {
                "category": {
                  "type": "string",
                  "description": "Media category: image, thumbnail, screenshot, MP3, download, etc.",
                  "required": true
                },
                "name": {
                  "type": "string",
                  "description": "Friendly media name."
                },
                "url": {
                  "type": "string",
                  "description": "Media link, path, or location."
                }
              }
            }
          },

          "repo": {
            "type": "string",
            "description": "Repo URL.",
            "format": "uri"
          },

          "start": {
            "type": "string",
            "description": "Date your involvement with project began, in YYYY, YYYY-MM, or YYYY-MM-DD format.",
            "format": "date"
          },

          "end": {
            "type": "string",
            "description": "Date your involvement with project ended, in YYYY, YYYY-MM, or YYYY-MM-DD format.",
            "format": "date"
          },

          "highlights": {
            "type": "array",
            "description": "Noteworthy project-related achievements and/or highlights.",
            "additionalItems": false,
            "items": {
              "type": "string",
              "description": "For ex, 'Led 5-person development team, increasing profits by 50% year-over-year'."
            }
          },

          "location": {
            "type": "string",
            "description": "Freeform location of the job or position, e.g., 'San Francisco, CA' or 'Tokyo'."
          },

          "keywords": {
            "type": "array",
            "description": "Keywords associated with this project.",
            "additionalItems": false,
            "items": {
              "type": "string",
              "description": "For example, C++, HTML, HIPAA, etc."
            }
          }
        }
      }
    },



    "skills": {
      "type": "object",
      "description": "A description of the candidate's formal skills and capabilities.",
      "additionalProperties": true,
      "properties": {

        "sets": {
          "type": "array",
          "additionalItems": false,
          "optional": true,
          "items": {
            "type": "object",
            "additionalProperties": true,
            "properties": {

              "name": {
                "type": "string",
                "description": "Name of the skillset: 'Programming' or 'Project Management' etc.",
                "required": true
              },

              "level": {
                "type": "string",
                "description": "Level of mastery of the skill."
              },

              "skills": {
                "type": "array",
                "additionalItems": false,
                "required": true,
                "items": {
                  "type": "string",
                  "description": "Title or ID of a skill from the skills list."
                }
              }
            }
          }
        },

        "list": {
          "type": "array",
          "additionalItems": false,

          "items": {
            "type": "object",
            "additionalProperties": true,
            "properties": {

              "name": {
                "type": "string",
                "description": "The name or title of the skill.",
                "required": true
              },

              "level": {
                "type": "string",
                "description": "A freeform description of your level of mastery with the skill."
              },

              "summary": {
                "type": "string",
                "description": "A short summary of your experience with this skill."
              },

              "years": {
                "type": ["string", "number"],
                "description": "Number of years you've used the skill."
              }
            }
          }
        }

      }
    },



    "service": {
      "type": "object",
      "description": "The 'service' section describes the candidate's overall service history in the true sense of the word 'service': volunteer work, military participation, civilian core, rescue and emergency services, and the like.",
      "additionalProperties": true,
      "properties": {

        "summary": {
          "type": "string",
          "description": "Summary of overall service/volunteer experience."
        },

        "history": {
          "type": "array",
          "additionalItems": false,
          "items": {
            "type": "object",
            "additionalProperties": true,
            "properties": {

              "category": {
                "type": "string",
                "description": "The type of service work, such as volunteer or military."
              },

              "organization": {
                "type": "string",
                "description": "The service organization, such as Red Cross or National Guard.",
                "required": true
              },

              "position": {
                "type": "string",
                "description": "Your position or formal service role."
              },

              "url": {
                "type": "string",
                "description": "Organization website.",
                "format": "uri"
              },

              "start": {
                "type": "string",
                "description": "Date you joined the organization, in YYYY, YYYY-MM, or YYYY-MM-DD format.",
                "format": "date"
              },

              "end": {
                "type": "string",
                "description": "Date you left the organization, in YYYY, YYYY-MM, or YYYY-MM-DD format.",
                "format": "date"
              },

              "summary": {
                "type": "string",
                "description": "A summary of your achievements and responsibilities at this organization."
              },

              "highlights": {
                "type": "array",
                "description": "Noteworthy achievements and/or highlights.",
                "additionalItems": false,
                "items": {
                  "type": "string",
                  "description": "For ex, 'Served on board of directors of national non-profit organization with 20,000 members.'."
                }
              },

              "keywords": {
                "type": "array",
                "description": "Keywords associated with this service.",
                "additionalItems": false,
                "items": {
                  "type": "string",
                  "description": "For example, C++, HTML, HIPAA, etc."
                }
              },

              "location": {
                "type": "string",
                "description": "Freeform location of the position, e.g., 'San Francisco, CA' or 'Tokyo'."
              }
            }
          }
        }
      }
    },



    "education": {
      "type": "object",
      "additionalProperties": true,
      "description": "The 'employment' section describes the candidate's formal education, including college and university, continuing education, and standalone programs and courses.",
      "properties": {

        "summary": {
          "type": "string",
          "description:": "Summary of overall education."
        },

        "level": {
          "type": "string",
          "description": "Highest level of education obtained (none, diploma, some-college, degree).",
          "required": true
        },

        "degree": {
          "type": "string",
          "description": "Your degree, if any (BSCS, BA, etc.)."
        },

        "history": {
          "type": "array",
          "additionalItems": false,
          "items": {
            "type": "object",
            "additionalProperties": true,
            "properties": {

              "title": {
                "type": "string",
                "description": "A freeform title for this education stint. Typically, this should be the short name of your degree, certification, or training."
              },

              "institution": {
                "type": "string",
                "description": "College or school name.",
                "required": true
              },

              "area": {
                "type": "string",
                "description": "e.g. Arts"
              },

              "studyType": {
                "type": "string",
                "description": "e.g. Bachelor"
              },

              "start": {
                "type": "string",
                "description": "Date this schooling began, in YYYY, YYYY-MM, or YYYY-MM-DD format.",
                "format": "date"
              },

              "end": {
                "type": "string",
                "description": "Date this schooling ended, in YYYY, YYYY-MM, or YYYY-MM-DD format.",
                "format": "date"
              },

              "grade": {
                "type": "string",
                "description": "Grade or GPA."
              },

              "curriculum": {
                "type": "array",
                "description": "Notable courses, subjects, and educational experiences.",
                "additionalItems": false,
                "items": {
                  "type": "string",
                  "description": "The course name and number or other identifying info."
                }
              },

              "url": {
                "type": "string",
                "description": "Website or URL of the institution or school.",
                "format": "uri"
              },

              "summary": {
                "type": "string",
                "description": "A short summary of this education experience."
              },

              "keywords": {
                "type": "array",
                "description": "Keywords associated with this education stint.",
                "additionalItems": false,
                "items": {
                  "type": "string",
                  "description": "For example, C++, HTML, HIPAA, etc."
                }
              },

              "highlights": {
                "type": "array",
                "description": "Noteworthy achievements and/or highlights.",
                "additionalItems": false,
                "items": {
                  "type": "string",
                  "description": "For ex, 'Graduated *summa cum laude*'."
                }
              },

              "location": {
                "type": "string",
                "description": "Freeform location of the education, e.g., 'San Francisco, CA' or 'Tokyo'."
              }
            }
          }
        }
      }
    },



    "social": {
      "type": "array",
      "description": "The 'social' section describes the candidate's participation in internet and social networking services and communities including GitHub, FaceBook, and the like.",
      "additionalItems": false,
      "items": {
        "type": "object",
        "additionalProperties": true,
        "properties": {

          "network": {
            "type": "string",
            "description": "The name of the social network, such as Facebook or GitHub.",
            "required": true
          },

          "user": {
            "type": "string",
            "description": "Your username or handle on the social network.",
            "required": true
          },

          "url": {
            "type": "string",
            "description": "URL of your profile page on this network.",
            "format": "uri",
            "required": true
          },

          "label": {
            "type": "string",
            "description": "A friendly label."
          }
        }
      }
    },



    "recognition": {
      "type": "array",
      "description": "The 'recognition' section describes the candidate's public or professional plaudits, kudos, awards, and other forms of positive external reinforcement.",
      "additionalItems": false,
      "items": {
        "type": "object",
        "additionalProperties": true,
        "properties": {

          "category": {
            "type": "string",
            "description": "Type of recognition: award, honor, prize, etc."
          },

          "title": {
            "type": "string",
            "description": "Title of the award or recognition.",
            "required": true
          },

          "date": {
            "type": "string",
            "description": "Date awarded, in YYYY, YYYY-MM, or YYYY-MM-DD format.",
            "format": "date"
          },

          "from": {
            "type": "string",
            "description": "Name of the awarding company, insitution, or individual."
          },

          "summary": {
            "type": "string",
            "description": "A brief description of the award and why you received it."
          },

          "url": {
            "type": "string",
            "description": "A webpage or other associated URL.",
            "format": "uri"
          }
        }
      }
    },



    "writing": {
      "type": "array",
      "description": "The 'writing' section describes the candidate's writing and publication history, from blogs and essays to novels and dissertations.",
      "additionalItems": false,
      "items": {
        "type": "object",
        "additionalProperties": true,
        "properties": {

          "title": {
            "type": "string",
            "description": "Title of the article, essay, or book.",
            "required": true
          },

          "category": {
            "type": "string",
            "description": "One of 'book', 'article', 'essay', 'blog post', or 'series'."
          },

          "publisher": {
            "type": ["object","string"],
            "description": "Publisher of the article, essay, or book.",
            "optional": true,
            "additionalProperties": true,
            "properties": {

              "name": {
                "type": "string",
                "description": "Publisher of the article, essay, or book."
              },

              "url": {
                "type": "string",
                "description": "Publisher website or URL."
              }
            }
          },

          "date": {
            "type": "string",
            "format": "date",
            "description": "Publication date in YYYY, YYYY-MM, or YYYY-MM-DD format."
          },

          "url": {
            "type": "string",
            "description": "Website or URL of this writing or publication."
          },

          "summary": {
            "type": "string",
            "description": "A brief summary of the publication."
          }
        }
      }
    },



    "reading": {
      "type": "array",
      "description": "The 'reading' section describes the candidate's reading habits and is intended to demonstrate familiarity with industry-relevant publications, blogs, books, or other media that a competent industry candidate should be expected to know.",
      "additionalItems": false,
      "items": {
        "type": "object",
        "additionalProperties": true,
        "properties": {

          "title": {
            "type": "string",
            "description": "Title of the book, blog, or article.",
            "required": true
          },

          "category": {
            "type": "string",
            "description": "The type of reading: book, article, blog, magazine, series, etc."
          },

          "url": {
            "type": "string",
            "description": "URL of the book, blog, or article.",
            "format": "uri"
          },

          "author": {
            "type": ["string","array"],
            "additionalItems": false,
            "description": "Author of the book, blog, or article.",
            "items": {
              "type": "string",
              "description": "Author name."
            }
          },

          "date": {
            "type": "string",
            "format": "date",
            "description": "Publication date in YYYY, YYYY-MM, or YYYY-MM-DD format."
          },

          "summary": {
            "type": "string",
            "description": "A brief description of the book, magazine, etc."
          }

        }
      }
    },



    "speaking": {
      "type": "array",
      "additionalItems": false,
      "section": "The 'speaking' section describes the candidate's speaking engagements and presentations.",
      "items": {
        "type": "object",
        "additionalProperties": true,
        "properties": {
          "title": {
            "type": "string",
            "description": "Speaking engagement title."
          },
          "event": {
            "type": "string",
            "description": "Event at which you presented.",
            "required": true
          },
          "location": {
            "type": "string",
            "description": "Freeform location of the event, e.g., 'San Francisco, CA' or 'Tokyo'."
          },
          "date": {
            "type": "string",
            "description": "Presentation date.",
            "format": "date"
          },
          "highlights": {
            "type": "array",
            "description": "Noteworthy achievements and/or highlights.",
            "additionalItems": false,
            "items": {
              "type": "string",
              "description": "An array of specific highlights such as 'Won 'Best Speaker' award at 2012 E3 expo'."
            }
          },
          "keywords": {
            "type": "array",
            "description": "Keywords associated with this speaking engagement.",
            "additionalItems": false,
            "items": {
              "type": "string",
              "description": "A list of keywords such as 'TED', 'E3', 'mathematics', 'Big Data', etc."
            }
          },
          "summary": {
            "type": "string",
            "description": "A description of this speaking engagement."
          }
        }
      }
    },



    "governance": {
      "type": "array",
      "additionalItems": false,
      "description": "The 'governance' section describes the candidate's leadership, standards, board, and committee roles.",
      "items": {
        "type": "object",
        "additionalProperties": true,
        "properties": {

          "summary": {
            "type": "string",
            "description": "Summary of your governance at this organization."
          },

          "category": {
            "type": "string",
            "description": "Type of governance: committee, board, standards group, etc."
          },

          "role": {
            "type": "string",
            "description": "Governance role: board member, contributor, director, etc."
          },

          "organization": {
            "type": "string",
            "description": "The organization.",
            "required": true
          },

          "start": {
            "type": "string",
            "description": "Start date.",
            "format": "date"
          },

          "end": {
            "type": "string",
            "description": "End date.",
            "format": "date"
          },

          "keywords": {
            "type": "array",
            "description": "Keywords associated with this governance stint.",
            "additionalItems": false,
            "items": {
              "type": "string",
              "description": "For example, C++, CRM, HIPAA."
            }
          },

          "highlights": {
            "type": "array",
            "description": "Noteworthy achievements and/or highlights.",
            "additionalItems": false,
            "items": {
              "type": "string",
              "description": "For ex, 'Increased company profits by 35% year over year'."
            }
          }

        }
      }
    },



    "languages": {
      "type": "array",
      "description": "The 'languages' section describes the candidate's knowledge of world languages such as English, Spanish, or Chinese.",
      "additionalItems": false,
      "items": {
        "type": "object",
        "additionalProperties": true,
        "properties": {

          "language": {
            "type": "string",
            "description": "The name of the language: English, Spanish, etc.",
            "required": true
          },

          "level": {
            "type": "string",
            "description": "Level of fluency with the language, from 1 to 10."
          },

          "years": {
            "type": ["string","number"],
            "description": "Amount of time language spoken?"
          }
        }
      }
    },



    "samples": {
      "type": "array",
      "description": "The 'samples' section provides an accessible demonstration of the candidate's portfolio or work product to potential employers and co-workers.",
      "additionalItems": false,
      "items": {
        "type": "object",
        "additionalProperties": true,
        "properties": {

          "title": {
            "type": "string",
            "description": "Title or descriptive name.",
            "required": true
          },

          "summary": {
            "type": "string",
            "description": "A brief description of the sample."
          },

          "url": {
            "type": "string",
            "description": "URL of the sample (if any).",
            "format": "uri"
          },

          "date": {
            "type": "string",
            "description": "Date the sample was released in YYYY, YYYY-MM, or YYYY-MM-DD format.",
            "format": "date"
          },

          "highlights": {
            "type": "array",
            "description": "Noteworthy achievements and/or highlights for this sample.",
            "additionalItems": false,
            "items": {
              "type": "string",
              "description": "For ex, 'Implemented optimized search algorithm dervied from Slices of Pi'."
            }
          },

          "keywords": {
            "type": "array",
            "description": "Keywords associated with this work sample.",
            "additionalItems": false,
            "items": {
              "type": "string",
              "description": "For example, C++, HTML, game."
            }
          }

        }
      }
    },



    "references": {
      "type": "array",
      "description": "The 'references' section describes the candidate's personal, professional, and/or technical references.",
      "additionalItems": false,
      "items": {
        "type": "object",
        "additionalProperties": true,
        "properties": {

          "name": {
            "type": "string",
            "description": "The full name of the person giving the reference.",
            "required": true
          },

          "role": {
            "type": "string",
            "description": "The occupation of this reference, or his or her relationship to the candidate."
          },

          "category": {
            "type": "string",
            "description": "The type of reference, eg, professional, technical, or personal."
          },

          "private": {
            "type": "boolean",
            "description": "Is this a private reference?"
          },

          "summary": {
            "type": "string",
            "description": "Optional summary information for this reference."
          },

          "contact": {
            "type": "array",
            "additionalItems": false,
            "items": {
              "type": "object",
              "additionalProperties": true,
              "properties": {

                "label": {
                  "type": "string",
                  "description": "Friendly label for this piece of contact info."
                },

                "category": {
                  "type": "string",
                  "description": "Type of contact information (phone, email, web, etc.)."
                },

                "value": {
                  "type": "string",
                  "description": "The email address, phone number, etc."
                }
              }
            }
          }
        }
      }
    },



    "testimonials": {
      "type": "array",
      "description": "The 'testimonials' section contains public testimonials of the candidate's professionalism and character.",
      "additionalItems": false,
      "items": {
        "type": "object",
        "additionalProperties": true,
        "properties": {

          "name": {
            "type": "string",
            "description": "The full name of the person giving the reference.",
            "required": true
          },

          "quote": {
            "type": "string",
            "required": true,
            "description": "A quoted reference, eg, 'Susan was an excellent team leader, manager, and operations specialist with a great eye for detail. I'd gladly hire her again if I could!'"
          },

          "category": {
            "type": "string",
            "description": "Type of reference: personal, professional, or technical."
          },

          "private": {
            "type": "boolean",
            "description": "Public reference (testimonial) or via private contact?"
          }
        }
      }
    },



    "interests": {
      "type": "array",
      "additionalItems": false,
      "description": "The 'interests' section provides a sampling of the candidate's interests and enthusiasms outside of work.",
      "items": {
        "type": "object",
        "additionalProperties": true,
        "properties": {

          "name": {
            "type": "string",
            "description": "The name or title of the interest or hobby.",
            "required": true
          },

          "summary": {
            "type": "string"
          },

          "keywords": {
            "type": "array",
            "additionalItems": false,
            "description": "Keywords associated with this interest.",
            "items": {
              "type": "string",
              "description": "A keyword relating to this interest."
            }
          }
        }
      }
    },



    "extracurricular": {
      "type": "array",
      "description": "The 'extracurricular' section describes the candidate's involvement with industry-related events and enterprises outside of work. For example: attending conferences, workshops, or meetups.",
      "additionalItems": false,
      "items": {
        "type": "object",
        "additionalProperties": true,
        "properties": {
          "title": {
            "type": "string",
            "description": "Title of the extracurricular activity.",
            "required": true
          },
          "activity": {
            "type": "string",
            "description": "The extracurricular activity.",
            "required": true
          },
          "location": {
            "type": "string",
            "description": "City, state, or other freeform location."
          },
          "start": {
            "type": "string",
            "description": "Start date.",
            "format": "date"
          },
          "end": {
            "type": "string",
            "description": "End date.",
            "format": "date"
          }
        }
      }
    },



    "affiliation": {
      "type": "object",
      "additionalProperties": true,
      "description": "The 'affiliation' section describes the candidate's membership in groups, clubs, organizations, and professional associations whether at the collegiate, corporate, or personal level.",
      "properties": {

        "summary": {
          "type": "string",
          "description": "Optional summary of overall affiliation and membership experience."
        },

        "history": {
          "type": "array",
          "additionalItems": false,
          "items": {
            "type": "object",
            "additionalProperties": true,
            "properties": {

              "category": {
                "type": "string",
                "description": "The type of affiliation: club, union, meetup, etc."
              },

              "organization": {
                "type": "string",
                "description": "The name of the organization or group.",
                "required": true
              },

              "role": {
                "type": "string",
                "description": "Your role in the organization or group."
              },

              "url": {
                "type": "string",
                "description": "Organization website.",
                "format": "uri"
              },

              "start": {
                "type": "string",
                "description": "Date your affiliation with the organization began, in YYYY, YYYY-MM, or YYYY-MM-DD format.",
                "format": "date"
              },

              "end": {
                "type": "string",
                "description": "Date your affiliation with the organization ended, in YYYY, YYYY-MM, or YYYY-MM-DD format.",
                "format": "date"
              },

              "summary": {
                "type": "string",
                "description": "A summary of your achievements and responsibilities during this affiliation."
              },

              "highlights": {
                "type": "array",
                "description": "Noteworthy achievements and/or highlights.",
                "additionalItems": false,
                "items": {
                  "type": "string",
                  "description": "For ex, 'Served on board of directors of national non-profit organization with 20,000 members.'."
                }
              },

              "keywords": {
                "type": "array",
                "description": "Keywords associated with this affiliation.",
                "additionalItems": false,
                "items": {
                  "type": "string",
                  "description": "For example, C++, CRM, HIPAA."
                }
              },

              "location": {
                "type": "string",
                "description": "Freeform location of the position, e.g., 'San Francisco, CA' or 'Tokyo'."
              }
            }
          }
        }

      }
    }

  }
}
