libcimpp is a serialiser & deserialiser library for C++ objects from XML/RDF documents based on the Common Information Model (CIM) standards (i.e. IEC61970/61968/62325) and CGMES for the energy sector. It is part of the CIM++ project. More on CIM++ can be found here.
Supported CIM / CGMES versions:
- CGMES_2.4.13_18DEC2013
 - CGMES_2.4.15_16FEB2016
 - CGMES_2.4.15_27JAN2020
 - CGMES_3.0.0
 
limcimpp uses arabica as cross platform wrapper around one of the XML parsers listed in the dependencies (see below). It is recommended to use libcimpp as cmake module.
You need following software packages for libcimpp:
- One of the following XML parsers:
- libxml2 (usually chosen under Linux and often can be installed as a package of the used distribution)
 - Xerces
 - Microsoft XML Parser (this one is used per default when building with MS Visual Studio)
 
 - Build system:
 
After getting the Git repository, create a build subdirectory and change into it:
mkdir build
cd buildFor building libcimpp with the default CIM version, type:
cmake ..
make -j 4For building libcimpp with a certain CIM version (e.g. CGMES_2.4.15_27JAN2020), type:
cmake .. -DUSE_CIM_VERSION=CGMES_2.4.15_27JAN2020
make -j 4All available CIM versions are listed in the CMakeLists.txt
- After getting the Git repository, create a 
buildsubdirectory. - Run the Windows CMake (GUI)
 - Set the
- source code directory, e.g.: 
C:/git/libcimpp - build directory, e.g.: 
C:/git/libcimpp/build 
 - source code directory, e.g.: 
 - Click on 
Configureand choose the Visual Studio project version, e.g.:Visual Studio 15 2017 - Click on 
Finishand wait while CMake is configuring the project. - Click on 
Generateto generate the Visual Studio project files. - Click on 
Open Projectto open the project in Visual Studio. - In Visual Studio's main menu choose 
Build -> Build Solution. This will build thelibcimpplibrary. 
For information on how to use the library please see the cmake based example in examples/cmake. Building the example is just like building the library itself using cmake.
cmake .. -DCIMPP_BUILD_EXAMPLES=ON
make -j 4The make example is currently not supported due to the lack of an install target for arabica.
This project is released under the terms of the Apache License 2.0.