Adicionar entidades de caracteres para XSLT no Dreamweaver

Última atualização em 20/12/2021

Leia este artigo para ver como especificar entidades de caractere ausentes a fim de substituir caracteres especiais para XSLT no Dreamweaver.

A interface de usuário foi simplificada no Dreamweaver 2017. Logo, talvez você não consiga encontrar algumas das opções descritas neste artigo no Dreamweaver 2017 e em versões posteriores. Para obter mais informações, consulte este artigo (em inglês).

Especificar uma entidade de caractere ausente

No XSLT, alguns caracteres não são permitidos em determinados contextos. Por exemplo, você não pode usar o sinal de menor que (<) e o símbolo comercial (&) no texto entre tags ou em um valor de atributo.O mecanismo de transformação XSLT dá um erro se esses caracteres forem usados incorretamente.Para resolver o problema, você pode especificar entidades de caractere para substituir os caracteres especiais.

Uma entidade de caractere é uma string de caracteres que representa outros caracteres. As entidades de caractere são nomeadas ou numeradas. Uma entidade nomeada começa com um e comercial (&) seguido pelo nome ou caracteres, e termina com ponto e vírgula (;). Por exemplo, < representa o caractere de ângulo esquerdo (<).As entidades numeradas também começam e terminam da mesma forma, exceto que um sinal de hash (#) e um número especificam o caractere.

O XSLT tem as seguintes cinco entidades predefinidas:

Caractere

Código da entidade

< (menor que)

<

& (E comercial)

&

> (maior que)

>

" (aspas)

&quot;

‘ (apóstrofe)

&apos;

Se você usar outras entidades de caractere em um arquivo XSL, precisa defini-las na seção DTD do arquivo XSL. Dreamweaver fornece várias definições de entidade padrão que você pode ver na parte superior de um arquivo XSL criado no Dreamweaver.Essas entidades padrão cobrem uma seleção ampla dos caracteres mais usados.

Quando você faz a visualização do arquivo XSL em um navegador, o Dreamweaver verifica o arquivo XSL em busca de entidades indefinidas e notifica se uma entidade indefinida for encontrada.

Se você visualizar um arquivo XML anexado a um arquivo XSLT ou se visualizar uma página do lado do servidor com uma transformação XSLT, o servidor ou navegador (em vez do Dreamweaver) o notifica sobre uma entidade indefinida.O seguinte é um exemplo de uma mensagem que você pode receber no Internet Explorer quando solicita um arquivo XML transformado por um arquivo XSL com uma definição de entidade ausente:Referência à entidade indefinida 'auml'. Error processing resource 'http://localhost/testthis/list.xsl'. Linha 28, Posição 20 <p class=''test''>&auml;</p> -------------------^

Para corrigir o erro em sua página, você deve adicionar a definição de entidade à sua página manualmente.

Referência à entidade indefinida 'auml'. Error processing resource 'http://localhost/testthis/list.xsl'. Linha 28, posição 20

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

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

Especificar uma definição de entidade ausente

Consulte o caractere ausente na página de referência de entidade de caractere no site do W3C em www.w3.org/TR/REC-html40/sgml/entities.html.

Esta página da Web contém as 252 entidades permitidas em HTML 4 e XHTML 1.0.

Por exemplo, se a entidade de caractere Egrave estiver ausente, pesquise por "Egrave" na página da Web do W3C. Você encontra a seguinte entrada:

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

Anote o nome da entidade e o código da entidade na entrada.

No exemplo, Egrave é o nome da entidade, e &#200 é o código da entidade.

Com essas informações, alterne para a exibição de Código e insira a seguinte tag de entidade no início do arquivo XSL (após a declaração Doctype e com as outras tags de entidade):

<!ENTITY entityname "entitycode;">

No exemplo, você insere a seguinte tag de entidade:<!ENTITY Egrave &quot;&#200;&quot;>

<!ENTITY Egrave "&#200;">

Salve o arquivo.

Se você usar repetidamente as mesmas entidades de caractere, talvez queira adicionar permanentemente as definições nos arquivos XSL que o Dreamweaver cria por padrão quando você usa Arquivo > Novo.

Adicionar definições de entidades aos arquivos XSL que o Dreamweaver cria por padrão

Localize o seguinte arquivo de configuração na pasta do aplicativo Dreamweaver e abra-o em qualquer editor de texto:

Configuration/DocumentTypes/MMDocumentTypeDeclarations.xml

Localize a declaração mm_xslt_1:

<documenttypedeclaration id="mm_xslt_1">

Insira a nova tag ou tags de entidade na lista de tags de entidade, da seguinte forma:

<!ENTITY entityname "entitycode;">

Salve o arquivo e reinicie o Dreamweaver.