Предположим, что следующий xml
<map>
<entry>
<string>KEY1</string>
<int>value</int>
</entry>
<entry>
<string>KEY2</string>
<string>value</string>
</entry>
<entry>
<string>KEY3</string>
<map>
...
</map>
</entry>
<entry>
<string>KEY4</string>
<string>special_value</string>
</entry>
</map>
Каждая карта содержит несколько записей. У каждой записи есть KEY (всегда тип string, всегда первый элемент) и значение определенного типа (string, int или даже вложенная карта).
Я хочу иметь преобразование идентичности (xsl2. 0) со следующим исключением: если есть карта, содержащая запись key = "KEY4" со строковым значением = "special_value", выполните "fn: replace" для строкового значения записи с ключом = "KEY2" вта же карта. Порядок записей неизвестен.
Можно предположить, что KEY2 и KEY4 всегда имеют тип string. Было бы полезно, если бы проверка «special_value» не учитывала регистр и, возможно, регулярное выражение