基本上我有一个包含几段的文字,必须加以计算。然后段落号必须显示在段落的左侧。
我使用以下内容成功计算了所有段落:
<xsl:for-each select="//troonrede">
<xsl:value-of select="count(paragraph)"/><br/>
</xsl:for-each>
但是,我不知道如何将这个实现到我的HTML输出中。抱歉,今天开始使用XSLT,我在其他地方找不到这个解决方案。
亲切的问候,
Thijmen。
编辑:XML示例
<?xml version="1.0" encoding="utf8"?>
<!DOCTYPE troonrede
[ <!ENTITY euml "ë"> ]
>
<troonrede spreker="Koningin Beatrix">
<hoofd>
Leden van de <organisatie>Staten-Generaal</organisatie>
</hoofd>
<paragraph>
Willen wij daadkrachtig het economisch herstel vorm kunnen geven, dan is stabiel bestuur gewenst.
Intensief wordt sinds de <organisatie> Tweede Kamer</organisatie>-verkiezingen van <datum>9 juni</datum>
gewerkt aan de totstandkoming van een nieuw kabinet. Lopende de kabinetsformatie past het huidige kabinet
terughoudendheid bij het doen van beleidsvoorstellen voor het komende jaar.
</paragraph>
<paragraph>
Lange tijd en wereldwijd zullen de gevolgen van de financieel-economische crisis voelbaar blijven.
Een ingrijpend pakket van ombuigingen is nu noodzakelijk om de positie van ons land ook op de lange
termijn te verbeteren. Maatregelen voor de jaren na <datum>2011</datum> zullen vanzelfsprekend door
een nieuw kabinet voorbereid moeten worden.
</paragraph>
</troonrede>
答案 0 :(得分:0)
您还没有真正解释要用于表示文档的HTML格式,但是如果要对段落进行编号,可以将它们转换为HTML有序列表ol
,如下所示:
<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
version="1.0">
<xsl:output method="html" indent="yes" version="5" doctype-system="about:legacy-doctype"/>
<xsl:template match="/">
<html>
<head>
<title>Example</title>
</head>
<body>
<xsl:apply-templates/>
</body>
</html>
</xsl:template>
<xsl:template match="troonrede">
<section>
<h2>
<xsl:apply-templates select="hoofd"/>
</h2>
<ol>
<xsl:apply-templates select="paragraph"/>
</ol>
</section>
</xsl:template>
<xsl:template match="paragraph">
<li>
<xsl:apply-templates/>
</li>
</xsl:template>
</xsl:stylesheet>