Свяжите таблицу стилей XML с документом XML с помощью Nokogiri - PullRequest
1 голос
/ 02 июля 2010

Можно ли связать таблицу стилей с Nokogiri, чтобы создать эту структуру?

<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" href="http://www.my-site.com/sitemap.xsl"?>
<root>
  ...
</root>

Ответы [ 2 ]

2 голосов
/ 29 ноября 2010

OMG, здесь так много неудач, что я нарушаю неофициальную политику Команды Nokogiri и даю правильный, здравый ответ на этот вопрос:

require "nokogiri"

doc = Nokogiri::XML "<root>foo</root>"
doc.root.add_previous_sibling Nokogiri::XML::ProcessingInstruction.new(doc, "xml-stylesheet", 'type="text/xsl" href="foo.xsl"')
puts doc.to_xml
# => <?xml version="1.0"?>
#    <?xml-stylesheet type="text/xsl" href="foo.xsl"?>
#    <root>foo</root>

В будущем, пожалуйста, задавайте вопросы оNokogiri в списке рассылки nokogiri-talk (http://groups.google.com/group/nokogiri-talk), получите правильный ответ своевременно и сэкономите всем немного усилий.

0 голосов
/ 03 августа 2010

Там нет.

Как я это сделал:

xml.gsub!("<?xml version=\"1.0\"?>") do |head|
  result = head
  result << "\n"
  result << "<?xml-stylesheet type=\"text/xsl\" href=\"#{stylesheet}\"?>"
end

Приветствие.

...