All Downloads are FREE. Search and download functionalities are using the official Maven repository.

eedm.person-visas.v6.0.person-visas.json Maven / Gradle / Ivy

{
  "title" : "Person Visas",
  "description" : "Visas issued to a person.",
  "type" : "object",
  "properties" : {
    "metadata" : {
      "$ref" : "resource:/eedm/metadata.json"
    },
    "id" : {
      "title" : "ID",
      "description" : "A global identifier of a visa record",
      "type" : "string",
      "format" : "guid",
      "pattern" : "^[a-f0-9]{8}(?:-[a-f0-9]{4}){3}-[a-f0-9]{12}$"
    },
    "person" : {
      "title" : "Person",
      "description" : "The person to whom the visa was issued",
      "type" : "object",
      "properties" : {
        "id" : {
          "title" : "ID",
          "description" : "The global identifier for the Person.",
          "type" : "string",
          "format" : "guid",
          "pattern" : "^[a-f0-9]{8}(?:-[a-f0-9]{4}){3}-[a-f0-9]{12}$"
        }
      },
      "links" : [ {
        "rel" : "self",
        "href" : "/persons/{id}",
        "targetSchema" : {
          "$ref" : "persons.json#"
        }
      } ],
      "additionalProperties" : false,
      "required" : [ "id" ]
    },
    "visaType" : {
      "title" : "Visa Type",
      "description" : "A type of a visa",
      "type" : "object",
      "properties" : {
        "category" : {
          "title" : "Category",
          "description" : "A global category of visa types",
          "enum" : [ "immigrant", "nonImmigrant" ],
          "type" : "string"
        },
        "detail" : {
          "title" : "Detail",
          "description" : "",
          "oneOf" : [ {
            "type" : "object",
            "properties" : {
              "id" : {
                "title" : "ID",
                "description" : "The global identifier for the Detail.",
                "type" : "string",
                "format" : "guid",
                "pattern" : "^[a-f0-9]{8}(?:-[a-f0-9]{4}){3}-[a-f0-9]{12}$"
              }
            },
            "links" : [ {
              "rel" : "self",
              "href" : "/visa-types/{id}",
              "targetSchema" : {
                "$ref" : "visa-types.json#"
              }
            } ],
            "additionalProperties" : false,
            "required" : [ "id" ]
          }, {
            "type" : "object",
            "maxProperties" : 0
          } ]
        }
      },
      "additionalProperties" : false,
      "minProperties" : 1,
      "required" : [ "category" ]
    },
    "visaId" : {
      "title" : "Visa Identifier",
      "description" : "The identifier of the visa",
      "type" : "string"
    },
    "status" : {
      "title" : "Status",
      "description" : "Visa status",
      "oneOf" : [ {
        "type" : "string",
        "enum" : [ "current", "expired" ]
      }, {
        "type" : "string",
        "maxLength" : 0
      } ]
    },
    "requestedOn" : {
      "title" : "Date Requested",
      "description" : "The date when the visa was requested",
      "oneOf" : [ {
        "type" : "string",
        "format" : "date",
        "pattern" : "^(-?(?:[1-9][0-9]*)?[0-9]{4})-(1[0-2]|0[1-9])-(3[0-1]|0[1-9]|[1-2][0-9])$"
      }, {
        "type" : "string",
        "maxLength" : 0
      } ]
    },
    "issuedOn" : {
      "title" : "Date Issued",
      "description" : "The date when the visa was issued",
      "oneOf" : [ {
        "type" : "string",
        "format" : "date",
        "pattern" : "^(-?(?:[1-9][0-9]*)?[0-9]{4})-(1[0-2]|0[1-9])-(3[0-1]|0[1-9]|[1-2][0-9])$"
      }, {
        "type" : "string",
        "maxLength" : 0
      } ]
    },
    "expiresOn" : {
      "title" : "Expires On",
      "description" : "The visa expiration date",
      "oneOf" : [ {
        "type" : "string",
        "format" : "date",
        "pattern" : "^(-?(?:[1-9][0-9]*)?[0-9]{4})-(1[0-2]|0[1-9])-(3[0-1]|0[1-9]|[1-2][0-9])$"
      }, {
        "type" : "string",
        "maxLength" : 0
      } ]
    },
    "entries" : {
      "title" : "Entries",
      "description" : "Entries into the country on this visa",
      "type" : "array",
      "items" : {
        "type" : "object",
        "properties" : {
          "enteredOn" : {
            "title" : "Entered On",
            "description" : "The date of entry",
            "oneOf" : [ {
              "type" : "string",
              "format" : "date-time",
              "pattern" : "^(-?(?:[1-9][0-9]*)?[0-9]{4})-(1[0-2]|0[1-9])-(3[0-1]|0[1-9]|[1-2][0-9])T(2[0-3]|[0-1][0-9]):([0-5][0-9]):([0-5][0-9])(\\.[0-9]+)?(Z|[+-](?:2[0-3]|[0-1][0-9]):[0-5][0-9])?$"
            }, {
              "type" : "string",
              "maxLength" : 0
            } ]
          }
        },
        "additionalProperties" : false
      }
    }
  },
  "required" : [ "id", "person", "visaType" ],
  "additionalProperties" : false,
  "links" : [ {
    "rel" : "filter",
    "encType" : "application/x-www-form-urlencoded",
    "method" : "GET",
    "href" : "/person-visas/",
    "schema" : {
      "type" : "object",
      "properties" : {
        "person" : {
          "type" : "string",
          "format" : "guid",
          "pattern" : "^[a-f0-9]{8}(?:-[a-f0-9]{4}){3}-[a-f0-9]{12}$"
        }
      }
    }
  } ]
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy