XIIDM

The IIDM (iTesla Internal Data Model) format was designed during the iTesla project. IIDM is not only an exchange format, but also the internal format used in Powsybl because it is designed for running simulations.

Import

TODO

Options

These properties can be defined in the configuration file in the import-export-parameters-default-value module.

iidm.import.xml.throw-exception-if-extension-not-found
The iidm.import.xml.throw-exception-if-extension-not-found property is an optional property that defines if the XIIDM importer throws an exception while trying to import an unknown or undeserializable extension or if it just ignores it. Its default value is false.

iidm.import.xml.extensions
The iidm.import.xml.extensions property is an optional property that defines the list of extensions that will be imported by the XIIDM importer. By default all extensions will be imported.

Deprecated properties

throwExceptionIfExtensionNotFound
The throwExceptionIfExtensionNotFound property is deprecated since v2.0.0. Use the iidm.import.xml.throw-exception-if-extension-not-found property instead.

Removed properties

iidm.import.xml.import-mode
The iidm.import.xml.import-mode property is an optional property that defines the import mode of the XIIDM importer.

Its possible values are :

  • UNIQUE_FILE: Imports the network and its extensions from a unique file.
  • EXTENSIONS_IN_ONE_SEPARATED_FILE: Imports the network from a file and the extensions from another file. In this mode, if the network file name is network.xiidm, the extensions file name must be network-ext.xiidm.
  • ONE_SEPARATED_FILE_PER_EXTENSION_TYPE: Imports the network from a file and each extension type from a separate file. In this mode, if the network file name is network.xiidm, each extension file name must be network-extensionName.xiidm. Example: if our network has two extensions loadFoo and loadBar, then the network will be imported from the network.xiidm file and loadFoo and loadBar will be imported respectively from network-loadFoo.xiidm and network-loadBar.xiidm.

The default value of this parameter is NO_SEPARATED_FILE_FOR_EXTENSIONS. This property has been removed in v3.3.0.

Export

TODO

Options

These properties can be defined in the configuration file in the import-export-parameters-default-value module.

iidm.export.xml.indent
The iidm.export.xml.indent property is an optional property that defines whether the XIIDM file generated by the XIIDM exporter will be indented or not. Its default value is true.

iidm.export.xml.with-branch-state-variables
The iidm.export.xml.with-branch-state-variables property is an optional property that defines whether the network will be exported by the XIIDM exporter with branch states variables or not. Its default value is true.

iidm.export.xml.only-main-cc
The iidm.export.xml.only-main-cc property is an optional property that defines whether the XIIDM exporter only exports the main connected component of the network or not. Its default value is false.

iidm.export.xml.anonymised
The iidm.export.xml.anonymised property is an optional property that defines whether the XIIDM exporter anonymizes all equipments in the generated file or not. Its default value is false.

iidm.export.xml.topology-level
The iidm.export.xml.topology-level property is an optional property that defines the most detailed topology in which the XIIDM exporter can export the network. The topology level can be:

  • NODE_BREAKER: the voltage levels are exported using the Node/Breaker view. Voltage levels described in Bus/Breaker topology are exported using the Bus/Breaker view.
  • BUS_BREAKER: all voltage levels are all exported using the Bus/Breaker view
  • BUS_BRANCH: all voltage levels are exported using the Bus view

The default value is NODE_BREAKER to export all voltage levels in the same level of details than the one they are described.

iidm.export.xml.throw-exception-if-extension-not-found
The iidm.export.xml.throw-exception-if-extension-not-found property is an optional property that defines whether the XIIDM exporter throws an exception if the network contains an unknown or unserializable extension or if it just ignores it. Its default value is false.

iidm.export.xml.extensions
The iidm.export.xml.extensions property is an optional property that defines the list of extensions that we will be exported by the XIIDM exporter. By default all extensions will be exported.

iidm.export.xml.sorted
The iidm.export.xml.sorted property is an optional property that defines whether the XIIDM file generated by the XIIDM exporter will be sorted or not for some objects. Depending on object types the following sorting key has been chosen :

  • the id for identifiables
  • the name for extensions
  • the name for temporary limits
  • node1 then node2 for internal connections
  • the name for properties of an identifiable

By default, the network components are not sorted.

iidm.export.xml.version
The iidm.export.xml.version property is an optional property that defines the XIIDM version to use for the exported file. If the chosen version is not compatible with the network to write, an error occurs. This is typically the case when an attribute appeared in a version more recent than the target one, and its value is not the default one (importing back the file will lead to a different network). By default, the export is done in the more recent version that is supported.

iidm.export.xml.iidm-version-incompatibility-behavior The iidm.export.xml.iidm-version-incompatibility-behavior property is an optional property that defines the behavior of the XIIDM exporter when there is a version incompatibility between the IIDM network and the XIIDM version in which the export is done. There is two possible behaviors:

  • LOG_ERROR: an error is logged when there is a version incompatibility
  • THROW_EXCEPTION: an exception is thrown when there is a version incompatibility By default, this behavior is set as THROW_EXCEPTION

Removed properties

iidm.export.xml.export-mode
The iidm.export.xml.export-mode property is an optional property that defines the export mode of the XIIDM exporter. The export mode can be:

  • UNIQUE_FILE: Exports the network and its extensions in a unique file.
  • EXTENSIONS_IN_ONE_SEPARATED_FILE: Exports the network to a file and the extensions to another file. In this mode, if the network file name is network.xiidm, the extensions file name must be network-ext.xiidm.
  • ONE_SEPARATED_FILE_PER_EXTENSION_TYPE: Exports the network to a file and each extension type to a separate file. In this mode, if the network file name is network.xiidm, each extension file name must be network-extensionName.xiidm. Example: if our network has two extensions loadFoo and loadBar, then the network will be exported to the network.xiidm file and loadFoo and loadBar will be exported respectively to network-loadFoo.xiidm and network-loadBar.xiidm.

The default value for this parameter is IidmImportExportMode.NO_SEPARATED_FILE_FOR_EXTENSIONS. This property has been removed in v3.3.0.

iidm.export.xml.skip-extensions
The iidm.export.xml.skip-extensions property is an optional property that defines whether the XIIDM exporter skips exporting the network extensions or not. Its default value is false.

This property has been deprecated since v2.4.0 before being removed in v3.3.0. Set the iidm.export.xml.extensions to an empty string instead.

Example

<?xml version="1.0" encoding="UTF-8"?>
<iidm:network xmlns:iidm="http://www.itesla_project.eu/schema/iidm/1_0" id="sim1" caseDate="2013-01-15T18:45:00.000+01:00" forecastDistance="0" sourceFormat="test">
    <iidm:substation id="P1" country="FR" tso="RTE" geographicalTags="A">
        <iidm:voltageLevel id="VLGEN" nominalV="24.0" topologyKind="BUS_BREAKER">
            <iidm:busBreakerTopology>
                <iidm:bus id="NGEN"/>
            </iidm:busBreakerTopology>
            <iidm:generator id="GEN" energySource="OTHER" minP="-9999.99" maxP="9999.99" voltageRegulatorOn="true" targetP="607.0" targetV="24.5" targetQ="301.0" bus="NGEN" connectableBus="NGEN">
                <iidm:minMaxReactiveLimits minQ="-9999.99" maxQ="9999.99"/>
            </iidm:generator>
        </iidm:voltageLevel>
        <iidm:voltageLevel id="VLHV1" nominalV="380.0" topologyKind="BUS_BREAKER">
            <iidm:busBreakerTopology>
                <iidm:bus id="NHV1"/>
            </iidm:busBreakerTopology>
        </iidm:voltageLevel>
        <iidm:twoWindingsTransformer id="NGEN_NHV1" r="0.26658461538461536" x="11.104492831516762" g="0.0" b="0.0" ratedU1="24.0" ratedU2="400.0" bus1="NGEN" connectableBus1="NGEN" voltageLevelId1="VLGEN" bus2="NHV1" connectableBus2="NHV1" voltageLevelId2="VLHV1"/>
    </iidm:substation>
    <iidm:substation id="P2" country="FR" tso="RTE" geographicalTags="B">
        <iidm:voltageLevel id="VLHV2" nominalV="380.0" topologyKind="BUS_BREAKER">
            <iidm:busBreakerTopology>
                <iidm:bus id="NHV2"/>
            </iidm:busBreakerTopology>
        </iidm:voltageLevel>
        <iidm:voltageLevel id="VLLOAD" nominalV="150.0" topologyKind="BUS_BREAKER">
            <iidm:busBreakerTopology>
                <iidm:bus id="NLOAD"/>
            </iidm:busBreakerTopology>
            <iidm:load id="LOAD" loadType="UNDEFINED" p0="600.0" q0="200.0" bus="NLOAD" connectableBus="NLOAD"/>
        </iidm:voltageLevel>
        <iidm:twoWindingsTransformer id="NHV2_NLOAD" r="0.04724999999999999" x="4.049724365620455" g="0.0" b="0.0" ratedU1="400.0" ratedU2="158.0" bus1="NHV2" connectableBus1="NHV2" voltageLevelId1="VLHV2" bus2="NLOAD" connectableBus2="NLOAD" voltageLevelId2="VLLOAD">
            <iidm:ratioTapChanger lowTapPosition="0" tapPosition="1" regulating="true" loadTapChangingCapabilities="true" targetV="158.0">
                <iidm:terminalRef id="NHV2_NLOAD" side="TWO"/>
                <iidm:step r="0.0" x="0.0" g="0.0" b="0.0" rho="0.8505666905244191"/>
                <iidm:step r="0.0" x="0.0" g="0.0" b="0.0" rho="1.0006666666666666"/>
                <iidm:step r="0.0" x="0.0" g="0.0" b="0.0" rho="1.150766642808914"/>
            </iidm:ratioTapChanger>
        </iidm:twoWindingsTransformer>
    </iidm:substation>
    <iidm:line id="NHV1_NHV2_1" r="3.0" x="33.0" g1="0.0" b1="1.93E-4" g2="0.0" b2="1.93E-4" bus1="NHV1" connectableBus1="NHV1" voltageLevelId1="VLHV1" bus2="NHV2" connectableBus2="NHV2" voltageLevelId2="VLHV2"/>
    <iidm:line id="NHV1_NHV2_2" r="3.0" x="33.0" g1="0.0" b1="1.93E-4" g2="0.0" b2="1.93E-4" bus1="NHV1" connectableBus1="NHV1" voltageLevelId1="VLHV1" bus2="NHV2" connectableBus2="NHV2" voltageLevelId2="VLHV2"/>
</iidm:network>