Modelling Course and CourseInstance
Schema Course Extension Wiki Navigation |
---|
Main Page |
Outline use cases |
Example sites |
Other useful links |
Community group home page |
email list for group |
schema.org Git hub issue |
Requirement a) must be able to identify web pages that describe courses. Arises from use cases 1, 9 and 2 (and is implied by most of the others).
Requirement p) must be able to identify web pages that describe specific instances of a course being offered. Arises from many of the refinements to use cases 1, 9 and 2
Discussion: Modelling Course and CourseOffering & Course, a new dawn? threads.
Proposal
Course, a subtype of CreativeWork: A description of an educational course which may be offered as distinct instances at different times and places, or through different media or modes of study. An educational course is a sequence of one or more educational events and/or creative works which aims to build knowledge, competence or ability of learners.
CourseInstance, a subtype of Event: An instance of a Course offered at a specific time and place or through specific media or mode of study or to a specific section of students.
hasCourseInstance, a property of Course with expected range CourseInstance: An offering of the course at a specific time and place or through specific media or mode of study or to a specific section of students.
Examples
Example 1. Describing one offering of an online course.
Based on Coursera Data Scientist's Toolbox Code example
TYPES: #Course1 Course, CourseInstance, hasCourseInstance
PRE-MARKUP:
<!-- A MOOC / free online course. As a simple one-off course -->
<!-- Based on https://www.coursera.org/course/datascitoolbox -->
[Course]
name: The Data Scientist’s Toolbox
description: In this course you will get an introduction to the main tools and
ideas in the data scientist's toolbox...
hasCourseInstance [CourseInstance]:
courseMode: MOOC
courseMode: online
startDate: February 15
endDate: March 21
MICRODATA:
<!--TODO-->
RDFA:
<body vocab="http://schema.org/">
<!-- A MOOC / free online course. As a simple one-off course -->
<!-- Based on https://www.coursera.org/course/datascitoolbox -->
<main typeof="Course">
<h1 property="name">The Data Scientist's Toolbox</h1>
<h2>About this Course</h2>
<p property="description">
In this course you will get an introduction to the main tools and ideas in the
data scientist's toolbox...</p>
<div rel="hasCourseInstance" typeof="CourseInstance">
<meta property="courseMode" content="MOOC" />
<meta property="courseMode" content="online" />
<h2>Session dates</h2>
<span property="startDate">February 15</span> -
<span property="endDate">March 21</span>
</div>
</main>
</body>
JSON:
<!--TODO-->
Example 2. Describing a college course offered at several locations.
Based on Fife College Accounting Code example
TYPES: #Course2 Course, CourseInstance, hasCourseInstance
PRE-MARKUP:
[Course]
name: HNC Accounting
description: This course is designed for those wishing to take up a career in Accounting
and Financial Administration within a range of organisations....
hasCourseInstance [CourseInstance]:
courseMode: Full Time
startDate: 2016-08-29
location: St Brycedale Campus Kirkcaldy
hasCourseInstance [CourseInstance]:
courseMode: Full Time
startDate: 2016-08-29
location: Halbeath Campus Dunfermline
hasCourseInstance [CourseInstance]:
courseMode: Evenings only and weekends
startDate: 2016-08-31
location: St Brycedale Campus Kirkcaldy
MICRODATA:
<!--TODO-->
RDFA:
<body vocab="http://schema.org/" typeof="Course">
<!-- A college course offered at several locations -->
<!-- based on http://www.fife.ac.uk/student/courses/course/HCACC -->
<h1>Course Details</h1>
<h2 property="name">HNC Accounting</h2>
<p property="description">This course is designed for those wishing to take up
a career in Accounting and Financial Administration within a range of
organisations....</p>
<h2>This course is currently offered on the date(s) and venue(s) listed below.</h2>
<table >
<tbody>
<tr >
<th scope="col" >Method of Study</th>
<th scope="col" >Starts</th>
<th scope="col" >Ends</th>
<th scope="col" >Based at</th>
</tr>
<tr rel="hasCourseInstance" typeOf="CourseInstance">
<td property="courseMode">Full Time</td>
<td property="startDate">29 Aug 2016</td>
<td property="endDate">23 Jun 2017</td>
<td property="location">St Brycedale Campus Kirkcaldy</td>
</tr>
<tr rel="hasCourseInstance" typeOf="CourseInstance">
<td property="courseMode">Full Time</td>
<td property="startDate">29 Aug 2016</td>
<td property="endDate">23 Jun 2017</td>
<td property="location">Halbeath Campus Dunfermline</td>
</tr>
<tr rel="hasCourseInstance" typeOf="CourseInstance">
<td property="courseMode">Evenings only and weekends</td>
<td property="startDate">31 Aug 2016</td>
<td property="endDate">21 Jun 2017</td>
<td property="location">St Brycedale Campus Kirkcaldy</td>
</tr>
</tbody>
</table>
</body>
JSON:
<!--TODO-->
Example 3. Describing a self-paced distance learning course where the price depends on the mode of delivery
Based on PTC Basic Proof Reading Course Code example
TYPES: #Course3 Course, CourseInstance, hasCourseInstance
PRE-MARKUP:
<!--A self-paced distance learning course (no events)-->
<!--Based on http://www.train4publishing.co.uk/courses/distance-learning/basic-proofreading -->
[Course]
name: Basic Proofreading
description: The distance learning training course that takes you from
complete beginner to...
hasCourseInstance [CourseInstance]:
courseMode: online
courseMode: distance learning
offers [Offer]:
price: 395
priceCurrency: GBP
hasCourseInstance [CourseInstance]:
courseMode: posted
courseMode: distance learning
offers [Offer]:
price: 440
priceCurrency: GBP
MICRODATA:
<!--TODO-->
RDFA:
<body vocab="http://schema.org/">
<!--A self-paced distance learning course (no events)-->
<!--Based on http://www.train4publishing.co.uk/courses/distance-learning/basic-proofreading -->
<div typeof="Course">
<h1 property="name">Basic Proofreading</h1>
<p property="description">The distance learning training course that takes you
from complete beginner to PQB qualified proofreader in one step.</p>
<div rel="hasCourseInstance" typeOf="CourseInstance">
<meta property="courseMode" content="distance learning" />
<span property="courseMode">Online</span>,
<div rel="offers" typeOf="Offer">
cost:<meta property="priceCurrency" content="GBP" />
£<span property="price">395</span>
</div>
</div>
<div rel="hasCourseInstance" typeOf="CourseInstance">
<meta property="courseMode" content="distance learning" />
<span property="courseMode">Posted</span>,
<div rel="offers" typeOf="Offer">
cost:<meta property="priceCurrency" content="GBP" />
£<span property="price">440</span>
</div>
</div>
</div>
</body>
JSON:
<!--TODO-->