我想在 XSLT 中读取一个 XML 文件并检查它的节点。如果它们与我正在应用转换的 XML 节点的值匹配,则获取 XML 节点的值并使用它来构造新的 XML 结构。
这是一个例子来说明我的问题。我想很多人可以参考这个问题来实现类似的功能。
引用的.xml
<xml>
<root>
<Id id = "1">
<fields>
<field>
<name> Name1 </name>
<value> Val1 </value>
</field>
<field>
<name> Name2 </name>
<value> Val2 </value>
</field>
</fields>
</Id>
<Id id = "2">
...
</Id>
</root>
</xml>
xml.xml
<XML>
<Fields>
<Id id = "1">
<F1> Value1 </F1>
<F2> Value2 </F2>
<F1> Value3 </F1>
<F4> Value4 </F4>
</Id>
</Fields>
</XML>
Referenced.xml
现在,我想创建一个转换,Name1 = F1
它将遍历 XML 文件(XML 结构,如
<outputXml>
<Field id="Val1">
<val> Value1 </val>
</Field>
<Field id="Val2">
<val> Value2 </val>
</Field> ... and so on
</outputXml>
我知道我必须使用document(),但我不确定您如何遍历Referenced.xml
内部 xsl 并使用 if,否则以实现所需的功能?