--- title: GaucheでXMLを生成する方法を調べてみた author: kazu634 date: 2010-09-12 wordtwit_post_info: - 'O:8:"stdClass":13:{s:6:"manual";b:0;s:11:"tweet_times";i:1;s:5:"delay";i:0;s:7:"enabled";i:1;s:10:"separation";s:2:"60";s:7:"version";s:3:"3.7";s:14:"tweet_template";b:0;s:6:"status";i:2;s:6:"result";a:0:{}s:13:"tweet_counter";i:2;s:13:"tweet_log_ids";a:1:{i:0;i:5343;}s:9:"hash_tags";a:0:{}s:8:"accounts";a:1:{i:0;s:7:"kazu634";}}' categories: - gauche - Lisp ---
色々とあり、 Gauche で XML を生成してみることにしました。ちょっと調べてみると、結構簡単にできることが判明。
;;; SXML->XMLの例 (use sxml.serializer) (define blog-rss '(*TOP* (*PI* xml "version=\"1.0\" encoding=\"UTF-8\"" ) (rss (@ (version "2.0")) (channel (title "karetta.jp開発日記") (link "http://karetta.jp/blog/karetta-dev") (description "karetta.jp developper's blog") (lastBuildDate "Fri, 20 Jul 2007 19:02:00 +0900") (item (title "Gauche-senna") (link "http://karetta.jp/article/blog/karetta-dev/039235") (pubDate "Fri, 20 Jul 2007 19:02:00 +0900")))))) (print (srl:sxml->xml blog-rss))
要は、SXMLさえ生成できれば、 sxml.serializer が面倒を見てくれるようです。時間がとれたら、ごにょごにょして作ってみよう。