Zippers can be convenient for xml, they give you xpath as a syntax that you can mix with clojure built-in functions.
user=> (require '[clojure zip xml] '[clojure.contrib.zip-filter [xml :as x]]) user=> (def z (-> (.getBytes "<a><b>SOMETHING</b></a>") java.io.ByteArrayInputStream. clojure.xml/parse clojure.zip/xml-zip)) user=> (x/xml1-> z :bx/text)
returns
"SOMETHING"
user499049
source share