J'utilise Nokogiri pour compiler du code XML. J'ai besoin de créer un nœud dans un espace de noms qui déclare le même espace de noms. Comme d'habitude avec XML, ce processus s'avère ennuyeux. J'ai besoin XML qui ressemble àCréer un nœud avec un espace de noms
<?xml version="1.0"?>
<bar:foo xmlns:bar="http://www.bar.com">
<bar:baz>baz</bar:baz>
</bar:foo>
Ce (évidemment) ne me donne pas à:
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
Ni ne ceci:
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
Comment puis-je obtenir Nokogiri pour donner moi le XML que je veux?
duplication possible de [Ajout d'un espace de nom à l'aide de XML Builder de Nokogiri] (http://stackoverflow.com/questions/8009842/adding-namespace-using-nokogiris-xml-builder) – Phrogz
Oui, c'est un doublon, je n'ai pas vois ça avant de poster, cependant. – cbmanica