XML ドキュメントがあるタスクが目の前にあり、それを体系的な方法で別の XML ドキュメントに変換する必要があります。タグ Foo をタグ Bar に変更し、name="frob"
属性を持つすべての Qux タグを Frob タグに変更するなどです。 . XSLT の使用方法については何も知りませんが、ツリーベースのデータに対して一連の変換を実行する必要がある場合は、Lisp が得意なことのように思えます!
だから私はXMLの塊を持っています - 例えば:
<Object>
<field name="id">100520</field>
<field name="type_id">77</field>
<field name="has_extras"></field>
<field name="author_id">7</field>
<field name="summary">To Sir Duke, with love</field>
</Object>
私はそれを丸呑みしてxml-parse tag
取得します:
(Object nil "\n "
(field
((name . "id"))
"100520")
"\n "
(field
((name . "type_id"))
"77")
"\n "
(field
((name . "has_extras")))
"\n "
(field
((name . "author_id"))
"7")
"\n "
(field
((name . "summary"))
"To Sir Duke, with love")
"\n ")
その木をどう処理して自分の望む形にするかを考え出すのに苦労しています。assoc
私の現在の試みはもろいです -と
機能に重きを置いていcxr
ます。CLdestructuring-bind
は私が欲しいもののようですが、それを適用する方法がわかりません。上記の構造を次のように変換しようとしています。
(Object
(id "100520")
(type_id "77")
(has_extras "")
(author_id "7")
(summary "To Sir Duke, with love"))
- 本当に
destructuring-bind
必要なツールですか? - もしそうなら、データのある形状から別の形状に取得するには、どのように適用すればよいですか?
- そうでない場合、これに適したツールは何ですか?