具有交叉链接的模板,不需要交叉链接

时间:2014-02-12 13:23:14

标签: xslt

我在匹配方案时遇到问题,我在xslt上使用我的模板如下,但我没有得到正确的输出。实际上,现在,这个xslt也产生了与标题文本的交叉链接,但是,它不应该用于表格和图形标题。我的意图是这应该产生交叉链接,除了表格标题和数字标题。

在我的xslt中,我有这个场景,

<xsl:template match="text()[../@class != 'tablecaption' or ../../@class != 'tablecaption' or ../@class != 'figurecaption']" exclude-result-prefixes="html">
<xsl:analyze-string select="." regex="(Chapter|Figure|Table|Appendix)\s(\d+|[A-Z])(\.)?(\d+)?|(www.[^ ]+)|(http://[^ ]+)|(Section|section)\s(\d)\.(\d+)(\.)?(\d+|\d)?(\.)?(\d)?" flags="x">
<xsl:matching-substring>
                <a>
<xsl:attribute name="href">
<xsl:variable name="x1" select="regex-group(1)"/>
<xsl:variable name="x2" select="regex-group(2)"/>
<xsl:variable name="x4" select="regex-group(4)"/>
<xsl:variable name="x5" select="regex-group(5)"/>
<xsl:variable name="x6" select="regex-group(6)"/>
<xsl:variable name="x7" select="regex-group(7)"/>

根据我的目标,这个xslt不应该在这里提供交叉链接。它在这里做同样的事情

 <par class="tablecaption"><inline style="list-style-type: decimal; ">Table 3.4  Examples of extremely reactive and proactive behaviour</inline></par>

这应该转变为 <p class="tablecaption">Table 3.4 Examples of extremely reactive and proactive behaviour</p>,这没关系

在这里(下面),根据我的目标,这个xslt也不应该提供下面的交叉链接。但是,截至目前,它正在提供与下面的交叉链接,但是,它不应该。

<par class="tablecaption">Table 3.3  Examples of extremely reactive and proactive behaviour</inline></par>

这应该转换为

<p class="tablecaption">Table 3.3  Examples of extremely reactive and proactive behaviour</p>

但是,它如下变换

<p class="tablecaption"><a href="#tab1">Table 3.3</a>  Examples of extremely reactive and proactive behaviour</p>

为什么会这样?任何想法请

0 个答案:

没有答案