{
  "temperature": {
    "type": "object",
    "properties": {
      "temp": {
        "type": "number"
      },
      "scale": {
        "type": "string"
      }
    }
  },
  "person-name": {
    "type": "object",
    "properties": {
      "given-names": {
        "type": "array",
        "items": { "type": "string" }
      },
      "family-name": { "type": "string" }
    }
  },
  "username": {
    "type": "string",
    "pattern": "^[a-zA-Z][\\w\\.\\-]*$"
  },
  "user": {
    "type": "object",
    "properties": {
      "username": { "$ref": "#/username" },
      "email": { "type": "string", "format": "email" }
    }
  }
}
