3
我上一個項目,我需要有格式化的空XML標記如下<xyz></xyz>
,而不是自閉標籤<xyz/>
工作,雖然兩者都是平等看起來客戶的實施是有缺陷的。它接受空標籤並拒絕自閉標籤。如何改變自我關閉標籤XML到的空標籤XML對WSO2集成
我正在使用WSO2 Integrator,但它強制將所有空標記格式化爲自閉標記。有沒有辦法將它重新格式化爲空標籤?
我上一個項目,我需要有格式化的空XML標記如下<xyz></xyz>
,而不是自閉標籤<xyz/>
工作,雖然兩者都是平等看起來客戶的實施是有缺陷的。它接受空標籤並拒絕自閉標籤。如何改變自我關閉標籤XML到的空標籤XML對WSO2集成
我正在使用WSO2 Integrator,但它強制將所有空標記格式化爲自閉標記。有沒有辦法將它重新格式化爲空標籤?
嘗試使用XSLT中介。這些可能工作。
<!-- Define a dummy variable with empty content -->
<xsl:variable name="empty" select="''"/>
<!-- Copy input to output, most of the time -->
<xsl:template match="@* | node()">
<xsl:copy>
<xsl:apply-templates select="@* | node()" />
<!-- Insert empty content into copied element -->
<xsl:value-of select="$empty"/>
</xsl:copy>
</xsl:template>
或
<!-- Identity template for empty elements -->
<xsl:template match="*[not(node())]">
<xsl:copy>
<xsl:apply-templates select="@* | node()" />
<xsl:value-of select="$empty"/>
</xsl:copy>
</xsl:template>
不幸的是,這在WSO2上不起作用...仍然覆蓋它並用自閉標籤替換它。 –
自閉合式標籤是像 ,但不喜歡 –
simar
根據XML規範兩種變型是相等https://www.w3.org/ TR/REC-xml /#dt-empty – simar