A general purpose Haskell XML library using Expat to do its parsing