Ciao a tutti, sul manuale xml e xslt di html.it

http://xml.html.it/guide/lezione/1749/xslt/

è presente un esempio di formattazione di un file xml tramite xsl.
il file xml dove ho aggiunto
Codice PHP:
<?xml-stylesheet type='text/xsl' href='prova.xsl'?>
è il seguente

Codice PHP:
<?xml version="1.0"?>
<?xml
-stylesheet type='text/xsl' href='prova.xsl'?>
<rubrica>
  <persona>
    <nome>Mario</nome>
    <cognome>Rossi</cognome>
    <indirizzo>
      <via>via bianchi 1</via>
      <cap>00000</cap>
      <citta>Roma</citta>
    </indirizzo>
    <telefono>
      <telefono_fisso>123456</telefono_fisso>
      <telefono_cellulare>987656412</telefono_cellulare>
    </telefono>
  </persona>
</rubrica>
mentro il file xsl è il seguente:
Codice PHP:
<?xml version="1.0"?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/transform" version="1.0">
  <xsl:template match="/">
    <html>
      <head>
        <title>Rubrica in versione HTML</title>
      </head>
      <body>
        <h1>Rubrica</h1>
        <xsl:apply-templates/>
      </body>
    </html>  
  </xsl:template>
  <xsl:template match="persona">
    <h2> <xsl:value-of select="cognome"/> <xsl:value-of select="nome"/> </h2>
    <ul>[*]Via: <xsl:value-of select="./indirizzo/via"/>[*]CAP: <xsl:value-of select="./indirizzo/cap"/>[*]Citta': <xsl:value-of select="./indirizzo/citta"/>[*]Telefono (fisso): <xsl:value-of select="./telefono/telefono_fisso"/>[*]Telefono (cellulare): <xsl:value-of select="./telefono/telefono_cellulare"/>[/list]
  </xsl:template>
</xsl:stylesheet>
Il risultato però non prende i dati dall'xml, cioè vedo solo la lista con via, cap, città ecc.. senza i dati contenuti nell'xml
come mai?
ho sbagliato io qualcosa?