Learning Analytics with xAPI in CommonSpaces

CommonSpaces (CS) includes an activity stream functionality, which is briefly illustrated in the CommonSpaces analytics help page. Since the inclusion of CS in the Up2U integrated toolbox, said functionality has been extended in order to exploit the presence, inside the same toolbox, of an xAPI Learning Record Store (LRS), which is being fed with learning-related data also by a few Moodle instances and by other tools supporting learning activities. The xAPI LRS currently used in Up2U is a deployment of Learning Locker (LL).

xAPI statements versus activity stream records in CommonSpaces

CommonSpaces sends to the remote LRS an xAPI statement for each action record being written locally to the activity stream. The tables below list the verbs and the activity types referenced by such statements. Another help page includes similar tables for the xAPI statements being sent to the same LRS by the central deployment of the Moodle LMS in Up2U.


The following table summarizes the xAPI verbs used inside the statements emitted by CS; their identifiers, mirror the verb names used in the activity stream. The table shows also the namespaces that qualify the verb identifiers and the associated display names in different languages.

verb identifier namespace display (en-US) display (it-IT)
accept http://activitystrea.ms/schema/1.0/ accepted ha accettato
approve http://activitystrea.ms/schema/1.0/ approved ha pprovato
bookmark http://id.tincanapi.com/verb/ bookmarked ha creato un
segnalibro per
create http://activitystrea.ms/schema/1.0/ created ha creato
delete http://activitystrea.ms/schema/1.0/ deleted ha cancellato
edit http://curatr3.com/define/verb/ edited ha editato
play http://activitystrea.ms/schema/1.0/ played ha interagito con
reject http://activitystrea.ms/schema/1.0/ rejected ha rifiutato
search http://activitystrea.ms/schema/1.0/ searched ha cercato
send http://activitystrea.ms/schema/1.0/ sent ha inviato
submit http://activitystrea.ms/schema/1.0/ submitted ha sottoposto
view http://id.tincanapi.com/verb/ viewed ha visto
Activity types 

The following table lists the xAPI activity types used inside the statements emitted by CommonSpaces and specifies the match between the activity type in the xAPI statement and the object class in the record of the activity stream. The table shows also the namespaces that qualify the identifiers of the activity types.

activity type namespace object class
article http://activitystrea.ms/schema/1.0/ BlogEntry
collection http://activitystrea.ms/schema/1.0/ Folder
discussion http://id.tincanapi.com/activitytype/ Forum
file http://activitystrea.ms/schema/1.0/ FolderDocument
forum-topic http://id.tincanapi.com/activitytype/ ForumTopic
forum-reply http://id.tincanapi.com/activitytype/ ForumPost
group http://activitystrea.ms/schema/1.0/ Project
membership http://commonspaces.eu/activitytype/ ProjectMember
module http://adlnet.gov/expapi/activities/ PathNode
page http://activitystrea.ms/schema/1.0/ Webpage
playlist http://id.tincanapi.com/activitytype/ LearningPath
resource http://id.tincanapi.com/activitytype/ OER
review http://activitystrea.ms/schema/1.0/ OerEvaluation
user-profile  http://id.tincanapi.com/activitytype/ Userprofile

The Bookmarklet

CommonSpaces implements a simple version of the xAPI Bookmarklet concept.

The xAPI Bookmarklet and the CS Bookmarklet

The xAPI Bookmarklet allows the user to almost seamlessly create a series of bookmarks while navigating the web in a browser window or tab. The CS Bookmarklet, as implemented here, keeps the basic idea but sends page URL and Title to CS; provided that the user has already logged in from the same or another browser window, CS adds the information identifying the “actor” and the “verb” of the xAPI statement and sends the basic statement (actor-verb-object) to the LRS.

When the user clicks on the CS Bookmarklet, besides recording said action in the local activity stream and sending the corresponding xAPI statement to the LRS, CommonSpaces also creates the "stub" of a private (unpublished) OER describing the web page or the remote website as a “resource”; this includes only the title and the URL of the page. The user will find in his/her user dashbboard the OER "stubs" resulting from the use of the Bookmarklet; s/he can subsequently edit them by adding additional metadata and finally move them to a Project to publish them.

Creating and using the CS Bookmarklet

To create the CS Bookmarklet in a browser such as Chrome or Firefox, perform this once-only operation:

  • add a new bookmark to the bookmarks bar and give it the name "CS Bookmarklet"
  • set the value of its URL by copying and pasting (without inserting line-breaks) the following string, which doesn't contain an URL but some Javascript code(*):
    javascript:location.href='https://www.commonspaces.eu/report_pageview/?url='+encodeURIComponent(location.href)+'&title='+encodeURIComponent(document.title);void 0
    if you access CommonSpaces at the web address including the Up2U domain name (cs.up2university.eu), the URL of the CS Bookmarklet should have a slightly different value:
    javascript:location.href='https://cs.up2university.eu/report_pageview/?url='+encodeURIComponent(location.href)+'&title='+encodeURIComponent(document.title);void 0

(*) this is why we call it "bookmarklet" and not simply "bookmark".

To use the CS Bookmarklet

  • login to CommonSpaces and use your user menu to view your user dashboard
  • open other tabs of the same browser and navigate the web inside them
  • when you are viewing an interesting page, worth being recorded and catalogued as a resource, click on the CS Bookmarklet
  • refresh the tab hosting you user dashboard
  • in the blue My OERs pane find the entry in the [Draft] state whose title matches the page you just bookmarked and click on it to view the draft OER
  • edit the OER to add appropriate metadata
  • move the new OER to a project of which you are a member, by doing cut-and-paste: cut from the OER view, paste to the view of the destination Project
  • possibly, submit the OER for publication.

The analytics dashboard of Learning Locker