The XMLBench Project: Comparison of Fast, Multi-platform XML libraries

  • Suren Chilingaryan
Part of the Lecture Notes in Computer Science book series (LNCS, volume 5667)

Abstract

The XML technologies have brought a lot of new ideas and abilities in the field of information management systems. Nowadays, XML is used almost everywhere: from small configuration files to multi-gigabyte archives of measurements. Many network services are using XML as transport protocol. XML based applications are utilizing multiple XML technologies to simplify software development: DOM is used to create and navigate XML documents, XSD schema is used to check consistency and validity, XSL simplifies transformation between different formats, XML Encryption and Signature establishes secure and trustworthy way of information exchange and storage. These technologies are provided by multiple commercial and open source libraries which are significantly varied in features and performance. Moreover, some libraries are optimized to certain tasks and, therefore, the actual library performance could significantly vary depending on the type of data processed. XMLBench project was started to provide comprehensive comparison of available XML toolkits in their functionality and ability to sustain required performance. The main target was fast C and C++ libraries able to work on multiple platforms. The applied tests compare different aspects of XML processing and are run on few auto-generated data sets emulating library usage for different tasks.

The details of test setup and achieved results will be presented.

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. 1.
    W3C: Document object model (2000), http://www.w3.org/TR/DOM-Level-2-Core/
  2. 2.
    Megginson, D.: Simple api for xml (sax) (2004), http://www.saxproject.org
  3. 3.
    W3C: Extensible markup language (xml) 1.0 (2008), http://www.w3.org/TR/REC-xml
  4. 4.
    W3C: Xml schema part 0: Primer (2004), http://www.w3.org/TR/xmlschema-0/
  5. 5.
    OASIS: Relax ng, iso/iec 19757-2:2003 (2001), http://www.oasis-open.org/committees/relax-ng/spec-20011203.html
  6. 6.
    W3C: Xml encryption syntax and processing (2002), http://www.w3.org/TR/xmlenc-core/
  7. 7.
    W3C: Xml signature syntax and processing (2008), http://www.w3.org/TR/xmldsig-core/
  8. 8.
    W3C: Xml path language (xpath) (1999), http://www.w3.org/TR/xpath
  9. 9.
    W3C: Xquery 1.0: An xml query language (2007), http://www.w3.org/TR/xquery/
  10. 10.
    W3C: Xsl transformations (1999), http://www.w3.org/TR/xslt
  11. 11.
    W3C: Soap version 1.2 part 0: Primer (2003), http://www.w3.org/TR/2003/REC-soap12-part0-20030624/
  12. 12.
    OPC Foundation: Opc xmlda 1.01 specification (2004), http://opcfoundation.org
  13. 13.
    Mlynkova, I.: Xml benchmarking: Limitations and opportunities. Technical report, Charles University, Prague, Czech Republic (2008), http://www.ksi.mff.cuni.cz/~mlynkova/doc/tr2008-1.pdf
  14. 14.
    Farwick, M., Hafner, M.: Xml parser benchmarks (2007), http://www.xml.com/pub/a/2007/05/16/xml-parser-benchmarks-part-2.html
  15. 15.
    Sosnoski, D.: Xmlbench document model benchmark (2002), http://www.sosnoski.com/opensrc/xmlbench/index.html
  16. 16.
  17. 17.
    Expat Team: The expat xml parser (2007), http://expat.sourceforge.net
  18. 18.
    Ginger Alliance: Sablotron: Xslt, dom and xpath processor (2006), http://www.gingerall.org/sablotron.html
  19. 19.
    Higgins, J.: Arabica xml and html processing toolkit (2008), http://www.jezuk.co.uk/arabica
  20. 20.
    Apache Foundation: Apache xerces (2008), http://xerces.apache.org
  21. 21.
    Apache Foundation: Apache xalan-c (2007), http://xml.apache.org/xalan-c/
  22. 22.
    Apache Foundation: Apache xalan-j (2007), http://xml.apache.org/xalan-j/
  23. 23.
    Apache Foundation: Apache axis (2008), http://ws.apache.org/axis2/
  24. 24.
    Apache Foundation: Apache xml security (2007), http://santuario.apache.org
  25. 25.
    Apache Foundation: Apache fop (formating objects processor) (2008), http://projects.apache.org/projects/fop.html
  26. 26.
    XQilla Team: Xqilla (2009), http://xqilla.sourceforge.net
  27. 27.
    Veillard, D.: The xml c parser and toolkit of gnome (2009), http://xmlsoft.org
  28. 28.
    Sanin, A.: Xmlsec library (2007), http://www.aleksey.com/xmlsec/
  29. 29.
    Casarini, P.: Gnome dom engine (2003), http://gdome2.cs.unibo.it
  30. 30.
    Ayaz, F.: Client/server soap library in pure c (2006), http://csoap.sourceforge.net
  31. 31.
    XMLroff Team: Xmlroff xsl formatter (2008), http://xmlroff.org
  32. 32.
    QT Software: Qt cross-platform application and ui framework (2009), http://www.qtsoftware.com
  33. 33.
  34. 34.
    Oracle: Oracle xml developer kit 10g (2006), http://www.oracle.com/technology/tech/xml/xdkhome.html
  35. 35.
    W3C: Resource description framework (2004), http://www.w3.org/TR/rdf-syntax-grammar/
  36. 36.
    Schmidt, A.R., Waas, F., Kersten, M.L., Carey, M.J., Manolescu, I., Busse, R.: Xmark: A benchmark for xml data management. In: Proc. of Int. Conf. on Very Large Databases (VLDB), Hong Kong, China, pp. 974–985 (2002), http://www.xml-benchmark.org
  37. 37.
    Kerbiquet, M.: Asmxml (2008), http://mkerbiquet.free.fr/asm-xml/
  38. 38.
    Letz, S., Zedler, M., Thierer, T., Schuetz, M., Roth, J., Seiffert, R.: Xml offload and acceleration with cell broadband engine. In: Proc. of XTech 2006, Amsterdam, Netherlands (2006), http://xtech06.usefulinc.com/schedule/paper/27

Copyright information

© Springer-Verlag Berlin Heidelberg 2009

Authors and Affiliations

  • Suren Chilingaryan
    • 1
  1. 1.Forschungszentrum KarlsruheEggenstein-LeopoldshafenGermany

Personalised recommendations