Ruby on rails Hpricot正在错误地分析xml文件:误读空标记
我有一个xml文件,其内容如下:Ruby on rails Hpricot正在错误地分析xml文件:误读空标记,ruby-on-rails,ruby,xml,hpricot,Ruby On Rails,Ruby,Xml,Hpricot,我有一个xml文件,其内容如下: <data> <title/> <creator/> <copyright>Foo</copyright> </data> 有人能解释出哪里出了问题吗?我不明白为什么title标记会与creator标记区别对待:如果没有doctype存在问题,那么我认为这两个标记都会受到影响(或者两者都没有)。Hpricot正是在解析您要求它做的事情creator是此处的空标记,后面跟着版权。
<data>
<title/>
<creator/>
<copyright>Foo</copyright>
</data>
有人能解释出哪里出了问题吗?我不明白为什么
title
标记会与creator
标记区别对待:如果没有doctype存在问题,那么我认为这两个标记都会受到影响(或者两者都没有)。Hpricot正是在解析您要求它做的事情creator
是此处的空标记,后面跟着版权
。这两个都嵌套在title
标记中。虽然title
从未真正关闭过,但根据继承人的身份,它使Hpricot的工作变得简单。但是creator
没有嵌套在我原始xml文件中的title
标记中:title
是一个空标记,就像creator
一样。
doc = Hpricot(File.read("#{ENV['HOME']}/test.xml"))
=> #<Hpricot::Doc {elem <data> "\n " {elem <title> "\n " {emptyelem <creator>} "\n " {elem <copyright> "Foo" </copyright>} "\n"} </data>} "\n">
puts doc.to_s
<data>
<title>
<creator />
<copyright>Foo</copyright>
</title></data>