Skip to content
master
Go to file
Code

Latest commit

 

Git stats

Files

Permalink
Failed to load latest commit information.
Type
Name
Latest commit message
Commit time
 
 
gen
 
 
src
 
 
vs
 
 
xml
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

README.md

Hexml Hackage version Stackage version Linux build status Windows build status

An XML DOM-style parser, that only parses a subset of XML, but is designed to be fast. In particular:

  • Entities, e.g. &, are not expanded.
  • Not all the validity conditions are checked.
  • No support for <!DOCTYPE related features.

The name "hexml" is a combination of "Hex" (a curse) and "XML". The "X" should not be capitalised because the parser is more curse and less XML.

Hexml may be suitable if you want to quickly parse XML, from known sources, and a full XML parser has been shown to be a bottleneck. As an alternative to hexml, which supports things like entities but is still pretty fast, see Pugixml (with a Haskell binding - but be aware the Haskell binding can segfault).

Hexml is tested with AFL.

If you want lenses for Hexml, see hexml-lens.

The optimisation work around Hexml spawned Xeno, a Haskell-only alternative to Hexml. There is a talk covering the performance tricks of Hexml and Xeno.

You can’t perform that action at this time.