Schema.org · Schema

Schema.org Course

A description of an educational course which may be offered as distinct instances which take place at different times or locations, or through different media.

Schema.orgStructured DataLinked DataJSON-LDVocabularySEOWeb StandardsRDFOntology

Properties

Name Type Description
@type string The Schema.org type.
@context string
name string The name of the course.
description string A description of the course.
url string URL of the course.
image object An image of the course.
provider object The service provider of the course.
courseCode string The identifier for the Course used by the course provider.
coursePrerequisites object Requirements for taking the course.
educationalLevel string The level in terms of progression through an educational or training context.
educationalCredentialAwarded string A description of the qualification or credential awarded upon completion.
numberOfCredits object The number of credits or units awarded by a Course.
hasCourseInstance object An offering of the course at a specific time and place.
about object The subject matter of the course.
inLanguage string The language of the course content.
teaches object The item being described is intended to help a person learn the competency or learning outcome.
totalHistoricalEnrollment integer The total number of students that have enrolled in the history of the course.
financialAidEligible string A financial aid type or program which students may use to pay for the course.
availableLanguage object A language someone may use with or at the item.
aggregateRating object The overall rating.
review object A review of the course.
offers object An offer to provide this course.
sameAs object URL of a reference Web page that unambiguously indicates the item's identity.
View JSON Schema on GitHub

JSON Schema

schema-org-course-schema.json Raw ↑
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://schema.org/schemas/course.json",
  "title": "Schema.org Course",
  "description": "A description of an educational course which may be offered as distinct instances which take place at different times or locations, or through different media.",
  "type": "object",
  "required": ["@type", "name"],
  "properties": {
    "@type": {
      "type": "string",
      "const": "Course",
      "description": "The Schema.org type."
    },
    "@context": {
      "type": "string",
      "default": "https://schema.org"
    },
    "name": {
      "type": "string",
      "description": "The name of the course."
    },
    "description": {
      "type": "string",
      "description": "A description of the course."
    },
    "url": {
      "type": "string",
      "format": "uri",
      "description": "URL of the course."
    },
    "image": {
      "oneOf": [
        { "type": "string", "format": "uri" },
        { "$ref": "schema-org-image-object-schema.json" }
      ],
      "description": "An image of the course."
    },
    "provider": {
      "oneOf": [
        { "$ref": "schema-org-person-schema.json" },
        { "$ref": "schema-org-organization-schema.json" }
      ],
      "description": "The service provider of the course."
    },
    "courseCode": {
      "type": "string",
      "description": "The identifier for the Course used by the course provider."
    },
    "coursePrerequisites": {
      "oneOf": [
        { "type": "string" },
        { "$ref": "#" },
        { "type": "array", "items": { "oneOf": [{ "type": "string" }, { "$ref": "#" }] } }
      ],
      "description": "Requirements for taking the course."
    },
    "educationalLevel": {
      "type": "string",
      "description": "The level in terms of progression through an educational or training context."
    },
    "educationalCredentialAwarded": {
      "type": "string",
      "description": "A description of the qualification or credential awarded upon completion."
    },
    "numberOfCredits": {
      "oneOf": [
        { "type": "integer" },
        { "type": "object", "properties": { "@type": { "const": "StructuredValue" }, "value": { "type": "integer" } } }
      ],
      "description": "The number of credits or units awarded by a Course."
    },
    "hasCourseInstance": {
      "oneOf": [
        { "$ref": "#/$defs/CourseInstance" },
        { "type": "array", "items": { "$ref": "#/$defs/CourseInstance" } }
      ],
      "description": "An offering of the course at a specific time and place."
    },
    "about": {
      "type": "object",
      "description": "The subject matter of the course.",
      "properties": {
        "@type": { "type": "string" },
        "name": { "type": "string" }
      }
    },
    "inLanguage": {
      "type": "string",
      "description": "The language of the course content."
    },
    "teaches": {
      "oneOf": [
        { "type": "string" },
        { "type": "array", "items": { "type": "string" } }
      ],
      "description": "The item being described is intended to help a person learn the competency or learning outcome."
    },
    "totalHistoricalEnrollment": {
      "type": "integer",
      "description": "The total number of students that have enrolled in the history of the course."
    },
    "financialAidEligible": {
      "type": "string",
      "description": "A financial aid type or program which students may use to pay for the course."
    },
    "availableLanguage": {
      "oneOf": [
        { "type": "string" },
        { "type": "array", "items": { "type": "string" } }
      ],
      "description": "A language someone may use with or at the item."
    },
    "aggregateRating": {
      "$ref": "schema-org-aggregate-rating-schema.json",
      "description": "The overall rating."
    },
    "review": {
      "oneOf": [
        { "$ref": "schema-org-review-schema.json" },
        { "type": "array", "items": { "$ref": "schema-org-review-schema.json" } }
      ],
      "description": "A review of the course."
    },
    "offers": {
      "oneOf": [
        { "$ref": "schema-org-offer-schema.json" },
        { "type": "array", "items": { "$ref": "schema-org-offer-schema.json" } }
      ],
      "description": "An offer to provide this course."
    },
    "sameAs": {
      "oneOf": [
        { "type": "string", "format": "uri" },
        { "type": "array", "items": { "type": "string", "format": "uri" } }
      ],
      "description": "URL of a reference Web page that unambiguously indicates the item's identity."
    }
  },
  "$defs": {
    "CourseInstance": {
      "type": "object",
      "description": "An instance of a Course offered at a specific time and place.",
      "properties": {
        "@type": { "type": "string", "const": "CourseInstance" },
        "name": { "type": "string", "description": "The name of the course instance." },
        "courseMode": { "type": "string", "description": "The medium or means of delivery of the course instance (e.g., online, onsite, blended)." },
        "courseWorkload": { "type": "string", "description": "The amount of work expected of students." },
        "instructor": { "$ref": "schema-org-person-schema.json", "description": "A person assigned to instruct or provide educational instruction." },
        "startDate": { "type": "string", "format": "date", "description": "The start date." },
        "endDate": { "type": "string", "format": "date", "description": "The end date." },
        "location": { "oneOf": [{ "type": "string" }, { "$ref": "schema-org-place-schema.json" }], "description": "The location of the course instance." },
        "courseSchedule": { "type": "object", "description": "Represents the schedule for the course.", "properties": { "@type": { "const": "Schedule" }, "repeatFrequency": { "type": "string" }, "repeatCount": { "type": "integer" } } }
      }
    }
  }
}