Python SDK for Power System (PowerSystemPy) is an R&D project investigating the feasibility of generating a Python SDK from LinkML. The focus is to explore how an SDK derived from CIM17 EQ Profile can be integrated with commonly used Python Data Analysis library like pandas and domain specific library like pandapower and how to access triple stores like GraphDB and RDF4J.
The project will assess different approaches for querying and accessing SPARQL endpoints, including:
-
Alternative query mechanisms for RDF triple stores
While the Python SDK will be based on CIM17, it will not strictly follow the library component structure that is intended for the release.
PowerSystemPy aims to:
-
Generate a Python SDK from LinkML and evaluate its usability for power system applications.
-
Test integration with Python-based tools such as pandas and PandaPower.
-
Investigate methods to interact with triple stores, including GraphDB and RDF4J.
-
Evaluate different query strategies, including SPARQLWrapper and GraphQL, to interact with SPARQL endpoints.
-
Explore the role of RDFLib for handling RDF-based data in Python.
-
RDFLib: RDFLib GitHub
-
SHACL Library for RDFLib: pySHACL
-
LinkML Documentation: LinkML
We acknowledge and accredit UCA CIMug and the team responsible for the development of IEC 61970-452:2021 (CPSM), for their foundational work on the CIM profile included in this repository.
This repository and its contents are made available under the Apache License 2.0, ensuring open access, modification, and redistribution under the terms outlined in the LICENSE
file.