PDF (adobe.com)

Creación y edición de regiones condicionales XSLT



Puede crear regiones condicionales simples o múltiples en una página XSLT. Puede seleccionar un elemento en la vista Diseño y aplicar una región condicional a la selección, o bien puede insertar una región condicional en el punto de inserción del documento.

Por ejemplo, si quiere mostrar la expresión “No disponible” junto al precio de un elemento cuando éste ya no esté disponible, puede escribir el texto “No disponible” en la página, seleccionarlo y, después, aplicar una región condicional al texto seleccionado. Dreamweaver rodea la selección con etiquetas <xsl:if> y sólo muestra la palabra “No disponible” en la página cuando los datos cumplen las condiciones de la expresión condicional.

Aplicación de una región condicional XSLT

Puede escribir una expresión condicional simple para insertarla en la página XSLT. Si el contenido está seleccionado al abrir el cuadro de diálogo Región condicional, el contenido se ajustará en un bloque <xsl:if>. Si no hay contenido seleccionado, el bloque <xsl:if> se añadirá en el punto de inserción de la página. Es recomendable utilizar el cuadro de diálogo para familiarizarse con su uso y, más adelante, personalizar la expresión en la vista Código.

El elemento <xsl:if> es similar a la declaración if de otros lenguajes de programación. Este elemento sirve para probar una condición y decidir después qué hacer en función del resultado. El elemento <xsl:if> permite probar una expresión para un valor simple true o false.

  1. Seleccione Insertar > Objetos XSLT > Región condicional o haga clic en el icono Región condicional en la categoría XLST del panel Insertar.
  2. En el cuadro de diálogo Región condicional, escriba la expresión condicional que quiere utilizar para la región.

    En el siguiente ejemplo, comprobaremos si el valor del atributo @available del nodo de contexto es true.


  3. Haga clic en Aceptar.

    El código siguiente se inserta en la página XSLT:

    <xsl:if test="@available=&apos;true&apos;"> 
        Content goes here 
    </xsl:if>
    Nota: Debe rodear los valores de cadena, como los valores true, entre comillas. Dreamweaver codifica las comillas por el usuario (') para que se introduzcan como XHTML válido.

    Además de los nodos de prueba para los valores, puede utilizar cualquiera de las funciones compatibles de XSLT en cualquier declaración condicional. La condición se prueba para el nodo actual del archivo XML. En el siguiente ejemplo, queremos probar el último nodo del conjunto de resultados:


    Para más información y ejemplos de expresiones condicionales, consulte la sección <xsl:if> del panel Referencia (Ayuda > Referencia).

Aplicación de múltiples regiones condicionales XSLT

Puede escribir una expresión condicional simple para insertarla en la página XSLT. Si el contenido está seleccionado al abrir el cuadro de diálogo Región condicional, el contenido se ajustará en un bloque <xsl:choose>. Si no selecciona ningún contenido, el bloque <xsl:choose> se añadirá en el punto de inserción de la página. Es recomendable utilizar el cuadro de diálogo para familiarizarse con su uso y, más adelante, personalizar la expresión en la vista Código.

El elemento <xsl:choose> es similar a la declaración case de otros lenguajes de programación. Este elemento sirve para probar una condición y decidir después qué hacer en función del resultado. El elemento <xsl:choose> permite probar condiciones múltiples.

  1. Seleccione Insertar > Objetos XSLT > Región condicional múltiple o haga clic en el icono Región condicional múltiple en la categoría XLST del panel Insertar.
  2. En el cuadro de diálogo Región condicional múltiple, escriba la primera condición.

    En el siguiente ejemplo, probaremos si el subelemento price del nodo actual es menor que cinco.


  3. Haga clic en Aceptar.

    En el ejemplo, se inserta el código siguiente en la página XSLT:

    <xsl:choose> 
        <xsl:when test="price&lt;5"> 
            Content goes here 
        </xsl:when> 
        <xsl:otherwise> 
            Content goes here 
        </xsl:otherwise> 
    </xsl:choose>
  4. Para insertar otra condición, coloque el punto de inserción en la vista Código entre los pares de etiquetas <xsl:when> o justo antes de la etiqueta <xsl:otherwise> y, a continuación, inserte una región condicional (Insertar > Objetos XSLT > Región condicional).

    Después de especificar la condición y hacer clic en Aceptar, se inserta otra etiqueta <xsl:when> en el bloque <xsl:choose>.

    Para más información y ejemplos de expresiones condicionales, consulte las secciones <xsl:choose> del panel Referencia (Ayuda > Referencia).

Configuración de las propiedades de región condicional (If)

El inspector de propiedades de definición de región condicional sirve para modificar la condición utilizada en una región condicional de la página XSL. La región condicional prueba la condición y decidir qué hacer después en función del resultado.

 En el cuadro de prueba, introduzca una nueva condición y presiona la tecla Intro.

Configuración de las propiedades condicionales (When)

El inspector de propiedades de definición de región condicional sirve para modificar la condición utilizada en una región condicional múltiple de la página XSL. La región condicional múltiple prueba la condición y decidir qué hacer después en función del resultado.

 En el cuadro de prueba, introduzca una nueva condición y presiona la tecla Intro.