我正在使用 Nokogiri 构建一些 XML。我需要在声明相同命名空间的命名空间中创建一个节点。与 XML 一样,这个过程被证明是非常困难的。我需要看起来像的 XML
<?xml version="1.0"?>
<bar:foo xmlns:bar="http://www.bar.com">
<bar:baz>baz</bar:baz>
</bar:foo>
这(显然)没有给我:
builder=Nokogiri::XML::Builder.new do |xml|
# Doesn't put foo in the bar namespace
xml.foo( "xmlns:bar" => "http://www.bar.com") do
xml['bar'].baz "baz"
end
end
这也不是:
builder=Nokogiri::XML::Builder.new do |xml|
# undefined method `namespace_definitions' for #<Nokogiri::XML::Document:0x3fcc11b590ec name="document">
xml['bar'].foo( "xmlns:bar" => "http://www.bar.com") do
xml['bar'].baz "baz"
end
end
如何让 Nokogiri 给我我想要的 XML?