This package browser is in early development. Mind the rough edges.


Simple XML parser implemented in Common Lisp

S-XML is a simple XML parser implemented in Common Lisp. This XML parser implementation has the following features:

  • It works (handling many common XML usages).

  • It is very small (the core is about 700 lines of code, including comments and whitespace).

  • It has a core API that is simple, efficient and pure functional, much like that from SSAX (see also

  • It supports different DOM models: an XSML-based one, an LXML-based one and a classic xml-element struct based one.

  • It is reasonably time and space efficient (internally avoiding garbage generatation as much as possible).

  • It does support CDATA.

  • It should support the same character sets as your Common Lisp implementation.

  • It does support XML name spaces.

This XML parser implementation has the following limitations:

  • It does not support any special tags (like processing instructions).

  • It is not validating, even skips DTD's all together.


Install the latest version of cl-s-xml as follows:

guix install cl-s-xml

Or install a particular version:

guix install cl-s-xml@3

You can also install packages in augmented, pure or containerized environments for development or simply to try them out without polluting your user profile. See the guix shell documentation for more information.