VTL
Documentation
La documentation de VTL est accessible sur le site officiel SDMX :
Jeux de données
Les jeux de données VTL doivent être décrit par des métadonnées. Les différentes colonnes ont un type et un role.
Par défaut, dans Trevas, une colonne sans type ni rôle se verra affecter le type string et le role measure.
L'utilisateur aura ensuite la possibilité de muter ces attributs au sein de son script, via les opérateurs calc et cast notamment.
Exemple simple
En considérant ds_1 défini comme suit :
| id_1 | id_2 | me_1 | |
|---|---|---|---|
| type | string | string | string |
| role | identifier | identifier | measure |
| id_1 | id_2 | me_1 |
|---|---|---|
| "75001" | "75" | "10" |
| "75002" | "75" | "100" |
| "70001" | "70" | "5" |
| "70002" | "70" | "70" |
Pour obtenir la somme de me_1 par id_2, il faut que seul id_2 ait pour rôle identifier et que le type de me_1 soit integer. On applique donc le script suivant :
ds_2 := ds_1[calc measure id_2 := id_2, me_1 := cast(me_1, integer)];
ds_2 est alors :
| id_1 | id_2 | me_1 | |
|---|---|---|---|
| type | string | string | integer |
| role | measure | identifier | measure |
| id_1 | id_2 | me_1 |
|---|---|---|
| "75001" | "75" | 10 |
| "75002" | "75" | 100 |
| "70001" | "70" | 5 |
| "70002" | "70" | 70 |
On peut dorénavant appliquer l'opérateur aggr :
ds_3 := ds_2[aggr sum_me_1 := sum(me_1) group by id_2];
Et obtenir ds_3 :
| id_2 | sum_me_1 | |
|---|---|---|
| type | string | integer |
| role | identifier | measure |
| id_2 | me_1 |
|---|---|
| "75" | 110 |
| "70" | 75 |