Skip to content
Fast and simple XML interface library
Branch: master
Clone or download
Type Name Latest commit message Commit time
Failed to load latest commit information.
doc Improved documentation May 7, 2015
examples Install system libs only for "Runtime" component Dec 1, 2018
tests Fixed tixi.config file to export proper targets of dependencies Nov 28, 2018
Changelog Bumped version to 3.0.3 and added changelog Dec 1, 2018
Makefile Added configure and main Makefile for better user building. Oct 8, 2012 Added installation hints to readme Nov 22, 2018
configure Added eclipse project settings. Oct 8, 2012


  • Linux/macOS: Build Status
  • Windows: Build status




TiXI is a fast and simple XML interface library and could be used from applications written in C, C++, Fortran, JAVA and Python. The library can be directly integrated into a code by third party software or can be used by users who don't want to deal with the complexity of XML when creating a new application. Although simplified and somewhat restricted compared to a full-fledged XML processing library the user can, for example, create documents, create and delete nodes, and add and remove element attributes. Routines to read and write simple text nodes and additionally specialized nodes holding integer and floating point numbers are part of this API. Furthermore, routines to process aggregates of these simple types have been implemented. For the processing of geometric data, reading and writing of multidimensional arrays or arrays of vectors, i.e. coordinates of points are supported. The library has been designed to hide the implementation details so that the underlying XML library, currently libxml2, can be replaced by another one without changing the XML processing API in the applications.

Reading a text attribute could be as easy as:

tixiGetTextAttribute( handle, elementPath, attributeName, &attributeValue );

Getting a double value would look like this:

tixiGetDoubleElement( handle, elementPath, &x );

Multi Language Support

The TIXI library is written in C, but there are interfaces and wrappers for C++, Fortran, Python, JAVA and Matlab. Take a look at our examples for C and Fortran.

You can’t perform that action at this time.
You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session.