Número de elementos
Este sencillo ejemplo nos sirve para conocer el número de elementos que van a entrar en juego en una transformación XSLT. Y es que con unas pocas líneas podemos dar solución a esta necesidad.
Esos si, vamos paso a paso. Lo primero es conocer el documento XML sobre el que vamos a realizar la transformación:
<?xml version="1.0" encoding="iso-8859-1"?>
<libros>
<libro>
<titulo>Fuente Ovejuna</titulo>
<autor>Lope de Vega</autor>
<isbn>84-9815-002-7</isbn>
</libro>
<libro>
<titulo>La Celestina</titulo>
<autor>Fernando de Rojas</autor>
<isbn>84-96390-96-9</isbn>
</libro>
...
</libros>
En nuestro fichero XSLT lo primero será el posicionarnos en una parte de la estructura del documento XML, para saber el número de elementos que dicha estructura tiene. En este ejemplo, la idea es contar el número de libros que hay en el documento XML. A si que la plantilla deberá de situarse en la estructura principal, con la barra invertida (/).
Para contar el número de elementos disponemos de una función. Esta es la función count():
count(EstructuraXPath)
El parámetro de la función será una dirección XPath que haga relación a alguna estructura del documento XML que estamos tratando.
Para poder mostrar por pantalla el número de elementos deberemos de utilizar la etiqueta xsl:value-of, la cual, en su parámetro select llevará la función count.
<xsl:value-of select="count(/libros/libro)"/>