Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0

### Added
- Enhanced `ExtEmDataConnection` with `simulateInternal` method [#398](https://github.com/ie3-institute/simonaAPI/issues/398)
- Added API structure to the docs [#405](https://github.com/ie3-institute/simonaAPI/issues/405)

### Changed
- Splitting up `ExtSimAdapterData` into `SetupData` and a data connection [#400](https://github.com/ie3-institute/simonaAPI/issues/400)
Expand Down
1 change: 1 addition & 0 deletions docs/readthedocs/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,7 @@ One example are external simulations, that can be used in co-simulations with SI
:maxdepth: 2

gettingstarted
structure
createextsims
extlinkinterface

Expand Down
45 changes: 45 additions & 0 deletions docs/readthedocs/structure.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,45 @@
# API Structure

This page is mend to provide an overview of the structure of this API.

The API is split into the following parts:
1. [Data](#data)
2. [Exceptions](#exceptions)
3. [Mapping](#mapping)
4. [Ontology](#ontology)
5. [Simulation](#simulation)
6. [Uncategorized](#uncategorized)

## Data

The data package and its sub-packages contains all data-related classes. These are among other things [data connections](/connections/connections),
data containers and models.
Comment on lines +13 to +16
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Should this be linked with `Data Connections``?

Copy link
Member Author

@staudtMarius staudtMarius Dec 17, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Data connections is a seperat site. I linked to it, since this site is only mend to explain the API structure.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Great, but link is broken since the myst crossref is not set properly



## Exceptions

This package contains some exceptions. These can be thrown by the classes of this API.


## Mapping

This package contains the `ExtEntityMapping` as well as some `DataTypes` and the `ExtEntityEntry` that are both used in
the mapping.

## Ontology

All messages that can be exchanged between SIMONA and an external simulation resp. data connection are placed in this
package.


## Simulation

The simulation package contains the available simulations. Currently, only base classes that needs to be implemented are
provided. The most important class is the [ExtSimulation](/simulations/externalsimulation) as it is the base class for
all external simulations.
Comment on lines +35 to +39
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

To me this becomes not really clear. What is mend by saying, it contains the available simulations. How is this group different from e.g. data?

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Data contains the models and connections that can be used for an external simulation. If someone want to create an external simulation, a subclass of ExtSimulation is needed.

In the sub-directory simulation are currently two external simulation classes available.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Maybe you can enhance this a bit to get this understandable for other users that aren't that deep into this?



## Uncategorized

There is currently only one interface that is not part of a category. This is the [ExtLinkInterface](/extlinkinterface)
that is used for loading external simulations.
Comment on lines +44 to +45
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Whats the reason this is uncategorized while externalSimulation is part of Simulation?

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The external link interface is not part of any sub-directories. Since the interface is used to link the external simulation to SIMONA is doesn't fit into the simulation sub-directory.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

So, may it is an own category? I would like to avoid uncategorized. Or do you have good idea on that?