2011-02-14 180 views
2

我正在使用libxml-ruby來解析XML。使用libxml-ruby聲明命名空間

我可以使用libxml-ruby創建xml文件,但問題是我無法爲生成的XML文檔聲明命名空間。

請幫助我如何爲新生成的XML創建名稱空間。

創建XML編寫的代碼是:

require 'rubygems' 
require 'libxml' 

filename = 'something.xml' 
stats_doc = LibXML::XML::Document.new() 
stats_doc.root = LibXML::XML::Node.new('root_node') 
stats_doc.root << LibXML::XML::Node.new('elem1') 
stats_doc.save(filename, :indent => true, :encoding => LibXML::XML::Encoding::UTF_8) 
+0

謝謝,我更新了代碼。我不知道如何在此代碼中添加命名空間,請幫助我。 – naveen 2011-02-15 06:33:35

回答

1

你只需要描述here創建XML命名空間::類的新實例。下面你可以找到你的例子的修改版本。

require 'rubygems' 
require 'libxml' 

filename = 'something.xml' 
stats_doc = LibXML::XML::Document.new() 
stats_doc.root = LibXML::XML::Node.new('root_node') 

LibXML::XML::Namespace.new(stats_doc.root, 'soap', 'http://schemas.xmlsoap.org/soap/envelope/') 

stats_doc.root << LibXML::XML::Node.new('elem1') 
stats_doc.save(filename, :indent => true, :encoding => LibXML::XML::Encoding::UTF_8)