[Moscow.pm] XML Parser

Alex Kapranoff alex на kapranoff.ru
Сб Дек 13 15:09:49 PST 2008


Alexander Lourier wrote:
> Здравствуйте, Eugene.
> 
> Вы писали 12 декабря 2008 г., 23:24:28:
> 
>> В простейшем случае можно взять XML::Simple. Только заранее
>> прочтите соглашения:
>> http://search.cpan.org/~grantm/XML-Simple-2.18/lib/XML/Simple.pm#WHERE_TO_FROM_HERE?
> 
> Как я понял, XML::Simple перекодировать из кодировки документа в perl
> utf8 не умеет. Это уже нехорошо. Парсить потом все entities вручную не
> хочу. Все кажется просто, но лучше использовать готовую качественную
> реализацию стандарта, чем потом спотыкаться на ситуациях, которые я не
> предусмотрел.
> 
> Из предложенных вариантов XML::Parser работает в потоковом режиме -
> нужно самому писать хендлеры, запоминать все теги, что видел, потом
> уже обрабатывать - лишняя работа.

Нет, у него есть Style => Tree для парсинга в структуру.

> Реально понравился XML::LibXML - сначала парсинг, потом доступ к
> нужным элементам через DOM или XPath - очень удобно, в общем. Плюс к
> его достоинствам - умеет документ обратно свернуть в XML - значит и
> запросы буду им формировать.

Да, XML::LibXML вообще самый хороший сейчас, но также и самый тяжёлый, 
имеет внешнюю зависимость и не входит в CORE.

> 
> Всем спасибо.
> 



Подробная информация о списке рассылки Moscow-pm