Handboek Annuleren

Tekenentiteiten toevoegen voor XSLT in Dreamweaver

 

 

Lees dit artikel voor informatie over het opgeven van ontbrekende tekenentiteiten om speciale tekens voor XSLT te vervangen in Dreamweaver.

Opmerking:

De gebruikersinterface van Dreamweaver CC en hoger is vereenvoudigd. Daarom zijn sommige opties die in dit artikel worden beschreven, niet beschikbaar in Dreamweaver CC en hoger. Meer informatie vindt u in dit artikel.

Ontbrekende tekeneenheid opgeven

In XSLT zijn sommige tekens niet toegestaan in bepaalde contexten. U mag bijvoorbeeld het teken kleiner dan (<) en het en-teken (&) niet gebruiken in de tekst tussen tags of in de waarde van een kenmerk. De engine voor de XSLT-transformatie geeft een foutmelding als deze tekens niet correct zijn gebruikt. Als u dit probleem wilt opossen, kunt u tekeneenheden opgeven die deze speciale tekens vervangen.

Een tekeneenheid is een tekenreeks die andere tekens vertegenwoordigt. Tekeneenheden krijgen een naam of een getal. Een eenheid met een naam begint met een ampersand (&) gevolgd door de naam of door tekens en eindigt met een puntkomma (;). &lt; vertegenwoordigt bijvoorbeeld de beginpunthaak (<). Genummerde tekeneenheden beginnen op dezelfde manier, maar een hekje (#) plus een getal vertegenwoordigen het teken.

XSLT heeft de volgende voorgedefinieerde tekeneenheden:

Teken

Eenheidcode

< (kleiner dan)

&lt;

& (en-teken)

&amp;

> (groter dan)

&gt;

" (dubbel aanhalingsteken)

&quot;

‘ (apostrof)

&apos;

Als u andere tekeneenheden in een XSL-bestand gebruikt, moet u deze in de DTD-sectie van het XSL-bestand definiëren. Dreamweaver biedt verschillende standaardeenheiddefinities die u boven aan in een XSL-bestand ziet dat is gemaakt in Dreamweaver. Deze standaardeenheden omvatten een brede selectie van de meestgebruikte tekens.

Als uw XSL-bestand in een browser wordt voorvertoond, controleert Dreamweaver het XSL-bestand op niet-gedefinieerde tekeneenheden en wordt een melding weergegeven als er een dergelijke eenheid is gevonden.

Als u een aan een XSLT-bestand gekoppeld XML-bestand of een server-side pagina met een XSLT-transformatie voorvertoont, meldt de server of de browser (in plaats van Dreamweaver) dat een niet-gedefinieerde tekeneenheid is aangetroffen. Het volgende voorbeeld is een melding die u kunt krijgen Internet Explorer als u een XSL-bestand aanvraagt dat door een XML-bestand is getransformeerd en waarin de definitie van een tekeneenheid ontbreekt:Referentie naar een niet-gedefinieerde entiteit 'auml'. Fout opgetreden tijdens de verwerking van bron 'http://localhost/testthis/list.xsl'. Line 28, Position 20 <p class=''test''>&auml;</p> -------------------^

Om de fout in uw pagina te corrigeren moet u de definitie van de tekeneenheid handmatig aan de pagina toevoegen.

Reference to undefined entity 'auml'. Error processing resource 'http://localhost/testthis/list.xsl'. Line 28, Position 20
<p class=''test''>&auml;</p>
-------------------^
Reference to undefined entity 'auml'. Error processing resource 'http://localhost/testthis/list.xsl'. Line 28, Position 20 <p class=''test''>&auml;</p> -------------------^
Reference to undefined entity 'auml'. Error processing resource 'http://localhost/testthis/list.xsl'. Line 28, Position 20 
<p class=''test''>&auml;</p> 
-------------------^

Ontbrekende tekeneenheid opgeven

  1. U kunt het ontbrekende teken opzoeken in de pagina over tekeneenheden op de W3C-website op www.w3.org/TR/REC-html40/sgml/entities.html.

    Deze webpagina bevat de 252 in HTML 4 en XHTML 1.0 toegestane tekeneenheden.

    Als bijvoorbeeld E met accent grave ontbreekt, zoekt u naar “Egrave" op de W3C-webpagina. U treft dan de volgende vermelding aan:

    <!ENTITY Egrave CDATA "&#200;" -- latin capital letter E with grave, U+00C8 ISOlat1 -->
    <!ENTITY Egrave CDATA "&#200;" -- latin capital letter E with grave, U+00C8 ISOlat1 -->
    <!ENTITY Egrave CDATA "&#200;" -- latin capital letter E with grave, U+00C8 ISOlat1 -->
  2. Noteer de naam van de genoemde tekeneenheid en de eenheidcode.

    In het voorbeeld is Egrave de entiteitsnaam en is &#200 de entiteitscode.

  3. Schakel naar codeweergave en voer bovenaan in uw XSL-bestand (na de DOCTYPE-declaratie en samen met de andere eenheidtags) de volgende eenheidtag in:
    <!ENTITY entityname "entitycode;">
    <!ENTITY entityname "entitycode;">
    <!ENTITY entityname "entitycode;">

    In het voorbeeld voert u de volgende eenheidtag in:<!ENTITY Egrave "&#200;">

    <!ENTITY Egrave "&#200;">
    <!ENTITY Egrave "&#200;">
    <!ENTITY Egrave "&#200;">
  4. Sla uw bestand op.

    Als u herhaaldelijk dezelfde tekeneenheden gebruikt, kunt u de definities daarvoor permanent opnemen in de XSL-bestanden die Dreamweaver standaard maakt wanneer u Bestand > Nieuw kiest.

Eenheiddefinities toevoegen aan de XSL-bestanden die Dreamweaver standaard maakt

  1. Zoek naar het volgende configuratiebestand in de toepassingsmap van Dreamweaver en open het in een teksteditor:

    Configuration/DocumentTypes/MMDocumentTypeDeclarations.xml

  2. Zoek de declaratie met de naam mm_xslt_1:
    <documenttypedeclaration id="mm_xslt_1">
    <documenttypedeclaration id="mm_xslt_1">
    <documenttypedeclaration id="mm_xslt_1">
  3. Voeg de nieuwe eenheidtag op de volgende wijze toe aan de lijst van eenheidtags:
    <!ENTITY entityname "entitycode;">
    <!ENTITY entityname "entitycode;">
    <!ENTITY entityname "entitycode;">
  4. Sla het bestand op en start Dreamweaver opnieuw.

Krijg sneller en gemakkelijker hulp

Nieuwe gebruiker?