Skip to content

InseeFr/Trevas

Repository files navigation

Trevas

Transformation engine and validator for statistics.

Build Status Quality Gate Status Coverage Maven Central License: MIT Mentioned in Awesome Official Statistics

Trevas is a Java engine for the Validation and Transformation Language (VTL), an SDMX standard that allows the formal definition of algorithms to validate statistical data and calculate derived data. VTL is user oriented and provides a technology-neutral and standard view of statistical processes at the business level. Trevas supports the latest VTL version (v2.1, July 2024).

For actual execution, VTL expressions need to be translated to the target runtime environment. Trevas provides this step for the Java platform, by using the VTL formal grammar and the Antlr tool. For a given execution, Trevas receives the VTL expression and the data bindings that associate variable names in the expression to actual data sets. The execution results can then be retrieved from the bindings for further treatments.

Trevas provides an abstract definition of a Java VTL engine, as well as two concrete implementations:

  • an in-memory engine for relatively small data, for example at design time when developing and testing VTL expressions on data samples
  • an Apache Spark engine for Big Data production environments

Other implementations can be easily developed for different contexts.

Documentation

The documentation can be found in the docs folder and browsed online.

If you want to contribute, see this guide.

Requirements

Open JDK 8+ is required.

References

Trevas is listed among the SDMX tools.

Trevas is part of the sdmx.io ecosystem.

Trevas is referenced by Awesome official statistics software