ho questo semplice file xml
codice:
<?xml version="1.0"?>
<?xml-stylesheet type="text/xsl" href="articolo_trasformazione.xsl"?> 
<articolo>
	<post>
		<testo>
			post 1 - prima riga
		</testo>
		<testo>
			post 1 - second riga
		</testo>
		<testo>
			post 1 - terza riga
		</testo>
	</post>
	<post>
		<testo>
			post 2 - prima e unica riga
		</testo>
	</post>
</articolo>

con questa trasformazione metto una linea di separazione tra un post e l'atro
ma non riesco a stampare il contenuto degli elementi "testo", cosa sbaglio?
codice:
<xsl:for-each select="/articolo/post">
			
			<xsl:for-each select="testo">
				

<xsl:value-of select="testo"/></p>
			</xsl:for-each>
		
		<hr></hr>
</xsl:for-each>


se nell'elemento "post" ci fossero piu elementi di natura diversa (come nell'esempio qui sotto)
come dovrei impostare il cicli per stamparli tutti(indipendentemente dal tipo di elemento)
codice:
<articolo>
	<post>
		<testo>
			post 1 - prima riga
		</testo>
		<didascalia>
			bla bla bla
		</didascalia>
		<testo>
			post 1 - second riga
		</testo>
		<immagine>
			foto.jpg
		</immagine>
	</post>
	<post>
		<testo>
			ciao ciao ciao
		</testo>
	</post>
</articolo>