This is the mail archive of the xsl-list@mulberrytech.com mailing list .


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

RE: self axis and attributes




>
> but no! The self:: axis's principal node type is element, and since
> the attribute is not a dem:count element, it still gets included! The
> best I can do whilst retaining independence between the stylesheet and
> source is:
>
>   @*[not(local-name() = 'count' and
>          namespace-uri() = document('')/*/namespace::dem)]
>                            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
>                         or hand-code, or variable, or entity
>
> [Please don't tell me to swap the xsl:attribute for the xsl:copy-of to
>  override the dem:count - I'm looking for a general solution.]
>
> Am I missing something? Is there any way of testing the identity of
> namespaced attributes while retaining independence between the source
> and stylesheet and without testing the namespace-uri()?

It's a bit ugly but I think this works,

<xsl:template match="vote">
   <xsl:copy>
      <xsl:attribute name="dem:count">
         <xsl:value-of select="@rep:count - 432" />
      </xsl:attribute>
	<xsl:variable name="dem" select="generate-id(@dem:count)"/>
      <xsl:copy-of select="@*[generate-id()!=$dem]" />
   </xsl:copy>
</xsl:template>

Of course its not so easy if you are dealing with more than one attribute...

Kev.


_________________________________________________________
Do You Yahoo!?
Get your free @yahoo.com address at http://mail.yahoo.com


 XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]