How do I report on current statuses?

All data stored in Watershed for reports takes the form of xAPI interaction statements. These record a who-what-when of learner interactions, enabling you to explore the interactions the learner took over time. This is a big advantage over earlier learner data models that might have only stored the latest status for the learner.

But what if the latest status is actually just what you want? How can you get from this stream of interactions to the current and most up to date status for the learner for a given metric? This guide explains how.

Who can use this feature?
 User Roles
Global Admins, Area Admins, and some Users can use this feature.
 Pricing 
Available on paid plans (AnalystCLO, and Enterprise).
 Expertise
Experts can use this feature.

Display the most recent status

You can use a measure with the LAST aggregation to display the most recent status for a given metric. Simply create a measure using the LAST aggregation in measure editor and use it in a report. For example, the configuration below is used to show the most recent score for the Leadership Assessment.newmeasure.png

If you’re not familiar with creating and using Measures, take a look at the guide for the report type you are using (e.g. the Bar report) and the Measure Editor guide.

Filter only people with a particular most recent status

Or perhaps you want to filter people based on their most recent status, for example to get a list of people who have registered for a course. This can be done using a Measure Filter in Advanced Configuration.

For example, the filter below will only show data about people whose most recent status in relation to the example course is ‘registered’.

"peopleFilter": {
  "measureFilter": {
    "measure": {
      "name": "Last Verb",
      "aggregation": {
        "type": "LAST"
      },
      "valueProducer": {
        "type": "STATEMENT_PROPERTY",
        "statementProperty": "verb.id"
      }
    },
    "equals": {
      "values": {
        "ids": ["http://adlnet.gov/expapi/verbs/registered"]
      }
    },
    "filter": {
      "activityIds": {
        "ids": [
          "http:/example.com/courses/some-course"
        ]
      }
    }
  }
}

Count the number of people with a particular status

You can use a similar approach and the Last Value Count aggregation to create a measure to count people who have a particular status. The example below will count the number of people whose most recent status for the example course is ‘registered’.

{
  "name": "Number of people registered for Some Course",
  "aggregation": {
    "type": "LAST_VALUE_COUNT",
    "lastValueProperty": "verb.id",
    "testValue": "http://adlnet.gov/expapi/verbs/registered",
    "regExp": false
  },
  "valueProducer": {
    "type": "STATEMENT_PROPERTY",
    "statementProperty": "actors.person.id"
  },
  "filter":{
    "activityIds": {
      "ids": [
        "http:/example.com/courses/some-course"
      ]
    }
  }
}

Here's an example of how Last Value Count measures might be used in a report.

sales_training.PNG

Was this article helpful?
0 out of 0 found this helpful

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