Think about a surveillance camera that follows a student or a group of students as they complete a course in class, read an ebook on their way home, and play an educational game without ever logging into any system, not even offline. That is exactly what xAPI does. But, learners, don’t be scared of total control, xAPI only tracks what is essential for making your learning experience smoother and more efficient.
xAPI stands for Experience API (also known as Tin Can), and it’s the most recent and versatile eLearning standard. It was developed in 2013 by an ADL initiative with the intention of capturing the learner’s experience as it is. The new xAPI approach addresses other modern eLearning problems that older standards couldn’t overcome.
In this article, you’ll learn all the important details about xAPI to help you decide if you should utilize it in your learning process, and what the benefits and difficulties of switching from SCORM to xAPI are. As a part of practical training, we’ll create a course, set up the reporting, and see it in action.
Hard Times for eLearning in 2010
In 2010, eLearning reporting technology lagged behind the tech progress in other areas. The world started its steady movement towards mobile and cloud. SCORM and former learning standards couldn’t function inside of mobile apps. They required a browser, LMS login, constant Wi-Fi connection, and they didn’t report all the details that course developers wanted.
Just imagine the situation: you are taking a quiz, and suddenly, the Wi-Fi connection is getting dropped. The worst-case scenario is that you lose all your quiz results and have to start over! As you can see, SCORM wasn’t very promising in terms of the future of eLearning.
Here are some of the learning cases that needed a new approach:
- Offline learning (Wi-Fi and cellular networks may be interrupted as you move)
- Mobile learning (apps for tablets and smartphones are actively used in education)
- Collaborative learning (groups of learners can solve tasks together)
- Games and simulations (usually software simulations, frequently used in corporate learning)
- Real-world activities (Internet of Things, simulation dashboards and other devices)
- Augmented and virtual reality (the future of educational technologies in some areas)
- Security concerns (quiz answers may contain personal information, and should be encoded and transmitted over https://)
How xAPI Works
Application programming interface (API) is an option to exchange data between various systems, applications, websites, etc.
An xAPI specification describes a Client entity (a course, app, simulation, etc.), also called an Activity Provider, which generates xAPI statements; and an LRS Endpoint, which receives statements and stores them in a database.
An Activity Provider can be an LMS, a standalone course, video, game, simulator, a medical device, etc. The xAPI statement can be transmitted at the same time as the action being completed or any time later when the internet connection is restored. Also, the Activity Provider can perform an action in the real world not connected to any tracking system, so that it uses xAPI to update the statement afterward.
If you have a chunk of learner’s data in your corporate database and you need it for analysis, along with the most recent results, you can submit the selected data objects into the LRS by means of xAPI too.
LRS as a center of all your learning activities
Experience data is a combination of activity, learning, behavior, and performance data. Learners complete a plethora of actions throughout their learning process and assessments. Sometimes, specific choices are more important than the overall result, and xAPI is capable of capturing user’s choices precisely.
The centerpiece of every xAPI ecosystem is a cloud repository that stores all experiences from all the Activity Providers that are connected to it. This storage is called the Learning Record Store (LRS). Each Activity Provider (an xAPI course) should have an LRS address specified prior to publishing, so it knows where to report.
Unlike a Learning Management System (LMS), which performs many functions, such as:
- Managing users and content
- Providing courses to learners
- Storing learning paths
- Calendars, chats, etc.
A Learning Record Store doesn’t do any of that, and it wasn’t designed to. It only receives and stores statements in one list, offers learning analytics, and reports. So, it’s merely a database for learning activities.
An LRS releases learners from conventional learning systems. You’re free to place learning content wherever you want.
The LRS can be a standalone system placed in the cloud:
The LRS can also be incorporated into an LMS within the same domain:
These are the most common environment configurations. There could be numerous other configurations with many connected LRSs, with local LRSs, etc.
If you want to place courses locally, or in the Ethernet, you can still open specific firewall ports so they can send the results to a distant server. A hardcore option is to deploy an LRS in your corporate’s Ethernet, but for that, you need to obtain one that’s available for installation. In general, LRSs are distributed by the SaaS model.
xAPI statement structure
Surprisingly, Experience API speaks human language. No convoluted statements like SCORM uses:
Experience API, in contrast, provides full freedom to express whatever the learning activity needs. The basic formula of an xAPI statement is:
xAPI statement example: John D successfully Completed the math course, Fractions
This is an exact piece of data that will go to an LRS and will be subsequently used for analysis and generating reports. The basic xAPI statement answers the question “who did what on what learning activity.”
There are unlimited possibilities for customizing statements to specific requirements. The statement may contain a timestamp, a quiz question ID, question text, and other extra parameters.
xAPI statement example: John D answered ‘0.7’ to the question number 6 with text ‘½ + 0.2 = ?’ in the math course, Fractions, with ID 0134 on date and time 2019-12-20T14:20:50.52 with a duration of 5 seconds, on an Android device with resolution 1080×1920 px.
The flexibility and simplicity of xAPI allow you to do more accurate learning process tracking rather than just submitting SCORM quiz results to an LMS.
What Learning Activities Can xAPI Track
Unlike its predecessors, xAPI can track virtually any activity that a learner may undertake (e.g., watching a video, reading an ebook, interacting with a simulation), not just offer points and progress percentages. Here are some examples of what needs to be tracked in different fields of study:
- Which video parts a learner skipped through the economy course,
- What physical buttons were pressed on a plane simulator during takeoff,
- What tool was used first in a VR simulation of a neurosurgery procedure,
- Heart rate and geolocation data of a runner who is preparing for a marathon,
… and hundreds of other activities, details, and various parameters.
If you use one of the authoring tools that are capable of publishing xAPI courses, they will already have the wrapper that is configured to publish statements. Look for the supported statements on the official tool’s website.
What Devices Are Supported?
One of the main reasons that xAPI development was initiated is that tablets and other mobile devices were used by the majority of people. An important task was to support all possible devices that have access to the Internet and provide the highest level of interoperability between learning activities and the reporting system.
For example, this real simulator cabin below can generate events – when the landing gear is put up after takeoff, it allows evaluation of the accuracy of how a pilot follows instructions.
xAPI vs. SCORM
LMS and SCORM are like a school with textbooks and quizzes to complete there. Remember the class grade sheet that teachers used in schools? eLearning technology wasn’t that far from this concept in terms of grading and tracking learners’ progress.
xAPI was created to be the next-gen version of SCORM, but in practice, there are too many differences between them. xAPI is capable of tracking all learning activities and steps made by learners, whereas SCORM is designed to be used for packaged courses with quizzes as the main assessment tool.
On the other hand, xAPI doesn’t describe the course structure and packaging, while SCORM does. It was intentionally not included in the specification, because a single sign-on mechanism can be used to get learners from one system to another (e.g., from an LMS to a game on your domain). xAPI is explicitly used to get the tracking data to an LRS, where you can do whatever you want with the data: analyze it, create reports, etc.
Each standard has its time and purpose, and they’re primarily built on top of each other’s functionality. cmi5 is “the modern version of SCORM” that describes packaging on top of the xAPI functionality. Look at the simplified learning standards’ timeline:
AICC → SCORM 1.2 → SCORM 2004 → xAPI (you are here) → cmi5
Hands-on Experience with xAPI
Nothing helps the comprehension of Experience API technology better than testing it out and experimenting with it. Setting everything up is not that hard, and it’ll only take 10 minutes. We’ll need LRS and xAPI course authoring software. We’ll be using iSpring Suite for publishing an xAPI course.
Step 1. Setting up an LRS
Register an account at SCORM Cloud to create an LRS for testing purposes. Rustici software are developers of SCORM and xAPI standards, and they offer sandbox solutions for free to test your courses or authoring tools if you’re a developer.
1. Log in to your SCORM Cloud.
2. Select Apps /API from the main menu in the bottom left corner.
3. Click Add Application, and name it, e.g., iSpring LRS.
4. Select xAPI LRS from the left-hand side menu.
Step 2: Creating an xAPI course
To create an xAPI course, you can use any authoring tool with this format supported. iSpring Suite is an early adopter of xAPI and can help you produce an xAPI-ready course in no time.
1. Install and open iSpring Suite.
2. Click on the New Course button.
3. Fill your course with the necessary content.
4. Click Publish on the ribbon.
5. Choose the LMS publishing destination, and then select Experience API in the LMS profile menu.
6. Click Customize next to the drop-down menu and paste the endpoint link that you got from the LRS (Step 1). Click Save to close the Learning Course window.
7. Click Publish on the bottom, and iSpring will publish your course into an xAPI format.
That’s it, launch it locally or upload to the web. As you run through the course, watch the statements show up in the LRS.
Learning First, Technology Last
Experience API is just one of a few standards that makes eLearning possible. It introduces some new concepts, such as LRS, offline and detailed tracking, which addresses most of the problems that earlier standards had.
However, it may be overwhelming for course authors to take care of not just the material but all the methods to report the results. It’s a whole new level of developing digital training and online courses.
Fiddling with LRSs might be tricky too. If the LRS of your choice doesn’t offer good reporting/analytics tools, you’ll most probably have to hire a data analyst who’ll help you to deal with a large amount of data.
For a general learning approach, SCORM might be just fine. It’s simple and useful when you evaluate learner’s success based on quizzes and the fact of opening course materials. However, if you have higher ideas of organizing learning processes and have the resources for that, the xAPI is the perfect solution.
Have questions about xAPI and publishing to this format? Leave a comment below to open a discussion with learning experts.