0
我必須將複雜的xml轉換爲html。我可以轉換一些節點,但有很多節點的含義未知。這裏是簡體xmlxslt - 如何輸出所有節點作爲節點名稱和節點值
<root>
<NodeWithKnownData>
<FirstElement>blah</FirstElement>
<SecondElement>blahBlah</SecondElement>
</NodeWithKnownData>
<NodeWithUnKnownData>
<FirstUnknownElement>blah2134</FirstUnknownElement>
<SecondUnknownElement>blahBlah324523</SecondUnknownElement>
</NodeWithUnKnownData>
<NodeWithRandomNatureData>
<KnownElement>blah2134</KnownElement>
<UnknownElement>blahBlah324523</UnknownElement>
<NewUnknownElement>
<KnownNode2>test</KnownNode2>
<KnownElement>
<KnownNode3>test5654</KnownNode3>
<UnknownNode>test2342345</UnknownNode>
</KnownElement>
</NewUnknownElement>
</NodeWithRandomNatureData>
</root>
我只爲已知元素的模板。我必須使用我的模板並將未知節點顯示爲「節點名稱」:「值」。請幫幫我。
更新
一種由未知節點區分已知的規則 - 僅適用於已知節點模板。 如果我使用這個模板:
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
<xsl:output method="xhtml" omit-xml-declaration="yes"/>
<xsl:template match="root">
<xsl:apply-templates select="/NodeWithKnownData"/>
<xsl:apply-templates/>
</xsl:template>
<xsl:template match="*">
<xsl:value-of select="local-name()"/> : <xsl:value-of select="."/>
<xsl:apply-templates/>
</xsl:template>
<xsl:template match="NodeWithKnownData">
some useful actions
</xsl:template>
</xsl:stylesheet>
每個子節點recursevily重複。
應該是什麼未知節點區分知道的規則嗎?你有所有「已知」節點的xslt模板,如果是的話,你可以添加一個模板匹配=「*」,其中「觸發所有」其他「節點。 –
我已經更新了我的問題,回答了你的問題 – Bujaka