QualityLink Course Identifier Specification

Living Standard,

Issue Tracking:
GitHub
Inline In Spec
Editors:
Tiago Simões (European University Foundation; EUF)
Colin Tück (Knowledge Innovation Centre; KIC)
Project Website:
https://quality-link.eu/
Project Reference:
Task 3.3 (Development of a Technical Standard for Unique Course Identification)
Not Ready For Implementation

This spec is not yet ready for implementation. It exists in this repository to record the ideas and promote discussion.

Before attempting to implement this spec, please contact the editors.


Abstract

This specification standardises how individual courses can be consistently identified across different systems.

1. Introduction

1.1. Status of This Document

This document is a draft of this specification, drafted by KIC and EUF within the QualityLink project. It has been discussed with the QualityLink Standards Consultation Board.

1.2. Goals and Rationale

The unique course identifier should facilitate the identification and comparison of courses and allow for higher education courses to be tracked across multiple different systems and databases.

1.3. Audience

This specification is intended for use by higher education institutions and other data providers that would like their data to be available for aggregation.

Secondly, it targets data aggregators. The QualityLink project will implement a data aggregator to test and demonstrate this specification in practice.

1.4. Changes Since the Previous Draft

n/a

2. Key Concepts

The following key concepts and terminology are used throughout the document, as well as other QualityLink specifications:

learning opportunity

an opportunity to realise a given set of learning outcomes through a learning activity or assessment [ELM]. Offered by a higher education institution or other provider. A learning opportunity can be part of a larger one and contain smaller ones. Specific learning opportunities are courses, modules and programmes.

learning opportunity specification

the general specification of a learning opportunity, i.e. including the learning outcomes and credits. It is usually permanent and does not change from year to year or semester to semester.

learning opportunity instance

the specific offering of a learning opportunity in a specific academic term (e.g. year or semester) and specific setting (e.g. online vs face-to-face, different locations, ...). A single learning opportunity specification will usually be offered in many instances over time.

course

smallest learning opportunity that awards credits (i.e. ECTS) to the learner, either in the context of a study programme or as a self-standing offer. A course can be part of a module or programme.

module

a learning opportunity that is a group or collection of courses. A module may be part of a programme.

micro-credential

a proof of the learning outcomes that a learner has acquired following a short learning experience. These learning outcomes have been assessed against transparent standards. [CR-MC]

programme

collection of learning opportunities. Finalising a study programme usually leads to a degree (e.g. Bachelor degree, Master degree, etc.) or to another type of certificate, e.g. a micro-credential, for a shorter programme. A programme is a "top-level" learning opportunity and has no parent.

joint programme

an integrated curriculum coordinated and offered jointly by different higher education institutions, and leading to double/multiple degrees or a joint degree. [DEQAR]

education provider

any actor that provides degree programmes, micro-credentials or other learning opportunities. This may include higher education institutions as well as other providers, including employers, companies, social partners, NGOs, public authorities and others. [DEQAR]

higher education institution

an entity that has full degree awarding powers at higher education level (i.e. EQF levels 5 to 8; QF-EHEA cycle first to third) recognised by at least one national authority. [DEQAR]

other provider

an entity that provides learning opportunities, but that does not have officially-recognised authority to award degrees or other formally recognised qualifications.

data provider

an entity providing data on learning opportunities. This can be an education provider providing data on its own learning opportunities or another organisation providing data on various education providers.

aggregator

any service that harvests data from different data providers, matches and compiles the data into one single dataset. For example, the aggregator service developed within the QualityLink project.

3. User Stories

The following usage scenarios illustrate ways in which this specification might be used or desired features it should enable:

3.1. Issue course identifiers

As an education provider I want to publish and control authoritative identifiers for my courses.

3.2. Dereference course identifiers

As a user I want to dereference a course identifier to a standardised description of the course, incl. other identifiers assigned to the same course.

3.3. Retrieve historical data on courses

As a user I want to retrieve historical information (e.g. previous names and identifiers) or demographic information (e.g. course has been replaced by another course, course was discontinued, …).

4. Requirements

The requirements for a Unique Course Identifier are two-fold:

5. Identifying a provider

Identifying a higher education institution or other provider globally is challenging due to a lack of a single central authority issuing immutable identifiers for education providers.

Several identifiers and registries exist covering higher education institutions, such as ETER or OrgReg IDs used by [EHESO], DEQARINST identifiers used by [DEQAR], PIC and Erasmus Codes used in relation to [ECHE] and SCHAC codes used by EWP and eduGAIN. Other providers are, however, not fully covered by these facilities.

In order to ensure broad coverage of all types of ET providers, each education provider must be identified by their SCHAC code, i.e. schacHomeOrganization [SCHAC]. This is typically an entity’s domain name, therefore controlled by the entity and registered with ICANN.

In line with the discovery mechanism specified in [QL-DISCO], an institution can additionally be identified by an ETER/OrgReg ID [EHESO] or a DEQARINST ID [DEQAR].

need to address changes of SCHAC codes?

6. Identifying a course

The present specification aims to uniqely identify learning opportunity specifications, as this represents the more permanent set of attributes that should also commonly be used when comparing courses or programmes for the purpose of recognition or similar.

Note: information on learning opportunity instances can nevertheless also be exposed in a standardised format and aggregated, e.g. for the purpose of informing potential learners.

The present standard does not suggest any particular format for a course identifier, so long as it is unique within the internal systems of the education provider.

For an identifier to be unique, it is not sufficient that it occurs only once within a given database. It must also not be reused for a different course once it has been issued.

6.1. Defining a different course

Since certain information about a course specification may change over time, it is necessary to define when such changes have an impact so significant that an updated course specification should be considered to describe a fundamentally different course.

As long as a course retains the same learning outcomes and workload / ECTS credits, it should be considered the same course and retain its unique identifier.

Once a course’s learning outcomes change significantly (which is left at the discretion of the provider) or its ECTS credit count changes at all, it should be considered a different course, therefore listed separately from its previous version and assigned a new unique internal identifier.

Providers may use the property ql:version to signal other changes (i.e. such that do not lead to assigning a new unique identifier) in their data.

address mergers of institutions etc.

7. Format

7.1. Main: URN format

Unique Course Identifiers should be expressed in URN format [rfc8141], under the SCHAC namespace:

urn:schac:uniqueCourseId:domain.tld:ABCD1234

Where domain.tld is the SCHAC code of the education provider and ABCD1234 is the unique internal identifier of the course.

Note: proposal to be made to REFEDS for SCHAC URN Registry

7.2. Complementary approach: DID

Some providers may want to use Decentralized Identifiers (DIDs) [did-core] as an approach to identify learning opportunities.

For convenience, this specification recommends that education providers use the did:web method [did-extensions-methods] in this case and construct their DIDs as follows:

did:web:domain.tld:courseId:ABCD1234

Whereas domain.tld is the SCHAC code and ABCD1234 the unique internal identifier as above. This has the convenience that the URN and DID notations can easily be converted to each other.

Conformance

Conformance requirements are expressed with a combination of descriptive assertions and RFC 2119 terminology. The key words “MUST”, “MUST NOT”, “REQUIRED”, “SHALL”, “SHALL NOT”, “SHOULD”, “SHOULD NOT”, “RECOMMENDED”, “MAY”, and “OPTIONAL” in the normative parts of this document are to be interpreted as described in RFC 2119. However, for readability, these words do not appear in all uppercase letters in this specification.

All of the text of this specification is normative except sections explicitly marked as non-normative, examples, and notes. [RFC2119]

Examples in this specification are introduced with the words “for example” or are set apart from the normative text with class="example", like this:

This is an example of an informative example.

Informative notes begin with the word “Note” and are set apart from the normative text with class="note", like this:

Note, this is an informative note.

Index

Terms defined by this specification

References

Normative References

[DEQAR]
European Quality Assurance Register (EQAR). DEQAR Documentation. v1.2. URL: https://docs.deqar.eu/stable/
[DID-EXTENSIONS-METHODS]
Manu Sporny; Markus Sabadello. DID Methods. URL: https://w3c.github.io/did-extensions/methods/
[EHESO]
European Commission. European Higher Education Sector Observatory. Microdata on higher education institution. URL: https://national-policies.eacea.ec.europa.eu/eheso/micro-data-access
[RFC2119]
S. Bradner. Key words for use in RFCs to Indicate Requirement Levels. March 1997. Best Current Practice. URL: https://datatracker.ietf.org/doc/html/rfc2119
[RFC8141]
P. Saint-Andre; J. Klensin. Uniform Resource Names (URNs). April 2017. Proposed Standard. URL: https://www.rfc-editor.org/rfc/rfc8141
[SCHAC]
REFEDS. SCHema for ACademia. version 1.6.0. URL: https://wiki.refeds.org/display/STAN/SCHAC+Releases

Informative References

[CR-MC]
European Union. Council Recommendation on a European approach to micro-credentials for lifelong learning and employability. 16 June 2022. 2022/C 243/02. URL: https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX:32022H0627(02)
[DID-CORE]
Manu Sporny; et al. Decentralized Identifiers (DIDs) v1.0. URL: https://w3c.github.io/did/
[ECHE]
European Commission. Erasmus Charter for Higher Education. URL: https://erasmus-plus.ec.europa.eu/document/higher-education-institutions-holding-an-eche-2021-2027
[ELM]
European Commission. European Learning Model (ELM). v3. URL: https://europa.eu/europass/elm-browser/index.html
[QL-DISCO]
QualityLink Consortium. Data Source Discovery Specification. 2025. draft. URL: https://specs.quality-link.eu/discovery.html

Issues Index

need to address changes of SCHAC codes?
address mergers of institutions etc.