The operation

Produce, for a given city and year, the annual electricity consumption of the territory, expressed in GWh, from an open municipal publication.

One figure, three refusals.

Four European cities publish their electricity consumption as open data. Asked for the same figure from each of them, for 2024, in GWh, this program produced one it could check against a second publication, and three exact reasons it would not produce the others.

CityGWhDecision
Vienna 20247,796.5Admissible
Amsterdam 2024not producedOut of scope
Barcelona 2024not producedContradiction
Ghent 2024not producedInsufficient

4 rows, produced on 22 September 2026 from files downloaded the same day.

electricity-2024.csv

Admissible for the operation

The documented conditions the program checks are met. It delivers the value, its calculation and where it came from.

Out of scope for this operation

A known difference forbids this precise use. It delivers the difference, and the operation it did not run.

Documentary contradiction

Two published statements about the same object cannot both hold. It delivers both passages, and invents no arbitration.

Information insufficient

A necessary condition is not established. It delivers the missing field, and the question that settles it.

A unit conversion is not a judgement call, so it runs and it is shown: 1 MWh = 3.6 GJ. What a conversion never does is make two different definitions the same, and no result here is compared with another city’s, ranked or scored. A decision is about the operation, never about a publication or the people who produce it.

The chain

On a publication whose columns appear nowhere in this code.

No column name, no filter value and no city from this file is written anywhere in the program. A model read the publisher’s own field descriptions, in Dutch, and proposed how the columns answer the operation. The program then checked what it could check. The button runs that first step again, now.

01

The publication, and what the publisher documents

Consumption by statistical sector, with NACE sector, published by Fluvius, distribution network operator for Flanders. Dutch. Downloaded on 2026-09-22 and kept in this repository with its checksum, together with the twelve field descriptions the publisher supplies beside it. Licence: Open data license - FLUVIUS.

The file, at the publisher

02

What the model proposed

Value column

afname

Rows kept

verbruiksjaar = 2024 markt = Elektriciteit richting = Afname

Unit, as the publisher declares it

not declared anywhere

What a row carries

its own slice of the quantity

The kept rows cover electricity (markt=Elektriciteit) off-take (richting=Afname) consumption for the municipality of Ghent (gemeente=GENT) for the calendar year 2024, broken down by statistical sector, NACE sector and NACE subsector. They exclude gas consumption, exclude injected (fed-back) electricity, and exclude the 'Gecombineerd' direction rows. The municipality assignment is based on the postal code of the delivery address, not necessarily the legal municipal boundary.

De verbruiken werden geaggregeerd naar een kalenderjaar (01/jan-31/dec).
Found in the publisher's documentation kept here.
Afname is het afnemen van elektriciteit en/of aardgas vanuit het distributienet.
Found in the publisher's documentation kept here.

One call to a model, on this publication only, capped per day. It reads the file from scratch, so its reading can differ from the recorded one. Where it does, the program runs the new reading and the trace names the published passage it rests on.

03

What the code executed, and where it stopped

  1. model

    Correspondence proposedranValue read from "afname", rows kept by verbruiksjaar = 2024, markt = Elektriciteit, richting = Afname. Perimeter, in the model's words: The kept rows cover electricity (markt=Elektriciteit) off-take (richting=Afname) consumption for the municipality of Ghent (gemeente=GENT) for the calendar year 2024, broken down by statistical sector, NACE sector and NACE subsector. They exclude gas consumption, exclude injected (fed-back) electricity, and exclude the 'Gecombineerd' direction rows. The municipality assignment is based on the postal code of the delivery address, not necessarily the legal municipal boundary.

  2. code

    Cited passages found in the materialran5 of 5 passages found, character for character, in the file or in the documentation kept in this repository.

  3. code

    Named columns exist in the fileran4 named columns found among the 12 the file publishes.

  4. code

    Each filter value occurs in its columnranverbruiksjaar = 2024; markt = Elektriciteit; richting = Afname

  5. code

    The value column reads as numbers under the proposed dialectran1233 of 1233 cells read as numbers with separator ";", decimal mark ".", digit grouping "none".

  6. code

    The kept rows may be added togetherran1233 rows added. The publication states that each row carries its own slice: "In deze dataset zijn verbruiksgegevens geaggregeerd per markt (elektriciteit/gas), richting (injectie/afname), statistische sector, NACE sector en NACE subsector."

  7. code

    The unit is declared in the publisher's documentationstopped hereNo passage in the file or in the documentation states the unit of the value column.

04

What came out

Information insufficient

The rows were kept and added, and the total is given below in the publisher's own unit. The conversion to GWh was not executed, because the unit of the value column is not declared in the material the publisher supplies.

What is missing: A statement, by the publisher, of the unit of "afname".

1,233 rows of 21,917 were kept and added. Their total is 1,305,160,204.98 in the publisher’s own unit. The row for this city is in the export above, with its value column empty.

05

The decision we did not take in anyone’s place

The documentation does not state the measurement unit of the 'afname' column (labelled only as a 'double' with a description of an approximated consumption volume); converting the summed value to GWh requires assuming it is expressed in kWh, which is the Fluvius convention but is not explicitly declared here, and that assumption is left unconfirmed.

The other three

Same chain, same operation, three different answers.

Vienna 2024

Stadt Wien, Magistratsabteilung 20 (Energieplanung)

Admissible for the operation

The conditions this program checks are met. 7,796.5 GWh for the kept rows.

Checked from outside the file. 7,796.5 and 7,796.5 GWh, from two files published separately, differ by 0 GWh. The second file splits the year by sector and is published separately from the first; neither is derived from the other.

Amsterdam 2024

Gemeente Amsterdam, Datateam Stedelijke Ontwikkeling en Beheer, from Liander and Stedin network data

Out of scope for this operation

Aggregation not executed under this definition. The file carries one figure per period: 2024-1 = 4,617.2 GWh, 2024-2 = 4,642.69 GWh, 2024-3 = 4,650.13 GWh, 2024-4 = 4,658.63 GWh. They differ from one another by at most 0.9 per cent, and adding them gives 18,568.66 GWh for a year the publication says is worth one of them. Which one is the year's figure, and whether such a figure may be published as a year's consumption at all, are not decided here.

What is missing: A field, in the publication, that distinguishes the consumption of a period from a figure restated for the whole year.

Barcelona 2024

Ajuntament de Barcelona, Oficina Municipal de Dades, from the Datadis platform

Documentary contradiction

Two published statements about the same object cannot both hold under this operation: the declared unit, and what the table is said to describe. Both are reproduced below, and no arbitration between them is invented here. The operation is not executed.

06.Valor = Consum elèctric en megawatt hores
Found in the publisher's documentation kept here.
Daily electric cosumption by postal code, economic sector and time interval in the city of Barcelona
Found in the publisher's documentation kept here.