0

I am looking at using Tin-Can (xAPI) on our LMS. What I want to know, is how I can add information known to the platform to tin-can statements.

E.g. I want to add course / class information in the context area of the statement. I cannot do this directly in content, as the same piece of content maybe used in different courses / classes.

How is this done?

Oliver McPhee
  • 1,010
  • 10
  • 18

1 Answers1

1

From a purely xAPI standpoint you generally wouldn't do this because the statement producer should be doing it. Now the caveats:

  • Unless you consider your LMS the statement producer in which case you could use it to proxy the requests to the LRS and it could manipulate the statement in route. Note this will invalidate signed statements, not that anyone is doing that yet. And will generally require you to proxy all resources, and pay particular attention to the statement writing requests.
  • If you control the authoring of the content you could have it make requests to the LMS directly to retrieve additional information that the content should then consider including in the statements. Naturally this option is outside the scope of xAPI directly, and is non-standard.

This particular notion however has been taken up by the cmi5 group and is part of that specification which is now considered production ready. In cmi5 the LMS provides a document in the State API resource, the LMS launch data, that includes a context template that can theoretically hold any information the LMS wants to include in it, and the content (an AU) is required to build the statement context object based off that template and therefore include in each statement what the LMS provided.

Brian J. Miller
  • 2,169
  • 1
  • 12
  • 12
  • Interesting, I will look into the cmi5 spec as my first stop. I presume that solution is considered more standards friendly than either of the 2 bullets you suggested? Do you know which is the most 'popular' solution at present? – Oliver McPhee Sep 07 '16 at 15:23
  • It is more standards friendly, unfortunately at the moment it is *very* new and there is very little support on either the content or LMS side. I don't know of any one doing proxying of an LRS to the extent I describe. I suspect the second bullet point is the most popular at the moment. – Brian J. Miller Sep 07 '16 at 18:39