我有一個生成使用變量的RDF/XML文檔從HTML場撿了些工作的Javascript代碼:如何使用JavaScript中的模板生成RDF/XML?
...
peopleDoap += " <foaf:name>" + person_name + "</foaf:name>\n";
if (person_url != "") {
peopleDoap += " <foaf:homepage rdf:resource=\"" + person_url + "/\"/>\n";
}
if (person_pic != "") {
peopleDoap += " <foaf:depiction rdf:resource=\"" + person_pic + "/\"/>\n";
}
...
很難,看着這段代碼,得到的輸出將是什麼樣子任何意義(特別是因爲這些代碼分散在子功能等中)。
我想知道如果有一個簡單的方法,這將使我有這樣的事情:
...
<foaf:name>%person_name%</foaf_name>
<foaf:homepage rdf:resource="%person_url%"/>
<foaf:depiction rdf:resource="%person_pic%"/>
...
然後一些替代代碼。一個微小的複雜情況是如果字段留空,我不想生成整個元素。即,如果person_url =「」,上面應當產生:
...
<foaf:name>%person_name%</foaf_name>
<foaf:depiction rdf:resource="%person_pic%"/>
...
我想我可以通過定義模板作爲一個巨大的字符串,然後進行了一堆關於它取代的做到這一點很天真,但有什麼更優雅?對原生Javascript而不是庫的輕度偏好,但很高興被說服...
(順便說一句,是的,因爲這是RDF/XML,也許有更聰明的方式使用某種RDF庫。地址的問題,而不是問題,這與我確定。)
此外,這是一個在Jetty服務器上運行的小部件。我不認爲服務器端代碼是一個選項。
謝謝。有一點google搜索,看起來這是非常好的踐踏地。這裏有一篇很好的文章: http://www.west-wind.com/Weblog/posts/509108.aspx – 2011-02-24 05:35:22