Trevas

Trevas

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.

What is Trevas?

Trevas (Transformation engine and validator for statistics) 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.0, July 2020).

What does it do?

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

Trevas Modules

Trevas is made of several modules:

  • vtl-engine: Execution engine and its base Java implementation.
  • vtl-model: Model defining the objects used in the engine.
  • vtl-parser: Parser generated by Antlr from the VTL 2.0 formal grammar.
  • vtl-spark: Execution of VTL transformations by Spark.
  • vtl-sdmx: Tools for the use of SDMX metadata
  • vtl-jdbc: Tools for the use of SQL data sources.
  • vtl-csv: Tools for the use of CSV data sources.
  • vtl-jackson: JSON serialization / deserialization of data sets.

Focus on Trevas SDMX

Trevas SDMX provides tools to interact with SDMX 3.0 metadata. It provides, in particular, functions to build Trevas datastructures reading sdmx:mes (handling Dataflows, VtlMappingSchemes, DataStructures), to run TransformationSchemes and produce peristent datasets as ouput.

Installation

Trevas is published on Maven

AI assistant

Need help finding something? I am an AI Assistant that’s here to help!

Welcome to SDMX AI assistant

What are you looking for?

SDMX AI assistant

By using this AI-powered service (“Service”), you acknowledge and agree to the following:

This Service uses generative AI to assist with statistical analysis and research . While the Service strives to deliver useful information, the output (“Output”) may contain inaccuracies, omissions, or biases. The Output is provided for informational purposes only and should not be considered professional advice. You remain responsible for how you interpret and use the Output.

The BIS makes no warranties regarding the accuracy or completeness of the Output and accepts no liability for any loss or damage resulting from its use.

Do not include or share personal, private, confidential or proprietary information when using the Service.

By using this technology, you agree to the Terms and Conditions.

How the assistant can help you

Understand SDMX standards

Ask and get clear explanations about SDMX standards.

Navigate the website

Find tools and documentation on website quickly.

Explore SDMX tools

Ask about API, software and libraries supporting SDMX.

Access documentation

Locate technical guides, specifications, and FAQs.

LLMs can make mistakes, please verify important information.

Why was the answer unhelpful?