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

eedm.courses.v8.0.courses.json Maven / Gradle / Ivy

{
  "title" : "Courses",
  "description" : "The smallest unit of instruction for which an oganization grants credits. Identifies subject, course number and level, availability dates, instructional method, grading schemes, credits granted, and the granting organization.",
  "type" : "object",
  "properties" : {
    "metadata" : {
      "$ref" : "resource:/eedm/metadata.json"
    },
    "id" : {
      "title" : "ID",
      "description" : "A global identifier of a course to be used in all external references.",
      "type" : "string",
      "format" : "guid",
      "pattern" : "^[a-f0-9]{8}(?:-[a-f0-9]{4}){3}-[a-f0-9]{12}$"
    },
    "title" : {
      "title" : "Title",
      "description" : "The full name of a course as it appears in a course catalog (for example, 'Calculus').",
      "type" : "string",
      "minLength" : 1
    },
    "description" : {
      "title" : "Description",
      "description" : "A description of the substance and nature of a course as it appears in a course catalog.",
      "type" : "string"
    },
    "subject" : {
      "title" : "Subject",
      "description" : "The branch of knowledge such as 'Mathematics' or 'Biology' associated with a course.",
      "type" : "object",
      "properties" : {
        "id" : {
          "title" : "ID",
          "description" : "The global identifier for the Subject.",
          "type" : "string",
          "format" : "guid",
          "pattern" : "^[a-f0-9]{8}(?:-[a-f0-9]{4}){3}-[a-f0-9]{12}$"
        }
      },
      "links" : [ {
        "rel" : "self",
        "href" : "/subjects/{id}",
        "targetSchema" : {
          "$ref" : "subjects.json#"
        }
      } ],
      "additionalProperties" : false,
      "required" : [ "id" ]
    },
    "courseLevels" : {
      "title" : "Course Levels",
      "description" : "The levels of scholarship that apply to a course.",
      "type" : "array",
      "items" : {
        "title" : "Course Levels",
        "description" : "The levels of scholarship that apply to a course.",
        "type" : "object",
        "properties" : {
          "id" : {
            "title" : "ID",
            "description" : "The global identifier for the Course Levels.",
            "type" : "string",
            "format" : "guid",
            "pattern" : "^[a-f0-9]{8}(?:-[a-f0-9]{4}){3}-[a-f0-9]{12}$"
          }
        },
        "links" : [ {
          "rel" : "self",
          "href" : "/course-levels/{id}",
          "targetSchema" : {
            "$ref" : "course-levels.json#"
          }
        } ],
        "additionalProperties" : false,
        "required" : [ "id" ]
      }
    },
    "instructionalMethods" : {
      "title" : "Instructional Methods",
      "description" : "The methods, styles, or formats in which a course is taught (for example, 'Lecture', 'Lab').",
      "type" : "array",
      "items" : {
        "title" : "Instructional Methods",
        "description" : "The methods, styles, or formats in which a course is taught (for example, 'Lecture', 'Lab').",
        "type" : "object",
        "properties" : {
          "id" : {
            "title" : "ID",
            "description" : "The global identifier for the Instructional Methods.",
            "type" : "string",
            "format" : "guid",
            "pattern" : "^[a-f0-9]{8}(?:-[a-f0-9]{4}){3}-[a-f0-9]{12}$"
          }
        },
        "links" : [ {
          "rel" : "self",
          "href" : "/instructional-methods/{id}",
          "targetSchema" : {
            "$ref" : "instructional-methods.json#"
          }
        } ],
        "additionalProperties" : false,
        "required" : [ "id" ]
      }
    },
    "owningInstitutionUnits" : {
      "title" : "Owning Institution Units",
      "description" : "A list of units of the educational institution (optionally, hierarchical) that own or are responsible for a course",
      "type" : "array",
      "items" : {
        "type" : "object",
        "properties" : {
          "institutionUnit" : {
            "title" : "Institution Unit",
            "description" : "A School, College, Division, Department, or any other organizational unit in the institution",
            "type" : "object",
            "properties" : {
              "id" : {
                "title" : "ID",
                "description" : "The global identifier for the Institution Unit.",
                "type" : "string",
                "format" : "guid",
                "pattern" : "^[a-f0-9]{8}(?:-[a-f0-9]{4}){3}-[a-f0-9]{12}$"
              }
            },
            "links" : [ {
              "rel" : "self",
              "href" : "/educational-institution-units/{id}",
              "targetSchema" : {
                "$ref" : "educational-institution-units.json#"
              }
            } ],
            "additionalProperties" : false,
            "required" : [ "id" ]
          },
          "ownershipPercentage" : {
            "title" : "Ownership Percentage",
            "description" : "The portion of a course that is owned or allocated to a particular organization.",
            "type" : "number"
          }
        },
        "additionalProperties" : false,
        "required" : [ "institutionUnit", "ownershipPercentage" ]
      }
    },
    "schedulingStartOn" : {
      "title" : "Course Effective Starting Date",
      "description" : "The starting date on which a course is available to have sections scheduled. When combined with the Course Effective Ending Date, this defines the time period a course is available for scheduling.",
      "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])?$"
    },
    "schedulingEndOn" : {
      "title" : "Course Effective Ending Date",
      "description" : "The ending date on which a course is no longer available to have sections scheduled. When combined with the Course Effective Starting Date, this defines the time period a course is available for scheduling.",
      "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
      } ]
    },
    "number" : {
      "title" : "Course Number",
      "description" : "A numbering scheme that distinguishes courses within a subject. Typically, this is an integer.",
      "type" : "string",
      "minLength" : 1
    },
    "academicLevels" : {
      "title" : "Academic Levels",
      "description" : "The academic level (for example, 'Under Graduate' or 'Graduate') associated with a course.",
      "type" : "array",
      "items" : {
        "title" : "Academic Levels",
        "description" : "The academic level (for example, 'Under Graduate' or 'Graduate') associated with a course.",
        "type" : "object",
        "properties" : {
          "id" : {
            "title" : "ID",
            "description" : "The global identifier for the Academic Levels.",
            "type" : "string",
            "format" : "guid",
            "pattern" : "^[a-f0-9]{8}(?:-[a-f0-9]{4}){3}-[a-f0-9]{12}$"
          }
        },
        "links" : [ {
          "rel" : "self",
          "href" : "/academic-levels/{id}",
          "targetSchema" : {
            "$ref" : "academic-levels.json#"
          }
        } ],
        "additionalProperties" : false,
        "required" : [ "id" ]
      }
    },
    "gradeSchemes" : {
      "title" : "Grade Schemes",
      "description" : "The grading schemes that may be used to award a grade to a student taking this course.",
      "type" : "array",
      "items" : {
        "title" : "Grade Schemes",
        "description" : "The grading schemes that may be used to award a grade to a student taking this course.",
        "type" : "object",
        "properties" : {
          "id" : {
            "title" : "ID",
            "description" : "The global identifier for the Grade Schemes.",
            "type" : "string",
            "format" : "guid",
            "pattern" : "^[a-f0-9]{8}(?:-[a-f0-9]{4}){3}-[a-f0-9]{12}$"
          }
        },
        "links" : [ {
          "rel" : "self",
          "href" : "/grade-schemes/{id}",
          "targetSchema" : {
            "$ref" : "grade-schemes.json#"
          }
        } ],
        "additionalProperties" : false,
        "required" : [ "id" ]
      }
    },
    "credits" : {
      "title" : "Credits",
      "description" : "The credit specifications that apply to a course (for example, 'Regular Credit').",
      "type" : "array",
      "items" : {
        "type" : "object",
        "properties" : {
          "creditCategory" : {
            "title" : "Credit Category",
            "description" : "",
            "type" : "object",
            "properties" : {
              "creditType" : {
                "title" : "Credit Type",
                "description" : "The higher level category of academic credits.",
                "enum" : [ "ce", "institution", "transfer", "exchange", "exam", "workLifeExperience", "other", "noCredit" ],
                "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" : "/credit-categories/{id}",
                    "targetSchema" : {
                      "$ref" : "credit-categories.json#"
                    }
                  } ],
                  "additionalProperties" : false,
                  "required" : [ "id" ]
                }, {
                  "type" : "object",
                  "maxProperties" : 0
                } ]
              }
            },
            "additionalProperties" : false,
            "required" : [ "creditType" ]
          },
          "measure" : {
            "title" : "Measure",
            "description" : "A unit or standard of measurement for a course credit.",
            "enum" : [ "credit", "ceu", "hour" ],
            "type" : "string"
          },
          "minimum" : {
            "title" : "Minimum number",
            "description" : "The lower, inclusive bound of the range of values for a course credit.",
            "type" : "number"
          },
          "maximum" : {
            "title" : "Maximum number",
            "description" : "The upper, inclusive bound of the range of values for a course credit.",
            "oneOf" : [ {
              "type" : "number"
            }, {
              "type" : "null"
            } ]
          },
          "increment" : {
            "title" : "Increment number",
            "description" : "The increment by which the range of values for a course credit can change from the minimum to the maximum. For example, a range of 1 to 3 with an increment of 1 would evaluate to 1, 2, or 3. Specifying an increment of 0.5 would evaluate to 1, 1.5, 2, 2.5, or 3.",
            "oneOf" : [ {
              "type" : "number"
            }, {
              "type" : "null"
            } ]
          }
        },
        "additionalProperties" : false,
        "required" : [ "creditCategory", "measure", "minimum" ]
      }
    },
    "billing" : {
      "title" : "Billing",
      "description" : "The number of units that may be used to calculate the charge for the course.",
      "oneOf" : [ {
        "type" : "object",
        "properties" : {
          "minimum" : {
            "title" : "Minimum",
            "description" : "The minimum number of units that may be used to calculate the charge for the course.",
            "type" : "number"
          },
          "maximum" : {
            "title" : "Maximum",
            "description" : "The maximum number of units that may be used to calculate the charge for the course.",
            "oneOf" : [ {
              "type" : "number"
            }, {
              "type" : "null"
            } ]
          },
          "increment" : {
            "title" : "Increment",
            "description" : "The increment by which the range of values for billing units can change from the minimum to the maximum.",
            "oneOf" : [ {
              "type" : "number"
            }, {
              "type" : "null"
            } ]
          }
        },
        "additionalProperties" : false,
        "required" : [ "minimum" ]
      }, {
        "type" : "object",
        "maxProperties" : 0
      } ]
    },
    "reportingDetail" : {
      "title" : "Reporting Detail",
      "description" : "Additional properties required for localized reporting.",
      "oneOf" : [ {
        "title" : "Nebraska Reporting",
        "description" : "Additional reporting detail for Nebraska.",
        "oneOf" : [ {
          "type" : "object",
          "properties" : {
            "type" : {
              "title" : "Type",
              "description" : "The locality requiring additional reporting properties.",
              "enum" : [ "Nebraska" ],
              "type" : "string"
            },
            "lab" : {
              "title" : "Lab",
              "description" : "The number of lab hours that may be assigned to the course.",
              "oneOf" : [ {
                "type" : "object",
                "properties" : {
                  "minimum" : {
                    "title" : "Minimum",
                    "description" : "The minimum number of lab hours that may be assigned to the course.",
                    "type" : "number"
                  },
                  "maximum" : {
                    "title" : "Maximum",
                    "description" : "The maximum number of lab hours that may be assigned to the course.",
                    "oneOf" : [ {
                      "type" : "number"
                    }, {
                      "type" : "null"
                    } ]
                  },
                  "increment" : {
                    "title" : "Increment",
                    "description" : "The increment by which the range of values for lab hours can change from the minimum to the maximum.",
                    "oneOf" : [ {
                      "type" : "number"
                    }, {
                      "type" : "null"
                    } ]
                  }
                },
                "additionalProperties" : false,
                "required" : [ "minimum" ]
              }, {
                "type" : "object",
                "maxProperties" : 0
              } ]
            },
            "lecture" : {
              "title" : "Lecture",
              "description" : "The number of lecture hours that may be assigned to the course.",
              "oneOf" : [ {
                "type" : "object",
                "properties" : {
                  "minimum" : {
                    "title" : "Minimum",
                    "description" : "The minimum number of lecture hours that may be assigned to the course.",
                    "type" : "number"
                  },
                  "maximum" : {
                    "title" : "Maximum",
                    "description" : "The maximum number of lecture hours that may be assigned to the course.",
                    "oneOf" : [ {
                      "type" : "number"
                    }, {
                      "type" : "null"
                    } ]
                  },
                  "increment" : {
                    "title" : "Increment",
                    "description" : "The increment by which the range of values for lecture hours can change from the minimum to the maximum.",
                    "oneOf" : [ {
                      "type" : "number"
                    }, {
                      "type" : "null"
                    } ]
                  }
                },
                "additionalProperties" : false,
                "required" : [ "minimum" ]
              }, {
                "type" : "object",
                "maxProperties" : 0
              } ]
            },
            "contact" : {
              "title" : "Contact",
              "description" : "The number of contact hours that may be assigned to the course.",
              "oneOf" : [ {
                "type" : "object",
                "properties" : {
                  "minimum" : {
                    "title" : "Minimum",
                    "description" : "The minimum number of contact hours that may be assigned to the course.",
                    "type" : "number"
                  },
                  "maximum" : {
                    "title" : "Maximum",
                    "description" : "The maximum number of contact hours that may be assigned to the course.",
                    "oneOf" : [ {
                      "type" : "number"
                    }, {
                      "type" : "null"
                    } ]
                  },
                  "increment" : {
                    "title" : "Increment",
                    "description" : "The increment by which the range of values for contact hours can change from the minimum to the maximum.",
                    "oneOf" : [ {
                      "type" : "number"
                    }, {
                      "type" : "null"
                    } ]
                  }
                },
                "additionalProperties" : false,
                "required" : [ "minimum" ]
              }, {
                "type" : "object",
                "maxProperties" : 0
              } ]
            },
            "courseWeight" : {
              "title" : "Course Weight",
              "description" : "The weight assigned to the course.",
              "oneOf" : [ {
                "type" : "number"
              }, {
                "type" : "null"
              } ]
            }
          },
          "additionalProperties" : false,
          "required" : [ "type" ]
        }, {
          "type" : "object",
          "maxProperties" : 0
        } ]
      } ]
    }
  },
  "required" : [ "id", "title", "subject", "schedulingStartOn", "number" ],
  "additionalProperties" : false,
  "links" : [ {
    "rel" : "filter",
    "encType" : "application/x-www-form-urlencoded",
    "method" : "GET",
    "href" : "/courses/",
    "schema" : {
      "type" : "object",
      "properties" : {
        "subject" : {
          "type" : "string",
          "format" : "guid",
          "pattern" : "^[a-f0-9]{8}(?:-[a-f0-9]{4}){3}-[a-f0-9]{12}$"
        },
        "number" : {
          "type" : "string"
        },
        "academicLevels" : {
          "type" : "string",
          "format" : "guid",
          "pattern" : "^[a-f0-9]{8}(?:-[a-f0-9]{4}){3}-[a-f0-9]{12}$"
        },
        "owningInstitutionUnits" : {
          "type" : "string",
          "format" : "guid",
          "pattern" : "^[a-f0-9]{8}(?:-[a-f0-9]{4}){3}-[a-f0-9]{12}$"
        },
        "title" : {
          "type" : "string"
        },
        "instructionalMethods" : {
          "type" : "string",
          "format" : "guid",
          "pattern" : "^[a-f0-9]{8}(?:-[a-f0-9]{4}){3}-[a-f0-9]{12}$"
        },
        "schedulingStartOn" : {
          "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])?$"
        },
        "schedulingEndOn" : {
          "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])?$"
        }
      }
    }
  } ]
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy