А существует ли человеческий XQuery-процессор для PHP? Мне удалось найти два процессора — XQuery Lite (
phpxmlclasses.sourceforge.net/xquery_lite.html) и Zorba (
www.zorba-xquery.com), но ни тот, ни другой, человеческими, к сожалению, не оказались. Вот два главных требования, которым, на мой взгляд, должен удовлетворять XQuery-процессор на PHP, чтобы быть человеческим:
- Возможность регистрировать PHP-функции в качестве XPath-расширений (что-то вроде XSLTProcessor::registerPHPFunctions);
- Возможность выдавать результат XQuery-запроса в виде DOMDocument, а не в виде текстового представления XML.
Найденные мной процессоры, к сожалению, ни того ни другого не умеют. По сути они являются вещью в себе — стандарт реализовывают, но на этом как бы и все. Заинтергировать такой процессор в готовую XML-based систему просто невозможно.
Ну и в качестве каприза, хотелось бы легкости в кросс-линуксовой установке. Zorba ставится на Ubuntu в 2-3 команды, а вот для CentOS там уже инструкция из 27(!!!) шагов.