cmi5 will play a key role in moving toward a more modern learning ecosystem by ensuring plug and play interoperability between conformant systems. To reach the goal of adding newer technologies into your training, this cmi5 technical overview will help you understand the key concepts of the specification.

xAPI Profile

xAPI’s data tracking capabilities are virtually limitless, but without any rules, compatibility and interoperability across systems becomes nearly impossible. To combat this, the xAPI Profile Specification was introduced and defined vocabulary, contexts and rules for how xAPI data interacts within a particular domain. 

Part of cmi5’s role as an xAPI Profile is to define rules for how populated xAPI statements are organized and sent to the LRS. cmi5 provides a model for centralizing common values regularly needed in reporting, which includes success status, completion status, score and duration. By itself, the xAPI standard doesn’t specify these concepts.

Assignable Unit (AU)

AUs are separately launchable pieces of content and include the concepts of completion, success, score and duration. The AU is the unit of management and tracking that collects learner data and sends the data to the LMS. Every learning activity must have at least one AU. 

The AU:

  • Uses the launch environment parameters to find the LMS location and start communication.
  • Sends and receives messages using the defined transport mechanism(s) and associated commands.
  • Formats all data according to the defined data types and vocabularies.
  • Sends a “Terminated” statement before terminating the AU’s execution.

Learn more about the cmi5 process.


cmi5 has a “manifest”-like file named `cmi5.xml` containing XML metadata that describes the course structure, which is a series of blocks and AUs. The XML file, or a ZIP file containing a `cmi5.xml` and additional course assets, is provided to the cmi5 compatible LMS for import.

Read more about course packages and concepts for content professionals.

Launch Mechanism

The cmi5 launch mechanism is similar to existing models and provides information about the LMS and learner to AUs during launch. cmi5 has the capability to support both traditional browser content and more modern scenarios, such as simulations, virtual reality, augmented reality and mobile applications, that are being launched from an LMS. 

The launch process consists of capturing statements from the launching system and the content, providing content with an xAPI context template to use in statement creation, making learner preferences available and establishing a learning session.

xAPI Statements

xAPI statements provide evidence for the experiences and events being tracked. Statements follow a machine-readable JSON format and use a “Subject, Verb, Object” language that gives meaning for the overall learning experience, not just the sum of its parts. 

Want to dive more into xAPI Statements?

  • Statements 101 takes you through the basics of statements that you need to know in order to get going with xAPI.
  • Statement Explorer is an interactive example statement that explains the high level structure of the statement.
  • xAPI Lab is a tool that supports you to build your a statement and send it to an LRS.
  • Statements Deep Dive takes you beyond the basics to help you get the most out of xAPI.

Example of a cmi5 statement using the "Completed" verb.

Consistent Information Model

cmi5 includes precise categories for the statements captured by the AU as well as the launching system, grouping them as either “cmi5 defined” or “cmi5 allowed” statements. 

“cmi5 defined” Statements

Heavily specified xAPI statements about what data must or must not be included, what order to send, if they must be unique within the session and how to interpret. They are designed to capture session details and core eLearning principles and contain an xAPI Activity to make recognizing and grouping statements easier.

“cmi5 allowed” Statements

Are nearly open ended and are what allows cmi5 to maintain the inherent flexibility of xAPI. These statements still include the context template to allow them to be correlated with the rest of the cmi5 session mechanics.

Ready to dive deeper into cmi5?

If cmi5 sounds like a good fit for your organization, here are a few pages to help you start implementing cmi5.

If you’re still deciding which standard is the best fit for your learning and training activities, view the SCORM vs. xAPI vs. cmi5 comparison chart or ask us.

Questions? Ask us anything.

At Rustici Software, we help hundreds of people each month with their standards questions. Many aren’t sales prospects; they just have questions. We’re happy to help. You can ask us anything ‒ really.