Skip to main content


Feb 2016

cmi5 – Not your father's SCORM

Blog posts



Shaping the future of learning

xAPI is the darling of the digital learning industry these days, with a lot of interest in it due to its ability to capture data outside of an LMS. In its essence, cmi5 is a profile or a set of rules for using xAPI that could be utilized to govern the communication between a learning management system (LMS) and learning content. And thus it begs the question, could cmi5 be the link you need to take your formal learning to the next level?

Tracking learners’ data 

As mentioned in one of our last posts, the limitations inherent in SCORM, and consequently AICC, led to the arrival of the xAPI specification. xAPI provides means to circumvent setbacks with the SCORM and AICC standards, such as the limited number of data points that could be communicated—including duration, score and status—and the requirement that content must reside on the same domain as the LMS. We see a lot of promise in xAPI to help learning break out of the box of the traditional LMS, but it's important to know that there are other options out there that can help us capture more and better data about learners and performance.

Enter cmi5 

With cmi5, xAPI acts as the communications tool and data model. Furthermore, cmi5 provides rules to regulate how system components (whether it's the LMS or content) communicate. This is important, as using an xAPI solution without guidelines to process data means there's no guarantee of a consistent workflow and results. 

Once content is launched from an LMS, xAPI statements are stored in a Learning Record Store (LRS). The LRS serves as the communication conduit between learning content and an LMS. Check out a list of the cmi5 vocabulary.

cmi5 is just one example of how xAPI enhances formal learning and training that is launched from the LMS without requiring the content to reside in the LMS. Its data model is simple in the fact that it only defines a handful of cross-domain elements. However, basing cmi5 on xAPI renders it extensible and capable of tracking and collecting numerous types of data such as media, text and binary data. In addition, for the sake of formal training and credit, cmi5 provides a ‘moveOn’ criteria to be included in the content unit to signal when a content unit is completed. A cmi5 compliant LMS could then use the designation to assign credit for the learning.

Put into practice: an example of a SCORM vs cmi5 implementation

Now let’s bring this all to life by looking at an example of an implementation of a learning journey that Kineo recently produced for one of our clients. By doing so, I’ll demonstrate how the implementation could be reworked to use cmi5 and what benefits would have been achieved using cmi5 instead of SCORM.

 The main purpose of the implementation was to provide our client, a research institution, with a platform (LMS) through which their newest research program could be run. The program consists of research curricula to be consumed by participants. Participants are required to meet certain eligibility criteria to be able to participate in the research program. Upon qualifying for the program, participants sign up as couples and go through a few activities in the LMS that are accessible via Mobile devices, laptops or desktops. The two main activities in the program are comprised of an assessment and elearning that the couple has to take individually. The system was built using Totara LMS as the platform, with elearning content assets built and published using the Adapt 2.0 framework. 

SCORM implementation

The program required capturing and sharing certain data points, mainly between the two activities and the LMS. Specific data entered by a participant is stored and polled later on by the assessment and SCORM content when it is the participant's partner's turn to participate in the activities. The goal is to compute what content items need to be shown or hidden to a participant based on the answers and input entered by their partner. To accomplish that, custom APIs and client scripts had to be developed to allow:

  • Storing user answers collected from the elearning content in the LMS database.
  • Capturing user answers collected from the LMS assessment activity and mapping them to defined variables to be available for querying by the elearning content.
  • Optimizing the user interfaces and interactions to work appropriately on phone, tablets and desktop devices. 

A diagram illustrating how LMSs work with databases.

Using the model above, tailor-made customizations had to be put together and incorporated into both the elearning content and the LMS to be able to achieve the goal of the program. A model employing xAPI and cmi5 would look particularly different and will have a few advantages over the former model.

A diagram illustrating how LMSs and LRS work with databases.

cmi5 workflow implementation

Initially, the content would be developed as cmi5 compliant Assignable Units (AU). A course could be comprised of one or more AUs. The AUs don’t need to reside in the LMS—they could be stored anywhere in the cloud. In this example, the course structure is the only thing that would be imported into and registered in the LMS. The cmi5 module, based on the imported course structure, would be responsible for writing the proper data to the LRS and launching the AUs with the needed parameters. 

Alongside the xAPI verbs that are needed to satisfy the cmi5 specification requirements, the means to create statements containing the extra data needed for the program would be added where applicable, in line with the fact that any action could be trackable within the cmi5 realm. Similarly, xAPI statement triggers would also be added to the Assessment module to fulfill the requirement of capturing the participants’ answers while performing the activity.

The above workflow would allow participants' data (from both the LMS and elearning content) to be stored in a uniform and specific manner in the LRS – as well as maintaining a set of rules to launch formal training within an LMS and assign the proper credit for taking the learning. Furthermore, the aforementioned end points would be able to query, aggregate and fetch the stored data from the LRS for future consumption, either by other Assignable Units, the LMS or for reporting purposes. Formal assignment of credit and proper sequencing for next steps in the program would still be achievable within the LMS by attaching the proper ‘moveOn’ criteria to the AUs.

By utilizing the cmi5 workflow above, the following would be achieved:

  • Customizations to the LMS would be kept to a minimum.
  • Content units would not need to reside in the LMS and each unit could have its own unique launching mechanism.
  • We would also be able to store content specific data in the LRS and query the data results when its consumption is needed by another AU or the LMS, while maintaining the presence of elements necessary for formal training.
  • Since the content is cmi5 compatible, interoperability and usage across cmi5 compliant learning management systems would be guaranteed versus using an xAPI only, or a bespoke content solution lacking any governing rules.

Why cmi5?

Why not? By employing cmi5, organizations will be able to:

  • Employ a simple learning tracking model that requires the presence of minimal data elements to work universally across Learning Management Systems
  • Develop and maintain interoperable content units that store, share and consume data using the extensible xAPI.
  • Build and enhance a distributed learning eco-system, with the cmi5 Assignable Units contributing to formal training.
  • Provide seamless learning experiences to learners without the burden of having to amend their current systems with complex customizations

The Quartz version of the cmi5 specification was released on June 1st, 2016 and is available, along with other details on GitHub

At Kineo, we get excited about partnering with organizations to innovate solutions that meet business needs while providing flexible and meaningful learning experiences for individuals. Interested in learning more about the case study mentioned above? Be sure to read the case study on OurRelationship.



Shaping the future of learning

Kineo helps the world’s leading businesses improve performance through learning and technology. We’re proud of our reputation for being flexible and innovative, and of our award-winning work with clients across the world.