Сообщение от Андрей Параничев
|
endryha,
Я предположу что такого алгоритма не существует в принципе.
|
+1
ИМХО, для всех случаев такой алгоритм организовать правктически невозможно.
единственный способ-делать XPath-ы своей головой.
есть конечно идеи по организации такого алгоритма
но для качественной реализации этого алгоритма нужен во первых какой-нибудь механизм обработки XPath(что в принципе реализовано уже),и очень качествнный программинг.
в общем виде это будет выглядеть примерно так:
пытаемся перебрать все возможные комбинации, минимизирующих элементы привязки.если не удалось найти адекватного выражения(чтобы количество элементов было равно 1), пытаемся увеличть количество элементов привязки.
трудно, долго, но в первом приближении возможно
но вопрос, в том, какое из полученных выражений считать "хорошим".тут уже нужен человеческий анализ
за программу с реализованной второй частью, я бы не против и выложить деньги.но, такая программа практически невозможна
да и первая часть реализуется долго, трудно и ненаверняка.ее можно дорабатывать до бесконечности, получая незначительный выигрыш для дополнительного круга задач на XPath