Caliper Analytics 1.2 Conformance and Certification Guide

Caliper Conformance and Certification Guide

IMS Final Release
Version 1.2
IMS Final Release
Date Issued: 27 March 2020
Status: This document is made available for adoption by the public community at large.
This version: https://www.imsglobal.org/spec/caliper/v1p2/cert/
Latest version: https://www.imsglobal.org/spec/caliper/latest/cert/

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.

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

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

1. Introduction

Session Profile

The Caliper Analytics® Specification, version 1.2, provides a structured approach to describing, collecting, and exchanging learning activity data at scale. Establishing a common vocabulary for describing learning interactions is a central objective. Promoting data interoperability, data sharing, and data-informed decision making are also important goals.

Caliper also defines an application programming interface (the Sensor API™), commonly referred to as Sensors, for marshalling and transmitting event data from instrumented applications to target endpoints for storage, analysis and use. Industry-wide adoption of Caliper offers the tantalizing prospect of a more unified learning data environment in which to build new and innovative services designed to measure, infer, predict, report and visualize.

This document is the certification guide for Caliper Sensors. In this release of the Caliper specification, certification services are not provided for Caliper endpoints. Endpoint implementors should take note that it is the intent of the Caliper Working Group to add endpoint certification in forthcoming releases of the specification. Implementors should also note that behavioral requirements for Caliper Endpoints are provided in the Caliper Analytics® Specification, version 1.2, Section 6.0.

1.1 Status of this Document

This document is considered the Final Release. This means that the Caliper Analytics® Sensor Certification Guide, version 1.2, is now made available as a public document following acceptance by IMS Global member organizations, a number of whom have successfully achieved conformance certification at the time of the release of this document.

IMS Global strongly encourages its members and the greater public to provide feedback that focuses on improving the Caliper specification. To join the IMS developer and conformance certification community focused on Caliper please visit https://www.imsglobal.org/activity/caliper.

Public comments and questions can be posted at the Caliper Analytics® public forum.

1.2 Conventions

The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this document are to be interpreted as described in [RFC2119]. A Sensor implementation 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 by implementers. MAY/OPTIONAL statements indicate that implementers are entirely free to choose whether or not to implement the option.

2. The Conformance Process

2.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.

2.2 Certification Prerequisites

The following prerequisites MUST be met before your organization can begin the process of getting your product Caliper Analytics® certified.

  • Your organization MUST be an IMS Contributing or Affiliate Member.
  • You MUST pass the tests using the Caliper Certification Service.
  • The tests MUST be completed by a designated representative of the member organization and you MUST agree that there is no misrepresentation or manipulation of the results in the submitted report.
  • You MUST submit your report via the Caliper Certification Service.

2.3 Conformance Testing Process

Visit the Caliper Certification service at https://www.imsglobal.org/sso/launch.php/caliper. You MUST be logged in to the IMS Global website to access the Caliper certification service. If you do not have an account, please register at https://www.imsglobal.org/user/register.

The certification service provides a playground for testing your Caliper messages. Click the "Caliper Playground" link under Test Your Product to access the playground.

Once you are ready to commence certification testing, click the "Certify Your Product" link under Certify Your Product to commence testing. The following steps will guide you through the process. A screencast of the certification workflow is available for review.

  1. Complete the online form by providing the following information:

    • Product name
    • Product version
    • Product URL
    • Product description
    • Caliper specification version
    • Member organization
    • Representative name
    • Representative email address
    • Information for who should be contacted about certification expiration
  2. Click the green "Start Certification" button. To terminate testing click the white "Cancel" button.

  3. An "Instructions" page provides both a test endpoint URL and a bearer token. Configure your software to send Caliper messages to the test endpoint URL. For each request, set the HTTP Authorization header field value to the provided bearer token, for example: Authorization: Bearer 16b33d7e-32ae-4c12-ba10-1a1f08a0d5d7 and the HTTP Host header field value to the provided endpoint URL.

  4. Initiate the product test, sending messages to the certification service endpoint.

  5. When the first message is received by the Certification service the "Instructions" page will be replaced with a view displaying conformance progress. A list of available Caliper metric profiles is displayed on the left side of the page. A log of submitted messages or "items" is displayed on the right side of the page. As messages are processed metric profile certifications that have been attained will be indicated by check marks. Clicking a profile's plus (+) link will display a list of profile events and actions processed successfully. Clicking the log "items" link provides additional information regarding events processed, errors encountered and individual message JSON-LD documents received.

  6. Once testing is complete click the "Complete Certification" button.

  7. Read the confirmation statement and then click the "Submit Certification Results" button.

  8. Repeat the test as necessary in order to certify against additional metric profiles or address previous failed tests.

2.3.1 Certification Mark

After submitting your successful conformance information and receiving confirmation and a registration number from IMS Global via email you may then apply the appropriate conformance mark. The IMS Global conformance chart will list your conformance details. If you have any questions, please feel free to contact us at any point. Products without an IMS conformance registration number are not considered compliant by IMS Global.

2.3.2 Certification Expiration and Renewal

Caliper certification covers individual metric profiles only and is scoped to the specific version of the Caliper specification tested. Major or minor releases of the Caliper specification and/or associated metric profiles will require recertification of your upgraded platform, application or service. All IMS Certifications require that you renew and retest your certification after one year.

3. Metric Profile Certification

As described more fully in the Caliper Analytics® Specification, version 1.2 section 3, the Caliper information model defines a number of metric profiles, each of which models a learning activity or a supporting activity that helps facilitate learning. Each profile provides a domain-specific set of terms for describing common user interactions.

Each Caliper profile is also a unit of certification for Caliper Sensor implementations. Any given Sensor may apply for certification for one or more of the Caliper Metric Profiles. In the subsections below, the Minimum Conformance and Restrictions sections specified for each Profile defines the corresponding conformance criteria in detail.

3.1 General Requirements

  • Certain Event properties are required and MUST be specified. Required properties include: id, type, actor, action, object and eventTime.
  • All other Event properties are considered optional and need not be referenced. Adherence to the rules associated with each required and/or optional property specified is mandatory.
  • Each Entity participating in the Event MUST be expressed either as an object or as a string corresponding to the resource's IRI.
  • The actions vocabulary is limited to the supported actions described in the Caliper Analytics® Specification, version 1.2, Actions Appendix, and no other.
  • Serialized Events and Entities MUST conform to the syntactical requirements defined in the Caliper specification, and be contained within a Caliper Envelope using proper JSON-LD context and serialization

3.2 General Profile

General Profile

The Caliper General Profile provides a generic Event for describing learning or supporting activities that have yet to be modeled by Caliper.

3.2.1 Profile Description

See Caliper Analytics® Specification, version 1.2, Section 3.10.

3.2.2 Event Conformance Table

Event Action Actor Object Recommended Generated Entity Required or Optional
Event
* Agent Entity Required

3.3 Annotation Profile

Annotation Profile

The Caliper Annotation Profile models activities related to the annotation of a DigitalResource.

3.3.1 Profile Description

See Caliper Analytics® Specification, version 1.2, Section 3.1.

3.3.2 Event Conformance Table

Event Action Actor Object Recommended Generated Entity Required or Optional
AnnotationEvent
Bookmarked Person DigitalResource BookmarkAnnotation Required
Highlighted Person DigitalResource HighlightAnnotation Optional
Shared Person DigitalResource SharedAnnotation Optional
Tagged Person DigitalResource TagAnnotation Optional

3.4 Assessment Profile

Assessment Profile

The Caliper Assessment Profile models assessment-related activities including interactions with individual assessment items.

3.4.1 Profile Description

See Caliper Analytics® Specification, version 1.2, Section 3.2.

3.4.2 Event Conformance Table

Event Action Actor Object Recommended Generated Entity Required or Optional
AssessmentEvent
Paused Person Assessment Attempt Optional
Reset Person Assessment Attempt Optional
Restarted Person Assessment Attempt Optional
Resumed Person Assessment Attempt Optional
Started Person Assessment Attempt Optional
Submitted Person Assessment Attempt Required
AssessmentItemEvent
Completed Person AssessmentItem Response Optional
Skipped Person AssessmentItem Optional
Started Person AssessmentItem Attempt Optional
NavigationEvent
NavigatedTo Person DigitalResource Optional
ViewEvent
Viewed Person DigitalResource Optional

3.5 Assignable Profile

Assignable Profile

The Assignable Profile models activities associated with the assignment of digital content to a learner for completion according to specific criteria.

3.5.1 Profile Description

See Caliper Analytics® Specification, version 1.2, Section 3.3.

3.5.2 Event Conformance Table

Event Action Actor Object Recommended Generated Entity Required or Optional
AssignableEvent
Activated Person AssignableDigitalResource Optional
Completed Person AssignableDigitalResource Attempt Optional
Deactivated Person AssignableDigitalResource Optional
Reviewed Person AssignableDigitalResource Attempt Optional
Started Person AssignableDigitalResource Attempt Optional
Submitted Person AssignableDigitalResource Attempt Required
NavigationEvent
NavigatedTo Person DigitalResource Optional
ViewEvent
Viewed Person DigitalResource Optional

3.6 Feedback Profile

The Caliper Feedback Profile models providing feedback and comments on Entities.

3.6.1 Profile Description

See Caliper Analytics® Specification, version 1.2, Section 3.4.

3.6.2 Event Conformance Table

The Feedback Profile only has two actions for the FeedbackEvent and they can each solve different use-cases. To achieve conformance for this profile at least one of the actions must be used.

Event Action Actor Object Recommended Generated Entity Required or Optional
FeedbackEvent
Commented Person Entity At least 1 Required
Ranked Person Entity At least 1 Required

3.7 Forum Profile

Forum Profile

The Caliper Forum Profile models learners and others participating in online forum communities.

3.7.1 Profile Description

See Caliper Analytics® Specification, version 1.2, Section 3.5.

3.7.2 Event Conformance Table

Event Action Actor Object Recommended Generated Entity Required or Optional
ForumEvent
Subscribed Person Forum Optional
Unsubscribed Person Forum Optional
MessageEvent
MarkedAsRead Person Message Optional
MarkedAsUnRead Person Message Optional
Posted Person Message Required
ThreadEvent
MarkedAsRead Person Thread Optional
MarkedAsUnRead Person Thread Optional
NavigationEvent
NavigatedTo Person DigitalResource Optional
ViewEvent
Viewed Person DigitalResource Optional

3.8 Grading Profile

Grading Profile

The Caliper Grading Profile models grading activities performed by an Agent, typically a Person or a SoftwareApplication.

3.8.1 Profile Description

See Caliper Analytics® Specification, version 1.2, Section 3.6.

3.8.2 Event Conformance Table

Event Action Actor Object Recommended Generated Entity Required or Optional
GradeEvent
Graded Agent or subtype Attempt Score Required
ViewEvent
Viewed Agent or subtype Viewed Result Optional

3.8.3 Other Requirements

For auto-graded scenarios the SoftwareApplication MUST be specified as the actor. Otherwise, a Person MUST be specified as the actor of the interaction.

3.9 Media Profile

Media Profile

The Caliper Media Profile models interactions between learners and rich content such as audio, images and video.

3.9.1 Profile Description

See Caliper Analytics® Specification, version 1.2, Section 3.7.

3.9.2 Event Conformance Table

Event Action Actor Object Recommended Generated Entity Required or Optional
MediaEvent
ChangedResolution Person MediaObject Optional
ChangedSize Person MediaObject Optional
ChangedSpeed Person MediaObject Optional
ChangedVolume Person MediaObject Optional
ClosedPopout Person MediaObject Optional
DisabledClosedCaptioning Person MediaObject Optional
EnabledClosedCaptioning Person MediaObject Optional
Ended Person MediaObject Required
EnteredFullScreen Person MediaObject Optional
ExitedFullScreen Person MediaObject Optional
ForwardedTo Person MediaObject Optional
JumpedTo Person MediaObject Optional
Muted Person MediaObject Optional
OpenedPopout Person MediaObject Optional
Paused Person MediaObject Optional
Restarted Person MediaObject Optional
Resumed Person MediaObject Optional
Started Person MediaObject Required
Unmuted Person MediaObject Optional
NavigationEvent
NavigatedTo Person DigitalResource Optional
ViewEvent
Viewed Person DigitalResource Optional

3.10 Reading Profile

Reading Profile

The Caliper Reading Profile models activities associated with navigating to and viewing digital textual content.

3.10.1 Profile Description

See Caliper Analytics® Specification, version 1.2, Section 3.8.

3.10.2 Event Conformance Table

Event Action Actor Object Recommended Generated Entity Required or Optional
NavigationEvent
NavigatedTo Person DigitalResource Required
ViewEvent
Viewed Person DigitalResource Required

3.11 3.10 Resource Management Profile

Results Management Profile

The Caliper Resource Management Profile models a Person managing a DigitalResource

3.11.1 Profile Description

See Caliper Analytics® Specification, version 1.2, Section 3.9.

3.11.2 Event Conformance Table

Event Action Actor Object Recommended Generated Entity Required or Optional
ResourceManagementEvent
Archived Person DigitalResource Optional
Copied Person DigitalResource DigitalResource Optional
Created Person DigitalResource DigitalResource Required
Deleted Person DigitalResource Optional
Described Person DigitalResource Optional
Downloaded Person DigitalResource Optional
Modified Person DigitalResource Optional
Printed Person DigitalResource Optional
Published Person DigitalResource Optional
Restored Person DigitalResource Optional
Retrieved Person DigitalResource Optional
Saved Person DigitalResource Optional
Unpublished Person DigitalResource Optional
Uploaded Person DigitalResource Optional

3.12 3.11 Search Profile

Search  Profile

The Caliper Search Profile models an actor, typically a learner, querying a resource for information. The profile provides a SearchEvent and a Searched action for describing information retrieval activities. An optional SearchResponse entity can be employed to describe the Query submitted by a user as well as any searchResults returned as a result of the search.

3.12.1 Profile Description

See Caliper Analytics® Specification, version 1.2, Section 3.10.

3.12.2 Event Conformance Table

Event Action Actor Object Recommended Generated Entity Required or Optional
SearchEvent
Searched Person DigitalResource Required

3.13 3.12 Session Profile

Session Profile

The Caliper Session Profile models the creation and subsequent termination of a user session established by a Person interacting with a SoftwareApplication.

3.13.1 Profile Description

See Caliper Analytics® Specification, version 1.2, Section 3.11.

3.13.2 Event Conformance Table

Event Action Actor Object Recommended Generated Entity Required or Optional
SessionEvent
LoggedIn Person SoftwareApplication Required
LoggedOut Person SoftwareApplication Optional
TimedOut SoftwareApplication Session Optional

3.14 3.13 Survey Profile

Survey Profile

The Caliper Survey Profile provides a vocabulary for describing events associated with a respondent's participation in online surveys. A key use case involves instrumenting platforms that provide online surveys that explore the student learning experience, student engagement, learning activities, learning progress, and learning performance. The profile models a Person, typically a respondent or a rater, participating in a survey in order to provide feedback on their learning and academic experiences.

3.14.1 Profile Description

See Caliper Analytics® Specification, version 1.2, Section 3.12.

3.14.2 Event Conformance Table

Event Action Actor Object Recommended Generated Entity Required or Optional
SurveyInvitationEvent
Accepted Person SurveyInvitation Optional
Declined Person SurveyInvitation Optional
Sent Person SurveyInvitation Optional
SurveyEvent
OptedIn Person Survey Optional
OptedOut Person Survey Optional
QuestionnaireEvent
Started Person Questionnaire Attempt Optional
Submitted Person Questionnaire Attempt Required
QuestionnaireItemEvent
Completed Person QuestionnaireItem Response Optional
Skipped Person QuestionnaireItem Attempt Optional
Started Person QuestionnaireItem Attempt Optional
NavigationEvent
NavigatedTo Person Questionnaire Optional
ViewEvent
Viewed Person Questionnaire Optional

3.15 3.14 Tool launch Profile

Tool Launch Profile

The Caliper Tool Launch Profile is intended to capture the utilization of learning tools from a centralized location, such as an LTI Tool Platform (often an LMS). As such, it is distinct from the Caliper Tool Use Profile, also defined in this specification, which captures tool usage as reported by the individual tools themselves (i.e. decentralized capture).

3.15.1 Profile Description

See Caliper Analytics® Specification, version 1.2, Section 3.13.

3.15.2 Event Conformance Table

Event Action Actor Object Recommended Generated Entity Required or Optional
ToolLaunchEvent
Launched Person SoftwareApplication Required
Returned Person SoftwareApplication Optional

3.16 3.15 Tool Use Profile

Tool Use Profile

The Caliper Tool Use Profile models an intended interaction between a user and a tool.

3.16.1 Profile Description

See Caliper Analytics® Specification, version 1.2, Section 3.14.

3.16.2 Event Conformance Table

Event Action Actor Object Recommended Generated Entity Required or Optional
ToolUseEvent
Used Person SoftwareApplication Required

4. Transport Conformance

A Caliper Sensor MUST demonstrate that it is capable of transmitting Caliper data successfully to the certification service Endpoint. Certification is limited to message exchanges using the Hypertext Transport Protocol (HTTP) with the connection encrypted with Transport Layer Security (TLS). Messages MUST be sent using the POST request method. For certification purposes, the Sensor MUST also support message authentication using the Authorization request header, setting the value to the provided bearer token.

See the IMS Security Framework documentation for more information on security best practices.

4.1 The Envelope

Caliper Event and Entity data are transmitted inside an Envelope, a JSON data structure that includes metadata about the emitting Sensor and the data payload. Each Event and Entity describe included in an envelope's data array MUST be expressed as a JSON-LD document.

For example Envelope JSON-LD see Caliper Analytics® Specification, version 1.2, Section 5.3.

4.2 HTTP Message Requests

Each HTTP request message sent to the certification service MUST consist of a single serialized JSON representation of a Caliper Envelope. Messages MUST be sent using the POST request method.

The following standard HTTP request headers MUST be set for each message sent to the certification service Endpoint:

Request Header Disposition
Authorization Set the Bearer token provided by the certification service and associated with the test endpoint. For example: Authorization: Bearer 2YotnFZFEjr1zCsicMWpAA
Content-Type Set the string value to the IANA media type application/json.
Host Set the string value to the test endpoint URL provided by the certification service.

4.3 HTTP Message Responses

Following receipt of a Sensor request message the certification service will reply with a response message. The response will include a three-digit status code indicating whether or not the certification service was able to understand and satisfy the request as defined by [RFC7231].

  • To signal a Caliper sensor that it has successfully received a message the certification service endpoint will reply with a 2xx class status code. The body of a successful response will be empty.
  • If a Caliper sensor sends a message containing events and or entities without an enclosing Envelope, the certification service will reply with a 400 Bad Request response.
  • If a Caliper sensor sends a malformed Caliper envelope (it does not contain sensor, sendTime, dataVersion and data properties of the required form), the certification service will reply with a 400 Bad Request response.
  • If a Caliper sensor sends a message without an Authorization request header of the REQUIRED form or sends a token credential that the certification service is unable to either validate or determine has sufficient privileges to submit Caliper data, the certification service will reply with a 401 Unauthorized response.
  • If a Caliper sensor sends a message with a Content-Type other than "application/json", the certification service will reply with a 415 Unsupported Media Type response.
  • If a Caliper sensor sends a message with an Envelope that contains a dataVersion value that the endpoint cannot support the certification service will reply with a 422 Unprocessable Entity response.

The certification service MAY respond to Sensor messages with other standard HTTP status codes to indicate result dispositions that vary from the cases described above. The certification service MAY also communicate more detailed information about problem states, using the standard method for reporting problem details described in [RFC7807].

4.4 Other Transport Protocols

Caliper Analytics® Specification, version 1.2 defines the use of a single transport protocol (HTTP/HTTPS). However, IMS Global is interested in specifying the use of other transport protocols that can support the exchange of Caliper data. Organizations wishing to work with IMS Global to add other transport protocols to the Caliper specification should contact the Caliper Working Group directly or indicate interest via the public forum.

A. About this Document

This section is non-normative.

IMS Global Learning Consortium, Inc. ("IMS Global") is publishing the information contained in this document ("Guide") for purposes of scientific, experimental, and scholarly collaboration only.

IMS Global makes no warranty or representation regarding the accuracy or completeness of the Guide.

This material is provided on an "As Is" and "As Available" basis.

The Guide is at all times subject to change and revision without notice.

It is your sole responsibility to evaluate the usefulness, accuracy, and completeness of the Guide as it relates to you.

IMS Global would appreciate receiving your comments and suggestions.

Please contact IMS Global through our website at http://www.imsglobal.org.

Please refer to Document Name: IMS Caliper Analytics® Certification Guide, version 1.2

Date: 5 December 2019

This document contains trademarks of the IMS Global Learning Consortium including the IMS Logos, Learning Tools Interoperability® (LTI®), Accessible Portable Item Protocol® (APIP®), Question and Test Interoperability® (QTI®), Common Cartridge® (CC®), AccessForAll™, OneRoster®, Caliper Analytics® and SensorAPI™. For more information on the IMS trademark usage policy see trademark policy page - https://www.imsglobal.org/trademarks

B. Revision History

This section is non-normative.

Release Date Comments
21 October, 2020 Base Document Release
27 March, 2020 Candidate Final Release

C. References

This section is non-normative.

Caliper Spec. IMS Global. Anthony Whyte, Viktor Haag, Linda Feng, Markus Gylling, Matt Ashbourne, Wes LaMarche and Etienne Pelaprat. Caliper Analytics® Specification, version 1.2. 12 January 2018. URL: http://www.imsglobal.org/caliper-spec-v1p2

JSON-LD Syntax. W3C. M. Sporny, D. Longley, G. Kellog, M. Lanthaler and N. Lindström. JSON-LD 1.1. A JSON-based Serialization for Linked Data. 15 February 2017. URL: http://json-ld.org/spec/latest/json-ld/

JSON-LD Processing. D. Longley, G. Kellog, M. Lanthaler, M. Sporny. JSON-LD 1.1 Processing Algorithms and API. 15 February 2017. URL: http://json-ld.org/spec/latest/json-ld-api/

Linked Data. Tim Berners-Lee. "Linked Data." W3C internal document. July 2006, rev. June 2009. URL: https://www.w3.org/DesignIssues/LinkedData.html

C.1 Normative references

[RFC2119]
Key words for use in RFCs to Indicate Requirement Levels. S. Bradner. IETF. March 1997. Best Current Practice. URL: https://tools.ietf.org/html/rfc2119
[RFC7231]
Hypertext Transfer Protocol (HTTP/1.1): Semantics and Content. R. Fielding, Ed.; J. Reschke, Ed.. IETF. June 2014. Proposed Standard. URL: https://httpwg.org/specs/rfc7231.html
[RFC7807]
Problem Details for HTTP APIs. M. Nottingham; E. Wilde. IETF. March 2016. Proposed Standard. URL: https://tools.ietf.org/html/rfc7807

D. List of Contributors

The following individuals contributed to the development of this document:

Name Organization
Anthony WhyteUniversity of Michigan
Viktor HaagD2L
Andrew GardenerUniversity of British Columbia
Yeona JangExplorance
Dan CarrollClever
Daniel GreenVitalSource
Sam SciollaUniversity of Michigan
Lance E SloanUniversity of Michigan
Kara ArmstrongUnizin
Markus GyllingIMS Global
Linda FengUnicon
André N'guettiaPennsylvania State University
Eric PrestonBlackboard, Inc.
Oxana JurosevicInstructure
Bracken MosbackerIMS Global
Joshua McGheeIMS Global

IMS Global Learning Consortium, Inc. ("IMS Global") is publishing the information contained in this document ("Specification") for purposes of scientific, experimental, and scholarly collaboration only.

IMS Global makes no warranty or representation regarding the accuracy or completeness of the Specification.

This material is provided on an "As Is" and "As Available" basis.

The Specification is at all times subject to change and revision without notice.

It is your sole responsibility to evaluate the usefulness, accuracy, and completeness of the Specification as it relates to you.

IMS Global would appreciate receiving your comments and suggestions.

Please contact IMS Global through our website at http://www.imsglobal.org.

Please refer to Document Name: Caliper Conformance and Certification Guide 1.2

Date: 27 March 2020