Name
position() Function — Returns a number equal to the context position from the current context.
Synopsis
numberposition(
)
Inputs
None.
Output
A number equal to the position of the current node in the evaluation context.
Defined in
XPath section 4.1, Node Set Functions.
Examples
This example uses the position()
function to determine the background color of the rows of a table. The background colors cycle through the options white
, darkgray
, and lightgreen
. Here’s the XML document we’ll use:
<?xml version="1.0"?> <list> <title>A few of my favorite albums</title> <listitem>A Love Supreme</listitem> <listitem>Beat Crazy</listitem> <listitem>Here Come the Warm Jets</listitem> <listitem>Kind of Blue</listitem> <listitem>London Calling</listitem> <listitem>Remain in Light</listitem> <listitem>The Joshua Tree</listitem> <listitem>The Indestructible Beat of Soweto</listitem> </list>
We’ll use this stylesheet to generate our HTML document:
<?xml version="1.0"?> <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> <xsl:output method="html"/> <xsl:template match="/"> <html> <head> <title> <xsl:value-of select="/list/title"/> </title> </head> <body> <h1> <xsl:value-of select="/list/title"/> </h1> <table border="1"> <xsl:for-each select="/list/listitem"> <xsl:variable name="background-color"> <xsl:choose> <xsl:when test="position() mod 3 = 1">white</xsl:when> <xsl:when test="position() mod 3 = 2">darkgray</xsl:when> <xsl:otherwise>lightgreen</xsl:otherwise> </xsl:choose> ...
Get XSLT now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.