{
  "manifestVersion": 1,
  "dataset": {
    "id": "eu-census-hub",
    "name": "European Census Hub",
    "description": "The population and housing censuses of Europe, as published through the European Census Hub: every census hypercube Eurostat disseminates for the 2021, 2011, 2001 and 1991 rounds — all 143 cross-tabulations, 154,243,498 cells of them published here. The Census Hub catalogue puts the full cross-product of those same 143 cubes at 183,534,107 cells: every cube is present, but not every one is loaded to its catalogue size yet, and a `count(*)` over observations for a cube against that same cube's hypercubes.cell_count is the exact, always-current way to read off the gap rather than guess at it. The cubes cover the EU member states plus the EFTA and candidate countries. Population by age, sex, marital and family status, household and housing arrangements, country of birth and citizenship, educational attainment, activity status, occupation, industry, place of work, year of arrival and residence a year before the census, together with the housing tables — most of it down to NUTS 3 regions, which for Romania means all 41 counties and Bucharest. Every code is decoded from the source's own metadata: the nomenclature of each classification, the axes of each cube, and the NUTS geography with its level and country, so a cell can be read without a codebook.",
    "descriptions": {
      "ro": "Recensămintele populației și locuințelor din Europa, publicate prin European Census Hub. Setul cuprinde toate hipercuburile de recensământ difuzate de Eurostat pentru rundele din 2021, 2011, 2001 și 1991: toate cele 143 de tabele încrucișate, din care se publică aici 154.243.498 de celule. Catalogul Census Hub declară pentru aceleași 143 de cuburi un produs cartezian complet de 183.534.107 celule: fiecare cub este prezent, dar nu toate sunt încărcate până la dimensiunea din catalog, iar un `count(*)` peste observations pentru un cub, comparat cu cell_count al aceluiași cub din hypercubes, este modul exact și mereu actual de a citi diferența, nu de a o presupune. Sunt acoperite statele membre ale UE, țările AELS și țările candidate. Datele prezintă populația după vârstă, sex, stare civilă și situație familială, modul de organizare a gospodăriei și condițiile de locuire, țara de naștere și cetățenia, nivelul de educație, statutul activității curente, ocupația, activitatea economică, locul de muncă, anul sosirii în țară și reședința obișnuită cu un an înainte de recensământ. Sunt incluse și tabelele despre locuințe. Majoritatea datelor ajung până la regiuni NUTS 3, adică, pentru România, toate cele 41 de județe și municipiul București. Sensul fiecărui cod este preluat din metadatele sursei: nomenclatura fiecărei clasificări, axele fiecărui cub și geografia NUTS, cu nivelul și țara sa. Astfel, fiecare celulă poate fi înțeleasă fără un nomenclator separat.",
      "en": "The population and housing censuses of Europe, as published through the European Census Hub: every census hypercube Eurostat disseminates for the 2021, 2011, 2001 and 1991 rounds — all 143 cross-tabulations, 154,243,498 cells of them published here. The Census Hub catalogue puts the full cross-product of those same 143 cubes at 183,534,107 cells: every cube is present, but not every one is loaded to its catalogue size yet, and a `count(*)` over observations for a cube against that same cube's hypercubes.cell_count is the exact, always-current way to read off the gap rather than guess at it. The cubes cover the EU member states plus the EFTA and candidate countries. Population by age, sex, marital and family status, household and housing arrangements, country of birth and citizenship, educational attainment, activity status, occupation, industry, place of work, year of arrival and residence a year before the census, together with the housing tables — most of it down to NUTS 3 regions, which for Romania means all 41 counties and Bucharest. Every code is decoded from the source's own metadata: the nomenclature of each classification, the axes of each cube, and the NUTS geography with its level and country, so a cell can be read without a codebook."
    },
    "names": {
      "ro": "Recensămintele europene (European Census Hub)",
      "en": "European Census Hub"
    },
    "sourceUrl": "https://ec.europa.eu/CensusHub/selectHyperCube?clearSession=true",
    "license": {
      "id": "CC-BY-4.0",
      "name": "Creative Commons Attribution 4.0 International",
      "url": "https://ec.europa.eu/eurostat/web/main/help/copyright-notice",
      "attribution": "Source of data: Eurostat, European Census Hub (https://ec.europa.eu/CensusHub) — population and housing censuses of the EU member states, EFTA and candidate countries.",
      "notes": "Eurostat authorises reuse of its statistical data and metadata for commercial and non-commercial purposes provided the source is acknowledged (Commission Decision 2011/833/EU; site content licensed CC BY 4.0). Two things a reuser must know about census figures in particular. First, the counts are produced by the NATIONAL statistical institutes — INS for Romania, Destatis for Germany, and so on — and transmitted to Eurostat under the census regulations (EC) 763/2008 and (EU) 2017/712; Eurostat disseminates them, and this dataset republishes them as retrieved, with Eurostat's own flags kept in the status column. Second, national institutes apply statistical disclosure control to census tables — rounding, perturbation and suppression of small counts — so a small figure is an approximation by design, a NULL with a \"c\" flag is a confidentiality suppression rather than a zero, and no individual can or should be identified from any combination of these cells. Eurostat's general permission does not extend to material it identifies as belonging to third parties, which this connector does not republish. Modified representations of the data must be identified as such to end users."
    },
    "cadence": "monthly",
    "tags": [
      "census",
      "eu",
      "europe",
      "eurostat",
      "population",
      "housing",
      "demography",
      "households",
      "migration",
      "nuts",
      "regions",
      "romania"
    ],
    "sources": []
  },
  "ingest": {
    "id": "01M1SPDT9JMYTQ7A589DTKSQC1",
    "startedAt": "2026-09-05T21:08:39.346Z",
    "snapshotDate": "2026-09-05",
    "catalogSnapshotId": 38,
    "params": {
      "hypercubes": "all",
      "countries": "NO,CH,IS",
      "maxHypercubeCells": 0,
      "maxRunCells": 0,
      "maxCellsPerRequest": 200000
    },
    "outOfBand": true
  },
  "baseUrl": "https://data-directory.fsn1.your-objectstorage.com/public/eu-census-hub",
  "catalog": {
    "url": "https://data-directory.fsn1.your-objectstorage.com/catalog/eu-census-hub/v/01M1SPDT9JMYTQ7A589DTKSQC1/catalog.ducklake",
    "latestUrl": "https://data-directory.fsn1.your-objectstorage.com/catalog/eu-census-hub/catalog.ducklake",
    "sha256": "fd7e85220883af103867112fe1ed3a9eea22b016af1e4b7f22aa2d75e2073753",
    "duckdbVersion": "v1.5.5",
    "attachExample": "ATTACH 'ducklake:https://data-directory.fsn1.your-objectstorage.com/catalog/eu-census-hub/catalog.ducklake' AS lake (READ_ONLY); SELECT * FROM lake.main.observations LIMIT 5;"
  },
  "queryHints": {
    "examples": [
      {
        "title": "Romania: population by marital status in every county, 2021 census",
        "sql": "SELECT g.geo_label AS county, s.series_label, o.value AS persons\nFROM observations o\nJOIN geographies g ON g.geo_code = o.geo\nJOIN series s ON s.hypercube_code = o.hypercube_code AND s.series_key = o.series_key\nWHERE o.hypercube_code = 'cens_21m_r3'\n  AND o.country_code = 'RO'\n  AND g.nuts_level = 3\n  AND s.dimension_codes ->> 'sex' = 'T'\n  AND s.dimension_codes ->> 'age' = 'TOTAL'\nORDER BY o.value DESC",
        "description": "hypercube_code then country_code lead the sort order, so this predicate prunes to a few contiguous row groups. nuts_level = 3 is what stops the counties being added to the regions and the national total that sit in the same table."
      },
      {
        "title": "Which census tables exist, and how big are they?",
        "sql": "SELECT hypercube_code, title, census_round, geo_level, cell_count\nFROM hypercubes\nWHERE title_lc LIKE '%educational attainment%'\nORDER BY census_round DESC, cell_count DESC",
        "description": "The catalogue covers every hypercube Eurostat publishes, whether or not observations for it have been loaded here — join to observations (see 'How complete is each cube's data?' below) before concluding a cube is empty."
      },
      {
        "title": "Decode a hypercube before querying it",
        "sql": "SELECT d.dimension_id, d.dimension_label, d.role, d.category_count,\n       c.category_code, c.category_label\nFROM dimensions d\nLEFT JOIN categories c\n  ON c.hypercube_code = d.hypercube_code AND c.dimension_id = d.dimension_id\nWHERE d.hypercube_code = 'cens_21m_r3' AND d.role = 'classification'\nORDER BY d.position, c.position",
        "description": "dimensions gives the axes in the order series_key concatenates them; categories gives the codes of one axis in the statistical office's own order."
      },
      {
        "title": "Population aged 65+ as a share of the total, by NUTS 2 region",
        "sql": "WITH cube AS (\n  SELECT o.geo, s.dimension_codes ->> 'age' AS age, o.value\n  FROM observations o\n  JOIN series s ON s.hypercube_code = o.hypercube_code AND s.series_key = o.series_key\n  WHERE o.hypercube_code = 'cens_21m_r3'\n    AND s.dimension_codes ->> 'sex' = 'T'\n    AND s.dimension_codes ->> 'marsta' = 'TOTAL'\n)\nSELECT g.geo_label AS region, g.country_code,\n       round(100 * old.value / nullif(total.value, 0), 1) AS pct_65_plus\nFROM cube old\nJOIN cube total ON total.geo = old.geo AND total.age = 'TOTAL'\nJOIN geographies g ON g.geo_code = old.geo\nWHERE old.age = 'Y_GE85' AND g.nuts_level = 2\nORDER BY pct_65_plus DESC\nLIMIT 25",
        "description": "A self-join on the same cube: the age band over the TOTAL of the same geography."
      },
      {
        "title": "How complete is each cube's data?",
        "sql": "SELECT h.hypercube_code,\n       h.title,\n       h.census_round,\n       h.cell_count,\n       count(o.*) AS observations_loaded,\n       round(100.0 * count(o.*) / nullif(h.cell_count, 0), 1) AS pct_loaded\nFROM hypercubes h\nLEFT JOIN observations o ON o.hypercube_code = h.hypercube_code\nGROUP BY h.hypercube_code, h.title, h.census_round, h.cell_count\nORDER BY pct_loaded ASC NULLS FIRST, h.cell_count DESC",
        "description": "hypercubes carries a cube's identity only — its code, title and the catalogue's own cell_count — never a run's own load flag or count, because those get upserted per cube and a narrower later run (this connector is fanned out over ~30 country-scoped runs; see datadirectory.config.ts) would silently clobber a wider run's numbers with its own. Coverage is instead an exact GROUP BY over observations, joined back to hypercubes.cell_count, correct no matter which runs have executed since."
      }
    ]
  },
  "tables": [
    {
      "name": "observations",
      "description": "The census itself: one row per hypercube, per statistical series, per geography — a count of people, households, families or dwellings from a European population and housing census. Every code in this table is decoded elsewhere: join series on (hypercube_code, series_key) for what is being counted, geographies on geo for where, and hypercubes on hypercube_code for the source metadata and licence. Always filter on hypercube_code first — the table holds four census rounds of unrelated cubes side by side, and their series keys are only unique within a hypercube.",
      "descriptions": {
        "ro": "Recensământul propriu-zis: câte un rând pentru fiecare hipercub, serie statistică și zonă geografică. Fiecare rând arată un număr de persoane, gospodării, familii sau locuințe dintr-un recensământ european al populației și locuințelor. Sensul tuturor codurilor se găsește în celelalte tabele: legați series prin (hypercube_code, series_key) pentru a afla ce se numără, geographies prin geo pentru a afla locul și hypercubes prin hypercube_code pentru metadatele sursei și licență. Filtrați întotdeauna mai întâi după hypercube_code. Tabelul conține alături cuburi fără legătură din patru runde de recensământ, iar series_key este unic numai în interiorul unui hipercub.",
        "en": "The census itself: one row per hypercube, per statistical series, per geography — a count of people, households, families or dwellings from a European population and housing census. Every code in this table is decoded elsewhere: join series on (hypercube_code, series_key) for what is being counted, geographies on geo for where, and hypercubes on hypercube_code for the source metadata and licence. Always filter on hypercube_code first — the table holds four census rounds of unrelated cubes side by side, and their series keys are only unique within a hypercube."
      },
      "rowCount": 182431945,
      "lastRunRows": 9158858,
      "totalBytes": 280343535,
      "sortBy": [
        "hypercube_code",
        "country_code",
        "geo",
        "series_key"
      ],
      "searchColumns": [],
      "primaryKey": [
        "hypercube_code",
        "census_year",
        "geo",
        "series_key"
      ],
      "writeMode": "upsert",
      "storage": "lake",
      "columns": [
        {
          "name": "hypercube_code",
          "type": "VARCHAR",
          "nullable": false,
          "description": "Eurostat's code for the census hypercube, lowercase — e.g. \"cens_21m_r3\" (population by marital status, broad age groups and NUTS 3 region). The `_r2`/`_r3` suffix marks a regional cube. Joins to hypercubes.hypercube_code and series.hypercube_code.",
          "descriptions": {
            "ro": "Codul cu litere mici atribuit de Eurostat hipercubului de recensământ. De exemplu, \"cens_21m_r3\" reprezintă populația după stare civilă, grupe mari de vârstă și regiune NUTS 3. Sufixul `_r2`/`_r3` arată că este un cub regional. Se leagă de hypercubes.hypercube_code și series.hypercube_code.",
            "en": "Eurostat's code for the census hypercube, lowercase — e.g. \"cens_21m_r3\" (population by marital status, broad age groups and NUTS 3 region). The `_r2`/`_r3` suffix marks a regional cube. Joins to hypercubes.hypercube_code and series.hypercube_code."
          },
          "min": "cens_01naagchi",
          "max": "cens_hnmga",
          "distinctApprox": 147
        },
        {
          "name": "census_year",
          "type": "INTEGER",
          "nullable": false,
          "description": "Reference year of the census round the observation belongs to, taken from the cube's own time dimension: 2021, 2011, 2001 or 1991. The reference moment is the round's census day, which each country sets nationally (Romania's 2021 round counted the population as of 1 December 2021).",
          "descriptions": {
            "ro": "Anul de referință al rundei de recensământ din care face parte observația, preluat din dimensiunea de timp a cubului: 2021, 2011, 2001 sau 1991. Momentul de referință este ziua recensământului, stabilită de fiecare țară. Pentru runda din 2021, România a numărat populația cu reședință obișnuită la 1 decembrie 2021.",
            "en": "Reference year of the census round the observation belongs to, taken from the cube's own time dimension: 2021, 2011, 2001 or 1991. The reference moment is the round's census day, which each country sets nationally (Romania's 2021 round counted the population as of 1 December 2021)."
          },
          "distinctApprox": 5
        },
        {
          "name": "country_code",
          "type": "VARCHAR",
          "nullable": false,
          "description": "The country the geography belongs to: the first two letters of a NUTS code (\"RO111\" → \"RO\"), or the whole code for a supranational aggregate (\"EU27_2020\"). Denormalised from geo so that \"all of Romania's regions\" is a range on a sort column rather than a pattern match.",
          "descriptions": {
            "ro": "Țara din care face parte zona geografică: primele două litere ale unui cod NUTS (\"RO111\" → \"RO\") sau codul complet pentru un agregat supranațional (\"EU27_2020\"). Valoarea este preluată separat din geo, astfel încât toate regiunile României să poată fi găsite ca interval într-o coloană sortată, nu prin căutarea unui tipar.",
            "en": "The country the geography belongs to: the first two letters of a NUTS code (\"RO111\" → \"RO\"), or the whole code for a supranational aggregate (\"EU27_2020\"). Denormalised from geo so that \"all of Romania's regions\" is a range on a sort column rather than a pattern match."
          },
          "min": "AT",
          "max": "UK"
        },
        {
          "name": "geo",
          "type": "VARCHAR",
          "nullable": false,
          "description": "The geography this cell counts: a NUTS code at country (\"RO\"), major-region (\"RO1\"), basic-region (\"RO11\") or small-region (\"RO111\") level, or the EU aggregate (\"EU27_2020\"). Joins to geographies.geo_code for the name and the level. Levels sit side by side and nest, so summing across geo double-counts — pick one level.",
          "descriptions": {
            "ro": "Zona geografică la care se referă numărul din această celulă: un cod NUTS la nivel de țară (\"RO\"), macroregiune (\"RO1\"), regiune de dezvoltare (\"RO11\") sau județ (\"RO111\"), ori agregatul UE (\"EU27_2020\"). Se leagă de geographies.geo_code pentru denumire și nivel. Nivelurile apar împreună și sunt cuprinse unele în altele. Dacă însumați toate valorile din geo, aceleași persoane, gospodării, familii sau locuințe vor fi numărate de mai multe ori. Alegeți un singur nivel.",
            "en": "The geography this cell counts: a NUTS code at country (\"RO\"), major-region (\"RO1\"), basic-region (\"RO11\") or small-region (\"RO111\") level, or the EU aggregate (\"EU27_2020\"). Joins to geographies.geo_code for the name and the level. Levels sit side by side and nest, so summing across geo double-counts — pick one level."
          },
          "min": "AT",
          "max": "UKZZZ",
          "distinctApprox": 2108
        },
        {
          "name": "series_key",
          "type": "VARCHAR",
          "nullable": false,
          "description": "Identifies what is being counted, inside this hypercube: the category codes of every dimension except geo and time, joined with \".\" in the cube's own dimension order — e.g. \"A.WID_DTHREP.Y65-84.F.NR\" is annual, widowed, aged 65–84, female, a headcount. Decode it by joining series, or read the individual codes from categories.",
          "descriptions": {
            "ro": "Arată ce se numără în interiorul acestui hipercub. Conține codurile de categorie ale tuturor dimensiunilor, mai puțin geo și time, unite prin \".\" în ordinea dimensiunilor din cub. De exemplu, \"A.WID_DTHREP.Y65-84.F.NR\" înseamnă anual, persoane văduve, între 65 și 84 de ani, femei și număr de persoane. Îl puteți interpreta prin legarea tabelului series sau citind codurile separate din categories.",
            "en": "Identifies what is being counted, inside this hypercube: the category codes of every dimension except geo and time, joined with \".\" in the cube's own dimension order — e.g. \"A.WID_DTHREP.Y65-84.F.NR\" is annual, widowed, aged 65–84, female, a headcount. Decode it by joining series, or read the individual codes from categories."
          },
          "min": "A.0.NR",
          "max": "A.ZW.Y_LT5.T.PER",
          "distinctApprox": 288497
        },
        {
          "name": "value",
          "type": "DOUBLE",
          "nullable": true,
          "description": "The census figure, in the unit named by series.unit_label — a count of persons in almost every cube, of dwellings or households in the housing ones. Counts are whole numbers. NULL where Eurostat publishes the cell with a flag but no figure, which for census data usually means confidentiality protection on a small population.",
          "descriptions": {
            "ro": "Valoarea de recensământ, exprimată în unitatea indicată de series.unit_label. În aproape toate cuburile este un număr de persoane, iar în cuburile despre locuire poate fi un număr de locuințe sau de gospodării. Aceste numere sunt întregi. Valoarea este NULL când Eurostat publică celula cu un indicator, dar fără cifră. Pentru datele de recensământ, aceasta înseamnă de obicei că un grup restrâns este protejat din motive de confidențialitate.",
            "en": "The census figure, in the unit named by series.unit_label — a count of persons in almost every cube, of dwellings or households in the housing ones. Counts are whole numbers. NULL where Eurostat publishes the cell with a flag but no figure, which for census data usually means confidentiality protection on a small population."
          }
        },
        {
          "name": "status",
          "type": "VARCHAR",
          "nullable": true,
          "description": "Eurostat observation flag on this cell: \"c\" confidential, \"e\" estimated, \"p\" provisional, \"d\" definition differs, \"u\" low reliability, \"b\" break in series; flags can combine. NULL means a definitive, unflagged figure — which most census cells are. Census counts are commonly rounded or perturbed by the national institute for disclosure control, so small figures should be read as approximate even unflagged.",
          "descriptions": {
            "ro": "Indicatorul pus de Eurostat pe această celulă: \"c\" înseamnă confidențial, \"e\" estimat, \"p\" provizoriu, \"d\" definiție diferită, \"u\" fiabilitate scăzută, iar \"b\" întrerupere în serie. Indicatorii se pot combina. NULL înseamnă o valoare definitivă, fără indicator, așa cum sunt majoritatea celulelor de recensământ. Institutele naționale de statistică rotunjesc sau modifică adesea valorile pentru a proteja informațiile confidențiale. De aceea, valorile mici trebuie considerate aproximative chiar și atunci când nu au indicator.",
            "en": "Eurostat observation flag on this cell: \"c\" confidential, \"e\" estimated, \"p\" provisional, \"d\" definition differs, \"u\" low reliability, \"b\" break in series; flags can combine. NULL means a definitive, unflagged figure — which most census cells are. Census counts are commonly rounded or perturbed by the national institute for disclosure control, so small figures should be read as approximate even unflagged."
          }
        }
      ],
      "files": [
        {
          "url": "https://data-directory.fsn1.your-objectstorage.com/public/eu-census-hub/v/01M1SPDT9JMYTQ7A589DTKSQC1/observations/census_year=1981/data_0.parquet",
          "sizeBytes": 5037,
          "rowCount": 759,
          "etag": "\"b91c5335f0763655c1445f87f28ec6ef\"",
          "stats": {
            "hypercube_code": {
              "min": "cens_01naagchi",
              "max": "cens_hnmga"
            },
            "country_code": {
              "min": "AT",
              "max": "UK"
            },
            "geo": {
              "min": "AT",
              "max": "UKZZZ"
            },
            "series_key": {
              "min": "A.0.NR",
              "max": "A.ZW.Y_LT5.T.PER"
            }
          }
        },
        {
          "url": "https://data-directory.fsn1.your-objectstorage.com/public/eu-census-hub/v/01M1SPDT9JMYTQ7A589DTKSQC1/observations/census_year=1991/data_0.parquet",
          "sizeBytes": 629686,
          "rowCount": 170490,
          "etag": "\"9d474015c5e85ea0239108e4f4ddcb19\"",
          "stats": {
            "hypercube_code": {
              "min": "cens_01naagchi",
              "max": "cens_hnmga"
            },
            "country_code": {
              "min": "AT",
              "max": "UK"
            },
            "geo": {
              "min": "AT",
              "max": "UKZZZ"
            },
            "series_key": {
              "min": "A.0.NR",
              "max": "A.ZW.Y_LT5.T.PER"
            }
          }
        },
        {
          "url": "https://data-directory.fsn1.your-objectstorage.com/public/eu-census-hub/v/01M1SPDT9JMYTQ7A589DTKSQC1/observations/census_year=2001/data_0.parquet",
          "sizeBytes": 14335960,
          "rowCount": 5549033,
          "etag": "\"6ee42405dd8aae9d9618404d89dbeb42\"",
          "stats": {
            "hypercube_code": {
              "min": "cens_01naagchi",
              "max": "cens_hnmga"
            },
            "country_code": {
              "min": "AT",
              "max": "UK"
            },
            "geo": {
              "min": "AT",
              "max": "UKZZZ"
            },
            "series_key": {
              "min": "A.0.NR",
              "max": "A.ZW.Y_LT5.T.PER"
            }
          }
        },
        {
          "url": "https://data-directory.fsn1.your-objectstorage.com/public/eu-census-hub/v/01M1SPDT9JMYTQ7A589DTKSQC1/observations/census_year=2011/data_0.parquet",
          "sizeBytes": 43270783,
          "rowCount": 23025159,
          "etag": "\"b283f3feafc49c6b0834fa16d9442fae\"",
          "stats": {
            "hypercube_code": {
              "min": "cens_01naagchi",
              "max": "cens_hnmga"
            },
            "country_code": {
              "min": "AT",
              "max": "UK"
            },
            "geo": {
              "min": "AT",
              "max": "UKZZZ"
            },
            "series_key": {
              "min": "A.0.NR",
              "max": "A.ZW.Y_LT5.T.PER"
            }
          }
        },
        {
          "url": "https://data-directory.fsn1.your-objectstorage.com/public/eu-census-hub/v/01M1SPDT9JMYTQ7A589DTKSQC1/observations/census_year=2021/data_0.parquet",
          "sizeBytes": 222102069,
          "rowCount": 153686504,
          "etag": "\"92b85962d15a96a9181eb7f76f564d4b-3\"",
          "stats": {
            "hypercube_code": {
              "min": "cens_01naagchi",
              "max": "cens_hnmga"
            },
            "country_code": {
              "min": "AT",
              "max": "UK"
            },
            "geo": {
              "min": "AT",
              "max": "UKZZZ"
            },
            "series_key": {
              "min": "A.0.NR",
              "max": "A.ZW.Y_LT5.T.PER"
            }
          }
        }
      ],
      "example": [
        {
          "hypercube_code": "cens_01naagchi",
          "census_year": 2001,
          "country_code": "AT",
          "geo": "AT",
          "series_key": "A.TOTAL.ACT.F1_CH.TOTAL.PER",
          "value": 190154,
          "status": null
        },
        {
          "hypercube_code": "cens_01naagchi",
          "census_year": 2001,
          "country_code": "AT",
          "geo": "AT",
          "series_key": "A.TOTAL.ACT.F1_CH.Y15-19.PER",
          "value": 1409,
          "status": null
        }
      ]
    },
    {
      "name": "series",
      "description": "One row per statistical series in a hypercube: what a cell of observations actually counts, with every classification code decoded into the English label Eurostat publishes for it. Geography-independent — the same series is counted in every region of the cube. Upserted, so labels follow the source's current wording while first/last_seen_date record when the series was present.",
      "descriptions": {
        "ro": "Câte un rând pentru fiecare serie statistică dintr-un hipercub. Tabelul explică ce numără o celulă din observations și redă fiecare cod de clasificare prin eticheta în engleză publicată de Eurostat. Seria nu depinde de geografie: aceeași serie este numărată în fiecare regiune a cubului. La încărcare, rândurile noi sunt adăugate, iar cele existente sunt actualizate. Astfel, etichetele urmează formularea curentă a sursei, iar first_seen_date și last_seen_date arată perioada în care seria a fost prezentă.",
        "en": "One row per statistical series in a hypercube: what a cell of observations actually counts, with every classification code decoded into the English label Eurostat publishes for it. Geography-independent — the same series is counted in every region of the cube. Upserted, so labels follow the source's current wording while first/last_seen_date record when the series was present."
      },
      "rowCount": 440680,
      "lastRunRows": 372569,
      "totalBytes": 5695447,
      "sortBy": [
        "hypercube_code",
        "series_key"
      ],
      "searchColumns": [
        "series_label"
      ],
      "primaryKey": [
        "hypercube_code",
        "series_key"
      ],
      "writeMode": "upsert",
      "storage": "lake",
      "columns": [
        {
          "name": "hypercube_code",
          "type": "VARCHAR",
          "nullable": false,
          "description": "The hypercube the series belongs to; joins to observations.hypercube_code and hypercubes.hypercube_code. Series keys are only unique within a hypercube.",
          "descriptions": {
            "ro": "Hipercubul din care face parte seria. Se leagă de observations.hypercube_code și hypercubes.hypercube_code. Valorile series_key sunt unice numai în interiorul unui hipercub.",
            "en": "The hypercube the series belongs to; joins to observations.hypercube_code and hypercubes.hypercube_code. Series keys are only unique within a hypercube."
          },
          "min": "cens_01naagchi",
          "max": "cens_hnmga",
          "distinctApprox": 147
        },
        {
          "name": "series_key",
          "type": "VARCHAR",
          "nullable": false,
          "description": "The series identifier exactly as it appears on observations.series_key: non-geo, non-time category codes joined with \".\" in the cube's dimension order.",
          "descriptions": {
            "ro": "Identificatorul seriei, exact așa cum apare în observations.series_key: codurile de categorie, mai puțin cele pentru geo și time, unite prin \".\" în ordinea dimensiunilor din cub.",
            "en": "The series identifier exactly as it appears on observations.series_key: non-geo, non-time category codes joined with \".\" in the cube's dimension order."
          },
          "min": "A.0.NR",
          "max": "A.ZW.Y_LT5.T.PER",
          "distinctApprox": 288497
        },
        {
          "name": "series_label",
          "type": "VARCHAR",
          "nullable": false,
          "description": "What the series counts, in English: the labels of its classification categories joined with \" · \" in dimension order — e.g. \"Annual · Widowed persons and persons whose registered partnership ended with the death of the partner · From 65 to 84 years · Females · Number\". What a chart legend or a table header should show.",
          "descriptions": {
            "ro": "Descrierea în engleză a ceea ce numără seria. Etichetele categoriilor de clasificare sunt unite prin \" · \", în ordinea dimensiunilor. De exemplu: \"Annual · Widowed persons and persons whose registered partnership ended with the death of the partner · From 65 to 84 years · Females · Number\". Acesta este textul care trebuie afișat în legenda unui grafic sau în antetul unui tabel.",
            "en": "What the series counts, in English: the labels of its classification categories joined with \" · \" in dimension order — e.g. \"Annual · Widowed persons and persons whose registered partnership ended with the death of the partner · From 65 to 84 years · Females · Number\". What a chart legend or a table header should show."
          }
        },
        {
          "name": "series_label_lc",
          "type": "VARCHAR",
          "nullable": false,
          "description": "series_label lowercased and accent-folded, for case- and accent-insensitive search. Query this, not lower(series_label) — a function on a column cannot use parquet statistics.",
          "descriptions": {
            "ro": "series_label transformat în litere mici și fără diacritice, pentru căutări care nu țin cont de majuscule sau de diacritice. Căutați în această coloană, nu în lower(series_label). O funcție aplicată unei coloane nu poate folosi statisticile Parquet.",
            "en": "series_label lowercased and accent-folded, for case- and accent-insensitive search. Query this, not lower(series_label) — a function on a column cannot use parquet statistics."
          }
        },
        {
          "name": "unit_code",
          "type": "VARCHAR",
          "nullable": true,
          "description": "Category code of the cube's unit dimension for this series — \"NR\" (a plain count) in nearly every census cube. NULL when the cube declares no unit dimension.",
          "descriptions": {
            "ro": "Codul de categorie din dimensiunea unității de măsură a cubului pentru această serie. În aproape toate cuburile de recensământ este \"NR\", adică un număr simplu. Valoarea este NULL când cubul nu are o dimensiune pentru unitatea de măsură.",
            "en": "Category code of the cube's unit dimension for this series — \"NR\" (a plain count) in nearly every census cube. NULL when the cube declares no unit dimension."
          }
        },
        {
          "name": "unit_label",
          "type": "VARCHAR",
          "nullable": true,
          "description": "English label of unit_code, e.g. \"Number\".",
          "descriptions": {
            "ro": "Eticheta în engleză pentru unit_code, de exemplu \"Number\".",
            "en": "English label of unit_code, e.g. \"Number\"."
          }
        },
        {
          "name": "dimension_codes",
          "type": "JSON",
          "nullable": false,
          "description": "The full coordinate of the series as {dimension id: category code}, excluding geo and time — e.g. {\"freq\":\"A\",\"marsta\":\"WID_DTHREP\",\"age\":\"Y65-84\",\"sex\":\"F\",\"unit\":\"NR\"}. The machine-readable form of series_key; the dimension ids are described in the dimensions table.",
          "descriptions": {
            "ro": "Coordonata completă a seriei, sub forma {identificator dimensiune: cod categorie}, fără geo și time. De exemplu: {\"freq\":\"A\",\"marsta\":\"WID_DTHREP\",\"age\":\"Y65-84\",\"sex\":\"F\",\"unit\":\"NR\"}. Este forma structurată a lui series_key, care poate fi citită de software. Identificatorii dimensiunilor sunt explicați în tabelul dimensions.",
            "en": "The full coordinate of the series as {dimension id: category code}, excluding geo and time — e.g. {\"freq\":\"A\",\"marsta\":\"WID_DTHREP\",\"age\":\"Y65-84\",\"sex\":\"F\",\"unit\":\"NR\"}. The machine-readable form of series_key; the dimension ids are described in the dimensions table."
          }
        },
        {
          "name": "dimension_labels",
          "type": "JSON",
          "nullable": false,
          "description": "English label for each coordinate, keyed by dimension id — the same keys as dimension_codes, so a row can be rendered without any further joins.",
          "descriptions": {
            "ro": "Eticheta în engleză pentru fiecare coordonată, organizată după identificatorul dimensiunii. Cheile sunt aceleași ca în dimension_codes, astfel încât rândul poate fi afișat fără alte legături între tabele.",
            "en": "English label for each coordinate, keyed by dimension id — the same keys as dimension_codes, so a row can be rendered without any further joins."
          }
        },
        {
          "name": "first_seen_date",
          "type": "DATE",
          "nullable": false,
          "description": "The first run day (UTC) on which this series appeared in the hypercube. Maintained automatically by the upsert loader — never overwritten, only widened.",
          "descriptions": {
            "ro": "Prima zi de rulare, în UTC, în care această serie a apărut în hipercub. Data este gestionată automat la încărcare. Nu este înlocuită cu o dată mai recentă; perioada înregistrată se poate doar extinde.",
            "en": "The first run day (UTC) on which this series appeared in the hypercube. Maintained automatically by the upsert loader — never overwritten, only widened."
          }
        },
        {
          "name": "last_seen_date",
          "type": "DATE",
          "nullable": false,
          "description": "The most recent run day (UTC) on which the hypercube still carried this series.",
          "descriptions": {
            "ro": "Cea mai recentă zi de rulare, în UTC, în care hipercubul încă avea această serie.",
            "en": "The most recent run day (UTC) on which the hypercube still carried this series."
          }
        }
      ],
      "files": [
        {
          "url": "https://data-directory.fsn1.your-objectstorage.com/public/eu-census-hub/v/01M1SPDT9JMYTQ7A589DTKSQC1/series.parquet",
          "sizeBytes": 5695447,
          "rowCount": 440680,
          "etag": "\"6ef3566bf270839933b5dcb541ae5285\"",
          "stats": {
            "hypercube_code": {
              "min": "cens_01naagchi",
              "max": "cens_hnmga"
            },
            "series_key": {
              "min": "A.0.NR",
              "max": "A.ZW.Y_LT5.T.PER"
            }
          }
        }
      ],
      "example": [
        {
          "hypercube_code": "cens_01naagchi",
          "series_key": "A.TOTAL.ACT.F1_CH.TOTAL.PER",
          "series_label": "Annual · Total · Persons in the labour force · Lone mother living with at least one child · Total · Person",
          "series_label_lc": "annual · total · persons in the labour force · lone mother living with at least one child · total · person",
          "unit_code": "PER",
          "unit_label": "Person",
          "dimension_codes": "{\"freq\":\"A\",\"agechild\":\"TOTAL\",\"wstatus\":\"ACT\",\"hhcomp\":\"F1_CH\",\"age\":\"TOTAL\",\"unit\":\"PER\"}",
          "dimension_labels": "{\"freq\":\"Annual\",\"agechild\":\"Total\",\"wstatus\":\"Persons in the labour force\",\"hhcomp\":\"Lone mother living with at least one child\",\"age\":\"Total\",\"unit\":\"Person\"}",
          "first_seen_date": "2026-08-26T00:00:00.000Z",
          "last_seen_date": "2026-09-05T00:00:00.000Z"
        },
        {
          "hypercube_code": "cens_01naagchi",
          "series_key": "A.TOTAL.ACT.F1_CH.UNK.PER",
          "series_label": "Annual · Total · Persons in the labour force · Lone mother living with at least one child · Unknown · Person",
          "series_label_lc": "annual · total · persons in the labour force · lone mother living with at least one child · unknown · person",
          "unit_code": "PER",
          "unit_label": "Person",
          "dimension_codes": "{\"freq\":\"A\",\"agechild\":\"TOTAL\",\"wstatus\":\"ACT\",\"hhcomp\":\"F1_CH\",\"age\":\"UNK\",\"unit\":\"PER\"}",
          "dimension_labels": "{\"freq\":\"Annual\",\"agechild\":\"Total\",\"wstatus\":\"Persons in the labour force\",\"hhcomp\":\"Lone mother living with at least one child\",\"age\":\"Unknown\",\"unit\":\"Person\"}",
          "first_seen_date": "2026-08-26T00:00:00.000Z",
          "last_seen_date": "2026-09-05T00:00:00.000Z"
        }
      ]
    },
    {
      "name": "categories",
      "description": "The census nomenclature: one row per category of every dimension of every loaded hypercube, with the code, its English label and its position on the axis. This is the table that answers \"what age bands does this cube use\", \"what does UNK mean here\" and \"which cubes cover NUTS 3 regions of Romania\" — Eurostat reuses codelists across cubes but each cube carries only the subset it needs, so coverage is per hypercube and not global. Upserted.",
      "descriptions": {
        "ro": "Nomenclatura recensământului: câte un rând pentru fiecare categorie din fiecare dimensiune a fiecărui hipercub încărcat, cu codul, eticheta în engleză și poziția pe axă. Tabelul răspunde la întrebări precum „Ce grupe de vârstă folosește acest cub?”, „Ce înseamnă UNK aici?” și „Ce cuburi includ regiunile NUTS 3 din România?”. Eurostat folosește aceleași liste de coduri în mai multe cuburi, dar fiecare cub conține numai categoriile de care are nevoie. Prin urmare, acoperirea este stabilită pentru fiecare hipercub, nu pentru întregul set. La încărcare, rândurile noi sunt adăugate, iar cele existente sunt actualizate.",
        "en": "The census nomenclature: one row per category of every dimension of every loaded hypercube, with the code, its English label and its position on the axis. This is the table that answers \"what age bands does this cube use\", \"what does UNK mean here\" and \"which cubes cover NUTS 3 regions of Romania\" — Eurostat reuses codelists across cubes but each cube carries only the subset it needs, so coverage is per hypercube and not global. Upserted."
      },
      "rowCount": 79503,
      "lastRunRows": 79099,
      "totalBytes": 121264,
      "sortBy": [
        "hypercube_code",
        "dimension_id",
        "position"
      ],
      "searchColumns": [
        "category_label"
      ],
      "primaryKey": [
        "hypercube_code",
        "dimension_id",
        "category_code"
      ],
      "writeMode": "upsert",
      "storage": "lake",
      "columns": [
        {
          "name": "hypercube_code",
          "type": "VARCHAR",
          "nullable": false,
          "description": "The hypercube whose dimension carries this category.",
          "descriptions": {
            "ro": "Hipercubul care are această categorie într-una dintre dimensiunile sale.",
            "en": "The hypercube whose dimension carries this category."
          },
          "min": "cens_01naagchi",
          "max": "cens_hnmga",
          "distinctApprox": 147
        },
        {
          "name": "dimension_id",
          "type": "VARCHAR",
          "nullable": false,
          "description": "The dimension the category belongs to, as the source names it — \"marsta\", \"age\", \"sex\", \"geo\", \"unit\", \"freq\". Joins to dimensions.dimension_id.",
          "descriptions": {
            "ro": "Dimensiunea din care face parte categoria, cu numele folosit de sursă: \"marsta\", \"age\", \"sex\", \"geo\", \"unit\" sau \"freq\". Se leagă de dimensions.dimension_id.",
            "en": "The dimension the category belongs to, as the source names it — \"marsta\", \"age\", \"sex\", \"geo\", \"unit\", \"freq\". Joins to dimensions.dimension_id."
          },
          "min": "TIME_PERIOD",
          "max": "y_const",
          "distinctApprox": 35
        },
        {
          "name": "category_code",
          "type": "VARCHAR",
          "nullable": false,
          "description": "The category code as published, e.g. \"WID_DTHREP\", \"Y65-84\", \"F\", \"RO111\". This is the literal string that appears inside observations.series_key and observations.geo.",
          "descriptions": {
            "ro": "Codul categoriei exact așa cum a fost publicat, de exemplu \"WID_DTHREP\", \"Y65-84\", \"F\" sau \"RO111\". Este șirul care apare în observations.series_key și observations.geo.",
            "en": "The category code as published, e.g. \"WID_DTHREP\", \"Y65-84\", \"F\", \"RO111\". This is the literal string that appears inside observations.series_key and observations.geo."
          },
          "distinctApprox": 3270
        },
        {
          "name": "category_label",
          "type": "VARCHAR",
          "nullable": true,
          "description": "Eurostat's English label for the code — the census definition in words. NULL only when the source published the code with no label.",
          "descriptions": {
            "ro": "Eticheta în engleză atribuită codului de Eurostat, adică definiția de recensământ scrisă în cuvinte. Valoarea este NULL numai dacă sursa a publicat codul fără etichetă.",
            "en": "Eurostat's English label for the code — the census definition in words. NULL only when the source published the code with no label."
          }
        },
        {
          "name": "category_label_lc",
          "type": "VARCHAR",
          "nullable": true,
          "description": "category_label lowercased and accent-folded, for case- and accent-insensitive search. Query this, not lower(category_label).",
          "descriptions": {
            "ro": "category_label transformat în litere mici și fără diacritice, pentru căutări care nu țin cont de majuscule sau de diacritice. Căutați în această coloană, nu în lower(category_label).",
            "en": "category_label lowercased and accent-folded, for case- and accent-insensitive search. Query this, not lower(category_label)."
          }
        },
        {
          "name": "position",
          "type": "INTEGER",
          "nullable": false,
          "description": "Zero-based position of the category along its axis, in the order the source lists it. Census classifications are published in a meaningful order (age bands ascending, \"Total\" first) that alphabetising the codes would destroy — sort on this to present them the way the statistical office does.",
          "descriptions": {
            "ro": "Poziția categoriei pe axă, numerotată de la zero, în ordinea folosită de sursă. Clasificările de recensământ au o ordine cu sens, de exemplu grupele de vârstă în ordine crescătoare și \"Total\" primul. Sortarea alfabetică a codurilor ar pierde această ordine. Sortați după această coloană pentru a afișa categoriile așa cum le prezintă institutul de statistică.",
            "en": "Zero-based position of the category along its axis, in the order the source lists it. Census classifications are published in a meaningful order (age bands ascending, \"Total\" first) that alphabetising the codes would destroy — sort on this to present them the way the statistical office does."
          },
          "min": 0,
          "max": 1884
        },
        {
          "name": "first_seen_date",
          "type": "DATE",
          "nullable": false,
          "description": "The first run day (UTC) on which this category appeared on this dimension. Maintained automatically by the upsert loader.",
          "descriptions": {
            "ro": "Prima zi de rulare, în UTC, în care această categorie a apărut în dimensiunea respectivă. Data este gestionată automat la încărcare.",
            "en": "The first run day (UTC) on which this category appeared on this dimension. Maintained automatically by the upsert loader."
          }
        },
        {
          "name": "last_seen_date",
          "type": "DATE",
          "nullable": false,
          "description": "The most recent run day (UTC) on which the dimension still carried this category.",
          "descriptions": {
            "ro": "Cea mai recentă zi de rulare, în UTC, în care dimensiunea încă avea această categorie.",
            "en": "The most recent run day (UTC) on which the dimension still carried this category."
          }
        }
      ],
      "files": [
        {
          "url": "https://data-directory.fsn1.your-objectstorage.com/public/eu-census-hub/v/01M1SPDT9JMYTQ7A589DTKSQC1/categories.parquet",
          "sizeBytes": 121264,
          "rowCount": 79503,
          "etag": "\"dd459565232464cd7e126fff665f3772\"",
          "stats": {
            "hypercube_code": {
              "min": "cens_01naagchi",
              "max": "cens_hnmga"
            },
            "dimension_id": {
              "min": "TIME_PERIOD",
              "max": "y_const"
            },
            "position": {
              "min": 0,
              "max": 1884
            }
          }
        }
      ],
      "example": [
        {
          "hypercube_code": "cens_01naagchi",
          "dimension_id": "TIME_PERIOD",
          "category_code": "2001",
          "category_label": null,
          "category_label_lc": null,
          "position": 0,
          "first_seen_date": "2026-08-26T00:00:00.000Z",
          "last_seen_date": "2026-09-05T00:00:00.000Z"
        },
        {
          "hypercube_code": "cens_01naagchi",
          "dimension_id": "age",
          "category_code": "TOTAL",
          "category_label": "Total",
          "category_label_lc": "total",
          "position": 0,
          "first_seen_date": "2026-08-26T00:00:00.000Z",
          "last_seen_date": "2026-09-05T00:00:00.000Z"
        }
      ]
    },
    {
      "name": "dimensions",
      "description": "The axes of each loaded hypercube, in the source's own order: what a cube is broken down by, what each breakdown is called in English, and how many categories it has. Read this before querying a cube you have not seen — the dimension order here is the order the codes appear in observations.series_key. Upserted.",
      "descriptions": {
        "ro": "Axele fiecărui hipercub încărcat, în ordinea folosită de sursă. Tabelul arată după ce criterii sunt defalcate datele dintr-un cub, cum se numește fiecare criteriu în engleză și câte categorii are. Citiți acest tabel înainte să interogați un cub pe care nu îl cunoașteți. Dimensiunile apar aici în aceeași ordine în care codurile lor apar în observations.series_key. La încărcare, rândurile noi sunt adăugate, iar cele existente sunt actualizate.",
        "en": "The axes of each loaded hypercube, in the source's own order: what a cube is broken down by, what each breakdown is called in English, and how many categories it has. Read this before querying a cube you have not seen — the dimension order here is the order the codes appear in observations.series_key. Upserted."
      },
      "rowCount": 989,
      "lastRunRows": 977,
      "totalBytes": 6223,
      "sortBy": [
        "hypercube_code",
        "position"
      ],
      "searchColumns": [],
      "primaryKey": [
        "hypercube_code",
        "dimension_id"
      ],
      "writeMode": "upsert",
      "storage": "lake",
      "columns": [
        {
          "name": "hypercube_code",
          "type": "VARCHAR",
          "nullable": false,
          "description": "The hypercube this axis belongs to.",
          "descriptions": {
            "ro": "Hipercubul din care face parte această axă.",
            "en": "The hypercube this axis belongs to."
          },
          "min": "cens_01naagchi",
          "max": "cens_hnmga",
          "distinctApprox": 147
        },
        {
          "name": "dimension_id",
          "type": "VARCHAR",
          "nullable": false,
          "description": "The dimension id as the source names it: \"geo\", \"time\", \"marsta\", \"age\", \"sex\", \"unit\", \"freq\". Joins to categories.dimension_id and keys series.dimension_codes.",
          "descriptions": {
            "ro": "Identificatorul dimensiunii, cu numele folosit de sursă: \"geo\", \"time\", \"marsta\", \"age\", \"sex\", \"unit\" sau \"freq\". Se leagă de categories.dimension_id și este folosit drept cheie în series.dimension_codes.",
            "en": "The dimension id as the source names it: \"geo\", \"time\", \"marsta\", \"age\", \"sex\", \"unit\", \"freq\". Joins to categories.dimension_id and keys series.dimension_codes."
          },
          "distinctApprox": 35
        },
        {
          "name": "dimension_label",
          "type": "VARCHAR",
          "nullable": true,
          "description": "Eurostat's English name for the axis, e.g. \"Age class\", \"Marital status\", \"Geopolitical entity (reporting)\". NULL when the source published none.",
          "descriptions": {
            "ro": "Numele în engleză dat axei de Eurostat, de exemplu \"Age class\", \"Marital status\" sau \"Geopolitical entity (reporting)\". Valoarea este NULL când sursa nu a publicat niciun nume.",
            "en": "Eurostat's English name for the axis, e.g. \"Age class\", \"Marital status\", \"Geopolitical entity (reporting)\". NULL when the source published none."
          }
        },
        {
          "name": "position",
          "type": "INTEGER",
          "nullable": false,
          "description": "Zero-based position of the dimension in the cube, which is also its position in observations.series_key once geo and time are removed.",
          "descriptions": {
            "ro": "Poziția dimensiunii în cub, numerotată de la zero. După eliminarea dimensiunilor geo și time, aceasta este și poziția dimensiunii în observations.series_key.",
            "en": "Zero-based position of the dimension in the cube, which is also its position in observations.series_key once geo and time are removed."
          },
          "min": 0,
          "max": 7
        },
        {
          "name": "role",
          "type": "VARCHAR",
          "nullable": false,
          "description": "What the axis is for: \"classification\" (a census breakdown — the interesting ones), \"geo\" (the geography), \"time\" (the census round), \"unit\" (the unit of measure) or \"frequency\" (Eurostat plumbing, always annual for a census).",
          "descriptions": {
            "ro": "Rolul axei: \"classification\" pentru un criteriu de defalcare a recensământului, adică o defalcare de interes, \"geo\" pentru geografie, \"time\" pentru runda de recensământ, \"unit\" pentru unitatea de măsură sau \"frequency\" pentru un detaliu tehnic intern al Eurostat, care este întotdeauna anual în cazul unui recensământ.",
            "en": "What the axis is for: \"classification\" (a census breakdown — the interesting ones), \"geo\" (the geography), \"time\" (the census round), \"unit\" (the unit of measure) or \"frequency\" (Eurostat plumbing, always annual for a census)."
          }
        },
        {
          "name": "category_count",
          "type": "INTEGER",
          "nullable": true,
          "description": "Number of categories this cube carries on the axis.",
          "descriptions": {
            "ro": "Numărul de categorii aflate pe această axă a cubului.",
            "en": "Number of categories this cube carries on the axis."
          },
          "unit": "categories"
        },
        {
          "name": "in_series_key",
          "type": "BOOLEAN",
          "nullable": false,
          "description": "True when this dimension contributes a code to observations.series_key — every axis except geo and time.",
          "descriptions": {
            "ro": "Valoarea este true dacă dimensiunea adaugă un cod în observations.series_key. Acest lucru este valabil pentru toate axele, mai puțin geo și time.",
            "en": "True when this dimension contributes a code to observations.series_key — every axis except geo and time."
          }
        },
        {
          "name": "first_seen_date",
          "type": "DATE",
          "nullable": false,
          "description": "The first run day (UTC) on which the hypercube carried this dimension. Maintained automatically by the upsert loader.",
          "descriptions": {
            "ro": "Prima zi de rulare, în UTC, în care hipercubul a avut această dimensiune. Data este gestionată automat la încărcare.",
            "en": "The first run day (UTC) on which the hypercube carried this dimension. Maintained automatically by the upsert loader."
          }
        },
        {
          "name": "last_seen_date",
          "type": "DATE",
          "nullable": false,
          "description": "The most recent run day (UTC) on which the hypercube still carried this dimension.",
          "descriptions": {
            "ro": "Cea mai recentă zi de rulare, în UTC, în care hipercubul încă avea această dimensiune.",
            "en": "The most recent run day (UTC) on which the hypercube still carried this dimension."
          }
        }
      ],
      "files": [
        {
          "url": "https://data-directory.fsn1.your-objectstorage.com/public/eu-census-hub/v/01M1SPDT9JMYTQ7A589DTKSQC1/dimensions.parquet",
          "sizeBytes": 6223,
          "rowCount": 989,
          "etag": "\"6245747e34f476ebb78ffd5087434f2e\"",
          "stats": {
            "hypercube_code": {
              "min": "cens_01naagchi",
              "max": "cens_hnmga"
            },
            "position": {
              "min": 0,
              "max": 7
            }
          }
        }
      ],
      "example": [
        {
          "hypercube_code": "cens_01naagchi",
          "dimension_id": "freq",
          "dimension_label": "Time frequency",
          "position": 0,
          "role": "frequency",
          "category_count": 1,
          "in_series_key": true,
          "first_seen_date": "2026-08-26T00:00:00.000Z",
          "last_seen_date": "2026-09-05T00:00:00.000Z"
        },
        {
          "hypercube_code": "cens_01naagchi",
          "dimension_id": "agechild",
          "dimension_label": "Age of the child",
          "position": 1,
          "role": "classification",
          "category_count": 13,
          "in_series_key": true,
          "first_seen_date": "2026-08-26T00:00:00.000Z",
          "last_seen_date": "2026-09-05T00:00:00.000Z"
        }
      ]
    },
    {
      "name": "geographies",
      "description": "The geography codelist behind observations.geo: every NUTS region and country the loaded census cubes report, with its English name, its country and its NUTS level. The four levels nest — RO contains RO1 contains RO11 contains RO111 — so a query that does not pin nuts_level will count the same people up to four times. Upserted.",
      "descriptions": {
        "ro": "Lista codurilor geografice folosite în observations.geo. Cuprinde fiecare regiune NUTS și fiecare țară raportată de cuburile de recensământ încărcate, împreună cu numele în engleză, țara și nivelul NUTS. Cele patru niveluri sunt cuprinse unele în altele: RO conține RO1, RO1 conține RO11, iar RO11 conține RO111. O interogare care nu fixează nuts_level poate număra aceleași persoane de până la patru ori. La încărcare, rândurile noi sunt adăugate, iar cele existente sunt actualizate.",
        "en": "The geography codelist behind observations.geo: every NUTS region and country the loaded census cubes report, with its English name, its country and its NUTS level. The four levels nest — RO contains RO1 contains RO11 contains RO111 — so a query that does not pin nuts_level will count the same people up to four times. Upserted."
      },
      "rowCount": 2602,
      "lastRunRows": 93,
      "totalBytes": 41822,
      "sortBy": [
        "country_code",
        "nuts_level",
        "geo_code"
      ],
      "searchColumns": [
        "geo_label"
      ],
      "primaryKey": [
        "geo_code"
      ],
      "writeMode": "upsert",
      "storage": "lake",
      "columns": [
        {
          "name": "geo_code",
          "type": "VARCHAR",
          "nullable": false,
          "description": "The code as published, matching observations.geo: \"RO\", \"RO1\", \"RO11\", \"RO111\", \"EU27_2020\".",
          "descriptions": {
            "ro": "Codul exact așa cum este publicat și cum apare în observations.geo: \"RO\", \"RO1\", \"RO11\", \"RO111\" sau \"EU27_2020\".",
            "en": "The code as published, matching observations.geo: \"RO\", \"RO1\", \"RO11\", \"RO111\", \"EU27_2020\"."
          },
          "min": "AT",
          "max": "UKZZZ",
          "distinctApprox": 2108
        },
        {
          "name": "geo_label",
          "type": "VARCHAR",
          "nullable": false,
          "description": "English name of the region as Eurostat publishes it: \"Romania\", \"Bihor\", \"Bistriţa-Năsăud\", \"European Union - 27 countries (from 2020)\".",
          "descriptions": {
            "ro": "Numele în engleză al regiunii, așa cum îl publică Eurostat: \"Romania\", \"Bihor\", \"Bistrița-Năsăud\" sau \"European Union - 27 countries (from 2020)\".",
            "en": "English name of the region as Eurostat publishes it: \"Romania\", \"Bihor\", \"Bistriţa-Năsăud\", \"European Union - 27 countries (from 2020)\"."
          }
        },
        {
          "name": "geo_label_lc",
          "type": "VARCHAR",
          "nullable": false,
          "description": "geo_label lowercased and accent-folded, for case- and accent-insensitive search — the only way to find \"Bistrita-Nasaud\" typed without diacritics. Query this, not lower(geo_label).",
          "descriptions": {
            "ro": "geo_label transformat în litere mici și fără diacritice, pentru căutări care nu țin cont de majuscule sau de diacritice. Numai astfel poate fi găsit \"Bistrita-Nasaud\" scris fără diacritice. Căutați în această coloană, nu în lower(geo_label).",
            "en": "geo_label lowercased and accent-folded, for case- and accent-insensitive search — the only way to find \"Bistrita-Nasaud\" typed without diacritics. Query this, not lower(geo_label)."
          }
        },
        {
          "name": "country_code",
          "type": "VARCHAR",
          "nullable": false,
          "description": "The country this geography belongs to, matching observations.country_code: the first two letters of a NUTS code, or the whole code for a supranational aggregate.",
          "descriptions": {
            "ro": "Țara din care face parte zona geografică, la fel ca în observations.country_code: primele două litere ale codului NUTS sau codul complet pentru un agregat supranațional.",
            "en": "The country this geography belongs to, matching observations.country_code: the first two letters of a NUTS code, or the whole code for a supranational aggregate."
          },
          "min": "AT",
          "max": "UK"
        },
        {
          "name": "nuts_level",
          "type": "INTEGER",
          "nullable": true,
          "description": "NUTS level: 0 country, 1 major socio-economic region, 2 basic region for regional policy, 3 small region. NULL for a supranational aggregate such as EU27_2020. Pin this in any query that sums across regions.",
          "descriptions": {
            "ro": "Nivelul NUTS: 0 pentru țară, 1 pentru o regiune socioeconomică majoră, 2 pentru o regiune de bază folosită în politica regională și 3 pentru o regiune mică, adică un județ în România. Valoarea este NULL pentru un agregat supranațional precum EU27_2020. Fixați această coloană în orice interogare care însumează regiuni.",
            "en": "NUTS level: 0 country, 1 major socio-economic region, 2 basic region for regional policy, 3 small region. NULL for a supranational aggregate such as EU27_2020. Pin this in any query that sums across regions."
          },
          "min": 0,
          "max": 3
        },
        {
          "name": "is_aggregate",
          "type": "BOOLEAN",
          "nullable": false,
          "description": "True for a supranational aggregate (EU27_2020) rather than a reporting country or one of its regions. Exclude it before ranking countries against each other.",
          "descriptions": {
            "ro": "Valoarea este true pentru un agregat supranațional precum EU27_2020 și false pentru o țară raportoare sau una dintre regiunile sale. Excludeți agregatele înainte de a compara țările într-un clasament.",
            "en": "True for a supranational aggregate (EU27_2020) rather than a reporting country or one of its regions. Exclude it before ranking countries against each other."
          }
        },
        {
          "name": "first_seen_date",
          "type": "DATE",
          "nullable": false,
          "description": "The first run day (UTC) on which this geography appeared in any loaded cube. Maintained automatically by the upsert loader.",
          "descriptions": {
            "ro": "Prima zi de rulare, în UTC, în care această zonă geografică a apărut într-un cub încărcat. Data este gestionată automat la încărcare.",
            "en": "The first run day (UTC) on which this geography appeared in any loaded cube. Maintained automatically by the upsert loader."
          }
        },
        {
          "name": "last_seen_date",
          "type": "DATE",
          "nullable": false,
          "description": "The most recent run day (UTC) on which a loaded cube still carried this geography.",
          "descriptions": {
            "ro": "Cea mai recentă zi de rulare, în UTC, în care un cub încărcat încă avea această zonă geografică.",
            "en": "The most recent run day (UTC) on which a loaded cube still carried this geography."
          }
        }
      ],
      "files": [
        {
          "url": "https://data-directory.fsn1.your-objectstorage.com/public/eu-census-hub/v/01M1SPDT9JMYTQ7A589DTKSQC1/geographies.parquet",
          "sizeBytes": 41822,
          "rowCount": 2602,
          "etag": "\"b5105f8d7cb516ca62a5e6703570c27c\"",
          "stats": {
            "country_code": {
              "min": "AT",
              "max": "UK"
            },
            "nuts_level": {
              "min": 0,
              "max": 3
            },
            "geo_code": {
              "min": "AT",
              "max": "UKZZZ"
            }
          }
        }
      ],
      "example": [
        {
          "geo_code": "AT",
          "geo_label": "Austria",
          "geo_label_lc": "austria",
          "country_code": "AT",
          "nuts_level": 0,
          "is_aggregate": false,
          "first_seen_date": "2026-08-26T00:00:00.000Z",
          "last_seen_date": "2026-09-05T00:00:00.000Z"
        },
        {
          "geo_code": "AT1",
          "geo_label": "Ostösterreich",
          "geo_label_lc": "ostosterreich",
          "country_code": "AT",
          "nuts_level": 1,
          "is_aggregate": false,
          "first_seen_date": "2026-08-26T00:00:00.000Z",
          "last_seen_date": "2026-09-05T00:00:00.000Z"
        }
      ]
    },
    {
      "name": "hypercubes",
      "description": "The catalogue: one row for EVERY census hypercube Eurostat disseminates through the European Census Hub — all four rounds, whether or not this run loaded its observations — with the title and theme path the source publishes, the census year, how deep its geography goes, its full cell count, and the exact API URL that returns it. Identity only: whether a cube is actually loaded, and how much of it, is answered exactly by a GROUP BY over observations against this table's cell_count, never by a stored flag — see the migrations comment below for why. Upserted, so a newly published cube arrives with a fresh first_seen_date.",
      "descriptions": {
        "ro": "Catalogul: câte un rând pentru FIECARE hipercub de recensământ difuzat de Eurostat prin European Census Hub, din toate cele patru runde, indiferent dacă rularea curentă i-a încărcat observațiile. Pentru fiecare sunt prezentate titlul și calea tematică publicate de sursă, anul recensământului, cel mai detaliat nivel geografic, numărul total de celule și adresa API exactă de unde poate fi obținut. Doar identitate: dacă un cub este cu adevărat încărcat, și cât de mult din el, se răspunde exact printr-un GROUP BY peste observations comparat cu cell_count din acest tabel, niciodată printr-un indicator memorat — vezi comentariul de la migrations mai jos pentru motiv. La încărcare, rândurile noi sunt adăugate, iar cele existente sunt actualizate. Un cub publicat recent apare cu o nouă valoare first_seen_date.",
        "en": "The catalogue: one row for EVERY census hypercube Eurostat disseminates through the European Census Hub — all four rounds, whether or not this run loaded its observations — with the title and theme path the source publishes, the census year, how deep its geography goes, its full cell count, and the exact API URL that returns it. Identity only: whether a cube is actually loaded, and how much of it, is answered exactly by a GROUP BY over observations against this table's cell_count, never by a stored flag — see the migrations comment below for why. Upserted, so a newly published cube arrives with a fresh first_seen_date."
      },
      "rowCount": 143,
      "lastRunRows": 143,
      "totalBytes": 12413,
      "sortBy": [
        "census_round",
        "hypercube_code"
      ],
      "searchColumns": [
        "title"
      ],
      "primaryKey": [
        "hypercube_code"
      ],
      "writeMode": "upsert",
      "storage": "lake",
      "columns": [
        {
          "name": "hypercube_code",
          "type": "VARCHAR",
          "nullable": false,
          "description": "Eurostat's code for the hypercube, lowercase — the key that observations, series, categories and dimensions all join on.",
          "descriptions": {
            "ro": "Codul cu litere mici atribuit hipercubului de Eurostat. Este cheia prin care se leagă observations, series, categories și dimensions.",
            "en": "Eurostat's code for the hypercube, lowercase — the key that observations, series, categories and dimensions all join on."
          },
          "min": "cens_01naagchi",
          "max": "cens_hnmga",
          "distinctApprox": 147
        },
        {
          "name": "title",
          "type": "VARCHAR",
          "nullable": false,
          "description": "Eurostat's English title of the hypercube, e.g. \"Population by marital status, broad age groups and NUTS 3 region\". It names the cube's dimensions in order and is the first thing to read when choosing one.",
          "descriptions": {
            "ro": "Titlul în engleză dat hipercubului de Eurostat, de exemplu \"Population by marital status, broad age groups and NUTS 3 region\". Titlul enumeră dimensiunile cubului în ordine și este primul lucru pe care trebuie să îl citiți când alegeți un cub.",
            "en": "Eurostat's English title of the hypercube, e.g. \"Population by marital status, broad age groups and NUTS 3 region\". It names the cube's dimensions in order and is the first thing to read when choosing one."
          }
        },
        {
          "name": "title_lc",
          "type": "VARCHAR",
          "nullable": false,
          "description": "title lowercased and accent-folded, for case- and accent-insensitive search. Query this, not lower(title).",
          "descriptions": {
            "ro": "title transformat în litere mici și fără diacritice, pentru căutări care nu țin cont de majuscule sau de diacritice. Căutați în această coloană, nu în lower(title).",
            "en": "title lowercased and accent-folded, for case- and accent-insensitive search. Query this, not lower(title)."
          }
        },
        {
          "name": "census_round",
          "type": "INTEGER",
          "nullable": true,
          "description": "The census round the cube belongs to, from Eurostat's own code naming (cens_21… → 2021): 2021, 2011, 2001 or 1991. NULL for the few cross-round summary tables whose code carries no round. For the year the DATA is referenced to, use census_year.",
          "descriptions": {
            "ro": "Runda de recensământ din care face parte cubul, dedusă din codul dat de Eurostat (cens_21… → 2021): 2021, 2011, 2001 sau 1991. Valoarea este NULL pentru puținele tabele de sinteză între runde al căror cod nu indică o rundă. Pentru anul de referință al DATELOR, folosiți census_year.",
            "en": "The census round the cube belongs to, from Eurostat's own code naming (cens_21… → 2021): 2021, 2011, 2001 or 1991. NULL for the few cross-round summary tables whose code carries no round. For the year the DATA is referenced to, use census_year."
          },
          "min": 1991,
          "max": 2021
        },
        {
          "name": "census_year",
          "type": "INTEGER",
          "nullable": true,
          "description": "Reference year of the data: the cube's own time dimension when this run loaded it, else the catalogue's own reference year for the cube — the same value either way, so a narrower later run never regresses it. NULL only for a cube the catalogue gives no year for either.",
          "descriptions": {
            "ro": "Anul de referință al datelor: dimensiunea de timp proprie cubului, atunci când această rulare l-a încărcat, altfel anul de referință raportat chiar de catalog — aceeași valoare oricum, așa că o rulare ulterioară mai restrânsă nu o dă niciodată înapoi. NULL doar dacă nici catalogul nu indică un an pentru cub.",
            "en": "Reference year of the data: the cube's own time dimension when this run loaded it, else the catalogue's own reference year for the cube — the same value either way, so a narrower later run never regresses it. NULL only for a cube the catalogue gives no year for either."
          }
        },
        {
          "name": "theme_path",
          "type": "VARCHAR",
          "nullable": true,
          "description": "The cube's folder path in Eurostat's navigation tree, joined with \" > \" — e.g. \"Population and housing censuses > Census 2021 round > Population by family and household characteristics\". The source's own subject grouping.",
          "descriptions": {
            "ro": "Calea cubului prin dosarele din meniul Eurostat, cu elementele unite prin \" > \". De exemplu: \"Population and housing censuses > Census 2021 round > Population by family and household characteristics\". Aceasta este gruparea tematică folosită de sursă.",
            "en": "The cube's folder path in Eurostat's navigation tree, joined with \" > \" — e.g. \"Population and housing censuses > Census 2021 round > Population by family and household characteristics\". The source's own subject grouping."
          }
        },
        {
          "name": "geo_level",
          "type": "VARCHAR",
          "nullable": true,
          "description": "How deep the cube's geography goes, from its own structure document: \"countries\", \"NUTS 1 regions\", \"NUTS 2 regions\" or \"NUTS 3 regions\". This is the cube's full, unsliced structure — read the same way regardless of which country a run happened to be scoped to — so NULL only when that structure could not be fetched at all. Eurostat also encodes this in the code suffix (_r2, _r3).",
          "descriptions": {
            "ro": "Cel mai detaliat nivel geografic al cubului, din documentul propriu de structură: \"countries\", \"NUTS 1 regions\", \"NUTS 2 regions\" sau \"NUTS 3 regions\". Este structura completă, nefiltrată, a cubului — citită la fel indiferent de țara pe care a fost limitată o rulare — deci NULL doar atunci când acea structură nu a putut fi deloc obținută. Eurostat indică același nivel și prin sufixul codului (_r2, _r3).",
            "en": "How deep the cube's geography goes, from its own structure document: \"countries\", \"NUTS 1 regions\", \"NUTS 2 regions\" or \"NUTS 3 regions\". This is the cube's full, unsliced structure — read the same way regardless of which country a run happened to be scoped to — so NULL only when that structure could not be fetched at all. Eurostat also encodes this in the code suffix (_r2, _r3)."
          }
        },
        {
          "name": "geo_count",
          "type": "INTEGER",
          "nullable": true,
          "description": "Number of geographies the cube contains, per its published structure — before any country slicing any run applied. Structure-derived like geo_level, so stable across the country fan-out; NULL only when the structure could not be fetched at all.",
          "descriptions": {
            "ro": "Numărul de zone geografice din cub, conform structurii publicate, înainte de orice filtrare după țară aplicată de vreo rulare. Provine din structură, la fel ca geo_level, deci este stabil indiferent de care țară a limitat o rulare; NULL doar atunci când structura nu a putut fi deloc obținută.",
            "en": "Number of geographies the cube contains, per its published structure — before any country slicing any run applied. Structure-derived like geo_level, so stable across the country fan-out; NULL only when the structure could not be fetched at all."
          },
          "unit": "geographies"
        },
        {
          "name": "cell_count",
          "type": "BIGINT",
          "nullable": true,
          "description": "Total cells in the cube's full cross-product, as the catalogue reports it. The four rounds together are about 184 million cells, and the largest single cube is 34.4 million — the number to check before asking for one whole.",
          "descriptions": {
            "ro": "Numărul total de celule rezultat din toate combinațiile posibile ale categoriilor din cub, așa cum îl raportează catalogul. Cele patru runde au împreună aproximativ 184 de milioane de celule, iar cel mai mare cub are 34,4 milioane. Verificați această valoare înainte să cereți un cub întreg.",
            "en": "Total cells in the cube's full cross-product, as the catalogue reports it. The four rounds together are about 184 million cells, and the largest single cube is 34.4 million — the number to check before asking for one whole."
          },
          "unit": "cells"
        },
        {
          "name": "data_updated_at",
          "type": "DATE",
          "nullable": true,
          "description": "Last update of the cube's data, per the catalogue's own \"dd.mm.yyyy\" column — the source names no time-of-day or zone, so the connector's tocDate() parser (census.ts) fixes one: it is stored as the UTC day, built with Date.UTC() rather than the host clock. Census figures are revised after publication, which is why observations are merged rather than appended.",
          "descriptions": {
            "ro": "Data ultimei actualizări a datelor din cub, conform coloanei proprii a catalogului „dd.mm.yyyy” — sursa nu precizează nicio oră sau fus orar, așa că funcția tocDate() a conectorului (census.ts) stabilește unul: este stocată ca ziua UTC, construită cu Date.UTC(), nu cu ceasul mașinii care rulează. Valorile de recensământ sunt revizuite după publicare. De aceea, observațiile sunt îmbinate cu cele existente, nu adăugate ca rânduri noi.",
            "en": "Last update of the cube's data, per the catalogue's own \"dd.mm.yyyy\" column — the source names no time-of-day or zone, so the connector's tocDate() parser (census.ts) fixes one: it is stored as the UTC day, built with Date.UTC() rather than the host clock. Census figures are revised after publication, which is why observations are merged rather than appended."
          }
        },
        {
          "name": "structure_changed_at",
          "type": "DATE",
          "nullable": true,
          "description": "Last change to the cube's table structure, per the catalogue — the same \"dd.mm.yyyy\" column parsed the same way as data_updated_at: stored as the UTC day via tocDate() (census.ts), since the catalogue itself states no time-of-day or zone.",
          "descriptions": {
            "ro": "Data ultimei modificări a structurii tabelului din cub, conform catalogului — aceeași coloană „dd.mm.yyyy”, analizată la fel ca data_updated_at: stocată ca ziua UTC prin tocDate() (census.ts), pentru că nici aici catalogul nu precizează oră sau fus orar.",
            "en": "Last change to the cube's table structure, per the catalogue — the same \"dd.mm.yyyy\" column parsed the same way as data_updated_at: stored as the UTC day via tocDate() (census.ts), since the catalogue itself states no time-of-day or zone."
          }
        },
        {
          "name": "api_url",
          "type": "VARCHAR",
          "nullable": true,
          "description": "The Statistics API request that returns this cube whole as JSON-stat. Mind cell_count first: the largest census cubes answer with hundreds of megabytes.",
          "descriptions": {
            "ro": "Adresa URL pentru cererea din Statistics API care returnează întregul cub în format JSON-stat. Verificați mai întâi cell_count: răspunsurile pentru cele mai mari cuburi de recensământ au sute de megaocteți.",
            "en": "The Statistics API request that returns this cube whole as JSON-stat. Mind cell_count first: the largest census cubes answer with hundreds of megabytes."
          }
        },
        {
          "name": "browser_url",
          "type": "VARCHAR",
          "nullable": true,
          "description": "Eurostat's data browser page for the cube — the human view of the same numbers.",
          "descriptions": {
            "ro": "Pagina cubului în Eurostat Data Browser, unde aceleași valori pot fi consultate într-o formă ușor de citit.",
            "en": "Eurostat's data browser page for the cube — the human view of the same numbers."
          }
        },
        {
          "name": "census_hub_url",
          "type": "VARCHAR",
          "nullable": true,
          "description": "The European Census Hub query builder, the browser front end these hypercubes are published through. The same for every row; kept so a reader can always get back to the source application.",
          "descriptions": {
            "ro": "Instrumentul de creare a interogărilor din European Census Hub, adică interfața web prin care sunt publicate aceste hipercuburi. Adresa este aceeași în fiecare rând și este păstrată pentru ca cititorul să poată reveni oricând la aplicația-sursă.",
            "en": "The European Census Hub query builder, the browser front end these hypercubes are published through. The same for every row; kept so a reader can always get back to the source application."
          }
        },
        {
          "name": "first_seen_date",
          "type": "DATE",
          "nullable": false,
          "description": "The first run day (UTC) on which the catalogue carried this cube — how a newly published census table is spotted. Maintained automatically by the upsert loader.",
          "descriptions": {
            "ro": "Prima zi de rulare, în UTC, în care acest cub a apărut în catalog. Astfel poate fi identificat un tabel de recensământ publicat recent. Data este gestionată automat la încărcare.",
            "en": "The first run day (UTC) on which the catalogue carried this cube — how a newly published census table is spotted. Maintained automatically by the upsert loader."
          }
        },
        {
          "name": "last_seen_date",
          "type": "DATE",
          "nullable": false,
          "description": "The most recent run day (UTC) on which the catalogue still carried this cube.",
          "descriptions": {
            "ro": "Cea mai recentă zi de rulare, în UTC, în care catalogul încă avea acest cub.",
            "en": "The most recent run day (UTC) on which the catalogue still carried this cube."
          }
        }
      ],
      "files": [
        {
          "url": "https://data-directory.fsn1.your-objectstorage.com/public/eu-census-hub/v/01M1SPDT9JMYTQ7A589DTKSQC1/hypercubes.parquet",
          "sizeBytes": 12413,
          "rowCount": 143,
          "etag": "\"31c9d1cb55033a9ef5dec9bf76c8d04b\"",
          "stats": {
            "census_round": {
              "min": 1991,
              "max": 2021
            },
            "hypercube_code": {
              "min": "cens_01naagchi",
              "max": "cens_hnmga"
            }
          }
        }
      ],
      "example": [
        {
          "hypercube_code": "cens_91aage",
          "title": "Active population by sex and age",
          "title_lc": "active population by sex and age",
          "census_round": 1991,
          "census_year": 1991,
          "theme_path": "Database by themes > Population and social conditions > Population and housing censuses > Census 1990/91 round > Active population",
          "geo_level": "NUTS 2 regions",
          "geo_count": 21,
          "cell_count": 3753,
          "data_updated_at": "2009-03-27T00:00:00.000Z",
          "structure_changed_at": "2024-01-03T00:00:00.000Z",
          "api_url": "https://ec.europa.eu/eurostat/api/dissemination/statistics/1.0/data/cens_91aage?format=JSON&lang=en",
          "browser_url": "https://ec.europa.eu/eurostat/databrowser/view/cens_91aage/default/table?lang=en",
          "census_hub_url": "https://ec.europa.eu/CensusHub/selectHyperCube?clearSession=true",
          "first_seen_date": "2026-08-26T00:00:00.000Z",
          "last_seen_date": "2026-09-05T00:00:00.000Z"
        },
        {
          "hypercube_code": "cens_91actz",
          "title": "Active population by citizenship and age group",
          "title_lc": "active population by citizenship and age group",
          "census_round": 1991,
          "census_year": 1991,
          "theme_path": "Database by themes > Population and social conditions > Population and housing censuses > Census 1990/91 round > Active population",
          "geo_level": "NUTS 1 regions",
          "geo_count": 17,
          "cell_count": 22920,
          "data_updated_at": "2010-01-11T00:00:00.000Z",
          "structure_changed_at": "2024-01-03T00:00:00.000Z",
          "api_url": "https://ec.europa.eu/eurostat/api/dissemination/statistics/1.0/data/cens_91actz?format=JSON&lang=en",
          "browser_url": "https://ec.europa.eu/eurostat/databrowser/view/cens_91actz/default/table?lang=en",
          "census_hub_url": "https://ec.europa.eu/CensusHub/selectHyperCube?clearSession=true",
          "first_seen_date": "2026-08-26T00:00:00.000Z",
          "last_seen_date": "2026-09-05T00:00:00.000Z"
        }
      ]
    }
  ],
  "generatedAt": "2026-09-05T21:28:25.528Z"
}
