IMS Competencies and Academic Standards Exchange (CASE) Service Version 1.0: JSON-LD Binding

IMS Competencies and Academic Standards Exchange (CASE) Service Version 1.0: JSON-LD Binding

IMS Candidate Final Public
Version 1.0
IMS Candidate Final Public
Date Issued: May 19, 2021
Status: This document is for review and adoption by the IMS membership.
This version: https://www.imsglobal.org/spec/case/v1p0/
Latest version: https://www.imsglobal.org/spec/case/latest/
Errata: https://www.imsglobal.org/spec/case/v1p0/errata/

IPR and Distribution Notice

Recipients of this document are requested to submit, with their comments, notification of any relevant patent claims or other intellectual property rights of which they may be aware that might be infringed by any implementation of the specification set forth in this document, and to provide supporting documentation.

IMS takes no position regarding the validity or scope of any intellectual property or other rights that might be claimed to pertain to the implementation or use of the technology described in this document or the extent to which any license under such rights might or might not be available; neither does it represent that it has made any effort to identify any such rights. Information on IMS's procedures with respect to rights in IMS specifications can be found at the IMS Intellectual Property Rights web page: http://www.imsglobal.org/ipr/imsipr_policyFinal.pdf.

Use of this specification to develop products or services is governed by the license with IMS found on the IMS website: http://www.imsglobal.org/speclicense.html.

Permission is granted to all parties to use excerpts from this document as needed in producing requests for proposals.

The limited permissions granted above are perpetual and will not be revoked by IMS or its successors or assigns.

THIS SPECIFICATION IS BEING OFFERED WITHOUT ANY WARRANTY WHATSOEVER, AND IN PARTICULAR, ANY WARRANTY OF NONINFRINGEMENT IS EXPRESSLY DISCLAIMED. ANY USE OF THIS SPECIFICATION SHALL BE MADE ENTIRELY AT THE IMPLEMENTER'S OWN RISK, AND NEITHER THE CONSORTIUM, NOR ANY OF ITS MEMBERS OR SUBMITTERS, SHALL HAVE ANY LIABILITY WHATSOEVER TO ANY IMPLEMENTER OR THIRD PARTY FOR ANY DAMAGES OF ANY NATURE WHATSOEVER, DIRECTLY OR INDIRECTLY, ARISING FROM THE USE OF THIS SPECIFICATION.

Public contributions, comments and questions can be posted here: http://www.imsglobal.org/forums/ims-glc-public-forums-and-resources.

© 2021 IMS Global Learning Consortium, Inc. All Rights Reserved.

Trademark information: http://www.imsglobal.org/copyright.html

Abstract

The Competencies and Academic Standards Exchange (CASE) Service specification is the definition of how systems achieve the exchange of information about learning standards and/or competencies. The key aim is to replace the current ways of documenting a learning standard and competency, typically a PDF or HTML document, by one which is machine readable both syntactically and semantically. Further, using this new specification it will be possible to electronically exchange these definitions so that applications, systems and tools can readily access this data.

1. Introduction

The Competencies and Academic Standards Exchange (CASE) specification defines how systems exchange and manage information about learning standards and/or competencies in a consistent and referenceable way. The key aim is to replace the current ways of documenting and referencing learning standards and competencies, which are typically published as a PDF or HTML document intended to be read by humans, by one which is also machine readable both syntactically and semantically. This allows for "Common Alignments" for content and referenceable unique identifiers for use in certificates and transcripts. Further, using this new specification it will be possible to electronically exchange these definitions so that applications, systems and tools can readily access and manage this data. This includes LMSs, Assessment tools, Curriculum Management applications, certificate and competency based evaluation systems and any other tool, process or content that would need to align to or reference a competency or framework.

This document describes the JSON-LD document formats for CASE 1.0.

1.1 Conformance Statements

As well as sections marked as non-normative, all authoring guidelines, diagrams, examples, and notes in this specification are non-normative. Everything else in this specification is normative.

The key words "MAY", "MUST", "MUST NOT", "OPTIONAL", "RECOMMENDED", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", and "SHOULD NOT" in this document are to be interpreted as described in [RFC2119].

An implementation of this specification that fails to implement a MUST/REQUIRED/SHALL requirement or fails to abide by a MUST NOT/SHALL NOT prohibition is considered nonconformant. SHOULD/SHOULD NOT/RECOMMENDED statements constitute a best practice. Ignoring a best practice does not violate conformance but a decision to disregard such guidance should be carefully considered. MAY/OPTIONAL statements indicate that implementers are entirely free to choose whether or not to implement the option.

The Conformance and Certification Guide for this specification may introduce greater normative constraints than those defined here for specific service or implementation categories.

1.2 Document Set

The documents that make up this specification are:

2. JSON-LD Binding

Service Providers that support the CASE JSON-LD Binding provide [JSON-LD] documents for each of the data model classes listed here:

2.1 Context

This binding uses the @context property to map short-form aliases to the URIs required by CASE documents. The @context property is REQUIRED. The @context property MAY be a string (URL) or array of strings (URLs). The value if it is a single string, or the first value if it is an array of strings, MUST be the URL https://purl.imsglobal.org/spec/case/v1p0/context/imscasev1p0_context_v1p0.jsonld. This URL resolves to the @context described in IMS Competencies and Academic Standards Exchange (CASE) Service Version 1.0: JSON-LD Context.

2.2 @id

The CASE JSON-LD Context file maps the alias uri to the JSON-LD @id property.

The uri property is REQUIRED for all of the documents described below. The uri MUST be a URL and, when dereferenced, results in a document containing machine readable information about the uri (@id).

When uri is used as the @id, it must be a canonical URL that MUST NOT change when the CASE standard if revised (i.e. v1p1 or v2p0). It SHOULD NOT change if the host server changes (e.g. if the framework is mirrored on another server). The URL MUST return the CASE resource as valid JSON-LD (as defined by this binding document) when the Accept header indicates "application/ld+json" is wanted. The URL MAY return other content and other content-type when the Accept header does not indicate "application/ld+json" is wanted.

2.3 @type

The CASE JSON-LD Context file maps the alias type to the JSON-LD @type property. The type property is REQUIRED for all of the classes covered by this binding except AssociationLink. The property MAY be a single string (IRI) or an array of strings (IRIs). The value if it is a string, or first value if it is an array of strings, MUST be the name of the class as defined in the specification [CASE-10].

2.4 Associations

Associations between CFDocuments and between CFItems MAY be included in the CFDocument and CFItem. The set of associations is represented by the associationSet property which is a set of AssociationLink class, not by the CFAssociation class defined in [CASE-INFO-10].

Because the associations between two CFItems may be included in both CFItems, this binding extends the allowable values of CFAssociationTypeEnum to include reciprical relationships.

2.4.1 associationSet Property

CFDocument and CFItem have a new property associationSet which is an array of AssociationLink objects.

2.4.3 CFAssociationTypeEnum

Value Description
exactMatchOf Equivalent to. Used to connect derived CFItem to CFItem in original source CFDocument.
exemplar The target of the association is an example of best practice for the definition of the item.
hasPart The target of the association is included either physically or logically in the item.
hasPredecessor The target of the association comes before the item.
hasSkillLevel The target of the association is understood to define a given skill level i.e. Reading Lexile 100, Depth Knowledge 2, or Cognitive Level (Blooms Taxonomy).
isChildOf To represent the structural relationship in a taxonomy between parent and child. The item is a child of the target of the association.
isParentOf To represent the structural relationship in a taxonomy between parent and child. The item is a parent of the target of the association.
isPartOf The item is included either physically or logically in the target of the association.
isPeerOf The item is a peer of the target of the association.
isRelatedTo The item is related to the target of the association in some way that is not better described by another association type.
precedes The item comes before the target of the association in time or order.
replacedBy The item has been supplanted by, displaced by, or superseded by the target of the association.
replaces The item supplants, displaces, or supersedes the target of the association.
skillLevelFor The item is understood to define a given skill level i.e. Reading Lexile 100, Depth Knowledge 2, or Cognitive Level (Blooms Taxonomy) for the target of the association.

2.5 CFPackage

The base CFPackage class does not have a uri property to act as the JSON-LD @id. Therefore this binding adds a new uri property to CFPackage with all the same attributes described in @id.

3. Extending the Binding

Proprietary data elements of the 8 data classes covered by this binding are permitted. They are not permitted to any other data classes described in IMS Competencies and Academic Standards Exchange (CASE) Service Version 1.0.

A. Sample JSON-LD

The [JSON-Schema] of each document below is defined in IMS Competencies and Academic Standards Exchange (CASE) Service Version 1.0: JSON Schema. Sample documents are shown below.

A.1 CFAssociationGrouping

A.2 CFConcept

A.3 CFDocument

A.4 CFItem

A.5 CFItemType

A.6 CFLicense

A.7 CFPackage

A.8 CFRubric

A.9 CFSubject

B. Revision History

B.1 Version History

Version No. Release Date Comments
IMS Candidate Final Release 1.0 May 19, 2021 Based on member feedback the following changes were made:
  • @context and type can be a single string or an array of strings.
  • Allow additional properties in the JSON-LD documents.
  • Use the existing uri property as the @id where available (i.e. all but CFPackage)
  • Removed section on Internal Links since LinkURI no longer needs a targetId property.
  • Renamed the targetId property of AssociationLink to uri.
  • Relaxed constraint on AssociationLink uri property so that the JSON-LD representation of a CFItem can be associated with an external CFItem on a provider that does not support JSON-LD.
  • Extended the allowable values for CFAssociationTypeEnum to include reciprical values.
  • Add CFSubject sample.
IMS Candidate Final Release 1.0 August 28, 2020 Based on member and invited expert feedback the following changes were made:
  • Removed AssociationSet class and rewrote the Associations section.
  • Defined targetId and uri as @id properties in the @context file [CASE-CONTEXT-10]
    "targetId": {
        "@id": "case:targetId",
        "@type": "@id"
      },
    "uri": {
        "@id": "case:uri",
        "@type": "@id"
    }
  • Added optional type property to all JSON Schema definitions
  • Updated all the examples to include type
IMS Candidate Final Release 1.0 June 18, 2020 First release of the JSON-LD Binding for CASE Version 1.0.

B.2 Changes in the Release

The changes made in this document are:

  • First release of the JSON-LD Binding for CASE Version 1.0.

C. References

C.1 Normative references

[CASE-10]
IMS Competencies and Academic Standards Exchange (CASE) Service Version 1.0. IMS Global Learning Consortium. July 7, 2017. IMS Final Release. URL: https://www.imsglobal.org/spec/case/v1p0/
[CASE-CERT-10]
IMS Competencies and Academic Standards Exchange (CASE) Service Version 1.0: Conformance and Certification. IMS Global Learning Consortium. July 7, 2017. IMS Final Release. URL: https://www.imsglobal.org/spec/case/v1p0/cert/
[CASE-CONTEXT-10]
IMS Competencies and Academic Standards Exchange (CASE) Service Version 1.0: JSON-LD Context. IMS Global Learning Consortium. June 18, 2020. IMS Candidate Final. URL: https://purl.imsglobal.org/spec/case/v1p0/context/
[CASE-IMPL-10]
IMS Competencies and Academic Standards Exchange (CASE) Service Version 1.0: Best Practices and Implementation Guide. IMS Global Learning Consortium. July 7, 2017. IMS Final Release. URL: https://www.imsglobal.org/spec/case/v1p0/impl/
[CASE-INFO-10]
IMS Competencies and Academic Standards Exchange (CASE) Service Version 1.0: Information Model. IMS Global Learning Consortium. July 7, 2017. IMS Final Release. URL: https://www.imsglobal.org/spec/case/v1p0/caseservicev1p0_infomodelv1p0.html
[CASE-JSON-10]
IMS Competencies and Academic Standards Exchange (CASE) Service Version 1.0: JSON Schema. IMS Global Learning Consortium. June 18, 2020. IMS Candidate Final. URL: https://purl.imsglobal.org/spec/case/v1p0/schema/json/
[CASE-JSONLD-10]
IMS Competencies and Academic Standards Exchange (CASE) Service Version 1.0: JSON-LD Binding. IMS Global Learning Consortium. June 18, 2020. IMS Candidate Final. URL: https://www.imsglobal.org/spec/case/v1p0/jsonld/
[CASE-OPEN-10]
IMS Competencies and Academic Standards Exchange (CASE) Service Version 1.0: OpenAPI Schema. IMS Global Learning Consortium. July 7, 2017. IMS Final Release. URL: https://purl.imsglobal.org/spec/case/v1p0/schema/openapi/
[CASE-REST-10]
IMS Competencies and Academic Standards Exchange (CASE) Service Version 1.0: REST/JSON Binding. IMS Global Learning Consortium. July 7, 2017. IMS Final Release. URL: https://www.imsglobal.org/spec/case/v1p0/caseservicev1p0_restbindv1p0.html
[JSON-LD]
JSON-LD 1.0. Manu Sporny; Gregg Kellogg; Markus Lanthaler. W3C. 3 November 2020. W3C Recommendation. URL: https://www.w3.org/TR/json-ld/
[JSON-Schema]
JSON Schema: core definitions and terminology. K. Zyp. Internet Engineering Task Force (IETF). 31 January 2013. Internet-Draft. URL: https://datatracker.ietf.org/doc/html/draft-zyp-json-schema
[RFC2119]
Key words for use in RFCs to Indicate Requirement Levels. S. Bradner. IETF. March 1997. Best Current Practice. URL: https://datatracker.ietf.org/doc/html/rfc2119

D. List of Contributors

The following individuals contributed to the development of this document:

Name Organization
Raymond BaranoskiSAFARI Montage (USA)
Diana BidulescuHouston ISD (USA)
Adam BlumOpenEd (USA)
Jared BoothHMH (USA)
Clyde BoyerTrinity Education Group (USA)
Barry BrahierInfinite Campus (USA)
Christine CaseTrinity Education Group (USA)
Joseph ChapmanD2L (Canada)
Chris ChungIMS Global (USA)
Deb EverhartLearning Objects (USA)
David GappaSAFARI Montage (USA)
Jeremy GatzaFlorida Virtual School (USA)
Jeff GrannCapella University (USA)
Bob GroganeLumen (USA)
Jeroen HamersKennisnet (Netherlands)
Joel HernandezeLumen (USA)
Jill HobsonIMS Global (USA)
Chris HoustonCapella University (USA)
Jamey HyndsKaty ISD (USA)
Brian KubotaPearson (USA)
Andy KuritizkyHMH (USA)
Mark LeubaIMS Global (USA)
Karl LloydInstructure (USA)
Joshua MarksPCG (USA)
Lisa MattsonIMS Global (USA)
David MayesGwinnett County Schools (USA)
Greg NadeauPCG (USA)
Henk NijstadKennisnet (Netherlands)
Hugh NorwoodTrinity Education Group (USA)
Robert PangbornIBM (USA)
Steve PolyakACT (USA)
Brandt ReddSmarter Balance (USA)
Jennifer ReichlinPearson (USA)
William SantoD2L (Canada)
Bob SchlossIBM (USA)
McCall SmithInstructure (USA)
Colin SmythIMS Global (USA)
Davant StewartHouston ISD (USA)
Stewart SuttonDublin Core (USA)
Marcia van OploKennisnet (Netherlands)
Michele WagnerBaltimore County Public Schools (USA)
David WardPCG (USA)
Jennifer WhitingFlorida Virtual School (USA)
Avi YashchinIBM (USA)
Stuart SuttonCredential Engine