Note: You are viewing the development version of Schema.org. See how we work for more details.

CourseInstance

A Schema.org Type
An instance of a Course which is distinct from other instances because it is offered at a different time or location or through different media or modes of study or to a specific section of students.
PropertyExpected TypeDescription
Properties from CourseInstance
courseMode Text  or
URL
The medium or means of delivery of the course instance or the mode of study, either as a text label (e.g. "online", "onsite" or "blended"; "synchronous" or "asynchronous"; "full-time" or "part-time") or as a URL reference to a term from a controlled vocabulary (e.g. https://ceds.ed.gov/element/001311#Asynchronous).
courseSchedule Schedule Represents the length and pace of a course, expressed as a Schedule.
courseWorkload Text The amount of work expected of students taking the course, often provided as a figure per week or per month, and may be broken down by type. For example, "2 hours of lectures, 1 hour of lab work and 3 hours of independent study per week".
instructor Person A person assigned to instruct or provide instructional assistance for the CourseInstance.
Properties from Event
about Thing The subject matter of the content.
Inverse property: subjectOf
actor Person An actor, e.g. in TV, radio, movie, video games etc., or in an event. Actors can be associated with individual items or with a series, episode, clip. Supersedes actors.
aggregateRating AggregateRating The overall rating, based on a collection of reviews or ratings, of the item.
attendee Organization  or
Person
A person or organization attending the event. Supersedes attendees.
audience Audience An intended audience, i.e. a group for whom something was created. Supersedes serviceAudience.
composer Organization  or
Person
The person or organization who wrote a composition, or who is the composer of a work performed at some event.
contributor Organization  or
Person
A secondary contributor to the CreativeWork or Event.
director Person A director of e.g. TV, radio, movie, video gaming etc. content, or of an event. Directors can be associated with individual items or with a series, episode, clip. Supersedes directors.
doorTime DateTime  or
Time
The time admission will commence.
duration Duration The duration of the item (movie, audio recording, event, etc.) in ISO 8601 duration format.
endDate Date  or
DateTime
The end date and time of the item (in ISO 8601 date format).
eventAttendanceMode EventAttendanceModeEnumeration The eventAttendanceMode of an event indicates whether it occurs online, offline, or a mix.
eventSchedule Schedule Associates an Event with a Schedule. There are circumstances where it is preferable to share a schedule for a series of repeating events rather than data on the individual events themselves. For example, a website or application might prefer to publish a schedule for a weekly gym class rather than provide data on every event. A schedule could be processed by applications to add forthcoming events to a calendar. An Event that is associated with a Schedule using this property should not have startDate or endDate properties. These are instead defined within the associated Schedule, this avoids any ambiguity for clients using the data. The property might have repeated values to specify different schedules, e.g. for different months or seasons.
eventStatus EventStatusType An eventStatus of an event represents its status; particularly useful when an event is cancelled or rescheduled.
funder Organization  or
Person
A person or organization that supports (sponsors) something through some kind of financial contribution.
funding Grant A Grant that directly or indirectly provide funding or sponsorship for this item. See also ownershipFundingInfo.
Inverse property: fundedItem
inLanguage Language  or
Text
The language of the content or performance or used in an action. Please use one of the language codes from the IETF BCP 47 standard. See also availableLanguage. Supersedes language.
isAccessibleForFree Boolean A flag to signal that the item, event, or place is accessible for free. Supersedes free.
keywords DefinedTerm  or
Text  or
URL
Keywords or tags used to describe some item. Multiple textual entries in a keywords list are typically delimited by commas, or by repeating the property.
location Place  or
PostalAddress  or
Text  or
VirtualLocation
The location of, for example, where an event is happening, where an organization is located, or where an action takes place.
maximumAttendeeCapacity Integer The total number of individuals that may attend an event or venue.
maximumPhysicalAttendeeCapacity Integer The maximum physical attendee capacity of an Event whose eventAttendanceMode is OfflineEventAttendanceMode (or the offline aspects, in the case of a MixedEventAttendanceMode).
maximumVirtualAttendeeCapacity Integer The maximum virtual attendee capacity of an Event whose eventAttendanceMode is OnlineEventAttendanceMode (or the online aspects, in the case of a MixedEventAttendanceMode).
offers Demand  or
Offer
An offer to provide this item—for example, an offer to sell a product, rent the DVD of a movie, perform a service, or give away tickets to an event. Use businessFunction to indicate the kind of transaction offered, i.e. sell, lease, etc. This property can also be used to describe a Demand. While this property is listed as expected on a number of common types, it can be used in others. In that case, using a second type, such as Product or a subtype of Product, can clarify the nature of the offer.
Inverse property: itemOffered
organizer Organization  or
Person
An organizer of an Event.
performer Organization  or
Person
A performer at the event—for example, a presenter, musician, musical group or actor. Supersedes performers.
previousStartDate Date Used in conjunction with eventStatus for rescheduled or cancelled events. This property contains the previously scheduled start date. For rescheduled events, the startDate property should be used for the newly scheduled start date. In the (rare) case of an event that has been postponed and rescheduled multiple times, this field may be repeated.
recordedIn CreativeWork The CreativeWork that captured all or part of this Event.
Inverse property: recordedAt
remainingAttendeeCapacity Integer The number of attendee places for an event that remain unallocated.
review Review A review of the item. Supersedes reviews.
sponsor Organization  or
Person
A person or organization that supports a thing through a pledge, promise, or financial contribution. E.g. a sponsor of a Medical Study or a corporate sponsor of an event.
startDate Date  or
DateTime
The start date and time of the item (in ISO 8601 date format).
subEvent Event An Event that is part of this event. For example, a conference event includes many presentations, each of which is a subEvent of the conference. Supersedes subEvents.
Inverse property: superEvent
superEvent Event An event that this event is a part of. For example, a collection of individual music performances might each have a music festival as their superEvent.
Inverse property: subEvent
translator Organization  or
Person
Organization or person who adapts a creative work to different languages, regional differences and technical requirements of a target market, or that translates during some event.
typicalAgeRange Text The typical expected age range, e.g. '7-9', '11-'.
workFeatured CreativeWork A work featured in some event, e.g. exhibited in an ExhibitionEvent. Specific subproperties are available for workPerformed (e.g. a play), or a workPresented (a Movie at a ScreeningEvent).
workPerformed CreativeWork A work performed in some event, for example a play performed in a TheaterEvent.
Properties from Thing
additionalType Text  or
URL
An additional type for the item, typically used for adding more specific types from external vocabularies in microdata syntax. This is a relationship between something and a class that the thing is in. Typically the value is a URI-identified RDF class, and in this case corresponds to the use of rdf:type in RDF. Text values can be used sparingly, for cases where useful information can be added without their being an appropriate schema to reference. In the case of text values, the class label should follow the schema.org style guide.
alternateName Text An alias for the item.
description Text  or
TextObject
A description of the item.
disambiguatingDescription Text A sub property of description. A short description of the item used to disambiguate from other, similar items. Information from other properties (in particular, name) may be necessary for the description to be useful for disambiguation.
identifier PropertyValue  or
Text  or
URL
The identifier property represents any kind of identifier for any kind of Thing, such as ISBNs, GTIN codes, UUIDs etc. Schema.org provides dedicated properties for representing many of these, either as textual strings or as URL (URI) links. See background notes for more details.
image ImageObject  or
URL
An image of the item. This can be a URL or a fully described ImageObject.
mainEntityOfPage CreativeWork  or
URL
Indicates a page (or other CreativeWork) for which this thing is the main entity being described. See background notes for details.
Inverse property: mainEntity
name Text The name of the item.
potentialAction Action Indicates a potential Action, which describes an idealized action in which this thing would play an 'object' role.
sameAs URL URL of a reference Web page that unambiguously indicates the item's identity. E.g. the URL of the item's Wikipedia page, Wikidata entry, or official website.
subjectOf CreativeWork  or
Event
A CreativeWork or Event about this Thing.
Inverse property: about
url URL URL of the item.

Instances of CourseInstance may appear as a value for the following properties
PropertyOn TypesDescription
hasCourseInstance Course 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
Copied
Example notes or example HTML without markup.
<body vocab="https://schema.org/">
<!-- A MOOC / free online course. As a simple one-off course -->
<!-- Based on https://www.coursera.org/course/datascitoolbox -->

<main>
  <h1>The Data Scientist's Toolbox</h1>
  <h2>About this Course</h2>
  <p>In this course you will get an introduction to the main tools and ideas in the
       data scientist's toolbox...</p>
  <div>
    <h2>Session dates</h2>
    <span>February 15</span> -
    <span>March 21</span>
  </div>
</main>
</body>
Example encoded as RDFa embedded in HTML.
<body vocab="https://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" content="2019-02-15">February 15</span> -
    <span property="endDate" content="2019-03-21">March 21</span>
  </div>
</main>
</body>
Example encoded as JSON-LD in a HTML script tag.
<script type="application/ld+json">
{
  "@context": "https://schema.org/",
  "@type": "Course",
  "description": "In this course you will get an introduction to the main tools and ideas in the data scientist's toolbox...",
  "hasCourseInstance": {
    "@type": "CourseInstance",
    "courseMode": ["MOOC","online"],
    "endDate": "2019-03-21",
    "startDate": "2019-02-15"
  }
}
</script>
Structured representation of the JSON-LD example.
Example 2
Copied
Example notes or example HTML without markup.
<body vocab="https://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>HNC Accounting</h2>
    <p>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>
          <td>Full-time</td>
          <td>29 Aug 2016</td>
          <td>23 Jun 2017</td>
          <td>St Brycedale Campus Kirkcaldy</td>
        </tr>
        <tr>
          <td>Full-time</td>
          <td>29 Aug 2016</td>
          <td>23 Jun 2017</td>
          <td>Halbeath Campus Dunfermline</td>
        </tr>
        <tr>
          <td>Evenings only and weekends</td>
          <td>31 Aug 2016</td>
          <td>21 Jun 2017</td>
          <td>St Brycedale Campus Kirkcaldy</td>
        </tr>
      </tbody>
    </table>
</body>
Example encoded as RDFa embedded in HTML.
<body vocab="https://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" content="2016-08-29" datatype="schema:date">29 Aug 2016</td>
          <td property="endDate" content="2017-06-23" datatype="schema:date">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" content="2016-08-29" datatype="schema:date">29 Aug 2016</td>
          <td property="endDate" content="2017-06-23" datatype="schema:date">23 Jun 2017</td>
          <td  property="location">Halbeath Campus Dunfermline</td>
        </tr>
        <tr rel="hasCourseInstance" typeof="CourseInstance">
          <td><meta property="courseMode" content="part-time">
              Evenings only and weekends</td>
          <td property="startDate" content="2016-08-31" datatype="schema:date">31 Aug 2016</td>
          <td property="endDate" content="2017-06-21" datatype="schema:date">21 Jun 2017</td>
          <td  property="location">St Brycedale Campus Kirkcaldy</td>
        </tr>
      </tbody>
    </table>
</body>
Example encoded as JSON-LD in a HTML script tag.
<script type="application/ld+json">
{
  "@context": "https://schema.org/",
  "@id": "./",
  "@type": "Course",
  "name": "HNC Accounting",
  "description": "This course is designed for those wishing to take up \r\n       a career in Accounting and Financial Administration within a range of \r\n       organisations....",
  "hasCourseInstance": [
    {
      "@type": "CourseInstance",
      "courseMode": "part-time",
      "endDate": "2017-06-21",
      "location": "St Brycedale Campus Kirkcaldy",
      "startDate": "2016-08-31"
    },
    {
      "@type": "CourseInstance",
      "courseMode": "full-time",
      "endDate": "2017-06-23",
      "location": "Halbeath Campus Dunfermline",
      "startDate": "2016-08-29"
    },
    {
      "courseMode": "full-time",
      "endDate": "2017-06-23",
      "location": "St Brycedale Campus Kirkcaldy",
      "startDate": "2016-08-29"
    }
  ]
}
</script>
Structured representation of the JSON-LD example.
Example 3
Copied
Example notes or example HTML without markup.
<body>
<!--A self-paced distance learning course (no events)-->
<!--Based on http://www.train4publishing.co.uk/courses/distance-learning/basic-proofreading -->
<div>
  <h1>Basic Proofreading</h1>
  <p>The distance learning training course that takes you
        from complete beginner to PQB qualified proofreader in one step.</p>
  <div>
    Online, cost: £395
  </div>
  <div>
    Posted, cost:£440
  </div>
</div>
</body>
Example encoded as RDFa embedded in HTML.
<body vocab="https://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>
Example encoded as JSON-LD in a HTML script tag.
<script type="application/ld+json">
{
  "@context": "https://schema.org/",
  "@type": "Course",
  "name": "Basic Proofreading",
  "description": "The distance learning training course that takes you \r\n        from complete beginner to PQB qualified proofreader in one step.",
  "hasCourseInstance": [
    {
      "@type": "CourseInstance",
      "courseMode": [
        "distance learning",
        "Online"
      ],
      "offers": {
        "@type": "Offer",
        "price": "395",
        "priceCurrency": "GBP"
      }
    },
    {
      "@type": "CourseInstance",
      "courseMode": [
        "Posted",
        "distance learning"
      ],
      "offers": {
        "@type": "Offer",
        "price": "440",
        "priceCurrency": "GBP"
      }
    }
  ]
}
</script>
Structured representation of the JSON-LD example.