VTL
Dokumentasjon
VTL-dokumentasjon er tilgjengelig på den offisielle nettsiden SDMX :
Datasett
VTL-datasett må beskrives med metadata. De forskjellige kolonnene har en type og en rolle.
Som standard, i Trevas, vil en kolonne uten type eller rolle bli tildelt type string og rolle measure.
Brukeren vil da ha muligheten til å mutere disse attributtene i skriptet sitt, spesielt via calc og cast operatorene.
Enkelt eksempel
Å vurdere ds_1 definerer som følger :
| 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" |
For å få summen av meg_1 med id_2, er det nødvendig at bare id_2 har rollen identifikator, og at typen meg_1 er heltall. Vi bruker derfor følgende skript :
ds_2 := ds_1[calc measure id_2 := id_2, me_1 := cast(me_1, integer)];
ds_2 er da :
| 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 |
Vi kan nå bruke aggr operatoren :
ds_3 := ds_2[aggr sum_me_1 := sum(me_1) group by id_2];
Og få ds_3 :
| id_2 | sum_me_1 | |
|---|---|---|
| type | string | integer |
| role | identifier | measure |
| id_2 | me_1 |
|---|---|
| "75" | 110 |
| "70" | 75 |