1
我想呈現與嵌套部分分開的xml的非嵌套部分。 E.g是有可能使這個XMLXSL如何分別處理子元素?
<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" href="para.xsl"?>
<paragraph>Introduction
<list>
<element>First</element>
<element>Second</element>
</list>
</paragraph>
爲
<p>Introduction
<ul>
<li>First</li>
<li>Second</li>
</ul>
</p>
?
我的樣式表(不工作)是
<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:template match="/">
<xsl:apply-templates select="paragraph" />
</xsl:template>
<xsl:template match="paragraph" >
<p><xsl:value-of select="*[not(list)]"/></p>
<xsl:apply-templates select="list" />
</xsl:template>
<xsl:template match="list" >
<ul><xsl:apply-templates select="element"/></ul>
</xsl:template>
<xsl:template match="element" >
<li><xsl:value-of select="."/></li>
</xsl:template>
</xsl:stylesheet >
它呈現爲
<p>
First
Second
</p>
<ul>
<li>First</li>
<li>Second</li>
</ul>
注意,無論是在HTML 4也不在HTML5(http://www.w3.org/TR/html5/grouping-content.html# p元素)允許'p'元素包含像'ul'元素那樣的塊元素,因此XSLT可以很容易地創建您請求瀏覽器的HTML解析器的樹,可能會在它完成時返回'p'元素遇到'ul'元素。 –