Read this article to see how to specify missing character entities to replace special characters for XSLT in Dreamweaver.

Примітка.

The user interface has been simplified in Dreamweaver CC and later. As a result, you may not find some of the options described in this article in Dreamweaver CC and later. For more information, see this article.

Specify a missing character entity

In XSLT, some characters are not allowed in certain contexts. For example, you cannot use the less than sign (<) and the ampersand (&) in the text between tags or in an attribute value. The XSLT transformation engine will give you an error if those characters are used incorrectly. To solve the problem, you can specify character entities to replace the special characters.

A character entity is a string of characters that represents other characters. Character entities are either named or numbered. A named entity begins with an ampersand (&) followed by the name or characters, and ends with a semicolon (;). For example, &lt; represents the left angle bracket character (<). Numbered entities also start and end the same way, except that a hash sign (#) and a number specify the character.

XSLT has the following five predefined entities:

Character

Entity Code

< (less-than)

&lt;

& (ampersand)

&amp;

> (greater-than)

&gt;

" (quote)

&quot;

‘ (apostrophe)

&apos;

If you use other character entities in an XSL file, you need to define them in the DTD section of the XSL file. Dreamweaver provides several default entity definitions that you can see at the top of an XSL file created in Dreamweaver. These default entities cover a broad selection of the most commonly used characters.

When you preview your XSL file in a browser, Dreamweaver checks the XSL file for undefined entities and notifies you if an undefined entity is found.

If you preview an XML file attached to an XSLT file or if you preview a server-side page with an XSLT transformation, the server or browser (instead of Dreamweaver) notifies you of an undefined entity. The following is an example of a message you may get in Internet Explorer when you request an XML file transformed by an XSL file with a missing entity definition:Reference to undefined entity 'auml'. Error processing resource 'http://localhost/testthis/list.xsl'. Line 28, Position 20 <p class=''test''>&auml;</p> -------------------^

To correct the error in your page, you must add the entity definition to your page manually.

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

Specify a missing entity definition

  1. Look up the missing character in the character entity reference page on the W3C website at www.w3.org/TR/REC-html40/sgml/entities.html.

    This web page contains the 252 allowed entities in HTML 4 and XHTML 1.0.

    For example, if the character entity Egrave is missing, search for “Egrave” on the W3C web page. You will find the following entry:

    <!ENTITY Egrave CDATA "&#200;" -- latin capital letter E with grave, U+00C8 ISOlat1 -->
  2. Make a note of the entity name and entity code in the entry.

    In the example, Egrave is the entity name, and &#200 is the entity code.

  3. With this information, switch to Code view and enter the following entity tag at the top of your XSL file (following the Doctype declaration and with the other entity tags):
    <!ENTITY entityname "entitycode;">

    In the example, you would enter the following entity tag:<!ENTITY Egrave "&#200;">

    <!ENTITY Egrave "&#200;">
  4. Save your file.

    If you repeatedly use the same character entities, you may want to permanently add their definitions in the XSL files Dreamweaver creates by default when you use File > New.

Add entity definitions to the XSL files Dreamweaver creates by default

  1. Locate the following configuration file in the Dreamweaver application folder and open it in any text editor:

    Configuration/DocumentTypes/MMDocumentTypeDeclarations.xml

  2. Locate the declaration called mm_xslt_1:
    <documenttypedeclaration id="mm_xslt_1">
  3. Enter the new entity tag or tags in the list of entity tags, as follows:
    <!ENTITY entityname "entitycode;">
  4. Save the file and restart Dreamweaver.

Цей документ захищено ліцензією Creative Commons Attribution-Noncommercial-Share Alike 3.0 Unported License  Публікації Twitter™ і Facebook не підпадають під умови ліцензії Creative Commons.

Юридична інформація   |   Політика мережевої конфіденційності