ximol/readme_main.hpp

Go to the documentation of this file.
00001 /** \mainpage The XiMoL Library
00002 
00003 \section intro Introduction
00004 
00005 <p>
00006 XiMoL is a C++ API for XML data-binding, i.e., put in plain english, 
00007 a library to write and read XML
00008 documents to and from C++ structures. It complies to a double
00009 standard: the XML 1.0 standard and the C++ standard, more specifically
00010 to the STL iostream specification. This double filiation will hopefully
00011 fill a gap that
00012 a lot of experienced C++ programmers have probably suffered from as
00013 much as the author did.
00014 XiMoL is also a paradigm shift from the DOM and SAX approach. If DOM
00015 can be seen as a "whole document" approach and SAX as a "per element"
00016 approach, XiMoL is in between, a sort of object-oriented approach to
00017 XML treatment, with all the wealth of expressiveness that comes with it.
00018 With SAX, it shares the property that code must be
00019 written to read-in the XML document and that XiMoL is not a validating
00020 processing of the document. At least not out of the box. But
00021 contrarily to SAX, it allows validation to be written and contrarily to
00022 DOM, it allows partial validation of a document. For all these reasons,
00023 XiMoL
00024 is more than a C++ library, or for what it is, any particular computer
00025 language. It is a new approach to XML treatment.
00026 XiMoL can also be described rather accurately as an XML serialization
00027 library where a dedicated XML stream is written to and read from.
00028 XiMoL brings you all the power of XML with all the power of the
00029 STL iostreams.
00030 By the way, XiMoL is more XML compliant than Microsoft Internet
00031 Explorer is at the moment. Want to get to know more: come in, young
00032 man, don't be shy !
00033 </p>
00034 
00035 XiMoL is an XML reader/writer (non-validating) library written in C++. 
00036 It is a iostream-oriented library based on the STL and not a SAX or DOM library (like Xerces, ...). 
00037 Each object has its own reader/writer (operator<< and operator>>). 
00038 
00039   Main points:
00040   - XiMoL is not really a DOM or a SAX,
00041   - We use the STL (iostream (\ref ios)) for the interface and the encoding method (std::facet),
00042   - Characters are converted by libiconv,
00043   - XiMoL is adapted for the databinding.
00044 
00045 \subsection download Download
00046 See the page \ref cvs if you want the current version. 
00047 You could download the latest release on 
00048 <A HREF="http://sourceforge.net/project/showfiles.php?group_id=63115">the sourceforge page</A>.
00049 
00050 */
00051 


Donate to the XiMoL project SourceForge.net Logo If you have any questions about XiMoL, you could write to tournois@users.sourceforge.net.