Skip to content

7a6b6f/VTL

 
 

Repository files navigation

License VTL Engine builds Codacy Badge GitHub release (latest by date) Maven metadata URL CRAN/METACRAN

VTL E&E

An engine and editor for the Validation and Transformation Language, written in Java, Javascript and R.

Usage and documentation

Usage info, documentation and examples are available at the project site.

Now you can try the VTLStudio live on ShinyApps: VTLStudio.

Contributing to the project

All contributions are welcome!

Please take a moment to read the Guideline.

Build information

A complete description of the project modules and the build process will be aailable soon.

To build this project, you will need:

  • A Windows or Linux machine;

Building on a MacOS machine should be possible by now but it is untested.

  • JDK >= 8;
  • Apache Maven 3.6.3;
  • GNU R >= 3.5.3 for building RVTL package;
  • Python 3.7 >= 3.7 for building the Jupyter notebook kernel;
  • Configured internet connection (to download node.js).

To build the project, launch the command:

mvn [-P with-r,with-python] [-Dsdmx.version=x.x.x] clean package

Each artifact will be generated inside the target folder of each module.

If you want to build the editor and the R package along with the engine, activate the with-r maven profile; you may need to configure your internet connection in Maven. The R package, ready for installation in R (with install.packages), will be located there.

If you want to build the Jupyter notebook kernel along with the engine, also activate the with-python maven profile; you may need to install the prerequisite packages for the kernel: Jpype1, ipykernel, numpy and pandas. Please make sure that Jpype points to a JDK >= 8.

If you want to use a different version of the SDMX connectors dependency, change the relative property value. The current default version is 2.3.3. Check here the available maven releases.

Project Status

The Project is an ongoing development effort at Bank of Italy, with the purpose of demonstrating the feasibility and usefulness of VTL in a real scenario, such as translating validation rules exchanged by entities operating in the ESCB. Thus,

some VTL operators and statements offer only limited functionality, and some have to be implemented yet.

The following map shows the current implementation status: statusmap

Copyright notice

This software is a copyright of Bank of Italy, 2019-2020. The software is distributed under the European Public Licence v1.2.

Packages

No packages published

Languages

  • Java 78.8%
  • R 9.2%
  • Roff 5.3%
  • ANTLR 2.7%
  • JavaScript 2.1%
  • Python 0.6%
  • Other 1.3%