
eedm.instructional-events.v8.0.instructional-events.json Maven / Gradle / Ivy
{
"title" : "Instructional Events",
"description" : "An instructional activity that takes place during a section.",
"type" : "object",
"properties" : {
"metadata" : {
"$ref" : "resource:/eedm/metadata.json"
},
"id" : {
"title" : "ID",
"description" : "A globally unique identifier of an instructional activity 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 an instructional activity.",
"type" : "string"
},
"description" : {
"title" : "Description",
"description" : "A description of an instructional activity.",
"type" : "string"
},
"section" : {
"title" : "Section",
"description" : "An instance of a course.",
"type" : "object",
"properties" : {
"id" : {
"title" : "ID",
"description" : "The global identifier for the Section.",
"type" : "string",
"format" : "guid",
"pattern" : "^[a-f0-9]{8}(?:-[a-f0-9]{4}){3}-[a-f0-9]{12}$"
}
},
"links" : [ {
"rel" : "self",
"href" : "/sections/{id}",
"targetSchema" : {
"$ref" : "sections.json#"
}
} ],
"additionalProperties" : false,
"required" : [ "id" ]
},
"instructionalMethod" : {
"title" : "Instructional Method",
"description" : "The method, style, or format of instruction associated with the instructor's involvement with the section (for example, 'Lecture', 'Lab').",
"type" : "object",
"properties" : {
"id" : {
"title" : "ID",
"description" : "The global identifier for the Instructional Method.",
"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" ]
},
"workLoad" : {
"title" : "Work Load",
"description" : "The total amount of work associated with the instructional event.",
"oneOf" : [ {
"type" : "number"
}, {
"type" : "null"
} ]
},
"recurrence" : {
"title" : "Recurrence",
"description" : "The recurring meeting time pattern associated with the instructional event.",
"oneOf" : [ {
"type" : "object",
"format" : "recurrence",
"properties" : {
"timePeriod" : {
"title" : "Time Period",
"description" : "The period of time to be repeated.",
"type" : "object",
"properties" : {
"startOn" : {
"title" : "Start On",
"description" : "The beginning of the time period being repeated.",
"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" : "End On",
"description" : "The end of the time period being repeated.",
"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" : [ "startOn" ]
},
"repeatRule" : {
"title" : "Repeat Rule",
"description" : "The rule that describes how to repeat the time period.",
"oneOf" : [ {
"title" : "Daily",
"description" : "Rules for repeating on a daily basis.",
"type" : "object",
"properties" : {
"type" : {
"title" : "Type",
"description" : "",
"enum" : [ "daily" ],
"type" : "string"
},
"interval" : {
"title" : "Interval",
"description" : "Number of days between each repetition.",
"oneOf" : [ {
"type" : "integer"
}, {
"type" : "null"
} ]
},
"ends" : {
"title" : "Ends",
"description" : "When to end the daily repetitions.",
"oneOf" : [ {
"title" : "One Of-1",
"description" : "",
"type" : "object",
"properties" : {
"repetitions" : {
"title" : "Repetitions",
"description" : "Number of times to repeat, then stop.",
"type" : "integer"
}
},
"additionalProperties" : false,
"required" : [ "repetitions" ]
}, {
"title" : "One Of-2",
"description" : "",
"type" : "object",
"properties" : {
"date" : {
"title" : "Date",
"description" : "The date after which to stop repeating.",
"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])$"
}
},
"additionalProperties" : false,
"required" : [ "date" ]
}, {
"type" : "object",
"maxProperties" : 0
} ]
}
},
"additionalProperties" : false,
"required" : [ "type" ]
}, {
"title" : "Weekly",
"description" : "Rules for repeating on a weekly basis.",
"type" : "object",
"properties" : {
"type" : {
"title" : "Type",
"description" : "",
"enum" : [ "weekly" ],
"type" : "string"
},
"interval" : {
"title" : "Interval",
"description" : "Number of weeks between each repetition.",
"oneOf" : [ {
"type" : "integer"
}, {
"type" : "null"
} ]
},
"daysOfWeek" : {
"title" : "Days of Week",
"description" : "The days of the week on which to repeat the event.",
"type" : "array",
"items" : {
"enum" : [ "sunday", "monday", "tuesday", "wednesday", "thursday", "friday", "saturday" ],
"type" : "string"
}
},
"ends" : {
"title" : "Ends",
"description" : "When to end the weekly repetitions.",
"oneOf" : [ {
"title" : "One Of-1",
"description" : "",
"type" : "object",
"properties" : {
"repetitions" : {
"title" : "Repetitions",
"description" : "Number of times to repeat, then stop.",
"type" : "integer"
}
},
"additionalProperties" : false,
"required" : [ "repetitions" ]
}, {
"title" : "One Of-2",
"description" : "",
"type" : "object",
"properties" : {
"date" : {
"title" : "Date",
"description" : "The date after which to stop repeating.",
"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])$"
}
},
"additionalProperties" : false,
"required" : [ "date" ]
}, {
"type" : "object",
"maxProperties" : 0
} ]
}
},
"additionalProperties" : false,
"required" : [ "type" ]
}, {
"title" : "Monthly",
"description" : "Rules for repeating on a monthly basis.",
"type" : "object",
"properties" : {
"type" : {
"title" : "Type",
"description" : "",
"enum" : [ "monthly" ],
"type" : "string"
},
"interval" : {
"title" : "Interval",
"description" : "Number of months between each repetition.",
"oneOf" : [ {
"type" : "integer"
}, {
"type" : "null"
} ]
},
"repeatBy" : {
"title" : "Repeat By",
"description" : "How to calculate the day of the month on which to start repeating.",
"oneOf" : [ {
"title" : "One Of-1",
"description" : "",
"type" : "object",
"properties" : {
"dayOfMonth" : {
"title" : "Day of Month",
"description" : "The number of the day in the month on which to start repeating.",
"type" : "integer"
}
},
"additionalProperties" : false,
"required" : [ "dayOfMonth" ]
}, {
"title" : "One Of-2",
"description" : "",
"type" : "object",
"properties" : {
"dayOfWeek" : {
"title" : "Day of Week",
"description" : "The cardinal day of the week (e.g., the first Tuesday, the last Friday, etc.) in the month on which to start repeating.",
"type" : "object",
"properties" : {
"occurrence" : {
"title" : "Occurrence",
"description" : "The nth occurrence of the day of the week in the month. Use a positive number to count from the start of the month (e.g., 1 = first in the month, 2 = second in the month), and a negative number to count from the end of the month (e.g. -1 = last in the month, -2 = second from last, etc.).",
"type" : "integer"
},
"day" : {
"title" : "Day of Week",
"description" : "A day in a week.",
"enum" : [ "sunday", "monday", "tuesday", "wednesday", "thursday", "friday", "saturday" ],
"type" : "string"
}
},
"additionalProperties" : false,
"required" : [ "occurrence", "day" ]
}
},
"additionalProperties" : false,
"required" : [ "dayOfWeek" ]
} ]
},
"ends" : {
"title" : "Ends",
"description" : "When to end the monthly repetitions.",
"oneOf" : [ {
"title" : "One Of-1",
"description" : "",
"type" : "object",
"properties" : {
"repetitions" : {
"title" : "Repetitions",
"description" : "Number of times to repeat, then stop.",
"type" : "integer"
}
},
"additionalProperties" : false,
"required" : [ "repetitions" ]
}, {
"title" : "One Of-2",
"description" : "",
"type" : "object",
"properties" : {
"date" : {
"title" : "Date",
"description" : "The date after which to stop repeating.",
"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])$"
}
},
"additionalProperties" : false,
"required" : [ "date" ]
}, {
"type" : "object",
"maxProperties" : 0
} ]
}
},
"additionalProperties" : false,
"required" : [ "type", "repeatBy" ]
}, {
"title" : "Yearly",
"description" : "Rules for repeating on an annual basis.",
"type" : "object",
"properties" : {
"type" : {
"title" : "Type",
"description" : "",
"enum" : [ "yearly" ],
"type" : "string"
},
"interval" : {
"title" : "Interval",
"description" : "Number of years between each repetition.",
"oneOf" : [ {
"type" : "integer"
}, {
"type" : "null"
} ]
},
"ends" : {
"title" : "Ends",
"description" : "When to end the yearly repetitions.",
"oneOf" : [ {
"title" : "One Of-1",
"description" : "",
"type" : "object",
"properties" : {
"repetitions" : {
"title" : "Repetitions",
"description" : "Number of times to repeat, then stop.",
"type" : "integer"
}
},
"additionalProperties" : false,
"required" : [ "repetitions" ]
}, {
"title" : "One Of-2",
"description" : "",
"type" : "object",
"properties" : {
"date" : {
"title" : "Date",
"description" : "The date after which to stop repeating.",
"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])$"
}
},
"additionalProperties" : false,
"required" : [ "date" ]
}, {
"type" : "object",
"maxProperties" : 0
} ]
}
},
"additionalProperties" : false,
"required" : [ "type" ]
} ]
}
},
"additionalProperties" : false,
"required" : [ "timePeriod", "repeatRule" ]
}, {
"type" : "object",
"maxProperties" : 0
} ]
},
"locations" : {
"title" : "Locations",
"description" : "The locations where the instructional event will take place.",
"type" : "array",
"items" : {
"type" : "object",
"properties" : {
"location" : {
"title" : "Location",
"description" : "The location where the instructional event will take place.",
"oneOf" : [ {
"title" : "Site",
"description" : "A physical location within the organization where the event will take place",
"type" : "object",
"properties" : {
"type" : {
"title" : "Type",
"description" : "The type of location (i.e. site).",
"enum" : [ "site" ],
"type" : "string"
},
"site" : {
"title" : "Site",
"description" : "The physical site where the event will take place",
"type" : "object",
"properties" : {
"id" : {
"title" : "ID",
"description" : "The global identifier for the Site.",
"type" : "string",
"format" : "guid",
"pattern" : "^[a-f0-9]{8}(?:-[a-f0-9]{4}){3}-[a-f0-9]{12}$"
}
},
"links" : [ {
"rel" : "self",
"href" : "/sites/{id}",
"targetSchema" : {
"$ref" : "sites.json#"
}
} ],
"additionalProperties" : false,
"required" : [ "id" ]
}
},
"additionalProperties" : false,
"required" : [ "type", "site" ]
}, {
"title" : "Room",
"description" : "A room within a building, on a floor.",
"type" : "object",
"properties" : {
"type" : {
"title" : "Type",
"description" : "The type of location (i.e. room).",
"enum" : [ "room" ],
"type" : "string"
},
"room" : {
"title" : "Room",
"description" : "The room where the event will take place.",
"type" : "object",
"properties" : {
"id" : {
"title" : "ID",
"description" : "The global identifier for the Room.",
"type" : "string",
"format" : "guid",
"pattern" : "^[a-f0-9]{8}(?:-[a-f0-9]{4}){3}-[a-f0-9]{12}$"
}
},
"links" : [ {
"rel" : "self",
"href" : "/rooms/{id}",
"targetSchema" : {
"$ref" : "rooms.json#"
}
} ],
"additionalProperties" : false,
"required" : [ "id" ]
}
},
"additionalProperties" : false,
"required" : [ "type", "room" ]
}, {
"title" : "Online Location",
"description" : "A meeting location available via a computer network, such as an online video conference.",
"type" : "object",
"properties" : {
"type" : {
"title" : "Type",
"description" : "The type of location (i.e. online).",
"enum" : [ "online" ],
"type" : "string"
},
"phoneNumber" : {
"title" : "Phone",
"description" : "The international telephone number of the location.",
"type" : "string"
},
"phoneExtension" : {
"title" : "Extension",
"description" : "The telephone extension number of the location's telephone.",
"type" : "string"
},
"webAddress" : {
"title" : "Web Address",
"description" : "The primary web address (URL) of the online meeting location.",
"type" : "string"
}
},
"additionalProperties" : false,
"required" : [ "type" ]
}, {
"title" : "Other Location",
"description" : "A user provided description of a non-standard location for the instructional event.",
"type" : "object",
"properties" : {
"type" : {
"title" : "Type",
"description" : "The type of location (i.e. other).",
"enum" : [ "other" ],
"type" : "string"
},
"title" : {
"title" : "Title",
"description" : "A user provided description of a non-standard location for the instructional event.",
"type" : "string"
}
},
"additionalProperties" : false,
"required" : [ "type" ]
} ]
}
},
"additionalProperties" : false,
"required" : [ "location" ]
}
},
"instructorRoster" : {
"title" : "Instructor Roster",
"description" : "The roster of instructors assigned to teach an instructional event.",
"type" : "array",
"items" : {
"type" : "object",
"properties" : {
"instructor" : {
"title" : "Instructor",
"description" : "The person assigned to teach an instruction method of a section",
"type" : "object",
"properties" : {
"id" : {
"title" : "ID",
"description" : "The global identifier for the Instructor.",
"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" ]
},
"instructorRole" : {
"title" : "Instructor Role",
"description" : "The role of the instructor for the instructional event (e.g. primary).",
"oneOf" : [ {
"type" : "string",
"enum" : [ "primary" ]
}, {
"type" : "string",
"maxLength" : 0
} ]
},
"workLoad" : {
"title" : "Work Load",
"description" : "The amount of work involved in teaching the section that is attributable to the instructor.",
"oneOf" : [ {
"type" : "number"
}, {
"type" : "null"
} ]
},
"responsibilityPercentage" : {
"title" : "Responsibility Percentage",
"description" : "The rate or proportion per hundred of the responsibility for managing the instructional method's activities that is attributable to the instructor.",
"oneOf" : [ {
"type" : "number"
}, {
"type" : "null"
} ]
},
"workStartOn" : {
"title" : "Work Start Date",
"description" : "The date when an instructor is assigned to start teaching the scheduled event for a section.",
"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
} ]
},
"workEndOn" : {
"title" : "Work End Date",
"description" : "The date after which an instructor is no longer assigned to the scheduled event for a section.",
"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" : [ "instructor" ]
}
},
"approvals" : {
"title" : "Approvals",
"description" : "The type and source of approvals applied to the instructional event.",
"type" : "array",
"items" : {
"type" : "object",
"properties" : {
"approvalType" : {
"title" : "Type",
"description" : "The type of approval granted.",
"enum" : [ "instructorAvailability", "instructorCapacity", "roomAvailability", "roomCapacity" ],
"type" : "string"
},
"approvalEntity" : {
"title" : "Entity",
"description" : "The entity that granted approval.",
"enum" : [ "user", "system" ],
"type" : "string"
}
},
"additionalProperties" : false,
"required" : [ "approvalType", "approvalEntity" ]
}
}
},
"required" : [ "id", "section", "instructionalMethod" ],
"additionalProperties" : false,
"links" : [ {
"rel" : "instructional-event-instances",
"title" : "Event Instances",
"description" : "The individual events created from this instructional event specification.",
"href" : "/instructional-event-instances?instructionalEvent.id={id}",
"targetSchema" : {
"$ref" : "instructional-event-instances.json#"
}
}, {
"rel" : "filter",
"encType" : "application/x-www-form-urlencoded",
"method" : "GET",
"href" : "/instructional-events/",
"schema" : {
"type" : "object",
"properties" : {
"section" : {
"type" : "string",
"format" : "guid",
"pattern" : "^[a-f0-9]{8}(?:-[a-f0-9]{4}){3}-[a-f0-9]{12}$"
},
"startOn" : {
"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" : {
"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])?$"
},
"room" : {
"type" : "string",
"format" : "guid",
"pattern" : "^[a-f0-9]{8}(?:-[a-f0-9]{4}){3}-[a-f0-9]{12}$"
},
"instructor" : {
"type" : "string",
"format" : "guid",
"pattern" : "^[a-f0-9]{8}(?:-[a-f0-9]{4}){3}-[a-f0-9]{12}$"
},
"academicPeriod" : {
"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