Skip to main content

Topology Genesis

Overview

The Topology Genesis service (also known as CIMEX service) is responsible for ingesting and managing circuit model data within the OpenDSO platform. This service performs the critical function of converting Common Information Model (CIM) XML files into OpenDSO's internal data model format called CIMEX (CIM-Expanded).

When a CIM XML file is uploaded to the system, Topology Genesis performs a comprehensive circuit traversal and validation process that transforms the raw CIM data into an electrically connected node structure. This "as-designed" model represents the circuit topology as specified in the original engineering design, showing all equipment, their properties, and their electrical connections.

The resulting CIMEX data model is then made available through the API endpoints documented below, allowing other OpenDSO services and applications to access:

  • Region data: High-level information about electrical regions and their contained circuits
  • Device topology: Detailed equipment models including transformers, switches, lines, DER devices, and loads
  • Equipment properties: Technical specifications such as ratings, capacities, and operational parameters
  • Topological relationships: How equipment is electrically connected within the circuit

Topology Genesis supports both CIM16 and CIM100 formats and publishes update notifications to the NATS message bus whenever a CIM file completes parsing, enabling real-time synchronization across the OpenDSO platform.

For more information on CIM ingestion, see the Circuit Ingestion documentation.

API commands

CommandsTypeResponse ObjectDescription
Request
opendso.backoffice.cimex.request.regionsRequestArray(Region)Retrieves all regions
opendso.backoffice.cimex.request.region.REGION_IDRequestCIMEXRetrieves a specific region, topology
opendso.backoffice.cimex.request.device.DEVICE_IDRequestCIMEXRetrieves a specific device, topology
opendso.backoffice.gms.request.region.REGION_IDRequestGMSRetrieves a specific region, delivered in gms dtos
Subscribe
opendso.backoffice.cimex.update.regionSubscribePublished to nats when a cim file finishes parsing