Experience API: Difference between revisions

Content deleted Content added
Declining submission: submission is unsourced or contains only unreliable sources (AFCH)
m add link
 
(114 intermediate revisions by 67 users not shown)
Line 1:
{{Multiple issues|
{{AFC submission|d|v|declinets=20120730202132|decliner=Ritchie333|ts=20120730201556|u=JeffreHorne|ns=4}}
{{Update|date=April 2022}}
{{afc comment|1=The references appear to be all [[WP:PRIMARY|primary sources]]. We need [[WP:RS|independent, reliable, secondary sources]] to sustain [[WP:N|notability]] on an article. [[User:Ritchie333|<font color="#7F007F">'''Ritchie333'''</font>]] [[User talk:Ritchie333|<font color="#7F007F">''(talk)''</font>]] 20:21, 30 July 2012 (UTC)}}
{{Primary sources|date=April 2022}}
}}
The '''Experience [[API]]''' ('''xAPI''') is an [[e-learning]] software specification that records and tracks various types of learning experiences for learning systems.<ref name="Learning Solutions Magazine">{{cite web|last=Brandon|first=Bill|title=Making History: mLearnCon 2012 Rocks Attendees|url=http://www.learningsolutionsmag.com/articles/958/|publisher=Learning Solutions Magazine|accessdate=31 July 2012|archive-url=https://web.archive.org/web/20120806005118/http://www.learningsolutionsmag.com/articles/958/|archive-date=6 August 2012|url-status=dead}}</ref> Learning experiences are recorded in a [[Learning Record Store]] (LRS), which can exist within traditional [[learning management system]]s (LMSs) or on their own.<ref name="ASTD interview with Aaron Silvers">{{cite web|last=Brusino|first=Justin|title=THE NEXT GENERATION OF SCORM: A Q&A WITH AARON SILVERS|url=http://www.astd.org/Publications/Newsletters/Learning-Circuits/Learning-Circuits-Archives/2012/06/The-Next-Generation-of-SCORM-a-Q-and-a-with-Aaron-Silvers|publisher=American Society for Training and Development|accessdate=31 July 2012|archive-url=https://web.archive.org/web/20140822192026/http://www.astd.org/Publications/Newsletters/Learning-Circuits/Learning-Circuits-Archives/2012/06/The-Next-Generation-of-SCORM-a-Q-and-a-with-Aaron-Silvers|archive-date=22 August 2014|url-status=dead}}</ref>
 
===Summary===
----
The Experience API (Tin Can API) is meant to succeed [[SCORM]],<ref>{{cite news | url=https://aristeksystems.com/blog/elearning-standards-2022/#scorm| title=The Experience API (SCORM)| accessdate=2017-04-22}}</ref> the Sharable Content Object Reference Model, which is a standard for packaging e-learning content.<ref>{{cite web|last1=Batt|first1=Brian|title=How to Explain AICC, SCORM 1.2, and SCORM 2004 to Anyone|url=http://www.elearningfreak.com/featured/how-to-explain-aicc-scorm-12-and-scorm-2004-to-anyone/|website=elearningfreak|date=18 April 2011 |accessdate=21 October 2015}}</ref> The new Experience API allows trainers to deploy several new capabilities that were not supported with SCORM at the time,<ref name="The Training Business (Andy)">{{cite web |last=Whitaker |first=Andy |title=An Introduction to the Tin Can API |url=http://www.thetrainingbusiness.com/softwaretools/tin-can-api/ |publisher=The Training Business |accessdate=31 July 2012 |archive-date=10 March 2013 |archive-url=https://web.archive.org/web/20130310050538/http://www.thetrainingbusiness.com/softwaretools/tin-can-api/ |url-status=dead }}</ref><ref name="Saltbox Developers Discuss Tin Can">{{cite web |title=Saltbox Developers Discuss Tin Can |url=http://floatlearning.com/2012/07/saltbox-developers-discuss-tin-can/ |publisher=Float Mobile Learning |accessdate=31 July 2012}}</ref> such as:
===Summary===
The Tin Can [[API]] is an e-learning software specification that allows learning content and learning systems to speak to each other in a manner that records and tracks all types of learning experiences.<ref name="Tin Can API Overview">{{cite web|title=Tin Can API Overview|url=http://tincanapi.com/what-is-tin-can/overview/|work=TinCanAPI.com|publisher=Rustici Software|accessdate=30 July 2012}}</ref> <ref name="ADLnet.gov Tin Can API FAQ">{{cite web|title=ADLnet.gov Tin Can API FAQ|url=http://www.adlnet.gov/capabilities/next-generation-scorm/tin-can-api#tab-faq|work=ADLnet.gov|publisher=Advanced Distributed Learning|accessdate=30 July 2012}}</ref> Learning experiences are recorded in a Learning Record Store (LRS).<ref name="What is an LRS?">{{cite web|title=What is an LRS?|url=http://tincanapi.com/what-is-tin-can/overview/what-is-an-lrs/|work=TinCanAPI.com|publisher=Rustici Software|accessdate=30 July 2012}}</ref> <ref name="ADLnet.gov Tin Can API FAQ" /> LRSs can exist within traditional [[Learning Management Systems]] (LMSs) or on their own.<ref name="What is an LRS?" />
 
*Recording learning from non-browser activities, such as games and [[Simulation|simulations]].<ref name="SFGate / eLogic Press Release">{{cite web |title=(press release) eLogic Learning Partners with Rustici Software to be an Early Adopter of the Next Generation of SCORM Standards Known as the 'Tin Can API' |url=http://www.prweb.com/releases/scorm/e-learning/prweb9610860.htm |publisher=SFGate |accessdate=31 July 2012 |archive-date=30 July 2012 |archive-url=https://web.archive.org/web/20120730094316/http://www.prweb.com/releases/SCORM/e-learning/prweb9610860.htm |url-status=dead }}</ref><ref name="ASTD interview with Aaron Silvers" /><ref name="Upside Learning">{{cite web|last=Gautam|first=Amit|title=Tin Can: My First Impressions From mLearnCon 2012|url=http://www.upsidelearning.com/blog/index.php/2012/06/21/tin-can-my-first-impressions-from-mlearncon-2012/|publisher=Upside Learning|accessdate=31 July 2012|archive-url=https://web.archive.org/web/20120827182001/http://www.upsidelearning.com/blog/index.php/2012/06/21/tin-can-my-first-impressions-from-mlearncon-2012/|archive-date=27 August 2012|url-status=dead}}</ref>
The Tin Can API is commonly referred to as "The Experience API" and "Next Generation [[SCORM]]."<ref name="Next Gen SCORM">{{cite web|title=Next Gen SCORM|url=http://www.adlnet.gov/capabilities/next-generation-scorm|work=ADLnet.gov|publisher=Advanced Distributed Learning|accessdate=30 July 2012}}</ref> SCORM (Sharable Content Object Reference Model) has been the de facto e-learning standard for packaging e-learning content to be delivered to LMSs.<ref name="E-Learning Standards Roadmap">{{cite web|title=E-Learning Standards Roadmap|url=http://scorm.com/scorm-explained/business-of-scorm/scorm-versions/|work=scorm.com|publisher=Rustici Software|accessdate=30 July 2012}}</ref> However, there are several drawbacks to SCORM.<ref name="SCORM vs Tin Can API">{{cite web|title=SCORM vs Tin Can API|url=http://tincanapi.com/what-is-tin-can/overview/scorm-vs-the-tin-can-api/|work=TinCanAPI.com|publisher=Rustici Software|accessdate=30 July 2012}}</ref> <ref name="An ADL Perspective on Next Generation SCORM Requirements as Derived from Project Tin Can">{{cite web|title=An ADL Perspective on Next Generation SCORM Requirements as Derived from Project Tin Can|url=http://www.adlnet.gov/wp-content/uploads/2012/01/NEXTGEN-SCORM-requirements-20120130_v1.pdf|work=ADLnet.gov|publisher=Advanced Distributed Learning|accessdate=30 July 2012}}</ref> The Tin Can API allows for several new capabilities that SCORM didn't, such as:<ref name="SCORM vs Tin Can API" /> <ref name="An ADL Perspective on Next Generation SCORM Requirements as Derived from Project Tin Can" />
*Platform transition; e.g. (start e-learning on a [[mobile device]], finish it on a computer)<ref name="TinSFGate Can/ eLogic APIPress OverviewRelease" /><ref name="Learning Solutions Magazine" />
*Team-based e-learning<ref name="ASTD interview with Aaron Silvers" />
*Tracking learning plans and goals<ref>{{cite web|last=Downes|first=Andrew|title=I Want This: Tin Can Plans, Goals and Targets|url=http://tincanapi.co.uk/pages/I_Want_This.html|accessdate=28 April 2013|archive-url=https://web.archive.org/web/20130724021542/http://tincanapi.co.uk/pages/I_Want_This.html|archive-date=24 July 2013|url-status=dead}}</ref>
 
The Experience API spec is [[open source]].<ref>{{Cite web |date=2013-07-11 |title=The Open Source Landscape |url=https://xapi.com/blog/the-open-source-landscape/ |access-date=2022-04-19 |website=xAPI.com |language=en-US}}</ref> xAPI uses a [[Restful]] [[web service]] with [[JavaScript Object Notation]] (JSON) for its data format. The web service allows software clients to read and write experiential data in the form of “statement” objects. In their simplest form, statements are in the form of “I did this”, or more generally “actor verb object”.<ref name="Saltbox Developers Discuss Tin Can" /><ref>{{Citation |title=Ali Shahrazad & Russell Duhon of Saltbox Talk about Tin Can Alley at mLearnCon 2012 |url=https://www.youtube.com/watch?v=0bsx3QoloNs |language=en |access-date=2022-04-19}}</ref> More complex statement forms can be used. There is also a built-in query API to help filter recorded statements, and a state API that allows for a sort of “[[scratch space]]” for consuming applications.
*Taking e-learning outside of the web browser<ref name="Tin Can API Overview" />
*E-learning in native mobile applications<ref name="Tin Can API Overview" />
*More control over learning content<ref name="Tin Can API Overview" />
*Solid security using [[Oauth]]<ref name=Oauth>{{cite web|title=Tin Can API Tech Overview: How do I send the statement?|url=http://tincanapi.com/developers/tech-overview/#pt5|work=TinCanAPI.com|publisher=Rustici Software|accessdate=30 July 2012}}</ref>
*Platform transition (start e-learning on a mobile device, finish it on a computer)<ref name="Tin Can API Overview" />
*The ability to track games and simulations<ref name="Tin Can API Overview" />
*The ability to track real-world performance<ref name="Tin Can API Layer 2: Record Any Learning Experience">{{cite web|title=Tin Can API Layer 2: Record Any Learning Experience|url=http://tincanapi.com/what-is-tin-can/overview/the-layers-of-tin-can/layer-2-record-any-learning-experience-informal-learning/|work=TinCanAPI.com|publisher=Rustici Software|accessdate=30 July 2012}}</ref>
*Team-based e-learning<ref name="Tin Can API Layer 1: A Modernized Version of SCORM">{{cite web|title=Tin Can API Layer 1: A Modernized Version of SCORM|url=http://tincanapi.com/what-is-tin-can/overview/the-layers-of-tin-can/layer-1-freeing-us-from-the-constructs-of-old/|work=TinCanAPI.com|publisher=Rustici Software|accessdate=30 July 2012}}</ref>
 
===History===
The Tin Can API is an [[open source]] API. It is a [[Representational state transfer]] web service that uses [[JavaScript Object Notation]] for its data format.<ref name="Tin Can API Tech Overview">{{cite web|title=Tin Can API Tech Overview|url=http://tincanapi.com/developers/tech-overview/|work=TinCanAPI.com|publisher=Rustici Software|accessdate=30 July 2012}}</ref> The web service allows software clients to read and write experiential data in the form of “statement” objects. In their simplest form, statements are in the form of “I did this”, or more generally “actor verb object”.<ref name="Tin Can API: Statements 101">{{cite web|title=Tin Can API: Statements 101|url=http://tincanapi.com/developers/tech-overview/statements-101/|work=TinCanAPI.com|publisher=Rustici Software|accessdate=30 July 2012}}</ref> <ref name="Next Gen SCORM" /> More complex statement forms can be used.<ref name="Tin Can API: Statements 101" /> There is also a built in query API to help filter recorded statements, and a state API that allows for a sort of “scratch space” for consuming applications.<ref name="Tin Can API Tech Overview" />
In 2008, it was determined that the interoperability standards were too limited for SCORM. [[LETSI]] appears to request community ideas, as a result of this SCORM 2.0 comes out.<ref>{{Cite web |date=2014-08-22 |title=The Next Generation of SCORM: A Q&A; with Aaron Silvers |url=http://www.astd.org/Publications/Newsletters/Learning-Circuits/Learning-Circuits-Archives/2012/06/The-Next-Generation-of-SCORM-a-Q-and-a-with-Aaron-Silvers |access-date=2022-09-15 |website= |archive-url=https://web.archive.org/web/20140822192026/http://www.astd.org/Publications/Newsletters/Learning-Circuits/Learning-Circuits-Archives/2012/06/The-Next-Generation-of-SCORM-a-Q-and-a-with-Aaron-Silvers |archive-date=22 August 2014 |url-status=dead}}</ref>
 
In 2011 [[Advanced Distributed Learning]] (ADL), the [[United States Department of Defense]]-sponsored stewards of SCORM, recognized the need for a newer and more capable software specification than the original SCORM specification, which was then more than ten years old.<ref name="ASTD interview with Aaron Silvers" /> To address the need, ADL issued a [[Broad Agency Announcement]] (BAA) asking for assistance in improving SCORM, and the BAA was awarded to Rustici Software, a Nashville-based software company experienced with SCORM.<ref name="Float Mobile Tim and Aaron Videos">{{cite web|last=Tillett|first=Jeff|title=Project Tin Can – The Next Generation of SCORM|url=http://floatlearning.com/2012/04/project-tin-can-the-next-generation-of-scorm/|publisher=Float Mobile Learning|accessdate=31 July 2012}}</ref>
===History===
SCORM is over ten years old<ref name="E-Learning Standards Roadmap" />, and [[Advanced Distributed Learning]] (ADL), the stewards of SCORM, recognized the need for a newer and more capable software specification.<ref name="ADL Next Generation SCORM Synopsis">{{cite web|title=ADL Next Generation SCORM Synopsis|url=http://www.adlnet.gov/capabilities/next-generation-scorm#tab-main|work=ADLnet.gov|publisher=Advanced Distributed Learning|accessdate=30 July 2012}}</ref>
 
Rustici Software conducted interviews with the e-learning community to determine where to make improvements, and then developed the research version of the Experience API specification. This process was called Project Tin Can.<ref name="ADL Project Tin Can Research Summary">{{cite web|title=ADL Project Tin Can Research Summary|url=http://www.adlnet.gov/capabilities/next-generation-scorm/tin-can#tab-research|publisher=Advanced Distributed Learning|accessdate=31 July 2012|archive-url=https://web.archive.org/web/20120723001947/http://www.adlnet.gov/capabilities/next-generation-scorm/tin-can#tab-research|archive-date=23 July 2012|url-status=dead}}</ref> The moniker "Tin Can API" was derived from Project Tin Can, and is still used interchangeably with the name "Experience API".<ref>{{cite web |url=https://www.trainingindustry.com/wiki/entries/experience-api-%28tin-can-api%29.aspx |title=Experience API (Tin Can API) {{!}} Training Industry |website=www.trainingindustry.com |url-status=dead |archive-url=https://web.archive.org/web/20130205163703/http://www.trainingindustry.com/wiki/entries/experience-api-(tin-can-api).aspx |archive-date=2013-02-05}}</ref>
ADL issued a [[Broad Agency Announcement]] (BAA) asking for assistance in improving SCORM.<ref name="ADLnet.gov: Project Tin Can Synopsis">{{cite web|title=ADLnet.gov: Project Tin Can Synopsis|url=http://www.adlnet.gov/capabilities/next-generation-scorm/tin-can|work=ADLnet.gov|publisher=Advanced Distributed Learning|accessdate=30 July 2012}}</ref> The BAA was awarded to [http://scorm.com Rustici Software], a leader in the industry of e-learning interoperability software.<ref name="ADLnet.gov: Project Tin Can Synopsis" /> Rustici Software then conducted numerous interviews with the e-learning community to determine which factors were most important to improve upon, and developed the research version of the Tin Can API specification.<ref name="Tin Can API Overview" /> <ref name="ADLnet.gov Next Gen SCORM Tin Can Research">{{cite web|title=ADLnet.gov Next Gen SCORM Tin Can Research|url=http://www.adlnet.gov/capabilities/next-generation-scorm/tin-can#tab-research|work=ADLnet.gov|publisher=Advanced Distributed Learning|accessdate=30 July 2012}}</ref> This process was called [http://scorm.com/tincanoverview/ Project Tin Can].<ref name="ADLnet.gov Project Tin Can Synopsis">{{cite web|title=ADLnet.gov Project Tin Can Synopsis|url=http://www.adlnet.gov/capabilities/next-generation-scorm/tin-can#tab-main|work=ADLnet.gov|publisher=Advanced Distributed Learning|accessdate=30 July 2012}}</ref> <ref name="Tin Can API Overview" />
 
The Tin CanExperience API iswas stilldeveloped inby development,a butcommunity itworking isgroup matureand enoughreleased toas beversion adopted1.0 byin theApril e-learning industry2013.<ref name="E-Learning Standards Roadmap" /> There are currently over 25160 adopters (19 January 2016).<ref name="Tin Can API: Current Adopters">{{cite web|title=Tin Can API: Current Adopters|url=http://tincanapi.com/what-is-tin-can/adopters/|work=TinCanAPI.com|publisher=Rustici Software|accessdate=30 July 2012|archive-date=22 July 2012|archive-url=https://web.archive.org/web/20120722052825/http://tincanapi.com/what-is-tin-can/adopters/|url-status=dead}}</ref>
 
===Current Status=status==
The current version of the specification is “[https://standards.ieee.org/ieee/9274.1.1/7321/ IEEE 9274.1.1-2023]” – also referred to as xAPI 2.0 - released 10 October 2023 by the [[IEEE]].<ref>{{Cite web|url=https://adlnet.gov/news/2023/11/22/xAPI-Officially-Becomes-a-Published-IEEE-Standard/|title=xAPI officially Becomes a Published IEEE Standard}}</ref><ref>{{Cite web|url=https://opensource.ieee.org/xapi/xapi-base-standard-documentation|title = xapi-base-standard-documentation|website = [[IEEE]]|access-date = 2 May 2024}}</ref>
 
Previous versions include: 1.0.3, 1.0.2., 1.0.1.,<ref>{{cite web|last=Johnson|first=Andy|title=From ADL Team Member... Andy Johnson: Experience API (xAPI) version 1.0.1 released|url=http://www.adlnet.gov/experience-api-xapi-version-1-0-1-released/|publisher=ADL|accessdate=24 April 2017}}</ref>
1.0.0.<ref>{{cite web|last=Downes|first=Andrew|title=TinCanAPI.co.uk|url=http://www.tincanapi.co.uk|accessdate=28 April 2013|archive-url=https://web.archive.org/web/20130422072822/http://tincanapi.co.uk/|archive-date=22 April 2013|url-status=dead}}</ref>
The Tin Can API is currently at [http://www.adlnet.gov/resources/Tin_Can_Draft_Specification?type=technical_documentation version 0.8] (official output of the BAA)<ref name="ADLnet.gov Tin Can Draft Specification">{{cite web|title=ADLnet.gov Tin Can Draft Specification|url=http://www.adlnet.gov/resources/Tin_Can_Draft_Specification?type=technical_documentation|work=ADLnet.gov|publisher=Advanced Distributed Learning|accessdate=30 July 2012}}</ref> and [http|archive-url=https://tincanapiweb.comarchive.org/developersweb/resources20120915112512/docs-downloads/ version 0.9] (research version specification).<ref name="Tin Can API Docs and Downloads">{{cite web|title=Tin Can API Docs and Downloads|url=http://tincanapiwww.com/developersadlnet.gov/resources/docs-downloads/|workTin_Can_Draft_Specification?type=TinCanAPI.comtechnical_documentation|publisherarchive-date=Rustici15 SoftwareSeptember 2012|accessdateurl-status=30 July 2012dead}}</ref> and version 0.9 (research version specification)
0.95 (second research version specification).
 
==Implementations==
 
{| class="wikitable"
|+ Client Libraries
|-
! Name !! Language !! Licence
|-
| [https://github.com/BerryCloud/xapi-java xAPI-Java] || Java || Apache-2.0 license
|-
| [https://www.xapijs.dev xAPI.js] || JavaScript || MIT license
|-
| [https://rusticisoftware.github.io/TinCanPHP/ TinCanPHP] || PHP || Apache-2.0 license
|}
 
The Tin Can API is currently at [http://www.adlnet.gov/resources/Tin_Can_Draft_Specification?type=technical_documentation version 0.8] (official output of the BAA)<ref name="ADLnet.gov Tin Can Draft Specification">{{cite web|title=ADLnet.gov Tin Can Draft Specification|url=http://www.adlnet.gov/resources/Tin_Can_Draft_Specification?type=technical_documentation|work=ADLnet.gov|publisher=Advanced Distributed Learning|accessdate=30 July 2012}}</ref> and [http://tincanapi.com/developers/resources/docs-downloads/ version 0.9] (research version specification).<ref name="Tin Can API Docs and Downloads">{{cite web|title=Tin Can API Docs and Downloads|url=http://tincanapi.com/developers/resources/docs-downloads/|work=TinCanAPI.com|publisher=Rustici Software|accessdate=30 July 2012}}</ref>
==References==
{{reflist}}
 
==External links==
*
* {{Official website}}
*
 
*
{{DEFAULTSORT:Experience API}}
*
[[Category:Application programming interfaces]]