Я использую XSLT для преобразования из одного формата XML в другой, но мне также нужно, если это возможно, выполнять подстановку некоторых значений одновременно. Может ли кто-то предоставить решение для изменения большого количества значений; например «AppName» следует изменить на «1», «AppNameTwo» на «2», и в идеале я хотел бы сделать это с помощью некоторых типов списков поиска в XSLT:
<Application>
<oldvalue="AppName" replacewith="1">
<oldvalue="AppNameTwo" replacewith="2">
</Application>
<ResponseOne>
<oldvalue="True" replacewith="Okay">
<oldvalue="False" replacewith="Error">
</ResponseOne>
Единственный способ, которым я сейчас могу думать об этом, - это использовать множество вложенных замен?
Input
<Message>
<Header>
<Application>AppName</Application>
<ResponseOne>True</ResponseOne>
...
</Header>
</Message>
Пока XSLT
<?xml version="1.0" encoding="utf-8"?>
<xsl:stylesheet version="1.0">
<xsl:template match="/">
<n1:Message>
<Header>
<Application><xsl:value-of select="//Message/Organisation/Application/Name"/> </Application>
<Response><xsl:value-of select="//Message/Organisation/Application/ResponseOne"/> </Response>
...
</Header>
</n1:Message>
Требуемый выход
<?xml version="1.0" encoding="utf-8"?>
<n1:Message>
<Header>
<Application>1</Application>
<Response>Error</Response>
...
</Header>
</n1:Message>
Намерение запустить этот XSLT в Visual Studio 2010.