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

eedm.academic-periods.v6.0.academic-periods.json Maven / Gradle / Ivy

{
  "title" : "Academic Periods",
  "description" : "A specified interval of time used by higher education institutions (for example, Academic Year or Term).",
  "type" : "object",
  "properties" : {
    "metadata" : {
      "$ref" : "resource:/eedm/metadata.json"
    },
    "id" : {
      "title" : "ID",
      "description" : "A global identifier of an academic period.",
      "type" : "string",
      "format" : "guid",
      "pattern" : "^[a-f0-9]{8}(?:-[a-f0-9]{4}){3}-[a-f0-9]{12}$"
    },
    "code" : {
      "title" : "Code",
      "description" : "A code that identifies an academic period.",
      "type" : "string"
    },
    "title" : {
      "title" : "Title",
      "description" : "The full name of an academic period (for example, 'Fall 2014').",
      "type" : "string",
      "minLength" : 1
    },
    "description" : {
      "title" : "Description",
      "description" : "A description of an academic period.",
      "type" : "string"
    },
    "startOn" : {
      "title" : "Period Start Date",
      "description" : "The date on which an academic period begins.",
      "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])?$"
    },
    "endOn" : {
      "title" : "Period End Date",
      "description" : "The date on which an academic period ends.",
      "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])?$"
    },
    "category" : {
      "title" : "Category",
      "description" : "A category for the academic period.",
      "oneOf" : [ {
        "title" : "Year",
        "description" : "An academic year.",
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "description" : "A type of academic period.",
            "enum" : [ "year" ],
            "type" : "string"
          }
        },
        "additionalProperties" : false,
        "required" : [ "type" ]
      }, {
        "title" : "Term",
        "description" : "A term within an academic year (for example, Semester).",
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "description" : "A type of period with an academic year.",
            "enum" : [ "term" ],
            "type" : "string"
          },
          "parent" : {
            "title" : "Year",
            "description" : "The academic year in which a term occurs.",
            "type" : "object",
            "properties" : {
              "id" : {
                "title" : "ID",
                "description" : "The global identifier for the Year.",
                "type" : "string",
                "format" : "guid",
                "pattern" : "^[a-f0-9]{8}(?:-[a-f0-9]{4}){3}-[a-f0-9]{12}$"
              }
            },
            "links" : [ {
              "rel" : "self",
              "href" : "/academic-periods/{id}",
              "targetSchema" : {
                "$ref" : "academic-periods.json#"
              }
            } ],
            "additionalProperties" : false,
            "required" : [ "id" ]
          },
          "preceding" : {
            "title" : "Preceding Term",
            "description" : "The term that immediately precedes the current academic term.",
            "oneOf" : [ {
              "type" : "object",
              "properties" : {
                "id" : {
                  "title" : "ID",
                  "description" : "The global identifier for the Preceding Term.",
                  "type" : "string",
                  "format" : "guid",
                  "pattern" : "^[a-f0-9]{8}(?:-[a-f0-9]{4}){3}-[a-f0-9]{12}$"
                }
              },
              "links" : [ {
                "rel" : "self",
                "href" : "/academic-periods/{id}",
                "targetSchema" : {
                  "$ref" : "academic-periods.json#"
                }
              } ],
              "additionalProperties" : false,
              "required" : [ "id" ]
            }, {
              "type" : "object",
              "maxProperties" : 0
            } ]
          }
        },
        "additionalProperties" : false,
        "required" : [ "type" ]
      }, {
        "title" : "Subterm",
        "description" : "A subterm within an academic term (for example, Part of a Semester).",
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "description" : "A type of period with a term.",
            "enum" : [ "subterm" ],
            "type" : "string"
          },
          "parent" : {
            "title" : "Term",
            "description" : "The term in which the current subterm occurs.",
            "type" : "object",
            "properties" : {
              "id" : {
                "title" : "ID",
                "description" : "The global identifier for the Term.",
                "type" : "string",
                "format" : "guid",
                "pattern" : "^[a-f0-9]{8}(?:-[a-f0-9]{4}){3}-[a-f0-9]{12}$"
              }
            },
            "links" : [ {
              "rel" : "self",
              "href" : "/academic-periods/{id}",
              "targetSchema" : {
                "$ref" : "academic-periods.json#"
              }
            } ],
            "additionalProperties" : false,
            "required" : [ "id" ]
          },
          "preceding" : {
            "title" : "Preceding Subterm",
            "description" : "The subterm that immediately precedes the current subterm.",
            "oneOf" : [ {
              "type" : "object",
              "properties" : {
                "id" : {
                  "title" : "ID",
                  "description" : "The global identifier for the Preceding Subterm.",
                  "type" : "string",
                  "format" : "guid",
                  "pattern" : "^[a-f0-9]{8}(?:-[a-f0-9]{4}){3}-[a-f0-9]{12}$"
                }
              },
              "links" : [ {
                "rel" : "self",
                "href" : "/academic-periods/{id}",
                "targetSchema" : {
                  "$ref" : "academic-periods.json#"
                }
              } ],
              "additionalProperties" : false,
              "required" : [ "id" ]
            }, {
              "type" : "object",
              "maxProperties" : 0
            } ]
          }
        },
        "additionalProperties" : false,
        "required" : [ "type", "parent" ]
      } ]
    }
  },
  "required" : [ "id", "title", "startOn", "endOn", "category" ],
  "additionalProperties" : false
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy