Есть документ:
<node>
<title attr='header'>1</title>
<child>2</child>
</node>
Есть ли инструменты для того, что бы, например, передать:
{
title: '//title[@attr="header"]',
text: '//child',
moreText: '//child'
}
И получить на выходе нужный json объект, массив, хэш ?
Казалось бы, реализовать такое несложно, но есть куча кейсов, когда появляется вложенность. Когда в одном месте нужно получить текстовое представление, а в другом - xml/html. Когда структура зависит от условий... Возможно, кто-то уже за это брался.
Задачу несложно решить дом-парсерами, но хотелось бы от них абстрагироваться. Одновременно не изобретая свой DSL.