I am happy to announce that NativeXml 3.25 is available for download. This "Open-Source" version has a very unrestrictive license so anyone should be able to download and use it.
Compatible with: Delphi 5 - Delphi XE, FreePascal
Latest changes:
Version 3.25 (03mar2011) * enhanced function sdEscapeString (contributor: Michael Cessna) ! Fixed function sdReplaceString (new implementation) + Added Test16 to verify sdEscapeString and sdReplaceString
Version 3.24 (24feb2011) + Added function TCustomXml.InsertDocType to hide the complexity of inserting a TsdDocType manually ! fixed small leak in class TsdDocType + Added Test15 to diagnose TCustomXml.InsertDocType ! fixed major bug where parser does not use ansi + 65001 codepage but really utf8, so the writer also uses utf8 (and added Test14 to check) * Added speed comparison between old TNativeXml and new TNativeXml: new TNativeXml is ca 3 times faster than old. + TNativeXmlObjectStorage: Added storage of TCollectionItem and removed some "with" statements and replaced some raise statements by DoDebugOut * Tested successfully with D5, D7 and DXE
Version 3.23 (13feb2011) * Reimplemented TXmlNode.IsEqualTo + Added Test12 (to check IsEqualTo) + Added D5 compatibility (through sdDebug.pas) + Option "FixStructuralErrors" is functional: With this option you can fix the structure in HTML files (eg a <meta> tag without closing tag).
Here is a modified version of RegXML (http://sourceforge.net/projects/regxml), a delphi library that simulate delphi TRegistry class using xml. Unlike the original code which depend on libxmldom/MSXML, NativeRegXML and NativeRegIniXML were using NativeXML to provide required XML processing functionality so by natural behaviour of NativeXML, it does not require any external libraries such as libxml.dll, iconv.dll, etc. You will need to download original regxml library if you need a demonstration of how this library works.