XML文章内のデータをソート:plexippus xpath - lisp-cookbook-ja/common-lisp GitHub Wiki
抜き出した結果に、sortのkeyにstp:string-value 等を渡したものをかければソートできるでしょう
ライブラリの導入方法
(ql:quickload :xpath)
XML文章構築
(defparameter *doc*
(cxml:parse
"
<a xmlns='http://tips.lisp-users.org/common-lisp'>
<b name='おそ松'>1</b>
<b name='トド松'>6</b>
<b name='チョロ松'>3</b>
<b name='一松'>4</b>
<b name='カラ松'>2</b>
<b name='十四松'>5</b>
</a>
"
(stp:make-builder)))
(xpath:with-namespaces (("x" (stp:namespace-uri (stp:document-element *doc*))))
(let ((elts (xpath:all-nodes (xpath:evaluate "//x:b" *doc*))))
(dolist (e (cl:sort elts #'<
:key (lambda (x) (parse-integer (stp:string-value x)))))
(format t
"~A: ~A~%"
(stp:string-value e) (stp:attribute-value e "name")))))
;-> 1: おそ松
; 2: カラ松
; 3: チョロ松
; 4: 一松
; 5: 十四松
; 6: トド松
;
;=> NIL