HI,
Я анализирую XML-файл, используя LibXML в Perl.
Проблема, которая у меня есть, заключается в том, что конечные символы (пробелы) обрабатываются как текстовый узел. Например, с учетом ввода, подобного следующему
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE books [
<!ELEMENT title (#PCDATA)>
<!ELEMENT author (#PCDATA)>
<!ELEMENT year (#PCDATA)>
<!ELEMENT price (#PCDATA)>
<!ELEMENT book (title, author, year, price)>
<!ELEMENT books (book*)>
]>
<books>
<book>
<title>Everyday Italian</title>
<author>Giada De Laurentiis</author>
<year>2005</year>
<price>30.00</price>
</book>
</books>
Парсер считает, что количество потомков узла "books" равно 3, они:
- текстовый узел (содержащий символ между
<books>
и <book>
)
- элемент узла
<book>
- текстовый узел (содержащий символ между
</book>
и </books>
)
Вопрос в том, как заставить LibXML игнорировать пробелы?
Я пытался с no_blanks (то есть $ parser = XML :: LibXML-> new (no_blanks => 1) при построении парсера), но кажется, что это не имеет никакого эффекта.
Заранее спасибо