Lees dit artikel voor informatie over het opgeven van ontbrekende tekenentiteiten om speciale tekens voor XSLT te vervangen in Dreamweaver.
De gebruikersinterface van nieuwere versies van Dreamweaver is vereenvoudigd. Daarom zijn sommige opties die in dit artikel worden beschreven, niet beschikbaar in nieuwere versies van Dreamweaver. Meer informatie vindt u in dit artikel.
Ontbrekende tekeneenheid opgeven
In XSLT zijn bepaalde tekens niet toegestaan in bepaalde contexten. Je kunt bijvoorbeeld het kleiner dan-teken (<) en het ampersand-teken (&) niet gebruiken in de tekst tussen tags of in een attribuutwaarde. De XSLT-transformatie-engine geeft een fout als deze tekens onjuist worden gebruikt. Om het probleem op te lossen, kun je tekenentiteiten opgeven om de speciale tekens te vervangen.
Een tekenentiteit is een tekenreeks die andere tekens vertegenwoordigt. Tekenentiteiten zijn ofwel benoemd of genummerd. Een benoemde entiteit begint met een ampersand (&) gevolgd door de naam of tekens, en eindigt met een puntkomma (;). Bijvoorbeeld, < vertegenwoordigt het kleiner-dan-teken (<).Genummerde entiteiten beginnen en eindigen ook op dezelfde manier, behalve dat een hekje (#) en een nummer het teken specificeren.
XSLT heeft de volgende vijf voorgedefinieerde entiteiten:
Teken |
Eenheidcode |
|---|---|
< (kleiner dan) |
< |
& (en-teken) |
& |
> (groter dan) |
> |
" (dubbel aanhalingsteken) |
" |
‘ (apostrof) |
' |
Als je andere tekenentiteiten in een XSL-bestand gebruikt, moet je ze definiëren in de DTD-sectie van het XSL-bestand. Dreamweaver biedt verschillende standaard entiteitsdefinities die je kunt zien bovenaan een XSL-bestand dat is gemaakt in Dreamweaver. Deze standaardentiteiten dekken een brede selectie van de meest gebruikte tekens.
Wanneer je een voorvertoning van je XSL-bestand in een browser bekijkt, controleert Dreamweaver het XSL-bestand op ongedefinieerde entiteiten en waarschuwt je als een ongedefinieerde entiteit wordt gevonden.
Als je een voorvertoning bekijkt van een XML-bestand dat is gekoppeld aan een XSLT-bestand of als je een voorvertoning bekijkt van een server-side pagina met een XSLT-transformatie, waarschuwt de server of browser (in plaats van Dreamweaver) je voor een ongedefinieerde entiteit. Het volgende is een voorbeeld van een bericht dat je kunt krijgen in Internet Explorer wanneer je een XML-bestand opvraagt dat is getransformeerd door een XSL-bestand met een ontbrekende entiteitsdefinitie:Verwijzing naar ongedefinieerde entiteit 'auml'. Fout opgetreden tijdens de verwerking van bron 'http://localhost/testthis/list.xsl'. Regel 28, Positie 20 <p class=''test''>ä</p> -------------------^
Om de fout in je pagina te corrigeren, moet je de entiteitsdefinitie handmatig aan je pagina toevoegen.
Verwijzing naar ongedefinieerde entiteit 'auml'. Fout opgetreden tijdens de verwerking van bron 'http://localhost/testthis/list.xsl'. Regel 28, Positie 20
<p class=''test''>ä</p>
-------------------^
Ontbrekende tekeneenheid opgeven
Deze webpagina bevat de 252 toegestane entiteiten in HTML 4 en XHTML 1.0.
Als bijvoorbeeld de tekenentiteit Egrave ontbreekt, zoek dan naar "Egrave" op de W3C-webpagina. Je vindt de volgende vermelding:
<!ENTITY Egrave CDATA "È" -- latin capital letter E with grave, U+00C8 ISOlat1 -->
In het voorbeeld is Egrave de entiteitsnaam, en È is de entiteitscode.
<!ENTITY entityname "entitycode;">
In het voorbeeld zou je de volgende entiteitstag invoeren: <!ENTITY Egrave "È">
<!ENTITY Egrave "È">
Als je herhaaldelijk dezelfde karakterentiteiten gebruikt, kun je hun definities permanent toevoegen aan de XSL-bestanden die Dreamweaver standaard aanmaakt wanneer je Bestand > Nieuw gebruikt.
Voeg entiteitsdefinities toe aan de XSL-bestanden die Dreamweaver standaard maakt
Configuration/DocumentTypes/MMDocumentTypeDeclarations.xml
<documenttypedeclaration id="mm_xslt_1">
<!ENTITY entityname "entitycode;">
Prachtige websites ontwerpen in Dreamweaver
Ontwerp, codeer en beheer dynamische websites in een krachtige alles-in-één tool.