Update Information
Subscribe to the NativeXml newsletter and stay informed!
NativeXml: A native Delphi XML parser and writer Added: 28Sep2002
Updated: 03Feb2010
Current version: 3.06
Open-Source version: 3.06
Languages: Delphi (2 - 7, 2001 - 2010 Win32 and .NET), Kylix, C++ Builder
This software component contains a small-footprint Object Pascal (Delphi) XML implementation
that allows to read and write XML documents. You basically only need one
unit and you can simply add it to the "uses" clause.
You can use this software to read XML documents from files, streams or
strings. The load routine generates events that can be used to display
load progress on the fly. You can also use it to create and save XML documents.
Open-Source!
NativeXml is currently open-sourced. However, the zipped software is protected by a password in order to fend
off access by automated scripts, see below for more info. The software package contains:
NativeXml.pas
This Pascal source file contains the complete XML
functionality. Versions are included for Delphi2 all the way thru
Delphi 2010!
When you purchase, you are entitled
to premium support through the forum and/or email. So please state your name
and registration code in email.
Additionals
Source files "NativeXmlObjectStorage.pas" and
"NativeXmlAppend.pas", which provide object persistance.These
Pascal source files contain the complete XML functionality.
readme.txt
Information about the package.
NativeXml.pdf
Document with description of object structure,
properties, methods and types. It also contains 4 examples.
Examples
These folders contain many example applications. The
first one is a very simpe example showing the basics, the second example
shows a complete GUI application that can be used to browse XML Documents.
The 3rd shows how to load/save records to/from XML, the 4th shows
how to append XML nodes to the end of an XML file that remains on
disk.
Full source included in the examples!
Features
Read XML directly from string, stream or file
with fast parser (1Mb/sec on 1.5GHz P3), writes to string, stream and
file even faster.
Import of all common tags, including comments, CDATA, XML declarations
and stylesheets.
Load from streaming media is supported; you can set up events
to work with the node data while it comes in. See example 1. No need
to keep the whole XML document in memory! Works well for huge documents.
This is the SAX-like approach.
Save to file, string or stream in readable or compact format.
Readable format will add linefeeds and indents to make the file readable
in a text editor. Compact format sticks to the Xml specification and
adds minimal control characters.
Directly add blobs or streams in the XML file, they will be
encoded as Binhex or Base64 (but you don't have to worry about that).
Many native Delphi types can be stored directly to the nodes,
making this code very suitable to use while writing storage methods.
Store and load boolean, single, double, word, integer, string, TFont,
TColor, TPen, TBrush, TDateTime. You don't have to worry about escaping
the strings; this is done automatically.
Loads and saves ANSI, UTF-8 as well as Unicode (UTF-16)
documents and implements proper conversion warnings. Recognises streams
even without byte order marks. NativeXml works internally with UTF8
encoded strings to preserve extended characters, and supports widestrings.
Unique feature: Add XML nodes to a file that exists on disk
without reading the complete file! The additional unit XmlAppends will
search from the end of the (possibly huge) file on disk and append node
data there directly. See Example 4.
Unique
feature: Store, read and create any TPersistent object to/from XML
directly (see Example5). This is done by iterating through all of the
objects' published properties by use of RTTI (runtime type information).
This feature is only available for D5 and up.
Download
By downloading the package you must agree to the terms stated in the
license file. Rightclick and use Save As...
Full installer and uninstaller (916KB).
The installer will put all files in the right place so that you can
directly compile. Download password is "e c r u o s n e p o", without spaces and reversed.
Purchase
You can purchase this software at the cost of € 29,95 through our
website. When you purchase you will get:
Five years of free upgrades to the latest version (download link). Bugfixes and beta releases are more
frequent than the "Open Source" version.
Full rights to use NativeXml in your software (single developer or company site license).
Support through the forum or by email for all your questions related to the software
package (please state your Order ID). SimDesign is also available for
consulting with your XML projects. Support is only available for our paying customers.
Full Source
Single Developer Price: € 29.95
(includes paypal)
If you want to purchase then please use our secure
order form at Regsoft or ShareIt.
As soon as your order is processed, you will get a link to the source,
where you can immediately download it. It includes the files stated
above, and the license allows unlimited use in your software.
If you want to use any other form of payment then please contact
us.
Full Source Company Site License
Price: € 99.00
For a competitively priced company site license (unlimited users
within a company's physical site), please click
here, or contact us
for a purchase order.
You're advised to use this option if your company has or will
have 4 or more developers
This product is optionally available on CD-rom. If you want to
order a CD-rom with your purchase, please check the box in Regsoft's order
form. Registered customers will also receive update information and can
always download the most actual version.
Screenshot
This is a screenshot of the example application. The editor comes with
full source, and
shows how to use NativeXml to create XML content and how to use the parsed
data. You can also directly use the editor to edit your XML files if you
like, download it here.
Customers comments
Here are a few samples of what customers have to say about NativeXml:
This is the most functional and easy-to-use
API for XML that I have come across for Delphi! Congratulations for
all your efforts... Christian Boxer
Your component is absolutely perfect! Milan Kunes - Milk Computers S.R.O.
..really good work, nice to use and IMHO
super-clean... Philipp Reif - S&U Software GmbH
Just a quick note to say thank you for
NativeXml: it is truly awesome! Keith Blows - ETA Audiovisual (Pty) Ltd
Your NativeXml has been great for
me. A huge time saver. Plus your support and responsiveness has been
awesome. Ms. J. Lyle Martin - Integic Corp. USA
Thanks and congratulations on a good
product Paul Heffernan
Thank you very much for your effort and extremely quick response! Tor Erik Dahlsrud- Hoglund Marine Automation
Amazing Component, Amazing Support. Using
the NativeXml unit and the great support from SimDesign I was able
to achieve in minutes what I had taken me hours with other XML components Phillip Herries
Your unit works great. I've got almost the complete
app converted to use it and everything seems to be working great. Fick van Deventer
Related Links
VirtualTreeview
component
This component implements a virtual tree that can be used to show information
in tree-form. Written by Mike Lischke. This component comes as third party
tool with Delphi7. For Delphi6 and before, please see above link.