我有下面的XML:保留屬性之間的空白在XSLT轉換
<?xml version="1.0"?>
<products>
<product at1="a"
at2="b"
at3="c">
</product>
</products>
及以下XSLT:
<?xml version="1.0"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:template match="@*|node()">
<xsl:copy>
<xsl:apply-templates select="@*|node()"/>
</xsl:copy>
</xsl:template>
</xsl:stylesheet>
從理論上說,XSLT應離開輸入XML不變。然而,輸出處理後我得到的是:
<?xml version="1.0"?>
<products>
<product at1="a" at2="b" at3="c">
</product>
</products>
有我的方式,我可以防止變壓器從格式化屬性之間的間距。我明白,輸入和輸出xml在功能上都是相同的,但爲了便於閱讀,我想保留每行格式的屬性。如果它的事項,我使用Ubuntu的xsltproc的做這樣的轉換:
xsltproc -o test2.xml test.xslt test.xml
非常相似:http://stackoverflow.com/questions/4617993/how-to-preserve-whitespace-within-an-elements-opening-tag-in-xslt – mzjn 2012-01-13 16:41:09
http://stackoverflow.com/questions/ 1265255 /在xml序列化期間放置每個屬性的新行 - – 2012-01-13 16:51:28