Xmlm
Xmlm is an OCaml module providing streaming XML input/output. It aims at making XML processing robust and painless. The streaming interface can process documents without building an in-memory representation. It lets the programmer translate its data structures to XML documents and vice-versa. Functions are provided to easily transform arborescent data structures to/from XML documents.
Xmlm is made of a single, independent, module and distributed under the new BSD license.
There are other alternatives to process XML in OCaml.