|
Subject: [xsl] Re: Spam:[xsl] Detecting missing link destinations From: JBryant@xxxxxxxxx Date: Fri, 13 May 2005 10:05:18 -0500 |
Hi, Peter,
What FO processor are you using? FOP gives me errors when I manage to
create internal-destination="" from my XSLT.
Short of changing processors, you could try checking the value of the xref
before you use it, thus:
<xsl:variable name="xref" select="whatever-you-use-for-an-xref-value"/>
<xsl:choose>
<xsl:when test="string-length($xref) = 0">
<xsl:message>Ruh Roh! Empty internal destination!</xsl:message>
</xsl:when>
<xsl:otherwise>
<fo:basic-link internal-destination="$xref"/>
</xsl:otherwise>
</xsl:choose>
Of course, you can add identifying values to the message. For example, if
there's always an element named heading with a title attribute somewhere
above the point where you have inserted a cross-reference, you could add
<xsl:value-of select="ancestor::heading/@title"/> and get the name of the
nearest heading in the message. (You may need to add a predicate if you
have heading elements within heading elements. In that case [1] gets the
nearest one.) If you do have that kind of structure, the message
instruction could look like this:
<xsl:message>Ruh Roh! Empty internal destination below <xsl:value-of
select="ancestor::heading/@title"/>!</xsl:message>
HTH
Jay Bryant
Bryant Communication Services
(presently consulting at Synergistic Solution Technologies)
| Current Thread |
|---|
|
| <- Previous | Index | Next -> |
|---|---|---|
| [xsl] Detecting missing link destin, Peter Robertson | Thread | [xsl] Coloured text, Peter Robertson |
| [xsl] Detecting missing link destin, Peter Robertson | Date | Re: [xsl] Problem in the compilatio, Kevin Rodgers |
| Month |