diff --git a/document_root/schema/courses.xsd b/document_root/schema/courses.xsd index ce5084855ddbd6b7a3034ef553761f2c01703f46..8a1fc1b701161186e4b701eb7f78d3903a79071b 100644 --- a/document_root/schema/courses.xsd +++ b/document_root/schema/courses.xsd @@ -12,7 +12,10 @@ schemaLocation="http://www.w3.org/2002/08/xhtml/xhtml1-strict.xsd" /> - <xs:element name="courses" type="courses"></xs:element> + <xs:element name="courses" type="courses"> + <xs:annotation> + <xs:documentation>This is the root node for a list of course descriptions.</xs:documentation> + </xs:annotation></xs:element> <xs:complexType name="courses"> <xs:sequence> @@ -21,25 +24,77 @@ </xs:complexType> <xs:complexType name="course"> + <xs:annotation> + <xs:documentation>This is a description of a single course, containing data that one would find in the undergraduate bulletin.</xs:documentation> + </xs:annotation> <xs:sequence> - <xs:element name="title" type="xs:string" /> - <xs:element name="courseCodes" type="courseCodes" /> - <xs:element name="gradingType" type="gradingType" /> - <xs:element name="dfRemoval" type="xs:boolean" /> - <xs:element name="effectiveSemester" type="xs:positiveInteger" /> - <xs:element name="prerequisite" type="x:Block" minOccurs="0" /> - <xs:element name="notes" type="x:Block" minOccurs="0" /> - <xs:element name="description" type="x:Block" minOccurs="0" /> - <xs:element name="campuses" type="campuses" /> - <xs:element name="deliveryMethods" type="deliveryMethods" /> - <xs:element name="termsOffered" type="termsOffered" minOccurs="0" /> - <xs:element name="activities" type="activities" /> - <xs:element name="credits" type="credits" minOccurs="0"/> - <xs:element name="aceOutcomes" type="aceOutcomes" minOccurs="0" /> - <xs:element name="gradCredits" type="xs:string" minOccurs="0" /> - <xs:element name="gradNotes" type="x:Block" minOccurs="0" /> - <xs:element name="gradPrerequisite" type="x:Block" minOccurs="0" /> - + <xs:element name="title" type="xs:string" > + <xs:annotation> + <xs:documentation>The title of the course</xs:documentation> + </xs:annotation></xs:element> + <xs:element name="courseCodes" type="courseCodes" > + <xs:annotation> + <xs:documentation>A list of course codes for the course, broken up into the subject code, course number and possibly a course letter. Each course must have at least one course code of type "home listing."</xs:documentation> + </xs:annotation></xs:element> + <xs:element name="gradingType" type="gradingType" > + <xs:annotation> + <xs:documentation>This specifies if the course is allowed to be taken pass/no pass, for a letter grade, or both. </xs:documentation> + </xs:annotation></xs:element> + <xs:element name="dfRemoval" type="xs:boolean" > + <xs:annotation> + <xs:documentation>If set to true, this course will remove a grade of D or F from previous versions of the course.</xs:documentation> + </xs:annotation></xs:element> + <xs:element name="effectiveSemester" type="xs:positiveInteger" > + <xs:annotation> + <xs:documentation>The semester that this version of the course became active. Format is a four digit year followed by a single digit for the term (1 = Fall, 2 = Spring, 3 = Summer).</xs:documentation> + </xs:annotation></xs:element> + <xs:element name="prerequisite" type="x:Block" minOccurs="0" > + <xs:annotation> + <xs:documentation>An HTML block describing the prerequisites for this course.</xs:documentation> + </xs:annotation></xs:element> + <xs:element name="notes" type="x:Block" minOccurs="0" > + <xs:annotation> + <xs:documentation>An HTML block containing notes a student should know before registering for the course.</xs:documentation> + </xs:annotation></xs:element> + <xs:element name="description" type="x:Block" minOccurs="0" > + <xs:annotation> + <xs:documentation>An HTML block describing the course.</xs:documentation> + </xs:annotation></xs:element> + <xs:element name="campuses" type="campuses" > + <xs:annotation> + <xs:documentation>A list of campuses at which this course is offered.</xs:documentation> + </xs:annotation></xs:element> + <xs:element name="deliveryMethods" type="deliveryMethods" > + <xs:annotation> + <xs:documentation>A list of ways in which this course is delivered. (ie: Classroom, Web and/or Correspondence)</xs:documentation> + </xs:annotation></xs:element> + <xs:element name="termsOffered" type="termsOffered" minOccurs="0" > + <xs:annotation> + <xs:documentation>A list of terms during which this course may be offered (ie: Fall, Spring, or Summer)</xs:documentation> + </xs:annotation></xs:element> + <xs:element name="activities" type="activities" > + <xs:annotation> + <xs:documentation>A list of activities the student will participate in while taking this course, usually with an assosiated number of hours per week.</xs:documentation> + </xs:annotation></xs:element> + <xs:element name="credits" type="credits" minOccurs="0"> + <xs:annotation> + <xs:documentation>A list of the credit hours a course is offered for. Usally just a single "Single Value" type. Other possibilites are a range of values (with a min and max value) or a maximum per semester or per career.</xs:documentation> + </xs:annotation></xs:element> + <xs:element name="aceOutcomes" type="aceOutcomes" minOccurs="0" > + <xs:annotation> + <xs:documentation>A list of ACE Outcomes. Each child element is a Stratigic Learning Objective (SLO) number. See http://ace.unl.edu/ for more information.</xs:documentation></xs:annotation></xs:element> + <xs:element name="gradCredits" type="xs:string" minOccurs="0" > + <xs:annotation> + <xs:documentation>If the number of credits offered by the grad version of the course is different, they will be listen as text here.</xs:documentation> + </xs:annotation></xs:element> + <xs:element name="gradNotes" type="x:Block" minOccurs="0" > + <xs:annotation> + <xs:documentation>Notes for the grad version of the course, if different.</xs:documentation> + </xs:annotation></xs:element> + <xs:element name="gradPrerequisite" type="x:Block" minOccurs="0" > + <xs:annotation> + <xs:documentation>Prerequisites for the grad version of the course, if different.</xs:documentation> + </xs:annotation></xs:element> </xs:sequence> </xs:complexType>