0
我試圖格式,其中當<json:boolean name="isRecordSuccess">true</json:boolean>
我想要消除的節點的信息並獲得唯一<json:boolean name="isRecordSuccess">false</json:boolean>
分離基於節點值的模板,根據條件等於「真」 XSLT 1.0
Sample Message:
<?xml version="1.0" encoding="UTF-8"?>
<json:object xsi:schemaLocation="http://www.datapower.com/schemas/json jsonx.xsd" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:json="http://www.ibm.com/xmlns/prod/2009/jsonx">
<json:array name="results">
<json:object>
<json:string name="RecordNumber"/>
<json:boolean name="isRecordSuccess">false</json:boolean>
<json:string name="errorDescription">PONumber__c not specified</json:string>
</json:object>
<json:object>
<json:string name="RecordNumber">000100052774</json:string>
<json:boolean name="isRecordSuccess">false</json:boolean>
<json:string name="errorDescription">Work order's Product or Warehouse cannot be changed.</json:string>
</json:object>
<json:object>
<json:string name="RecordNumber">000100052775</json:string>
<json:boolean name="isRecordSuccess">true</json:boolean>
<json:string name="errorDescription"/>
</json:object>
<json:object>
<json:string name="RecordNumber">000100052983</json:string>
<json:boolean name="isRecordSuccess">true</json:boolean>
<json:string name="errorDescription"/>
</json:object>
<json:object>
<json:string name="RecordNumber"/>
<json:boolean name="isRecordSuccess">false</json:boolean>
<json:string name="errorDescription">PONumber__c not specified</json:string>
</json:object>
</json:array>
<json:boolean name="isSuccess">false</json:boolean>
</json:object>
所需的輸出:
<?xml version="1.0" encoding="UTF-8"?>
<json:object xsi:schemaLocation="http://www.datapower.com/schemas/json jsonx.xsd" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:json="http://www.ibm.com/xmlns/prod/2009/jsonx">
<json:array name="results">
<json:object>
<json:string name="RecordNumber"/>
<json:boolean name="isRecordSuccess">false</json:boolean>
<json:string name="errorDescription">PONumber__c not specified</json:string>
</json:object>
<json:object>
<json:string name="RecordNumber">000100052774</json:string>
<json:boolean name="isRecordSuccess">false</json:boolean>
<json:string name="errorDescription">Work order's Product or Warehouse cannot be changed.</json:string>
</json:object>
<json:object>
<json:string name="RecordNumber"/>
<json:boolean name="isRecordSuccess">false</json:boolean>
<json:string name="errorDescription">PONumber__c not specified</json:string>
</json:object>
</json:array>
<json:boolean name="isSuccess">false</json:boolean>
</json:object>
這裏是鏈接, Code
代碼:
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:json="http://www.ibm.com/xmlns/prod/2009/jsonx" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<xsl:output method="xml" version="1.0" encoding="UTF-8" indent="yes"/>
<xsl:strip-space elements="*"/>
<!-- identity transform -->
<xsl:template match="@*|node()">
<xsl:copy>
<xsl:apply-templates select="@*|node()"/>
</xsl:copy>
</xsl:template>
<xsl:template match="/json:object/json:array/json:object/json:boolean[normalize-space(.) = 'true']">
<xsl:apply-templates/>
</xsl:template>
</xsl:stylesheet>
給出了這樣的輸出
<?xml version="1.0" encoding="UTF-8"?>
<json:object xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:json="http://www.ibm.com/xmlns/prod/2009/jsonx"
xsi:schemaLocation="http://www.datapower.com/schemas/json jsonx.xsd">
<json:array name="results">
<json:object>
<json:string name="RecordNumber"/>
<json:boolean name="isRecordSuccess">false</json:boolean>
<json:string name="errorDescription">PONumber__c not specified</json:string>
</json:object>
<json:object>
<json:string name="RecordNumber">000100052774</json:string>
<json:boolean name="isRecordSuccess">false</json:boolean>
<json:string name="errorDescription">Work order's Product or Warehouse cannot be changed.</json:string>
</json:object>
<json:object>
<json:string name="RecordNumber">000100052775</json:string>true<json:string name="errorDescription"/>
</json:object>
<json:object>
<json:string name="RecordNumber">000100052983</json:string>true<json:string name="errorDescription"/>
</json:object>
<json:object>
<json:string name="RecordNumber"/>
<json:boolean name="isRecordSuccess">false</json:boolean>
<json:string name="errorDescription">PONumber__c not specified</json:string>
</json:object>
</json:array>
<json:boolean name="isSuccess">false</json:boolean>
</json:object>
嗨邁克爾,你能解釋一下情況嗎? –
@Kumar_y查看編輯我的答案。 –
感謝您的解釋 –