https://github.com/philjackson/xmlgen.git
git clone 'git://github.com/philjackson/xmlgen.git'
Generate xml using sexps with the function `xmlgen':
(xmlgen '(p :class "big")) => "<p class=\"big\" />")
(xmlgen '(p :class "big" "hi")) => "<p class=\"big\">hi</p>")
(xmlgen '(html
(head
(title "hello")
(meta :something "hi"))
(body
(h1 "woohhooo")
(p "text")
(p "more text"))))
produces this (though wrapped):
<html>
<head>
<title>hello</title>
<meta something="hi" />
</head>
<body>
<h1>woohhooo</h1>
<p>text</p>
<p>more text</p>
</body>
</html>