From ec84961ed3e6e95833c4f941c0d8589d790ba991 Mon Sep 17 00:00:00 2001 From: FlorianK13 <74312290+FlorianK13@users.noreply.github.com> Date: Tue, 16 Jun 2026 07:50:38 +0200 Subject: [PATCH 1/6] Update README #758 --- README.rst | 24 ++++++------------------ 1 file changed, 6 insertions(+), 18 deletions(-) diff --git a/README.rst b/README.rst index 6e27c656..bd2b6fef 100644 --- a/README.rst +++ b/README.rst @@ -37,7 +37,7 @@ open-mastr Introduction ============ -The python package ``open-mastr`` provides an interface for accessing the `Marktstammdatenregister (MaStR) `_ data. The MaStR is a German register provided by the German Federal Network Agency (Bundesnetzagentur / BNetza) that keeps track of all power and gas units located in Germany. It is a daily growing dataset with millions of data points covering electricity and gas production units, electricity and gas consumers, storages, grids, and energy market participants. +The Python package ``open-mastr`` provides an interface for accessing the `Marktstammdatenregister (MaStR) `_ data. The MaStR is a German register provided by the German Federal Network Agency (Bundesnetzagentur / BNetza) that keeps track of all power and gas units located in Germany. It is a daily growing dataset with millions of data points covering electricity and gas production units, electricity and gas consumers, storages, grids, and energy market participants. Generally, and besides the offerings of ``open-mastr``, the MaStR data can be accessed via three main options: @@ -45,7 +45,7 @@ Generally, and besides the offerings of ``open-mastr``, the MaStR data can be ac #. download `daily provided dumps `_ #. access via the `web service `_ -These access options, however, are not exactly frictionless. ``open-mastr`` thus provides an interface for and improved developer experience of accessing the data. This project is intended for individuals who wish to "just work" with the MaStR data and who do not want to deal with the idiosyncrasies of the three access options above. +These access options, however, are not exactly frictionless. ``open-mastr`` thus provides an improved developer experience for accessing the data. This project is intended for individuals who wish to "just work" with the MaStR data and who do not want to deal with the idiosyncrasies of the three access options above. In particular, ``open-mastr`` facilitates access to the daily provided MaStR dumps with download methods (bulk) and by parsing the XML files to a relational database. Furthermore, the software provides a Python wrapper to access the MaStR SOAP web service (API). @@ -64,10 +64,10 @@ Benefits provided by ``open-mastr`` - Description * - Data download and parsing - Download, decode, and write data to a local database + * - Speed and parallelization + - Download and parse tables in seconds, not minutes * - Translation to English - Translate table names and columns from German to English as well as an English documentation page of the dataset - * - Data processing - - Merge relevant information about different technologies to single csv files **Just here for the data?** We regularly run the whole download and cleansing pipeline and upload the dataset as csv files at `zenodo `_! @@ -86,7 +86,6 @@ Installation ============ | It is recommended to use a virtual python environment, for example `conda `_ or `virtualenv `_. -| The package is intended to be used with ``Python >=3.8``. PyPI @@ -108,17 +107,11 @@ For development, clone this repository manually. git clone git@github.com:OpenEnergyPlatform/open-MaStR.git cd open-MaStR -Setup the conda environment with - -.. code-block:: python - - conda env create -f environment.yml - Install the package with .. code-block:: python - pip install "open_mastr[dev]" + pip install -e .[dev] Examples of Usage @@ -133,15 +126,10 @@ These projects already use open-mastr: - `Goal100 Monitor `_ - `Goal100 Studio `_ -If you want to see your project in this list, write an +If you want to see your project in this list, write an `Issue `_ or add changes in a `Pull Request `_. -External Resources -=================== -Besides open-mastr, some other resources exist that ease the process of working with the Marktstammdatenregister: - -- The `bundesAPI/Marktstammdaten-API `_ is another implementation to access data via an official API. Collaboration ============= From 10125985df8ba01752c884dac54c721022d385f8 Mon Sep 17 00:00:00 2001 From: FlorianK13 <74312290+FlorianK13@users.noreply.github.com> Date: Tue, 16 Jun 2026 07:56:33 +0200 Subject: [PATCH 2/6] Correct affiliation #758 --- CITATION.cff | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CITATION.cff b/CITATION.cff index b493d94e..a2d0ff11 100644 --- a/CITATION.cff +++ b/CITATION.cff @@ -18,7 +18,7 @@ authors: - family-names: "Kotthoff" given-names: "Florian" alias: "@FlorianK13" - affiliation: "fortiss" + affiliation: "OFFIS e.V. - Institute for Informatics" orcid: "https://orcid.org/0000-0003-3666-6122" - family-names: "Tepe" given-names: "Deniz" From 35b26a4c856bda3c1e9a7905f4d5b04b1e6484d3 Mon Sep 17 00:00:00 2001 From: FlorianK13 <74312290+FlorianK13@users.noreply.github.com> Date: Tue, 16 Jun 2026 08:12:36 +0200 Subject: [PATCH 3/6] Add new fields to citation.ccf file #758 --- CITATION.cff | 23 ++++++++++++++++++++++- 1 file changed, 22 insertions(+), 1 deletion(-) diff --git a/CITATION.cff b/CITATION.cff index a2d0ff11..e1944826 100644 --- a/CITATION.cff +++ b/CITATION.cff @@ -42,10 +42,31 @@ authors: given-names: "Simon" alias: "@Simon-Will" affiliation: "" +identifiers: + - type: swh + value: 'swh:1:dir:28252b3ca57b56d22be851bad576b6748af2e171' + description: Software Heritage archive identifier title: "open-MaStR" type: software license: AGPL-3.0 version: 0.17.1 -doi: +abstract: >- + The Python Package open-mastr provides an interface for + accessing and cleaning the German Energy Unit dataset + called Marktstammdatenregister (MaStR). The MaStR is a + central registry with detailed information about renewable + and conventional power plants in the German energy system. + open-mastr enables the creation and updating of a local + database of the entire registry, as well as processing the + data for further evaluation. Ultimately, the package + offers methods to reduce the registry's parsing time and + thus enables energy system researchers to start working + with the entire dataset right away. +keywords: + - python + - Marktstammdatenregister + - Energy System + - Energy System Data + - Open Data date-released: 2026-04-13 url: "https://github.com/OpenEnergyPlatform/open-MaStR/" From a9f1efa33bdcad7f39028fb4e4b82ba94b750cb0 Mon Sep 17 00:00:00 2001 From: Florian Kotthoff <74312290+FlorianK13@users.noreply.github.com> Date: Tue, 16 Jun 2026 08:20:05 +0200 Subject: [PATCH 4/6] Add software archive badge #758 --- README.rst | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/README.rst b/README.rst index bd2b6fef..a1d30001 100644 --- a/README.rst +++ b/README.rst @@ -23,6 +23,8 @@ open-mastr - |badge_pypi| |badge_joss| * - Data Publication - |badge_zenodo| + * - Software Archive + - |badge_software_heritage| * - Development - |badge_issue_open| |badge_issue_closes| |badge_pr_open| |badge_pr_closes| * - Community @@ -198,4 +200,8 @@ Data .. |badge_joss| image:: https://joss.theoj.org/papers/dc0d33e7dc74f7233e15a7b6fe0c7a3e/status.svg :target: https://joss.theoj.org/papers/dc0d33e7dc74f7233e15a7b6fe0c7a3e +.. |badge_software_heritage| image:: https://archive.softwareheritage.org/badge/swh:1:dir:28252b3ca57b56d22be851bad576b6748af2e171/ + :target: https://archive.softwareheritage.org/swh:1:dir:28252b3ca57b56d22be851bad576b6748af2e171;origin=https://github.com/OpenEnergyPlatform/open-MaStR;visit=swh:1:snp:8065d0931f826af24c57fae612c6a48e0fcb135b;anchor=swh:1:rev:430223ddf437ba2611fe9a38521e6549ff61e750 + + From b129151016a922601341d7e204d66e602e9b7d66 Mon Sep 17 00:00:00 2001 From: Florian Kotthoff <74312290+FlorianK13@users.noreply.github.com> Date: Tue, 16 Jun 2026 08:23:01 +0200 Subject: [PATCH 5/6] Reduce badge table size #758 --- README.rst | 8 ++------ 1 file changed, 2 insertions(+), 6 deletions(-) diff --git a/README.rst b/README.rst index a1d30001..ab353795 100644 --- a/README.rst +++ b/README.rst @@ -13,12 +13,8 @@ open-mastr .. list-table:: :widths: 10, 50 - * - License - - |badge_license| - * - Documentation - - |badge_rtd| - * - Tests - - |badge_ci| + * - General + - |badge_license| |badge_rtd| |badge_ci| * - Publication - |badge_pypi| |badge_joss| * - Data Publication From 8d5a7e6e0c34943f8bd040c0d2255de12588ed23 Mon Sep 17 00:00:00 2001 From: Florian Kotthoff <74312290+FlorianK13@users.noreply.github.com> Date: Mon, 6 Jul 2026 13:04:36 +0200 Subject: [PATCH 6/6] Update Changelog #758 --- CHANGELOG.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index 16889b16..6bf9b4bc 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -18,6 +18,8 @@ and the versioning aims to respect [Semantic Versioning](http://semver.org/spec/ [#718](https://github.com/OpenEnergyPlatform/open-MaStR/pull/718) ### Changed + - Update Software metadata files for improved FAIRness + [#759](https://github.com/OpenEnergyPlatform/open-MaStR/pull/759) - Refactor data path configuration: remove `get_data_version_dir()`, add `MASTR_PROJECT_HOME_DIR` env var support to `get_project_home_dir()` [#748](https://github.com/OpenEnergyPlatform/open-MaStR/pull/748) - Switch to dynamic table generation based on parsing of XSD files from the MaStR documentation; fall back to bundled XSD files if the downloaded documentation is invalid