У меня есть следующее содержание XML:Регистрация нескольких конкатенации атрибутов со значениями узлов с использованием XPath
<ns2:ItemAttributes xml:lang="de-DE">
<ns2:Creator Role="Role1">Creator One</ns2:Creator>
<ns2:Creator Role="Role2">Creator Two</ns2:Creator>
<ns2:Creator Role="Role3">Creator Three</ns2:Creator>
</ns2:ItemAttributes>
Я пытаюсь форматировать и объединить это в одну строку с помощью XPath. Что-то вроде:
string-join(//ns2:Creator/concat(./text(), @Role), ', ')
Я думаю, я где-то близко, потому что это:
string-join(//ns2:Creator/@Role , ', ')
работ и дает мне разделенный запятыми список ролей: Role1, роль2, Role3
и это
string-join(//ns2:Creator/node(), ', ')
сочетает в себе ценности создателей: «Создатель One, Создатель T wo, Творца Трое ».
Я хотел бы окончательный вывод
Role1: Creator One, Role2: Creator Two, Role3: Creator Three
Не могли бы вы помочь.
Немного ближе, используя: string-join (// ns2: Creator/(@ Role, node()), ',') Теперь у меня есть все значения, но не все: они все запятые -сепаратированный –