Monitoring progress in xAPI-compliant courses

Hey everyone, I’m trying to add xAPI (formerly TinCan) support to my learning management system. I’ve got the basics working, like uploading and playing xAPI content. But now I’m stuck on tracking user progress.

My LMS already shows lists of courses that are enrolled, available, and finished. For our own course format and SCORM, I save enrollment and progress info in the database.

What I’m wondering is:

  1. Can I track enrollment and progress for xAPI courses using the LRS?
  2. Is there a way to check if a user finished an activity using the xAPI REST API?

I’m using the xAPI .NET wrapper, if that helps. Any tips or pointers would be great. Thanks!

hey there! i’ve worked with xAPI a bit. for enrollment, you’d prob need to implement that in your LMS. xAPI doesn’t really handle that directly.

for progress tracking, you can query the LRS for statements about completed activities. the xAPI API should let u filter by actor and activity. hope that helps!

Great question! I’ve integrated xAPI into a few LMS projects, and here’s what I’ve found:

For enrollment tracking, you’ll need to handle that within your LMS. xAPI doesn’t have a built-in concept of course enrollment.

Regarding progress tracking, the LRS can indeed help. You can query it for statements related to specific activities and users. Look for statements with ‘completed’ verbs to determine if a user finished an activity.

The xAPI .NET wrapper should provide methods to query the LRS. You’ll want to use filters for the actor (user) and activity IDs when making these calls.

One thing to keep in mind: xAPI gives you granular data, so you might need to aggregate multiple statements to get an overall progress picture. This can be more flexible but also more complex than traditional SCORM tracking.