我有一些现有的 XML 输出,我需要在其中插入一个新元素,该元素将包含一些硬编码数据和一些动态数据,这些数据派生自两个同级元素的值。
我已经尝试了几次迭代,但无法获得任何有意义的输出
XML 输入:
<ExportXML xmlns="http://www.taleo.com/ws/integration/toolkit/2005/07"
xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:ns1="http://www.taleo.com/ws/integration/toolkit/2005/07"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<record>
<field name="Client">Company X</field>
<field name="TItle">Program Manager</field>
<field name="ReqNumber">106839</field>
<field name="JobBoardID">JB-10000</field>
<field name="PostedDate">2019-04-03</field>
<field name="City"></field>
<field name="StateProvince"></field>
<field name="Country">United States</field>
<field name="Category">Professionals</field>
<field name="JobText">Blah, blah, blah</field>
</record>
<record>
<field name="Client">Company X</field>
<field name="TItle">Director, Sales--Army</field>
<field name="ReqNumber">106051</field>
<field name="JobBoardID">JB-13262</field>
<field name="PostedDate">2019-03-04</field>
<field name="City"></field>
<field name="StateProvince"></field>
<field name="Country">United States</field>
<field name="Category">Sales Workers</field>
<field name="JobText">Blah, blah, blah</field>
</record>
</ExportXML>
所需的 XML 输出:
<ExportXML xmlns="http://www.taleo.com/ws/integration/toolkit/2005/07"
xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:ns1="http://www.taleo.com/ws/integration/toolkit/2005/07"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<record>
<field name="Client">Company X</field>
<field name="TItle">Program Manager</field>
<field name="ReqNumber">106839</field>
<field name="JobBoardID">JB-10000</field>
<field name="PostedDate">2019-04-03</field>
<field name="City"></field>
<field name="StateProvince"></field>
<field name="Country">United States</field>
<field name="Category">Professionals</field>
<field name="JobText">Blah, blah, blah</field>
<field name="ApplyURL">https://www.fakedomain.org/careersection/JB-10000/jobapply.ftl?lang=en&job=106839</field>
</record>
<record>
<field name="Client">Company X</field>
<field name="TItle">Director, Sales--Army</field>
<field name="ReqNumber">106051</field>
<field name="JobBoardID">JB-13262</field>
<field name="PostedDate">2019-03-04</field>
<field name="City"></field>
<field name="StateProvince"></field>
<field name="Country">United States</field>
<field name="Category">Sales Workers</field>
<field name="JobText">Blah, blah, blah</field>
<field name="ApplyURL">https://www.fakedomain.org/careersection/JB-13262/jobapply.ftl?lang=en&job=106051</field>
</record>
</ExportXML>
正如您在上面的代码示例中看到的那样,我想添加一个新的“field”元素,其属性为“ApplyURL”,它采用硬编码字符串(https://www.fakedomain.org/careersection/)将其连接起来将具有属性“JobBoardID”的兄弟字段元素的值与硬编码字符串“/jobapply.ftl?lang=en&job=”连接起来,并将其与属性为“ReqNumber”的兄弟字段元素的值连接起来。
我需要将此模板规则应用于 XML 文档中的所有“记录”节点。
我为此尝试了各种方法,但到目前为止还没有取得任何成功。我是 XSLT 的新手,所以不足为奇。我希望在这方面更有经验的人可以帮助我。