You are viewing an old version of this page. View the current version.

Compare with Current View Page History

Version 1 Next »

1.1. xml-fortran

https://xml-fortran.sourceforge.net/
- latest update in 2012

1.1.1.1.1. Features:

    - reading the files in much the same way as an ordinary text file - a stream-oriented method
    - directly reading the contents into a data structure that reflects the structure of the XML file
    - constructing a tree of data from the XML file with essentially the same structure
    - processing the contents using "events", in much the same way as the original Expat library
    - supports a wide set of Fortran compilers, e.g. f90, lf95, ifort, gfortran
    - SAX, DOM processing

1.1.1.1.2. Limitations:

    - the lines in the XML-file should not exceed 1000 characters 
    - there is no support for DTDs or namespaces, XSLT, XPath and other more advanced features around XML
    - there is currently no support for the object-oriented approach 
    - no support (yet) for a single quote as delimiter
    - no support (yet) for conversion of escape sequences (&gt. for instance)
    - the parser may not handle malformed XML-files properly
    - the parser does not (yet) handle different line-endings properly 



1.2. Foxy

https://github.com/Fortran-FOSS-Programmers/FoXy
- latest update in 2022

1.2.1.1.1. Features:

    - pure Fortran library
    - Fortran 2008+ compliant
    - OOP designed
    - free, open source
    - parallel architectures supported
    - compiler support: gfortran, ifort



1.3. xmlf90

https://github.com/rscircus/xmlf90
- latest update in 2014
- very detailed documentation: https://github.com/rscircus/xmlf90/blob/master/Tutorial/UserGuide.pdf

1.3.1.1.1. Features:

    - pure Fortran library
    - can detect badly formed documents, giving by default an error report including the line and column where it happened; it also will accept an `error_handler` routine for finer control by the user
    - attribute values can be specified using both single and double quotes

1.3.1.1.2. Limitations:

    - it is not a validating parser
    - accepts only single-byte encodings for characters
    - limits on the length of element and attribute identifiers, and the length of attribute values and unbroken (i.e., without whitespace) PCDATA sections, MAX_BUFF_SIZE=300 
    - overly long comments and SGML declarations can be truncated
    - the number of attributes is limited to 20 



1.4. Fox

https://github.com/andreww/fox
- latest update in 2021

1.4.1.1.1. Features:

    - derived from xmlf90
    - possibility to install only selected modules of the library
    - compiler support: f95



1.5. tixi

https://github.com/DLR-SC/tixi
- latest update in 2022 
- usage examples: https://github.com/DLR-SC/tixi/wiki/TIXIUserGuide https://github.com/DLR-SC/tixi/wiki/Fortran%20Examples

1.5.1.1.1. Features:

    - written in C/C++
    - interfaces and wrappers for C++, Fortran, Python, JAVA and Matlab
    - creating documents 
    - creating and deleting nodes
    - adding add and remove element attributes
    - reading and writing simple and specialized nodes, aggregating these simple types,
    - processing of geometric data,
    - reading and writing of multidimensional arrays or arrays of vectors, i.e. coordinates of points

  • No labels