adopting the experience api to work with the virtual patient standard - how, what and why?
DESCRIPTION
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. Abstract. - PowerPoint PPT PresentationTRANSCRIPT
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.
XAPI
Actor, Verb, Object
Leaner , Completed, Virtual Patient
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
We made a statementhttp://tincanapi.com/public-lrs/
Statement in the LRS
JSON payload
URL
URI
URL
Simplest example (JavaScript)
More detail? “verb” : { “display” : {“en-US” :”visited”}, “id” : ”http://medbiq/exapi/verbs/visited },
“type” : http://medbiq/exapi/activites/virtualPatient/ } } }
COP Verb ?
COP Activity ?
Looks like, but
More detail with context (simple)
Tie everything together
sessionId
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.
Simplest – manual get (c#)
query
results
Dashboard
A Report Builder
Statement Forwarding
Painting by Eugene Delacroix, available under a Creative Commons Public Domain license.
Verbs and Activities and URL’s
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 : watchedListened : listened
Triggered: ?????
Altered: updated?
Exited : exited
Answered : answered
Completed : completed
Read : read
Commented : commented
Played : playedrestarted : terminated?
Extensions and Profile
feedback : extensioncounter : extension
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. Reporting2. Big Data 3. Learning Management System(s)4. LTI 1.1 & outcomes5. Simulation
Other VP use cases?
1. 3D & Games 2. Multi-modal simulation3. Team based 4. Platform transition (state API) 5. Learner Profiles
Wider reasons to adopt XAPI1. Transversal2. Transparency3. System silos4. Simulation (non-linear)5. Mobile6. Innovation 7. Future proof
Answer the Question…
Is a specific VP community profile necessary?
A friend in need
http://www.adlnet.gov/tla/experience-apihttps://github.com/adlnet/xAPIWrapperhttp://nodejs.org/https://www.npmjs.org/package/adl-xapiwrapperhttps://github.com/LearningLocker/learninglockerhttp://thedesignspace.net/misc/xapihttps://github.com/RusticiSoftware/TinCan.NEThttps://github.com/RusticiSoftware/TinCanJShttps://registry.tincanapi.com/http://tincanapi.com/public-lrs/http://scorm.com/scorm-solved/scorm-cloud-developers/