Overview
Examples
Screenshots
Comparisons
Applications
Download
Documentation
Tutorials
Bazaar
Status & Roadmap
FAQ
Authors & License
Forums
Funding Ultimate++
Search on this site
Search in forums












SourceForge.net Logo
Home » Community » PR, media coverage, articles and documentation » U++ connection with other tools...
Re: U++ connection with other tools... [message #4287 is a reply to message #4286] Mon, 31 July 2006 15:05 Go to previous messageGo to previous message
mirek is currently offline  mirek
Messages: 13976
Registered: November 2005
Ultimate Member
Ptomaine wrote on Mon, 31 July 2006 08:52

Hello Mirek.

Please, take a careful look at the LibXml2 (http://www.xmlsoft.org) library to wrap it into C++ classes. Carefully read the main page that describes what libxml2 supports. Many developers consider libxml2 as powerful as Microsoft XML (especially its streaming API). XPath, XInclude, XSLT and schemas support is the functionality that the real XML system must support and that is the functionality that makes sense to use XML itself. The power of XML is not that of storing one more structured text file. We have a lot of structured formats and we can invent even more. The power of XML is that it is the standard and a complicated structured data can be easily retrieved with some rules (XPath), verified to rely on (Schemas, DTD), combined from several xml files (XInclude), transformed (XSLT) and so on. The XML is not just one more text file as many people used to think about and it is not just a configuration file (it resembles shooting the fly from a bazooka Smile. It is more more useful. The Expat library can not be treated as a powerful xml system because it does not have that power of libxml2. The Expat library is just a parser but libxml2 is much more then just a parser - it's the XML system.

LibXml2 has its own libxml2++ wrapper classes but they tightly depend on GNOME glib because of UTF8 support. It's worth to write the own C++ wrapper classes, I think.

BTW, libxml2 considers libiconv (to convert charsets into its own inner UTF8 format). Anyway, without libiconv libxml2 can work with only UTF8 and some latin charsets xml files. Mirek, you can include libiconv into the project (its just 4 files to compile) and write one C++ wrapper class to handle conversions.

Mirek, if you do not mind, I have my code to wrap libxml2 basic functionality and to wrap libiconv conversion function. I can email you that code to analize and maybe it'll be useful for you to take a decision. What do you say?


I will try to put it plain. I have no problems with using tools like libxml2. However, right at this very moment, we cannot afford investing time to properly integrating something as complex as libxml2 is. (I would be happy if we are able to develop everything that is planned for winter release of U++).

OTOH, I see no problem in adapting libxml2 as plugin library and even distributing it with U++ (well, but somebody should tell me whether MIT license is BSD-like).

But, there is Charset.h in Core. Please try to tell me what if that is what libiconv does...

Mirek
 
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Previous Topic: Materials for articles: "U++ Core comparison to BOOST"
Next Topic: What about NTL could be added to wikipedia's STL?
Goto Forum:
  


Current Time: Fri May 10 11:37:43 CEST 2024

Total time taken to generate the page: 0.01300 seconds