Hi,
it is time for a new cxml release. I am planning to create the release tarball in a week or so. It would be great if anyone using cxml could do some testing until then.
Changes: * Implemented DOM 2 Core. (I.e., namespace support.) * Error handling overhaul. All wellformedness violations should now be signalled as instances of CXML:WELL-FORMEDNESS-VIOLATION. We also try to print line numbers. * On Lisps without unicode support, there is now an (alternative) DOM implementation that uses UTF-8-encoded lisp strings instead of runes and rods. * Some minor new features (whitespace normalization; parse-string has been exported under the new name cxml:parse-rod, ...)
Incompatible API changes: * On Lisps without unicode support, the parser recodes to UTF-8 by default now. (Anyone using recoders manually can suppress the default recoding using :recode nil.) * dom:make-dom-builder has been replaced with two separate functions, rune-dom:make-dom-builder and utf8-dom:make-dom-builder. There is a nickname cxml-dom on the former package if the Lisp supports Unicode or on the latter otherwise. (The utf8-dom package is not defined if the Lisp supports Unicode.) * The unparse-document-* functions have been removed in favour of map-document. * Sink functions have changed. Beware that make-character-stream-sink happens to have the same name as an older functions but works differently.
Thanks, David