我正在使用Builder::XmlMarkup创建xml。我想创建一个没有内容的标签,因为api强制我创建它。如果我使用博客
xml.tag do
end我得到了我想要的
<tag></tag>但是我想要短一点
xml.mytag这给了我
<mytag/>但我想
<mytag></mytag>我必须传递什么作为选项。
致敬Kai
发布于 2010-11-24 19:56:16
只需将空字符串作为参数传递即可。xml.mytag('')
发布于 2010-11-24 19:53:58
为什么你想要<mytag></mytag>而不是<mytag/>?因为输出是XML,所以下游应用程序不应该知道或关心差异。
根据Infoset规范(Appendix D point 7),“两种形式的空元素:<foo/>和<foo></foo>之间的区别”没有在XML Information Set中表示。
这并没有回答你的“如何”的问题,但是如果你发现你实际上不需要做你想要做的事情,它可能会把你从困难和不必要的徒劳无益的追逐中解救出来。
发布于 2010-11-24 20:05:13
好的,空字符串很好,我发现了另一个单行的空块。
xml.mytag{}https://stackoverflow.com/questions/4266329
复制相似问题