idom2-pas
an XML-Suite for object pascal
Here you can find informations on an open-source tools-collection for processing xml-documents with object pascal, based on an W3C.org compliant set of open-source interfaces.
Object Pascal is a high level language somewhere between Java
and C++
(easier than Java, nearly as safe as Java and nearly
as fast as C++).
There are commercial implemenatations for Linux and Windows from Borland (Borland offers free editions for open source development, too).
And there is the open source implementation FreePascal. You might be able to use it with this XML-suite, if you use the latest developer version of FreePascal, the last stable version (1.06) doesn't support interfaces.
Currently tested with D5, D6 and Kylix2.
Freepascal 1.1: work in progress
interfaces:
- provide an open source DOM2 Interface-Unit
- provide an open source SAX Interface-Unit
- create DOM2 extensions to use XSLT and XPATH
implementations:
- a wrapper for the MSXML DOM-Parser
- a dom implementation, based on the libxml2 xml library from Daniel Veillard
- a wrapper for the MSXML SAX implementation and a native pascal SAX-Parser are avaliable here
resources:
- Project info on sourceforge
- Download
- Installation
- Release Notes
- Using libxmldom
- Standart-compliance of libxmldom vs msxml 4.0
other dom implementations for object pascal:
- OpenXML DOM2-Parser (native pascal)
- Sablopas an xslt converter with dom1 interface and more based on sablotron
discussions:
- the newsgroup borland.public.delphi.xml
- the mailinglist idom2-pas-interest
related links:
- DOM2 reference with examples
- Benefits of using SAX
- Benefits of using DOM2 based on libxml2
- the home of the libxml2 library, written in C, on which libxmldom is based
- libxml2 for pascal: header-translations for libxml2 and libxslt
They are included in the code of the idom2-pas package, but you may find newer versions using this link.
credits:
- Daniel Veillard (base libraries)
- Petr Kozelka (header translations and more)
- Igor Zlatkovic (windows binaries)
- Uwe Fechner (header translations and original dom-wrapper)
- Martin Brinkers (original interface translation and more)
- Jan Kubatzki (XP-Tests)
- Thomas Freudenberg (code review and partial redesign)
- Kasimier Buchcik (code review)
- many others, who helped out with code and ideas
to do:
- publish idom2-beta2, based on current cvs-version
- create a version of xmlGetHashEntry, that uses api functions only
- create a version of libxmldom, that works with TXMLDocument correctly
- improve the speed of cloneNode/ importNode
- implement the sax interface
- add schema verification
- create a clx-based version of dom2demo
enhancements of idom2-beta2 (current cvs version)
- implemented IDomParseError
- some namespace related bug fixes
- adapted xmlGetHashEntry to libxml-2.4.23
- parsing with "preserveWhitespace=false" works correctly now
(removes all textnodes, that contain whitespace only)
suggestions to:
ufechner@sk28.de
last updated: 30.08.2002
|