Veracity Learning Version 1.7 Released

Veracity Learning Version 1.7 Released

Veracity is proud to announce the release of Veracity Learning v1.7. This release includes several new features and enhancements! Check out the Feature Playlist on our YouTube Channel.

VQL and Accelerated Queries with ElasticSearch

The major focus in this release of Veracity Learning is better integration of ElasticSearch. Adding support to accelerate queries with ElasticSearch, while being able to fall back on MongoDB if necessary. This required us to develop an entirely new analytics representation and a simplified language for queries and processing. We're tentatively calling this Veracity Query Language (VQL), and you can try it here.

Version 1.7 uses VQL under the hood to drive all of the dashboards. This allows the LRS to more seamlessly integrate ElasticSearch acceleration where necessary, while also reducing a lot of complex code to relatively simple expressions. We're so excited about how VQL has changed the product under-the-hood that we're also exposing it to end clients via the API and user interface.

The VQL design goals include:

  • Offering users a simpler way to support more common operations than writing queries with the MongoDB aggregation language.
  • Including operations specifically relevant to xAPI (rather than a generic database language).
  • Merging graphing configuration with data query and analysis.
  • Switching between different database and processing technologies, using the system best for a given task. Our implementation can use ElasticSearch, JavaScript and MongoDB, sometimes within the same query!
  • Allowing the chaining of queries, such that the results of one query can inform the next query.
  • Separating data search and filtering from the data processing stages.

We've also changed the way that dashboards and analytics processors interact. Now, when a dashboard requests a specific processor configuration, that request is not routed through the client software. This significantly improves the security of embedded dashboards.

GUI-driven Chart Builder & Advanced Graph Queries

We've also added VQL Reference Documentation and a handy new visualization chart builder tool which is backed by VQL. This tool lets you use a simple GUI to build a large set of custom graphs. This is perfect for people that don’t want to have to worry about building complex queries and learning the Mongo aggregation language. This tool also fully supports xAPI context extensions and result extensions, and even when those extensions contain complex objects or arrays. This tool replaces many of the older analytics processors, because it's powerful enough to do the job that used to be handled by several different utilities. Create a free account at to test drive these new tools!

Lists of the new features & improvements, and details on one breaking change are all provided below.

New Features

  • Support for OpenID
  • GUI-driven Chart & Query Builder Tool
  • Analytics System Based on VQL
  • VQL and Analytics Debugger
  • VQL Documentation and Examples


  • Clearing statements and documents from the REST API
  • Automatic fallback on Mongo when the ES index is unavailable
  • Check for proper ES version on startup
  • Hook in plugin system for post login redirect
  • Updates to the plug-in system to better support native ‘require’ behaviors
  • New dropdown pickers in the Analytics UI
  • Better support for branding and CSS overrides
  • Improved error messages from the LTI launch service
  • Database indexes and ES mapping are created on LRS creation, not lazily on data storage

Breaking Change

Existing links to embedded graphs and dashboards will no longer work. Many widgets on the custom dashboard may no longer render. You'll need to use the link icon to get new dashboard and graph links, and recreate some custom widgets using the “custom chart builder” tool. You can simply forget the old ones. Contact us if you have questions or need support with this.

New Lite (Free) Version

The download for the free Lite version has also been updated. You should be able to simply overwrite the old executable. There are no additional migration steps. The new Lite version imposes restrictions on the number of custom dashboard each LRS can contain, and the number of widgets on each dashboard. As usual, please reach out if you have questions, comments, or experience any issues updating.