我有一个像这样的XML,我想通过检查xml底部的值来替换其中一个元素。
<canvas baseChart
[datasets]="spiderChartData"
[labels]="spiderChartLabels"
[chartType]="spiderChartType"
[options]="spiderChartOptions"
[colors]="spiderChartColours"
(chartHover)="chartHovered($event)"
(chartClick)="chartClicked($event)">
</canvas>
如何在<?xml version="1.0"?>
<Company>
<Employee>
<FirstName>Tanmay</FirstName>
<LastName>Patil</LastName>
<ContactNo>1234567890</ContactNo>
<Email>tanmaypatil@xyz.com</Email>
<AddressRef>0123321</AddressRef>
<AllAddressRef>
<AddressRef>
<UniqueID>0123321</UniqueID>
<Streetno>6</Streetno>
<Street>Athol Park</Street>
<State>WA</Street>
<Country>AU</Street>
</AddressRef>
</AllAddressRef>
</Employee>
</Company>
<AddressRef>
<AllAddressRef>
我正在使用XSLT 1.0。
答案 0 :(得分:1)
您可以使用//来搜索整个文档,谓词[]只选择符合某些条件的元素。
示例:
<xsl:template match="AddressRef">
<xsl:variable name="address" select="//AllAddressRef/AddressRef[UniqueID = current()]" />
<Address>
<xsl:copy-of select="$address/*[not(self::UniqueID)]" />
</Address>
</xsl:template>