Dane są udostępnione w formatach CSV i JSON oraz poprzez dostęp API.
Pierwszy rekord pliku zawiera opis kolumn.
Kolumny w pliku są rozdzielone znakiem przecinka (,), kolejne rekordy rozdziela znak nowej linii (\n). W wartościach numerycznych symbolem części dziesiętnej jest kropka (.). Pliki są kodowane w systemie UTF-8, jeżeli to możliwe pominięte są znaki spoza zbioru ASCII.
Pliki JSON kodowane są w systemie UTF-8.
{
"meta": {
"zasob": "21.4 Całkowite zużycie wody na osobę na osobę w gospodarstwie domowym",
"aktualizacja": "roczna",
"jednostka": "l/dzień",
"url": "http://185.53.98.141/portal/data/iso37120/21/4/data.json"
},
"data": [
{
"rok": "2015",
"wartosc": 96.31
}
]
}
Własność "meta" jest obiektem i zawiera informacje o danych - nazwę zasobu, częstotliwość aktualizacji, jednostkę oraz adres URL z którego można pobrać aktualną wersję zasobu.
Własność "data" jest tablicą obiektów, z których każdy zawiera własności "rok" oraz "wartosc".
Dostęp do danych realizowany jest za pośrednictwem protokołu HTTP.
Dane można pobrać używając metody GET. Format adresu URL jest następujący:
http://185.53.98.141/api/action/datastore_search?resource_id=<ID_ZASOBU>
Adresy URL poszczególnych zasobów są podane w katalogu na karcie zasobu. ID_ZASOBU jest podany na karcie zasobu
w tabeli "Dodatkowe informacje":
Przykładowa odpowiedź jest następująca:
{
"help": "http://185.53.98.141/api/3/action/help_show?name=datastore_search",
"success": true,
"result": {
"resource_id": "ff6e5973-32d5-4a64-b499-8ce65abb73fb",
"fields": [
{
"type": "int4",
"id": "_id"
},
{
"type": "int4",
"id": "year"
},
{
"type": "float8",
"id": "data_value"
}
],
"records": [
{
"_id": 1,
"data_value": 96.31,
"year": 2015
}
],
"_links": {
"start": "/api/action/datastore_search?resource_id=ff6e5973-32d5-4a64-b499-8ce65abb73fb",
"next": "/api/action/datastore_search?offset=100&resource_id=ff6e5973-32d5-4a64-b499-8ce65abb73fb"
},
"total": 1
}
}
Obiekt "result" zawiera listę pól zbioru danych wraz z ich nazwami i typami (tablica "fields") oraz tablicę rekordów.
Żądanie wykonane metodą GET może zawierać dodatkowe parametry:
| parametr | opis | przykład | domyślnie |
|---|---|---|---|
| filters (string) | Filtry zasobu | {"year": 2015} | |
| q (string|dictionary) |
Kwerenda wyszukiwania pełnotekstowego. Jeżeli jest stringiem, powoduje wyszukanie w całym rekordzie. Jeżeli jest słownikiem, powoduje wyszukiwanie w podanych polach. |
wartość szukana {"nazwa_pola": "wartość szukana"} |
|
| distinct (bool) | Jeżeli ustawione na TRUE, zwracane są tylko unikalne rekordy | FALSE | |
| limit (int) | Ilość zwracanych rekordów | 100 | |
| offset (int) | Przesunięcie o zadaną ilość rekordów | 0 | |
| fields (string list) | Lista nazw zwracanych pól rozdzielanych przcinkiem | year,data_value | |
| sort (string list) | Sortowanie zwracanych danych - lista nazw pól rozdzielanych przecinkiem ze wskazaniem kierunku sortowania | data_value asc |
Jeżeli dane w zbiorach (w rekordach) odnoszą się do konkretnych dat lub okresów, stosuje się następujące oznaczenia nazw kolumn i formaty danych:
| określenie czasu | opis | nazwa kolumny | format | przykład |
|---|---|---|---|---|
| dzień | dane dotyczą zbiorczo konkretnego dnia lub stan na konkretny dzień | day | YYYY-MM-DD | 2016-04-25 |
| miesiąc | dane dotyczą konkretnego miesiąca | month | YYYY-MM | 2016-04 |
| kwartał | dane dotyczą konkretnego kwartału | quarter | YYYY\QQ | 2016Q1 |
| rok | dane dotyczą konkretnego roku | year | YYYY | 2016 |