Warning
This is Work in Progress
This repository transforms German energy data from the Marktstammdatenregister (MaStR) into the Common Information Model (CIM) standard from IEC TC57. The repository currently supports mapping for the following generation technologies:
- Wind - WindGeneratingUnits.csv - Wind turbines and wind parks
- Biomass - BiomassGeneratingUnits.csv - Biomass power plants using organic fuel sources
- Hydro - HydroGeneratingUnits.csv - Hydropower plants including run-of-river and reservoir-based facilities
Each technology generates a dedicated CSV file with classes and attributes mapped to CIM. The framework can be extended to support additional generation types in the future. The mapping is described in the metadata.json file.
-
Data Extraction:
main.pyqueries a local SQLite database (downloaded viaopen-mastr) containing MaStR wind turbine data, including:- MaStR ID, wind park name, net rated power, manufacturer, type designation, and GPS coordinates
-
Schema Mapping: Uses LinkML to transform MaStR data to CIM format:
schema/mastr.yml- Source schema generated from the MaStR SQLite DB using the linkml schema-automator and manually extendedschema/map.yml- Mapping rules defining how MaStR fields map to CIM attributes
-
Metadata Generation:
generate-metadata.shcreates a CIM profile (schema/cim-mastr-data-profile.yml) from the base IEC CIM schema (schema/im_tc57cim.yml), including WindGeneratingUnit, maxOperatingP, aggregate, normallyInService, PositionPoint, and Length classes and writes the relevant information to themetadata.jsonfile
The transformation produces WindGeneratingUnits.csv containing CIM-formatted wind generating unit data in csv format together with a json context metadata file.
The original Marktstammdatenregister from Bundesnetzagentur für Elektrizität, Gas, Telekommunikation, Post und Eisenbahnen is licensed under Datenlizenz Deutschland – Namensnennung – Version 2.0.