Что такое преобразование XSLT (версия 1.0), которое может добавлять или заменять значения свойств на основе имени?XSLT для дополнения конфигурации Hadoop
К примеру, учитывая следующие входные XML
<configuration>
<property>
<name>dfs.replication</name>
<value>1</value>
</property>
<property>
<name>dfs.namenode.name.dir</name>
<value>/hadoop/dfs/name</value>
</property>
</configuration>
Как бы указать два свойства с именами и значениями, например:
<configuration>
<property>
<name>dfs.replication</name>
<value>2</value>
</property>
<property>
<name>dfs.datanode.data.dir</name>
<value>/hadoop/dfs/data</value>
</property>
</configuration>
Так полученный XML содержит все оригинальные детей из корень configuration
элемент, и только один property
с данным name
? Например:
<configuration>
<property>
<name>dfs.replication</name>
<value>2</value>
</property>
<property>
<name>dfs.namenode.name.dir</name>
<value>/hadoop/dfs/name</value>
</property>
<property>
<name>dfs.datanode.data.dir</name>
<value>/hadoop/dfs/data</value>
</property>
</configuration>
Я попытался exampled от ряда других вопросов, но они не имеют ту же схему, и я не знаю, достаточно XSLT, чтобы приспособиться к моему прецеденту.
Я не понимаю вашего вопроса. Почему исходное значение 'dfs.replication'' 1' изменилось на '2'? –
@ michael.hor257k Целью является служить примером. Мой вопрос больше связан с возможностью вставки или изменения значений свойств на основе ключа. Я выбрал это конкретное имя свойства, например, для целей. благодаря! – maxwellb
"* Я выбрал это конкретное имя свойства, например, для целей. *« Это имеет смысл, но пример не ясен (мне все равно). Вы говорите: «Итак, полученный XML содержит все исходные дети корневого элемента конфигурации *», но это не то, что вы показываете. –