powered by simpleCommunicator - 2.0.49     © 2025 Programmizd 02
Форумы / XML, XSL, XPath, XQuery [игнор отключен] [закрыт для гостей] / XQuery: как заменить элемент в списке?
2 сообщений из 2, страница 1 из 1
XQuery: как заменить элемент в списке?
    #38948743
A+
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
A+
Гость
Если сильно упростить, то задача выглядит примерно так:
1. Есть XML'ка вида:
Код: xml
1.
2.
3.
4.
5.
6.
7.
8.
  <bean id="A">
    <property name="B">
      <list>
        <value>C</value>
        <value>D</value>
      </list>
    </property>
  </bean>


2. требуется заменить D на E
3. элементы в списке B заранее не известны (если среди них нету элемента D, то и делать ничего не надо)
...
Рейтинг: 0 / 0
XQuery: как заменить элемент в списке?
    #38948810
A+
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
A+
Гость
делаю примерно так:
Код: xml
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
declare default element namespace "http://www.springframework.org/schema/beans";

for $x in doc('beans.xml')//beans
  let $prop:= $x/bean[@id='A']/property[@name='B']
  
  return (
    for $v in $prop/list/value
    return (
      replace value of node $v
      with replace($v, 'D', 'E')
    )
  )



Вроде, работает
...
Рейтинг: 0 / 0
2 сообщений из 2, страница 1 из 1
Форумы / XML, XSL, XPath, XQuery [игнор отключен] [закрыт для гостей] / XQuery: как заменить элемент в списке?
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]