xmlbeansxx
   HOME

TheInfoList



OR:

xmlbeansxx is a software framework for
C++ C++ (pronounced "C plus plus") is a high-level general-purpose programming language created by Danish computer scientist Bjarne Stroustrup as an extension of the C programming language, or "C with Classes". The language has expanded significan ...
to XML binding. It is
open-source software Open-source software (OSS) is computer software that is released under a license in which the copyright holder grants users the rights to use, study, change, and distribute the software and its source code to anyone and for any purpose. Op ...
licensed under Apache License 2.0.


Description

xmlbeansxx is a tool allowing access to
XML Extensible Markup Language (XML) is a markup language and file format for storing, transmitting, and reconstructing arbitrary data. It defines a set of rules for encoding documents in a format that is both human-readable and machine-readable ...
in a C++ friendly way. It is similar to, and inspired by, the Apache
XMLBeans XMLBeans is a Java-to- XML binding framework which is part of the Apache Software Foundation XML project. Description XMLBeans is a tool that allows access to the full power of XML in a Java friendly way. The idea is to take advantage of the richn ...
project. Similarly to XMLBeans, xmlbeansxx provide an
XML Schema Definition XSD (XML Schema Definition), a recommendation of the World Wide Web Consortium (W3C), specifies how to formally describe the elements in an Extensible Markup Language (XML) document. It can be used by programmers to verify each piece of item cont ...
(XSD) instance to C++ code generator. The generated code can be later invoked to access XML instance document data.


Example

Given an example of a simple XML Schema Definition describing a purchase order, as shown in examples from Apache XMLBeans distribution package, the following code handles printing of items from easypo.xml file: #include "EasyPO.h" #include #include using namespace std; using namespace xmlbeansxx; using namespace xmlbeansxx::samples::enumeration::schemaenum::easypo; int main()


History

The xmlbeansxx project begun in 2004 as an effort to implement a part of Apache XMLBeans in C++. The project goal was to create an XML binding tool, based on an open source license, for use in commercial projects. It has been used successfully at TouK company in a few commercial projects. xmlbeansxx evolved over the years to fulfill ongoing requirements, so it changed a lot from the initial version. The project, named xmlbeanscxx, was submitted to The
Apache Incubator Apache Incubator is the gateway for open-source projects intended to become fully fledged Apache Software Foundation projects. The Incubator project was created in October 2002 to provide an entry path to the Apache Software Foundation for projec ...
in 2005. However it didn't receive much development effort, mainly because one of the supporting companies decided to change their objectives and quit. The project is still in development at TouK company, the initial contributor.


Supported compilers

Initially xmlbeansxx was supported on the
GNU Compiler Collection The GNU Compiler Collection (GCC) is an optimizing compiler produced by the GNU Project supporting various programming languages, hardware architectures and operating systems. The Free Software Foundation (FSF) distributes GCC as free softwar ...
. As of 2008, version 0.9.1 also supported Microsoft Visual Studio compiler. This was done using
CMake In software development, CMake is cross-platform free and open-source software for build automation, testing, packaging and installation of software by using a compiler-independent method. CMake is not a build system itself; it generates an ...
multiplatform build tool.


See also

* Apache
XMLBeans XMLBeans is a Java-to- XML binding framework which is part of the Apache Software Foundation XML project. Description XMLBeans is a tool that allows access to the full power of XML in a Java friendly way. The idea is to take advantage of the richn ...
*
XML data binding XML data binding refers to a means of representing information in an XML document as a business object in computer memory. This allows applications to access the data in the XML from the object rather than using the DOM or SAX to retrieve the da ...


External links

* {{Official website, https://github.com/TouK
XMLBeansxx Sourceforge Download Page

Project submitted to Apache Incubator as xmlbeanscxx

TouK company homepage

Sourceforge page

Github page
Free software programmed in C++