adopting the experience api to work with the virtual patient standard - how, what and why? matt...
TRANSCRIPT
Adopting the Experience API to work with the Virtual Patient Standard - how, what and why?
Matt Cownie, Jonathan Wright
University of the West of England, Bristol
AbstractThe eXperience Application Programming Interface (xAPI) is a new specification that allows learning content to link with learning systems to track and share all types of learning experiences. Learning activities can be tracked using combinations of a limited vocabulary of activities, verbs and subjects. While the specification provides a default profile of activities and verbs it allows for communities of practice to develop custom profiles of their own agreed activities and verbs. This presentation will have main 3 parts.
Caveat Emptor• Tincan OR experienceAPI OR xAPI
• Versions 0.90-0.95-1.0-1.01
• Many examples are ‘slightly wrong’
• Libraries for Java, JS and PHP
• New .NET Library for the Tin Can API is Now Available!
• Refer to the final spec 1.0.1
• Assumes you are VP Standard aware
Part 1 - HowFirstly it will demonstrate how to use the experience API to capture the stream of activities a learner generates while playing a Virtual Patient (VP). It will show technical examples that map VP concepts onto XAPI calls that can be used to populate a Learning Record System (LRS) with VP related learner data.
Simplest example (C#)
statement = actor + verb + activity
Actor
Verb
Activity
Statement
LRS
ActivityType
More detail? “verb” : { “display” : {“en-US” :”visited”}, “id” : ”http://medbiq/exapi/verbs/visited },
“type” : http://medbiq/exapi/activites/virtualPatient/ } } }
COP Verb ?
COP Activity ?
XAPI - ContextActivitiesXAPI provides four possibilities - ‘parent’, ‘grouping’, ‘category’, and ‘other’
Parent - model the Virtual Patient as parent activity and set that as the context for all subsequent related activities. Further granularity would be a video and MCQ with a node as parent activity.
Grouping - might want to group an activity within the VP with related activities in same VP or other VPs
Category - “Category SHOULD be used to indicate a "profile" of xAPI behaviors” - e.g. PhysicalExam, Medication?
Other - none of the above, perhaps supporting learning material or making a branching decision?
Some Concerns
• Media Resources, Counters, CounterRules, DataItems,NodeRules, NodeAccessRules
• Extensions• Exposing internal workings and Id’s• Name spacing• Versioning• Who’s the audience?
Part 2 - whatSecondly it will review what this data looks like in an LRS and examples of querying it for meaning. It will outline what verbs and activities might be contained in a Virtual Patient specific profile and what use cases these could meet.
Statement Forwarding
Painting by Eugene Delacroix, available under a Creative Commons Public Domain license.
VP Activities + typesPage : page
MCQ : question
Video : video
audio : audioDocument : file
Short answer : note
Image : media
Flash activity : interaction
Unity activity : interaction
Html5 activity : interaction
YouTubeVid : media
DataItems : file?
Blood Test : media
Media Resources : media CounterRules : event
DataItemRequest : interaction
NodeRules : event
NodeAccessRule : event
CounterRules : event
VP Verbs
Started : started
Visited : was at
Requested : requested
Watched : watched
Listened : listened
Triggered: ?????
Altered: updated?
Exited : exited
Answered : answered
Completed : completed
Read : read
Commented : commented
Played : playedrestarted : terminated?
Part 3 – why (for VP’s)Lastly it will outline why the virtual patient community might want to adopt the experience API and ask whether a specific community profile is necessary. Influences for consideration include the “Internet of Things”, mobile learning, data-mining, combining virtual patients with other simulation activities, capturing the complete educational context of a learners VP experience and reporting into competency frameworks.
What were my use cases?
1. Reporting
2. Big Data
3. Learning Management System(s)
4. LTI 1.1 & outcomes
5. Simulation
Other VP use cases?
1. 3D & Games
2. Multi-modal simulation
3. Team based
4. Platform transition (state API)
5. Learner Profiles
Wider reasons to adopt XAPI
1. Transversal
2. Transparency
3. System silos
4. Simulation (non-linear)
5. Mobile
6. Innovation
7. Future proof
A friend in need
http://www.adlnet.gov/tla/experience-api
https://github.com/adlnet/xAPIWrapper
http://nodejs.org/
https://www.npmjs.org/package/adl-xapiwrapper
https://github.com/LearningLocker/learninglocker
http://thedesignspace.net/misc/xapi
https://github.com/RusticiSoftware/TinCan.NET
https://github.com/RusticiSoftware/TinCanJS
https://registry.tincanapi.com/
http://tincanapi.com/public-lrs/
http://scorm.com/scorm-solved/scorm-cloud-developers/