xapiapps

As a xAPI conformant LRS, Watershed can receive data from any xAPI conformant Activity Provider. Many Watershed cards are flexible and you can configure Watershed to display useful visualizations and metrics from almost any xAPI data set. To help you get the most out of your data, we’re working with a number of product vendors to ensure that the data they send is optimized to produce the best possible results in Watershed. We want to help you to configure Watershed cards in the best way possible to display that data.

This guide tells you how to connect xapiapps to Watershed and then configure Watershed to get the best results.

This guide has 3 sections:

Connecting to xapiapps

Please note: You’ll need to be a Watershed Admin or Owner to connect xapiapps to Watershed.

To connect xapiapps to Watershed, log in to both systems. In Watershed, follow these instructions to get your Endpoint, Key and Secret.

In xapiapps, navigate in the menu to Manage Apps. Select Watershed LRS and enter the Endpoint, Key and Secret. Click Test to test the connection.

Configuring cards for the xapiapps observation app

Please note: You need to connect xapiapps to Watershed before you configure any cards, as it’s helpful to have data from xapiapps in Watershed as you do the configuration.

The xapiapps observation app enables you to record the results of a workplace observation. You can use several Watershed cards to represent data from xapiapps in different ways.

Please note: When authoring observations in xapiapps, we recommend that you turn on both scoring and pass/fail for the best results in Watershed.

Accomplishments

Observation data from xapiapps can be displayed in Watershed’s Accomplishment card by creating an Accomplishment in Watershed mapped to the observation.

Key questions answered: How many people have completed the observation? How many have yet to complete it?

First create the observation in xapiapps and run a learner through it (perhaps a test account) in order to get data about the observation into Watershed. Next, you’ll create an Accomplishment in Watershed that mirrors the observation. Create one accomplishment criteria for each checklist item within the observation. Register users for the accomplishment - everybody who you want to complete the checklist. Finally, set up an Accomplishment Card for the accomplishment you’ve just created. The card will now track learner’s progress.

Please note: This process will set up an accomplishment that tracks every checklist item of the observation. If you just want to track completion of the checklist as a whole, you can make passing the checklist a single criteria of the accomplishment.

Interactions

You can use the Interactions Card to display recent activity relating to an observation. Simply set up an Interactions Card and add the observation and each of the checklist items within the activities filter.

Key questions answered: Who has been completing the observation recently?

Activity

The Activity Card is designed for assessments and is useful for tracking completions, passes and scores and reporting on the detail of checklist items within an observation. Simply set up an Activity Card and add the observation to within the activities filter. There is no need to add the checklist items to the filter.

Key questions answered: How many people have completed and passed the observation? How did they do on individual checklist items?

Correlation Card

You can use the Correlation card to investigate the impact of repeating observations on the learner's observation score.

Key questions answered: Do learners who have been observed at a task more often have a higher average or most recent score? Are learners who score low in their first onservation more likely to repeat the observation?

This card works best with advanced configuration. Create a new Correlation card and switch to Advanced configuration. Replace all of the code with the code below:

{
  "measures": [
    {
      "name": "Completion Count",
      "field": {
        "type": "LONG",
        "id": "result.completion"
      },
      "aggregation": "COUNT",
      "match": "true"
    },
    {
      "name": "Latest Score",
      "field": {
        "type": "DOUBLE",
        "id": "result.score.scaled"
      },
      "aggregation": "LAST"
    },
    {
      "name": "First Score",
      "field": {
        "type": "DOUBLE",
        "id": "result.score.scaled"
      },
      "aggregation": "FIRST"
    },
    {
      "name": "Highest Score",
      "field": {
        "type": "DOUBLE",
        "id": "result.score.scaled"
      },
      "aggregation": "MAX"
    },
    {
      "name": "Average Score",
      "field": {
        "type": "DOUBLE",
        "id": "result.score.scaled"
      },
      "aggregation": "AVERAGE"
    }
  ],
  "dimensions": [
    {
      "type": "PERSON"
    }
  ]
}

You should now return to Simple configuration to edit the Card Title and add the observation(s) you want to analyze to the Activities filter.

Leaderboard

You can use the Leaderboard card to rank learners by a number of different measures relating to the observation checklist:

  • Number of checklist items completed
  • Number of times the observation has been completed
  • Average score achieved for the observation
  • Average score achieved for checklist items

Key questions answered: Who has completed the most/least checklists/items? Who scored the highest/lowest?

Simply set up a Leaderboard card and add either the observation or all the checklist items to the activities filter depending on what measure you want to report on. You can add multiple observations if you want to count them together.

Select a measure depending on what you want to report on:

  • Completion Count - number of times the learner completed an observation or a checklist item.
  • Average Score - average score achieved for the observation or checklist items. 

Using advanced configuration you can also rank learners by the following measures. Speak to us for help setting this up.

  • Number of checklist items passed
  • Number of times the observation has been passed
  • Highest score achieved for the observation
  • Most recent (last) score achieved for the observation
  • First score achieved for the observation

 

Configuring cards for the xapiapps attendance app

Please note: You need to connect xapiapps to Watershed before you configure any cards, as it’s helpful to have data from xapiapps in Watershed as you do the configuration.

The xapiapps attendance app enables you to record attendance at events such as meetings or training sessions. You can use several Watershed cards to represent data from xapiapps in different ways.

Please note: For events that are repeated (such as coaching sessions) you should re-use the same xapiapps attendance object each time rather than creating a new xapiapps attendance object for each session. This will enable you to better track the number of times the learner attended the events.

Accomplishments

Attendance data from xapiapps can be displayed in Watershed’s Accomplishment card by creating an Accomplishment in Watershed mapped to a series of events.

Key questions answered: How many people attended all the events in a series? Which events did each person attend? Which order are people most likely to attend events?

First create the attendance sessions in xapiapps and start and stop each session in order to get data about the observation into Watershed. Next, you’ll create an Accomplishment in Watershed for the event series. Create one accomplishment criteria for each event in the series. Register users for the accomplishment - everybody who you want to attend the events. Finally, set up an Accomplishment Card for the accomplishment you’ve just created. The card will now track learner’s progress.

Interactions

You can use the Interactions Card to display recent activity relating to an attendance event. Simply set up an Interactions Card and add the attendance within the activities filter.

Key questions answered: Who attended an event recently?

Activity

We do not recommend using this card with attendance data from xapiapps.

Leaderboard

The Leaderboard can be used to display the number of events each person has attended and rank them in order. It can also display the total number of attendances at events by time period.

Key questions answered: Who has attended the most/least events? What were the more/least busiest periods in terms of people attending events?

Simply set up a Leaderboard card (instructions coming soon!) and add all of the events (and other experiences) you want to count to the activities filter. Then select and add the Unique Activity ID Count measure. Remove any other unwanted measures from the card. Set the card to be organized By Person if you want to rank people by number of events attended. Organize by a time period to see which time period most events were attended.

Please note: The Unique Activity ID Count measure will only count each event once per learner. If the learner will join the event multiple times and you want to count these separately, you can create a new measure using advanced configuration and the measure JSON below:
{
  "name": “Joined Count",
  "field": {
    "id": "verb.id",
    "type": "STRING"
  },
  "aggregation": "COUNT",
  "match": "http://activitystrea.ms/schema/1.0/join"
}

Please speak to us for help using advanced configuration.

Skills

The Skills card can provide a view on how many times learners have attended a set of events similar to the Leaderboard (the skills card includes a leaderboard). In addition, it can display the total time spent for each learner and for each event.

Key questions answered: Who has attended the most/least events? How many people attended each event? How long did people spend at events?

Configuring the Skills card to work well with xapiapps attendance data requires advanced configuration and an understanding of JSON. Please speak to us if you get stuck with the instructions below. 

Follow the instructions for Creating and Managing Skills up to step three. Instead of naming the skill and searching for an activity, click Advanced Edit. In the editor that appears, remove everything and replace it with the JSON below:

{
  "name": "Name of Skill",
  "components": [
    {
      "name": "verb.id",
      "value": "http://activitystrea.ms/schema/1.0/leave"
    }
  ],
  "andSkills": [
    {
      "components": [
        {
          "name": "object.definition.type",
          "value": "http://activitystrea.ms/schema/1.0/event"
        }
      ]
    }
  ]
}

This tells Watershed to count and get duration data from every statements with the verb ‘leave’ and the activity type ‘event’. You should edit the name of the skill on line 2, taking care not to delete the quotes or comma at the end of the line.

If you need to restrict the skill to only certain events, you can use the JSON below, which is a little more complex:

{
  "name": "Name of Skill",
  "components": [
    {
      "name": "verb.id",
      "value": "http://activitystrea.ms/schema/1.0/leave"
    }
  ],
  "andSkills": [
    {
      "components": [
        {
          "name": "object.definition.type",
          "value": "http://activitystrea.ms/schema/1.0/event"
        }
      ]
    },
    {
      "components": [
        {
          "name": "object.id",
          "value": "https://example.tesapp.com/#/rcall/f220dc58-b256-acc6-a438-032a4ee5a614"
        },
        {
          "name": "object.id",
          "value": "https://example.tesapp.com/#/rcall/97efc2ff-760a-6623-acc9-04fff3098add"
        }
      ]
    }
  ]
}

This will filter only statements matching the two activity ids listed within the components array of the second skill object within ‘andSkills’. You can add to, remove and edit the activities in this list.

With the skill created, simply follow the instructions to set up and configure the Skills card.

Please note: It is possible to create considerably more complex skills involving a variety of different types of experience. Please ask us for help if you want to do this.
Was this article helpful?
0 out of 0 found this helpful
Have more questions? Submit a request

If you can't find what you need or you want to ask a real person a question, please contact customer support.