Я использую действие XForms вместе с iterate
. iterate
выбирает набор (используя XPath) узлов и повторяет действие для него. Проблема в том, что у меня есть несколько условий для выбора набора узлов.
- Не должно быть узла
readOnly
. - Не должен быть частью списка
ignoreProperties
(этот список находится в другом экземпляре).
Код:
<xf:action ev:event="setValues" iterate="
instance('allProps')/props/prop[
not(readOnly) and
not(instance('ignoreProperties')/ignoredProperties/property[text() = name]
]
">
Первое условие not(readOnly)
работает. Но второе условие не работает. Я чувствую, что есть некоторая проблема с контекстом узлов XPath.
Как мне заменить второе условие для достижения результата?
Целевой XML — это простой ignoredProperties
документ:
<ignoredProperties>
<property>c_name</property>
<property>c_tel_no</property>
</ignoredProperties>