/woodstox

The gold standard Stax XML API implementation. Now at Github.

Primary LanguageJavaApache License 2.0Apache-2.0

Overview

The gold standard Stax XML "pull" API (javax.xml.stream) implementation.

Since version 4.0, Woodstox also implements SAX API for event-based XML processing.

Most if not all popular Java XML web service frameworks use either Stax or SAX API for XML processing: this means that Woodstox can be used with the most popular Java frameworks.

For longer overview, here are some options for more reading:

But in general usage follows standard Stax or SAX API usage.

Status

Type Status
Build (CI) Build (github)
Artifact Maven Central
OSS Sponsorship Tidelift
Javadocs Javadoc
Code coverage (7.x) codecov.io
OpenSSF Score OpenSSF Scorecard

Get it!

Maven

The most common way is to use Maven (or Ivy) to access it from Maven Central repository. Coordinates for this are:

  • Group id: com.fasterxml.woodstox
  • Artifact id: woodstox-core
  • Latest published version: 7.0.0 (2024-06-21)

Note that Maven id has changed since Woodstox 4.x but API is still compatible (despite nominal major version upgrade -- major version upgrades in this case were only due to package coordinate changes)

Requirements

Woodstox 7 and above require Java 8; Woodstox 5 and above require Java 6 (JDK 1.6). All versions also require Stax API that is included in JDK (since Java 6). The only other mandatory dependency is Stax2 API, extended API implemented by Woodstox and some other Stax implementations (like Aalto.

Optional dependency is Multi-Schema Validator (MSV) that is needed if using XML Schema or RelaxNG validation functionality

License

Woodstox 4.x and above licensed under Apache 2 license.

Documentation etc

Configuration

Most configuration is handled using standard Stax mechanism, property access via

  • XMLInputFactory.setProperty(propertyName, value) for configuring XML reading aspects
  • XMLOutputFactory.setProperty(propertyName, value) for configuring XML writing aspects

Names of properties available, including standard Stax 1.x ones, are documented in a series of blog posts:

Support

Community support

Woodstox is supported by the community via the mailing list: woodstox-user

Enterprise support

Available as part of the Tidelift Subscription.

The maintainers of woodstox and thousands of other packages are working with Tidelift to deliver commercial support and maintenance for the open source dependencies you use to build your applications. Save time, reduce risk, and improve code health, while paying the maintainers of the exact dependencies you use. Learn more.

Contributing

For simple bug reports and fixes, and feature requests, please simply use projects Issue Tracker, with exception of security-related issues for which we recommend filing a Tidelift security contact (NOTE: you do NOT have to be a subscriber to do this).

Other