我是新手,所以请耐心等待......
我需要根据模板匹配非常简单地修改内容: 主题/体/部分/标题
此模板匹配正常。但是,我只需要在topic元素的title元素值为“Preface”时才需要这样做。
有人可以帮忙解决问题吗?
以下是代码:
<topic>
<title>Preface</title>
<body>
<p>This publication was written for...</p>
<section>
<title>Publication Information/Version</title>
这是xslt:
<xsl:template match="topic/body/section/title">
<fo:block xsl:use-attribute-sets="prefacetitle"
keep-with-next.within-page="always"
keep-together.within-column="always"
color="{$docColor}">
<!--<fo:marker marker-class-name="title-marker"><xsl:value-of select="normalize-space(.)"/></fo:marker>-->
<xsl:apply-imports/>
</fo:block>
</xsl:template>
<xsl:attribute-set name="prefacetitle" >
<xsl:attribute name="font-family">Trebuchet MS</xsl:attribute>
<xsl:attribute name="font-size">28pt</xsl:attribute>
<xsl:attribute name="font-weight">bold</xsl:attribute>
<xsl:attribute name="margin-bottom">9pt</xsl:attribute>
<xsl:attribute name="keep-with-next.within-column">always</xsl:attribute>
</xsl:attribute-set>
此代码有效,但我只希望它在具有主题/标题的祖先[text()='Preface']时修改节/标题。
有意义吗?
答案 0 :(得分:2)
没有代码就很难说出你想要的东西,但也许是这样的:
<xsl:template match="topic[title/text()='Preface']/body/section/title" >
如果没有,请澄清你的问题。