Xml 复杂的嵌套列表XSLT
我是XSLT新手,对列表的格式有点困惑。基本上我需要我的XML结构,其中有一部分:Xml 复杂的嵌套列表XSLT,xml,xslt,Xml,Xslt,我是XSLT新手,对列表的格式有点困惑。基本上我需要我的XML结构,其中有一部分: <slideshow> <slide id="A1"> <title>XML techniques</title> <paragraph> Slideshow prepresents different kind of <bold>XML</bold> techniques </par
<slideshow>
<slide id="A1">
<title>XML techniques</title>
<paragraph> Slideshow prepresents different kind of <bold>XML</bold> techniques </paragraph>
<paragraph> Most common XML Techniques are </paragraph>
<numberedlist>
<item> Basic XML, DTD (version 1.0) </item>
<item> XHTML </item>
<itemizedlist>
<item> XHTML 1.0 </item>
<item> XHTML basic </item>
<numberedlist>
<item> for mobile phones </item>
<item> basic set for all XHTML documents</item>
</numberedlist>
</itemizedlist>
<item> XML namespace </item>
<item> XSL </item>
<itemizedlist>
<item> XSLT - template based programming language</item>
<item> XSL-FO - formating output like CSS </item>
</itemizedlist>
<item> Programming API (like SAX and DOM) </item>
<item> XML Schemas </item>
</numberedlist>
</slide>
..
</slideshow>
XML技术
幻灯片展示了各种XML技术
最常见的XML技术是
基本XML,DTD(1.0版)
XHTML
XHTML1.0
XHTMLBasic
移动电话
所有XHTML文档的基本集
XML名称空间
XSL
基于XSLT模板的编程语言
XSL-FO-像CSS一样格式化输出
编程API(如SAX和DOM)
XML模式
..
看起来像这样:
- XHTML1.0
- XHTML基础知识
- 移动电话
- 所有XHTML文档的基本集
- 基于XSLT模板的编程语言
- XSL-FO-格式化输出,如CSS
我希望做到尽可能简单,所以我只是使用模板,没有复杂的XPath掩码,但似乎没有简单的方法。。有人能帮忙吗?谢谢大家! 实际上,这在XSLT中是微不足道的,因为它是递归的 XSLT1.0
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output method="html" encoding="UTF-8"/>
<xsl:strip-space elements="*"/>
<xsl:template match="numberedlist">
<ol>
<xsl:apply-templates/>
</ol>
</xsl:template>
<xsl:template match="itemizedlist">
<ul>
<xsl:apply-templates/>
</ul>
</xsl:template>
<xsl:template match="item">
<li>
<xsl:value-of select="." />
</li>
</xsl:template>
<xsl:template match="text()"/>
</xsl:stylesheet>
结果
<ol>
<li> Basic XML, DTD (version 1.0) </li>
<li> XHTML </li>
<ul>
<li> XHTML 1.0 </li>
<li> XHTML basic </li>
<ol>
<li> for mobile phones </li>
<li> basic set for all XHTML documents</li>
</ol>
</ul>
<li> XML namespace </li>
<li> XSL </li>
<ul>
<li> XSLT - template based programming language</li>
<li> XSL-FO - formating output like CSS </li>
</ul>
<li> Programming API (like SAX and DOM) </li>
<li> XML Schemas </li>
</ol>
基本XML,DTD(1.0版)
XHTML
- XHTML1.0
- XHTMLBasic
- 移动电话
- 所有XHTML文档的基本集
XML名称空间
XSL
- 基于XSLT模板的编程语言
- XSL-FO-像CSS一样格式化输出
编程API(如SAX和DOM)
XML模式
渲染:
要生成有效的HTML,我认为需要做更多的工作,因为HTML不允许
ul
元素作为ol
元素的子元素,请参阅或。因此,无法将输入结构直接映射到有效的HTML结构,您需要确保ul
元素作为从前面的项
元素转换而来的li
元素的子元素。