Join GitHub today
GitHub is home to over 28 million developers working together to host and review code, manage projects, and build software together.Sign up
dom4j: the flexible XML framework for Java
Welcome to dom4j!
dom4j is an easy to use, open source library for working with XML, XPath and XSLT on the Java platform using the Java Collections Framework and with full support for DOM, SAX and JAXP.
- dom4j 1.6 has been released! Take a look at the Old Changelog to see what has changed.
- JetBrains was so kind to provide an open-source license of its famous IntelliJ IDEA product.
- The internal Aelfred2 parser has been removed from the dom4j codebase due to an incompatible license. You can download a version of dom4j without Aelfred2 from the downloads page.
- A maintenance relase of dom4j is available. Click Old Changelog to see what has changed in dom4j 1.5.1.
- dom4j 1.5 is finally released! A list of changes can be found Old Changelog.
- dom4j now has an open source license for the use of Clover
- RefactorIT has added dom4j to it's list of featured open source projects. This means that all the power of RefactorIT is available for the dom4j sources.
- The new dom4j 1.4 release is finally out featuring numerous bug fixes and patches.
- Check out these new Performance Benchmarks comparing dom4j and Jaxen against Xerces and Xalan.
- The new dom4j 1.3 release is out featuring numerous bug fixes and patches.
- Check out Dennis Sosnoski's new article for IBM comparing various XML object models - its good stuff.
- The new dom4j 1.2 release is out featuring improved whitespace handling for more efficient parsing, a new Swing TableModel for displaying XML data in Swing and numerous bug fixes and patches.
- The Velocity projects new DVSL technology uses dom4j.
- Interesting article outlining the social dominance of DOM and SAX and the importance of XPath.
- The new dom4j 1.1 release is out featuring support for DTD declarations and numerous bug fixes and patches.
- Read the latest performance benchmarks on IBM's site comparing dom4j against all the other XML document models.
- The new dom4j 1.0 release is out featuring better SAX and Jaxen support, some performance tuning and numerous patches.
- Sun's reference implementation of JAXM (Java API for XML Messaging) is based on dom4j!
- The new dom4j 0.9 release is out featuring full Jaxen support!
- Toby's Cookbook is now online!
- Updated the Quick Start Guide
- designed for the Java platform with full support for the Java Collections Framework (Java 2 Collections)
- full support for JAXP, TrAX, SAX, DOM, and XSLT
- fully integrated XPath support for easy navigation of XML documents
- event based proccessing mode to support for massive documents or XML streams
- based on Java interfaces for flexible plug and play implementations.
- support for XML Schema Data Type support using Kohsuke Kawaguchi's excellent Multi Schema Validator library
You can download the current release or a snapshot build via the Download page.
To see how dom4j compares to other XML object models you could try reading our Comparison.
We really like XPath and if you are working with XML we highly recommend you try to experiment with it. If you need help learning XPath try the excellent Zvon tutorial.
Alternatively you could try Elliotte Rusty Harold's great XML in a nutshell.
Finally you could try reading the XPath spec.
For developers there is an email list at dom4j-dev. where you can make requests for new features or changes to the API, discuss alternate implementation strategies, submit patches or just talk about any relevant topic of the day.
For dom4j users wanting help using dom4j there is an email list at dom4j-user where you can share ideas and experiences, ask for help, give us feedback or discuss your requirements.