The Experience API (xAPI) is a specification that defines how to store and retrieve learning experiences across various sources for analysis. Recording learning experiences in this way improves the ability to comprehend and compare learning experiences and their outcomes.
The xAPI provides four data models for recording elements of a learning experience, these are:
Statements which are an immutable record of an agent’s interaction with an activity. A set of statements can be used to track a complete learning experience. Voiding can be used to invalidate previous statements, henceforth removing them from normal retrieval methods.
Activity Profiles that record additional mutable (dynamic) information about an activity for use inside the learning activity (e.g. an expiration date). This isn't heavily used.
Agent Profiles that record additional mutable information about a learner for use inside a learning activity (e.g. their language or accessibility preferences). This isn't heavily used.
State is for storing dynamic things specific to the learner and the learning activity (e.g. their progress through the activity). This is heavily used.