Adición de entidades de caracteres para XSLT en Dreamweaver

Última actualización el 20 dic 2021

Lea este artículo para ver cómo especificar las entidades de caracteres no presentes para sustituir caracteres especiales para XSLT en Dreamweaver.

La interfaz de usuario se ha simplificado en Dreamweaver y versiones posteriores. Como resultado, es posible que no encuentre algunas de las opciones que se describen en este artículo en Dreamweaver y versiones posteriores. Para obtener más información, consulte este artículo.

Especificación de una entidad de caracteres no presente

En XSLT, algunos caracteres no están permitidos en ciertos contextos. Por ejemplo, no puedes usar el signo menor que (<) y el símbolo ampersand (&) en el texto entre etiquetas o en un valor de atributo. El motor de transformación XSLT te dará un error si esos caracteres se usan incorrectamente. Para resolver el problema, puedes especificar entidades de carácter para reemplazar los caracteres especiales.

Una entidad de carácter es una cadena de caracteres que representa otros caracteres. Las entidades de carácter pueden ser nombradas o numeradas. Una entidad nombrada comienza con un ampersand (&) seguido del nombre o caracteres, y termina con un punto y coma (;). Por ejemplo, < representa el carácter de signo menor que (<).Las entidades numeradas también comienzan y terminan de la misma manera, excepto que un símbolo hash (#) y un número especifican el carácter.

XSLT tiene las siguientes cinco entidades predefinidas:

Carácter

Código de entidad

< (menor que)

<

& (ampersand)

&

> (mayor que)

>

" (comillas)

&quot;

‘ (apóstrofo)

&apos;

Si usas otras entidades de carácter en un archivo XSL, necesitas definirlas en la sección DTD del archivo XSL. Dreamweaver proporciona varias definiciones de entidad predeterminadas que puedes ver en la parte superior de un archivo XSL creado en Dreamweaver. Estas entidades predeterminadas cubren una amplia selección de los caracteres más comúnmente usados.

Cuando previsualizas tu archivo XSL en un explorador, Dreamweaver verifica el archivo XSL en busca de entidades indefinidas y te notifica si se encuentra una entidad indefinida.

Si previsualizas un archivo XML adjunto a un archivo XSLT o si previsualizas una página del lado del servidor con una transformación XSLT, el servidor o explorador (en lugar de Dreamweaver) te notifica de una entidad indefinida. El siguiente es un ejemplo de un mensaje que puedes recibir en Internet Explorer cuando solicitas un archivo XML transformado por un archivo XSL con una definición de entidad faltante:Referencia a entidad no definida &apos;auml&apos;.Error al procesar el recurso 'http://localhost/testthis/list.xsl'. Línea 28, Posición 20 <p class=''test''>&auml;</p> -------------------^

Para corregir el error en tu página, debes añadir manualmente la definición de la entidad a tu página.

Referencia a entidad indefinida 'auml'. Error al procesar el recurso 'http://localhost/testthis/list.xsl'. Línea 28, Posición 20

<p class=''test''>&auml;</p>

-------------------^

Especificación de una definición de entidad no presente

Busca el carácter faltante en la página de referencia de entidades de carácter en el sitio web del W3C en www.w3.org/TR/REC-html40/sgml/entities.html.

Esta página web contiene las 252 entidades permitidas en HTML 4 y XHTML 1.0.

Por ejemplo, si la entidad de carácter Egrave falta, busca "Egrave" en la página web del W3C. Encontrarás la siguiente entrada:

<!ENTITY Egrave CDATA "&#200;" -- letra latina mayúscula E con acento grave, U+00C8 ISOlat1 -->

Anote el nombre de la entidad y el código de entidad en la entrada.

En el ejemplo, Egrave es el nombre de la entidad, y &#200 es el código de la entidad.

Con esta información, cambie a la vista de código e introduzca la siguiente etiqueta de entidad al principio del archivo XSL (después de la declaración Doctype y con las otras etiquetas de entidad):

<!ENTITY entityname "entitycode;">

En el ejemplo, introduce la siguiente etiqueta de entidad:<!ENTITY Egrave &quot;&#200;&quot;>

<!ENTITY Egrave "&#200;">

Guarde el archivo.

Si usa repetidamente las mismas entidades de caracteres, puede que desee añadir permanentemente sus definiciones en los archivos XSL que Dreamweaver crea de forma predeterminada cuando utiliza Archivo > Nuevo.

Añadir definiciones de entidades a los archivos XSL que Dreamweaver crea de forma predeterminada

Busque el siguiente archivo de configuración en la carpeta de la aplicación Dreamweaver y ábralo en cualquier editor de texto:

Configuration/DocumentTypes/MMDocumentTypeDeclarations.xml

Localice la declaración denominada mm_xslt_1:

<documenttypedeclaration id="mm_xslt_1">

Introduzca la nueva etiqueta o etiquetas de entidad en la lista de etiquetas de entidad, de la siguiente manera:

<!ENTITY entityname "entitycode;">

Guarde el archivo y reinicie Dreamweaver.