Subject: Re: Complicated Variable testing.
From: David Carlisle <davidc@xxxxxxxxx>
Date: Fri, 5 May 2000 15:47:01 +0100 (BST)
|
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
|