# PXP Reference

PXP is an XML parser for O'Caml. It represents the parsed document either as tree or as stream of events. In tree mode, it is possible to validate the XML document against a DTD.

The acronym PXP means Polymorphic XML Parser. This name reflects the ability to create XML trees with polymorphic type parameters.

## Introduction

- `Intro_getting_started`: Getting started, and a list of recipes
- `Intro_trees`: The structure of document trees
- `Intro_extensions`: Node extensions
- `Intro_events`: XML data as stream of events (also pull parsing)
- `Intro_namespaces`: Namespaces
- `Intro_resolution`: Resolving entity ID's
- `Intro_preprocessor`: The PXP preprocessor
- `Intro_advanced`: Advanced topics
- `Example_readme`: A code example explained: The `readme` processor

## Reference

Pxp_types |
Pxp_document |
Pxp_dtd | DTD objects
Pxp_tree_parser | Calling the parser in tree mode
Pxp_ev_parser | Calling the parser in event mode
Pxp_dtd_parser | Calling the parser to read DTDs
Pxp_event | Dealing with events (for pull parsing)
Pxp_codewriter | Generate O'Caml code for creating large constant XML trees
Pxp_marshal |
Pxp_reader |
Pxp_core_types | This module is for internal use of PXP only.
Pxp_yacc |

## Index

- Index of types
- Index of exceptions
- Index of values
- Index of class methods
- Index of classes
- Index of class types
- Index of modules
- Index of module types

## Authors

PXP has been written by Gerd Stolpmann; it contains contributions by Claudio Sacerdoti Coen. You may copy it as you like, you may use it even for commercial purposes as long as the license conditions are respected, see the file LICENSE coming with the distribution. It allows almost everything.

Thanks also to Alain Frisch and Haruo Hosoya for discussions and bug reports.