Making simple xAPI Statements is easy, but making complex ones is hard. xAPI Profiles make it so Communities of Practice can easily create and share ways to make better, richer, complex Statements. This introduction gives a high level, non-technical overview.
2. First, me.
My name is Russell Duhon. I wrote Wax LRS, the first production ready Learning
Record Store, with which I helped many large and small companies do xAPI
implementations. I’ve been involved in xAPI since early on, helped write the
main specification, and am the primary author of the xAPI Profiles spec.
I’m now an independent consultant. I help companies understand how to work
with xAPI (& xAPI Profiles) from strategy to technical implementations, and with
data/analytics/visualization (learning & otherwise) generally.
You can reach me at fugu13@gmail.com, or @fugu13 on twitter
4. • Okay, so I’m trying to record data about someone
watching a video… what should I record?
• What events should cause me to send statements?
• Okay, I picked an event… what’s the right verb, here?
• Do I need to use an Activity Type?
• …should I be putting anything in Context?
6. Communities of Practice
are Good
• Bring together people interested in similar areas
• Author guidelines for people trying to write statements
related to those areas
• Build a body of knowledge based on real-world
implementations
7. But most statement guidance
is sparse, hard to follow, or
takes a very long time to write
8. –Fictitious but Very Realistic member of a Community of Practice
“What does it mean to describe how to use
Statements?!”
9. In Practice
• Lots of reinventing very similar concepts (“what’s a
session?”), and ending up with numerous minor variations
• No way for computers to “read” the rules a CoP comes
up with and provide assistance
• Very few CoPs have even reached sufficiently detailed
guidance on Statements for implementers to follow them
consistently
10. And that’s why the ADL
commissioned a specification
for xAPI Profiles
11. Profiles Community
Process
• Run by DISC
• Gathered input from LRS providers, companies using
xAPI, researchers, instructional designers, and many
more
• Regular meetings with a number of people heavily
involved in the xAPI space
12. The new xAPI Profiles help
CoPs say…
• What new verbs are we introducing?
• What extensions are we introducing?
• When should you use all this stuff?
• What *exactly* do statements using these things “the right way”
look like?
• What order should I send them?
• How do processing systems know I’m using this profile?
• And rather a lot of other things
13. The new xAPI Profiles are
structured…
• So computers can work with them
• So people can query repositories with them to find out
exactly what they want to know
• To express *relationships* between concepts, so both
people and analytic systems can tell, for example, that
“medaling” in a sporting event, as defined by a particular
(currently fictional) xAPI CoP, is a more specific concept
completely contained within the idea of “placing”
15. Concepts are Building
Blocks
• Verbs, Activity Types, and Attachment Usage Types are
specific things/categories of things that relate to each other
taxonomically—hierarchies and so forth.
• Extensions are extra pieces of data that can be included,
with rules on what they’re allowed/supposed to look like.
• Document resources are similarly flexible pieces of data, but
they don’t go in Statements, and can include a lot more than
JSON.
• Activities are just that, canonical forms of specific Activities.
Imagine the Red Cross first aid certifications.
17. Statement Templates &
Patterns
• Describe how to communicate the very specific things
*this* Profile has standardized, using combinations of the
Concepts from this and other Profiles.
• Require the Statement creator “buy in” by putting the
Profile (version)’s ID (the Profile is an Activity!) in the
Context.
• Let the Profile lay down detailed rules on what goes in the
Statement, what order Statements go in, that sort of
thing, either required or suggested.
18. Resources
• https://github.com/adlnet/xapi-profiles (start with xapi-
profiles-about.md and the meaty parts are mostly in xapi-
profiles-structure.md)
• https://github.com/adlnet/xapi-authored-profiles has first
drafts of some Profiles from a variety of CoPs—still being
refined
19. Questions?
If you think of any later, you can reach me at fugu13@gmail.com, or @fugu13 on twitter