5 Tin Can Best Practices for a Superlative eLearning Experience

tin can api best practices

For several years SCORM, (Shareable Content Object Reference Model) has been the gold standard for any serious learning management system. It is a collection of technical standards for web-based learning. It’s the “stuff” that governs how online learning content and Learning Management Systems “talk” to each other.

And then Tin Can happened.

As the much-touted successor to the older SCORM standard (which some regard as clunky and rigid), Tin Can API, also known as the Experience API(xAPI), has immense potential when it comes to addressing the limitations of SCORM standard. It brings to the table a decade of eLearning experiences, backed by technological advancements to allow tracking of learning beyond formal training sessions. The Tin Can API is here to change the way we think of online training.

Watch This Video

So, what makes the Tin can API so special? To a large extent, it’s the flexibility provided by Tin Can LMS that makes it really relevant in the modern e-learning environment, where learning is not just limited to classrooms. The modern learner prefers to access knowledge anywhere: while commuting to work, working, or even while socializing. Tin Can makes it possible to track all of these learning experiences in one simple, consistent format.

Check out this beginner’s guide to the Tin can API to understand the xAPI better.

Tin Can API Best Practices

Using Tin Can is very different from using SCORM, primarily because there isn't a clear standard of the various types of data could be captured by the LRS (Learning Record Store), the database that stores statements. However, as more and more LMSs are starting to implement the Tin can standard, best practices regarding Tin Can API/Experience API statements are starting to come together. This article talks about 5 of those best practices.

Read More:- A Beginner’s Guide To Tin Can API

Write Specific Verbs

Currently, we do not have a systematic, or a defined, framework for creating verbs. Therefore, it is common to come across verbs such as, “engaging” and “exciting” that aren’t very useful. A good practice is to start creating specific verbs that clearly denote the desired action. This will also ensure optimized responses from other systems which will be able to focus on specific outcomes. Overtly generic verbs often require that the system goes through long cycles of sorting through a ton of data, often requiring awkward heuristics in an attempt to clearly define the final learning outcome.

Creating Publicly Accessible Verb Repositories for Reuse

Verbs are a mandatory part of Tin Can statements and including them is pretty simple. However, in order to fulfill the vision for a future where the need for shared data will be more in demand than ever, reusing verbs can be a great practice. Including relevant and specific verb templates, that are in use elsewhere, can make the process of designing statements very fluid. One way of achieving this is by creating and storing verbs that are already in use, in publicly accessible libraries so more people can discover and use them. Currently, one such repository can be found at this page.

Use Context->registration to group statements

Most Tin Can statement contain an optional registration attribute in their that allows them to be grouped together by their context. This will allow for easy filtering of statements based on a given criteria. For example, let’s assume we have a quiz that generates statements about individual questions in the quiz, as well as for the overall quiz attempt. It can be designed in such a way as to assign a single registration value for all statements from any unique attempt. This will allow systems to view reports by filtering out all statements associated with the specific attempts.

Run Scientific Experiments Through the LMS of Your Choice

Instead of looking at a learning initiative as one Gargantuan task, it’s a good practice to run scientific style experiments through your chosen LMS, as well as through any external channel where learning happens- be it the Internet, or through instructor-led manual learning. It’s a good idea to even include data exported from other connected systems and sent to your LRS via Rest APIs.

The simplest way to get started is by asking relevant questions like, "Will adding an interactive eLearning activity to my learning program help improve my intended learning outcomes?" Based on this, a hypothesis can be formed, which can be tested by testing of all your tracked training components. This might require an A/B test of the hypothesis by first including, and then excluding, the new activity from the learning program. An in-depth analysis of the results will help you draw conclusions about their relevance. Rise, and repeat!

Statements Should use the “Agent Verb Agent” Formula

In Experience API, it’s possible that the object of a statement happens to be another Agent. “Instructor X gave a gold star to Instructor Y”. “Instructor X scanned the badge of Instructor B”. Statements in this form are very powerful, and should be used wherever appropriate. Also, if the statement involves an “Activity”, it should be included in the context.

Share this article on

Do you want a free Training Software?

We have the #1 Learning Management Software for complete learning solution starting at $0

About the author

Michael has more than eight years of experience in the enterprise software and eLearning industry. He is passionate about online training and has a deep understanding of how organizations can leverage online training for maximum success. In his free time, he enjoys power walking, zumba, and reading.


Leave a comment

Create a Course