Podręcznik użytkownika Anuluj

Dodawanie encji znakowych w kodzie XSLT w programie Dreamweaver

 

 

Informacje o określaniu encji brakujących znaków w programie Dreamweaver w celu zastąpienia znaków specjalnych w kodzie XSLT.

Uwaga:

Interfejs użytkownika w programie Dreamweaver CC i nowszych wersjach został uproszczony. Dlatego począwszy od wersji Dreamweaver CC niektóre opcje opisane w tym artykule mogą nie być dostępne. Więcej informacji zawiera ten artykuł.

Określanie encji brakujących znaków

W XSLT niektóre znaki nie są dopuszczalne w określonych kontekstach. Nie można na przykład użyć znaku mniej niż (<) i łącznika (&) w tekście pomiędzy znacznikami lub w wartościach atrybutu. Napęd transformacji XSLT pokaże błąd jeśli te znaki zostaną użyte błędnie. Aby uniknąć tego problemu możesz określić encje znaków, które zastąpią dane znaki specjalne.

Encja znaku jest ciągiem znaków reprezentujących inne znaki. Encje znaków posiadają nazwy lub numery. Nazwana encja rozpoczyna się łącznikiem (&) poprzedzającym nazwę lub znaki i kończy się średnikiem (;). Na przykład encja &lt; reprezentuje znak lewego ostrego nawiasu (<). Obiekty numerowane również zaczynają się i kończą w taki sam sposób; różnica polega na tym, że znaki są określane za pomocą symbolu # i liczby.

XSLT posiada pięć predefiniowanych encji:

Znak

Kod encji

< (mniej niż)

&lt;

& (łącznik)

&amp;

> (więcej niż)

&gt;

" (cudzysłów)

&quot;

' (apostrof)

&apos;

Jeśli używasz innych encji znaków w pliku XSL, musisz je zdefiniować w sekcji DTD tego pliku. Program Dreamweaver udostępnia kilka domyślnych definicji encji, które można zobaczyć w górnej części pliku XSL utworzonego w programie Dreamweaver. Encje te obejmują szerokie spektrum najczęściej używanych znaków.

Po utworzeniu podglądu pliku XSL w przeglądarce program Dreamweaver sprawdza plik XSL pod kątem niezdefiniowanych encji i wyświetla powiadomienie, jeśli je znajdzie.

Jeśli tworzysz podgląd pliku XML dołączonego do pliku XSLT lub strony serwerowej z przekształceniem XSLT, informacje o niezdefiniowanych encjach są przekazywane przez serwer lub przeglądarkę (a nie przez program Dreamweaver). Podany przykład pokazuje możliwy komunikat wyświetlany w programie Internet Explorer w przypadku prośby o plik XML przekształcony przez plik XSL z brakującą definicją encji: Odniesienie do nieokreślonej encji „auml”. Błąd podczas przetwarzania zasobów „http://localhost/testthis/list.xsl”. Wiersz 28, pozycja 20 <p class ="test"> &auml;</p> -------------------^

Aby naprawić taki błąd na stronie, musisz odręcznie dodać do strony definicję encji.

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> 
-------------------^

Dodawanie definicji brakującej encji

  1. Brakujące znaki można wyszukiwać na stronie encji znaków dostępnej w serwisie W3C pod adresem www.w3.org/TR/REC-html40/sgml/entities.html.

    Na stronie tej znajduje się 252 encji dopuszczalnych w HTML 4 i XHTML 1.0.

    Na przykład jeśli brakuje encji znaku Egrave, odszukaj hasło „Egrave” w serwisie internetowym W3C. Na ekranie pojawią się następujące hasła:

    <!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. Zwróć uwagę na nazwę i kod encji w haśle.

    W naszym przykładzie, Egrave jest nazwą encji, a &#200 jest kodem encji.

  3. Z uzyskanymi informacjami, przełącz się na widok Kod i wpisz znacznik encji w górnej części pliku XSL (za deklaracją Doctype, obok innych znaczników encji):
    <!ENTITY entityname "entitycode;">
    <!ENTITY entityname "entitycode;">
    <!ENTITY entityname "entitycode;">

    W podanym przykładzie, należy wpisać następujący znacznik encji:<!ENTITY Egrave "&#200;">

    <!ENTITY Egrave "&#200;">
    <!ENTITY Egrave "&#200;">
    <!ENTITY Egrave "&#200;">
  4. Zapisz plik.

    Jeśli często używasz tych samych encji znaków, można na stałe dodać ich definicje do plików XSL, utworzonych domyślnie przez program Dreamweaver przy wyborze polecenia Plik > Nowy.

Dodawanie definicji encji do plików XSL Dreamweaver tworzonych domyślnie

  1. Wyszukaj następujący plik konfiguracji w folderze aplikacji Dreamweaver i otwórz go w dowolnym edytorze tekstowym.

    Configuration/DocumentTypes/MMDocumentTypeDeclarations.xml

  2. Znajdź deklarację o nazwie mm_xslt_1:
    <documenttypedeclaration id="mm_xslt_1">
    <documenttypedeclaration id="mm_xslt_1">
    <documenttypedeclaration id="mm_xslt_1">
  3. Wpisz znacznik lub znaczniki nowej encji na liście znaczników encji, w następującej postaci:
    <!ENTITY entityname "entitycode;">
    <!ENTITY entityname "entitycode;">
    <!ENTITY entityname "entitycode;">
  4. Zapisz plik i ponownie uruchom program Dreamweaver.

Pomoc dostępna szybciej i łatwiej

Nowy użytkownik?