Я создаю пользовательскую функцию XPath в Java, которая изменяет текстовые узлы в наборе узлов. Мне нужно передать набор узлов, выполнить цикл кода через каждый узел и вернуть набор узлов. Я видел много примеров пользовательских функций XPath, которые изменяют строки, но ни один из них не принимает набор узлов и не возвращает его успешно. Я также не знаю, как сопоставить возвращаемый набор узлов.
Возьмем, к примеру, этот исходный XML.
<Library>
<Bookshelf>
<Book>alice in wonderland</Book>
<Book>the giving tree</Book>
<Author>shel silverstein</Author>
</Bookshelf>
</Library>
Затем я хочу, чтобы это был мой целевой XML. Я решил сделать первую букву каждого слова заглавной, но это всего лишь пример. Не беспокойтесь о части изменения текста, я понял.
<Library>
<Bookshelf>
<Book>Alice In Wonderland</Book>
<Book>The Giving Tree</Book>
<Author>Shel Silverstein</Author>
</Bookshelf>
</Library>
Самое главное здесь то, что я хочу реализовать это как пользовательскую функцию XPath с использованием Java, чтобы ее можно было перетаскивать в режиме конструктора. И я использую файловый адаптер с каждой стороны этого преобразования, поэтому структура всех узлов уже задана, и мне нужно привести свои результаты в соответствие.