We want to help developers like you. Tell us about how you work: http://qsurvey.mozilla.com/s3/Developer-Audience-Survey-V2/?s=mdn

The not function evaluates a boolean expression and returns the opposite value.


not(expression )


The expression is evaluated exactly as if it were passed as an argument to the boolean() function.


True for an expression that evaluates to false; false for an expression that evaluates to true.


  • This function should behave similarly to the boolean() function except that it returns the opposite value.
  • You can test if an element doesn't have some attribute.
<xsl:for-each match="//a[not(@name and @name = 'badname')]">
  <!-- iterates over any <a> element in the document, that
       either has no 'name' attribute at all, or it has one,
       but its value is not "badname". -->


XPath 1.0 4.3

Gecko support



Document Tags and Contributors

 Contributors to this page: Sheppy, Markus Prokott, Mgjbot, Shoot, Fredchat, Nickolay, Ptak82, Jonnyq
 Last updated by: Sheppy,