IMS Final Release
IMS Global Learning Consortium, Inc. Logo

IMS Global Learning Consortium, Inc.

Caliper Analytics® Specification, version 1.1

IPR and Distribution Notices

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.

Copyright © 2018 IMS Global Learning Consortium. All Rights Reserved.

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 NON INFRINGEMENT 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.

Table of Contents

1.0. Introduction

Delivering teaching and learning at scale is encouraging adoption of “big data” practices. Cloud computing and machine learning are changing both the learning technology landscape and the business of education. The definition of what constitutes learning is also evolving beyond the formal classroom experience to include informal, social and experiential modes of acquiring knowledge and skills. Opportunities exist to leverage new tools, tap new data sources, ask new questions and pursue new insights.

Consider the enterprising instructor seeking to augment if not transform the classroom environment for her students. She utilizes a video platform to create and post video assignments. Class discussions and Q&A sessions are conducted online using another service. She administers her course using a learning management system. Three services, three vendors, three potential sources of learning data.

Analyzing the viewing behavior of her students in relation to the questions they pose about her course content is vital to understanding student comprehension and performance. Yet exploring such relationships is all too often a challenging exercise. Likely there are significant barriers to overcome. Is the data required for analysis actually collected? If it exists, who owns it? If ownership is not an issue what about privacy concerns? If privacy protocols are in place is the data easy to retrieve? If retrievable how difficult is it to combine with data sourced from other platforms?

The Caliper Analytics® specification seeks to address a number of the issues outlined above by providing a structured approach to describing, collecting and exchanging learning activity data. 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™) 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.

1.1 Status of this Document

This document is considered the Final Release. This means that the Caliper Analytics® Specification, version 1.1, 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 Summary of Changes

Caliper 1.1 extends as well as refines the Caliper information model and further describes the ways in which Events and Entities can be expressed as Linked Data when authoring documents using JSON-LD.

Three new profiles are provided: the Basic Profile, Forum Profile and ToolUse Profile. The AssessmentItem Profile has been merged into the Assessment Profile. The Outcome Profile has been renamed the Grading Profile and a new Score entity has been added. Both the Forum Profile and the ToolUse Profile add new event types to the Caliper event model: ForumEvent, ThreadEvent, MessageEvent, ToolUseEvent. New entities and actions are also provided to better describe forum activities and tool use.

The ReadingEvent has been deprecated while the OutcomeEvent has been replaced by the GradeEvent. Certain action vocabularies have been adjusted as a result of additions and/or removals. These include actions associated with the AnnotationEvent, AssessmentEvent, AssessmentItemEvent, AssignableEvent and MediaEvent. A number of entities have also been deprecated. The list includes EpubChapter, EpubPart, EpubSubChapter, EpubVolume and Reading.

Regarding property changes, use of the JSON-LD @id and @type keywords have been deprecated in favor of id and type. The Caliper Event now includes an identifier id property as well as new referrer, session and extensions attributes. Entity property additions, name changes and deprecations also feature in this new release.

Sensor and endpoint behaviors are more fully described and the new specification also clarifies how to express Caliper events and entities in a JSON-LD document. A new Caliper JSON-LD context document is also provided to map Caliper terms to their respective IRIs.

All these changes are described in more detail in Appendix H. Change Log.

1.3 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 RFC 2119. 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.

1.4 Terminology

Actor: An actor is an Agent capable of initiating or performing an action on a thing or as part of a process. A Caliper Event includes an actor attribute for representing the Agent.

Blank Node Identifier: a string that begins with “_:” that is used to identify an Entity for which an IRI is not provided. An Entity provisioned with a blank node identifier is neither dereferenceable nor has meaning outside the scope of the JSON-LD document within which it resides.

Action: something performed or done to accomplish a purpose. Caliper Event subtypes define a controlled vocabulary of one or more actions relevant to the activity domain. A Caliper Event includes an action attribute for expressing the associated action.

Context: a special JSON-LD keyword that maps the terms employed in a JSON document to IRIs that link to one or more published vocabularies. Inclusion of a JSON-LD context provides an economical way of communicating document semantics to services interested in consuming Caliper event data.

Describe: a Caliper message containing an Entity that is not directly associated with an Event. Entities can be sent asynchronously from events using Describe messages in order to reduce verbosity (e.g. sending a Person entity as a Describe avoids having to repeat the Person object in each Event that includes it).

Endpoint: a receiver or consumer of Caliper data that is bound to a specific network protocol.

Entity: an object or a thing that participates in learning-related activity. Caliper Entity types provide coarsed-grained representations of applications, people, groups and resources that constitute the “stuff” of a Caliper Event. Each Entity corresponds to a node in a directed graph.

Envelope: a data structure that serves as a transport container of Caliper Event and Entity data. The envelope also includes metadata about the emitting Sensor and the data payload.

Event: describes a relationship established between an Agent (the actor) and an Entity (the object) formed as a result of a purposeful action undertaken by the actor in connection to the object at a particular moment in time.

JSON-LD: a specification providing a JSON-based data serialization and messaging format, processing algorithms and API for working with Linked Data. The messages described in this specification are intended to be used in programming environments that support JSON-LD.

IRI: The Internationalized Resource Identifier (IRI) extends the Uniform Resource Identifier (URI) scheme by using characters drawn from the Universal character set rather than US-ASCII per RFC 3987. Linked Data rely on IRIs to refer to most nodes and properties.

ISO 8601: Caliper data and time values are formatted per ISO 8601 with the addition of millisecond precision. The format is yyyy-MM-ddTHH:mm:ss.SSSZ where ‘T’ separates the date from the time while ‘Z’ indicates that the time is set to UTC.

Linked Data: A set of design principles first articulated by Tim Berners-Lee for discovering, connecting, and sharing structured data over the Web. The principles can be summarized as follows: use IRIs/URIs as names for things; use HTTP IRIs/URIs so that information about things (e.g., people, objects, concepts) can be retrieved using a standard format; link out to other relevant things by way of their IRIs/URIs in order to promote discovery of new relationships between things.

LIS: Learning Information Services® (LIS®) is an IMS standard that defines how systems manage the exchange of information that describes people, groups, memberships, courses and outcomes.

LTI: Learning Tools Interoperability® (LTI®) is an IMS standard for integration of rich learning applications within educational environments.

Metric Profile: models a learning activity or a supporting activity that helps facilitate learning. Each profile provides a domain-specific set of terms and concepts that application designers and developers can draw upon to describe common user interactions in a consistent manner using a shared vocabulary.

Object: an Entity that an Agent interacts with that becomes the focus, target or object of an interaction. A Caliper Event includes an object attribute for representing the resource.

Sensor: Software assets deployed within a learning application that implement the Sensor API™ for marshalling and transmitting Caliper data to a target endpoint.

Sensor API™: The standard set of methods and supported parameters that a Sensor implements according to this specification in order to transmit Caliper data in an interoperable way.

Term: a word or short expression that expands to an IRI when mapped to a JSON-LD context document. Terms are employed by Caliper as type property string values in order to distinguish between various JSON representations of entities and events defined by the Caliper information model.

Type Coercion: the process of coercing values to a particular data type.

URI: the Uniform Resource Identifier (URI) utilizes the US-ASCII character set to identify a resource. Per RFC 2396 a URI “can be further classified as a locator, a name or both.” Both the Uniform Resource Locator (URL) and the Uniform Resource Name (URN) are considered subspaces of the more general URI space.

URL: A Uniform Resource Locator (URL) is a type of URI that provides a reference to resource that specifies both its location and a means of retrieving a representation of it. An HTTP URI is a URL and using HTTP IRIs/URIs to identify things is fundamental to Linked Data.

URN: A Uniform Resource Name (URN) is a type of URI that provides a persistent identifier for a resource that is bound to a defined namespace. Unlike a URL a URN is location-independent and provides no means of accessing a representation of the named resource.

UUID: a 128-bit identifier that does not require a registration authority to assure uniqueness. However, absolute uniqueness is not guaranteed although the collision probability is considered extremely low. Caliper recommends use of randomly or pseudo-randomly generated version 4 UUIDs. Each Caliper Event MUST be assigned a UUID that is expressed as a URN using the form urn:uuid:<UUID> as described in RFC 4122.

2.0 The Information Model

The Caliper information model defines a set of concepts, rules, and relationships for describing learning activities. Each activity domain modeled is described in a Metric Profile (“profile”). Each profile is composed of one or more Event types. Each Event defines a controlled vocabulary of actions undertaken by learners, instructors, and others, that are scoped to the event. Various Entity types representing people, groups, and resources are provided in order to better describe both the relationships established between participating entities and the contextual elements relevant to the interaction.

2.1 The Caliper Event

Event Model

A Caliper Event is a generic type that describes the relationship established between an actor and an object, formed as a result of a purposeful action undertaken by the actor at a particular moment in time and within a given learning context. The Event properties actor, action and object form a compact data structure that resembles an RDF triple linking a subject to an object via a predicate. A learner starting an assessment, annotating a reading, pausing a video, or posting a message to a forum, are examples of learning activities that Caliper models as events.

Caliper defines a number of Event subtypes, each scoped to a particular activity domain and distinguishable by a type attribute. The type value is a string that MUST match the Term specified for the Event by the Caliper information model (e.g. “MessageEvent”). Each Event instance is assigned a 128-bit long universally unique identifier (UUID) formatted as a URN per RFC 4122, which describes a URN namespace for UUIDs.

The information model also seeks to describe the learning environment or context in which a learning activity is situated. Group affiliation, membership roles and status, recent navigation history, supporting technology and session information can all be optionally represented. An Entity generated as a result of the interaction between an actor and an object can also be described; annotating a piece of digital content and producing an Annotation is one such example. An extensions property is also provided so that implementers can add custom attributes not described by the model.

Properties

Considered as a data structure an Event constitutes an unordered set of key:value pairs that is semi-structured by design. Optional attributes can be ignored when describing an Event. An Entity participating in an Event can be represented as an object or as a string that corresponds to the IRI defined for the Entity.

The base set of Event properties or attributes is listed below. Each property MUST be referenced only once. The id, type, actor, action, object and eventTime properties are required; all other properties are optional. Custom attributes not described by the model MAY be included but MUST be added to the extensions property as a map of key:value pairs. Properties with a value of null or empty SHOULD be excluded prior to serialization.

Property Type Description Disposition
id UUID The emitting application MUST provision the Event with a UUID. A version 4 UUID SHOULD be generated. The UUID MUST be expressed as a URN using the form urn:uuid:<UUID> per RFC 4122. Required
type Term A string value corresponding to the Term defined for the Event in the external IMS Caliper JSON-LD context document. For a generic Event set the type to the string value Event. If a subtype of Entity is created, set the type to the Term corresponding to the subtype utilized, e.g., NavigationEvent. Required
actor Agent | IRI The Agent who initiated the Event, typically though not always a Person. The actor value MUST be expressed either as an object or as a string corresponding to the actor’s IRI. Required
action Term The action or predicate that binds the actor or subject to the object. The action range is limited to the set of actions described in this specification and may be further constrained by the chosen Event type. Only one action Term may be specified per Event. Required
object Entity | IRI The Entity that comprises the object of the interaction. The object value MUST be expressed either as an object or as a string corresponding to the object’s IRI. Required
eventTime DateTime An ISO 8601 date and time value expressed with millisecond precision that indicates when the Event occurred. The value MUST be expressed using the format YYYY-MM-DDTHH:mm:ss.SSSZ set to UTC with no offset specified. Required
target Entity | IRI An Entity that represents a particular segment or location within the object. The target value MUST be expressed either as an object or as a string corresponding to the target entity’s IRI. Optional
generated Entity | IRI An Entity created or generated as a result of the interaction. The generated value MUST be expressed either as an object or as a string corresponding to the generated entity’s IRI. Optional
edApp SoftwareApplication | IRI A SoftwareApplication that constitutes the application context. The edApp value MUST be expressed either as an object or as a string corresponding to the edApp’s IRI. Optional
referrer Entity | IRI An Entity that represents the referring context. A SoftwareApplication or DigitalResource will typically constitute the referring context. The referrer value MUST be expressed either as an object or as a string corresponding to the referrer’s IRI. Optional
group Organization | IRI An Organization that represents the group context. The group value MUST be expressed either as an object or as a string corresponding to the group’s IRI. Optional
membership Membership | IRI The relationship between the actor and the group in terms of roles assigned and current status. The membership value MUST be expressed either as an object or as a string corresponding to the membership entity’s IRI. Optional
session Session | IRI The current user Session. The session value MUST be expressed either as an object or as a string corresponding to the session’s IRI. Optional
federatedSession LtiSession | IRI If the Event occurs within the context of an LTI tool launch, the actor’s tool consumer LtiSession MAY be referenced. The federatedSession value MUST be expressed either as an object or as a string corresponding to the federatedSession’s IRI. Optional
extensions Object A map of additional attributes not defined by the model MAY be specified for a more concise representation of the Event. Optional

Subtypes

AnnotationEvent, AssignableEvent, AssessmentEvent, AssessmentItemEvent, ForumEvent, MediaEvent, MessageEvent, NavigationEvent, GradeEvent, SessionEvent, ToolUseEvent, ThreadEvent, ViewEvent

Deprecated subtypes

OutcomeEvent, ReadingEvent

2.2 The Caliper Entity

Caliper Entities

A Caliper Entity is a generic type that represents objects that participate in learning-related activities. A variety of Entity subtypes have been defined in order to better describe people, groups, organizations, digital content, courses, software applications, and other objects that constitute the “stuff” of a Caliper Event. Each Entity is provisioned with a modest set of properties or attributes that support discovery and description.

Caliper permits Entity values to be expressed either as an object or as a string corresponding to the resource’s IRI.

If the Entity is expressed as an object, both the id and type properties MUST be specified. The type value is a string that MUST match the term specified for the Entity by the Caliper information model (e.g. “Person”). The id value is a string that MUST be expressed as an IRI. The IRI MUST be valid and unique. The IRI SHOULD also be dereferenceable, i.e., capable of returning a representation of the resource assuming authorization to access the resource is granted. A URI employing the URN scheme MAY be provided although care should be taken when employing a location-independent identifier since it precludes the possibility of utilizing it to retrieve machine-readable data over HTTP.

Other Entity properties are descriptive in nature, or link the Entity to other related entities. Certain Entity subtypes like Annotation, DigitalResource, Message or Organization are provisioned with additional properties that allow for a more complete representation of the object. An extensions property is also defined so that implementers can add custom attributes not described by the model. Optional properties can be ignored when describing an Entity.

Properties

Like an Event, an Entity is considered semi-structured data consisting of an unordered set of key:value pairs. The base set of Entity properties is listed below. Each property MUST be referenced only once. When representing an Entity as an object the id and type properties are required; all other properties are optional and need not be referenced when describing an Entity. Custom attributes not described by the model MAY be included but MUST be added to the extensions property as a map of key:value pairs. Properties with a value of null or empty SHOULD be excluded prior to serialization.

Property Type Description Disposition
id IRI A valid IRI MUST be specified. The IRI MUST be unique and persistent. The IRI SHOULD also be dereferenceable, i.e., capable of returning a representation of the resource. A URI employing the URN scheme MAY be provided in cases where a Linked Data friendly HTTP URI is either unavailable or inappropriate. Required
type Term A string value corresponding to the Term defined for the Entity in the external IMS Caliper JSON-LD context document. For a generic Entity set the type value to the term Entity. If a subtype of Entity is created, set the type to the Term corresponding to the subtype utilized, e.g., Person. Required
name string A string value comprising a word or phrase by which the Entity is known. Optional
description string A string value comprising a brief, written representation of the Entity. Optional
dateCreated DateTime An ISO 8601 date and time value expressed with millisecond precision that describes when the Entity was created. The value MUST be expressed using the format YYYY-MM-DDTHH:mm:ss.SSSZ set to UTC with no offset specified. Optional
dateModified DateTime An ISO 8601 date and time value expressed with millisecond precision that describes when the Entity was last changed or updated. The value MUST be expressed using the format YYYY-MM-DDTHH:mm:ss.SSSZ set to UTC with no offset specified. Optional
extensions Object A map of additional attributes not defined by the model MAY be specified for a more concise representation of the Entity. Optional

Subtypes

Agent, Annotation, Assessment, AssessmentItem, AssignableDigitalResource, Attempt, AudioObject, BookmarkAnnotation, Chapter, CourseOffering, CourseSection, DigitalResource, DigitalResourceCollection, Document, FillinBlankResponse, Frame, Forum, Group, HighlightAnnotation, ImageObject, LearningObjective, LtiSession, MediaLocation, MediaObject, Membership, Message, MultipleChoiceResponse, MultipleResponseResponse, Organization, Page, Person, Response, Result, Score, SelectTextResponse, Session, SharedAnnotation, SoftwareApplication, TagAnnotation, Thread, TrueFalseResponse, VideoObject, WebPage

Deprecated subtypes

EpubChapter, EpubPart, EpubSubChapter, EpubVolume, Reading

3.0 Metric Profiles

Metric Profiles

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. A metric profile’s raison d’etre is to encourage vocabulary standardization and re-use among application providers delivering complementary, albeit competing capabilities that collect learning activity data. Each profile provides a domain-specific set of terms and concepts that application designers and developers can draw upon to describe common user interactions in a consistent manner using a shared vocabulary. Annotating a reading, playing a video, taking a test, or grading an assignment submission represent a few examples of the many activities or events that Caliper’s metric profiles attempt to describe.

Think of each metric profile as a stand-alone, logical container, or collection of one or more Caliper events that together help describe a set of inter-related activities. Each Event type included in a metric profile place constraints on the various entities and actions that can be utilized to describe a learning activity. Vocabulary restrictions are outlined in each profile description under the following headings:

As an example, the Forum Profile models a set of activities associated with online discussions involving instructors and learners. The profile currently includes a ForumEvent, MessageEvent, NavigationEvent, ThreadEvent and ViewEvent. An action sequence mediated by the Forum Profile might involve a learner navigating to a forum, subscribing to it, viewing a thread, posting a message in reply to an earlier post and then marking the message as read.

Extending Caliper’s information model involves designing a new metric profile or enhancing an existing one. Implementers are free to implement only those Caliper metric profiles as are necessary to model a learning domain. A video platform provider may decide that only the Assignable Profile, Media Profile and Session Profile are relevant to its needs, while developers instrumenting an assessment engine would most likely implement the Assessment Profile, Assignable Profile, Grading Profile and Session Profile.

The following metric profiles are currently available and are summarized individually below:

Annotation Profile, Assessment Profile, Assignable Profile, Forum Profile, Media Profile, Grading Profile, Reading Profile, Session Profile, Tool Use Profile, Basic Profile

3.1 Annotation Profile

Annotation Profile

The Caliper Annotation Profile models activities related to the annotation of a DigitalResource. Creating a bookmark, highlighting selected text, sharing a resource, tagging a document, and viewing an annotation are modeled. The generated Annotation is also described and is subtyped for greater type specificity.

As an example, instructors can use the places where students are making notes in the course material to determine whether they have the right idea about which material should be highlighted. In addition, if there are students who are asking questions or making notes indicating confusion about a particular piece of content, this can also inform the instructor about the suitability or quality of the material which they have chosen to use.

Questions which can be answered using this profile are as follows:

Supported Events

AnnotationEvent

Supported Actors

Person

Supported Actions

Bookmarked, Highlighted, Shared, Tagged

Supported Objects

DigitalResource

Supported Generated Entities

BookmarkAnnotation, HighlightAnnotation, SharedAnnotation, TaggedAnnotation

Other Requirements

3.2 Assessment Profile

Assessment Profile

The Caliper Assessment Profile models assessment-related activities including interactions with individual assessment items. Caliper provides Assessment and AssessmentItem entities for describing the object of these activities, as well as a learner’s Attempt for recording a count of the number of times an assigned resource has been attempted. Five Response types are also provided for capturing individual item responses. Note that the Caliper 1.0 AssessmentItem Profile has been merged into the Assessment Profile.

Tracking patterns using the assessment profile will allow instructors to understand more about how students are interacting with their assessments. Typical ways to make use of this profile are to answer the following questions:

Supported Events

AssessmentEvent, AssessmentItemEvent, NavigationEvent, ViewEvent

Supported Actors

Person

Supported Actions

AssessmentEvent

Started, Paused, Resumed, Restarted, Reset, Submitted

AssessmentItemEvent

Started, Skipped, Completed

NavigationEvent

NavigatedTo

ViewEvent

Viewed

Supported Objects

AssessmentEvent

Assessment

AssessmentItemEvent

AssessmentItem

NavigationEvent

Assessment, AssessmentItem

ViewEvent

Assessment, AssessmentItem

Supported Generated Entities

AssessmentEvent

Attempt

AssessmentItemEvent

Attempt, Response

Other Requirements

3.3 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. Caliper provides a generic AssignableDigitalResource for describing the object of these activities as well as a learner’s Attempt for recording a count of the number of times an assigned resource has been attempted.

This profile would be useful for instructors to gather insight about the relationship between students and their assignments. Answers to the following questions can be enabled using this profile:

Supported Events

AssignableEvent, NavigationEvent, ViewEvent

Supported Actors

Person

Supported Actions

AssignableEvent

Activated, Deactivated, Started, Completed, Submitted, Reviewed

NavigationEvent

NavigatedTo

ViewEvent

Viewed

Supported Objects

AssignableDigitalResource

Supported Generated Entities

AssignableEvent

Attempt

Other Requirements

3.4 Forum Profile

Forum Profile

The Caliper Forum Profile models learners and others participating in online forum communities. Forums typically encompass one or more threads or topics to which members can subscribe, post messages and reply to other messages if a threaded discussion is permitted. Caliper provides Forum, Thread and Message entities for representing the object of these activities.

Tracking patterns using the forum profile will allow instructors to understand more about how students are engaged within discussion forums. Using this profile, instructors can gain insight in the following areas:

Supported Events

ForumEvent, MessageEvent, NavigationEvent, ThreadEvent, ViewEvent

Supported Actors

Person

Supported Actions

ForumEvent

Subscribed, Unsubscribed

MessageEvent

MarkedAsRead, MarkedAsUnRead, Posted

NavigationEvent

NavigatedTo

ThreadEvent

MarkedAsRead, MarkedAsUnRead

ViewEvent

Viewed

Supported Objects

ForumEvent

Forum

MessageEvent

Message

NavigationEvent

Forum, Message, Thread

ThreadEvent

Thread

ViewEvent

Forum, Message, Thread

Other Requirements

3.5 Grading Profile

Grading Profile

The Caliper Grading Profile models grading activities performed by an Agent, typically a Person or a SoftwareApplication. Grading a learner’s Attempt of an AssignableDigitalResource and generating a Score is modeled. Note that the Caliper 1.0 Outcomes Profile has been replaced by the Grading Profile.

The grading profile allows information to be captured about grade changes for a given assessment or submission. This may be useful to understand the way in which students and teachers may be interacting throughout the course. For example, the grading profile can be used to answer questions such as:

Supported Events

GradeEvent, ViewEvent

Supported Actors

GradeEvent

Agent

ViewEvent

Person

Supported Actions

GradeEvent

Graded

ViewEvent

Viewed

Supported Objects

GradeEvent

Attempt

ViewEvent

Result

Supported Generated Entities

GradeEvent

Score

Other Requirements

3.6 Media Profile

Media Profile

The Caliper Media Profile models interactions between learners and rich content such as audio, images and video. Implementers can leverage a number of media-related entities including AudioObject, ImageObject and VideoObject, each subtyped from a generic MediaObject. A MediaLocation entity is also provided in order to represent the current location in an audio or video stream.

As an example of how this profile could be used, consider the following scenario: an instructor has decided to incorporate a video player into their course. The video content may or may not be launched via LTI from the Learning Management System (LMS). Since the video player tool is instrumented to emit activity data via Caliper, the instructor will be able to collect useful information about student viewing behavior. In addition, he will be able to compare this data along with other relevent information in the LMS, such as assignment and quiz results. Using data collected via Caliper, instructors (and administrators) can answer key questions, such as:

Supported Events

MediaEvent, NavigationEvent, ViewEvent

Supported Actors

Person

Supported Actions

MediaEvent

Started, Ended, Paused, Resumed, Restarted, ForwardedTo, JumpedTo, ChangedResolution, ChangedSize, ChangedSpeed, ChangedVolume, EnabledClosedCaptioning, DisabledClosedCaptioning, EnteredFullScreen, ExitedFullScreen, Muted, Unmuted, OpenedPopout, ClosedPopout

NavigationEvent

NavigatedTo

ViewEvent

Viewed

Supported Objects

AudioObject, ImageObject, MediaObject, VideoObject

Supported Target Entities

MediaLocation

Other Requirements

3.7 Reading Profile

Reading Profile

The Caliper Reading Profile models activities associated with navigating to and viewing digital textual content. Caliper provides a number of entities representing digital content including a generic DigitalResource and DigitalResourceCollection along with Document, Chapter, Page, WebPage, Message and Frame.

Instructors and researchers can utilize data collected via the Reading Profile to answer questions such as:

When used in conjunction with the Assessment Profile viewing patterns can be correlated to performance measures.

Supported Events

NavigationEvent, ViewEvent

Supported Actors

Person

Supported Actions

NavigationEvent

NavigatedTo

ViewEvent

Viewed

Supported Objects

AssignableDigitalResource, Chapter, DigitalResource, DigitalResourceCollection, Document, Page, WebPage

Supported Target Entities

The following Entity types are supported:

Other Requirements

3.8 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. A Session entity is described for representing the user session.

The session profile can facilitate the capture of data about who is logging into the learning environment, and more importantly, which students are not logging in. The following are examples of the information best captured using the session profile:

Supported Events

SessionEvent

Supported Actors

Person, SoftwareApplication

Supported Actions

LoggedIn, LoggedOut, TimedOut

Supported Objects

SoftwareApplication, Session

Supported Target Entities

DigitalResource

Other Requirements

3.9 Tool Use Profile

Tool Use Profile

The Caliper Tool Use Profile models an intended interaction between a user and a tool. In other words, when a Person utilizes a SoftwareApplication in a manner that the application determines to be its “intended use for learning”, an application that implements the Tool Use Profile can emit a ToolUseEvent indicating such usage.

The Tool Use Profile enables the gathering of basic usage information. It provides an easy way to get started with a base level of instrumentation by allowing the learning tool to make the determination of its own use. Any learning app can be instrumented using this profile to detect when a student accesses the tool and uses it in the way it was intended. Common questions that can be answered by using this profile include:

Supported Events

ToolUseEvent

Supported Actors

Person

Supported Actions

Used

Supported Objects

SoftwareApplication

3.10 Basic Profile

Basic Profile

The Caliper Basic Profile provides a generic Event for describing learning or supporting activities that have yet to be modeled by Caliper. Any of the Caliper actions described in this specification can be used to describe the interaction between the actor and the object.

Supported Events

Event (supertype only)

Supported Actors

Agent

Supported Actions

Any Caliper action MAY be used to describe the interaction.

Supported Objects

Entity

Other Requirements

4.0 Serialization of the Model

Over the last decade the advent of cloud-based, networked applications have led to changes in the way data is structured and represented. Data once considered strictly hierarchical, like a curriculum, a course roster, or a transcript now frequently link out to other kinds of data. Modeling bundles of data pointing to other bundles of data now requires thinking in terms of graphs and Linked Data. Caliper Event data presents us with similar structures. A Caliper Event can link to user data, digital content, courses and rosters, grades and credentials, institutional and organizational data, application and session data, and so on, the sources of which are likely diverse and the opportunities for discovering new relationships between the entities represented therein both numerous as well as enlightening.

Exchanging data linked to other data distributed across a wide network requires both a simple, well-understood data-interchange format as well as means of defining unambiguously the underlying semantics or meaning intended for the data structures transmitted from one machine to another. For Caliper, JSON-LD provides the necessary representational horsepower to both describe these kinds of data linkages and specify how data is to be understood when published and shared across a network.

JSON-LD defines an economical syntax for representing learning activity data as Linked Data using JSON as the underlying data-interchange format. JSON-LD also provides an API and set of processing algorithms for working with JSON-LD documents that are based on different contexts. Algorithms have also been developed to serialize RDF as JSON-LD and deserialize a JSON-LD document to an RDF data set.

4.1 JSON-LD Context

JSON-LD documents require inclusion of a context, denoted by the @context keyword, a property employed to map document Terms to IRIs. JSON-LD contexts can be embedded inline or referenced externally in a document. Inclusion of a JSON-LD context provides an economical way for Caliper to communicate document semantics to services interested in consuming Caliper event data.

IMS Global provides a remote Caliper 1.1 JSON-LD context document (http://purl.imsglobal.org/ctx/caliper/v1p1) for mapping Caliper Terms to IRIs. Implementers are encouraged to familiarize themselves with the term definitions described therein.

Requirements

In the following example, @context is a top-level Event property with a value that references the remote Caliper JSON-LD context document. All of the Event key:value pairings are mapped to [IRIs] in the referenced context.

Example: referencing the Caliper JSON-LD context

{
  "@context": "http://purl.imsglobal.org/ctx/caliper/v1p1",
  "id": "urn:uuid:3a648e68-f00d-4c08-aa59-8738e1884f2c",
  "type": "Event",
  "actor": {
    "id": "https://example.edu/users/554433",
    "type": "Person"
  },
  "action": "Created",
  "object": {
    "id": "https://example.edu/terms/201801/courses/7/sections/1/resources/123",
    "type": "Document"
  },
  "eventTime": "2018-11-15T10:15:00.000Z"
}

As noted above, a JSON-LD document can reference more than one context. Subject to the requirements listed above additional contexts MAY be defined for a Caliper Event or Entity describe in order to map non-Caliper vocabulary terms to their respective IRIs.

Example: Referencing multiple contexts

Correct order (Caliper context listed last)
{
  "@context": ["https://schema.org/docs/jsonldcontext.json", "http://purl.imsglobal.org/ctx/caliper/v1p1"]
  . . .
}

Contexts embedded inline can be combined with externally referenced contexts. Again, order matters.

Example: Combining inline and referenced contexts

{
  "@context": [
    {
      "query": "http://schema.org/query"
    },
    "http://purl.imsglobal.org/ctx/caliper/v1p1"
  ],
  "id": "urn:uuid:3a648e68-f00d-4c08-aa59-8738e1884f2c",
  "type": "Event",
  "actor": {
    "id": "https://example.edu/users/554433",
    "type": "Person"
  },
  "action": "Searched",
  "object": {
    "id": "https://example.edu/terms/201801/courses/7/sections/1/resources/123",
    "type": "Document"
  },
  "eventTime": "2018-11-15T10:15:00.000Z",
  "extensions": {
    "query": "Event OR Entity"
  }
}

4.2 Identifiers

Linked Data relies on IRIs/URIs for the identification and retrieval of resources. Likewise, JSON-LD specifies the use of IRIs/URIs for identifying most nodes (i.e., JSON objects) and their attributes. Caliper too specifies the use of IRIs for identifying nodes (i.e., the things or entities being described) and their attributes.

IRI values MUST be absolute containing a scheme, path and optional query and fragment segments. A URI employing the URN scheme MAY be used as an identifier although care should be taken when employing a location-independent identifier since it precludes the possibility of utilizing it in future to retrieve machine-readable data over HTTP. If an IRI is deemed inappropriate for the resource a blank node identifier may be assigned.

JSON-LD provides a special @id keyword for assigning identifiers to nodes. For Caliper, the JSON-LD @id keyword is aliased as id in the external IMS Caliper JSON-LD context. This is done in order to avoid the temptation of employing JSON-LD keywords as property names and is aligned with JSON-LD community practice. Thus, each Caliper Event and Entity described by the model is provisioned with an id rather than @id property for identifying the resource.

Every Entity MUST be assigned an identifier in the form of a valid IRI or a blank node identifier. The IRI MUST be unique and persistent. The IRI SHOULD be dereferenceable; i.e., capable of returning a representation of the Entity. A URI employing the URN scheme MAY also be utilized.

Unlike Entities, each Event MUST be assigned a 128-bit long universally unique identifier (UUID) formatted as a URN per RFC 4122, which describes a URN namespace for UUIDs.

Example: Event and Entity identifiers

{
  . . .
  "id": "urn:uuid:ff9ec22a-fc59-4ae1-ae8d-2c9463ee2f8f",
  "type": "NavigationEvent",
  "actor": {
    "id": "https://example.edu/users/554433",
    "type": "Person"
  },
  . . .
  "object": {
    "id": "https://example.edu/terms/201801/courses/7/sections/1/pages/2",
    "type": "WebPage",
    . . .
  },
  . . .
}

4.3 Types and Type Coercion

JSON-LD employs the @type keyword in two ways. Individual nodes (i.e., the thing being described) can be assigned a type. Values can also be associated with or coerced to a particular type. Both node types and typed values are specified in the Caliper JSON-LD context. As with the aliasing of @id as id, the @type keyword is aliased as type in the external IMS Caliper JSON-LD context in keeping with JSON-LD community practice.

Caliper permits Entity values to be expressed either as a JSON object or as a string corresponding to its IRI. JSON-LD also supports the coercion of data values to specified types based on value type mappings defined in a JSON-LD context. For a given @type the keywords @id or @vocab may be assigned as a value in order to signal to a JSON-LD parser that if a term’s instance value is set to a string it is to be interpreted as an IRI. Type coercion of this sort provides representational flexibility that implementers are encouraged to leverage.

The following MessageEvent example utilizes an inline context to illustrate how JSON-LD types can be specified in a context. The MessageEvent, Person and Message terms are all considered node types. Other terms illustrate the coercion of values to specified data types. In the example below, the values of the actor, object and edApp terms are coerced to the @id keyword. Use of this convention informs JSON-LD parsers that string values are to be interpreted as IRIs (as in the case of edApp). In a like manner, the action value is coerced to the @vocab keyword indicating that the value is to be interpreted as a Term defined in the active context or as an IRI; in this case Posted. Terms such as name, description, dateCreated, dateModified and duration are coerced to a particular value type such as a string, integer, boolean or date.

Example: node and value types

{
  "@context": {
    "id": "@id",
    "type": "@type",
    "caliper": "http://purl.imsglobal.org/caliper/",
    "verb": "http://purl.imsglobal.org/caliper/actions/",
    "xsd": "http://www.w3.org/2001/XMLSchema#",
    "MessageEvent": "caliper:MessageEvent",
    "Message": "caliper:Message",
    "Person": "caliper:Person",
    "actor": {"@id": "caliper:actor", "@type": "@id"},
    "action": {"@id": "caliper:action", "@type": "@vocab"},
    "edApp": {"@id": "caliper:edApp", "@type": "@id"},
    "object": {"@id": "caliper:object", "@type": "@id"},
    "body": {"@id": "caliper:body", "@type": "xsd:string"},
    "dateCreated": {"@id": "caliper:dateCreated", "@type": "xsd:dateTime"},
    "eventTime": {"@id": "caliper:eventTime", "@type": "xsd:dateTime"},
    "Posted": "verb:Posted"
  },
  "type": "MessageEvent",
  "id": "urn:uuid:0d015a85-abf5-49ee-abb1-46dbd57fe64e",
  "actor": {
    "id": "https://example.edu/users/554433",
    "type": "Person"
  },
  "action": "Posted",
  "object": {
    "id": "https://example.edu/sections/1/forums/2/topics/1/messages/2",
    "type": "Message",
    "body": "What does Caliper Event JSON-LD look like?",
    "dateCreated": "2018-12-15T10:15:00.000Z"
  },
  "eventTime": "2018-12-15T10:15:00.000Z",
  "edApp": "https://example.edu"
}

As the abbreviated ForumEvent example below demonstrates, in cases where an Event references the same Entity more than once (e.g., actor, member, user; group, organization), or a property is associated with a specific type (e.g., edApp) or an Entity possesses an IRI that is dereferenceable, consider expressing the value as a string corresponding to the entity’s IRI.

Example: membership and session references to actor and group expressed as IRIs

{
  "@context": "http://purl.imsglobal.org/ctx/caliper/v1p1",
  "id": "urn:uuid:a2f41f9c-d57d-4400-b3fe-716b9026334e",
  "type": "ForumEvent",
  "actor": {
    "id": "https://example.edu/users/554433",
    "type": "Person"
  },
  "action": "Subscribed",
  "object": {
    "id": "https://example.edu/terms/201801/courses/7/sections/1/forums/1",
    "type": "Forum",
    "name": "Caliper Forum",
    . . .
  },
  "eventTime": "2018-11-15T10:16:00.000Z",
  "edApp": {
    "id": "https://example.edu/forums",
    "type": "SoftwareApplication",
    . . .
  },
  "group": {
    "id": "https://example.edu/terms/201801/courses/7/sections/1",
    "type": "CourseSection",
    "courseNumber": "CPS 435-01",
    . . .
  },
  "membership": {
    "id": "https://example.edu/terms/201801/courses/7/sections/1/rosters/1",
    "type": "Membership",
    "member": "https://example.edu/users/554433",
    "organization": "https://example.edu/terms/201801/courses/7/sections/1",
    "roles": [ "Learner" ],
    . . .
  },
  "session": {
    "id": "https://example.edu/sessions/1f6442a482de72ea6ad134943812bff564a76259",
    "type": "Session",
    "user": "https://example.edu/users/554433",
    "startedAtTime": "2018-11-15T10:00:00.000Z"
  }
}

Indeed, the example ForumEvent could be thinned still further if each referenced Entity is provisioned with a dereferenceable IRI that permits consumers to retrieve a more robust representation of the object if required.

Example: Thinned ForumEvent comprised of (dereferenceable) IRI values

{
  "@context": "http://purl.imsglobal.org/ctx/caliper/v1p1",
  "id": "urn:uuid:a2f41f9c-d57d-4400-b3fe-716b9026334e",
  "type": "ForumEvent",
  "actor": "https://example.edu/users/554433",
  "action": "Subscribed",
  "object": "https://example.edu/terms/201801/courses/7/sections/1/forums/1",
  "eventTime": "2018-11-15T10:16:00.000Z",
  "edApp": "https://example.edu/forums",
  "group": "https://example.edu/terms/201801/courses/7/sections/1",
  "membership": "https://example.edu/terms/201801/courses/7/sections/1/rosters/1"
  "session": "https://example.edu/sessions/1f6442a482de72ea6ad134943812bff564a76259"
}

5.0 The Sensor API™

Caliper Sensor

Caliper defines an application programming interface (the Sensor API™) for marshalling and transmitting data to a target endpoints. Adopting one or more metric profiles ensures adherence to the information model; implementing the Sensor provides instrumented platforms, applications and services with a transport interface for communicating with data consumers.

5.1 Behavior

A Sensor MUST implement the following behaviors:

A Sensor MAY be assigned other responsibilities such as validating Caliper Event and Entity data but such capabilities need not be exposed to learning data providers.

5.2 Envelope

Caliper Event and Entity data MUST be transmitted inside a Caliper Envelope, a purpose-built JSON data structure that includes metadata about the emitting Sensor and the data payload.

Properties

Caliper Envelope properties are listed below. The sensor, sendTime, dataVersion and data properties are required. Each property MUST be referenced only once. No custom properties are permitted.

Property Type Description Disposition
sensor string A unique identifier assigned either to the Sensor or to the instrumented platform, application or service utilizing the Sensor. The identifier SHOULD be in the form of an IRI. Required
sendTime DateTime A date and time string value expressed with millisecond precision that indicates the time at which the Sensor issued the message. The value MUST be expressed using the format YYYY-MM-DDTHH:mm:ss.SSSZ set to UTC with no offset specified. Required
dataVersion string A string value indicating which version of the IMS Caliper Analytics® specification governs the form of the Caliper entities and events contained in the data payload. The value MUST be set to the IMS Caliper Context IRI used to resolve the meanings of the data payload’s terms and values. Required
data Array An ordered collection of one or more Caliper Event and/or Entity describe objects. The Sensor MAY mix Event and Entity describe data in the same Envelope. Required

5.3 JSON-LD Payload

Each Event and Entity describe transmitted inside an Envelope MUST be serialized as a JSON-LD document.

Example: Single Event Payload

{
  "sensor": "https://example.edu/sensors/1",
  "sendTime": "2018-11-15T11:05:01.000Z",
  "dataVersion": "http://purl.imsglobal.org/ctx/caliper/v1p1",
  "data": [{
    "@context": "http://purl.imsglobal.org/ctx/caliper/v1p1",
    "id": "urn:uuid:7e10e4f3-a0d8-4430-95bd-783ffae4d916",
    "type": "ToolUseEvent",
    "actor": {
      "id": "https://example.edu/users/554433",
      "type": "Person"
    },
    "action": "Used",
    "object": {
      "id": "https://example.edu",
      "type": "SoftwareApplication"
    },
    "eventTime": "2018-11-15T10:15:00.000Z",
    "edApp": "https://example.edu",
    "group": {
      "id": "https://example.edu/terms/201801/courses/7/sections/1",
      "type": "CourseSection",
      "courseNumber": "CPS 435-01",
      "academicSession": "Fall 2018"
    },
    "membership": {
      "id": "https://example.edu/terms/201801/courses/7/sections/1/rosters/1",
      "type": "Membership",
      "member": "https://example.edu/users/554433",
      "organization": "https://example.edu/terms/201801/courses/7/sections/1",
      "roles": ["Learner"],
      "status": "Active",
      "dateCreated": "2018-08-01T06:00:00.000Z"
    },
    "session": {
      "id": "https://example.edu/sessions/1f6442a482de72ea6ad134943812bff564a76259",
      "type": "Session",
      "startedAtTime": "2018-11-15T10:00:00.000Z"
    }
  }]
}

Example: Mixed Payload

{
  "sensor": "https://example.edu/sensors/1",
  "sendTime": "2018-11-15T11:05:01.000Z",
  "dataVersion": "http://purl.imsglobal.org/ctx/caliper/v1p1",
  "data": [
    {
      "@context": "http://purl.imsglobal.org/ctx/caliper/v1p1",
      "id": "https://example.edu/users/554433",
      "type": "Person",
      "dateCreated": "2018-08-01T06:00:00.000Z",
      "dateModified": "2018-09-02T11:30:00.000Z"
    },
    {
      "@context": "http://purl.imsglobal.org/ctx/caliper/v1p1",
      "id": "https://example.edu/terms/201801/courses/7/sections/1/assess/1?ver=v1p0",
      "type": "Assessment",
      "name": "Quiz One",
      "items": [
        {
          "id": "https://example.edu/terms/201801/courses/7/sections/1/assess/1/items/1",
          "type": "AssessmentItem"
        },
        {
          "id": "https://example.edu/terms/201801/courses/7/sections/1/assess/1/items/2",
          "type": "AssessmentItem"
        },
        {
          "id": "https://example.edu/terms/201801/courses/7/sections/1/assess/1/items/3",
          "type": "AssessmentItem"
        }
      ],
      "dateCreated": "2018-08-01T06:00:00.000Z",
      "dateModified": "2018-09-02T11:30:00.000Z",
      "datePublished": "2018-08-15T09:30:00.000Z",
      "dateToActivate": "2018-08-16T05:00:00.000Z",
      "dateToShow": "2018-08-16T05:00:00.000Z",
      "dateToStartOn": "2018-08-16T05:00:00.000Z",
      "dateToSubmit": "2018-09-28T11:59:59.000Z",
      "maxAttempts": 2,
      "maxScore": 15.0,
      "maxSubmits": 2,
      "version": "1.0"
    },
    {
      "@context": "http://purl.imsglobal.org/ctx/caliper/v1p1",
      "id": "https://example.edu",
      "type": "SoftwareApplication",
      "version": "v2"
    },
    {
      "@context": "http://purl.imsglobal.org/ctx/caliper/v1p1",
      "id": "https://example.edu/terms/201801/courses/7/sections/1",
      "type": "CourseSection",
      "academicSession": "Fall 2018",
      "courseNumber": "CPS 435-01",
      "name": "CPS 435 Learning Analytics, Section 01",
      "category": "seminar",
      "subOrganizationOf": {
        "id": "https://example.edu/terms/201801/courses/7",
        "type": "CourseOffering",
        "courseNumber": "CPS 435"
      },
      "dateCreated": "2018-08-01T06:00:00.000Z"
    },
    {
      "@context": "http://purl.imsglobal.org/ctx/caliper/v1p1",
      "id": "urn:uuid:c51570e4-f8ed-4c18-bb3a-dfe51b2cc594",
      "type": "AssessmentEvent",
      "actor": "https://example.edu/users/554433",
      "action": "Started",
      "object": "https://example.edu/terms/201801/courses/7/sections/1/assess/1?ver=v1p0",
      "generated": {
        "id": "https://example.edu/terms/201801/courses/7/sections/1/assess/1/users/554433/attempts/1",
        "type": "Attempt",
        "assignee": "https://example.edu/users/554433",
        "assignable": "https://example.edu/terms/201801/courses/7/sections/1/assess/1?ver=v1p0",
        "count": 1,
        "dateCreated": "2018-11-15T10:15:00.000Z",
        "startedAtTime": "2018-11-15T10:15:00.000Z"
      },
      "eventTime": "2018-11-15T10:15:00.000Z",
      "edApp": "https://example.edu",
      "group": "https://example.edu/terms/201801/courses/7/sections/1",
      "membership": {
        "id": "https://example.edu/terms/201801/courses/7/sections/1/rosters/1",
        "type": "Membership",
        "member": "https://example.edu/users/554433",
        "organization": "https://example.edu/terms/201801/courses/7/sections/1",
        "roles": [ "Learner" ],
        "status": "Active",
        "dateCreated": "2018-08-01T06:00:00.000Z"
      },
      "session": {
        "id": "https://example.edu/sessions/1f6442a482de72ea6ad134943812bff564a76259",
        "type": "Session",
        "startedAtTime": "2018-11-15T10:00:00.000Z"
      }
    },
    {
      "@context": "http://purl.imsglobal.org/ctx/caliper/v1p1",
      "id": "urn:uuid:dad88464-0c20-4a19-a1ba-ddf2f9c3ff33",
      "type": "AssessmentEvent",
      "actor": "https://example.edu/users/554433",
      "action": "Submitted",
      "object": "https://example.edu/terms/201801/courses/7/sections/1/assess/1?ver=v1p0",
      "generated": {
        "id": "https://example.edu/terms/201801/courses/7/sections/1/assess/1/users/554433/attempts/1",
        "type": "Attempt",
        "assignee": "https://example.edu/users/554433",
        "assignable": "https://example.edu/terms/201801/courses/7/sections/1/assess/1?ver=v1p0",
        "count": 1,
        "dateCreated": "2018-11-15T10:15:00.000Z",
        "startedAtTime": "2018-11-15T10:15:00.000Z",
        "endedAtTime": "2018-11-15T10:55:12.000Z",
        "duration": "PT40M12S"
      },
      "eventTime": "2018-11-15T10:25:30.000Z",
      "edApp": "https://example.edu",
      "group": "https://example.edu/terms/201801/courses/7/sections/1",
      "membership": {
        "id": "https://example.edu/terms/201801/courses/7/sections/1/rosters/1",
        "type": "Membership",
        "member": "https://example.edu/users/554433",
        "organization": "https://example.edu/terms/201801/courses/7/sections/1",
        "roles": ["Learner"],
        "status": "Active",
        "dateCreated": "2018-08-01T06:00:00.000Z"
      },
      "session": {
        "id": "https://example.edu/sessions/1f6442a482de72ea6ad134943812bff564a76259",
        "type": "Session",
        "startedAtTime": "2018-11-15T10:00:00.000Z"
      }
    },
    {
      "@context": "http://purl.imsglobal.org/ctx/caliper/v1p1",
      "id": "urn:uuid:a50ca17f-5971-47bb-8fca-4e6e6879001d",
      "type": "GradeEvent",
      "actor": {
        "id": "https://example.edu/autograder",
        "type": "SoftwareApplication",
        "version": "v2"
      },
      "action": "Graded",
      "object": {
        "id": "https://example.edu/terms/201801/courses/7/sections/1/assess/1/users/554433/attempts/1",
        "type": "Attempt",
        "assignee": "https://example.edu/users/554433",
        "assignable": "https://example.edu/terms/201801/courses/7/sections/1/assess/1?ver=v1p0",
        "count": 1,
        "dateCreated": "2018-11-15T10:15:00.000Z",
        "startedAtTime": "2018-11-15T10:15:00.000Z",
        "endedAtTime": "2018-11-15T10:55:12.000Z",
        "duration": "PT40M12S"
      },
      "eventTime": "2018-11-15T10:57:06.000Z",
      "edApp": "https://example.edu",
      "generated": {
        "id": "https://example.edu/terms/201801/courses/7/sections/1/assess/1/users/554433/attempts/1/scores/1",
        "type": "Score",
        "attempt": "https://example.edu/terms/201801/courses/7/sections/1/assess/1/users/554433/attempts/1",
        "maxScore": 15.0,
        "scoreGiven": 10.0,
        "scoredBy": "https://example.edu/autograder",
        "comment": "auto-graded exam",
        "dateCreated": "2018-11-15T10:56:00.000Z"
      },
      "group": "https://example.edu/terms/201801/courses/7/sections/1"
    }
  ]
}

5.4 HTTP Requests

A Caliper Sensor MUST be capable of transmitting Caliper data successfully to a Caliper Endpoint. Communication with an Endpoint is limited to message exchanges using the Hypertext Transport Protocol (HTTP) with the connection encrypted with Transport Layer Security (TLS).

Each message request MUST consist of a single JSON representation of a Caliper Envelope. Messages MUST be sent using the POST request method. The HTTP Host and Content-Type request header fields MUST be set.

A Sensor SHOULD also set the Authorization request header field using the “Bearer” authentication scheme described in RFC 6750, Section 2.1. The b64token authorization credential sent by a Sensor MUST be one the Endpoint can validate although the credential MAY be opaque to the emitting Sensor itself.

Request Header Description Disposition
Authorization Set the string value to a bearer token using the “Bearer” authentication scheme described in RFC 6750, Section 2.1 (e.g., Authorization: Bearer <token value>). Recommended
Content-Type Set the string value to the IANA media type “application/json”. Required
Host Set the string value to the Internet host and port number of the resource being requested. Required

6.0 Endpoint

A Caliper Endpoint MUST be capable of receiving Caliper data sent over HTTP by a Caliper Sensor using the standard POST request method. The connection MUST be secured with Transport Layer Security (TLS) and a valid TLS certificate provided. The Endpoint MUST be capable of accessing standard HTTP request headers and support message authentication that utilizes the HTTP Authorization request header “Bearer” authentication scheme as described in RFC 6750, Section 2.1.

6.1 HTTP Responses

Following receipt of a Sensor request message the Endpoint MUST reply with a response message. The response will include a three-digit status code indicating whether or not the Endpoint was able to understand and satisfy the request as defined by RFC 7231.

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

Caliper Endpoint implementers should bear in mind that some Caliper Sensor implementations may lack sophisticated error handling.

6.2 String Lengths and Storage

Certain Caliper data properties are expressed as strings of variable length. JSON-LD also defines a set of processing algorithms for transforming JSON-LD documents in ways that can change the length of keys and values that are expressed as IRIs, compact IRIs or Terms. Many implementers will choose to store each incoming Event and Entity describe received as a JSON-LD document or as a graph data structure consisting of nodes, edges and properties. Others may opt to normalize or “flatten” some or all of the nested JSON objects that comprise a Caliper Event or Entity. If the chosen persistence strategy involves normalizing Caliper semi-structured data, care should be taken to ensure that strings of character data can be stored without truncation. See Appendix G. Minimum Supported String Lengths for a list of Caliper data properties and recommended minimum string lengths.

Appendix A. Actions

Caliper includes a vocabulary of actions for describing learning interactions. Each action Term is based on the past-tense form of an English (en-US) verb. An action Term can also indicate a change in a particular characteristic of the object (e.g., resolution, size, speed, volume). Each action Term is mapped to a persistent IRI listed in the external IMS Caliper JSON-LD context. Each action is also linked to a brief definition (“gloss”) derived in whole or in part from Princeton University’s WordNet® project in order to eliminate ambiguity and aid natural language processing.

Each Caliper Event type supports one or more of the actions listed below. The Event action property string value MUST be set to the appropriate Term. Only one action may be specified per Event.

Term (IRI) WordNet® Gloss
Abandoned (http://purl.imsglobal.org/caliper/actions/Abandoned) Forsake, leave behind.
Activated (http://purl.imsglobal.org/caliper/actions/Activated) Make active or more active. Inverse of Deactivated.
Added (http://purl.imsglobal.org/caliper/actions/Added) Make an addition (to); join or combine or unite with others; increase the quality, quantity, size or scope of. Inverse of Removed.
Attached (http://purl.imsglobal.org/caliper/actions/Attached) Cause to be attached.
Bookmarked (http://purl.imsglobal.org/caliper/actions/Bookmarked) A marker that specifies a location of interest in a DigitalResource that is recorded for later retrieval.
ChangedResolution (http://purl.imsglobal.org/caliper/actions/ChangedResolution) Cause to change; make different; cause a transformation of the number of pixels per square inch on a computer-generated display.
ChangedSize (http://purl.imsglobal.org/caliper/actions/ChangedSize) Cause to change; make different; cause a transformation of the physical magnitude of something.
ChangedSpeed (http://purl.imsglobal.org/caliper/actions/ChangedSpeed) Cause to change; make different; cause a transformation of the rate at which something happens.
ChangedVolume (http://purl.imsglobal.org/caliper/actions/ChangedVolume) Cause to change; make different; cause a transformation of the magnitude of sound (usually in a specified direction).
Classified (http://purl.imsglobal.org/caliper/actions/Classified) Assign to a class or kind.
ClosedPopout (http://purl.imsglobal.org/caliper/actions/ClosedPopout) Close or shut a video popout. Inverse of OpenedPopout.
Commented (http://purl.imsglobal.org/caliper/actions/Commented) Make or write a comment on.
Completed (http://purl.imsglobal.org/caliper/actions/Completed) Come or bring to a finish or an end.
Created (http://purl.imsglobal.org/caliper/actions/Created) Make or cause to be or to become. Inverse of Deleted.
Deactivated (http://purl.imsglobal.org/caliper/actions/Deactivated) Make inactive. Inverse of Activated.
Deleted (http://purl.imsglobal.org/caliper/actions/Deleted) Wipe out digitally. Inverse of Created.
Described (http://purl.imsglobal.org/caliper/actions/Described) Give a description of.
DisabledClosedCaptioning (http://purl.imsglobal.org/caliper/actions/DisabledClosedCaptioning) Render unable to perform the visual display of a plain text transcription of audio output. Inverse of EnabledClosedCaptioning.
Disliked (http://purl.imsglobal.org/caliper/actions/Disliked) Have or feel a dislike or distaste for. Inverse of Liked.
EnabledClosedCaptioning (http://purl.imsglobal.org/caliper/actions/EnabledClosedCaptioning) Render capable or able the visual display of a plain text transcription of audio output. Inverse of DisabledClosedCaptioning.
Ended (http://purl.imsglobal.org/caliper/actions/Ended) Bring to an end or halt. Inverse of Started.
EnteredFullScreen (http://purl.imsglobal.org/caliper/actions/EnteredFullscreen) To come or go into a view mode that utilizes all the available display surface of a screen. Inverse of ExitedFullScreen.
ExitedFullScreen (http://purl.imsglobal.org/caliper/actions/ExitedFullscreen) Move out of or depart from a view mode that utilizes all the available display surface of a screen. Inverse of EnteredFullScreen.
ForwardedTo (http://purl.imsglobal.org/caliper/actions/ForwardedTo) Send or ship onward.
Graded (http://purl.imsglobal.org/caliper/actions/Graded) Assign a grade or rank to, according to one’s evaluation.
Hid (http://purl.imsglobal.org/caliper/actions/Hid Prevent from being seen or discovered. Inverse of Showed.
Highlighted (http://purl.imsglobal.org/caliper/actions/Highlighted) Move into the foreground to make more visible or prominent.
Identified (http://purl.imsglobal.org/caliper/actions/Identified) Recognize as being; establish the identity of someone or something.
JumpedTo (http://purl.imsglobal.org/caliper/actions/JumpedTo) Pass abruptly from one state or topic to another.
Liked (http://purl.imsglobal.org/caliper/actions/Liked) Be fond of. Inverse of Disliked.
Linked (http://purl.imsglobal.org/caliper/actions/Linked) Connect, fasten, or put together two or more pieces.
LoggedIn (http://purl.imsglobal.org/caliper/actions/LoggedIn) Enter a computer or software application. Inverse of LoggedOut.
LoggedOut (http://purl.imsglobal.org/caliper/actions/LoggedOut) Exit a computer or software application. Inverse of LoggedIn.
MarkedAsRead (http://purl.imsglobal.org/caliper/actions/MarkedAsRead) Mark: designate as if by a mark, read: interpret something that is written or printed. Inverse of MarkedAsUnread.
MarkedAsUnread (http://purl.imsglobal.org/caliper/actions/MarkedAsUnread) Inverse of MarkedAsRead.
Modified (http://purl.imsglobal.org/caliper/actions/Modified) Cause to change; make different; cause a transformation.
Muted (http://purl.imsglobal.org/caliper/actions/Muted) Deaden (a sound or noise). Inverse of Unmuted.
NavigatedTo (http://purl.imsglobal.org/caliper/actions/NavigatedTo) Direct the course; determine the direction of travelling.
OpenedPopout (http://purl.imsglobal.org/caliper/actions/OpenedPopout) Start to operate or function or cause to start operating or functioning a video popout. Inverse of ClosedPopout.
Paused (http://purl.imsglobal.org/caliper/actions/Paused) Cease an action temporarily. Inverse of Resumed.
Posted (http://purl.imsglobal.org/caliper/actions/Posted) To cause to be directed or transmitted to another place.
Questioned (http://purl.imsglobal.org/caliper/actions/Questioned) Pose a question.
Ranked (http://purl.imsglobal.org/caliper/actions/Ranked) Assign a rank or rating to.
Recommended (http://purl.imsglobal.org/caliper/actions/Recommended) Express a good opinion of.
Removed (http://purl.imsglobal.org/caliper/actions/Removed) Remove from sight. Inverse of Added.
Reset (http://purl.imsglobal.org/caliper/actions/Reset) Set anew.
Restarted (http://purl.imsglobal.org/caliper/actions/Restarted) Take up or begin anew, as in to start something, make progress but then stop and return to the beginning in order to start again.
Resumed (http://purl.imsglobal.org/caliper/actions/Resumed) Take up or begin anew, as in to start something, pause and then begin again at the location where the pause in action occurred. Inverse of Paused.
Retrieved (http://purl.imsglobal.org/caliper/actions/Retrieved) Obtain or retrieve from a storage device; as of information on a computer.
Reviewed (http://purl.imsglobal.org/caliper/actions/Reviewed) Appraise critically.
Rewound (http://purl.imsglobal.org/caliper/actions/Rewound) Wind up again.
Searched (http://purl.imsglobal.org/caliper/actions/Searched) Try to locate or discover, or try to establish the existence of.
Shared (http://purl.imsglobal.org/caliper/actions/Shared) Communicate.
Showed (http://purl.imsglobal.org/caliper/actions/Showed) Make visible or noticeable. Inverse of Hid.
Skipped (http://purl.imsglobal.org/caliper/actions/Skipped) Bypass.
Started (http://purl.imsglobal.org/caliper/actions/Started) Set in motion, cause to start. Inverse of Ended.
Submitted (http://purl.imsglobal.org/caliper/actions/Submitted) Hand over formally.
Subscribed (http://purl.imsglobal.org/caliper/actions/Subscribed) Receive or obtain regularly. Inverse of Unsubscribed.
Tagged (http://purl.imsglobal.org/caliper/actions/Tagged) Attach a tag or label to.
TimedOut (http://purl.imsglobal.org/caliper/actions/TimedOut) Cancellation of a user session after a predetermined time interval has occurred without activity.
Unmuted (http://purl.imsglobal.org/caliper/actions/Unmuted) Inverse of Muted.
Unsubscribed (http://purl.imsglobal.org/caliper/actions/Unsubscribed) Inverse of Subscribed.
Used (http://purl.imsglobal.org/caliper/actions/Used) Put into service; make work or employ for a particular purpose or for its inherent or natural purpose.
Viewed (http://purl.imsglobal.org/caliper/actions/Viewed) Look at carefully; study mentally.

Appendix B. Event Subtypes

B.1 AnnotationEvent

AnnotationEvent Highlighted image

A Caliper AnnotationEvent models the annotating of digital content. The resulting Annotation is also described and is subtyped for greater type specificity.

IRI

http://purl.imsglobal.org/caliper/AnnotationEvent

Supertype

Event

Supported Actors

Person

Supported Actions

Bookmarked, Highlighted, Shared, Tagged

Deprecated Actions

The following actions are deprecated and targeted for removal from the AnnotationEvent list of supported actions. The actions will be retained as entries in the Caliper actions vocabulary as many are likely to appear in future Metric Profiles.

Attached, Classified, Commented, Described, Disliked, Identified, Liked, Linked, Questioned, Ranked, Recommended, Subscribed

Supported Objects

DigitalResource

Supported Generated Entities

Annotation, BookmarkAnnotation, HighlightAnnotation, SharedAnnotation, TagAnnotation

Properties

AnnotationEvent inherits all properties defined by its supertype Event. Additional requirements are described below:

Property Type Description Disposition
id UUID The emitting application MUST provision the Event with a UUID. A version 4 UUID SHOULD be generated. The UUID MUST be expressed as a URN using the form urn:uuid:<UUID> per RFC 4122. Required
type Term The string value MUST be set to the Term AnnotationEvent. Required
actor Person | IRI the Person who initiated the action. The actor value MUST be expressed either as an object or as a string corresponding to the actor’s IRI. Required
action string The action or predicate that binds the actor or subject to the object. The value range is limited to the supported action terms listed above. Only one action term may be specified per Event. DEPRECATED actions SHOULD NOT be utilized. Required
object DigitalResource | IRI The annotated DigitalResource that constitutes the object of the interaction. The object value MUST be expressed either as an object or as a string corresponding to the object’s IRI. Required
eventTime DateTime An ISO 8601 date and time value expressed with millisecond precision that indicates when the Event occurred. The value MUST be expressed using the format YYYY-MM-DDTHH:mm:ss.SSSZ set to UTC with no offset specified. Required
target Frame | IRI A Frame that represents a particular segment or location within the object. The target value MUST be expressed either as an object or as a string corresponding to the target entity’s IRI. Optional
generated Annotation | IRI the generated Annotation. The generated value MUST be expressed either as an object or as a string corresponding to the generated entity’s IRI. Optional
edApp SoftwareApplication | IRI A SoftwareApplication that constitutes the application context. The edApp value MUST be expressed either as an object or as a string corresponding to the edApp’s IRI. Optional
referrer Entity | IRI An Entity that represents the referring context. A SoftwareApplication or DigitalResource will typically constitute the referring context. The referrer value MUST be expressed either as an object or as a string corresponding to the referrer’s IRI. Optional
group Organization | IRI An Organization that represents the group context. The group value MUST be expressed either as an object or as a string corresponding to the group’s IRI. Optional
membership Membership | IRI The relationship between the actor and the group in terms of roles assigned and current status. The membership value MUST be expressed either as an object or as a string corresponding to the membership entity’s IRI. Optional
session Session | IRI The current user Session. The session value MUST be expressed either as an object or as a string corresponding to the session’s IRI. Optional
federatedSession LtiSession | IRI If the Event occurs within the context of an LTI tool launch, the actor’s tool consumer LtiSession MAY be referenced. The federatedSession value MUST be expressed either as an object or as a string corresponding to the federatedSession’s IRI. Optional
extensions Object A map of additional attributes not defined by the model MAY be specified for a more concise representation of the AnnotationEvent. Optional

Example: AnnotationEvent (bookmarked)

{
  "@context": "http://purl.imsglobal.org/ctx/caliper/v1p1",
  "id": "urn:uuid:d4618c23-d612-4709-8d9a-478d87808067",
  "type": "AnnotationEvent",
  "actor": {
    "id": "https://example.edu/users/554433",
    "type": "Person"
  },
  "action": "Bookmarked",
  "object": {
    "id": "https://example.com/#/texts/imscaliperimplguide/cfi/6/10!/4/2/2/2@0:0",
    "type": "Page",
    "name": "IMS Caliper Implementation Guide, pg 5",
    "version": "1.1"
  },
  "generated": {
    "id": "https://example.com/users/554433/texts/imscaliperimplguide/bookmarks/1",
    "type": "BookmarkAnnotation",
    "annotator": "https://example.edu/users/554433",
    "annotated": "https://example.com/#/texts/imscaliperimplguide/cfi/6/10!/4/2/2/2@0:0",
    "bookmarkNotes": "Caliper profiles model discrete learning activities or supporting activities that facilitate learning.",
    "dateCreated": "2018-11-15T10:15:00.000Z"
  },
  "eventTime": "2018-11-15T10:15:00.000Z",
  "edApp": {
    "id": "https://example.com/reader",
    "type": "SoftwareApplication",
    "name": "ePub Reader",
    "version": "1.2.3"
  },
  "group": {
    "id": "https://example.edu/terms/201801/courses/7/sections/1",
    "type": "CourseSection",
    "courseNumber": "CPS 435-01",
    "academicSession": "Fall 2018"
  },
  "membership": {
    "id": "https://example.edu/terms/201801/courses/7/sections/1/rosters/1",
    "type": "Membership",
    "member": "https://example.edu/users/554433",
    "organization": "https://example.edu/terms/201801/courses/7/sections/1",
    "roles": [ "Learner" ],
    "status": "Active",
    "dateCreated": "2018-08-01T06:00:00.000Z"
  },
  "session": {
    "id": "https://example.com/sessions/1f6442a482de72ea6ad134943812bff564a76259",
    "type": "Session",
    "startedAtTime": "2018-11-15T10:00:00.000Z"
  }
}

B.2 AssessmentEvent

AssessmentEvent Started image

A Caliper AssessmentEvent models learner interactions with assessments instruments such as online tests or quizzes.

IRI

http://purl.imsglobal.org/caliper/AssessmentEvent

Supertype

Event

Supported Actors

Person

Supported Actions

Started, Paused, Resumed, Restarted, Reset, Submitted

Supported Objects

Assessment

Supported Generated Entities

Attempt

Properties

AssessmentEvent inherits all properties defined by its supertype Event. Additional requirements are described below:

Property Type Description Disposition
id UUID The emitting application MUST provision the Event with a UUID. A version 4 UUID SHOULD be generated. The UUID MUST be expressed as a URN using the form urn:uuid:<UUID> per RFC 4122. Required
type Term The string value MUST be set to the Term AssessmentEvent. Required
actor Person | IRI the Person who initiated the action. The actor value MUST be expressed either as an object or as a string corresponding to the actor’s IRI. Required
action Term the action or predicate that binds the actor or subject to the object. The value range is limited to the supported action terms listed above. Only one action Term may be specified per Event. Required
object Assessment | IRI The object value MUST be expressed either as an object or as a string corresponding to the object’s IRI. Required
eventTime DateTime An ISO 8601 date and time value expressed with millisecond precision that indicates when the Event occurred. The value MUST be expressed using the format YYYY-MM-DDTHH:mm:ss.SSSZ set to UTC with no offset specified. Required
target Entity | IRI An Entity that represents a particular segment or location within the object. The target value MUST be expressed either as an object or as a string corresponding to the target entity’s IRI. Optional
generated Attempt | IRI The generated value MUST be expressed either as an object or as a string corresponding to the generated entity’s IRI. Optional
edApp SoftwareApplication | IRI A SoftwareApplication that constitutes the application context. The edApp value MUST be expressed either as an object or as a string corresponding to the edApp’s IRI. Optional
referrer Entity | IRI An Entity that represents the referring context. A SoftwareApplication or DigitalResource will typically constitute the referring context. The referrer value MUST be expressed either as an object or as a string corresponding to the referrer’s IRI. Optional
group Organization | IRI An Organization that represents the group context. The group value MUST be expressed either as an object or as a string corresponding to the group’s IRI. Optional
membership Membership | IRI The relationship between the actor and the group in terms of roles assigned and current status. The membership value MUST be expressed either as an object or as a string corresponding to the membership entity’s IRI. Optional
session Session | IRI The current user Session. The session value MUST be expressed either as an object or as a string corresponding to the session’s IRI. Optional
federatedSession LtiSession | IRI If the Event occurs within the context of an LTI tool launch, the actor’s tool consumer LtiSession MAY be referenced. The federatedSession value MUST be expressed either as an object or as a string corresponding to the federatedSession’s IRI. Optional
extensions Object A map of additional attributes not defined by the model MAY be specified for a more concise representation of the AssessmentEvent. Optional

Example: AssessmentEvent (started)

{
  "@context": "http://purl.imsglobal.org/ctx/caliper/v1p1",
  "id": "urn:uuid:27734504-068d-4596-861c-2315be33a2a2",
  "type": "AssessmentEvent",
  "actor": {
    "id": "https://example.edu/users/554433",
    "type": "Person"
  },
  "action": "Started",
  "object": {
    "id": "https://example.edu/terms/201801/courses/7/sections/1/assess/1",
    "type": "Assessment",
    "name": "Quiz One",
    "dateToStartOn": "2018-11-14T05:00:00.000Z",
    "dateToSubmit": "2018-11-18T11:59:59.000Z",
    "maxAttempts": 2,
    "maxSubmits": 2,
    "maxScore": 25.0,
    "version": "1.0"
  },
  "generated": {
    "id": "https://example.edu/terms/201801/courses/7/sections/1/assess/1/users/554433/attempts/1",
    "type": "Attempt",
    "assignee": "https://example.edu/users/554433",
    "assignable": "https://example.edu/terms/201801/courses/7/sections/1/assess/1",
    "count": 1,
    "dateCreated": "2018-11-15T10:15:00.000Z",
    "startedAtTime": "2018-11-15T10:15:00.000Z"
  },
  "eventTime": "2018-11-15T10:15:00.000Z",
  "edApp": {
    "id": "https://example.edu",
    "type": "SoftwareApplication",
    "version": "v2"
  },
  "group": {
    "id": "https://example.edu/terms/201801/courses/7/sections/1",
    "type": "CourseSection",
    "courseNumber": "CPS 435-01",
    "academicSession": "Fall 2018"
  },
  "membership": {
    "id": "https://example.edu/terms/201801/courses/7/sections/1/rosters/1",
    "type": "Membership",
    "member": "https://example.edu/users/554433",
    "organization": "https://example.edu/terms/201801/courses/7/sections/1",
    "roles": [ "Learner" ],
    "status": "Active",
    "dateCreated": "2018-08-01T06:00:00.000Z"
  },
  "session": {
    "id": "https://example.edu/sessions/1f6442a482de72ea6ad134943812bff564a76259",
    "type": "Session",
    "startedAtTime": "2018-11-15T10:00:00.000Z"
  }
}

B.3 AssessmentItemEvent

AssessmentItemEvent Started image

A Caliper AssessmentItemEvent models a learner’s interaction with an individual AssessmentItem.

IRI

http://purl.imsglobal.org/caliper/AssessmentItemEvent

Supertype

Event

Supported Actors

Person

Supported Actions

Started, Skipped, Completed

Deprecated Actions

Reviewed, Viewed

Supported Objects

AssessmentItem

Supported Generated Entities

Response, FillinBlankResponse, MultipleChoiceResponse, MultipleResponseResponse, SelectTextResponse, TrueFalseResponse

Properties

AssessmentItemEvent inherits all properties defined by its supertype Event. Additional requirements are described below:

Property Type Description Disposition
id UUID The emitting application MUST provision the Event with a UUID. A version 4 UUID SHOULD be generated. The UUID MUST be expressed as a URN using the form urn:uuid:<UUID> per RFC 4122. Required
type Term The string value MUST be set to the Term AssessmentItemEvent. Required
actor Person | IRI The Person who initiated the action. The actor value MUST be expressed either as an object or as a string corresponding to the actor’s IRI. Required
action Term The action or predicate that binds the actor or subject to the object. The value range is limited to the action terms listed above. Only one action Term may be specified per Event. Required
object AssessmentItem | IRI The object value MUST be expressed either as an object or as a string corresponding to the object’s IRI. Required
eventTime DateTime An ISO 8601 date and time value expressed with millisecond precision that indicates when the Event occurred. The value MUST be expressed using the format YYYY-MM-DDTHH:mm:ss.SSSZ set to UTC with no offset specified. Required
target Entity | IRI An Entity that represents a particular segment or location within the object. The target value MUST be expressed either as an object or as a string corresponding to the target entity’s IRI. Optional
generated Response | IRI For a completed action a generated Response. The generated value MUST be expressed either as an object or as a string corresponding to the generated entity’s IRI. Optional
edApp SoftwareApplication | IRI A SoftwareApplication that constitutes the application context. The edApp value MUST be expressed either as an object or as a string corresponding to the edApp’s IRI. Optional
referrer AssessmentItem | IRI The previous AssessmentItem attempted MAY be specified as the referrer. The referrer value MUST be expressed either as an object or as a string corresponding to the referrer’s IRI. Optional
group Organization | IRI An Organization that represents the group context. The group value MUST be expressed either as an object or as a string corresponding to the group’s IRI. Optional
membership Membership | IRI The relationship between the actor and the group in terms of roles assigned and current status. The membership value MUST be expressed either as an object or as a string corresponding to the membership entity’s IRI. Optional
session Session | IRI The current user Session. The session value MUST be expressed either as an object or as a string corresponding to the session’s IRI. Optional
federatedSession LtiSession | IRI If the Event occurs within the context of an LTI tool launch, the actor’s tool consumer LtiSession MAY be referenced. The federatedSession value MUST be expressed either as an object or as a string corresponding to the federatedSession’s IRI. Optional
extensions Object A map of additional attributes not defined by the model MAY be specified for a more concise representation of the AssessmentItemEvent. Optional

Example: AssessmentItem (completed)

{
  "@context": "http://purl.imsglobal.org/ctx/caliper/v1p1",
  "id": "urn:uuid:e5891791-3d27-4df1-a272-091806a43dfb",
  "type": "AssessmentItemEvent",
  "actor": {
    "id": "https://example.edu/users/554433",
    "type": "Person"
  },
  "action": "Completed",
  "object": {
    "id": "https://example.edu/terms/201801/courses/7/sections/1/assess/1/items/3",
    "type": "AssessmentItem",
    "name": "Assessment Item 3",
    "isPartOf": {
      "id": "https://example.edu/terms/201801/courses/7/sections/1/assess/1",
      "type": "Assessment"
    },
    "dateToStartOn": "2018-11-14T05:00:00.000Z",
    "dateToSubmit": "2018-11-18T11:59:59.000Z",
    "maxAttempts": 2,
    "maxSubmits": 2,
    "maxScore": 1.0,
    "isTimeDependent": false,
    "version": "1.0"
  },
  "generated": {
    "id": "https://example.edu/terms/201801/courses/7/sections/1/assess/1/items/3/users/554433/responses/1",
    "type": "FillinBlankResponse",
    "attempt": {
      "id": "https://example.edu/terms/201801/courses/7/sections/1/assess/1/items/3/users/554433/attempts/1",
      "type": "Attempt",
      "assignee": "https://example.edu/users/554433",
      "assignable": {
        "id": "https://example.edu/terms/201801/courses/7/sections/1/assess/1/items/3",
        "type": "AssessmentItem",
        "name": "Assessment Item 3",
        "isPartOf": {
          "id": "https://example.edu/terms/201801/courses/7/sections/1/assess/1",
          "type": "Assessment"
        }
      },
      "isPartOf": "https://example.edu/terms/201801/courses/7/sections/1/assess/1/users/554433/attempts/1",
      "count": 1,
      "dateCreated": "2018-11-15T10:15:02.000Z",
      "startedAtTime": "2018-11-15T10:15:02.000Z",
      "endedAtTime": "2018-11-15T10:15:12.000Z"
    },
    "dateCreated": "2018-11-15T10:15:12.000Z",
    "startedAtTime": "2018-11-15T10:15:02.000Z",
    "endedAtTime": "2018-11-15T10:15:12.000Z",
    "values": ["subject", "object", "predicate"]
  },
  "eventTime": "2018-11-15T10:15:12.000Z",
  "edApp": {
    "id": "https://example.edu",
    "type": "SoftwareApplication",
    "version": "v2"
  },
  "group": {
    "id": "https://example.edu/terms/201801/courses/7/sections/1",
    "type": "CourseSection",
    "courseNumber": "CPS 435-01",
    "academicSession": "Fall 2018"
  },
  "membership": {
    "id": "https://example.edu/terms/201801/courses/7/sections/1/rosters/1",
    "type": "Membership",
    "member": "https://example.edu/users/554433",
    "organization": "https://example.edu/terms/201801/courses/7/sections/1",
    "roles": [
      "Learner"
    ],
    "status": "Active",
    "dateCreated": "2018-08-01T06:00:00.000Z"
  },
  "session": {
    "id": "https://example.edu/sessions/1f6442a482de72ea6ad134943812bff564a76259",
    "type": "Session",
    "startedAtTime": "2018-11-15T10:00:00.000Z"
  }
}

B.4 AssignableEvent

AssignableEvent Activated image

A Caliper AssignableEvent models activities associated with the assignment of digital content assigned to a learner for completion.

IRI

http://purl.imsglobal.org/caliper/AssignableEvent

Supertype

Event

Supported Actors

Person

Supported Actions

Activated, Deactivated, Started, Completed, Submitted, Reviewed

Deprecated Actions

The following actions are deprecated and targeted for removal from the AssignableEvent list of supported actions.

Abandoned, Hid, Showed

Supported Objects

AssignableDigitalResource

Supported Generated Entities

Attempt

Properties

AssignableEvent inherits all properties defined by its supertype Event. Additional requirements are described below:

Property Type Description Disposition
id UUID The emitting application MUST provision the Event with a UUID. A version 4 UUID SHOULD be generated. The UUID MUST be expressed as a URN using the form urn:uuid:<UUID> per RFC 4122. Required
type Term The string value MUST be set to the Term AssignableEvent. Required
actor Person | IRI The Person who initiated the action. The actor value MUST be expressed either as an object or as a string corresponding to the actor’s IRI. Required
action Term The action or predicate that binds the actor or subject to the object. The value range is limited to the action terms listed above. Only one action Term may be specified per Event. DEPRECATED actions SHOULD NOT be utilized. Required
object AssignableDigitalResource | IRI The AssignableDigitalResource that constitutes the object of the interaction. The object value MUST be expressed either as an object or as a string corresponding to the object’s IRI. Required
eventTime DateTime An ISO 8601 date and time value expressed with millisecond precision that indicates when the Event occurred. The value MUST be expressed using the format YYYY-MM-DDTHH:mm:ss.SSSZ set to UTC with no offset specified. Required
target Frame | IRI A Frame that represents a particular segment or location within the object. The target value MUST be expressed either as an object or as a string corresponding to the target entity’s IRI. Optional
generated Attempt | IRI For Started, Completed and Reviewed actions, the actor’s Attempt SHOULD be specified. The generated value MUST be expressed either as an object or as a string corresponding to the generated entity’s IRI. Optional
edApp SoftwareApplication | IRI A SoftwareApplication that constitutes the application context. The edApp value MUST be expressed either as an object or as a string corresponding to the edApp’s IRI. Optional
referrer Entity | IRI An Entity that represents the referring context. A SoftwareApplication or DigitalResource will typically constitute the referring context. The referrer value MUST be expressed either as an object or as a string corresponding to the referrer’s IRI. Optional
group Organization | IRI An Organization that represents the group context. The group value MUST be expressed either as an object or as a string corresponding to the group’s IRI. Optional
membership Membership | IRI The relationship between the actor and the group in terms of roles assigned and current status. The membership value MUST be expressed either as an object or as a string corresponding to the membership entity’s IRI. Optional
session Session | IRI The current user Session. The session value MUST be expressed either as an object or as a string corresponding to the session’s IRI. Optional
federatedSession LtiSession | IRI If the Event occurs within the context of an LTI tool launch, the actor’s tool consumer LtiSession MAY be referenced. The federatedSession value MUST be expressed either as an object or as a string corresponding to the federatedSession’s IRI. Optional
extensions Object A map of additional attributes not defined by the model MAY be specified for a more concise representation of the AssignableEvent. Optional

Example: AssignableEvent (activated)

{
  "@context": "http://purl.imsglobal.org/ctx/caliper/v1p1",
  "id": "urn:uuid:2635b9dd-0061-4059-ac61-2718ab366f75",
  "type": "AssignableEvent",
  "actor": {
    "id": "https://example.edu/users/112233",
    "type": "Person"
  },
  "action": "Activated",
  "object": {
    "id": "https://example.edu/terms/201801/courses/7/sections/1/assess/1",
    "type": "Assessment",
    "name": "Quiz One",
    "dateCreated": "2018-08-01T06:00:00.000Z",
    "dateModified": "2018-09-02T11:30:00.000Z",
    "datePublished": "2018-11-12T10:10:00.000Z",
    "dateToActivate": "2018-11-12T10:15:00.000Z",
    "dateToStartOn": "2018-11-14T05:00:00.000Z",
    "dateToSubmit": "2018-11-18T11:59:59.000Z",
    "maxAttempts": 2,
    "maxSubmits": 2,
    "maxScore": 25.0,
    "version": "1.0"
  },
  "eventTime": "2018-11-12T10:15:00.000Z",
  "edApp": {
    "id": "https://example.edu",
    "type": "SoftwareApplication",
    "version": "v2"
  },
  "group": {
    "id": "https://example.edu/terms/201801/courses/7/sections/1",
    "type": "CourseSection",
    "courseNumber": "CPS 435-01",
    "academicSession": "Fall 2018"
  },
  "membership": {
    "id": "https://example.edu/terms/201801/courses/7/sections/1/rosters/1",
    "type": "Membership",
    "member": "https://example.edu/users/112233",
    "organization": "https://example.edu/terms/201801/courses/7/sections/1",
    "roles": [ "Instructor" ],
    "status": "Active",
    "dateCreated": "2018-08-01T06:00:00.000Z"
  },
  "session": {
    "id": "https://example.edu/sessions/f095bbd391ea4a5dd639724a40b606e98a631823",
    "type": "Session",
    "startedAtTime": "2018-11-12T10:00:00.000Z"
  }
}

B.5 ForumEvent

ForumEvent Subscribed image

A Caliper ForumEvent models learners and others participating in online forum communities. Forums typically encompass one or more threads or topics to which members can subscribe, post messages and reply to other messages if a threaded discussion is permitted.

IRI

http://purl.imsglobal.org/caliper/ForumEvent

Supertype

Event

Supported Actors

Person

Supported Actions

Subscribed, Unsubscribed

Supported Objects

Forum

Properties

ForumEvent inherits all properties defined by its supertype Event. Additional requirements are described below:

Property Type Description Disposition
id UUID The emitting application MUST provision the Event with a UUID. A version 4 UUID SHOULD be generated. The UUID MUST be expressed as a URN using the form urn:uuid:<UUID> per RFC 4122. Required
type Term The string value MUST be set to the Term ForumEvent. Required
actor Person | IRI The Person who initiated the action. The actor value MUST be expressed either as an object or as a string corresponding to the actor’s IRI. Required
action Term The action or predicate that binds the actor or subject to the object. The value range is limited to the action terms listed above. Only one action Term may be specified per Event. Required
object Forum | IRI The Forum that comprises the object of this interaction. The object value MUST be expressed either as an object or as a string corresponding to the object’s IRI. Required
eventTime DateTime An ISO 8601 date and time value expressed with millisecond precision that indicates when the Event occurred. The value MUST be expressed using the format YYYY-MM-DDTHH:mm:ss.SSSZ set to UTC with no offset specified. Required
target Entity | IRI An Entity that represents a particular segment or location within the object. The target value MUST be expressed either as an object or as a string corresponding to the target entity’s IRI. Optional
generated Entity | IRI An Entity created or generated as a result of the interaction. The generated value MUST be expressed either as an object or as a string corresponding to the generated entity’s IRI. Optional
referrer Entity | IRI An Entity that represents the referring context. A SoftwareApplication or DigitalResource will typically constitute the referring context. Optional
edApp SoftwareApplication | IRI A SoftwareApplication that constitutes the application context. The edApp value MUST be expressed either as an object or as a string corresponding to the edApp’s IRI. Optional
referrer Entity | IRI An Entity that represents the referring context. A SoftwareApplication or DigitalResource will typically constitute the referring context. The referrer value MUST be expressed either as an object or as a string corresponding to the referrer’s IRI. Optional
group Organization | IRI An Organization that represents the group context. The group value MUST be expressed either as an object or as a string corresponding to the group’s IRI. Optional
membership Membership | IRI The relationship between the actor and the group in terms of roles assigned and current status. The membership value MUST be expressed either as an object or as a string corresponding to the membership entity’s IRI. Optional
session Session | IRI The current user Session. The session value MUST be expressed either as an object or as a string corresponding to the session’s IRI. Optional
federatedSession LtiSession | IRI If the Event occurs within the context of an LTI tool launch, the actor’s tool consumer LtiSession MAY be referenced. The federatedSession value MUST be expressed either as an object or as a string corresponding to the federatedSession’s IRI. Optional
extensions Object A map of additional attributes not defined by the model MAY be specified for a more concise representation of the ForumEvent. Optional

Example: ForumEvent (subscribed)

{
  "@context": "http://purl.imsglobal.org/ctx/caliper/v1p1",
  "id": "urn:uuid:a2f41f9c-d57d-4400-b3fe-716b9026334e",
  "type": "ForumEvent",
  "actor": {
    "id": "https://example.edu/users/554433",
    "type": "Person"
  },
  "action": "Subscribed",
  "object": {
    "id": "https://example.edu/terms/201801/courses/7/sections/1/forums/1",
    "type": "Forum",
    "name": "Caliper Forum",
    "isPartOf": {
      "id": "https://example.edu/terms/201801/courses/7/sections/1",
      "type": "CourseSection"
    },
    "dateCreated": "2018-09-14T11:00:00.000Z"
  },
  "eventTime": "2018-11-15T10:16:00.000Z",
  "edApp": {
    "id": "https://example.edu/forums",
    "type": "SoftwareApplication",
    "version": "v2"
  },
  "group": {
    "id": "https://example.edu/terms/201801/courses/7/sections/1",
    "type": "CourseSection",
    "courseNumber": "CPS 435-01",
    "academicSession": "Fall 2018"
  },
  "membership": {
    "id": "https://example.edu/terms/201801/courses/7/sections/1/rosters/1",
    "type": "Membership",
    "member": "https://example.edu/users/554433",
    "organization": "https://example.edu/terms/201801/courses/7/sections/1",
    "roles": [ "Learner" ],
    "status": "Active",
    "dateCreated": "2018-08-01T06:00:00.000Z"
  },
  "session": {
    "id": "https://example.edu/sessions/1f6442a482de72ea6ad134943812bff564a76259",
    "type": "Session",
    "startedAtTime": "2018-11-15T10:00:00.000Z"
  }
}

B.6 GradeEvent

GradeEvent Graded image

A Caliper GradeEvent models scoring or grading activities performed by an Agent, typically a Person or a SoftwareApplication. The Caliper GradeEvent replaces the deprecated OutcomeEvent.

IRI

http://purl.imsglobal.org/caliper/GradeEvent

Supertype

Event

Supported Actors

Agent

Supported Actions

Graded

Supported Objects

Attempt

Supported Generated Entities

Score

Properties

GradeEvent inherits all properties defined by its supertype Event. Additional requirements are described below:

Property Type Description Disposition
id UUID The emitting application MUST provision the Event with a UUID. A version 4 UUID SHOULD be generated. The UUID MUST be expressed as a URN using the form urn:uuid:<UUID> per RFC 4122. Required
type Term The string value MUST be set to the Term GradeEvent. Required
actor Agent | IRI An Agent, typically Person or SoftwareApplication, MUST be specified as the actor. The actor value MUST be expressed either as an object or as a string corresponding to the actor’s IRI. Required
action Term The action or predicate that binds the actor or subject to the object. The value range is limited to the action terms listed above. Only one action Term may be specified per Event. Required
object Attempt | IRI The completed Attempt. The object value MUST be expressed either as an object or as a string corresponding to the object’s IRI. Required
eventTime DateTime An ISO 8601 date and time value expressed with millisecond precision that indicates when the Event occurred. The value MUST be expressed using the format YYYY-MM-DDTHH:mm:ss.SSSZ set to UTC with no offset specified. Required
target Entity | IRI An Entity that represents a particular segment or location within the object. The target value MUST be expressed either as an object or as a string corresponding to the target entity’s IRI. Not Applicable
generated Score | IRI The generated Score SHOULD be provided. The generated value MUST be expressed either as an object or as a string corresponding to the generated entity’s IRI. Optional
edApp SoftwareApplication | IRI A SoftwareApplication that constitutes the application context. The edApp value MUST be expressed either as an object or as a string corresponding to the edApp’s IRI. Optional
referrer Entity | IRI An Entity that represents the referring context. A SoftwareApplication or DigitalResource will typically constitute the referring context. The referrer value MUST be expressed either as an object or as a string corresponding to the referrer’s IRI. Optional
group Organization | IRI An Organization that represents the group context. The group value MUST be expressed either as an object or as a string corresponding to the group’s IRI. Optional
membership Membership | IRI The relationship between the actor and the group in terms of roles assigned and current status. The membership value MUST be expressed either as an object or as a string corresponding to the membership entity’s IRI. Optional
session Session | IRI The current user Session. The session value MUST be expressed either as an object or as a string corresponding to the session’s IRI. Optional
federatedSession LtiSession | IRI If the Event occurs within the context of an LTI tool launch, the actor’s tool consumer LtiSession MAY be referenced. The federatedSession value MUST be expressed either as an object or as a string corresponding to the federatedSession’s IRI. Optional
extensions Object A map of additional attributes not defined by the model MAY be specified for a more concise representation of the GradeEvent. Optional

Example: GradeEvent (graded)

{
  "@context": "http://purl.imsglobal.org/ctx/caliper/v1p1",
  "id": "urn:uuid:a50ca17f-5971-47bb-8fca-4e6e6879001d",
  "type": "GradeEvent",
  "actor": {
    "id": "https://example.edu/autograder",
    "type": "SoftwareApplication",
    "version": "v2"
  },
  "action": "Graded",
  "object": {
    "id": "https://example.edu/terms/201801/courses/7/sections/1/assess/1/users/554433/attempts/1",
    "type": "Attempt",
    "assignee": {
      "id": "https://example.edu/users/554433",
      "type": "Person"
    },
    "assignable": {
      "id": "https://example.edu/terms/201801/courses/7/sections/1/assess/1",
      "type": "Assessment"
    },
    "count": 1,
    "dateCreated": "2018-11-15T10:05:00.000Z",
    "startedAtTime": "2018-11-15T10:05:00.000Z",
    "endedAtTime": "2018-11-15T10:55:12.000Z",
    "duration": "PT50M12S"
  },
  "eventTime": "2018-11-15T10:57:06.000Z",
  "edApp": "https://example.edu",
  "generated": {
    "id": "https://example.edu/terms/201801/courses/7/sections/1/assess/1/users/554433/attempts/1/scores/1",
    "type": "Score",
    "attempt": "https://example.edu/terms/201801/courses/7/sections/1/assess/1/users/554433/attempts/1",
    "maxScore": 15.0,
    "scoreGiven": 10.0,
    "scoredBy": "https://example.edu/autograder",
    "comment": "auto-graded exam",
    "dateCreated": "2018-11-15T10:56:00.000Z"
  },
  "group": {
    "id": "https://example.edu/terms/201801/courses/7/sections/1",
    "type": "CourseSection",
    "courseNumber": "CPS 435-01",
    "academicSession": "Fall 2018"
  }
}

B.7 MediaEvent

MediaEvent Paused image

A Caliper MediaEvent models interactions between learners and rich content such as audio, images and video.

IRI

http://purl.imsglobal.org/caliper/MediaEvent

Supertype

Event

Supported Actors

Person

Supported Actions

Started, Ended, Paused, Resumed, Restarted, ForwardedTo, JumpedTo, ChangedResolution, ChangedSize, ChangedSpeed, ChangedVolume, EnabledClosedCaptioning, DisabledClosedCaptioning, EnteredFullScreen, ExitedFullScreen, Muted, Unmuted, OpenedPopout, ClosedPopout

Deprecated Actions

The following actions are deprecated and targeted for removal from the MediaEvent list of supported actions.

Rewound

Supported Objects

AudioObject, ImageObject, MediaObject, VideoObject

Supported Target Entities

MediaLocation

Properties

MediaEvent inherits all properties defined by its supertype Event. Additional requirements are described below:

Property Type Description Disposition
id UUID The emitting application MUST provision the Event with a UUID. A version 4 UUID SHOULD be generated. The UUID MUST be expressed as a URN using the form urn:uuid:<UUID> per RFC 4122. Required
type Term The string value MUST be set to the Term MediaEvent. Required
actor Person | IRI The Person who initiated the action. The actor value MUST be expressed either as an object or as a string corresponding to the actor’s IRI. Required
action Term The action or predicate that binds the actor or subject to the object. The value range is limited to the action terms listed above. Only one action term may be specified per Event. Required
object MediaObject | IRI The MediaObject that constitutes the object of the interaction. The object value MUST be expressed either as an object or as a string corresponding to the object’s IRI. Required
eventTime DateTime An ISO 8601 date and time value expressed with millisecond precision that indicates when the Event occurred. The value MUST be expressed using the format YYYY-MM-DDTHH:mm:ss.SSSZ set to UTC with no offset specified. Required
target MediaLocation | IRI If the MediaEvent object is an AudioObject or VideoObject, a MediaLocation SHOULD be specified in order to provide the currentTime in the audio or video stream that marks the action. If the currentTime is specified, the value MUST be an ISO 8601 formatted duration, e.g., “PT30M54S”. The target value MUST be expressed either as an object or as a string corresponding to the target entity’s IRI. Optional
generated Entity | IRI An Entity created or generated as a result of the interaction. The generated value MUST be expressed either as an object or as a string corresponding to the generated entity’s IRI. Optional
edApp SoftwareApplication | IRI A SoftwareApplication that constitutes the application context. The edApp value MUST be expressed either as an object or as a string corresponding to the edApp’s IRI. Optional
referrer Entity | IRI An Entity that represents the referring context. A SoftwareApplication or DigitalResource will typically constitute the referring context. The referrer value MUST be expressed either as an object or as a string corresponding to the referrer’s IRI. Optional
group Organization | IRI An Organization that represents the group context. The group value MUST be expressed either as an object or as a string corresponding to the group’s IRI. Optional
membership Membership | IRI The relationship between the actor and the group in terms of roles assigned and current status. The membership value MUST be expressed either as an object or as a string corresponding to the membership entity’s IRI. Optional
session Session | IRI The current user Session. The session value MUST be expressed either as an object or as a string corresponding to the session’s IRI. Optional
federatedSession LtiSession | IRI If the Event occurs within the context of an LTI tool launch, the actor’s tool consumer LtiSession MAY be referenced. The federatedSession value MUST be expressed either as an object or as a string corresponding to the federatedSession’s IRI. Optional
extensions Object A map of additional attributes not defined by the model MAY be specified for a more concise representation of the MediaEvent. Optional

Example: MediaEvent (paused)

{
  "@context": "http://purl.imsglobal.org/ctx/caliper/v1p1",
  "id": "urn:uuid:956b4a02-8de0-4991-b8c5-b6eebb6b4cab",
  "type": "MediaEvent",
  "actor": {
    "id": "https://example.edu/users/554433",
    "type": "Person"
  },
  "action": "Paused",
  "object": {
    "id": "https://example.edu/UQVK-dsU7-Y",
    "type": "VideoObject",
    "name": "Information and Welcome",
    "mediaType": "video/ogg",
    "duration": "PT20M20S"
  },
  "target": {
    "id": "https://example.edu/UQVK-dsU7-Y?t=321",
    "type": "MediaLocation",
    "currentTime": "PT05M21S"
  },
  "eventTime": "2018-11-15T10:15:00.000Z",
  "edApp": "https://example.edu/player",
  "group": {
    "id": "https://example.edu/terms/201801/courses/7/sections/1",
    "type": "CourseSection",
    "courseNumber": "CPS 435-01",
    "academicSession": "Fall 2018"
  },
  "membership": {
    "id": "https://example.edu/terms/201801/courses/7/sections/1/rosters/1",
    "type": "Membership",
    "member": "https://example.edu/users/554433",
    "organization": "https://example.edu/terms/201801/courses/7/sections/1",
    "roles": [ "Learner" ],
    "status": "Active",
    "dateCreated": "2018-08-01T06:00:00.000Z"
  },
  "session": {
    "id": "https://example.edu/sessions/1f6442a482de72ea6ad134943812bff564a76259",
    "type": "Session",
    "startedAtTime": "2018-11-15T10:00:00.000Z"
  }
}

B.8 MessageEvent

MessageEvent Posted image

A Caliper MessageEvent describes a Person posting a Message or marking a post as either read or unread.

IRI

http://purl.imsglobal.org/caliper/MessageEvent

Supertype

Event

Supported Actors

Person

Supported Actions

MarkedAsRead, MarkedAsUnRead, Posted

Supported Objects

Message

Properties

MessageEvent inherits all properties defined by its supertype Event. Additional requirements are described below:

Property Type Description Disposition
id UUID The emitting application MUST provision the Event with a UUID. A version 4 UUID SHOULD be generated. The UUID MUST be expressed as a URN using the form urn:uuid:<UUID> per RFC 4122. Required
type Term The string value MUST be set to the Term MessageEvent. Required
actor Person | IRI The Person who initiated the action. The actor value MUST be expressed either as an object or as a string corresponding to the actor’s IRI. Required
action Term the action or predicate that binds the actor or subject to the object. The value range is limited to the action terms listed above. Only one action Term may be specified per Event. Required
object Message | IRI The Message that constitutes the object of the interaction. If the object represents a Message posted in reply to a previous post, the prior post prompting the Message SHOULD be referenced using the Message replyTo property. The object value MUST be expressed either as an object or as a string corresponding to the object’s IRI. Required
eventTime DateTime An ISO 8601 date and time value expressed with millisecond precision that indicates when the Event occurred. The value MUST be expressed using the format YYYY-MM-DDTHH:mm:ss.SSSZ set to UTC with no offset specified. Required
target Entity | IRI An Entity that represents a particular segment or location within the object. The target value MUST be expressed either as an object or as a string corresponding to the target entity’s IRI. Optional
generated Entity | IRI An Entity created or generated as a result of the interaction. The generated value MUST be expressed either as an object or as a string corresponding to the generated entity’s IRI. Optional
edApp SoftwareApplication | IRI A SoftwareApplication that constitutes the application context. The edApp value MUST be expressed either as an object or as a string corresponding to the edApp’s IRI. Optional
referrer Entity | IRI An Entity that represents the referring context. A SoftwareApplication or DigitalResource will typically constitute the referring context. The referrer value MUST be expressed either as an object or as a string corresponding to the referrer’s IRI. Optional
group Organization | IRI An Organization that represents the group context. The group value MUST be expressed either as an object or as a string corresponding to the group’s IRI. Optional
membership Membership | IRI The relationship between the actor and the group in terms of roles assigned and current status. The membership value MUST be expressed either as an object or as a string corresponding to the membership entity’s IRI. The session value MUST be expressed either as an object or as a string corresponding to the session’s IRI. Optional
session Session | IRI The current user Session. Optional
federatedSession LtiSession | IRI If the Event occurs within the context of an LTI tool launch, the actor’s tool consumer LtiSession MAY be referenced. The federatedSession value MUST be expressed either as an object or as a string corresponding to the federatedSession’s IRI. Optional
extensions Object A map of additional attributes not defined by the model MAY be specified for a more concise representation of the MessageEvent. Optional

Example: MessageEvent (posted)

{
  "@context": "http://purl.imsglobal.org/ctx/caliper/v1p1",
  "id": "urn:uuid:0d015a85-abf5-49ee-abb1-46dbd57fe64e",
  "type": "MessageEvent",
  "actor": {
    "id": "https://example.edu/users/554433",
    "type": "Person"
  },
  "action": "Posted",
  "object": {
    "id": "https://example.edu/terms/201801/courses/7/sections/1/forums/2/topics/1/messages/2",
    "type": "Message",
    "creators": [
      {
        "id": "https://example.edu/users/554433",
        "type": "Person"
      }
    ],
    "body": "Are the Caliper Sensor reference implementations production-ready?",
    "isPartOf": {
      "id": "https://example.edu/terms/201801/courses/7/sections/1/forums/2/topics/1",
      "type": "Thread",
      "name": "Caliper Adoption",
      "isPartOf": {
        "id": "https://example.edu/terms/201801/courses/7/sections/1/forums/2",
        "type": "Forum",
        "name": "Caliper Forum"
      }
    },
    "dateCreated": "2018-11-15T10:15:00.000Z"
  },
  "eventTime": "2018-11-15T10:15:00.000Z",
  "edApp": {
    "id": "https://example.edu/forums",
    "type": "SoftwareApplication",
    "version": "v2"
  },
  "group": {
    "id": "https://example.edu/terms/201801/courses/7/sections/1",
    "type": "CourseSection",
    "courseNumber": "CPS 435-01",
    "academicSession": "Fall 2018"
  },
  "membership": {
    "id": "https://example.edu/terms/201801/courses/7/sections/1/rosters/1",
    "type": "Membership",
    "member": "https://example.edu/users/554433",
    "organization": "https://example.edu/terms/201801/courses/7/sections/1",
    "roles": [ "Learner" ],
    "status": "Active",
    "dateCreated": "2018-08-01T06:00:00.000Z"
  },
  "session": {
    "id": "https://example.edu/sessions/1f6442a482de72ea6ad134943812bff564a76259",
    "type": "Session",
    "startedAtTime": "2018-11-15T10:00:00.000Z"
  }
}

Example: MessageEvent (posted reply)

{
  "@context": "http://purl.imsglobal.org/ctx/caliper/v1p1",
  "id": "urn:uuid:aed54386-a3fb-45ff-90f9-a35d3daaf031",
  "type": "MessageEvent",
  "actor": {
    "id": "https://example.edu/users/778899",
    "type": "Person"
  },
  "action": "Posted",
  "object": {
    "id": "https://example.edu/terms/201801/courses/7/sections/1/forums/2/topics/1/messages/3",
    "type": "Message",
    "creators": [
      {
        "id": "https://example.edu/users/778899",
        "type": "Person"
      }
    ],
    "replyTo": {
      "id": "https://example.edu/terms/201801/courses/7/sections/1/forums/2/topics/1/messages/2",
      "type": "Message"
    },
    "isPartOf": {
      "id": "https://example.edu/terms/201801/courses/7/sections/1/forums/2/topics/1",
      "type": "Thread",
      "isPartOf": {
        "id": "https://example.edu/terms/201801/courses/7/sections/1/forums/2",
        "type": "Forum"
      }
    },
    "dateCreated": "2018-11-15T10:15:30.000Z"
  },
  "eventTime": "2018-11-15T10:15:30.000Z",
  "edApp": {
    "id": "https://example.edu/forums",
    "type": "SoftwareApplication",
    "version": "v2"
  },
  "group": {
    "id": "https://example.edu/terms/201801/courses/7/sections/1",
    "type": "CourseSection",
    "courseNumber": "CPS 435-01",
    "academicSession": "Fall 2018"
  },
  "membership": {
    "id": "https://example.edu/terms/201801/courses/7/sections/1/rosters/1",
    "type": "Membership",
    "member": "https://example.edu/users/778899",
    "organization": "https://example.edu/terms/201801/courses/7/sections/1",
    "roles": [ "Learner" ],
    "status": "Active",
    "dateCreated": "2018-08-01T06:00:00.000Z"
  },
  "session": {
    "id": "https://example.edu/sessions/1d6fa9adf16f4892650e4305f6cf16610905cd50",
    "type": "Session",
    "startedAtTime": "2018-11-15T10:12:00.000Z"
  }
}

B.9 NavigationEvent

NavigationEvent NavigatedTo image

A Caliper NavigationEvent models an actor traversing a network of digital resources.

IRI

http://purl.imsglobal.org/caliper/NavigationEvent

Supertype

Event

Supported Actors

Person

Supported Actions

NavigatedTo

Supported Objects

DigitalResource, SoftwareApplication

Supported Target Entities

Frame

Properties

NavigationEvent inherits all properties defined by its supertype Event. Additional requirements are described below:

Property Type Description Disposition
id UUID The emitting application MUST provision the Event with a UUID. A version 4 UUID SHOULD be generated. The UUID MUST be expressed as a URN using the form urn:uuid:<UUID> per RFC 4122. Required
type Term The string value MUST be set to the Term NavigationEvent. Required
actor Person | IRI The Person who initiated the action. The actor value MUST be expressed either as an object or as a string corresponding to the actor’s IRI. Required
action Term The action or predicate that binds the actor or subject to the object. The value range is limited to the action terms listed above. Only one action Term may be specified per Event. Required
object DigitalResource | SoftwareApplication | IRI The DigitalResource or SoftwareApplication that constitutes the object of the interaction. The object value MUST be expressed either as an object or as a string corresponding to the object’s IRI. Required
eventTime DateTime An ISO 8601 date and time value expressed with millisecond precision that indicates when the Event occurred. The value MUST be expressed using the format YYYY-MM-DDTHH:mm:ss.SSSZ set to UTC with no offset specified. Required
target Frame | IRI A Frame that represents a particular segment or location within the object. The target value MUST be expressed either as an object or as a string corresponding to the target entity’s IRI. Optional
generated Entity | IRI An Entity created or generated as a result of the interaction. The generated value MUST be expressed either as an object or as a string corresponding to the generated entity’s IRI. Optional
edApp SoftwareApplication | IRI A SoftwareApplication that constitutes the application context. The edApp value MUST be expressed either as an object or as a string corresponding to the edApp’s IRI. Optional
referrer DigitalResource | SoftwareApplication | IRI The DigitalResource or SoftwareApplication that constitutes the referring context. The referrer value MUST be expressed either as an object or as a string corresponding to the referrer’s IRI. Optional
group Organization | IRI An Organization that represents the group context. The group value MUST be expressed either as an object or as a string corresponding to the group’s IRI. Optional
membership Membership | IRI The relationship between the actor and the group in terms of roles assigned and current status. The membership value MUST be expressed either as an object or as a string corresponding to the membership entity’s IRI. Optional
session Session | IRI The current user Session. The session value MUST be expressed either as an object or as a string corresponding to the session’s IRI. Optional
federatedSession LtiSession | IRI If the Event occurs within the context of an LTI tool launch, the actor’s tool consumer LtiSession MAY be referenced. The federatedSession value MUST be expressed either as an object or as a string corresponding to the federatedSession’s IRI. Optional
extensions Object A map of additional attributes not defined by the model MAY be specified for a more concise representation of the NavigationEvent. Optional

Deprecated Properties

The following NavigationEvent properties have been DEPRECATED and MUST NOT be utilized. The properties will be removed in a future version of Caliper.

Property Type Description Disposition
navigatedFrom DigitalResource, SoftwareApplication The DigitalResource or SoftwareApplication that constitutes the referring context. navigatedFrom has been DEPRECATED and replaced by referrer. Optional

Example: NavigationEvent (navigated to)

{
  "@context": "http://purl.imsglobal.org/ctx/caliper/v1p1",
  "id": "urn:uuid:ff9ec22a-fc59-4ae1-ae8d-2c9463ee2f8f",
  "type": "NavigationEvent",
  "actor": {
    "id": "https://example.edu/users/554433",
    "type": "Person"
  },
  "action": "NavigatedTo",
  "object": {
    "id": "https://example.edu/terms/201801/courses/7/sections/1/pages/2",
    "type": "WebPage",
    "name": "Learning Analytics Specifications",
    "description": "Overview of Learning Analytics Specifications with particular emphasis on IMS Caliper.",
    "dateCreated": "2018-08-01T09:00:00.000Z"
  },
  "eventTime": "2018-11-15T10:15:00.000Z",
  "referrer": {
    "id": "https://example.edu/terms/201801/courses/7/sections/1/pages/1",
    "type": "WebPage"
  },
  "edApp": "https://example.edu",
  "group": {
    "id": "https://example.edu/terms/201801/courses/7/sections/1",
    "type": "CourseSection",
    "courseNumber": "CPS 435-01",
    "academicSession": "Fall 2018"
  },
  "membership": {
    "id": "https://example.edu/terms/201801/courses/7/sections/1/rosters/1",
    "type": "Membership",
    "member": "https://example.edu/users/554433",
    "organization": "https://example.edu/terms/201801/courses/7/sections/1",
    "roles": [ "Learner" ],
    "status": "Active",
    "dateCreated": "2018-08-01T06:00:00.000Z"
  },
  "session": {
    "id": "https://example.edu/sessions/1f6442a482de72ea6ad134943812bff564a76259",
    "type": "Session",
    "startedAtTime": "2018-11-15T10:00:00.000Z"
  }
}

B.10 OutcomeEvent DEPRECATED

A Caliper OutcomeEvent models scoring or grading activities performed by an Agent, typically a Person or a SoftwareApplication. OutcomeEvent is DEPRECATED and will be removed in a future version of the specification. Use GradeEvent instead.

IRI

http://purl.imsglobal.org/caliper/OutcomeEvent

Supertype

Event

Supported Actors

Agent

Supported Actions

Graded

Supported Objects

Attempt

Supported Generated Entities

Result

Properties

OutcomeEvent inherits all properties defined by its supertype Event. Additional requirements are described below:

Property Type Description Disposition
id UUID The emitting application MUST provision the Event with a UUID. A version 4 UUID SHOULD be generated. The UUID MUST be expressed as a URN using the form urn:uuid:<UUID> per RFC 4122. Required
type Term The string value MUST be set to the Term OutcomeEvent. Required
actor Agent | IRI An Agent, typically Person or SoftwareApplication, MUST be specified as the actor. The actor value MUST be expressed either as an object or as a string corresponding to the actor’s IRI. Required
action Term The action or predicate that binds the actor or subject to the object. The value range is limited to the action terms listed above. Only one action Term may be specified per Event. Required
object Attempt | IRI The completed Attempt. The object value MUST be expressed either as an object or as a string corresponding to the object’s IRI. Required
eventTime DateTime An ISO 8601 date and time value expressed with millisecond precision that indicates when the Event occurred. The value MUST be expressed using the format YYYY-MM-DDTHH:mm:ss.SSSZ set to UTC with no offset specified. Required
target Entity | IRI An Entity that represents a particular segment or location within the object. The target value MUST be expressed either as an object or as a string corresponding to the target entity’s IRI. Not Applicable
generated Result | IRI The generated Result SHOULD be provided. The generated value MUST be expressed either as an object or as a string corresponding to the generated entity’s IRI. Optional
edApp SoftwareApplication | IRI A SoftwareApplication that constitutes the application context. The edApp value MUST be expressed either as an object or as a string corresponding to the edApp’s IRI. Optional
referrer Entity | IRI An Entity that represents the referring context. A SoftwareApplication or DigitalResource will typically constitute the referring context. The referrer value MUST be expressed either as an object or as a string corresponding to the referrer’s IRI. Optional
group Organization | IRI An Organization that represents the group context. The group value MUST be expressed either as an object or as a string corresponding to the group’s IRI. Optional
membership Membership | IRI The relationship between the actor and the group in terms of roles assigned and current status. The membership value MUST be expressed either as an object or as a string corresponding to the membership entity’s IRI. Optional
session Session | IRI The current user Session. The session value MUST be expressed either as an object or as a string corresponding to the session’s IRI. Optional
federatedSession LtiSession | IRI If the Event occurs within the context of an LTI tool launch, the actor’s tool consumer LtiSession MAY be referenced. The federatedSession value MUST be expressed either as an object or as a string corresponding to the federatedSession’s IRI. Optional
extensions Object A map of additional attributes not defined by the model MAY be specified for a more concise representation of the OutcomeEvent. Optional

B.11 ReadingEvent DEPRECATED

A Caliper ReadingEvent models an actor reading textural content. ReadingEvent is DEPRECATED and will be removed in a future version of the specification. It SHOULD NOT be referenced.

IRI

http://purl.imsglobal.org/caliper/ReadingEvent

Supertype

Event

Supported Actors

Person

Supported Actions

NavigatedTo, Searched, Viewed

Supported Objects

DigitalResource

Supported Target Entities

Frame

Properties

ReadingEvent inherits all properties defined by its supertype Event. Additional requirements are described below:

Property Type Description Disposition
id UUID The emitting application MUST provision the Event with a UUID. A version 4 UUID SHOULD be generated. The UUID MUST be expressed as a URN using the form urn:uuid:<UUID> per RFC 4122. Required
type Term The string value MUST be set to the Term ReadingEvent. Required
actor Person | IRI The Person who initiated the action. The actor value MUST be expressed either as an object or as a string corresponding to the actor’s IRI. Required
action Term the action or predicate that binds the actor or subject to the object. The value range is limited to the action terms listed above. Only one action Term may be specified per Event. Required
object DigitalResource | IRI The DigitalResource that constitutes the object of the interaction. The object value MUST be expressed either as an object or as a string corresponding to the object’s IRI. Required
eventTime DateTime An ISO 8601 date and time value expressed with millisecond precision that indicates when the Event occurred. The value MUST be expressed using the format YYYY-MM-DDTHH:mm:ss.SSSZ set to UTC with no offset specified. Required
target Frame | IRI A Frame that represents a particular segment or location within the object. The target value MUST be expressed either as an object or as a string corresponding to the target entity’s IRI. Optional
generated Entity | IRI An Entity created or generated as a result of the interaction. The generated value MUST be expressed either as an object or as a string corresponding to the generated entity’s IRI. Optional
edApp SoftwareApplication | IRI A SoftwareApplication that constitutes the application context. The edApp value MUST be expressed either as an object or as a string corresponding to the edApp’s IRI. Optional
referrer Entity | IRI An Entity that represents the referring context. A SoftwareApplication or DigitalResource will typically constitute the referring context. The referrer value MUST be expressed either as an object or as a string corresponding to the referrer’s IRI. Optional
group Organization | IRI An Organization that represents the group context. The group value MUST be expressed either as an object or as a string corresponding to the group’s IRI. Optional
membership Membership | IRI The relationship between the actor and the group in terms of roles assigned and current status. The membership value MUST be expressed either as an object or as a string corresponding to the membership entity’s IRI. Optional
session Session | IRI The current user Session. The session value MUST be expressed either as an object or as a string corresponding to the session’s IRI. Optional
federatedSession LtiSession | IRI If the Event occurs within the context of an LTI tool launch, the actor’s tool consumer LtiSession MAY be referenced. The federatedSession value MUST be expressed either as an object or as a string corresponding to the federatedSession’s IRI. Optional
extensions Object A map of additional attributes not defined by the model MAY be specified for a more concise representation of the ReadingEvent. Optional

B.12 SessionEvent

SessionEvent LoggedIn image
SessionEvent LoggedOut image
SessionEvent TimedOut image

A Caliper SessionEvent models the creation and subsequent termination of a user session established by a Person interacting with a SoftwareApplication.

IRI

http://purl.imsglobal.org/caliper/SessionEvent

Supertype

Event

Supported Actors

Person, SoftwareApplication

Supported Actions

LoggedIn, LoggedOut, TimedOut

Supported Objects

Session, SoftwareApplication

Properties

SessionEvent inherits all properties defined by its supertype Event. Additional requirements are described below:

Property Type Description Disposition
id UUID The emitting application MUST provision the Event with a UUID. A version 4 UUID SHOULD be generated. The UUID MUST be expressed as a URN using the form urn:uuid:<UUID> per RFC 4122. Required
type Term The string value MUST be set to the Term SessionEvent. Required
actor Person | SoftwareApplication | IRI The Agent who initiated the action. For LoggedIn and LoggedOut actions a Person MUST be specified as the actor. For a TimedOut action a SoftwareApplication MUST be specified as the actor. The actor value MUST be expressed either as an object or as a string corresponding to the actor’s IRI. Required
action Term The action or predicate that binds the actor or subject to the object. The value range is limited to the action terms listed above. Only one action Term may be specified per Event. Required
object Session | SoftwareApplication | IRI For LoggedIn and LoggedOut actions a SoftwareApplication MUST be specified as the object. For a TimedOut action the Session MUST be specified as the object. The object value MUST be expressed either as an object or as a string corresponding to the object’s IRI. Required
eventTime DateTime An ISO 8601 date and time value expressed with millisecond precision that indicates when the Event occurred. The value MUST be expressed using the format YYYY-MM-DDTHH:mm:ss.SSSZ set to UTC with no offset specified. Required
target DigitalResource | IRI When logging in to a SoftwareApplication, if the actor is attempting to access a particular DigitalResource it MAY be designated as the target of the interaction. The target value MUST be expressed either as an object or as a string corresponding to the target entity’s IRI. Optional
generated Entity | IRI An Entity created or generated as a result of the interaction. The generated value MUST be expressed either as an object or as a string corresponding to the generated entity’s IRI. Optional
edApp SoftwareApplication | IRI A SoftwareApplication that constitutes the application context. The edApp value MUST be expressed either as an object or as a string corresponding to the edApp’s IRI. Optional
referrer DigitalResource | SoftwareApplication | IRI The DigitalResource or SoftwareApplication that constitutes the referring context MAY be specified as the referrer. The referrer value MUST be expressed either as an object or as a string corresponding to the referrer’s IRI. Optional
group Organization | IRI An Organization that represents the group context. The group value MUST be expressed either as an object or as a string corresponding to the group’s IRI. Optional
membership Membership | IRI The relationship between the actor and the group in terms of roles assigned and current status. The membership value MUST be expressed either as an object or as a string corresponding to the membership entity’s IRI. Optional
session Session | IRI the relevant user Session. The session value MUST be expressed either as an object or as a string corresponding to the session’s IRI. Optional
federatedSession LtiSession | IRI If the Event occurs within the context of an LTI tool launch, the actor’s tool consumer LtiSession MAY be referenced. The federatedSession value MUST be expressed either as an object or as a string corresponding to the federatedSession’s IRI. Optional
extensions Object A map of additional attributes not defined by the model MAY be specified for a more concise representation of the SessionEvent. Optional

Example: SessionEvent (logged in)

{
  "@context": "http://purl.imsglobal.org/ctx/caliper/v1p1",
  "id": "urn:uuid:fcd495d0-3740-4298-9bec-1154571dc211",
  "type": "SessionEvent",
  "actor": {
    "id": "https://example.edu/users/554433",
    "type": "Person"
  },
  "action": "LoggedIn",
  "object": {
    "id": "https://example.edu",
    "type": "SoftwareApplication",
    "version": "v2"
  },
  "eventTime": "2018-11-15T10:15:00.000Z",
  "edApp": "https://example.edu",
  "session": {
    "id": "https://example.edu/sessions/1f6442a482de72ea6ad134943812bff564a76259",
    "type": "Session",
    "user": "https://example.edu/users/554433",
    "dateCreated": "2018-11-15T10:00:00.000Z",
    "startedAtTime": "2018-11-15T10:00:00.000Z"
  }
}

Example: SessionEvent (logged out)

{
  "@context": "http://purl.imsglobal.org/ctx/caliper/v1p1",
  "id": "urn:uuid:a438f8ac-1da3-4d48-8c86-94a1b387e0f6",
  "type": "SessionEvent",
  "actor": {
    "id": "https://example.edu/users/554433",
    "type": "Person"
  },
  "action": "LoggedOut",
  "object": {
    "id": "https://example.edu",
    "type": "SoftwareApplication",
    "version": "v2"
  },
  "eventTime": "2018-11-15T11:05:00.000Z",
  "edApp": "https://example.edu",
  "session": {
    "id": "https://example.edu/sessions/1f6442a482de72ea6ad134943812bff564a76259",
    "type": "Session",
    "user": "https://example.edu/users/554433",
    "dateCreated": "2018-11-15T10:00:00.000Z",
    "startedAtTime": "2018-11-15T10:00:00.000Z",
    "endedAtTime": "2018-11-15T11:05:00.000Z",
    "duration": "PT3000S"
  }
}

Example: SessionEvent (timed out)

{
  "@context": "http://purl.imsglobal.org/ctx/caliper/v1p1",
  "id": "urn:uuid:4e61cf6c-ffbe-45bc-893f-afe7ad4079dc",
  "type": "SessionEvent",
  "actor": {
    "id": "https://example.edu",
    "type": "SoftwareApplication"
  },
  "action": "TimedOut",
  "object": {
    "id": "https://example.edu/sessions/7d6b88adf746f0692e2e873308b78c60fb13a864",
    "type": "Session",
    "user": {
      "id": "https://example.edu/users/112233",
      "type": "Person"
    },
    "dateCreated": "2018-11-15T10:15:00.000Z",
    "startedAtTime": "2018-11-15T10:15:00.000Z",
    "endedAtTime": "2018-11-15T11:15:00.000Z",
    "duration": "PT3600S"
  },
  "eventTime": "2018-11-15T11:15:00.000Z",
  "edApp": "https://example.edu"
}

B.13 ThreadEvent

ThreadEvent MarkedAsRead image

A Caliper ThreadEvent models an actor interacting with a Forum thread or topic.

IRI

http://purl.imsglobal.org/caliper/ThreadEvent

Supertype

Event

Supported Actors

Person

Supported Actions

MarkedAsRead, MarkedAsUnRead

Supported Objects

Thread

Properties

ThreadEvent inherits all properties defined by its supertype Event. Additional requirements are described below:

Property Type Description Disposition
id UUID The emitting application MUST provision the Event with a UUID. A version 4 UUID SHOULD be generated. The UUID MUST be expressed as a URN using the form urn:uuid:<UUID> per RFC 4122. Required
type Term The string value MUST be set to the term ThreadEvent. Required
actor Person | IRI The Person who initiated the action. The actor value MUST be expressed either as an object or as a string corresponding to the actor’s IRI. Required
action Term The action or predicate that binds the actor or subject to the object. The value range is limited to the action terms listed above. Only one action Term may be specified per Event. Required
object Thread | IRI The Thread that constitutes the object of the interaction. The object value MUST be expressed either as an object or as a string corresponding to the object’s IRI. Required
eventTime DateTime An ISO 8601 date and time value expressed with millisecond precision that indicates when the Event occurred. The value MUST be expressed using the format YYYY-MM-DDTHH:mm:ss.SSSZ set to UTC with no offset specified. Required
target Entity | IRI An Entity that represents a particular segment or location within the object. The target value MUST be expressed either as an object or as a string corresponding to the target entity’s IRI. Optional
generated Entity | IRI An Entity created or generated as a result of the interaction. The generated value MUST be expressed either as an object or as a string corresponding to the generated entity’s IRI. Optional
edApp SoftwareApplication | IRI A SoftwareApplication that constitutes the application context. The edApp value MUST be expressed either as an object or as a string corresponding to the edApp’s IRI. Optional
referrer Entity | IRI An Entity that represents the referring context. A SoftwareApplication or DigitalResource will typically constitute the referring context. The referrer value MUST be expressed either as an object or as a string corresponding to the referrer’s IRI. Optional
group Organization | IRI An Organization that represents the group context. The group value MUST be expressed either as an object or as a string corresponding to the group’s IRI. Optional
membership Membership | IRI The relationship between the actor and the group in terms of roles assigned and current status. The membership value MUST be expressed either as an object or as a string corresponding to the membership entity’s IRI. Optional
session Session | IRI The current user Session. The session value MUST be expressed either as an object or as a string corresponding to the session’s IRI. Optional
federatedSession LtiSession | IRI If the Event occurs within the context of an LTI tool launch, the actor’s tool consumer LtiSession MAY be referenced. The federatedSession value MUST be expressed either as an object or as a string corresponding to the federatedSession’s IRI. Optional
extensions Object A map of additional attributes not defined by the model MAY be specified for a more concise representation of the ThreadEvent. Optional

Example: ThreadEvent (marked as read)

{
  "@context": "http://purl.imsglobal.org/ctx/caliper/v1p1",
  "id": "urn:uuid:6b20c5ba-301c-4e56-85a0-2f3d9a94c249",
  "type": "ThreadEvent",
  "actor": {
    "id": "https://example.edu/users/554433",
    "type": "Person"
  },
  "action": "MarkedAsRead",
  "object": {
    "id": "https://example.edu/terms/201801/courses/7/sections/1/forums/1/topics/1",
    "type": "Thread",
    "name": "Caliper Information Model",
    "isPartOf": {
      "id": "https://example.edu/terms/201801/courses/7/sections/1/forums/1",
      "type": "Forum",
      "name": "Caliper Forum",
      "dateCreated": "2018-11-15T10:15:00.000Z"
    },
    "dateCreated": "2018-11-15T10:16:00.000Z"
  },
  "eventTime": "2018-11-15T10:16:00.000Z",
  "edApp": {
    "id": "https://example.edu/forums",
    "type": "SoftwareApplication",
    "version": "v2"
  },
  "group": {
    "id": "https://example.edu/terms/201801/courses/7/sections/1",
    "type": "CourseSection",
    "courseNumber": "CPS 435-01",
    "academicSession": "Fall 2018"
  },
  "membership": {
    "id": "https://example.edu/terms/201801/courses/7/sections/1/rosters/1",
    "type": "Membership",
    "member": "https://example.edu/users/554433",
    "organization": "https://example.edu/terms/201801/courses/7/sections/1",
    "roles": [ "Learner" ],
    "status": "Active",
    "dateCreated": "2018-08-01T06:00:00.000Z"
  },
  "session": {
    "id": "https://example.edu/sessions/1f6442a482de72ea6ad134943812bff564a76259",
    "type": "Session",
    "startedAtTime": "2018-11-15T10:00:00.000Z"
  }
}

B.14 ToolUseEvent

ToolUseEvent Used image

A Caliper ToolUseEvent models a Person using a learning tool in a way that the tool’s creators have determined is an indication of a learning interaction.

IRI

http://purl.imsglobal.org/caliper/ToolUseEvent

Supertype

Event

Supported Actors

Person

Supported Actions

Used

Supported Objects

SoftwareApplication

Properties

ToolUseEvent inherits all properties defined by its supertype Event. Additional requirements are described below:

Property Type Description Disposition
id UUID The emitting application MUST provision the Event with a UUID. A version 4 UUID SHOULD be generated. The UUID MUST be expressed as a URN using the form urn:uuid:<UUID> per RFC 4122. Required
type Term The string value MUST be set to the Term ToolUseEvent. Required
actor Person | IRI The Person who initiated the action. The actor value MUST be expressed either as an object or as a string corresponding to the actor’s IRI. Required
action Term The action or predicate that binds the actor or subject to the object. The value range is limited to the action terms listed above. Only one action Term may be specified per Event. Required
object SoftwareApplication | IRI The SoftwareApplication that constitutes the object of the interaction. The object value MUST be expressed either as an object or as a string corresponding to the object’s IRI. Required
eventTime DateTime An ISO 8601 date and time value expressed with millisecond precision that indicates when the Event occurred. The value MUST be expressed using the format YYYY-MM-DDTHH:mm:ss.SSSZ set to UTC with no offset specified. Required
target SoftwareApplication | IRI A SoftwareApplication that represents a particular capability or feature provided by the object. The target value MUST be expressed either as an object or as a string corresponding to the target entity’s IRI. Optional
generated Entity | IRI An Entity created or generated as a result of the interaction. The generated value MUST be expressed either as an object or as a string corresponding to the generated entity’s IRI. Optional
edApp SoftwareApplication | IRI A SoftwareApplication that constitutes the application context. The edApp value MUST be expressed either as an object or as a string corresponding to the edApp’s IRI. Optional
referrer Entity | IRI An Entity that represents the referring context. A SoftwareApplication or DigitalResource will typically constitute the referring context. The referrer value MUST be expressed either as an object or as a string corresponding to the referrer’s IRI. Optional
group Organization | IRI An Organization that represents the group context. The group value MUST be expressed either as an object or as a string corresponding to the group’s IRI. Optional
membership Membership | IRI The relationship between the actor and the group in terms of roles assigned and current status. The membership value MUST be expressed either as an object or as a string corresponding to the membership entity’s IRI. Optional
session Session | IRI The current user Session. The session value MUST be expressed either as an object or as a string corresponding to the session’s IRI. Optional
federatedSession LtiSession | IRI If the Event occurs within the context of an LTI tool launch, the actor’s tool consumer LtiSession MAY be referenced. The federatedSession value MUST be expressed either as an object or as a string corresponding to the federatedSession’s IRI. Optional
extensions Object A map of additional attributes not defined by the model MAY be specified for a more concise representation of the ToolUseEvent. Optional

Example: ToolUseEvent (used)

{
  "@context": "http://purl.imsglobal.org/ctx/caliper/v1p1",
  "id": "urn:uuid:7e10e4f3-a0d8-4430-95bd-783ffae4d916",
  "type": "ToolUseEvent",
  "actor": {
    "id": "https://example.edu/users/554433",
    "type": "Person"
  },
  "action": "Used",
  "object": {
    "id": "https://example.edu",
    "type": "SoftwareApplication"
  },
  "eventTime": "2018-11-15T10:15:00.000Z",
  "edApp": "https://example.edu",
  "group": {
    "id": "https://example.edu/terms/201801/courses/7/sections/1",
    "type": "CourseSection",
    "courseNumber": "CPS 435-01",
    "academicSession": "Fall 2018"
  },
  "membership": {
    "id": "https://example.edu/terms/201801/courses/7/sections/1/rosters/1",
    "type": "Membership",
    "member": "https://example.edu/users/554433",
    "organization": "https://example.edu/terms/201801/courses/7/sections/1",
    "roles": [ "Learner" ],
    "status": "Active",
    "dateCreated": "2018-08-01T06:00:00.000Z"
  },
  "session": {
    "id": "https://example.edu/sessions/1f6442a482de72ea6ad134943812bff564a76259",
    "type": "Session",
    "startedAtTime": "2018-11-15T10:00:00.000Z"
  }
}

B.15 ViewEvent

ViewEvent Viewed image

A Caliper ViewEvent describes an actor’s examination of digital content whenever the activity emphasizes thoughtful observation or study as opposed to the mere retrieval of a resource.

IRI

http://purl.imsglobal.org/caliper/ViewEvent

Supertype

Event

Supported Actors

Person

Supported Actions

Viewed

Supported Objects

DigitalResource

Supported Target Entities

Frame

Properties

ViewEvent inherits all properties defined by its supertype Event. Additional requirements are described below:

Property Type Description Disposition
id UUID The emitting application MUST provision the Event with a UUID. A version 4 UUID SHOULD be generated. The UUID MUST be expressed as a URN using the form urn:uuid:<UUID> per RFC 4122. Required
type Term The string value MUST be set to the Term ViewEvent.
actor Person | IRI The Person who initiated the action. The actor value MUST be expressed either as an object or as a string corresponding to the actor’s IRI. Required
action Term The action or predicate that binds the actor or subject to the object. The value range is limited to the action terms listed above. Only one action Term may be specified per Event. Required
object DigitalResource | IRI The DigitalResource that constitutes the object of the interaction. The object value MUST be expressed either as an object or as a string corresponding to the object’s IRI. Required
eventTime DateTime An ISO 8601 date and time value expressed with millisecond precision that indicates when the Event occurred. The value MUST be expressed using the format YYYY-MM-DDTHH:mm:ss.SSSZ set to UTC with no offset specified. Required
target Frame | IRI A Frame that represents a particular segment or location within the object. The target value MUST be expressed either as an object or as a string corresponding to the target entity’s IRI. Optional
generated Entity | IRI An Entity created or generated as a result of the interaction. The generated value MUST be expressed either as an object or as a string corresponding to the generated entity’s IRI. Optional
edApp SoftwareApplication | IRI A SoftwareApplication that constitutes the application context. The edApp value MUST be expressed either as an object or as a string corresponding to the edApp’s IRI. Optional
referrer Entity | IRI An Entity that represents the referring context. A SoftwareApplication or DigitalResource will typically constitute the referring context. The referrer value MUST be expressed either as an object or as a string corresponding to the referrer’s IRI. Optional
group Organization | IRI An Organization that represents the group context. The group value MUST be expressed either as an object or as a string corresponding to the group’s IRI. Optional
membership Membership | IRI The relationship between the actor and the group in terms of roles assigned and current status. The membership value MUST be expressed either as an object or as a string corresponding to the membership entity’s IRI. Optional
session Session | IRI The current user Session. The session value MUST be expressed either as an object or as a string corresponding to the session’s IRI. Optional
federatedSession LtiSession | IRI If the Event occurs within the context of an LTI tool launch, the actor’s tool consumer LtiSession MAY be referenced. The federatedSession value MUST be expressed either as an object or as a string corresponding to the federatedSession’s IRI. Optional
extensions Object A map of additional attributes not defined by the model MAY be specified for a more concise representation of the ViewEvent. Optional

Example ViewEvent (viewed)

{
  "@context": "http://purl.imsglobal.org/ctx/caliper/v1p1",
  "id": "urn:uuid:cd088ca7-c044-405c-bb41-0b2a8506f907",
  "type": "ViewEvent",
  "actor": {
    "id": "https://example.edu/users/554433",
    "type": "Person"
  },
  "action": "Viewed",
  "object": {
    "id": "https://example.edu/etexts/201.epub",
    "type": "Document",
    "name": "IMS Caliper Implementation Guide",
    "dateCreated": "2018-08-01T06:00:00.000Z",
    "datePublished": "2018-10-01T06:00:00.000Z",
    "version": "1.1"
  },
  "eventTime": "2018-11-15T10:15:00.000Z",
  "edApp": "https://example.edu",
  "group": {
    "id": "https://example.edu/terms/201801/courses/7/sections/1",
    "type": "CourseSection",
    "courseNumber": "CPS 435-01",
    "academicSession": "Fall 2018"
  },
  "membership": {
    "id": "https://example.edu/terms/201801/courses/7/sections/1/rosters/1",
    "type": "Membership",
    "member": "https://example.edu/users/554433",
    "organization": "https://example.edu/terms/201801/courses/7/sections/1",
    "roles": [ "Learner" ],
    "status": "Active",
    "dateCreated": "2018-08-01T06:00:00.000Z"
  },
  "session": {
    "id": "https://example.edu/sessions/1f6442a482de72ea6ad134943812bff564a76259",
    "type": "Session",
    "startedAtTime": "2018-11-15T10:00:00.000Z"
  }
}

Appendix C. Entity Subtypes

C.1 Agent

A Caliper Agent is a generic type that represents an Entity that can initiate or perform an action.

Utilize Agent only if no suitable subtype exists to represent the actor being described.

IRI

http://purl.imsglobal.org/caliper/Agent

Supertype

Entity

Properties

Agent inherits all properties defined by its supertype Entity. Additional requirements are described below:

Property Type Description Disposition
id IRI A valid IRI MUST be specified. The IRI MUST be unique and persistent. The IRI SHOULD also be dereferenceable, i.e., capable of returning a representation of the resource. A URI employing the URN scheme MAY be provided in cases where a Linked Data friendly HTTP URI is either unavailable or inappropriate. Required
type Term The string value MUST be set to the Term Agent. Required
name string A string value comprising a word or phrase by which the Agent is known. Optional
description string A string value comprising a brief, written representation of the Agent. Optional
dateCreated DateTime An ISO 8601 date and time value expressed with millisecond precision that describes when the Agent was created. The value MUST be expressed using the format YYYY-MM-DDTHH:mm:ss.SSSZ set to UTC with no offset specified. Optional
dateModified DateTime An ISO 8601 date and time value expressed with millisecond precision that describes when the Agent was last changed or modified. The value MUST be expressed using the format YYYY-MM-DDTHH:mm:ss.SSSZ set to UTC with no offset specified. Optional
extensions Object A map of additional attributes not defined by the model MAY be specified for a more concise representation of the Agent. Optional

Subtypes

Organization, Person, SoftwareApplication

Example

{
  "@context": "http://purl.imsglobal.org/ctx/caliper/v1p1",
  "id": "https://example.edu/agents/99999",
  "type": "Agent",
  "dateCreated": "2018-08-01T06:00:00.000Z",
  "dateModified": "2018-09-02T11:30:00.000Z"
}

C.2 Annotation

A Caliper Annotation is a generic type that represents a comment, explanation, highlight, mark, note, question or tag linked to a DigitalResource. The act of sharing a DigitalResource with others is also considered a form of annotation.

Utilize Annotation only if no suitable subtype exists to represent the annotation being described.

IRI

http://purl.imsglobal.org/caliper/Annotation

Supertype

Entity

Properties

Annotation inherits all properties defined by its supertype Entity. Additional properties and requirements are described below:

Property Type Description Disposition
id IRI A valid IRI MUST be specified. The IRI MUST be unique and persistent. The IRI SHOULD also be dereferenceable, i.e., capable of returning a representation of the resource. A URI employing the URN scheme MAY be provided in cases where a Linked Data friendly HTTP URI is either unavailable or inappropriate. Required
type Term The string value MUST be set to the Term Annotation. Required
name string A string value comprising a word or phrase by which the Annotation is known. Optional
description string A string value comprising a brief, written representation of the Annotation. Optional
annotator Person | IRI The Person who created the Annotation. The annotator value MUST be expressed either as an object or as a string corresponding to the annotator’s IRI. Optional
annotated DigitalResource | IRI The DigitalResource that was annotated by the annotator. The annotated value MUST be expressed either as an object or as a string corresponding to the annotated resource’s IRI. Optional
dateCreated DateTime An ISO 8601 date and time value expressed with millisecond precision that describes when the Annotation was created. The value MUST be expressed using the format YYYY-MM-DDTHH:mm:ss.SSSZ set to UTC with no offset specified. Optional
dateModified DateTime An ISO 8601 date and time value expressed with millisecond precision that describes when the Annotation was last changed or modified. The value MUST be expressed using the format YYYY-MM-DDTHH:mm:ss.SSSZ set to UTC with no offset specified. Optional
extensions Object A map of additional attributes not defined by the model MAY be specified for a more concise representation of the Annotation. Optional

Subtypes

BookmarkAnnotation, HighlightAnnotation, SharedAnnotation, TagAnnotation

Example

{
  "@context": "http://purl.imsglobal.org/ctx/caliper/v1p1",
  "id": "https://example.com/users/554433/texts/imscaliperimplguide/annotations/1",
  "type": "Annotation",
  "annotator": {
    "id": "https://example.edu/users/554433",
    "type": "Person"
  },
  "annotated": {
    "id": "https://example.com/#/texts/imscaliperimplguide/cfi/6/10!/4/2/2/2@0:0",
    "type": "Page"
  },
  "dateCreated": "2018-08-01T06:00:00.000Z"
}

C.3 Assessment

A Caliper Assessment represents an assessment instrument such as a test or quiz.

IRI

http://purl.imsglobal.org/caliper/Assessment

Supertype

DigitalResourceCollection, AssignableDigitalResource

Properties

Assessment inherits all the properties and requirements defined by its supertypes DigitalResourceCollection and AssignableDigitalResource. Additional requirements are described below:

Property Type Description Disposition
id IRI A valid IRI MUST be specified. The IRI MUST be unique and persistent. The IRI SHOULD also be dereferenceable, i.e., capable of returning a representation of the resource. A URI employing the URN scheme MAY be provided in cases where a Linked Data friendly HTTP URI is either unavailable or inappropriate. Required
type Term The string value MUST be set to the Term Assessment. Required
name string A string value comprising a word or phrase by which the Assessment is known. Optional
description string A string value comprising a brief, written representation of the Assessment. Optional
creators Array An ordered collection of Agent entities, typically of type Person, that are responsible for bringing this Assessment into being. Each array item MUST be expressed either as an object or as a string corresponding to the item’s IRI. Optional
mediaType string A string value drawn from the list of IANA approved media types and subtypes that identifies the file format of this Assessment. Optional
keywords Array An ordered collection of one or more string values that represent tags or labels used to identify the Assessment. Optional
learningObjectives Array An ordered collection of one or more LearningObjective entities that describe what a learner is expected to comprehend or accomplish after engaging with this Assessment. Each array item MUST be expressed either as an object or as a string corresponding to the item’s IRI. Optional
isPartOf Entity | IRI A related Entity that includes or incorporates this Assessment as a part of its whole. The isPartOf value MUST be expressed either as an object or as a string corresponding to the associated entity’s IRI. Optional
items Array An ordered collection of AssessmentItem entities. Each array item MUST be expressed either as an object or as a string corresponding to the item’s IRI. Optional
dateCreated DateTime An ISO 8601 date and time value expressed with millisecond precision that describes when the Assessment was created. The value MUST be expressed using the format YYYY-MM-DDTHH:mm:ss.SSSZ set to UTC with no offset specified. Optional
dateModified DateTime An ISO 8601 date and time value expressed with millisecond precision that describes when the Assessment was last changed or modified. The value MUST be expressed using the format YYYY-MM-DDTHH:mm:ss.SSSZ set to UTC with no offset specified. Optional
datePublished DateTime An ISO 8601 date and time value expressed with millisecond precision that provides the publication date of the Assessment. The value MUST be expressed using the format YYYY-MM-DDTHH:mm:ss.SSSZ set to UTC with no offset specified. Optional
dateToActivate DateTime An ISO 8601 date and time value expressed with millisecond precision that describes when the Assessment was activated. The value MUST be expressed using the format YYYY-MM-DDTHH:mm:ss.SSSZ set to UTC with no offset specified. Optional
dateToShow DateTime An ISO 8601 date and time value expressed with millisecond precision that describes when the Assessment should be shown or made available to learners. The value MUST be expressed using the format YYYY-MM-DDTHH:mm:ss.SSSZ set to UTC with no offset specified. Optional
dateToStartOn DateTime An ISO 8601 date and time value expressed with millisecond precision that describes when the Assessment can be started. The value MUST be expressed using the format YYYY-MM-DDTHH:mm:ss.SSSZ set to UTC with no offset specified. Optional
dateToSubmit DateTime An ISO 8601 date and time value expressed with millisecond precision that describes when the Assessment is to be submitted for evaluation. The value MUST be expressed using the format YYYY-MM-DDTHH:mm:ss.SSSZ set to UTC with no offset specified. Optional
maxAttempts integer A non-negative integer that designates the number of permitted attempts. Optional
maxSubmits integer A non-negative integer that designates the number of permitted submissions. Optional
maxScore decimal A number with a fractional part denoted by a decimal separator that designates the maximum score permitted. Optional
version string A string value that designates the current form or version of the Assessment. Optional
extensions Object A map of additional attributes not defined by the model MAY be specified for a more concise representation of the Assessment. Optional

Deprecated Properties

The following Assessment properties have been DEPRECATED and MUST NOT be utilized. The properties will be removed in a future version of Caliper.

Property Type Description Disposition
objectType string A string value that designates the DigitalResource type. Optional
alignedLearningObjective Array An ordered collection of one or more LearningObjective entities that describe what a learner is expected to comprehend or accomplish after engaging with a DigitalResource. alignedLearningObjective has been DEPRECATED and replaced by learningObjectives. Optional

Example

{
  "@context": "http://purl.imsglobal.org/ctx/caliper/v1p1",
  "id": "https://example.edu/terms/201801/courses/7/sections/1/assess/1",
  "type": "Assessment",
  "name": "Quiz One",
  "items": [
    {
      "id": "https://example.edu/terms/201801/courses/7/sections/1/assess/1/items/1",
      "type": "AssessmentItem"
    },
    {
      "id": "https://example.edu/terms/201801/courses/7/sections/1/assess/1/items/2",
      "type": "AssessmentItem"
    },
    {
      "id": "https://example.edu/terms/201801/courses/7/sections/1/assess/1/items/3",
      "type": "AssessmentItem"
    }
  ],
  "dateCreated": "2018-08-01T06:00:00.000Z",
  "dateModified": "2018-09-02T11:30:00.000Z",
  "datePublished": "2018-08-15T09:30:00.000Z",
  "dateToActivate": "2018-08-16T05:00:00.000Z",
  "dateToShow": "2018-08-16T05:00:00.000Z",
  "dateToStartOn": "2018-08-16T05:00:00.000Z",
  "dateToSubmit": "2018-09-28T11:59:59.000Z",
  "maxAttempts": 2,
  "maxScore": 15.0,
  "maxSubmits": 2,
  "version": "1.0"
}

*### C.4 AssessmentItem

A Caliper AssessmentItem represents a single test question.

IRI

http://purl.imsglobal.org/caliper/AssessmentItem

Supertype

AssignableDigitalResource

Properties

AssessmentItem inherits all the properties and requirements defined by its supertype AssignableDigitalResource. Additional requirements are described below:

Property Type Description Disposition
id IRI A valid IRI MUST be specified. The IRI MUST be unique and persistent. The IRI SHOULD also be dereferenceable, i.e., capable of returning a representation of the resource. A URI employing the URN scheme MAY be provided in cases where a Linked Data friendly HTTP URI is either unavailable or inappropriate. Required
type Term The string value MUST be set to the Term AssessmentItem. Required
name string A string value comprising a word or phrase by which the AssessmentItem is known. Optional
description string A string value comprising a brief, written representation of the AssessmentItem. Optional
creators Array An ordered collection of Agent entities, typically of type Person, that are responsible for bringing this AssessmentItem into being. Each array item MUST be expressed either as an object or as a string corresponding to the item’s IRI. Optional
mediaType string A string value drawn from the list of IANA approved media types and subtypes that identifies the file format of this AssessmentItem. Optional
keywords Array An ordered collection of one or more string values that represent tags or labels used to identify the AssessmentItem. Optional
learningObjectives Array An ordered collection of one or more LearningObjective entities that describe what a learner is expected to comprehend or accomplish after engaging with this AssessmentItem. Each array item MUST be expressed either as an object or as a string corresponding to the item’s IRI. Optional
isTimeDependent Boolean A boolean value indicating whether or not interacting with the item is time dependent. Optional
isPartOf Entity | IRI A related Entity, typically an Assessment, that includes or incorporates the AssessmentItem as a part of its whole. The isPartOf value MUST be expressed either as an object or as a string corresponding to the associated entity’s IRI. Optional
dateCreated DateTime An ISO 8601 date and time value expressed with millisecond precision that describes when the AssessmentItem was created. The value MUST be expressed using the format YYYY-MM-DDTHH:mm:ss.SSSZ set to UTC with no offset specified. Optional
dateModified DateTime An ISO 8601 date and time value expressed with millisecond precision that describes when the AssessmentItem was last changed or modified. The value MUST be expressed using the format YYYY-MM-DDTHH:mm:ss.SSSZ set to UTC with no offset specified. Optional
datePublished DateTime An ISO 8601 date and time value expressed with millisecond precision that provides the publication date of the AssessmentItem. The value MUST be expressed using the format YYYY-MM-DDTHH:mm:ss.SSSZ set to UTC with no offset specified. Optional
dateToActivate DateTime An ISO 8601 date and time value expressed with millisecond precision that describes when the AssessmentItem was activated. The value MUST be expressed using the format YYYY-MM-DDTHH:mm:ss.SSSZ set to UTC with no offset specified. Optional
dateToShow DateTime An ISO 8601 date and time value expressed with millisecond precision that describes when the AssessmentItem should be shown or made available to learners. The value MUST be expressed using the format YYYY-MM-DDTHH:mm:ss.SSSZ set to UTC with no offset specified. Optional
dateToStartOn DateTime An ISO 8601 date and time value expressed with millisecond precision that describes when the AssessmentItem can be started. The value MUST be expressed using the format YYYY-MM-DDTHH:mm:ss.SSSZ set to UTC with no offset specified. Optional
dateToSubmit DateTime An ISO 8601 date and time value expressed with millisecond precision that describes when the AssessmentItem is to be submitted for evaluation. The value MUST be expressed using the format YYYY-MM-DDTHH:mm:ss.SSSZ set to UTC with no offset specified. Optional
maxAttempts integer A non-negative integer that designates the number of permitted attempts. Optional
maxSubmits integer A non-negative integer that designates the number of permitted submissions. Optional
maxScore decimal A number with a fractional part denoted by a decimal separator that designates the maximum score permitted. Optional
version string A string value that designates the current form or version of the AssessmentItem. Optional
extensions Object A map of additional attributes not defined by the model MAY be specified for a more concise representation of the AssessmentItem. Optional

Deprecated Properties

The following AssessmentItem properties have been DEPRECATED and MUST NOT be utilized. The properties will be removed in a future version of Caliper.

Property Type Description Disposition
objectType string A string value that designates the DigitalResource type. Optional
alignedLearningObjective Array An ordered collection of one or more LearningObjective entities that describe what a learner is expected to comprehend or accomplish after engaging with a DigitalResource. alignedLearningObjective has been DEPRECATED and replaced by learningObjectives. Optional

Example

{
*  "@context": "http://purl.imsglobal.org/ctx/caliper/v1p1",
  "id": "https://example.edu/terms/201801/courses/7/sections/1/assess/1/items/3",
  "type": "AssessmentItem",
  "isPartOf": {
    "id": "https://example.edu/terms/201801/courses/7/sections/1/assess/1",
    "type": "Assessment"
  },
  "dateCreated": "2018-08-01T06:00:00.000Z",
  "datePublished": "2018-08-15T09:30:00.000Z",
  "isTimeDependent": false,
  "maxScore": 1.0,
  "maxSubmits": 2,
  "extensions": {
    "questionType": "Dichotomous",
    "questionText": "Is a Caliper SoftwareApplication a subtype of Caliper Agent?",
    "correctResponse": "yes"
  }
}

C.5 AssignableDigitalResource

A Caliper AssignableDigitalResource is a generic type that represents digital content associated with a graded or ungraded assignment.

Utilize AssignableDigitalResource only if no suitable subtype exists to represent the resource being described.

IRI

http://purl.imsglobal.org/caliper/AssignableDigitalResource

Supertype

DigitalResource

Properties

AssignableDigitalResource inherits all the properties and requirements defined for its supertype DigitalResource. Additional properties and requirements are described below:

Property Type Description Disposition
id IRI A valid IRI MUST be specified. The IRI MUST be unique and persistent. The IRI SHOULD also be dereferenceable, i.e., capable of returning a representation of the resource. A URI employing the URN scheme MAY be provided in cases where a Linked Data friendly HTTP URI is either unavailable or inappropriate. Required
type Term The string value MUST be set to the Term AssignableDigitalResource. Required
name string A string value comprising a word or phrase by which the AssignableDigitalResource is known. Optional
description string A string value comprising a brief, written representation of the AssignableDigitalResource. Optional
creators Array An ordered collection of Agent entities, typically of type Person, that are responsible for bringing this AssignableDigitalResource into being. Each array item MUST be expressed either as an object or as a string corresponding to the item’s IRI. Optional
mediaType string A string value drawn from the list of IANA approved media types and subtypes that identifies the file format of this AssignableDigitalResource. Optional
keywords Array An ordered collection of one or more string values that represent tags or labels used to identify the AssignableDigitalResource. Optional
learningObjectives Array An ordered collection of one or more LearningObjective entities that describe what a learner is expected to comprehend or accomplish after engaging with this AssignableDigitalResource. Each array item MUST be expressed either as an object or as a string corresponding to the item’s IRI. Optional
isPartOf Entity | IRI A related Entity that includes or incorporates this AssignableDigitalResource as a part of its whole. The isPartOf value MUST be expressed either as an object or as a string corresponding to the associated entity’s IRI. Optional
dateCreated DateTime An ISO 8601 date and time value expressed with millisecond precision that describes when the AssignableDigitalResource was created. The value MUST be expressed using the format YYYY-MM-DDTHH:mm:ss.SSSZ set to UTC with no offset specified. Optional
dateModified DateTime An ISO 8601 date and time value expressed with millisecond precision that describes when the resource was last changed or modified. The value MUST be expressed using the format YYYY-MM-DDTHH:mm:ss.SSSZ set to UTC with no offset specified. Optional
datePublished DateTime An ISO 8601 date and time value expressed with millisecond precision that provides the publication date of the resource. The value MUST be expressed using the format YYYY-MM-DDTHH:mm:ss.SSSZ set to UTC with no offset specified. Optional
dateToActivate DateTime An ISO 8601 date and time value expressed with millisecond precision that describes when the resource was activated. The value MUST be expressed using the format YYYY-MM-DDTHH:mm:ss.SSSZ set to UTC with no offset specified. Optional
dateToShow DateTime An ISO 8601 date and time value expressed with millisecond precision that describes when the resource should be shown or made available to learners. The value MUST be expressed using the format YYYY-MM-DDTHH:mm:ss.SSSZ set to UTC with no offset specified. Optional
dateToStartOn DateTime An ISO 8601 date and time value expressed with millisecond precision that describes when the resource can be started. The value MUST be expressed using the format YYYY-MM-DDTHH:mm:ss.SSSZ set to UTC with no offset specified. Optional
dateToSubmit DateTime An ISO 8601 date and time value expressed with millisecond precision that describes when the resource is to be submitted for evaluation. The value MUST be expressed using the format YYYY-MM-DDTHH:mm:ss.SSSZ set to UTC with no offset specified. Optional
maxAttempts integer A non-negative integer that designates the number of permitted attempts. Optional
maxSubmits integer A non-negative integer that designates the number of permitted submissions. Optional
maxScore decimal A number with a fractional part denoted by a decimal separator that designates the maximum score permitted. Optional
version string A string value that designates the current form or version of the AssignableDigitalResource. Optional
extensions Object A map of additional attributes not defined by the model MAY be specified for a more concise representation of the AssignableDigitalResource. Optional

Deprecated Properties

The following AssignableDigitalResource properties have been DEPRECATED and MUST NOT be utilized. The properties will be removed in a future version of Caliper.

Property Type Description Disposition
objectType string A string value that designates the DigitalResource type. Optional
alignedLearningObjective Array An ordered collection of one or more LearningObjective entities that describe what a learner is expected to comprehend or accomplish after engaging with a DigitalResource. alignedLearningObjective has been DEPRECATED and replaced by learningObjectives. Optional

Subtypes

Assessment, AssessmentItem

Example

{
  "@context": "http://purl.imsglobal.org/ctx/caliper/v1p1",
  "id": "https://example.edu/terms/201801/courses/7/sections/1/assign/2",
  "type": "AssignableDigitalResource",
  "name": "Week 9 Reflection",
  "description": "3-5 page reflection on this week's assigned readings.",
  "dateCreated": "2018-11-01T06:00:00.000Z",
  "dateToActivate": "2018-11-10T11:59:59.000Z",
  "dateToShow": "2018-11-10T11:59:59.000Z",
  "dateToStartOn": "2018-11-10T11:59:59.000Z",
  "dateToSubmit": "2018-11-14T11:59:59.000Z",
  "maxAttempts": 2,
  "maxSubmits": 2,
  "maxScore": 50.0
}

C.6 Attempt

A Caliper Attempt provides a count of the number of times an actor has interacted with an AssignableDigitalResource along with start time, end time and duration information. An Attempt is generated as the result of an action such as starting an Assessment.

IRI

http://purl.imsglobal.org/caliper/Attempt

Supertype

Entity

Properties

Attempt inherits all the properties and requirements defined for its supertype Entity. Additional properties and requirements are described below:

Property Type Description Disposition
id IRI A valid IRI MUST be specified. The IRI MUST be unique and persistent. The IRI SHOULD also be dereferenceable, i.e., capable of returning a representation of the resource. A URI employing the URN scheme MAY be provided in cases where a Linked Data friendly HTTP URI is either unavailable or inappropriate. Required
type Term The string value MUST be set to the Term Attempt. Required
name string A string value comprising a word or phrase by which the Attempt is known. Optional
description string A string value comprising a brief, written representation of the Attempt. Optional
assignee Person | IRI The Person who initiated the Attempt. The assignee value MUST be expressed either as an object or as a string corresponding to the assignee’s IRI. Optional
assignable DigitalResource | IRI The DigitalResource that constitutes the object of the assignment. The assignable value MUST be expressed either as an object or as a string corresponding to the assigned resource’s IRI. Optional
isPartOf Attempt | IRI The parent Attempt, if one exists. The isPartOf value MUST be expressed either as an object or as a string corresponding to the associated attempt’s IRI. Optional
count integer The total number of attempts inclusive of the current attempt that have been registered against the assigned DigitalResource. Optional
dateCreated DateTime An ISO 8601 date and time value expressed with millisecond precision that describes when the Attempt was created. The value MUST be expressed using the format YYYY-MM-DDTHH:mm:ss.SSSZ set to UTC with no offset specified. Optional
dateModified DateTime An ISO 8601 date and time value expressed with millisecond precision that describes when the Attempt was last changed or modified. The value MUST be expressed using the format YYYY-MM-DDTHH:mm:ss.SSSZ set to UTC with no offset specified. Optional
startedAtTime DateTime An ISO 8601 date and time value expressed with millisecond precision that describes when the Attempt was commenced. The value MUST be expressed using the format YYYY-MM-DDTHH:mm:ss.SSSZ set to UTC with no offset specified. Optional
endedAtTime DateTime An ISO 8601 date and time value expressed with millisecond precision that describes when the Attempt was completed or terminated. The value MUST be expressed using the format YYYY-MM-DDTHH:mm:ss.SSSZ set to UTC with no offset specified. Optional
duration Duration A time interval that represents the time taken to complete the Attempt. If a duration is specified the value MUST conform to the ISO 8601 duration format. Optional
extensions Object A map of additional attributes not defined by the model MAY be specified for a more concise representation of the Attempt. Optional

Deprecated Properties

The following Attempt properties have been DEPRECATED and MUST NOT be utilized. The properties will be removed in a future version of Caliper.

Property Type Description Disposition
actor Person The Person who initiated the Attempt. actor has been DEPRECATED and replaced by assignee. Optional

Example

{
  "@context": "http://purl.imsglobal.org/ctx/caliper/v1p1",
  "id": "https://example.edu/terms/201801/courses/7/sections/1/assess/1/users/554433/attempts/1",
  "type": "Attempt",
  "assignable": {
    "id": "https://example.edu/terms/201801/courses/7/sections/1/assess/1",
    "type": "Assessment"
  },
  "assignee": {
    "id": "https://example.edu/users/554433",
    "type": "Person"
  },
  "count": 1,
  "dateCreated": "2018-11-15T10:05:00.000Z",
  "startedAtTime": "2018-11-15T10:05:00.000Z",
  "endedAtTime": "2018-11-15T10:55:30.000Z",
  "duration": "PT50M30S"
}

C.7 AudioObject

A Caliper AudioObject represents an audio or sound file.

IRI

http://purl.imsglobal.org/caliper/AudioObject

Supertype

MediaObject

Properties

AudioObject inherits all the properties and requirements defined for its supertype MediaObject. Additional properties are described below:

Property Type Description Disposition
id IRI A valid IRI MUST be specified. The IRI MUST be unique and persistent. The IRI SHOULD also be dereferenceable, i.e., capable of returning a representation of the resource. A URI employing the URN scheme MAY be provided in cases where a Linked Data friendly HTTP URI is either unavailable or inappropriate. Required
type Term The string value MUST be set to the Term AudioObject. Required
name string A string value comprising a word or phrase by which the AudioObject is known. Optional
description string A string value comprising a brief, written representation of the AudioObject. Optional
creators Array An ordered collection of Agent entities, typically of type Person, that are responsible for bringing this AudioObject into being. Each array item MUST be expressed either as an object or as a string corresponding to the item’s IRI. Optional
mediaType string A string value drawn from the list of IANA approved media types and subtypes that identifies the file format of this AudioObject. Optional
keywords Array An ordered collection of one or more string values that represent tags or labels used to identify the AudioObject. Optional
learningObjectives Array An ordered collection of one or more LearningObjective entities that describe what a learner is expected to comprehend or accomplish after engaging with this AudioObject. Each array item MUST be expressed either as an object or as a string corresponding to the item’s IRI. Optional
isPartOf Entity | IRI A related Entity that includes or incorporates this AudioObject as a part of its whole. The isPartOf value MUST be expressed either as an object or as a string corresponding to the associated entity’s IRI. Optional
volumeLevel string A string value indicating the current volume level. Optional
volumeMin string A string value indicating the minimum volume level permitted. Optional
volumeMax string A string value indicating the maximum volume level permitted. Optional
muted Boolean An optional boolean value indicating whether or not the AudioObject has been muted. Optional
duration Duration An optional time interval that represents the total time required to view and/or listen to the AudioObject at normal speed. If a duration is specified the value MUST conform to the ISO 8601 duration format. Optional
dateCreated DateTime An ISO 8601 date and time value expressed with millisecond precision that describes when the AudioObject was created. The value MUST be expressed using the format YYYY-MM-DDTHH:mm:ss.SSSZ set to UTC with no offset specified. Optional
dateModified DateTime An ISO 8601 date and time value expressed with millisecond precision that describes when the AudioObject was last changed or modified. The value MUST be expressed using the format YYYY-MM-DDTHH:mm:ss.SSSZ set to UTC with no offset specified. Optional
datePublished DateTime An ISO 8601 date and time value expressed with millisecond precision that provides the publication date of the AudioObject. The value MUST be expressed using the format YYYY-MM-DDTHH:mm:ss.SSSZ set to UTC with no offset specified. Optional
version string A string value that designates the current form or version of the AudioObject. Optional
extensions Object A map of additional attributes not defined by the model MAY be specified for a more concise representation of the AudioObject. Optional

Deprecated Properties

The following AudioObject properties have been DEPRECATED and MUST NOT be utilized. The properties will be removed in a future version of Caliper.

Property Type Description Disposition
objectType string A string value that designates the DigitalResource type. Optional
alignedLearningObjective Array An ordered collection of one or more LearningObjective entities that describe what a learner is expected to comprehend or accomplish after engaging with a DigitalResource. alignedLearningObjective has been DEPRECATED and replaced by learningObjectives. Optional

Example

{
  "@context": "http://purl.imsglobal.org/ctx/caliper/v1p1",
  "id": "https://example.edu/audio/765",
  "type": "AudioObject",
  "name": "Audio Recording: IMS Caliper Sensor API Q&A.",
  "mediaType": "audio/ogg",
  "datePublished": "2018-12-01T06:00:00.000Z",
  "duration": "PT55M13S"
}

C.8 BookmarkAnnotation

A Caliper BookmarkAnnotation represents the act of marking a DigitalResource at a particular location.

IRI

http://purl.imsglobal.org/caliper/BookmarkAnnotation

Supertype

Annotation

Properties

BookmarkAnnotation inherits all the properties and requirements defined for its supertype Annotation. Additional properties and requirements are described below:

Property Type Description Disposition
id IRI A valid IRI MUST be specified. The IRI MUST be unique and persistent. The IRI SHOULD also be dereferenceable, i.e., capable of returning a representation of the resource. A URI employing the URN scheme MAY be provided in cases where a Linked Data friendly HTTP URI is either unavailable or inappropriate. Required
type Term The string value MUST be set to the Term BookmarkAnnotation. Required
name string A string value comprising a word or phrase by which the BookmarkAnnotation is known. Optional
description string A string value comprising a brief, written representation of the BookmarkAnnotation. Optional
annotator Person | IRI The Person who created the BookmarkAnnotation. The annotator value MUST be expressed either as an object or as a string corresponding to the annotator’s IRI. Optional
annotated DigitalResource | IRI The DigitalResource that was annotated by the annotator. The annotated value MUST be expressed either as an object or as a string corresponding to the annotated resource’s IRI. Optional
bookmarkNotes string A string value comprising a plain text rendering of the note that accompanies the bookmark. Optional
dateCreated DateTime An ISO 8601 date and time value expressed with millisecond precision that describes when the BookmarkAnnotation was created. The value MUST be expressed using the format YYYY-MM-DDTHH:mm:ss.SSSZ set to UTC with no offset specified. Optional
dateModified DateTime An ISO 8601 date and time value expressed with millisecond precision that describes when the BookmarkAnnotation was last changed or modified. The value MUST be expressed using the format YYYY-MM-DDTHH:mm:ss.SSSZ set to UTC with no offset specified. Optional
extensions Object A map of additional attributes not defined by the model MAY be specified for a more concise representation of the BookmarkAnnotation. Optional

Example

{
  "@context": "http://purl.imsglobal.org/ctx/caliper/v1p1",
  "id": "https://example.com/users/554433/texts/imscaliperimplguide/bookmarks/1",
  "type": "BookmarkAnnotation",
  "annotator": {
    "id": "https://example.edu/users/554433",
    "type": "Person"
  },
  "annotated": {
    "id": "https://example.com/#/texts/imscaliperimplguide/cfi/6/10!/4/2/2/2@0:0",
    "type": "Page"
  },
  "bookmarkNotes": "Caliper profiles model discrete learning activities or supporting activities that facilitate learning.",
  "dateCreated": "2018-08-01T06:00:00.000Z"
}

C.9 Chapter

A Caliper Chapter represents a major sub-division of a piece of digital content.

IRI

http://purl.imsglobal.org/caliper/Chapter

Supertype

DigitalResource

Properties

Chapter inherits all the properties and requirements defined for its supertype DigitalResource. Additional requirements are described below:

Property Type Description Disposition
id IRI A valid IRI MUST be specified. The IRI MUST be unique and persistent. The IRI SHOULD also be dereferenceable, i.e., capable of returning a representation of the resource. A URI employing the URN scheme MAY be provided in cases where a Linked Data friendly HTTP URI is either unavailable or inappropriate. Required
type Term The string value MUST be set to the Term Chapter. Required
name string A string value comprising a word or phrase by which the Chapter is known. Optional
description string A string value comprising a brief, written representation of the Chapter. Optional
creators Array An ordered collection of Agent entities, typically of type Person, that are responsible for bringing this Chapter into being. Each array item MUST be expressed either as an object or as a string corresponding to the item’s IRI. Optional
mediaType string A string value drawn from the list of IANA approved media types and subtypes that identifies the file format of this Chapter. Optional
keywords Array An ordered collection of one or more string values that represent tags or labels used to identify the Chapter. Optional
learningObjectives Array An ordered collection of one or more LearningObjective entities that describe what a learner is expected to comprehend or accomplish after engaging with this Chapter. Each array item MUST be expressed either as an object or as a string corresponding to the item’s IRI. Optional
isPartOf Entity | IRI A related Entity that includes or incorporates this Chapter as a part of its whole. The isPartOf value MUST be expressed either as an object or as a string corresponding to the associated entity’s IRI. Optional
dateCreated DateTime An ISO 8601 date and time value expressed with millisecond precision that describes when the Chapter was created. The value MUST be expressed using the format YYYY-MM-DDTHH:mm:ss.SSSZ set to UTC with no offset specified. Optional
dateModified DateTime An ISO 8601 date and time value expressed with millisecond precision that describes when the Chapter was last changed or modified. The value MUST be expressed using the format YYYY-MM-DDTHH:mm:ss.SSSZ set to UTC with no offset specified. Optional
datePublished DateTime An ISO 8601 date and time value expressed with millisecond precision that provides the publication date of the Chapter. The value MUST be expressed using the format YYYY-MM-DDTHH:mm:ss.SSSZ set to UTC with no offset specified. Optional
version string A string value that designates the current form or version of the Chapter. Optional
extensions Object A map of additional attributes not defined by the model MAY be specified for a more concise representation of the Chapter. Optional

Deprecated Properties

The following Chapter properties have been DEPRECATED and MUST NOT be utilized. The properties will be removed in a future version of Caliper.

Property Type Description Disposition
objectType string A string value that designates the DigitalResource type. Optional
alignedLearningObjective Array An ordered collection of one or more LearningObjective entities that describe what a learner is expected to comprehend or accomplish after engaging with a DigitalResource. alignedLearningObjective has been DEPRECATED and replaced by learningObjectives. Optional

Example

{
  "@context": "http://purl.imsglobal.org/ctx/caliper/v1p1",
  "id": "https://example.com/#/texts/imscaliperimplguide/cfi/6/10",
  "type": "Chapter",
  "name": "The Caliper Information Model",
  "isPartOf": {
    "id": "https://example.com/#/texts/imscaliperimplguide",
    "type": "Document",
    "dateCreated": "2018-10-01T06:00:00.000Z",
    "name": "IMS Caliper Implementation Guide",
    "version": "1.1"
  }
}

C.10 CourseOffering

A Caliper CourseOffering represents the occurrence of a course or a type during a specified time period. CourseOffering is composed of a subset of properties specified in the IMS LTI 2.1 specification, which in turn, draws inspiration from the IMS LIS 1.0 specification.

IRI

http://purl.imsglobal.org/caliper/CourseOffering

Supertype

Organization

Properties

CourseOffering inherits all the properties and requirements defined for its supertype Organization. Additional properties and requirements are described below:

Property Type Description Disposition
id IRI A valid IRI MUST be specified. The IRI MUST be unique and persistent. The IRI SHOULD also be dereferenceable, i.e., capable of returning a representation of the resource. A URI employing the URN scheme MAY be provided in cases where a Linked Data friendly HTTP URI is either unavailable or inappropriate. Required
type Term The string value MUST be set to the Term CourseOffering. Required
courseNumber string A string value that constitutes a human-readable identifier for the CourseOffering. Optional
academicSession string A string value that constitutes a human-readable identifier of the designated period in which this CourseOffering occurs. Optional
name string A string value comprising a word or phrase by which the CourseOffering is known. Optional
description string A string value comprising a brief, written representation of the CourseOffering. Optional
subOrganizationOf Organization | IRI The parent Organization of this CourseOffering. The subOrganizationOf value MUST be expressed either as an object or as a string corresponding to the parent organization’s IRI. Optional
members Array An ordered collection of Agent entities, typically of type CourseSection, Group and/or Person. Each array item MUST be expressed either as an object or as a string corresponding to the item’s IRI. Optional
dateCreated DateTime An ISO 8601 date and time value expressed with millisecond precision that describes when the CourseOffering was created. The value MUST be expressed using the format YYYY-MM-DDTHH:mm:ss.SSSZ set to UTC with no offset specified. Optional
dateModified DateTime An ISO 8601 date and time value expressed with millisecond precision that describes when the CourseOffering was last changed or modified. The value MUST be expressed using the format YYYY-MM-DDTHH:mm:ss.SSSZ set to UTC with no offset specified. Optional
extensions Object A map of additional attributes not defined by the model MAY be specified for a more concise representation of the CourseOffering. Optional

Subtypes

CourseSection

Example

{
  "@context": "http://purl.imsglobal.org/ctx/caliper/v1p1",
  "id": "https://example.edu/terms/201801/courses/7",
  "type": "CourseOffering",
  "courseNumber": "CPS 435",
  "academicSession": "Fall 2018",
  "name": "CPS 435 Learning Analytics",
  "dateCreated": "2018-08-01T06:00:00.000Z",
  "dateModified": "2018-09-02T11:30:00.000Z"
}

C.11 CourseSection

A Caliper CourseSection represents a specific instance of a CourseOffering occurring during a specific semester, term or period. CourseSection is composed of a subset of properties specified in the IMS LTI 2.1 specification, which in turn, draws inspiration from the IMS LIS 1.0 specification.

IRI

http://purl.imsglobal.org/caliper/CourseSection

Supertype

CourseOffering

Properties

CourseSection inherits all the properties and requirements defined for its supertype CourseOffering. Additional properties and requirements are described below:

Property Type Description Disposition
id IRI A valid IRI MUST be specified. The IRI MUST be unique and persistent. The IRI SHOULD also be dereferenceable, i.e., capable of returning a representation of the resource. A URI employing the URN scheme MAY be provided in cases where a Linked Data friendly HTTP URI is either unavailable or inappropriate. Required
type Term The string value MUST be set to the Term CourseSection. Required
courseNumber string A string value that constitutes a human-readable identifier for the CourseSection. Optional
academicSession string A string value that constitutes a human-readable identifier of the designated period in which the CourseSection occurs. Optional
name string A string value comprising a word or phrase by which the CourseSection is known. Optional
description string A string value comprising a brief, written representation of the CourseSection. Optional
category string A string value that characterizes the purpose of the section such as “lecture”, “lab” or “seminar”. Optional
subOrganizationOf Organization | IRI The parent Organization of this CourseSection. The subOrganizationOf value MUST be expressed either as an object or as a string corresponding to the parent organization’s IRI. Optional
members Array An ordered collection of Agent entities, typically of type Group and/or Person. Each array item MUST be expressed either as an object or as a string corresponding to the item’s IRI. Optional
dateCreated DateTime An ISO 8601 date and time value expressed with millisecond precision that describes when the CourseSection was created. The value MUST be expressed using the format YYYY-MM-DDTHH:mm:ss.SSSZ set to UTC with no offset specified. Optional
dateModified DateTime An ISO 8601 date and time value expressed with millisecond precision that describes when the CourseSection was last changed or modified. The value MUST be expressed using the format YYYY-MM-DDTHH:mm:ss.SSSZ set to UTC with no offset specified. Optional
extensions Object A map of additional attributes not defined by the model MAY be specified for a more concise representation of the CourseSection. Optional

Example

{
  "@context": "http://purl.imsglobal.org/ctx/caliper/v1p1",
  "id": "https://example.edu/terms/201801/courses/7/sections/1",
  "type": "CourseSection",
  "academicSession": "Fall 2018",
  "courseNumber": "CPS 435-01",
  "name": "CPS 435 Learning Analytics, Section 01",
  "category": "seminar",
  "subOrganizationOf": {
    "id": "https://example.edu/terms/201801/courses/7",
    "type": "CourseOffering",
    "courseNumber": "CPS 435"
  },
  "dateCreated": "2018-08-01T06:00:00.000Z"
}

C.12 DigitalResource

A Caliper DigitalResource is a generic type that represents digital content.

Utilize DigitalResource only if no suitable subtype exists to represent the resource being described.

IRI

http://purl.imsglobal.org/caliper/DigitalResource

Supertype

Entity

Properties

DigitalResource inherits all the properties and requirements defined for its supertype Entity. Additional properties and requirements are described below:

Property Type Description Disposition
id IRI A valid IRI MUST be specified. The IRI MUST be unique and persistent. The IRI SHOULD also be dereferenceable, i.e., capable of returning a representation of the resource. A URI employing the URN scheme MAY be provided in cases where a Linked Data friendly HTTP URI is either unavailable or inappropriate. Required
type Term The string value MUST be set to the Term DigitaResource. Required
name string A string value comprising a word or phrase by which the resource is known. Optional
description string A string value comprising a brief, written representation of the resource. Optional
creators Array An ordered collection of Agent entities, typically of type Person, that are responsible for bringing resource into being. Each array item MUST be expressed either as an object or as a string corresponding to the item’s IRI. Optional
mediaType string A string value drawn from the list of IANA approved media types and subtypes that identifies the file format of the resource. Optional
keywords Array An ordered collection of one or more string values that represent tags or labels used to identify the resource. Optional
learningObjectives Array An ordered collection of one or more LearningObjective entities that describe what a learner is expected to comprehend or accomplish after engaging with the resource. Each array item MUST be expressed either as an object or as a string corresponding to the item’s IRI. Optional
isPartOf Entity | IRI A related Entity that includes or incorporates the resource as a part of its whole. The isPartOf value MUST be expressed either as an object or as a string corresponding to the associated entity’s IRI. Optional
dateCreated DateTime An ISO 8601 date and time value expressed with millisecond precision that describes when the resource was created. The value MUST be expressed using the format YYYY-MM-DDTHH:mm:ss.SSSZ set to UTC with no offset specified. Optional
dateModified DateTime An ISO 8601 date and time value expressed with millisecond precision that describes when the resource was last changed or modified. The value MUST be expressed using the format YYYY-MM-DDTHH:mm:ss.SSSZ set to UTC with no offset specified. Optional
datePublished DateTime An ISO 8601 date and time value expressed with millisecond precision that provides the publication date of the resource. The value MUST be expressed using the format YYYY-MM-DDTHH:mm:ss.SSSZ set to UTC with no offset specified. Optional
version string A string value that designates the current form or version of the resource. Optional
extensions Object A map of additional attributes not defined by the model MAY be specified for a more concise representation of the DigitalResource. Optional

Deprecated Properties

The following DigitalResource properties have been DEPRECATED and MUST NOT be utilized. The properties will be removed in a future version of Caliper.

Property Type Description Disposition
objectType string A string value that designates the DigitalResource type. Optional
alignedLearningObjective Array An ordered collection of one or more LearningObjective entities that describe what a learner is expected to comprehend or accomplish after engaging with a DigitalResource. alignedLearningObjective has been DEPRECATED and replaced by learningObjectives. Optional

Subtypes

AssignableDigitalResource, Chapter, DigitalResourceCollection, Document, Forum, Frame, MediaLocation, MediaObject, Message, Page, Thread, WebPage

Deprecated subtypes

EpubChapter, EpubPart, EpubSubChapter, EpubVolume, Reading

Example

{
  "@context": "http://purl.imsglobal.org/ctx/caliper/v1p1",
  "id": "https://example.edu/terms/201801/courses/7/sections/1/resources/1/syllabus.pdf",
  "type": "DigitalResource",
  "name": "Course Syllabus",
  "mediaType": "application/pdf",
  "creators": [
    {
      "id": "https://example.edu/users/223344",
      "type": "Person"
    }
  ],
  "isPartOf": {
    "id": "https://example.edu/terms/201801/courses/7/sections/1/resources/1",
    "type": "DigitalResourceCollection",
    "name": "Course Assets",
    "isPartOf": {
      "id": "https://example.edu/terms/201801/courses/7/sections/1",
      "type": "CourseSection"
    }
  },
  "dateCreated": "2018-08-02T11:32:00.000Z"
}

C.13 DigitalResourceCollection

A Caliper DigitalResourceCollection represents an ordered collection of DigitalResource entities.

IRI

http://purl.imsglobal.org/caliper/DigitalResourceCollection

Supertype

DigitalResource

Properties

DigitalResourceCollection inherits all the properties and requirements defined for its supertype DigitalResource. Additional properties and requirements are described below:

Property Type Description Disposition
id IRI A valid IRI MUST be specified. The IRI MUST be unique and persistent. The IRI SHOULD also be dereferenceable, i.e., capable of returning a representation of the resource. A URI employing the URN scheme MAY be provided in cases where a Linked Data friendly HTTP URI is either unavailable or inappropriate. Required
type Term The string value MUST be set to the Term DigitaResourceCollection. Required
name string A string value comprising a word or phrase by which the DigitalResourceCollection is known. Optional
description string A string value comprising a brief, written representation of the DigitalResourceCollection. Optional
creators Array An ordered collection of Agent entities, typically of type Person, that are responsible for bringing this DigitalResourceCollection into being. Each array item MUST be expressed either as an object or as a string corresponding to the item’s IRI. Optional
mediaType string A string value drawn from the list of IANA approved media types and subtypes that identifies the file format of this DigitalResourceCollection. Optional
keywords Array An ordered collection of one or more string values that represent tags or labels used to identify the DigitalResourceCollection. Optional
learningObjectives Array An ordered collection of one or more LearningObjective entities that describe what a learner is expected to comprehend or accomplish after engaging with this DigitalResourceCollection. Each array item MUST be expressed either as an object or as a string corresponding to the item’s IRI. Optional
isPartOf Entity | IRI A related Entity that includes or incorporates this DigitalResourceCollection as a part of its whole. The isPartOf value MUST be expressed either as an object or as a string corresponding to the associated entity’s IRI. Optional
items Array An ordered collection of DigitalResource entities. Each array item MUST be expressed either as an object or as a string corresponding to the item’s IRI. Optional
dateCreated DateTime An ISO 8601 date and time value expressed with millisecond precision that describes when the collection was created. The value MUST be expressed using the format YYYY-MM-DDTHH:mm:ss.SSSZ set to UTC with no offset specified. Optional
dateModified DateTime An ISO 8601 date and time value expressed with millisecond precision that describes when the collection was last changed or modified. The value MUST be expressed using the format YYYY-MM-DDTHH:mm:ss.SSSZ set to UTC with no offset specified. Optional
datePublished DateTime An ISO 8601 date and time value expressed with millisecond precision that provides the publication date of the collection. The value MUST be expressed using the format YYYY-MM-DDTHH:mm:ss.SSSZ set to UTC with no offset specified. Optional
version string A string value that designates the current form or version of the DigitalResourceCollection. Optional
extensions Object A map of additional attributes not defined by the model MAY be specified for a more concise representation of the DigitalResourceCollection. Optional

Deprecated Properties

The following DigitalResourceCollection properties have been DEPRECATED and MUST NOT be utilized. The properties will be removed in a future version of Caliper.

Property Type Description Disposition
objectType string A string value that designates the DigitalResource type. Optional
alignedLearningObjective Array An ordered collection of one or more LearningObjective entities that describe what a learner is expected to comprehend or accomplish after engaging with a DigitalResource. alignedLearningObjective has been DEPRECATED and replaced by learningObjectives. Optional

Subtypes

Assessment, Forum, Thread

Example

{
  "@context": "http://purl.imsglobal.org/ctx/caliper/v1p1",
  "id": "https://example.edu/terms/201801/courses/7/sections/1/resources/2",
  "type": "DigitalResourceCollection",
  "name": "Video Collection",
  "keywords": ["collection", "videos"],
  "items": [
    {
      "id": "https://example.edu/videos/1225",
      "type": "VideoObject",
      "mediaType": "video/ogg",
      "name": "Introduction to IMS Caliper",
      "dateCreated": "2018-08-01T06:00:00.000Z",
      "duration": "PT1H12M27S",
      "version": "1.1"
    },
    {
      "id": "https://example.edu/videos/5629",
      "type": "VideoObject",
      "mediaType": "video/ogg",
      "name": "IMS Caliper Activity Profiles",
      "dateCreated": "2018-08-01T06:00:00.000Z",
      "duration": "PT55M13S",
      "version": "1.1.1"
    }
  ],
  "isPartOf": {
    "id": "https://example.edu/terms/201801/courses/7/sections/1",
    "type": "CourseSection",
    "subOrganizationOf": {
      "id": "https://example.edu/terms/201801/courses/7",
      "type": "CourseOffering"
    }
  },
  "dateCreated": "2018-08-01T06:00:00.000Z",
  "dateModified": "2018-09-02T11:30:00.000Z"
}

C.14 Document

A Caliper Document represents textual content.

IRI

http://purl.imsglobal.org/caliper/Document

Supertype

DigitalResource

Properties

Document inherits all the properties and requirements defined for its supertype DigitalResource. Additional properties and requirements are described below:

Property Type Description Disposition
id IRI A valid IRI MUST be specified. The IRI MUST be unique and persistent. The IRI SHOULD also be dereferenceable, i.e., capable of returning a representation of the resource. A URI employing the URN scheme MAY be provided in cases where a Linked Data friendly HTTP URI is either unavailable or inappropriate. Required
type Term The string value MUST be set to the Term Document. Required
name string A string value comprising a word or phrase by which the Document is known. Optional
description string A string value comprising a brief, written representation of the Document. Optional
creators Array An ordered collection of Agent entities, typically of type Person, that are responsible for bringing this Document into being. Each array item MUST be expressed either as an object or as a string corresponding to the item’s IRI. Optional
mediaType string A string value drawn from the list of IANA approved media types and subtypes that identifies the file format of this Document. Optional
keywords Array An ordered collection of one or more string values that represent tags or labels used to identify the Document. Optional
learningObjectives Array An ordered collection of one or more LearningObjective entities that describe what a learner is expected to comprehend or accomplish after engaging with this Document. Each array item MUST be expressed either as an object or as a string corresponding to the item’s IRI. Optional
isPartOf Entity | IRI A related Entity that includes or incorporates this Document as a part of its whole. The isPartOf value MUST be expressed either as an object or as a string corresponding to the associated entity’s IRI. Optional
dateCreated DateTime An ISO 8601 date and time value expressed with millisecond precision that describes when the Document was created. The value MUST be expressed using the format YYYY-MM-DDTHH:mm:ss.SSSZ set to UTC with no offset specified. Optional
dateModified DateTime An ISO 8601 date and time value expressed with millisecond precision that describes when the Document was last changed or modified. The value MUST be expressed using the format YYYY-MM-DDTHH:mm:ss.SSSZ set to UTC with no offset specified. Optional
datePublished DateTime An ISO 8601 date and time value expressed with millisecond precision that provides the publication date of the Document. The value MUST be expressed using the format YYYY-MM-DDTHH:mm:ss.SSSZ set to UTC with no offset specified. Optional
version string A string value that designates the current form or version of the Document. Optional
extensions Object A map of additional attributes not defined by the model MAY be specified for a more concise representation of the Document. Optional

Deprecated Properties

The following Document properties have been DEPRECATED and MUST NOT be utilized. The properties will be removed in a future version of Caliper.

Property Type Description Disposition
objectType string A string value that designates the DigitalResource type. Optional
alignedLearningObjective Array An ordered collection of one or more LearningObjective entities that describe what a learner is expected to comprehend or accomplish after engaging with a DigitalResource. alignedLearningObjective has been DEPRECATED and replaced by learningObjectives. Optional

Example

{
  "@context": "http://purl.imsglobal.org/ctx/caliper/v1p1",
  "id": "https://example.edu/etexts/201.epub",
  "type": "Document",
  "name": "IMS Caliper Implementation Guide",
  "mediaType": "application/epub+zip",
  "creators": [
    {
      "id": "https://example.edu/people/12345",
      "type": "Person"
    },
    {
      "id": "https://example.com/staff/56789",
      "type": "Person"
    }
  ],
  "dateCreated": "2018-08-01T06:00:00.000Z",
  "datePublished": "2018-10-01T06:00:00.000Z",
  "version": "1.1"
}

C.15 EpubChapter (DEPRECATED)

A Caliper EpubChapter represents a major structural division of a piece of writing. EpubChapter is a DEPRECATED entity that will be removed in a future version of the specification. It SHOULD NOT be referenced.

IRI

http://purl.imsglobal.org/caliper/EpubChapter

Supertype

DigitalResource

Properties

EpubChapter inherits all the properties and requirements defined for its supertype DigitalResource. Additional requirements are described below:

Property Type Description Disposition
id IRI A valid IRI MUST be specified. The IRI MUST be unique and persistent. The IRI SHOULD also be dereferenceable, i.e., capable of returning a representation of the resource. A URI employing the URN scheme MAY be provided in cases where a Linked Data friendly HTTP URI is either unavailable or inappropriate. Required
type Term The string value MUST be set to the Term EpubChapter. Required
name string A string value comprising a word or phrase by which the EpubChapter is known. Optional
description string A string value comprising a brief, written representation of the EpubChapter. Optional
creators Array An ordered collection of Agent entities, typically of type Person, that are responsible for bringing this EpubChapter into being. Each array item MUST be expressed either as an object or as a string corresponding to the item’s IRI. Optional
mediaType string A string value drawn from the list of IANA approved media types and subtypes that identifies the file format of this EpubChapter. Optional
keywords Array An ordered collection of one or more string values that represent tags or labels used to identify the EpubChapter. Optional
learningObjectives Array An ordered collection of one or more LearningObjective entities that describe what a learner is expected to comprehend or accomplish after engaging with this EpubChapter. Each array item MUST be expressed either as an object or as a string corresponding to the item’s IRI. Optional
isPartOf Entity | IRI A related Entity that includes or incorporates this EpubChapter as a part of its whole. The isPartOf value MUST be expressed either as an object or as a string corresponding to the associated entity’s IRI. Optional
dateCreated DateTime An ISO 8601 date and time value expressed with millisecond precision that describes when the EpubChapter was created. The value MUST be expressed using the format YYYY-MM-DDTHH:mm:ss.SSSZ set to UTC with no offset specified. Optional
dateModified DateTime An ISO 8601 date and time value expressed with millisecond precision that describes when the EpubChapter was last changed or modified. The value MUST be expressed using the format YYYY-MM-DDTHH:mm:ss.SSSZ set to UTC with no offset specified. Optional
datePublished DateTime An ISO 8601 date and time value expressed with millisecond precision that provides the publication date of the EpubChapter. The value MUST be expressed using the format YYYY-MM-DDTHH:mm:ss.SSSZ set to UTC with no offset specified. Optional
version string A string value that designates the current form or version of the EpubChapter. Optional
extensions Object A map of additional attributes not defined by the model MAY be specified for a more concise representation of the EpubChapter. Optional

Deprecated Properties

The following EpubChapter properties have been DEPRECATED and MUST NOT be utilized. The properties will be removed in a future version of Caliper.

Property Type Description Disposition
objectType string A string value that designates the DigitalResource type. Optional
alignedLearningObjective Array An ordered collection of one or more LearningObjective entities that describe what a learner is expected to comprehend or accomplish after engaging with a DigitalResource. alignedLearningObjective has been DEPRECATED and replaced by learningObjectives. Optional

C.16 EpubPart (DEPRECATED)

A Caliper EpubPart represents a major structural division of a piece of writing, typically encapsulating a set of related chapters. EpubPart is a DEPRECATED entity that will be removed in a future version of the specification. It SHOULD NOT be referenced.

IRI

http://purl.imsglobal.org/caliper/EpubPart

Supertype

DigitalResource

Properties

EpubPart inherits all the properties and requirements defined for its supertype DigitalResource. Additional requirements are described below:

Property Type Description Disposition
id IRI A valid IRI MUST be specified. The IRI MUST be unique and persistent. The IRI SHOULD also be dereferenceable, i.e., capable of returning a representation of the resource. A URI employing the URN scheme MAY be provided in cases where a Linked Data friendly HTTP URI is either unavailable or inappropriate. Required
type Term The string value MUST be set to the Term EpubPart. Required
name string A string value comprising a word or phrase by which the EpubPart is known. Optional
description string A string value comprising a brief, written representation of the EpubPart. Optional
creators Array An ordered collection of Agent entities, typically of type Person, that are responsible for bringing this EpubPart into being. Each array item MUST be expressed either as an object or as a string corresponding to the item’s IRI. Optional
mediaType string A string value drawn from the list of IANA approved media types and subtypes that identifies the file format of this EpubPart. Optional
keywords Array An ordered collection of one or more string values that represent tags or labels used to identify the EpubPart. Optional
learningObjectives Array An ordered collection of one or more LearningObjective entities that describe what a learner is expected to comprehend or accomplish after engaging with this EpubPart. Each array item MUST be expressed either as an object or as a string corresponding to the item’s IRI. Optional
isPartOf Entity | IRI A related Entity that includes or incorporates this EpubPart as a part of its whole. The isPartOf value MUST be expressed either as an object or as a string corresponding to the associated entity’s IRI. Optional
dateCreated DateTime An ISO 8601 date and time value expressed with millisecond precision that describes when the EpubPart was created. The value MUST be expressed using the format YYYY-MM-DDTHH:mm:ss.SSSZ set to UTC with no offset specified. Optional
dateModified DateTime An ISO 8601 date and time value expressed with millisecond precision that describes when the EpubPart was last changed or modified. The value MUST be expressed using the format YYYY-MM-DDTHH:mm:ss.SSSZ set to UTC with no offset specified. Optional
datePublished DateTime An ISO 8601 date and time value expressed with millisecond precision that provides the publication date of the EpubPart. The value MUST be expressed using the format YYYY-MM-DDTHH:mm:ss.SSSZ set to UTC with no offset specified. Optional
version string A string value that designates the current form or version of the EpubPart. Optional
extensions Object A map of additional attributes not defined by the model MAY be specified for a more concise representation of the EpubPart. Optional

Deprecated Properties

The following EpubPart properties have been DEPRECATED and MUST NOT be utilized. The properties will be removed in a future version of Caliper.

Property Type Description Disposition
objectType string A string value that designates the DigitalResource type. Optional
alignedLearningObjective Array An ordered collection of one or more LearningObjective entities that describe what a learner is expected to comprehend or accomplish after engaging with a DigitalResource. alignedLearningObjective has been DEPRECATED and replaced by learningObjectives. Optional

C.17 EpubSubChapter (DEPRECATED)

A Caliper EpubSubChapter represents a major sub-division of an EpubChapter. EpubSubChapter is a DEPRECATED entity that will be removed in a future version of the specification. It SHOULD NOT be referenced.

IRI

http://purl.imsglobal.org/caliper/EpubSubChapter

Supertype

DigitalResource

Properties

EpubSubChapter inherits all the properties and requirements defined for its supertype DigitalResource. Additional requirements are described below:

Property Type Description Disposition
id IRI A valid IRI MUST be specified. The IRI MUST be unique and persistent. The IRI SHOULD also be dereferenceable, i.e., capable of returning a representation of the resource. A URI employing the URN scheme MAY be provided in cases where a Linked Data friendly HTTP URI is either unavailable or inappropriate. Required
type Term The string value MUST be set to the Term EpubSubChapter. Required
name string A string value comprising a word or phrase by which the EpubSubChapter is known. Optional
description string A string value comprising a brief, written representation of the EpubSubChapter. Optional
creators Array An ordered collection of Agent entities, typically of type Person, that are responsible for bringing this EpubSubChapter into being. Each array item MUST be expressed either as an object or as a string corresponding to the item’s IRI. Optional
mediaType string A string value drawn from the list of IANA approved media types and subtypes that identifies the file format of this EpubSubChapter. Optional
keywords Array An ordered collection of one or more string values that represent tags or labels used to identify the EpubSubChapter. Optional
learningObjectives Array An ordered collection of one or more LearningObjective entities that describe what a learner is expected to comprehend or accomplish after engaging with this EpubSubChapter. Each array item MUST be expressed either as an object or as a string corresponding to the item’s IRI. Optional
isPartOf EpubChapter | IRI A related EpubChapter that includes or incorporates this EpubSubChapter as a part. The isPartOf value MUST be expressed either as an object or as a string corresponding to the associated entity’s IRI. Optional
dateCreated DateTime An ISO 8601 date and time value expressed with millisecond precision that describes when the EpubSubChapter was created. The value MUST be expressed using the format YYYY-MM-DDTHH:mm:ss.SSSZ set to UTC with no offset specified. Optional
dateModified DateTime An ISO 8601 date and time value expressed with millisecond precision that describes when the EpubSubChapter was last changed or modified. The value MUST be expressed using the format YYYY-MM-DDTHH:mm:ss.SSSZ set to UTC with no offset specified. Optional
datePublished DateTime An ISO 8601 date and time value expressed with millisecond precision that provides the publication date of the EpubSubChapter. The value MUST be expressed using the format YYYY-MM-DDTHH:mm:ss.SSSZ set to UTC with no offset specified. Optional
version string A string value that designates the current form or version of the EpubSubChapter. Optional
extensions Object A map of additional attributes not defined by the model MAY be specified for a more concise representation of the EpubSubChapter. Optional

Deprecated Properties

The following EpubChapter properties have been DEPRECATED and MUST NOT be utilized. The properties will be removed in a future version of Caliper.

Property Type Description Disposition
objectType string A string value that designates the DigitalResource type. Optional
alignedLearningObjective Array An ordered collection of one or more LearningObjective entities that describe what a learner is expected to comprehend or accomplish after engaging with a DigitalResource. alignedLearningObjective has been DEPRECATED and replaced by learningObjectives. Optional

C.18 EpubVolume (DEPRECATED)

A Caliper EpubVolume represents a component of a collection. EpubVolume inherits all the properties and requirements defined for DigitalResource, its supertype. EpubVolume is a DEPRECATED entity that will be removed in a future version of the specification. It SHOULD NOT be referenced.

IRI

http://purl.imsglobal.org/caliper/EpubVolume

Supertype

DigitalResource

Properties

EpubVolume inherits all the properties and requirements defined for its supertype DigitalResource. Additional requirements are described below:

Property Type Description Disposition
id IRI A valid IRI MUST be specified. The IRI MUST be unique and persistent. The IRI SHOULD also be dereferenceable, i.e., capable of returning a representation of the resource. A URI employing the URN scheme MAY be provided in cases where a Linked Data friendly HTTP URI is either unavailable or inappropriate. Required
type Term The string value MUST be set to the Term EpubSubChapter. Required
name string A string value comprising a word or phrase by which the EpubVolume is known. Optional
description string A string value comprising a brief, written representation of the EpubVolume. Optional
creators Array An ordered collection of Agent entities, typically of type Person, that are responsible for bringing this EpubVolume into being. Each array item MUST be expressed either as an object or as a string corresponding to the item’s IRI. Optional
mediaType string A string value drawn from the list of IANA approved media types and subtypes that identifies the file format of this EpubVolume. Optional
keywords Array An ordered collection of one or more string values that represent tags or labels used to identify the EpubVolume. Optional
learningObjectives Array An ordered collection of one or more LearningObjective entities that describe what a learner is expected to comprehend or accomplish after engaging with this EpubVolume. Each array item MUST be expressed either as an object or as a string corresponding to the item’s IRI. Optional
isPartOf Entity | IRI A related Entity that includes or incorporates this EpubVolume as a part. The isPartOf value MUST be expressed either as an object or as a string corresponding to the associated entity’s IRI. Optional
dateCreated DateTime An ISO 8601 date and time value expressed with millisecond precision that describes when the EpubVolume was created. The value MUST be expressed using the format YYYY-MM-DDTHH:mm:ss.SSSZ set to UTC with no offset specified. Optional
dateModified DateTime An ISO 8601 date and time value expressed with millisecond precision that describes when the EpubVolume was last changed or modified. The value MUST be expressed using the format YYYY-MM-DDTHH:mm:ss.SSSZ set to UTC with no offset specified. Optional
datePublished DateTime An ISO 8601 date and time value expressed with millisecond precision that provides the publication date of the EpubVolume. The value MUST be expressed using the format YYYY-MM-DDTHH:mm:ss.SSSZ set to UTC with no offset specified. Optional
version string A string value that designates the current form or version of the EpubVolume. Optional
extensions Object A map of additional attributes not defined by the model MAY be specified for a more concise representation of the EpubVolume. Optional

Deprecated Properties

The following EpubVolume properties have been DEPRECATED and MUST NOT be utilized. The properties will be removed in a future version of Caliper.

Property Type Description Disposition
objectType string A string value that designates the DigitalResource type. Optional
alignedLearningObjective Array An ordered collection of one or more LearningObjective entities that describe what a learner is expected to comprehend or accomplish after engaging with a DigitalResource. alignedLearningObjective has been DEPRECATED and replaced by learningObjectives. Optional

C.19 FillinBlankResponse

A Caliper FillinBlankResponse represents a type of Response in which a respondent is asked to provide one or more words, expressions or short phrases that correctly completes a statement.

IRI

http://purl.imsglobal.org/caliper/FillinBlankResponse

Supertype

Response

Properties

FillinBlankResponse inherits all the properties and requirements defined for its supertype Response. Additional properties and requirements are described below:

Property Type Description Disposition
id IRI A valid IRI MUST be specified. The IRI MUST be unique and persistent. The IRI SHOULD also be dereferenceable, i.e., capable of returning a representation of the resource. A URI employing the URN scheme MAY be provided in cases where a Linked Data friendly HTTP URI is either unavailable or inappropriate. Required
type Term The string value MUST be set to the Term FillinBlankResponse. Required
name string A string value comprising a word or phrase by which the FillinBlankResponse is known. Optional
description string A string value comprising a brief, written representation of the FillinBlankResponse. Optional
attempt Attempt | IRI The associated Attempt. The attempt value MUST be expressed either as an object or as a string corresponding to the attempt’s IRI. If an object representation is provided, the Attempt SHOULD reference both the Person who initiated the FillinBlankResponse and the relevant AssessmentItem. Optional
values Array An ordered collection of one or more string values representing words, expressions or short phrases that constitute the FillinBlankResponse. Optional
dateCreated DateTime An ISO 8601 date and time value expressed with millisecond precision that describes when the FillinBlankResponse was created. The value MUST be expressed using the format YYYY-MM-DDTHH:mm:ss.SSSZ set to UTC with no offset specified. Optional
dateModified DateTime An ISO 8601 date and time value expressed with millisecond precision that describes when the FillinBlankResponse was last changed or modified. The value MUST be expressed using the format YYYY-MM-DDTHH:mm:ss.SSSZ set to UTC with no offset specified. Optional
startedAtTime DateTime An ISO 8601 date and time value expressed with millisecond precision that describes when the FillinBlankResponse was commenced. The value MUST be expressed using the format YYYY-MM-DDTHH:mm:ss.SSSZ set to UTC with no offset specified. Optional
endedAtTime DateTime An ISO 8601 date and time value expressed with millisecond precision that describes when the FillinBlankResponse was completed or terminated. The value MUST be expressed using the format YYYY-MM-DDTHH:mm:ss.SSSZ set to UTC with no offset specified. Optional
duration Duration A time interval that represents the time taken to complete the FillinBlankResponse. If a duration is specified the value MUST conform to the ISO 8601 duration format. Optional
extensions Object A map of additional attributes not defined by the model MAY be specified for a more concise representation of the FillinBlankResponse. Optional

Deprecated Properties

The following FillinBlankResponse properties have been DEPRECATED and MUST NOT be utilized. The properties will be removed in a future version of Caliper.

Property Type Description Disposition
actor Agent The Agent who generated the Response. actor has been DEPRECATED and replaced by attempt. Optional
assignable AssessmentItem The AssessmentItem associated with the Response. assignable has been DEPRECATED and replaced by attempt. Optional

Example

{
  "@context": "http://purl.imsglobal.org/ctx/caliper/v1p1",
  "id": "https://example.edu/terms/201801/courses/7/sections/1/assess/1/items/1/users/554433/responses/1",
  "type": "FillinBlankResponse",
  "attempt": {
    "id": "https://example.edu/terms/201801/courses/7/sections/1/assess/1/items/1/users/554433/attempts/1",
    "type": "Attempt",
    "assignee": {
      "id": "https://example.edu/users/554433",
      "type": "Person"
    },
    "assignable": {
      "id": "https://example.edu/terms/201801/courses/7/sections/1/assess/1/items/1",
      "type": "AssessmentItem",
      "isPartOf": {
        "id": "https://example.edu/terms/201801/courses/7/sections/1/assess/1",
        "type": "Assessment"
      }
    },
    "count": 1,
    "startedAtTime": "2018-11-15T10:15:02.000Z",
    "endedAtTime": "2018-11-15T10:15:12.000Z"
  },
  "dateCreated": "2018-11-15T10:15:12.000Z",
  "startedAtTime": "2018-11-15T10:15:02.000Z",
  "endedAtTime": "2018-11-15T10:15:12.000Z",
  "values": [ "data interoperability", "semantic interoperability" ]
}

C.20 Forum

A Caliper Forum represents a channel or virtual space in which group discussions take place. A Forum typically comprises one or more threaded conversations to which members can subscribe, post messages and reply to other messages.

IRI

http://purl.imsglobal.org/caliper/Forum

Supertype

DigitalResourceCollection

Properties

Forum inherits all the properties and requirements defined for its supertype DigitalResourceCollection. Additional properties and requirements are described below:

Property Type Description Disposition
id IRI A valid IRI MUST be specified. The IRI MUST be unique and persistent. The IRI SHOULD also be dereferenceable, i.e., capable of returning a representation of the resource. A URI employing the URN scheme MAY be provided in cases where a Linked Data friendly HTTP URI is either unavailable or inappropriate. Required
type Term The string value MUST be set to the Term Forum. Required
name string A string value comprising a word or phrase by which the Forum is known. Optional
description string A string value comprising a brief, written representation of the Forum. Optional
creators Array An ordered collection of Agent entities, typically of type Person, that are responsible for bringing this Forum into being. Each array item MUST be expressed either as an object or as a string corresponding to the item’s IRI. Optional
mediaType string A string value drawn from the list of IANA approved media types and subtypes that identifies the file format of this Forum. Optional
keywords Array An ordered collection of one or more string values that represent tags or labels used to identify the Forum. Optional
learningObjectives Array An ordered collection of one or more LearningObjective entities that describe what a learner is expected to comprehend or accomplish after engaging with this Forum. Each array item MUST be expressed either as an object or as a string corresponding to the item’s IRI. Optional
isPartOf Entity | IRI A related Entity that includes or incorporates this Forum as a part of its whole. The isPartOf value MUST be expressed either as an object or as a string corresponding to the associated entity’s IRI. Optional
items Array An ordered collection of Thread entities. Each array item MUST be expressed either as an object or as a string corresponding to the item’s IRI. Optional
dateCreated DateTime An ISO 8601 date and time value expressed with millisecond precision that describes when the Forum was created. The value MUST be expressed using the format YYYY-MM-DDTHH:mm:ss.SSSZ set to UTC with no offset specified. Optional
dateModified DateTime An ISO 8601 date and time value expressed with millisecond precision that describes when the Forum was last changed or modified. The value MUST be expressed using the format YYYY-MM-DDTHH:mm:ss.SSSZ set to UTC with no offset specified. Optional
datePublished DateTime An ISO 8601 date and time value expressed with millisecond precision that provides the publication date of the Forum. The value MUST be expressed using the format YYYY-MM-DDTHH:mm:ss.SSSZ set to UTC with no offset specified. Optional
version string A string value that designates the current form or version of the Forum. Optional
extensions Object A map of additional attributes not defined by the model MAY be specified for a more concise representation of the Forum. Optional

Deprecated Properties

The following Forum properties have been DEPRECATED and MUST NOT be utilized. The properties will be removed in a future version of Caliper.

Property Type Description Disposition
objectType string A string value that designates the DigitalResource type. Optional
alignedLearningObjective Array An ordered collection of one or more LearningObjective entities that describe what a learner is expected to comprehend or accomplish after engaging with a DigitalResource. alignedLearningObjective has been DEPRECATED and replaced by learningObjectives. Optional

Example

{
  "@context": "http://purl.imsglobal.org/ctx/caliper/v1p1",
  "id": "https://example.edu/terms/201801/courses/7/sections/1/forums/1",
  "type": "Forum",
  "name": "Caliper Forum",
  "items": [
    {
      "id": "https://example.edu/terms/201801/courses/7/sections/1/forums/1/topics/1",
      "type": "Thread",
      "name": "Caliper Information Model",
      "dateCreated": "2018-11-01T09:30:00.000Z"
    },
    {
      "id": "https://example.edu/terms/201801/courses/7/sections/1/forums/1/topics/2",
      "type": "Thread",
      "name": "Caliper Sensor API",
      "dateCreated": "2018-11-01T09:30:00.000Z"
    },
    {
      "id": "https://example.edu/terms/201801/courses/7/sections/1/forums/1/topics/3",
      "type": "Thread",
      "name": "Caliper Certification",
      "dateCreated": "2018-11-01T09:30:00.000Z"
    }
  ],
  "isPartOf": {
    "id": "https://example.edu/terms/201801/courses/7/sections/1",
    "type": "CourseSection",
    "subOrganizationOf": {
      "id": "https://example.edu/terms/201801/courses/7",
      "type": "CourseOffering"
    }
  },
  "dateCreated": "2018-08-01T06:00:00.000Z",
  "dateModified": "2018-09-02T11:30:00.000Z"
}

C.21 Frame

A Caliper Frame represents a part, portion or segment of a DigitalResource.

IRI

http://purl.imsglobal.org/caliper/Frame

Supertype

DigitalResource

Properties

Frame inherits all the properties and requirements defined for its supertype DigitalResource. Additional properties and requirements are described below:

Property Type Description Disposition
id IRI A valid IRI MUST be specified. The IRI MUST be unique and persistent. The IRI SHOULD also be dereferenceable, i.e., capable of returning a representation of the resource. A URI employing the URN scheme MAY be provided in cases where a Linked Data friendly HTTP URI is either unavailable or inappropriate. Required
type Term The string value MUST be set to the Term Frame. Required
name string A string value comprising a word or phrase by which the Frame is known. Optional
description string A string value comprising a brief, written representation of the Frame. Optional
creators Array An ordered collection of Agent entities, typically of type Person, that are responsible for bringing this Frame into being. Each array item MUST be expressed either as an object or as a string corresponding to the item’s IRI. Optional
mediaType string A string value drawn from the list of IANA approved media types and subtypes that identifies the file format of this Frame. Optional
keywords Array An ordered collection of one or more string values that represent tags or labels used to identify the Frame. Optional
learningObjectives Array An ordered collection of one or more LearningObjective entities that describe what a learner is expected to comprehend or accomplish after engaging with this Frame. Each array item MUST be expressed either as an object or as a string corresponding to the item’s IRI. Optional
isPartOf Entity | IRI A related Entity that includes or incorporates this Frame as a part of its whole. The isPartOf value MUST be expressed either as an object or as a string corresponding to the associated entity’s IRI. Optional
index integer A non-negative integer that represents the position of the Frame. Optional
dateCreated DateTime An ISO 8601 date and time value expressed with millisecond precision that describes when the Frame was created. The value MUST be expressed using the format YYYY-MM-DDTHH:mm:ss.SSSZ set to UTC with no offset specified. Optional
dateModified DateTime An ISO 8601 date and time value expressed with millisecond precision that describes when the Frame was last changed or modified. The value MUST be expressed using the format YYYY-MM-DDTHH:mm:ss.SSSZ set to UTC with no offset specified. Optional
datePublished DateTime An ISO 8601 date and time value expressed with millisecond precision that provides the publication date of the Frame. The value MUST be expressed using the format YYYY-MM-DDTHH:mm:ss.SSSZ set to UTC with no offset specified. Optional
version string A string value that designates the current form or version of the Frame. Optional
extensions Object A map of additional attributes not defined by the model MAY be specified for a more concise representation of the Frame. Optional

Deprecated Properties

The following Frame properties have been DEPRECATED and MUST NOT be utilized. The properties will be removed in a future version of Caliper.

Property Type Description Disposition
objectType string A string value that designates the DigitalResource type. Optional
alignedLearningObjective Array An ordered collection of one or more LearningObjective entities that describe what a learner is expected to comprehend or accomplish after engaging with a DigitalResource. alignedLearningObjective has been DEPRECATED and replaced by learningObjectives. Optional

Example

{
  "@context": "http://purl.imsglobal.org/ctx/caliper/v1p1",
  "id": "https://example.edu/etexts/201?index=2502",
  "type": "Frame",
  "dateCreated": "2018-08-01T06:00:00.000Z",
  "index": 2502,
  "isPartOf": {
    "id": "https://example.edu/etexts/201",
    "type": "Document",
    "name": "IMS Caliper Implementation Guide",
    "version": "1.1"
  }
}

C.22 Group

A Caliper Group represents an ad-hoc, informal or short-lived collection of people organized for some common educational or social purpose. A Group can act as an Agent. It can be linked both to a parent Organization and to its members.

IRI

http://purl.imsglobal.org/caliper/Group

Supertype

Organization

Properties

Group inherits all the properties and requirements defined for its supertype Organization. Additional requirements are described below:

Property Type Description Disposition
id IRI A valid IRI MUST be specified. The IRI MUST be unique and persistent. The IRI SHOULD also be dereferenceable, i.e., capable of returning a representation of the resource. A URI employing the URN scheme MAY be provided in cases where a Linked Data friendly HTTP URI is either unavailable or inappropriate. Required
type Term The string value MUST be set to the Term Group. Required
name string A string value comprising a word or phrase by which the Group is known. Optional
description string A string value comprising a brief, written representation of the Group. Optional
subOrganizationOf Organization | IRI The parent Organization of this Group. The subOrganizationOf value MUST be expressed either as an object or as a string corresponding to the parent organization’s IRI. Optional
members Array An ordered collection of Agent entities, typically of type Group and/or Person. Each array item MUST be expressed either as an object or as a string corresponding to the item’s IRI. Optional
dateCreated DateTime An ISO 8601 date and time value expressed with millisecond precision that describes when the Group was created. The value MUST be expressed using the format YYYY-MM-DDTHH:mm:ss.SSSZ set to UTC with no offset specified. Optional
dateModified DateTime An ISO 8601 date and time value expressed with millisecond precision that describes when the Group was last changed or modified. The value MUST be expressed using the format YYYY-MM-DDTHH:mm:ss.SSSZ set to UTC with no offset specified. Optional
extensions Object A map of additional attributes not defined by the model MAY be specified for a more concise representation of the Group. Optional

Example

{
  "@context": "http://purl.imsglobal.org/ctx/caliper/v1p1",
  "id": "https://example.edu/terms/201801/courses/7/sections/1/groups/2",
  "type": "Group",
  "name": "Discussion Group 2",
  "subOrganizationOf": {
    "id": "https://example.edu/terms/201801/courses/7/sections/1",
    "type": "CourseSection",
    "subOrganizationOf": {
      "id": "https://example.edu/terms/201801/courses/7",
      "type": "CourseOffering"
    }
  },
  "members": [
    {
      "id": "https://example.edu/users/554433",
      "type": "Person"
    },
    {
      "id": "https://example.edu/users/778899",
      "type": "Person"
    },
    {
      "id": "https://example.edu/users/445566",
      "type": "Person"
    },
    {
      "id": "https://example.edu/users/667788",
      "type": "Person"
    },
    {
      "id": "https://example.edu/users/889900",
      "type": "Person"
    }
  ],
  "dateCreated": "2018-11-01T06:00:00.000Z"
}

C.23 HighlightAnnotation

A Caliper HighlightAnnotation represents the act of marking a particular segment of a DigitalResource between two known coordinates.

IRI

http://purl.imsglobal.org/caliper/HighlightAnnotation

Supertype

Annotation

Properties

HighlightAnnotation inherits all the properties and requirements defined for its supertype Annotation. Additional properties and requirements are described below:

Property Type Description Disposition
id IRI A valid IRI MUST be specified. The IRI MUST be unique and persistent. The IRI SHOULD also be dereferenceable, i.e., capable of returning a representation of the resource. A URI employing the URN scheme MAY be provided in cases where a Linked Data friendly HTTP URI is either unavailable or inappropriate. Required
type Term The string value MUST be set to the Term BookmarkAnnotation. Required
name string A string value comprising a word or phrase by which the HighlightAnnotation is known. Optional
description string A string value comprising a brief, written representation of the HighlightAnnotation. Optional
annotator Person | IRI The Person who created the HighlightAnnotation. The annotator value MUST be expressed either as an object or as a string corresponding to the annotator’s IRI. Optional
annotated DigitalResource | IRI The DigitalResource that was annotated by the annotator. The annotated value MUST be expressed either as an object or as a string corresponding to the annotated resource’s IRI. Optional
selection TextPositionSelector The start and end positions of the highlighted text segment. The first character in the full text is character position 0. If a TextPositionSelector is defined both its start and end positions MUST be specified. Optional
selectionText string A string value representing a plain-text rendering of the highlighted segment of the annotated DigitalResource. Optional
dateCreated DateTime An ISO 8601 date and time value expressed with millisecond precision that describes when the HighlightAnnotation was created. The value MUST be expressed using the format YYYY-MM-DDTHH:mm:ss.SSSZ set to UTC with no offset specified. Optional
dateModified DateTime An ISO 8601 date and time value expressed with millisecond precision that describes when the HighlightAnnotation was last changed or modified. The value MUST be expressed using the format YYYY-MM-DDTHH:mm:ss.SSSZ set to UTC with no offset specified. Optional
extensions Object A map of additional attributes not defined by the model MAY be specified for a more concise representation of the HighlightAnnotation. Optional

Example

{
  "@context": "http://purl.imsglobal.org/ctx/caliper/v1p1",
  "id": "https://example.edu/users/554433/etexts/201/highlights/20",
  "type": "HighlightAnnotation",
  "annotator": {
    "id": "https://example.edu/users/554433",
    "type": "Person"
  },
  "annotated": {
    "id": "https://example.edu/etexts/201",
    "type": "Document"
  },
  "selection": {
    "type": "TextPositionSelector",
    "start": 2300,
    "end": 2370
  },
  "selectionText": "ISO 8601 formatted date and time expressed with millisecond precision.",
  "dateCreated": "2018-08-01T06:00:00.000Z"
}

C.24 ImageObject

A Caliper ImageObject represents an image file.

IRI

http://purl.imsglobal.org/caliper/ImageObject

Supertype

MediaObject

Properties

ImageObject inherits all the properties and requirements defined for its supertype MediaObject. Additional requirements are described below:

Property Type Description Disposition
id IRI A valid IRI MUST be specified. The IRI MUST be unique and persistent. The IRI SHOULD also be dereferenceable, i.e., capable of returning a representation of the resource. A URI employing the URN scheme MAY be provided in cases where a Linked Data friendly HTTP URI is either unavailable or inappropriate. Required
type Term The string value MUST be set to the Term ImageObject. Required
name string A string value comprising a word or phrase by which the ImageObject is known. Optional
description string A string value comprising a brief, written representation of the ImageObject. Optional
creators Array An ordered collection of Agent entities, typically of type Person, that are responsible for bringing this ImageObject into being. Each array item MUST be expressed either as an object or as a string corresponding to the item’s IRI. Optional
mediaType string A string value drawn from the list of IANA approved media types and subtypes that identifies the file format of this ImageObject. Optional
keywords Array An ordered collection of one or more string values that represent tags or labels used to identify the ImageObject. Optional
learningObjectives Array An ordered collection of one or more LearningObjective entities that describe what a learner is expected to comprehend or accomplish after engaging with this ImageObject. Each array item MUST be expressed either as an object or as a string corresponding to the item’s IRI. Optional
isPartOf Entity | IRI A related Entity that includes or incorporates this ImageObject as a part of its whole. The isPartOf value MUST be expressed either as an object or as a string corresponding to the associated entity’s IRI. Optional
duration Duration An optional time interval that represents the total time required to view and/or listen to the ImageObject at normal speed. If a duration is specified the value MUST conform to the ISO 8601 duration format. Optional
dateCreated DateTime An ISO 8601 date and time value expressed with millisecond precision that describes when the ImageObject was created. The value MUST be expressed using the format YYYY-MM-DDTHH:mm:ss.SSSZ set to UTC with no offset specified. Optional
dateModified DateTime An ISO 8601 date and time value expressed with millisecond precision that describes when the ImageObject was last changed or modified. The value MUST be expressed using the format YYYY-MM-DDTHH:mm:ss.SSSZ set to UTC with no offset specified. Optional
datePublished DateTime An ISO 8601 date and time value expressed with millisecond precision that provides the publication date of the ImageObject. The value MUST be expressed using the format YYYY-MM-DDTHH:mm:ss.SSSZ set to UTC with no offset specified. Optional
version string A string value that designates the current form or version of the ImageObject. Optional
extensions Object A map of additional attributes not defined by the model MAY be specified for a more concise representation of the ImageObject. Optional

Deprecated Properties

The following ImageObject properties have been DEPRECATED and MUST NOT be utilized. The properties will be removed in a future version of Caliper.

Property Type Description Disposition
objectType string A string value that designates the DigitalResource type. Optional
alignedLearningObjective Array An ordered collection of one or more LearningObjective entities that describe what a learner is expected to comprehend or accomplish after engaging with a DigitalResource. alignedLearningObjective has been DEPRECATED and replaced by learningObjectives. Optional

Example

{
  "@context": "http://purl.imsglobal.org/ctx/caliper/v1p1",
  "id": "https://example.edu/images/caliper_lti.jpg",
  "type": "ImageObject",
  "name": "IMS Caliper/LTI Integration Work Flow",
  "mediaType": "image/jpeg",
  "dateCreated": "2018-09-01T06:00:00.000Z"
}

C.25 LearningObjective

A Caliper LearningObjective represents a brief statement of what a learner should know or be able to perform after completing a unit of instruction or a period of learning.

IRI

http://purl.imsglobal.org/caliper/LearningObjective

Supertype

Entity

Properties

LearningObjective inherits all the properties and requirements defined for its supertype Entity. Additional requirements are described below:

Property Type Description Disposition
id IRI A valid IRI MUST be specified. The IRI MUST be unique and persistent. The IRI SHOULD also be dereferenceable, i.e., capable of returning a representation of the resource. A URI employing the URN scheme MAY be provided in cases where a Linked Data friendly HTTP URI is either unavailable or inappropriate. Required
type Term The string value MUST be set to the Term LearningObjective. Required
name string A string value comprising a word or phrase by which the LearningObjective is known. Optional
description string A string value comprising a brief, written representation of the LearningObjective. Optional
dateCreated DateTime An ISO 8601 date and time value expressed with millisecond precision that describes when the LearningObjective was created. The value MUST be expressed using the format YYYY-MM-DDTHH:mm:ss.SSSZ set to UTC with no offset specified. Optional
dateModified DateTime An ISO 8601 date and time value expressed with millisecond precision that describes when the LearningObjective was last changed or modified. The value MUST be expressed using the format YYYY-MM-DDTHH:mm:ss.SSSZ set to UTC with no offset specified. Optional
extensions Object A map of additional attributes not defined by the model MAY be specified for a more concise representation of the LearningObjective. Optional

Example

{
  "@context": "http://purl.imsglobal.org/ctx/caliper/v1p1",
  "id": "https://example.edu/terms/201801/courses/7/sections/1/assign/2",
  "type": "AssignableDigitalResource",
  "name": "Caliper Profile Design",
  "description": "Choose a learning activity and describe the actions, entities and events that comprise it.",
  "learningObjectives": [
    {
      "id": "https://example.edu/terms/201801/courses/7/sections/1/objectives/1",
      "type": "LearningObjective",
      "name": "Research techniques",
      "description": "Demonstrate ability to model a learning activity as a Caliper profile.",
      "dateCreated": "2018-08-01T06:00:00.000Z"
    }
  ],
  "dateToActivate": "2018-11-10T11:59:59.000Z",
  "dateToShow": "2018-11-10T11:59:59.000Z",
  "dateCreated": "2018-11-01T06:00:00.000Z",
  "dateToStartOn": "2018-11-15T11:59:59.000Z",
  "dateToSubmit": "2018-11-14T11:59:59.000Z",
  "maxAttempts": 2,
  "maxSubmits": 2,
  "maxScore": 50.0
}

C.26 LtiSession

A Caliper LtiSession represents an LTI Tool Consumer user session.

IRI

http://purl.imsglobal.org/caliper/LtiSession

Supertype

Session

Properties

LtiSession inherits all the properties and requirements defined for its supertype Session. Additional properties and requirements are described below:

Property Type Description Disposition
id IRI A valid IRI MUST be specified. The IRI MUST be unique and persistent. The IRI SHOULD also be dereferenceable, i.e., capable of returning a representation of the resource. A URI employing the URN scheme MAY be provided in cases where a Linked Data friendly HTTP URI is either unavailable or inappropriate. Required
type Term The string value MUST be set to the Term LtiSession. Required
name string A string value comprising a word or phrase by which the LtiSession is known. Optional
description string A string value comprising a brief, written representation of the LtiSession. Optional
user Person The Person who initiated the LtiSession. Optional
messageParameters Object A map of LTI-specified message parameters that provide Tool Consumer-related contextual information. LTI message parameters of whatever type (i.e., required, recommended, optional, custom and extension) MAY be referenced. Optional
dateCreated DateTime An ISO 8601 date and time value expressed with millisecond precision that describes when the LtiSession was created. The value MUST be expressed using the format YYYY-MM-DDTHH:mm:ss.SSSZ set to UTC with no offset specified. Optional
dateModified DateTime An ISO 8601 date and time value expressed with millisecond precision that describes when the LtiSession was last changed or modified. The value MUST be expressed using the format YYYY-MM-DDTHH:mm:ss.SSSZ set to UTC with no offset specified. Optional
startedAtTime DateTime An ISO 8601 date and time value expressed with millisecond precision that describes when the LtiSession was commenced. The value MUST be expressed using the format YYYY-MM-DDTHH:mm:ss.SSSZ set to UTC with no offset specified. Optional
endedAtTime DateTime An ISO 8601 date and time value expressed with millisecond precision that describes when the LtiSession was completed or terminated. The value MUST be expressed using the format YYYY-MM-DDTHH:mm:ss.SSSZ set to UTC with no offset specified. Optional
duration Duration A time interval that represents the time taken to complete the LtiSession. If a duration is specified the value MUST conform to the ISO 8601 duration format. Optional
extensions Object A map of additional attributes not defined by the model MAY be specified for a more concise representation of the LtiSession. Optional

Deprecated Properties

The following LtiSession properties have been DEPRECATED and MUST NOT be utilized. The properties will be removed in a future version of Caliper.

Property Type Description Disposition
actor Person The Person who initiated the LtiSession. actor property has been DEPRECATED in and replaced by user. Optional

Example

{
    "id": "urn:uuid:1c519ff7-3dfa-4764-be48-d2fb35a2925a",
    "type": "LtiSession",
    "user": "https://example.edu/users/554433",
    "messageParameters": {
      "lti_message_type": "basic-lti-launch-request",
      "lti_version": "LTI-2p0",
      "context_id": "4f1a161f-59c3-43e5-be37-445ad09e3f76",
      "context_type": "CourseSection",
      "resource_link_id": "6b37a950-42c9-4117-8f4f-03e6e5c88d24",
      "roles": [ "Learner" ],
      "user_id": "0ae836b9-7fc9-4060-006f-27b2066ac545",
      "custom": {
        "caliper_session_id": "1c519ff7-3dfa-4764-be48-d2fb35a2925a",
        "tool_consumer_instance_url": "https://example.edu"
      },
      "ext": {
        "edu_example_course_section": "https://example.edu/terms/201801/courses/7/sections/1",
        "edu_example_course_section_roster": "https://example.edu/terms/201801/courses/7/sections/1/rosters/1",
        "edu_example_course_section_learner": "https://example.edu/users/554433",
        "edu_example_course_section_instructor": "https://example.edu/faculty/1234"
      }
    },
    "dateCreated": "2018-11-15T10:15:00.000Z",
    "startedAtTime": "2018-11-15T10:15:00.000Z"
  }

C.27 MediaLocation

A Caliper MediaLocation provides the current playback position in a MediaObject such as an AudioObject or VideoObject.

IRI

http://purl.imsglobal.org/caliper/MediaLocation

Supertype

DigitalResource

Properties

MediaLocation inherits all the properties and requirements defined for its supertype DigitalResource. Additional properties and requirements are described below:

Property Type Description Disposition
id IRI A valid IRI MUST be specified. The IRI MUST be unique and persistent. The IRI SHOULD also be dereferenceable, i.e., capable of returning a representation of the resource. A URI employing the URN scheme MAY be provided in cases where a Linked Data friendly HTTP URI is either unavailable or inappropriate. Required
type Term The string value MUST be set to the Term MediaLocation. Required
name string A string value comprising a word or phrase by which the MediaLocation is known. Optional
description string A string value comprising a brief, written representation of the MediaLocation. Optional
creators Array An ordered collection of Agent entities, typically of type Person, that are responsible for bringing this MediaLocation into being. Each array item MUST be expressed either as an object or as a string corresponding to the item’s IRI. Optional
mediaType string A string value drawn from the list of IANA approved media types and subtypes that identifies the file format of this MediaLocation. Optional
keywords Array An ordered collection of one or more string values that represent tags or labels used to identify the MediaLocation. Optional
learningObjectives Array An ordered collection of one or more LearningObjective entities that describe what a learner is expected to comprehend or accomplish after engaging with this MediaLocation. Each array item MUST be expressed either as an object or as a string corresponding to the item’s IRI. Optional
isPartOf Entity | IRI A related Entity that includes or incorporates this MediaLocation as a part of its whole. The isPartOf value MUST be expressed either as an object or as a string corresponding to the associated entity’s IRI. Optional
currentTime Duration A time interval or duration that represents the current playback position measured from the beginning of an AudioObject or VideoObject. If a currentTime is specified the value MUST conform to the ISO 8601 duration format. Optional
dateCreated DateTime An ISO 8601 date and time value expressed with millisecond precision that describes when the MediaLocation was created. The value MUST be expressed using the format YYYY-MM-DDTHH:mm:ss.SSSZ set to UTC with no offset specified. Optional
dateModified DateTime An ISO 8601 date and time value expressed with millisecond precision that describes when the MediaLocation was last changed or modified. The value MUST be expressed using the format YYYY-MM-DDTHH:mm:ss.SSSZ set to UTC with no offset specified. Optional
datePublished DateTime An ISO 8601 date and time value expressed with millisecond precision that provides the publication date of the MediaLocation. The value MUST be expressed using the format YYYY-MM-DDTHH:mm:ss.SSSZ set to UTC with no offset specified. Optional
version string A string value that designates the current form or version of the MediaLocation. Optional
extensions Object A map of additional attributes not defined by the model MAY be specified for a more concise representation of the MediaLocation. Optional

Deprecated Properties

The following MediaLocation properties have been DEPRECATED and MUST NOT be utilized. The properties will be removed in a future version of Caliper.

Property Type Description Disposition
objectType string A string value that designates the DigitalResource type. Optional
alignedLearningObjective Array An ordered collection of one or more LearningObjective entities that describe what a learner is expected to comprehend or accomplish after engaging with a DigitalResource. alignedLearningObjective has been DEPRECATED and replaced by learningObjectives. Optional

Example

{
  "@context": "http://purl.imsglobal.org/ctx/caliper/v1p1",
  "id": "https://example.edu/videos/1225",
  "type": "MediaLocation",
  "currentTime": "PT30M54S",
  "dateCreated": "2018-08-01T06:00:00.000Z"
}

C.28 MediaObject

A Caliper MediaObject represents a generic piece of media content.

Utilize MediaObject only if no suitable subtype exists to represent the resource being described.

IRI

http://purl.imsglobal.org/caliper/MediaObject

Supertype

DigitalResource

Properties

MediaObject inherits all the properties and requirements defined for its supertype DigitalResource. Additional properties and requirements are described below:

Property Type Description Disposition
id IRI A valid IRI MUST be specified. The IRI MUST be unique and persistent. The IRI SHOULD also be dereferenceable, i.e., capable of returning a representation of the resource. A URI employing the URN scheme MAY be provided in cases where a Linked Data friendly HTTP URI is either unavailable or inappropriate. Required
type Term The string value MUST be set to the Term MediaObject. Required
name string A string value comprising a word or phrase by which the MediaObject is known. Optional
description string A string value comprising a brief, written representation of the MediaObject. Optional
creators Array An ordered collection of Agent entities, typically of type Person, that are responsible for bringing this MediaObject into being. Each array item MUST be expressed either as an object or as a string corresponding to the item’s IRI. Optional
mediaType string A string value drawn from the list of IANA approved media types and subtypes that identifies the file format of this MediaObject. Optional
keywords Array An ordered collection of one or more string values that represent tags or labels used to identify the MediaObject. Optional
learningObjectives Array An ordered collection of one or more LearningObjective entities that describe what a learner is expected to comprehend or accomplish after engaging with this MediaObject. Each array item MUST be expressed either as an object or as a string corresponding to the item’s IRI. Optional
isPartOf Entity | IRI A related Entity that includes or incorporates this MediaObject as a part of its whole. The isPartOf value MUST be expressed either as an object or as a string corresponding to the associated entity’s IRI. Optional
duration Duration An optional time interval that represents the total time required to view and/or listen to the MediaObject at normal speed. If a duration is specified the value MUST conform to the ISO 8601 duration format. Optional
dateCreated DateTime An ISO 8601 date and time value expressed with millisecond precision that describes when the MediaObject was created. The value MUST be expressed using the format YYYY-MM-DDTHH:mm:ss.SSSZ set to UTC with no offset specified. Optional
dateModified DateTime An ISO 8601 date and time value expressed with millisecond precision that describes when the MediaObject was last changed or modified. The value MUST be expressed using the format YYYY-MM-DDTHH:mm:ss.SSSZ set to UTC with no offset specified. Optional
datePublished DateTime An ISO 8601 date and time value expressed with millisecond precision that provides the publication date of the MediaObject. The value MUST be expressed using the format YYYY-MM-DDTHH:mm:ss.SSSZ set to UTC with no offset specified. Optional
version string A string value that designates the current form or version of the MediaObject. Optional
extensions Object A map of additional attributes not defined by the model MAY be specified for a more concise representation of the MediaObject. Optional

Deprecated Properties

The following MediaObject properties have been DEPRECATED and MUST NOT be utilized. The properties will be removed in a future version of Caliper.

Property Type Description Disposition
objectType string A string value that designates the DigitalResource type. Optional
alignedLearningObjective Array An ordered collection of one or more LearningObjective entities that describe what a learner is expected to comprehend or accomplish after engaging with a DigitalResource. alignedLearningObjective has been DEPRECATED and replaced by learningObjectives. Optional

Subtypes

AudioObject, ImageObject, VideoObject

Example

{
  "@context": "http://purl.imsglobal.org/ctx/caliper/v1p1",
  "id": "https://example.edu/media/54321",
  "type": "MediaObject",
  "dateCreated": "2018-08-01T06:00:00.000Z",
  "dateModified": "2018-09-02T11:30:00.000Z",
  "duration": "PT1H17M50S"
}

C.29 Membership

A Caliper Membership describes the relationship between an Organization and an Agent, typically a Person (i.e., a member) in terms of the roles assigned and current status.

IRI

http://purl.imsglobal.org/caliper/Membership

Supertype

Entity

Properties

Membership inherits all the properties and requirements defined for its supertype Entity. Additional properties and requirements are described below:

Property Type Description Disposition
id IRI A valid IRI MUST be specified. The IRI MUST be unique and persistent. The IRI SHOULD also be dereferenceable, i.e., capable of returning a representation of the resource. A URI employing the URN scheme MAY be provided in cases where a Linked Data friendly HTTP URI is either unavailable or inappropriate. Required
type Term The string value MUST be set to the Term Membership. Required
name string A string value comprising a word or phrase by which the Membership is known. Optional
description string A string value comprising a brief, written representation of the Membership. Optional
organization Organization | IRI The Organization associated with the Membership. The organization value MUST be expressed either as an object or as a string corresponding to the organization’s IRI. Optional
member Person | IRI The Person associated with this Membership. The member value MUST be expressed either as an object or as a string corresponding to the member’s IRI. Optional
roles Array An ordered collection of organizational roles assigned to the member. Role values are limited to the list of Caliper defined roles terms. Whenever a subrole is specified, the core context role SHOULD also be included; for example, a role of Instructor#TeachingAssistant should always be accompanied by the Instructor role. Optional
status Term A string value that indicates the current standing of the member. If a status is specified, the value be chosen from the list of Caliper defined statuses. Optional
dateCreated DateTime An ISO 8601 date and time value expressed with millisecond precision that describes when the Membership was created. The value MUST be expressed using the format YYYY-MM-DDTHH:mm:ss.SSSZ set to UTC with no offset specified. Optional
dateModified DateTime An ISO 8601 date and time value expressed with millisecond precision that describes when the Membership was last changed or modified. The value MUST be expressed using the format YYYY-MM-DDTHH:mm:ss.SSSZ set to UTC with no offset specified. Optional
extensions Object A map of additional attributes not defined by the model MAY be specified for a more concise representation of the Membership. Optional

Example

{
  "@context": "http://purl.imsglobal.org/ctx/caliper/v1p1",
  "id": "https://example.edu/terms/201801/courses/7/sections/1/rosters/1/members/554433",
  "type": "Membership",
  "member": {
    "id": "https://example.edu/users/554433",
    "type": "Person"
  },
  "organization": {
    "id": "https://example.edu/terms/201801/courses/7/sections/1",
    "type": "CourseSection",
    "subOrganizationOf": {
      "id": "https://example.edu/terms/201801/courses/7",
      "type": "CourseOffering"
    }
  },
  "roles": [ "Learner" ],
  "status": "Active",
  "dateCreated": "2018-11-01T06:00:00.000Z"
}

C.30 Message

A Caliper Message is a digital form of written communication sent to a recipient. A series of messages may constitute a Thread if they share a common subject and are connected by a reply or by date relationships.

IRI

http://purl.imsglobal.org/caliper/Message

Supertype

DigitalResource

Properties

Message inherits all the properties and requirements defined for its supertype DigitalResource. Additional properties and requirements are described below:

Property Type Description Disposition
id IRI A valid IRI MUST be specified. The IRI MUST be unique and persistent. The IRI SHOULD also be dereferenceable, i.e., capable of returning a representation of the resource. A URI employing the URN scheme MAY be provided in cases where a Linked Data friendly HTTP URI is either unavailable or inappropriate. Required
type Term The string value MUST be set to the Term Message. Required
name string A string value comprising a word or phrase by which the Message is known. Optional
description string A string value comprising a brief, written representation of the Message. Optional
creators Array An ordered collection of Agent entities, typically of type Person, that are responsible for bringing this Message into being. Each array item MUST be expressed either as an object or as a string corresponding to the item’s IRI. Optional
mediaType string A string value drawn from the list of IANA approved media types and subtypes that identifies the file format of this Message. Optional
keywords Array An ordered collection of one or more string values that represent tags or labels used to identify the Message. Optional
learningObjectives Array An ordered collection of one or more LearningObjective entities that describe what a learner is expected to comprehend or accomplish after engaging with this Message. Each array item MUST be expressed either as an object or as a string corresponding to the item’s IRI. Optional
isPartOf Thread | IRI A related Thread that includes or incorporates this Message as a part of its whole. The isPartOf value MUST be expressed either as an object or as a string corresponding to the associated thread’s IRI. Optional
replyTo Message | IRI A Message that represents the post to which this Message is directed in reply. The replyTo value MUST be expressed either as an object or as a string corresponding to the associated message’s IRI. Optional
body string A string value comprising a plain-text rendering of the body content of the Message. Optional
attachments Array An ordered collection of one or more DigitalResource entities attached to this Message. Each array item MUST be expressed either as an object or as a string corresponding to the item’s IRI. Optional
dateCreated DateTime An ISO 8601 date and time value expressed with millisecond precision that describes when the Message was created. The value MUST be expressed using the format YYYY-MM-DDTHH:mm:ss.SSSZ set to UTC with no offset specified. Optional
dateModified DateTime An ISO 8601 date and time value expressed with millisecond precision that describes when the Message was last changed or modified. The value MUST be expressed using the format YYYY-MM-DDTHH:mm:ss.SSSZ set to UTC with no offset specified. Optional
datePublished DateTime An ISO 8601 date and time value expressed with millisecond precision that provides the publication date of the Message. The value MUST be expressed using the format YYYY-MM-DDTHH:mm:ss.SSSZ set to UTC with no offset specified. Optional
version string A string value that designates the current form or version of the Message. Optional
extensions Object A map of additional attributes not defined by the model MAY be specified for a more concise representation of the Message. Optional

Deprecated Properties

The following Message properties have been DEPRECATED and MUST NOT be utilized. The properties will be removed in a future version of Caliper.

Property Type Description Disposition
objectType string A string value that designates the DigitalResource type. Optional
alignedLearningObjective Array An ordered collection of one or more LearningObjective entities that describe what a learner is expected to comprehend or accomplish after engaging with a DigitalResource. alignedLearningObjective has been DEPRECATED and replaced by learningObjectives. Optional

Example

{
  "@context": "http://purl.imsglobal.org/ctx/caliper/v1p1",
  "id": "https://example.edu/terms/201801/courses/7/sections/1/forums/2/topics/1/messages/3",
  "type": "Message",
  "creators": [
    {
      "id": "https://example.edu/users/778899",
      "type": "Person"
    }
  ],
  "body": "The Caliper working group provides a set of Caliper Sensor reference implementations for the purposes of education and experimentation.  They have not been tested for use in a production environment.  See the Caliper Implementation Guide for more details.",
  "replyTo": {
    "id": "https://example.edu/terms/201801/courses/7/sections/1/forums/2/topics/1/messages/2",
    "type": "Message"
  },
  "isPartOf": {
    "id": "https://example.edu/terms/201801/courses/7/sections/1/forums/2/topics/1",
    "type": "Thread",
    "isPartOf": {
      "id": "https://example.edu/terms/201801/courses/7/sections/1/forums/2",
      "type": "Forum"
    }
  },
  "attachments": [
    {
      "id": "https://example.edu/etexts/201.epub",
      "type": "Document",
      "name": "IMS Caliper Implementation Guide",
      "dateCreated": "2018-10-01T06:00:00.000Z",
      "version": "1.1"
    }
  ],
  "dateCreated": "2018-11-15T10:15:30.000Z"
}

C.31 MultipleChoiceResponse

A Caliper MultipleChoiceResponse represents a type of Response in which a respondent is asked to provide the best possible answer from a list of choices.

IRI

http://purl.imsglobal.org/caliper/MultipleChoiceResponse

Supertype

Response

Properties

MultipleChoiceResponse inherits all the properties and requirements defined for its supertype Response. Additional properties and requirements are described below:

Property Type Description Disposition
id IRI A valid IRI MUST be specified. The IRI MUST be unique and persistent. The IRI SHOULD also be dereferenceable, i.e., capable of returning a representation of the resource. A URI employing the URN scheme MAY be provided in cases where a Linked Data friendly HTTP URI is either unavailable or inappropriate. Required
type Term The string value MUST be set to the Term MultipleChoiceResponse. Required
name string A string value comprising a word or phrase by which the MultipleChoiceResponse is known. Optional
description string A string value comprising a brief, written representation of the MultipleChoiceResponse. Optional
attempt Attempt | IRI The associated Attempt. The attempt value MUST be expressed either as an object or as a string corresponding to the attempt’s IRI. If an object representation is provided, the Attempt SHOULD reference both the Person who initiated the MultipleChoiceResponse and the relevant AssessmentItem. Optional
value string A string value that represents the selected option. Optional
dateCreated DateTime An ISO 8601 date and time value expressed with millisecond precision that describes when the MultipleChoiceResponse was created. The value MUST be expressed using the format YYYY-MM-DDTHH:mm:ss.SSSZ set to UTC with no offset specified. Optional
dateModified DateTime An ISO 8601 date and time value expressed with millisecond precision that describes when the MultipleChoiceResponse was last changed or modified. The value MUST be expressed using the format YYYY-MM-DDTHH:mm:ss.SSSZ set to UTC with no offset specified. Optional
startedAtTime DateTime An ISO 8601 date and time value expressed with millisecond precision that describes when the MultipleChoiceResponse was commenced. The value MUST be expressed using the format YYYY-MM-DDTHH:mm:ss.SSSZ set to UTC with no offset specified. Optional
endedAtTime DateTime An ISO 8601 date and time value expressed with millisecond precision that describes when the MultipleChoiceResponse was completed or terminated. The value MUST be expressed using the format YYYY-MM-DDTHH:mm:ss.SSSZ set to UTC with no offset specified. Optional
duration Duration A time interval that represents the time taken to complete the MultipleChoiceResponse. If a duration is specified the value MUST conform to the ISO 8601 duration format. Optional
extensions Object A map of additional attributes not defined by the model MAY be specified for a more concise representation of the MultipleChoiceResponse. Optional

Deprecated Properties

The following MultipleChoiceResponse properties have been DEPRECATED and MUST NOT be utilized. The properties will be removed in a future version of Caliper.

Property Type Description Disposition
actor Person The Person who generated the Response. actor has been DEPRECATED and replaced by attempt. Optional
assignable AssessmentItem The AssessmentItem associated with the Response. assignable has been DEPRECATED and replaced by attempt. Optional

Example

{
  "@context": "http://purl.imsglobal.org/ctx/caliper/v1p1",
  "id": "https://example.edu/terms/201801/courses/7/sections/1/assess/1/items/2/users/554433/responses/1",
  "type": "MultipleChoiceResponse",
  "attempt": {
    "id": "https://example.edu/terms/201801/courses/7/sections/1/assess/1/items/2/users/554433/attempts/1",
    "type": "Attempt",
    "assignee": {
      "id": "https://example.edu/users/554433",
      "type": "Person"
    },
    "assignable": {
      "id": "https://example.edu/terms/201801/courses/7/sections/1/assess/1/items/2",
      "type": "AssessmentItem",
      "isPartOf": {
        "id": "https://example.edu/terms/201801/courses/7/sections/1/assess/1",
        "type": "Assessment"
      }
    },
    "count": 1,
    "startedAtTime": "2018-11-15T10:15:14.000Z",
    "endedAtTime": "2018-11-15T10:15:20.000Z"
  },
  "dateCreated": "2018-11-15T10:15:20.000Z",
  "startedAtTime": "2018-11-15T10:15:14.000Z",
  "endedAtTime": "2018-11-15T10:15:20.000Z",
  "value": "C"
}

C.32 MultipleResponseResponse

A Caliper MultipleResponseResponse represents a form of response in which a respondent is asked to select more than one correct answer from a list of choices.

IRI

http://purl.imsglobal.org/caliper/MultipleResponseResponse

Supertype

Response

Properties

MultipleResponseResponse inherits all the properties and requirements defined for its supertype Response. Additional properties and requirements are described below:

Property Type Description Disposition
id IRI A valid IRI MUST be specified. The IRI MUST be unique and persistent. The IRI SHOULD also be dereferenceable, i.e., capable of returning a representation of the resource. A URI employing the URN scheme MAY be provided in cases where a Linked Data friendly HTTP URI is either unavailable or inappropriate. Required
type Term The string value MUST be set to the Term MultipleResponseResponse. Required
name string A string value comprising a word or phrase by which the MultipleResponseResponse is known. Optional
description string A string value comprising a brief, written representation of the MultipleResponseResponse. Optional
attempt Attempt | IRI The associated Attempt. The attempt value MUST be expressed either as an object or as a string corresponding to the attempt’s IRI. If an object representation is provided, the Attempt SHOULD reference both the Person who initiated the MultipleResponseResponse and the relevant AssessmentItem. Optional
values Array An ordered collection of one or more selected options MAY be specified Optional
dateCreated DateTime An ISO 8601 date and time value expressed with millisecond precision that describes when the MultipleResponseResponse was created. The value MUST be expressed using the format YYYY-MM-DDTHH:mm:ss.SSSZ set to UTC with no offset specified. Optional
dateModified DateTime An ISO 8601 date and time value expressed with millisecond precision that describes when the MultipleResponseResponse was last changed or modified. The value MUST be expressed using the format YYYY-MM-DDTHH:mm:ss.SSSZ set to UTC with no offset specified. Optional
startedAtTime DateTime An ISO 8601 date and time value expressed with millisecond precision that describes when the MultipleResponseResponse was commenced. The value MUST be expressed using the format YYYY-MM-DDTHH:mm:ss.SSSZ set to UTC with no offset specified. Optional
endedAtTime DateTime An ISO 8601 date and time value expressed with millisecond precision that describes when the MultipleResponseResponse was completed or terminated. The value MUST be expressed using the format YYYY-MM-DDTHH:mm:ss.SSSZ set to UTC with no offset specified. Optional
duration Duration A time interval that represents the time taken to complete the MultipleResponseResponse. If a duration is specified the value MUST conform to the ISO 8601 duration format. Optional
extensions Object A map of additional attributes not defined by the model MAY be specified for a more concise representation of the MultipleResponseResponse. Optional

Deprecated Properties

The following MultipleResponseResponse properties have been DEPRECATED and MUST NOT be utilized. The properties will be removed in a future version of Caliper.

Property Type Description Disposition
actor Person The Person who generated the Response. actor has been DEPRECATED and replaced by attempt. Optional
assignable AssessmentItem The AssessmentItem associated with the Response. assignable has been DEPRECATED and replaced by attempt. Optional

Example

{
  "@context": "http://purl.imsglobal.org/ctx/caliper/v1p1",
  "id": "https://example.edu/terms/201801/courses/7/sections/1/assess/1/items/3/users/554433/responses/1",
  "type": "MultipleResponseResponse",
  "attempt": {
    "id": "https://example.edu/terms/201801/courses/7/sections/1/assess/1/items/3/users/554433/attempts/1",
    "type": "Attempt",
    "assignee": {
      "id": "https://example.edu/users/554433",
      "type": "Person"
    },
    "assignable": {
      "id": "https://example.edu/terms/201801/courses/7/sections/1/assess/1/items/3",
      "type": "AssessmentItem",
      "isPartOf": {
        "id": "https://example.edu/terms/201801/courses/7/sections/1/assess/1",
        "type": "Assessment"
      }
    },
    "count": 1,
    "startedAtTime": "2018-11-15T10:15:22.000Z",
    "endedAtTime": "2018-11-15T10:15:30.000Z"
  },
  "dateCreated": "2018-11-15T10:15:22.000Z",
  "startedAtTime": "2018-11-15T10:15:22.000Z",
  "endedAtTime": "2018-11-15T10:15:30.000Z",
  "values": [ "A", "D", "E" ]
}

C.33 Organization

A Caliper Organization represents a formal collection of people organized for some common educational, social or administrative purpose. An Organization can act as an Agent. It can be linked both to a parent Organization and to its members.

IRI

http://purl.imsglobal.org/caliper/Organization

Supertype

Agent

Required properties

Organization inherits all the properties and requirements defined for Agent, its supertype. Additional properties and requirements are described below:

Property Type Description Disposition
id IRI A valid IRI MUST be specified. The IRI MUST be unique and persistent. The IRI SHOULD also be dereferenceable, i.e., capable of returning a representation of the resource. A URI employing the URN scheme MAY be provided in cases where a Linked Data friendly HTTP URI is either unavailable or inappropriate. Required
type Term The string value MUST be set to the Term Organization. Required
name string A string value comprising a word or phrase by which the Organization is known. Optional
description string A string value comprising a brief, written representation of the Organization. Optional
subOrganizationOf Organization | IRI The parent Organization of this Organization. The subOrganizationOf value MUST be expressed either as an object or as a string corresponding to the parent organization’s IRI. Optional
members Array An ordered collection of Agent entities. Each array item MUST be expressed either as an object or as a string corresponding to the item’s IRI. Optional
dateCreated DateTime An ISO 8601 date and time value expressed with millisecond precision that describes when the Organization was created. The value MUST be expressed using the format YYYY-MM-DDTHH:mm:ss.SSSZ set to UTC with no offset specified. Optional
dateModified DateTime An ISO 8601 date and time value expressed with millisecond precision that describes when the Organization was last changed or modified. The value MUST be expressed using the format YYYY-MM-DDTHH:mm:ss.SSSZ set to UTC with no offset specified. Optional
extensions Object A map of additional attributes not defined by the model MAY be specified for a more concise representation of the Organization. Optional

Subtypes

CourseOffering, CourseSection, Group

Example

{
  "@context": "http://purl.imsglobal.org/ctx/caliper/v1p1",
  "id": "https://example.edu/colleges/1/depts/1",
  "type": "Organization",
  "name": "Computer Science Department",
  "subOrganizationOf": {
    "id": "https://example.edu/colleges/1",
    "type": "Organization",
    "name": "College of Engineering"
  }
}

C.34 Page

A Caliper Page represents an item of paginated content.

IRI

http://purl.imsglobal.org/caliper/Page

Supertype

DigitalResource

Properties

Page inherits all the properties and requirements defined for its supertype DigitalResource. Additional requirements are described below:

Property Type Description Disposition
id IRI A valid IRI MUST be specified. The IRI MUST be unique and persistent. The IRI SHOULD also be dereferenceable, i.e., capable of returning a representation of the resource. A URI employing the URN scheme MAY be provided in cases where a Linked Data friendly HTTP URI is either unavailable or inappropriate. Required
type Term The string value MUST be set to the Term Page. Required
name string A string value comprising a word or phrase by which the Page is known. Optional
description string A string value comprising a brief, written representation of the Page. Optional
creators Array An ordered collection of Agent entities, typically of type Person, that are responsible for bringing this Page into being. Each array item MUST be expressed either as an object or as a string corresponding to the item’s IRI. Optional
mediaType string A string value drawn from the list of IANA approved media types and subtypes that identifies the file format of this Page. Optional
keywords Array An ordered collection of one or more string values that represent tags or labels used to identify the Page. Optional
learningObjectives Array An ordered collection of one or more LearningObjective entities that describe what a learner is expected to comprehend or accomplish after engaging with this Page. Each array item MUST be expressed either as an object or as a string corresponding to the item’s IRI. Optional
isPartOf Entity | IRI A related Entity that includes or incorporates this Page as a part of its whole. The isPartOf value MUST be expressed either as an object or as a string corresponding to the associated entity’s IRI. Optional
dateCreated DateTime An ISO 8601 date and time value expressed with millisecond precision that describes when the Page was created. The value MUST be expressed using the format YYYY-MM-DDTHH:mm:ss.SSSZ set to UTC with no offset specified. Optional
dateModified DateTime An ISO 8601 date and time value expressed with millisecond precision that describes when the Page was last changed or modified. The value MUST be expressed using the format YYYY-MM-DDTHH:mm:ss.SSSZ set to UTC with no offset specified. Optional
datePublished DateTime An ISO 8601 date and time value expressed with millisecond precision that provides the publication date of the Page. The value MUST be expressed using the format YYYY-MM-DDTHH:mm:ss.SSSZ set to UTC with no offset specified. Optional
version string A string value that designates the current form or version of the Page. Optional
extensions Object A map of additional attributes not defined by the model MAY be specified for a more concise representation of the Page. Optional

Deprecated Properties

The following Page properties have been DEPRECATED and MUST NOT be utilized. The properties will be removed in a future version of Caliper.

Property Type Description Disposition
objectType string A string value that designates the DigitalResource type. Optional
alignedLearningObjective Array An ordered collection of one or more LearningObjective entities that describe what a learner is expected to comprehend or accomplish after engaging with a DigitalResource. alignedLearningObjective has been DEPRECATED and replaced by learningObjectives. Optional

Example

{
  "@context": "http://purl.imsglobal.org/ctx/caliper/v1p1",
  "id": "https://example.com/#/texts/imscaliperimplguide/cfi/6/10!/4/2/2/2@0:0",
  "type": "Page",
  "name": "Page 5",
  "isPartOf": {
    "id": "https://example.com/#/texts/imscaliperimplguide/cfi/6/10",
    "type": "Chapter",
    "name": "Chapter 1",
    "isPartOf": {
      "id": "https://example.com/#/texts/imscaliperimplguide",
      "type": "Document",
      "name": "IMS Caliper Implementation Guide",
      "dateCreated": "2018-10-01T06:00:00.000Z",
      "version": "1.1"
    }
  }
}

C.35 Person

A Caliper Person represents a human being, alive or deceased, real or imaginary.

IRI

http://purl.imsglobal.org/caliper/Person

Supertype

Agent

Properties

Person inherits all the properties and requirements defined for its supertype Agent. Additional requirements are described below:

Property Type Description Disposition
id IRI A valid IRI MUST be specified. The IRI MUST be unique and persistent. The IRI SHOULD also be dereferenceable, i.e., capable of returning a representation of the resource. A URI employing the URN scheme MAY be provided in cases where a Linked Data friendly HTTP URI is either unavailable or inappropriate. Required
type Term The string value MUST be set to the Term Person. Required
name string A string value comprising a word or phrase by which the Person is known. Optional
description string A string value comprising a brief, written representation of the Person. Optional
dateCreated DateTime An ISO 8601 date and time value expressed with millisecond precision that describes when the Person was created. The value MUST be expressed using the format YYYY-MM-DDTHH:mm:ss.SSSZ set to UTC with no offset specified. Optional
dateModified DateTime An ISO 8601 date and time value expressed with millisecond precision that describes when the Person was last changed or modified. The value MUST be expressed using the format YYYY-MM-DDTHH:mm:ss.SSSZ set to UTC with no offset specified. Optional
extensions Object A map of additional attributes not defined by the model MAY be specified for a more concise representation of the Person. Optional

Example

{
  "@context": "http://purl.imsglobal.org/ctx/caliper/v1p1",
  "id": "https://example.edu/users/554433",
  "type": "Person",
  "dateCreated": "2018-08-01T06:00:00.000Z",
  "dateModified": "2018-09-02T11:30:00.000Z"
}

C.36 Reading (DEPRECATED)

A Caliper Reading represents an item of paginated content. Reading is a DEPRECATED entity superseded by Document that will be removed in a future version of the specification. It SHOULD NOT be referenced.

IRI

http://purl.imsglobal.org/caliper/Reading

Supertype

DigitalResource

Properties

Reading inherits all the properties and requirements defined for its supertype DigitalResource. Additional requirements are described below:

Property Type Description Disposition
id IRI A valid IRI MUST be specified. The IRI MUST be unique and persistent. The IRI SHOULD also be dereferenceable, i.e., capable of returning a representation of the resource. A URI employing the URN scheme MAY be provided in cases where a Linked Data friendly HTTP URI is either unavailable or inappropriate. Required
type Term The string value MUST be set to the Term Reading. Required
name string A string value comprising a word or phrase by which the Reading is known. Optional
description string A string value comprising a brief, written representation of the Reading. Optional
creators Array An ordered collection of Agent entities, typically of type Person, that are responsible for bringing this Reading into being. Each array item MUST be expressed either as an object or as a string corresponding to the item’s IRI. Optional
mediaType string A string value drawn from the list of IANA approved media types and subtypes that identifies the file format of this Reading. Optional
keywords Array An ordered collection of one or more string values that represent tags or labels used to identify the Reading. Optional
learningObjectives Array An ordered collection of one or more LearningObjective entities that describe what a learner is expected to comprehend or accomplish after engaging with this Reading. Each array item MUST be expressed either as an object or as a string corresponding to the item’s IRI. Optional
isPartOf Entity | IRI A related Entity that includes or incorporates this Reading as a part of its whole. The isPartOf value MUST be expressed either as an object or as a string corresponding to the associated entity’s IRI. Optional
dateCreated DateTime An ISO 8601 date and time value expressed with millisecond precision that describes when the Reading was created. The value MUST be expressed using the format YYYY-MM-DDTHH:mm:ss.SSSZ set to UTC with no offset specified. Optional
dateModified DateTime An ISO 8601 date and time value expressed with millisecond precision that describes when the Reading was last changed or modified. The value MUST be expressed using the format YYYY-MM-DDTHH:mm:ss.SSSZ set to UTC with no offset specified. Optional
datePublished DateTime An ISO 8601 date and time value expressed with millisecond precision that provides the publication date of the Reading. The value MUST be expressed using the format YYYY-MM-DDTHH:mm:ss.SSSZ set to UTC with no offset specified. Optional
version string A string value that designates the current form or version of the Reading. Optional
extensions Object A map of additional attributes not defined by the model MAY be specified for a more concise representation of the Reading. Optional

Deprecated Properties

The following Reading properties have been DEPRECATED and MUST NOT be utilized. The properties will be removed in a future version of Caliper.

Property Type Description Disposition
objectType string A string value that designates the DigitalResource type. Optional
alignedLearningObjective Array An ordered collection of one or more LearningObjective entities that describe what a learner is expected to comprehend or accomplish after engaging with a DigitalResource. alignedLearningObjective has been DEPRECATED and replaced by learningObjectives. Optional

C.37 Response

A Caliper Response is a generic type that represents the selected option generated by a Person interacting with an AssessmentItem.

Utilize Response only if no suitable subtype exists to represent the response being described.

IRI

http://purl.imsglobal.org/caliper/Response

Supertype

Entity

Properties

Response inherits all the properties and requirements defined for its supertype DigitalResource. Additional properties and requirements are described below:

Property Type Description Disposition
id IRI A valid IRI MUST be specified. The IRI MUST be unique and persistent. The IRI SHOULD also be dereferenceable, i.e., capable of returning a representation of the resource. A URI employing the URN scheme MAY be provided in cases where a Linked Data friendly HTTP URI is either unavailable or inappropriate. Required
type Term The string value MUST be set to the Term Response. Required
name string A string value comprising a word or phrase by which the Response is known. Optional
description string A string value comprising a brief, written representation of the Response. Optional
attempt Attempt | IRI The associated Attempt. The attempt value MUST be expressed either as an object or as a string corresponding to the attempt’s IRI. If an object representation is provided, the Attempt SHOULD reference both the Person who initiated the Response and the relevant AssessmentItem. Optional
dateCreated DateTime An ISO 8601 date and time value expressed with millisecond precision that describes when the Response was created. The value MUST be expressed using the format YYYY-MM-DDTHH:mm:ss.SSSZ set to UTC with no offset specified. Optional
dateModified DateTime An ISO 8601 date and time value expressed with millisecond precision that describes when the Response was last changed or modified. The value MUST be expressed using the format YYYY-MM-DDTHH:mm:ss.SSSZ set to UTC with no offset specified. Optional
startedAtTime DateTime An ISO 8601 date and time value expressed with millisecond precision that describes when the Response was commenced. The value MUST be expressed using the format YYYY-MM-DDTHH:mm:ss.SSSZ set to UTC with no offset specified. Optional
endedAtTime DateTime An ISO 8601 date and time value expressed with millisecond precision that describes when the Response was completed or terminated. The value MUST be expressed using the format YYYY-MM-DDTHH:mm:ss.SSSZ set to UTC with no offset specified. Optional
duration Duration A time interval that represents the time taken to complete the Response. If a duration is specified the value MUST conform to the ISO 8601 duration format. Optional
extensions Object A map of additional attributes not defined by the model MAY be specified for a more concise representation of the Response. Optional

Deprecated Properties

The following Response properties have been DEPRECATED and MUST NOT be utilized. The properties will be removed in a future version of Caliper.

Property Type Description Disposition
actor Person The Person who generated the Response. actor has been DEPRECATED and replaced by attempt. Optional
assignable AssessmentItem The AssessmentItem associated with the Response. assignable has been DEPRECATED and replaced by attempt. Optional

Subtypes

FillinBlankResponse, MultipleChoiceResponse, MutlipleResponseResponse, SelectTextResponse, TrueFalseResponse

Example

{
  "@context": "http://purl.imsglobal.org/ctx/caliper/v1p1",
  "id": "https://example.edu/terms/201801/courses/7/sections/1/assess/1/items/6/users/554433/responses/1",
  "type": "Response",
  "attempt": {
    "id": "https://example.edu/terms/201801/courses/7/sections/1/assess/1/items/6/users/554433/attempts/1",
    "type": "Attempt",
    "assignee": "https://example.edu/users/554433",
    "assignable": {
      "id": "https://example.edu/terms/201801/courses/7/sections/1/assess/1/items/6",
      "type": "AssessmentItem",
      "isPartOf": {
        "id": "https://example.edu/terms/201801/courses/7/sections/1/assess/1",
        "type": "Assessment"
      },
      "dateCreated": "2018-08-01T06:00:00.000Z",
      "datePublished": "2018-08-15T09:30:00.000Z",
      "isTimeDependent": false,
      "maxAttempts": 2,
      "maxScore": 5.0,
      "maxSubmits": 2,
      "extensions": {
        "questionType": "Short Answer",
        "questionText": "Define a Caliper Event and provide examples."
      }
    },
    "count": 1,
    "startedAtTime": "2018-11-15T10:15:46.000Z",
    "endedAtTime": "2018-11-15T10:17:20.000Z"
  },
  "dateCreated": "2018-11-15T10:15:46.000Z",
  "startedAtTime": "2018-11-15T10:15:46.000Z",
  "endedAtTime": "2018-11-15T10:17:20.000Z",
  "extensions": {
      "value": "A Caliper Event describes a relationship established between an actor and an object.  The relationship is formed as a result of a purposeful action undertaken by the actor in connection to the object at a particular moment. A learner starting an assessment, annotating a reading, pausing a video, or posting a message to a forum, are examples of learning activities that Caliper models as events."
    }
}

C.38 Result

A Caliper Result represents the current score or grade as recorded in a gradebook. The Result score value may represent an adjusted or scaled value and is considered mutable.

IRI

http://purl.imsglobal.org/caliper/Result

Supertype

Entity

Properties

Result inherits all the properties and requirements defined for its supertype Entity. Additional properties and requirements are described below:

Property Type Description Disposition
id IRI A valid IRI MUST be specified. The IRI MUST be unique and persistent. The IRI SHOULD also be dereferenceable, i.e., capable of returning a representation of the resource. A URI employing the URN scheme MAY be provided in cases where a Linked Data friendly HTTP URI is either unavailable or inappropriate. Required
type Term The string value MUST be set to the Term Result. Required
name string A string value comprising a word or phrase by which the Result is known. Optional
description string A string value comprising a brief, written representation of the Result. Optional
attempt Attempt | IRI The associated Attempt. The attempt value MUST be expressed either as an object or as a string corresponding to the attempt’s IRI. If an object representation is provided, the Attempt SHOULD reference both the Person who generated the Attempt and the assigned DigitalResource. Optional
maxResultScore decimal A number with a fractional part denoted by a decimal separator that designates the maximum result score permitted. Optional
resultScore decimal A number with a fractional part denoted by a decimal separator that designates the actual result score awarded. Optional
scoredBy Agent | IRI The Agent who scored or graded the Attempt. The scoredBy value MUST be expressed either as an object or as a string corresponding to the scorer’s IRI. Optional
comment string Plain text feedback provided by the scorer. Optional
dateCreated DateTime An ISO 8601 date and time value expressed with millisecond precision that describes when the Result was created. The value MUST be expressed using the format YYYY-MM-DDTHH:mm:ss.SSSZ set to UTC with no offset specified. Optional
dateModified DateTime An ISO 8601 date and time value expressed with millisecond precision that describes when the Result was last changed or modified. The value MUST be expressed using the format YYYY-MM-DDTHH:mm:ss.SSSZ set to UTC with no offset specified. Optional
extensions Object A map of additional attributes not defined by the model MAY be specified for a more concise representation of the Result. Optional

Deprecated Properties

The following Result properties have been DEPRECATED and MUST NOT be utilized. The properties will be removed in a future version of Caliper.

Property Type Description Disposition
actor Person The Person who generated the Attempt. actor has been DEPRECATED and replaced by attempt. Optional
assignable DigitalResource The assigned DigitalResource associated with the Result. assignable has been DEPRECATED and replaced by attempt. Optional
normalScore decimal The score earned by the learner before adding the extraCreditScore, subtracting the penaltyScore or applying the curveFactor, if any. Optional
penaltyScore decimal The number of points deducted from the normalScore due to an infraction such as submitting an Attempt after the due date. Optional
extraCreditScore decimal The number of extra credit points earned by the learner. Optional
totalScore decimal A score earned by the learner equal to the sum of normalScore + extraCreditScore - penaltyScore. This value does not take into account the effects of curving. Optional
curvedTotalScore decimal The total score earned by the learner after applying a curveFactor to a method for computing a scaled score; e.g., adjusting the score equal to the sum of 100 - curvedFactor(100 - totalScore). Optional
curveFactor decimal A scale factor to be used in adjusting the totalScore. Optional

Example

{
  "@context": "http://purl.imsglobal.org/ctx/caliper/v1p1",
  "id": "https://example.edu/terms/201801/courses/7/sections/1/assess/1/users/554433/attempts/1/results/1",
  "type": "Result",
  "attempt": {
    "id": "https://example.edu/terms/201801/courses/7/sections/1/assess/1/users/554433/attempts/1",
    "type": "Attempt",
    "assignee": {
      "id": "https://example.edu/users/554433",
      "type": "Person"
    },
    "assignable": {
      "id": "https://example.edu/terms/201801/courses/7/sections/1/assess/1",
      "type": "Assessment"
    },
    "count": 1,
    "dateCreated": "2018-11-15T10:05:00.000Z",
    "startedAtTime": "2018-11-15T10:05:00.000Z",
    "endedAtTime": "2018-11-15T10:55:30.000Z",
    "duration": "PT50M30S"
  },
  "maxResultScore": 15.0,
  "resultScore": 10.0,
  "scoredBy": {
    "id": "https://example.edu/autograder",
    "type": "SoftwareApplication",
    "dateCreated": "2018-11-15T10:55:58.000Z"
  },
  "comment": "Consider retaking the assessment.",
  "dateCreated": "2018-11-15T10:56:00.000Z"
}

C.39 Score

A Caliper Score represents a “raw” or unadjusted numeric score or grade awarded for a given assignment submission. A gradebook SHOULD treat the scoreGiven value as read-only and preserve it.

IRI

http://purl.imsglobal.org/caliper/Score

Supertype

Entity

Properties

Score inherits all the properties and requirements defined for its supertype Entity. Additional properties and requirements are described below:

Property Type Description Disposition
id IRI A valid IRI MUST be specified. The IRI MUST be unique and persistent. The IRI SHOULD also be dereferenceable, i.e., capable of returning a representation of the resource. A URI employing the URN scheme MAY be provided in cases where a Linked Data friendly HTTP URI is either unavailable or inappropriate. Required
type Term The string value MUST be set to the Term Score. Required
name string A string value comprising a word or phrase by which the Score is known. Optional
description string A string value comprising a brief, written representation of the Score. Optional
attempt Attempt | IRI The associated Attempt. The attempt value MUST be expressed either as an object or as a string corresponding to the attempt’s IRI. If an object representation is provided, the Attempt SHOULD reference both the Person who generated the Attempt and the assigned DigitalResource. Optional
maxScore decimal A number with a fractional part denoted by a decimal separator that designates the maximum score permitted. Optional
scoreGiven decimal A number with a fractional part denoted by a decimal separator that designates the actual score awarded. Optional
scoredBy Agent | IRI The Agent who scored or graded the Attempt. The scoredBy value MUST be expressed either as an object or as a string corresponding to the scorer’s IRI. Optional
comment string Plain text feedback provided by the scorer. Optional
dateCreated DateTime An ISO 8601 date and time value expressed with millisecond precision that describes when the Score was created. The value MUST be expressed using the format YYYY-MM-DDTHH:mm:ss.SSSZ set to UTC with no offset specified. Optional
dateModified DateTime An ISO 8601 date and time value expressed with millisecond precision that describes when the Score was last changed or modified. The value MUST be expressed using the format YYYY-MM-DDTHH:mm:ss.SSSZ set to UTC with no offset specified. Optional
extensions Object A map of additional attributes not defined by the model MAY be specified for a more concise representation of the Score. Optional

Example

{
  "@context": "http://purl.imsglobal.org/ctx/caliper/v1p1",
  "id": "https://example.edu/terms/201801/courses/7/sections/1/assess/1/users/554433/attempts/1/scores/1",
  "type": "Score",
  "attempt": {
    "id": "https://example.edu/terms/201801/courses/7/sections/1/assess/1/users/554433/attempts/1",
    "type": "Attempt",
    "assignee": "https://example.edu/users/554433",
    "assignable": "https://example.edu/terms/201801/courses/7/sections/1/assess/1",
    "count": 1,
    "dateCreated": "2018-11-15T10:05:00.000Z",
    "startedAtTime": "2018-11-15T10:05:00.000Z",
    "endedAtTime": "2018-11-15T10:55:30.000Z",
    "duration": "PT50M30S"
  },
  "maxScore": 15.0,
  "scoreGiven": 10.0,
  "scoredBy": {
    "id": "https://example.edu/autograder",
    "type": "SoftwareApplication",
    "dateCreated": "2018-11-15T10:55:58.000Z"
  },
  "comment": "auto-graded exam",
  "dateCreated": "2018-11-15T10:56:00.000Z"
}

C.40 SelectTextResponse

A Caliper SelectTextResponse represents a type of Response that identifies text or a mapping from a presented paragraph or list.

IRI

http://purl.imsglobal.org/caliper/SelectTextResponse

Supertype

Response

Properties

SelectTextResponse inherits all the properties and requirements defined for its supertype Response. Additional properties and requirements are described below:

Property Type Description Disposition
id IRI A valid IRI MUST be specified. The IRI MUST be unique and persistent. The IRI SHOULD also be dereferenceable, i.e., capable of returning a representation of the resource. A URI employing the URN scheme MAY be provided in cases where a Linked Data friendly HTTP URI is either unavailable or inappropriate. Required
type Term The string value MUST be set to the Term SelectTextResponse. Required
name string A string value comprising a word or phrase by which the SelectTextResponse is known. Optional
description string A string value comprising a brief, written representation of the SelectTextResponse. Optional
attempt Attempt | IRI The associated Attempt. The attempt value MUST be expressed either as an object or as a string corresponding to the attempt’s IRI. If an object representation is provided, the Attempt SHOULD reference both the Person who initiated the SelectTextResponse and the relevant AssessmentItem. Optional
values Array An ordered collection of one or more selected options. Optional
dateCreated DateTime An ISO 8601 date and time value expressed with millisecond precision that describes when the SelectTextResponse was created. The value MUST be expressed using the format YYYY-MM-DDTHH:mm:ss.SSSZ set to UTC with no offset specified. Optional
dateModified DateTime An ISO 8601 date and time value expressed with millisecond precision that describes when the SelectTextResponse was last changed or modified. The value MUST be expressed using the format YYYY-MM-DDTHH:mm:ss.SSSZ set to UTC with no offset specified. Optional
startedAtTime DateTime An ISO 8601 date and time value expressed with millisecond precision that describes when the SelectTextResponse was commenced. The value MUST be expressed using the format YYYY-MM-DDTHH:mm:ss.SSSZ set to UTC with no offset specified. Optional
endedAtTime DateTime An ISO 8601 date and time value expressed with millisecond precision that describes when the SelectTextResponse was completed or terminated. The value MUST be expressed using the format YYYY-MM-DDTHH:mm:ss.SSSZ set to UTC with no offset specified. Optional
duration Duration A time interval that represents the time taken to complete the SelectTextResponse. If a duration is specified the value MUST conform to the ISO 8601 duration format. Optional
extensions Object A map of additional attributes not defined by the model MAY be specified for a more concise representation of the SelectTextResponse. Optional

Deprecated Properties

The following SelectTextResponse properties have been DEPRECATED and MUST NOT be utilized. The properties will be removed in a future version of Caliper.

Property Type Description Disposition
actor Person The Person who generated the Response. actor has been DEPRECATED and replaced by attempt. Optional
assignable AssessmentItem The AssessmentItem associated with the Response. assignable has been DEPRECATED and replaced by attempt. Optional

Example

{
  "@context": "http://purl.imsglobal.org/ctx/caliper/v1p1",
  "id": "https://example.edu/terms/201801/courses/7/sections/1/assess/1/items/4/users/554433/responses/1",
  "type": "SelectTextResponse",
  "attempt": {
    "id": "https://example.edu/terms/201801/courses/7/sections/1/assess/1/items/4/users/554433/attempts/1",
    "type": "Attempt",
    "assignee": {
      "id": "https://example.edu/users/554433",
      "type": "Person"
    },
    "assignable": {
      "id": "https://example.edu/terms/201801/courses/7/sections/1/assess/1/items/4",
      "type": "AssessmentItem",
      "isPartOf": {
        "id": "https://example.edu/terms/201801/courses/7/sections/1/assess/1",
        "type": "Assessment"
      }
    },
    "count": 1,
    "startedAtTime": "2018-11-15T10:15:32.000Z",
    "endedAtTime": "2018-11-15T10:15:38.000Z"
  },
  "dateCreated": "2018-11-15T10:15:32.000Z",
  "startedAtTime": "2018-11-15T10:15:32.000Z",
  "endedAtTime": "2018-11-15T10:15:38.000Z",
  "values": [ "Information Model", "Sensor API", "Profiles" ]
}

C.41 Session

A Caliper Session represents a web application user session.

IRI

http://purl.imsglobal.org/caliper/Session

Supertype

Entity

Properties

Session inherits all the properties and requirements defined for Entity, its supertype. Additional properties and requirements are described below:

Property Type Description Disposition
id IRI A valid IRI MUST be specified. The IRI MUST be unique and persistent. The IRI SHOULD also be dereferenceable, i.e., capable of returning a representation of the resource. A URI employing the URN scheme MAY be provided in cases where a Linked Data friendly HTTP URI is either unavailable or inappropriate. Required
type Term The string value MUST be set to the Term Agent. Required
name string A string value comprising a word or phrase by which the Session is known. Optional
description string A string value comprising a brief, written representation of the Session. Optional
user Person The Person who initiated the Session. Optional
dateCreated DateTime An ISO 8601 date and time value expressed with millisecond precision that describes when the Session was created. The value MUST be expressed using the format YYYY-MM-DDTHH:mm:ss.SSSZ set to UTC with no offset specified. Optional
dateModified DateTime An ISO 8601 date and time value expressed with millisecond precision that describes when the Session was last changed or modified. The value MUST be expressed using the format YYYY-MM-DDTHH:mm:ss.SSSZ set to UTC with no offset specified. Optional
startedAtTime DateTime An ISO 8601 date and time value expressed with millisecond precision that describes when the Session was commenced. The value MUST be expressed using the format YYYY-MM-DDTHH:mm:ss.SSSZ set to UTC with no offset specified. Optional
endedAtTime DateTime An ISO 8601 date and time value expressed with millisecond precision that describes when the Session was completed or terminated. The value MUST be expressed using the format YYYY-MM-DDTHH:mm:ss.SSSZ set to UTC with no offset specified. Optional
duration Duration A time interval that represents the time taken to complete the Session. If a duration is specified the value MUST conform to the ISO 8601 duration format. Optional
extensions Object A map of additional attributes not defined by the model MAY be specified for a more concise representation of the Session. Optional

Deprecated Properties

The following Session properties have been DEPRECATED and MUST NOT be utilized. The properties will be removed in a future version of Caliper.

Property Type Description Disposition
actor Person The Person who initiated the Session. actor property has been DEPRECATED and replaced by user. Optional

Subtypes

LtiSession

Example

{
  "@context": "http://purl.imsglobal.org/ctx/caliper/v1p1",
  "id": "https://example.edu/sessions/1f6442a482de72ea6ad134943812bff564a76259",
  "type": "Session",
  "user": {
    "id": "https://example.edu/users/554433",
    "type": "Person"
  },
  "startedAtTime": "2018-09-15T10:00:00.000Z"
}

C.42 SharedAnnotation

A Caliper SharedAnnotation represents the act of sharing a reference to a DigitalResource with other agents.

IRI

http://purl.imsglobal.org/caliper/SharedAnnotation

Supertype

Annotation

Properties

SharedAnnotation inherits all the properties and requirements defined for its supertype Annotation. Additional properties and requirements are described below:

Property Type Description Disposition
id IRI A valid IRI MUST be specified. The IRI MUST be unique and persistent. The IRI SHOULD also be dereferenceable, i.e., capable of returning a representation of the resource. A URI employing the URN scheme MAY be provided in cases where a Linked Data friendly HTTP URI is either unavailable or inappropriate. Required
type Term The string value MUST be set to the Term SharedAnnotation. Required
name string A string value comprising a word or phrase by which the SharedAnnotation is known. Optional
description string A string value comprising a brief, written representation of the SharedAnnotation. Optional
annotator Person | IRI The Person sharing a reference to a resource. The annotator value MUST be expressed either as an object or as a string corresponding to the annotator’s IRI. Optional
annotated DigitalResource | IRI The DigitalResource that was annotated by the annotator. The annotated value MUST be expressed either as an object or as a string corresponding to the annotated resource’s IRI. Optional
withAgents Array An ordered collection of one or more Agent entities, typically of type Person, with whom the annotated DigitalResource has been shared. Each array item MUST be expressed either as an object or as a string corresponding to the item’s IRI. Optional
dateCreated DateTime An ISO 8601 date and time value expressed with millisecond precision that describes when the SharedAnnotation was created. The value MUST be expressed using the format YYYY-MM-DDTHH:mm:ss.SSSZ set to UTC with no offset specified. Optional
dateModified DateTime An ISO 8601 date and time value expressed with millisecond precision that describes when the SharedAnnotation was last changed or modified. The value MUST be expressed using the format YYYY-MM-DDTHH:mm:ss.SSSZ set to UTC with no offset specified. Optional
extensions Object A map of additional attributes not defined by the model MAY be specified for a more concise representation of the SharedAnnotation. Optional

Example

{
  "@context": "http://purl.imsglobal.org/ctx/caliper/v1p1",
  "id": "https://example.edu/users/554433/etexts/201/shares/1",
  "type": "SharedAnnotation",
  "annotator": {
    "id": "https://example.edu/users/554433",
    "type": "Person"
  },
  "annotated": {
    "id": "https://example.edu/etexts/201.epub",
    "type": "Document"
  },
  "withAgents": [
    {
      "id": "https://example.edu/users/657585",
      "type": "Person"
    },
    {
      "id": "https://example.edu/users/667788",
      "type": "Person"
    }
  ],
  "dateCreated": "2018-08-01T09:00:00.000Z"
}

C.43 SoftwareApplication

A Caliper SoftwareApplication represents a computer program, application, module, platform or system.

IRI

http://purl.imsglobal.org/caliper/SoftwareApplication

Supertype

Agent

Properties

SoftwareApplication inherits all the properties and requirements defined for its supertype Agent. Additional properties and requirements are described below:

Property Type Description Disposition
id IRI A valid IRI MUST be specified. The IRI MUST be unique and persistent. The IRI SHOULD also be dereferenceable, i.e., capable of returning a representation of the resource. A URI employing the URN scheme MAY be provided in cases where a Linked Data friendly HTTP URI is either unavailable or inappropriate. Required
type Term The string value MUST be set to the Term SoftwareApplication. Required
name string A string value comprising a word or phrase by which the SoftwareApplication is known. Optional
description string A string value comprising a brief, written representation of the SoftwareApplication. Optional
dateCreated DateTime An ISO 8601 date and time value expressed with millisecond precision that describes when the SoftwareApplication was created. The value MUST be expressed using the format YYYY-MM-DDTHH:mm:ss.SSSZ set to UTC with no offset specified. Optional
dateModified DateTime An ISO 8601 date and time value expressed with millisecond precision that describes when the SoftwareApplication was last changed or modified. The value MUST be expressed using the format YYYY-MM-DDTHH:mm:ss.SSSZ set to UTC with no offset specified. Optional
version string An optional string value that designates the current form or version of this SoftwareApplication. Optional
extensions Object A map of additional attributes not defined by the model MAY be specified for a more concise representation of the SoftwareApplication. Optional

Example

{
  "@context": "http://purl.imsglobal.org/ctx/caliper/v1p1",
  "id": "https://example.edu/autograder",
  "type": "SoftwareApplication",
  "name": "Auto Grader",
  "description": "Automates assignment scoring.",
  "version": "2.5.2"
}

C.44 TagAnnotation

A Caliper TagAnnotation represents the act of tagging a DigitalResource with tags or labels.

IRI

http://purl.imsglobal.org/caliper/TagAnnotation

Supertype

Annotation

Properties

TagAnnotation inherits all the properties and requirements defined for its supertype Annotation. Additional properties and requirements are described below:

Property Type Description Disposition
id IRI A valid IRI MUST be specified. The IRI MUST be unique and persistent. The IRI SHOULD also be dereferenceable, i.e., capable of returning a representation of the resource. A URI employing the URN scheme MAY be provided in cases where a Linked Data friendly HTTP URI is either unavailable or inappropriate. Required
type Term The string value MUST be set to the Term TagAnnotation. Required
name string A string value comprising a word or phrase by which the TagAnnotation is known. Optional
description string A string value comprising a brief, written representation of the TagAnnotation. Optional
annotator Person | IRI The Person who created the TagAnnotation. The annotator value MUST be expressed either as an object or as a string corresponding to the annotator’s IRI. Optional
annotated DigitalResource | IRI The DigitalResource that was annotated by the annotator. The annotated value MUST be expressed either as an object or as a string corresponding to the annotated resource’s IRI. Optional
tags Array An ordered collection of one or more string values that represent the tags associated with the annotated DigitalResource. Optional
dateCreated DateTime An ISO 8601 date and time value expressed with millisecond precision that describes when the TagAnnotation was created. The value MUST be expressed using the format YYYY-MM-DDTHH:mm:ss.SSSZ set to UTC with no offset specified. Optional
dateModified DateTime An ISO 8601 date and time value expressed with millisecond precision that describes when the TagAnnotation was last changed or modified. The value MUST be expressed using the format YYYY-MM-DDTHH:mm:ss.SSSZ set to UTC with no offset specified. Optional
extensions Object A map of additional attributes not defined by the model MAY be specified for a more concise representation of the TagAnnotation. Optional

Example

{
  "@context": "http://purl.imsglobal.org/ctx/caliper/v1p1",
  "id": "https://example.com/users/554433/texts/imscaliperimplguide/tags/3",
  "type": "TagAnnotation",
  "annotator": {
    "id": "https://example.edu/users/554433",
    "type": "Person"
  },
  "annotated": {
    "id": "https://example.com/#/texts/imscaliperimplguide/cfi/6/10!/4/2/2/2@0:0",
    "type": "Page"
  },
  "tags": [ "profile", "event", "entity" ],
  "dateCreated": "2018-08-01T09:00:00.000Z"
}

C.45 Thread

A Caliper Thread represents a series of one or more messages that share a common subject and are connected by a reply or by date relationships.

IRI

http://purl.imsglobal.org/caliper/Thread

Supertype

DigitalResourceCollection

Properties

Thread inherits all the properties and requirements defined for its supertype DigitalResourceCollection. Additional properties and requirements are described below:

Property Type Description Disposition
id IRI A valid IRI MUST be specified. The IRI MUST be unique and persistent. The IRI SHOULD also be dereferenceable, i.e., capable of returning a representation of the resource. A URI employing the URN scheme MAY be provided in cases where a Linked Data friendly HTTP URI is either unavailable or inappropriate. Required
type Term The string value MUST be set to the Term Forum. Required
name string A string value comprising a word or phrase by which the Thread is known. Optional
description string A string value comprising a brief, written representation of the Thread. Optional
creators Array An ordered collection of Agent entities, typically of type Person, that are responsible for bringing this Thread into being. Each array item MUST be expressed either as an object or as a string corresponding to the item’s IRI. Optional
mediaType string A string value drawn from the list of IANA approved media types and subtypes that identifies the file format of this Thread. Optional
keywords Array An ordered collection of one or more string values that represent tags or labels used to identify the Thread. Optional
learningObjectives Array An ordered collection of one or more LearningObjective entities that describe what a learner is expected to comprehend or accomplish after engaging with this Thread. Each array item MUST be expressed either as an object or as a string corresponding to the item’s IRI. Optional
isPartOf Forum | IRI A related Forum that includes or incorporates this Thread as a part of its whole. The isPartOf value MUST be expressed either as an object or as a string corresponding to the associated entity’s IRI. Optional
items Array An ordered collection of Message entities. Each array item MUST be expressed either as an object or as a string corresponding to the item’s IRI. Optional
dateCreated DateTime An ISO 8601 date and time value expressed with millisecond precision that describes when the Thread was created. The value MUST be expressed using the format YYYY-MM-DDTHH:mm:ss.SSSZ set to UTC with no offset specified. Optional
dateModified DateTime An ISO 8601 date and time value expressed with millisecond precision that describes when the Thread was last changed or modified. The value MUST be expressed using the format YYYY-MM-DDTHH:mm:ss.SSSZ set to UTC with no offset specified. Optional
datePublished DateTime An ISO 8601 date and time value expressed with millisecond precision that provides the publication date of the Thread. The value MUST be expressed using the format YYYY-MM-DDTHH:mm:ss.SSSZ set to UTC with no offset specified. Optional
version string A string value that designates the current form or version of the Forum. Optional
extensions Object A map of additional attributes not defined by the model MAY be specified for a more concise representation of the Thread. Optional

Deprecated Properties

The following Thread properties have been DEPRECATED and MUST NOT be utilized. The properties will be removed in a future version of Caliper.

Property Type Description Disposition
objectType string A string value that designates the DigitalResource type. Optional
alignedLearningObjective Array An ordered collection of one or more LearningObjective entities that describe what a learner is expected to comprehend or accomplish after engaging with a DigitalResource. alignedLearningObjective has been DEPRECATED and replaced by learningObjectives. Optional

Example

{
  "@context": "http://purl.imsglobal.org/ctx/caliper/v1p1",
  "id": "https://example.edu/terms/201801/courses/7/sections/1/forums/1/topics/1",
  "type": "Thread",
  "name": "Caliper Information Model",
  "items": [
    {
      "id": "https://example.edu/terms/201801/courses/7/sections/1/forums/1/topics/1/messages/1",
      "type": "Message"
    },
    {
      "id": "https://example.edu/terms/201801/courses/7/sections/1/forums/1/topics/1/messages/2",
      "type": "Message",
      "replyTo": {
        "id": "https://example.edu/terms/201801/courses/7/sections/1/forums/1/topics/1/messages/1",
        "type": "Message"
      }
    },
    {
      "id": "https://example.edu/terms/201801/courses/7/sections/1/forums/1/topics/1/messages/3",
      "type": "Message",
      "replyTo": {
        "id": "https://example.edu/terms/201801/courses/7/sections/1/forums/1/topics/1/messages/2",
        "type": "Message"
      }
    }
  ],
  "isPartOf": {
    "id": "https://example.edu/terms/201801/courses/7/sections/1/forums/1",
    "type": "Forum",
    "name": "Caliper Forum",
    "isPartOf": {
      "id": "https://example.edu/terms/201801/courses/7/sections/1",
      "type": "CourseSection",
      "subOrganizationOf": {
        "id": "https://example.edu/terms/201801/courses/7",
        "type": "CourseOffering"
      }
    }
  },
  "dateCreated": "2018-08-01T06:00:00.000Z",
  "dateModified": "2018-09-02T11:30:00.000Z"
}

C.46 TrueFalseResponse

A Caliper TrueFalseResponse represents a type of Response to an AssessmentItem in which only two possible options are provided (e.g., true/false, yes/no).

IRI

http://purl.imsglobal.org/caliper/TrueFalseResponse

Supertype

Response

Properties

TrueFalseResponse inherits all the properties and requirements defined for Response, its supertype. Additional properties and requirements are described below:

Property Type Description Disposition
id IRI A valid IRI MUST be specified. The IRI MUST be unique and persistent. The IRI SHOULD also be dereferenceable, i.e., capable of returning a representation of the resource. A URI employing the URN scheme MAY be provided in cases where a Linked Data friendly HTTP URI is either unavailable or inappropriate. Required
type Term The string value MUST be set to the Term TrueFalseResponse. Required
name string A string value comprising a word or phrase by which the TrueFalseResponse is known. Optional
description string A string value comprising a brief, written representation of the TrueFalseResponse. Optional
attempt Attempt | IRI The associated Attempt. The attempt value MUST be expressed either as an object or as a string corresponding to the attempt’s IRI. If an object representation is provided, the Attempt SHOULD reference both the Person who initiated the TrueFalseResponse and the relevant AssessmentItem. Optional
value string A string value that provides the true/false, yes/no binary selection SHOULD be provided. Optional
dateCreated DateTime An ISO 8601 date and time value expressed with millisecond precision that describes when the TrueFalseResponse was created. The value MUST be expressed using the format YYYY-MM-DDTHH:mm:ss.SSSZ set to UTC with no offset specified. Optional
dateModified DateTime An ISO 8601 date and time value expressed with millisecond precision that describes when the TrueFalseResponse was last changed or modified. The value MUST be expressed using the format YYYY-MM-DDTHH:mm:ss.SSSZ set to UTC with no offset specified. Optional
startedAtTime DateTime An ISO 8601 date and time value expressed with millisecond precision that describes when the TrueFalseResponse was commenced. The value MUST be expressed using the format YYYY-MM-DDTHH:mm:ss.SSSZ set to UTC with no offset specified. Optional
endedAtTime DateTime An ISO 8601 date and time value expressed with millisecond precision that describes when the TrueFalseResponse was completed or terminated. The value MUST be expressed using the format YYYY-MM-DDTHH:mm:ss.SSSZ set to UTC with no offset specified. Optional
duration Duration A time interval that represents the time taken to complete the TrueFalseResponse. If a duration is specified the value MUST conform to the ISO 8601 duration format. Optional
extensions Object A map of additional attributes not defined by the model MAY be specified for a more concise representation of the TrueFalseResponse. Optional

Deprecated Properties

The following TrueFalseResponse properties have been DEPRECATED and MUST NOT be utilized. The properties will be removed in a future version of Caliper.

Property Type Description Disposition
actor Person The Person who generated the Response. actor has been DEPRECATED and replaced by attempt. Optional
assignable AssessmentItem The AssessmentItem associated with the Response. assignable has been DEPRECATED and replaced by attempt. Optional

Example

{
  "@context": "http://purl.imsglobal.org/ctx/caliper/v1p1",
  "id": "https://example.edu/terms/201801/courses/7/sections/1/assess/1/items/5/users/554433/responses/1",
  "type": "TrueFalseResponse",
  "attempt": {
    "id": "https://example.edu/terms/201801/courses/7/sections/1/assess/1/items/5/users/554433/attempts/1",
    "type": "Attempt",
    "assignee": {
      "id": "https://example.edu/users/554433",
      "type": "Person"
    },
    "assignable": {
      "id": "https://example.edu/terms/201801/courses/7/sections/1/assess/1/items/5",
      "type": "AssessmentItem",
      "isPartOf": {
        "id": "https://example.edu/terms/201801/courses/7/sections/1/assess/1",
        "type": "Assessment"
      }
    },
    "count": 1,
    "startedAtTime": "2018-11-15T10:15:40.000Z",
    "endedAtTime": "2018-11-15T10:15:45.000Z"
  },
  "dateCreated": "2018-11-15T10:15:45.000Z",
  "startedAtTime": "2018-11-15T10:15:40.000Z",
  "endedAtTime": "2018-11-15T10:15:45.000Z",
  "value": "true"
}

C.47 VideoObject

A Caliper VideoObject represents a visual recording stored in digital form.

IRI

http://purl.imsglobal.org/caliper/VideoObject

Supertype

MediaObject

Properties

VideoObject inherits all the properties and requirements defined for its supertype MediaObject. Additional requirements are described below:

Property Type Description Disposition
id IRI A valid IRI MUST be specified. The IRI MUST be unique and persistent. The IRI SHOULD also be dereferenceable, i.e., capable of returning a representation of the resource. A URI employing the URN scheme MAY be provided in cases where a Linked Data friendly HTTP URI is either unavailable or inappropriate. Required
type Term The string value MUST be set to the Term VideoObject. Required
name string A string value comprising a word or phrase by which the VideoObject is known. Optional
description string A string value comprising a brief, written representation of the VideoObject. Optional
creators Array An ordered collection of Agent entities, typically of type Person, that are responsible for bringing this VideoObject into being. Each array item MUST be expressed either as an object or as a string corresponding to the item’s IRI. Optional
mediaType string A string value drawn from the list of IANA approved media types and subtypes that identifies the file format of this VideoObject. Optional
keywords Array An ordered collection of one or more string values that represent tags or labels used to identify the VideoObject. Optional
learningObjectives Array An ordered collection of one or more LearningObjective entities that describe what a learner is expected to comprehend or accomplish after engaging with this VideoObject. Each array item MUST be expressed either as an object or as a string corresponding to the item’s IRI. Optional
isPartOf Entity | IRI A related Entity that includes or incorporates this VideoObject as a part of its whole. The isPartOf value MUST be expressed either as an object or as a string corresponding to the associated entity’s IRI. Optional
duration Duration An optional time interval that represents the total time required to view and/or listen to the VideoObject at normal speed. If a duration is specified the value MUST conform to the ISO 8601 duration format. Optional
dateCreated DateTime An ISO 8601 date and time value expressed with millisecond precision that describes when the VideoObject was created. The value MUST be expressed using the format YYYY-MM-DDTHH:mm:ss.SSSZ set to UTC with no offset specified. Optional
dateModified DateTime An ISO 8601 date and time value expressed with millisecond precision that describes when the VideoObject was last changed or modified. The value MUST be expressed using the format YYYY-MM-DDTHH:mm:ss.SSSZ set to UTC with no offset specified. Optional
datePublished DateTime An ISO 8601 date and time value expressed with millisecond precision that provides the publication date of the VideoObject. The value MUST be expressed using the format YYYY-MM-DDTHH:mm:ss.SSSZ set to UTC with no offset specified. Optional
version string A string value that designates the current form or version of the VideoObject. Optional
extensions Object A map of additional attributes not defined by the model MAY be specified for a more concise representation of the VideoObject. Optional

Deprecated Properties

The following VideoObject properties have been DEPRECATED and MUST NOT be utilized. The properties will be removed in a future version of Caliper.

Property Type Description Disposition
objectType string A string value that designates the DigitalResource type. Optional
alignedLearningObjective Array An ordered collection of one or more LearningObjective entities that describe what a learner is expected to comprehend or accomplish after engaging with a DigitalResource. alignedLearningObjective has been DEPRECATED and replaced by learningObjectives. Optional

Example

{
  "@context": "http://purl.imsglobal.org/ctx/caliper/v1p1",
  "id": "https://example.edu/videos/1225",
  "type": "VideoObject",
  "mediaType": "video/ogg",
  "name": "Introduction to IMS Caliper",
  "version": "1.1",
  "dateCreated": "2018-08-01T06:00:00.000Z",
  "dateModified": "2018-09-02T11:30:00.000Z",
  "duration": "PT1H12M27S"
}

C.48 WebPage

A Caliper WebPage represents a document containing markup that is suitable for display in a web browser.

IRI

http://purl.imsglobal.org/caliper/WebPage

Supertype

DigitalResource

Properties

WebPage inherits all the properties and requirements defined for its supertype DigitalResource. Additional requirements are described below:

Property Type Description Disposition
id IRI A valid IRI MUST be specified. The IRI MUST be unique and persistent. The IRI SHOULD also be dereferenceable, i.e., capable of returning a representation of the resource. A URI employing the URN scheme MAY be provided in cases where a Linked Data friendly HTTP URI is either unavailable or inappropriate. Required
type Term The string value MUST be set to the Term WebPage. Required
name string A string value comprising a word or phrase by which the WebPage is known. Optional
description string A string value comprising a brief, written representation of the WebPage. Optional
creators Array An ordered collection of Agent entities, typically of type Person, that are responsible for bringing this WebPage into being. Each array item MUST be expressed either as an object or as a string corresponding to the item’s IRI. Optional
mediaType string A string value drawn from the list of IANA approved media types and subtypes that identifies the file format of this WebPage. Optional
keywords Array An ordered collection of one or more string values that represent tags or labels used to identify the WebPage. Optional
learningObjectives Array An ordered collection of one or more LearningObjective entities that describe what a learner is expected to comprehend or accomplish after engaging with this WebPage. Each array item MUST be expressed either as an object or as a string corresponding to the item’s IRI. Optional
isPartOf Entity | IRI A related Entity that includes or incorporates this WebPage as a part of its whole. The isPartOf value MUST be expressed either as an object or as a string corresponding to the associated entity’s IRI. Optional
dateCreated DateTime An ISO 8601 date and time value expressed with millisecond precision that describes when the WebPage was created. The value MUST be expressed using the format YYYY-MM-DDTHH:mm:ss.SSSZ set to UTC with no offset specified. Optional
dateModified DateTime An ISO 8601 date and time value expressed with millisecond precision that describes when the WebPage was last changed or modified. The value MUST be expressed using the format YYYY-MM-DDTHH:mm:ss.SSSZ set to UTC with no offset specified. Optional
datePublished DateTime An ISO 8601 date and time value expressed with millisecond precision that provides the publication date of the WebPage. The value MUST be expressed using the format YYYY-MM-DDTHH:mm:ss.SSSZ set to UTC with no offset specified. Optional
version string A string value that designates the current form or version of the WebPage. Optional
extensions Object A map of additional attributes not defined by the model MAY be specified for a more concise representation of the WebPage. Optional

Deprecated Properties

The following WebPage properties have been DEPRECATED and MUST NOT be utilized. The properties will be removed in a future version of Caliper.

Property Type Description Disposition
objectType string A string value that designates the DigitalResource type. Optional
alignedLearningObjective Array An ordered collection of one or more LearningObjective entities that describe what a learner is expected to comprehend or accomplish after engaging with a DigitalResource. alignedLearningObjective has been DEPRECATED and replaced by learningObjectives. Optional

Example

{
  "@context": "http://purl.imsglobal.org/ctx/caliper/v1p1",
  "id": "https://example.edu/terms/201801/courses/7/sections/1/pages/index.html",
  "type": "WebPage",
  "name": "CPS 435-01 Landing Page",
  "mediaType": "text/html",
  "isPartOf": {
    "id": "https://example.edu/terms/201801/courses/7/sections/1",
    "type": "CourseSection",
    "courseNumber": "CPS 435-01",
    "academicSession": "Fall 2018"
  }
}

Appendix D. Selectors

A Caliper Selector represents a fragment, selection or part of an Entity.

D.1 TextPositionSelector

A Caliper TextPositionSelector represents a fragment or selection of textual content, the starting and ending positions of which are determined by the distance in characters from the initial character (position 0) of the enclosing full text.

IRI

http://purl.imsglobal.org/caliper/TextPositionSelector

Properties

Property Type Description Disposition
type Term The string value MUST be set to the Term TextPositionSelector. Required
start integer The starting position of the selected text MUST be specified. The first character in the full text is character position 0. Required
end integer The end position of the selected text MUST be specified. Required
{
  "@context": "http://purl.imsglobal.org/ctx/caliper/v1p1",
  "id": "https://example.edu/users/554433/etexts/201/highlights/20",
  "type": "HighlightAnnotation",
  "annotator": {
    "id": "https://example.edu/users/554433",
    "type": "Person"
  },
  "annotated": {
    "id": "https://example.edu/etexts/201",
    "type": "Document"
  },
  "selection": {
    "type": "TextPositionSelector",
    "start": 2300,
    "end": 2370
  },
  "selectionText": "ISO 8601 formatted date and time expressed with millisecond precision.",
  "dateCreated": "2018-08-01T06:00:00.000Z"
}

Appendix E. Roles

Roles

Membership includes an optional roles property for assigning one or more roles to an Event actor described as a member of an organization. Role values are limited to the list of Caliper role terms derived from the IMS LIS specification. Assigning core context roles should prove sufficient in most cases. Whenever a subrole is specified, the related context role SHOULD also be included. For example, a role of Instructor#TeachingAssistant SHOULD always be accompanied by the Instructor role.

Context Roles

Term IRI Core
Administrator http://purl.imsglobal.org/vocab/lis/v2/membership#Administrator Yes
ContentDeveloper http://purl.imsglobal.org/vocab/lis/v2/membership#ContentDeveloper Yes
Instructor http://purl.imsglobal.org/vocab/lis/v2/membership#Instructor Yes
Learner http://purl.imsglobal.org/vocab/lis/v2/membership#Learner Yes
Manager http://purl.imsglobal.org/vocab/lis/v2/membership#Manager No
Member http://purl.imsglobal.org/vocab/lis/v2/membership#Member No
Mentor http://purl.imsglobal.org/vocab/lis/v2/membership#Mentor Yes
Officer http://purl.imsglobal.org/vocab/lis/v2/membership#Officer No

SubRoles

Term IRI
Administrator#Administrator http://purl.imsglobal.org/vocab/lis/v2/membership/Administrator#Administrator
Administrator#Developer http://purl.imsglobal.org/vocab/lis/v2/membership/Administrator#Developer
Administrator#ExternalDeveloper http://purl.imsglobal.org/vocab/lis/v2/membership/Administrator#ExternalDeveloper
Administrator#ExternalSupport http://purl.imsglobal.org/vocab/lis/v2/membership/Administrator#ExternalSupport
Administrator#ExternalSystemAdministrator http://purl.imsglobal.org/vocab/lis/v2/membership/Administrator#ExternalSystemAdministrator
Administrator#Support http://purl.imsglobal.org/vocab/lis/v2/membership/Administrator#Support
Administrator#SystemAdministrator http://purl.imsglobal.org/vocab/lis/v2/membership/Administrator#SystemAdministrator
ContentDeveloper#ContentDeveloper http://purl.imsglobal.org/vocab/lis/v2/membership/ContentDeveloper#ContentDeveloper
ContentDeveloper#ContentExpert http://purl.imsglobal.org/vocab/lis/v2/membership/ContentDeveloper#ContentExpert
ContentDeveloper#ExternalContentExpert http://purl.imsglobal.org/vocab/lis/v2/membership/ContentDeveloper#ExternalContentExpert
ContentDeveloper#Librarian http://purl.imsglobal.org/vocab/lis/v2/membership/ContentDeveloper#Librarian
Instructor#ExternalInstructor http://purl.imsglobal.org/vocab/lis/v2/membership/Instructor#ExternalInstructor
Instructor#Grader http://purl.imsglobal.org/vocab/lis/v2/membership/Instructor#Grader
Instructor#GuestInstructor http://purl.imsglobal.org/vocab/lis/v2/membership/Instructor#GuestInstructor
Instructor#Instructor http://purl.imsglobal.org/vocab/lis/v2/membership/Instructor#Instructor
Instructor#Lecturer http://purl.imsglobal.org/vocab/lis/v2/membership/Instructor#Lecturer
Instructor#PrimaryInstructor http://purl.imsglobal.org/vocab/lis/v2/membership/Instructor#PrimaryInstructor
Instructor#SecondaryInstructor http://purl.imsglobal.org/vocab/lis/v2/membership/Instructor#SecondaryInstructor
Instructor#TeachingAssistant http://purl.imsglobal.org/vocab/lis/v2/membership#Instructor#TeachingAssistant
Instructor#TeachingAssistantGroup http://purl.imsglobal.org/vocab/lis/v2/membership/Instructor#TeachingAssistantGroup
Instructor#TeachingAssistantOffering http://purl.imsglobal.org/vocab/lis/v2/membership/Instructor#TeachingAssistantOffering
Instructor#TeachingAssistantSection http://purl.imsglobal.org/vocab/lis/v2/membership/Instructor#TeachingAssistantSection
Instructor#TeachingAssistantTemplate http://purl.imsglobal.org/vocab/lis/v2/membership/Instructor#TeachingAssistantTemplate
Learner#ExternalLearner http://purl.imsglobal.org/vocab/lis/v2/membership/Learner#ExternalLearner
Learner#GuestLearner http://purl.imsglobal.org/vocab/lis/v2/membership/Learner#GuestLearner
Learner#Learner http://purl.imsglobal.org/vocab/lis/v2/membership/Learner#Learner
Learner#NonCreditLearner http://purl.imsglobal.org/vocab/lis/v2/membership/Learner#NonCreditLearner
Manager#AreaManager http://purl.imsglobal.org/vocab/lis/v2/membership/Manager#AreaManager
Manager#CourseCoordinator http://purl.imsglobal.org/vocab/lis/v2/membership/Manager#CourseCoordinator
Manager#Observer http://purl.imsglobal.org/vocab/lis/v2/membership/Manager#Observer",
Manager#ExternalObserver http://purl.imsglobal.org/vocab/lis/v2/membership/Manager#ExternalObserver
Member#Member http://purl.imsglobal.org/vocab/lis/v2/membership/Member#Member
Mentor#Advisor http://purl.imsglobal.org/vocab/lis/v2/membership/Mentor#Advisor
Mentor#Auditor http://purl.imsglobal.org/vocab/lis/v2/membership/Mentor#Auditor
Mentor#ExternalAdvisor http://purl.imsglobal.org/vocab/lis/v2/membership/Mentor#ExternalAdvisor
Mentor#ExternalAuditor http://purl.imsglobal.org/vocab/lis/v2/membership/Mentor#ExternalAuditor
Mentor#ExternalLearningFacilitator http://purl.imsglobal.org/vocab/lis/v2/membership/Mentor#ExternalLearningFacilitator
Mentor#ExternalMentor http://purl.imsglobal.org/vocab/lis/v2/membership/Mentor#ExternalMentor
Mentor#ExternalReviewer http://purl.imsglobal.org/vocab/lis/v2/membership/Mentor#ExternalReviewer
Mentor#ExternalTutor "http://purl.imsglobal.org/vocab/lis/v2/membership/Mentor#ExternalTutor
Mentor#LearningFacilitator http://purl.imsglobal.org/vocab/lis/v2/membership/Mentor#LearningFacilitator
Mentor#Mentor http://purl.imsglobal.org/vocab/lis/v2/membership/Mentor#Mentor
Mentor#Reviewer http://purl.imsglobal.org/vocab/lis/v2/membership/Mentor#Reviewer
Mentor#Tutor http://purl.imsglobal.org/vocab/lis/v2/membership/Mentor#Tutor
Officer#Chair http://purl.imsglobal.org/vocab/lis/v2/membership/Officer#Chair
Officer#Secretary http://purl.imsglobal.org/vocab/lis/v2/membership/Officer#Secretary
Officer#Treasurer http://purl.imsglobal.org/vocab/lis/v2/membership/Officer#Treasurer
Officer#Vice-Chair http://purl.imsglobal.org/vocab/lis/v2/membership/Officer#Vice-Chair

Appendix F. Status

The status of a member within an organization can be set to one of the following states: active or inactive. The value MUST be set to the appropriate Term string value:

Term IRI
Active http://purl.imsglobal.org/vocab/lis/v2/status#Active
Inactive http://purl.imsglobal.org/vocab/lis/v2/status#Inactive

Appendix G. Minimum Supported String Lengths

When storing normalized or “flattened” Caliper Event data, the following minimum character lengths SHOULD be assumed in order to accommodate Caliper data expressed as strings of variable length.

Domain(s) Property Description Minimum Length
Event, Entity id A UUID assigned to the Event that is expressed as a URN in the form urn:uuid:<UUID> or the IRI assigned to the Entity. 2048
Event, Entity type The Caliper Term designated for the Event or Entity. 256
Event action The Caliper Term designated for the supported action. 256
Entity name A word or phrase by which the Entity is known. 256
Entity description A human-readable plain text representation of the Entity. 1024
AudioObject volumeLevel The current volume level. 32
AudioObject volumeMax The maximum volume level permitted. 32
AudioObject volumeMin The minimum volume level permitted. 32
BookmarkAnnotation BookmarkNotes A plain text rendering of the note that accompanies the bookmark. 1024
CourseOffering, CourseSection academicSession A human-readable identifier of the designated period in which the course occurs. 256
CourseOffering, CourseSection courseNumber A human-readable identifier assigned to the course. 128
CourseSection category A string value that characterizes the purpose of the section such as “lecture”, “lab” or “seminar”. 128
DigitalResource mediaType IANA approved media type or subtype that identifies the file format of the resource. 128
DigitalResource, SoftwareApplication version Designates the current form or version of the Entity being described. 64
FillinBlankResponse, MultipleResponseResponse, SelectTextResponse values<value> Minimum supported length applies to each response included in the values array. 256
HighlightAnnotation selectionText A plain text rendering of the highlighted segment of the annotated resource. 2048
Membership roles<role> Minimum supported length applies to each Caliper designated role Term included in the roles array. 256
Membership status The Caliper Term designated for the selected status. 256
Message body A plain-text rendering of the body content of the Message. 4096
MultipleChoiceResponse, TrueFalseResponse value Plain text representation of the selected option 256
Result comment Plain text feedback provided by the scorer. 1024

Appendix H. Change Log

Caliper 1.1 additions and deprecations are summarized below.

H.1 Profiles

Profile Status Disposition
AssessmentItem Profile Removed Considered redundant. AssessmentItemEvent has been relocated to the Assessment Profile.
Basic Profile New Utilize the generic Event for describing learning or supporting activities that have yet to be modeled by Caliper.
Forum Profile New Models learners and others participating in online forum communities.
Grading Profile New Replaces Outcome Profile. Adds Score.
Outcome Profile Removed Replaced by Grading Profile.
Reading Profile Revised ReadingEvent has been deprecated and targeted for removal while NavigationEvent and ViewEvent have been added to the profile. EpubChapter, EpubPart, EpubSubChapter, EpubVolume have been deprecated in favor of Document, Chapter and Page.
Tool Use Profile New A light-weight profile that models an intended interaction between a Person and a SoftwareApplication.

H.2 Actions

Actions Status WordNet® Gloss
Added New Make an addition (to); join or combine or unite with others; increase the quality, quantity, size or scope of. Inverse of Removed.
Created New Make or cause to be or to become. Inverse of Deleted.
Deleted New Wipe out digitally. Inverse of Created.
MarkedAsRead New Mark: designate as if by a mark, Read: interpret something that is written or printed. Inverse of MarkedAsUnread.
MarkedAsUnread New Inverse of MarkedAsRead.
Modified New Cause to change; make different; cause a transformation.
Posted New To cause to be directed or transmitted to another place.
Removed New Remove from sight. Inverse of Added.
Reset New Set anew without changing or incrementing the [Attempt] count value.
Retrieved New Obtain or retrieve from a storage device; as of information on a computer.
Unsubscribed New Inverse of Subscribed.
Used New Put into service; make work or employ for a particular purpose or for its inherent or natural purpose.

H.3 Events

Event Status Disposition
AnnotationEvent Revised The following actions have been deprecated and are targeted for removal from the list of supported AnnotationEvent actions: Attached, Classified, Commented, Described, Disliked, Identified, Liked, Linked, Questioned, Ranked, Recommended and Subscribed.
AssessmentEvent Revised Reset and Restarted added to the list of supported actions.
AssessmentItemEvent Revised The following actions have been deprecated and are targeted for removal from the list of supported AssessmentItemEvent actions: Reviewed, Viewed.
AssignableEvent Revised Submitted added to the list of supported actions. The following actions have been deprecated and are targeted for removal from the list of supported AssignableEvent actions: Abandoned, Hid, Showed.
ForumEvent New Introduced in conjunction with the Caliper 1.1 Forum Profile. Supported actions: Subscribed, Unsubscribed.
GradeEvent New Replaces OutcomeEvent. Score replaces Result as the generated object.
MediaEvent Revised Restarted added to the list of supported actions. The following actions have been deprecated and are targeted for removal from the list of supported MediaEvent actions: Rewound.
MessageEvent New Introduced in conjunction with the Caliper 1.1 Forum Profile. Supported actions: Posted, MarkedAsRead, MarkedAsUnRead.
OutcomeEvent Deprecated Use GradeEvent.
ReadingEvent Deprecated Targeted for removal in a future version of the specification.
ThreadEvent New Introduced in conjunction with the Caliper 1.1 Forum Profile. Supported actions: Posted, MarkedAsRead, MarkedAsUnRead.
ToolUseEvent New Introduced in conjunction with the Caliper 1.1 Tool Use Profile. Supported actions: Used.

H.4 Entities

Entity Status Disposition
Chapter New Introduced as part of the revisions to the Caliper 1.1 Reading Profile.
DigitalResourceCollection New Provides a means of representing a collection of items of type DigitalResource.
Document New Introduced as part of the revisions to the Caliper 1.1 Reading Profile.
EpubChapter Deprecated Targeted for removal in a future version of the specification.
EpubPart Deprecated Targeted for removal in a future version of the specification.
EpubSubChapter Deprecated Targeted for removal in a future version of the specification.
EpubVolume Deprecated Targeted for removal in a future version of the specification.
Forum New Introduced in conjunction with the Caliper 1.1 Forum Profile.
LtiSession New Extends Session with the addition of an LTI-related messageParameters property.
Message New Introduced in conjunction with the Caliper 1.1 Forum Profile.
Page New Introduced as part of the revisions to the Caliper 1.1 Reading Profile.
Reading Deprecated Targeted for removal in a future version of the specification.
Score New Introduced as part of the revisions to the Caliper 1.1 Grading Profile.
Thread New Introduced in conjunction with the Caliper 1.1 Forum Profile.

H.5 Properties

Domain Property Status Disposition
Event id New Each Event MUST be provisioned with a UUID. The UUID MUST be expressed as a URN using the form urn:uuid:<UUID> per RFC 4122. A version 4 UUID is RECOMMENDED.
Event type New Replaces use of the JSON-LD @type keyword which is now aliased as type in the external IMS Caliper JSON-LD context document. type string value also changed from IRI to Term, e.g. MessageEvent.
Event @type Deprecated Use type.
Event action Revised action string value changed from IRI to Term, e.g. Started.
Event referrer New Adds the ability to specify a referring context. In the case of NavigationEvent referrer supersedes the deprecated navigatedFrom property.
Event session New Adds the ability to specify the user Session context.
Event extensions New Adds the ability to include custom attributes not defined by the model.
NavigationEvent navigatedFrom Deprecated Targeted for removal in a future version of the specification. Use referrer.
Entity id New Replaces use of the JSON-LD keyword @id which is now aliased as id in the external IMS Caliper JSON-LD context.
Entity @id Deprecated Use id.
Entity type New Replaces use of the JSON-LD @type keyword which is now aliased as type in the external IMS Caliper JSON-LD context. type string value also changed from IRI to Term, e.g. Person.
Entity @type Deprecated Use type.
Annotation annotator New Adds the ability to specify the Agent who created the Annotation.
Attempt actor Deprecated Targeted for removal in a future version of the specification. Use assignee.
Attempt assignee New Replaces the deprecated actor property in order to provide a more concise term.
Attempt isPartOf New Adds the ability to reference the parent Attempt, if any.
DigitalResource alignedLearningObjective Deprecated Targeted for removal in a future version of the specification. Use learningObjectives.
DigitalResource creators New Adds the ability to specify the authors of the resource.
DigitalResource learningObjectives New Replaces the deprecated alignedLearningObjective property with a plural term that adheres to the naming format adopted for collections and lists.
DigitalResource mediaType New Adds the ability to specify the IANA media type that identifies the file format of the resource.
DigitalResource objectType Deprecated Targeted for removal in a future version of the specification. Use type.
DigitalResourceCollection items New Adds the ability to specify the individual resources that comprise the collection.
LtiSession messageParameters New Adds the ability to specify LTI message parameters.
MediaLocation currentTime Revised Datatype changed to an ISO 8601 formatted duration string set to UTC.
Membership roles Revised Individual role values changed from IRI to Term, e.g. Learner.
Membership status Revised status string value changed from IRI to Term, e.g. Active.
Organization members New Adds the ability to specify the collection of members that comprise the Organization.
Response actor Deprecated Targeted for removal in a future version of the specification. Use attempt.
Response assignable Deprecated Targeted for removal in a future version of the specification. Use attempt.
Response attempt New Adds the ability to reference the learner’s associated Attempt. Replaces the deprecated actor and assignable.
Result actor Deprecated Targeted for removal in a future version of the specification. Use attempt.
Result assignable Deprecated Targeted for removal in a future version of the specification. Use attempt.
Result attempt New Adds the ability to reference the learner’s associated Attempt. Replaces the deprecated actor and assignable properties.
Result curveFactor Deprecated Targeted for removal in a future version of the specification.
Result curvedTotalScore Deprecated Targeted for removal in a future version of the specification.
Result extraCreditScore Deprecated Targeted for removal in a future version of the specification.
Result normalScore Deprecated Targeted for removal in a future version of the specification.
Result maxresultScore New Maps to LTI Gradebook-services Result.resultMaximum.
Result penaltyScore Deprecated Targeted for removal in a future version of the specification.
Result resultScore New Maps to LTI Gradebook-services Result.resultScore.
Result totalScore Deprecated Targeted for removal in a future version of the specification. Use resultScore.
Session actor Deprecated Targeted for removal in a future version of the specification. Use user.
Session user New Replaces the deprecated actor property in order to provide a more concise term.
Score maxScore New The maximum permitted score value. Maps to LTI Gradebook-services Score.scoreMaximum.
Score scoreGiven New The score or grade awarded for a given assignment. Maps to LTI Gradebook-services Score.scoreGiven.
SoftwareApplication version New Adds the ability to specify the current form or version of the SoftwareApplication.

H.6 JSON-LD context

A new IMS Caliper context document has been created. See http://purl.imsglobal.org/ctx/caliper/v1p1.

Contributors

The following Caliper Working Group participants contributed to the writing of this specification:

Authors

Name Organization
Anthony Whyte University of Michigan
Viktor Haag D2L
Linda Feng Unicon
Markus Gylling IMS Global
Matt Ashbourne McGraw-Hill Education
Wes LaMarche ACT
Etienne Pelaprat Unizin

Editors and Reviewers

Name Organization
Steven Erickson Unicon
Daniel Green VitalSource Technologies
Jeff Longland UBC
Yong-Sang Cho KERIS
Ian Turgeon University of Central Florida
Chris Ward Instructure
Lance E Sloan University of Michigan

Reference Implementation Contributors

Name Organization
Markus Gylling IMS Global
Viktor Haag D2L
Sophiann Hayet Explorance
Paul Kerschen UC Berkeley
Lance E Sloan University of Michigan
Anthony Whyte University of Michigan

References

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

RDF. W3C. Resource Description Framework (RDF). URL: https://www.w3.org/RDF/

RFC 2119. IETF. S. Bradner. “Key words for use in RFCs to Indicate Requirement Levels.” March 1997. URL: https://tools.ietf.org/html/rfc2119

RFC 2396. IETF. T. Berners-Lee, R. Fielding, L. Masinter. “Uniform Resource Identifiers (URI): Generic Syntax.” August 1998. URL: https://www.ietf.org/rfc/rfc2396.txt

RFC 3987. IETF. M. Duerst and M. Suignard. "Internationalized Resource Identifiers (IRIs). January 2005. URL: https://www.ietf.org/rfc/rfc3987.txt

RFC 4122. IETF. P. Leach, M. Mealling and R. Salz. “A Universally Unique Identifier (UUID) URN Namespace.” July 2005. URL: https://tools.ietf.org/html/rfc4122

RFC 6750. IETF. M. Jones and D. Hardt. “The OAuth 2.0 Authorization Framework: Bearer Token Usage.” October 2012. URL: https://tools.ietf.org/html/rfc6750

RFC 7231. IETF. R. Fielding and J. Reschke, eds. Hypertext Transfer Protocol (HTTP/1.1): Semantics and Content. June 2014. URL: https://tools.ietf.org/html/rfc7231.

RFC 7807. IETF. M. Nottingham, E. Wilde. “Problem Details for HTTP APIs.” March 2017. URL: https://tools.ietf.org/html/rfc7807

Calliper White Paper. IMS Global Learning Consortium. “Learning Measurement for Analytics Whitepaper [sic].” August 2013. URL: https://www.imsglobal.org/sites/default/files/caliper/IMSLearningAnalyticsWP.pdf

WordNet. Princeton University. WordNet®. A lexical database for English. 2010. URL: https://wordnet.princeton.edu/

About this Document

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: IMS Caliper Analytics® Final Specification v1.1

Date: 12 January 2018

For more information on the IMS trademark usage policy see trademark policy page - https://www.imsglobal.org/trademarks