Мой сценарий Ruby должен считывать документ XML с URL-адреса и проверять его на корректность, возвращая любые ошибки. У меня есть образец плохого XML-документа со следующим текстом (из учебника Nokogiri :
<?xml version="1.0"?>
<root>
<open>foo
<closed>bar</closed>
</root>
Мой тестовый скрипт выглядит следующим образом (url ссылается на вышеуказанный xml-файл, размещенный на моем личном сервере):
require 'nokogiri'
document = Nokogiri::XML(url)
puts document
puts document.errors
Вывод:
<?xml version="1.0"?>
Start tag expected, '<' not found
Почему происходит захват только первой строки XML-файла? Он делает это даже с известными хорошими файлами XML.