1
我是一個試圖創建一些XML字符串的Clojure n00b。在Clojure中創建xml字符串時遇到問題
我的目標是創造這樣的:
<?xml version="1.0" encoding="UTF-8"?>
<items>
<item name="n0">n0 value</item>
<item name="n1">n1 value</item>
<item name="n2">n2 value</item>
</items>
我可以直接使用clojure.data.xml庫的元件功能如下:
(element :items {}
(element :item {:name "n0"} "n0 value")
(element :item {:name "n1"} "n1 value")
(element :item {:name "n2"} "n2 value"))
,這回應發出-STR如預期的那樣,並打印出我之後的XML。
我遇到的問題是,我有一個可變數量的項目對於一個給定的項目收集的,所以我想要做的事,看起來像這樣:
(def collection-of-items
[(element :item {:name "n0"} "n0 value")
(element :item {:name "n1"} "n1 value")])
(element :items {}
collection-of-items)
也就是說,我做的幾個集合xml元素對象,並將它作爲':items'元素定義的:content參數。
這兩個表單評估正確,但是當調用元素調用的結果時,emit-str失敗。
所以我的問題是:如何將'collection-of-items'var作爲參數傳遞給元素函數,以便它顯示爲簡單的可變參數列表?還是我完全錯過了Clojure Boat?
謝謝大家!
奧斯坦丁!非常感謝。 – ScottR 2012-02-23 08:10:50
當然,很高興幫助! – 2012-02-24 00:06:43