Dreamweaver CS4 | ![]() |
Recursos de Dreamweaver CS4 |
Datos XML y elementos repetidosEl objeto XSLT Repetir región permite mostrar elementos repetidos de un archivo XML en una página. Cualquier región que contenga un marcador de posición de los datos XML puede convertirse en una región repetida. Sin embargo, las regiones más habituales son una tabla, una fila o una serie de filas de tabla. El siguiente ejemplo ilustra el modo en que se aplica el objeto XSLT Repetir región a una fila de la tabla que muestra la información del menú de un restaurante. La fila inicial muestra tres elementos distintos del esquema XML: artículo, descripción y precio. Cuando el objeto XSLT Repetir región se aplica a la fila de la tabla (y el servidor de aplicaciones procesa la página), la tabla se repite con datos exclusivos insertados en cada nueva tabla. Cuando se aplica un objeto XSLT Repetir región a un elemento en la ventana de documento, aparece un contorno delgado delimitado con tabulaciones de color gris alrededor de la región repetida. Al obtener una vista previa de su trabajo en un navegador (Archivo > Vista previa en el navegador), el contorno gris desaparece y la selección se amplía para mostrar los elementos repetidos especificados del archivo XML, tal como se muestra en la ilustración anterior. Cuando añada el objeto XSLT Repetir región a la página, se acortará la longitud del marcador de posición de datos XML en la ventana de documento. Esto se debe a que Dreamweaver actualiza la expresión XPath (lenguaje de ruta XML) del marcador de posición de datos XML para que esté relacionado con la ruta de acceso del elemento repetido. Por ejemplo, el código siguiente está ideado para una tabla que contiene dos marcadores de posición dinámicos, sin un objeto XSLT Repetir región aplicado a la tabla: <table width="500" border="1"> <tr> <td><xsl:value-of select="rss/channel/item/title"/></td> </tr> <tr> <td><xsl:value-of select="rss/channel/item/description"/></td> </tr> </table> El código siguiente es para la misma tabla con el objeto XSLT Repetir región aplicado: <xsl:for-each select="rss/channel/item"> <table width="500" border="1"> <tr> <td><xsl:value-of select="title"/></td> </tr> <tr> <td><xsl:value-of select="description"/></td> </tr> </table> </xsl:for-each> En el ejemplo anterior, Dreamweaver ha actualizado la sintaxis XPath para los elementos de la región repetida (title y description) para que estén relacionados con la sintaxis XPath de las etiquetas <xsl:for-each>, en vez de todo el documento. Dreamweaver genera expresiones XPath relativas al contexto en otros casos también. Por ejemplo, si arrastra un marcador de posición de datos XML a una tabla que ya tenga un objeto XSLT Repetir región aplicado, Dreamweaver muestra automáticamente la sintaxis XPath relativa a la que ya existe en las etiquetas <xsl:for-each>. |