It’s now been a decade since xAPI was first released, and as more organizations consider adding support, we’ve been answering more questions about how to implement the specification into an application.
And we aren’t the only ones hearing about xAPI questions. The 2022: State of xAPI Adoption Report by Megan Torrance and The Learning Guild found that the lack of knowledge or skills around the xAPI specification was the number one implementation challenge for adopters and non-adopters alike (72% for adopters, 66% for non-adopters). The study also found that lack of buy-in by leadership was reported as a top barrier (23% for adopters, 30% for non-adopters).
To help aid in the adoption and implementation of the xAPI specification, we’ve compiled an overview of why adding xAPI may benefit your organization and what to know before implementing xAPI into your application.
Experiences matter, and people learn in a variety of ways that often fall outside of the traditional online “page-turner” courses that SCORM is known for. xAPI provides a way to capture more “interesting” data from a variety of sources, including newer technologies like augmented reality, virtual reality, simulations, and serious gaming. xAPI’s inherent flexibility allows it to track virtually limitless amounts and types of complex data, such as the depth of compressions on a CPR dummy, when a learner replays a portion of a training video, or eye movement while landing a 747 during a flight simulation. xAPI was designed specifically to enable the tracking of these more complicated experiences.
While the ability to capture additional data points sets xAPI apart from previous standards, the second key benefit of using xAPI is that it allows for data portability, so that training departments can more easily access all of the data collected from various systems, sources, and job performance data. By enabling data to be transferred from one system to another, a more diverse set of analytics, reporting, and display tools can be leveraged. These more contemporary tools give a much more holistic and complete view of the employee. Where previously eLearning was often confined to the domain of compliance and check marks, the expanded ecosystem enabled by xAPI can be utilized to achieve a much richer set of insights at the individual, team, and even organization level.
When you’re adding xAPI into your ecosystem, there are a few considerations to plan and account for.
As mentioned above xAPI can be used to “track anything.” While this provides huge flexibility and vast data benefits, it can become problematic when disparate systems try to interpret what the data gathered really means. Here at Rustici, we often use the “fired,” “fired” and “fired” examples to illustrate this.
“Joe fired an employee.” “Joe fired a kiln.” “Joe fired a weapon.”
All three of these scenarios are data points that could be tracked, and use an English verb “fired,” but each use case has vastly different meanings and must necessarily be represented in the xAPI data using different identifiers. Without specific definitions and context, the resulting xAPI statements could be recorded and analyzed incorrectly. If you’d like to better understand how to pick the best verb for your statement, read my semantic interoperability blog post.
xAPI was designed specifically to be a communication tool, it includes a data model and a transfer protocol, but when compared to pre-existing eLearning standards it is missing the concepts of packaging, launch, and an information model. Without definitions for these three concepts, LMS and content vendors are left to determine how to get learners into an experience and to have some sort of data similarity amongst experiences. (See cmi5 below)
The intention behind xAPI was always to be augmented with other “mini” specifications – now commonly referred to as xAPI Profiles – which define the semantics captured in the data. These profiles themselves also need to be governed to ensure interoperability so the xAPI Profile Specification was introduced for this reason. The xAPI profile specification establishes how profiles need to be written so that they may define vocabularies and rules for how xAPI data should be understood by a particular system. Essentially, xAPI Profiles act as guides for semantic interoperability of xAPI data across systems. Two of the most commonly used xAPI Profiles are cmi5 and the Video Profile.
cmi5 is an xAPI Profile designed to specifically solve the problem of using xAPI in an LMS context where the concepts of launch, packaging, and a defined information model are critical for ensuring that content is able to be played and tracked in the way it was designed regardless of the system playing it.
cmi5 can be used to bridge the divide between SCORM’s overly strict runtime and data model and xAPI’s wild west by defining requirements for how an LMS and xAPI-enabled learning activities communicate with each other. cmi5 uses xAPI as its communication protocol while providing rules for the components necessary for use with an LMS. With cmi5 LMSs and content vendors know how a learner will enter an experience, the address of the LRS endpoint, how to negotiate an authorized credential, and basic information elements such as session start, end, success, completion, and duration.
State of adoption
Even with the added benefits of xAPI and the recently released cmi5 CATAPULT tools, LMSs, content creators, and learning and development professionals have been slow to adopt the specification. The 2022 State of xAPI Adoption Report cited several reasons why organizations have not yet adopted xAPI, including a lack of LMS support, a lack of need and lack of understanding of the specification. Interestingly, the number of people responding that there is a lack of authoring tool support has dramatically decreased since the 2019 report, signaling that authoring tools have made significant progress in adding xAPI support in their applications.
If you want to know more about what to consider before implementing xAPI, be sure to watch my recorded session with Ben Clark where we discuss this topic in greater detail. And feel free to reach out and ask us your xAPI implementation questions.