问题:我想引用XML文件中的参考书目,该文件使用XSL转换为HTML页面。参考书目定义如下:
<bibliography>
<bibitem bibid="b1">
<title>Genome-enabled development of DNA markers of ecology, evolution and conservation. Molecular Ecology 19</title>
<authors>
<author>Thomson, R. C.</author>
<author>Wang, I. J.</author>
<author>Johnson, J. R.</author>
</authors>
<date>2010</date>
<other>2184-2195</other>
</bibitem>
<bibitem bibid="b2">
...
我的问题是,如何在HTML页面中用数字表示对bibitem的引用?例如:
"...and genes are molecular units of heredity that code a protein. [1] ...
这意味着我引用了bibitem属性&#34; b1&#34;。另外,参考文献[2]意味着bibitem =&#34; b2&#34;等等。但是我怎样才能使这个&#34;类似地图&#34;使用XSL转换的关联?
答案 0 :(得分:2)
假设你有一个像<cite bibref="b1" />
这样的标签来插入论文中的参考文献,你可以这样做:
<xsl:template match="cite">
<xsl:apply-templates select="key('citebib', @bibid)" mode="cite"/>
</xsl:template>
<xsl:template match="bibitem" mode="cite">
<xsl:text>[</xsl:text>
<xsl:number />
<xsl:text>]</xsl:text>
</xsl:template>
在这种情况下,只需从<bibitem>
父元素中的<bibliography>
元素的索引位置检索该数字。
您还可以对从您声明的键中检索到的元素使用apply-templates。您还应该发布XSL中的相关元素。