This is the mail archive of the
xsl-list@mulberrytech.com
mailing list .
Re: Complicated Variable testing.
- To: xsl-list at mulberrytech dot com
- Subject: Re: Complicated Variable testing.
- From: David Carlisle <davidc at nag dot co dot uk>
- Date: Fri, 5 May 2000 15:47:01 +0100 (BST)
- References: <33DDC954510AD411B46400A0C9C732D6048E92@exch-klip.btg.com>
- Reply-To: xsl-list at mulberrytech dot com
xmlns:c="file:/dev/null"
xmlns:d="file:/dev/null"
xmlns:q="file:/dev/null"
xmlns:t="file:/dev/null">
what's the point of having four prefixes for the same namespace?
c:priority and d:priority are the same element to a namespace aware
processor, so both would match an xpath expression "q:priority"
It would be clearer if you used the same prefix for all, or different
namespaces.
<c:priority VH="VERYHIGH/"/>
<c:priority H="HIGH/"/>
<c:priority M="MEDIUM/"/>
<c:priority L="LOW/"/>
<c:priority VL="VERYLOW/"/>
to get the highest priority of any paragraph in the source document
assuming use is something like <para priority="M">...</para>
you could go as follows
document
<a>
<para priority="M"/>
<para priority="H"/>
</a>
stylesheet
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
version="1.0"
xmlns:c="file:/dev/null"
>
<xsl:output method="xml" indent="yes"/>
<c:priority VH="VERYHIGH/"/>
<c:priority H="HIGH/"/>
<c:priority M="MEDIUM/"/>
<c:priority L="LOW/"/>
<c:priority VL="VERYLOW/"/>
<xsl:variable name="root" select="/"/>
<xsl:template match="/">
<xsl:for-each select="document('')/xsl:stylesheet/c:priority/@*
[name(.)=$root//*/@priority] ">
<xsl:if test="position()=last()">
<xsl:value-of select="."/>
</xsl:if>
</xsl:for-each>
</xsl:template>
</xsl:stylesheet>
output
MEDIUM
David
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list