我有一个XML,格式如下:
<soapenv:Envelope
xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:ser="http://com/verizon/pc/coa/service"
xmlns:java="java:com.verizon.pc.coa.service">
<soapenv:Body>
<XYZ>
<SC>0</SC>
<StDs>Successfully placed the request</StDs>
<EC>SUCCESS</EC>
<abc>
<cd>0</cd>
<ef>1</ef>
<xpath>test</xpath>
</abc>
<pqr>
<cd>08302018</cd>
<ef>09212018</ef>
<xpath>/com.verizon.prism.dataretrieval.model.ws.PcData[1]/dataOrderLevel[1]/lecDesireDueDate[1] /text()[1]</xpath>
</pqr>
</XYZ>
</soapenv:Body>
</soapenv:Envelope>
我需要编写一个xslt,它仅在子值为<cd>
和<ef>
时才采用具有父值的标签。也就是说,响应应采用以下格式:
<?xml version="1.0" encoding="UTF-8"?>
<XYZ>
<XYZ>
<name>abc</name>
<cd>0</cd>
<ef>1</ef>
<xpath>test</xpath>
</XYZ>
<XYZ>
<name>pqr</name>
<cd>PQ</cd>
<ef>BLDGCLLI</ef>
<xpath />
</XYZ>
</XYZ>
有人可以帮我吗?我是写xslt的新手。