Dodawanie encji znakowych w kodzie XSLT w programie Dreamweaver

Ostatnia aktualizacja 20 gru 2021

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

Interfejs użytkownika w programie Dreamweaver i nowszych wersjach został uproszczony. Dlatego począwszy od wersji Dreamweaver 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ą dozwolone w określonych kontekstach. Na przykład nie można używać znaku mniejszości (<) ani znaku ampersand (&) w tekście między znacznikami lub w wartości atrybutu.Silnik przekształceń XSLT wyświetli błąd, jeśli te znaki zostaną użyte niepoprawnie. Aby rozwiązać ten problem, można określić encje znaków w celu zastąpienia znaków specjalnych.

Jednostka znakowa to ciąg znaków reprezentujący inne znaki. Jednostki znakowe są nazwane lub numerowane. Jednostka nazwana rozpoczyna się znakiem ampersand (&), po którym następuje nazwa lub znaki, i kończy średnikiem (;). Na przykład < reprezentuje znak lewego nawiasu kątowego (<). Jednostki numerowane również rozpoczynają się i kończą w ten sam sposób, z wyjątkiem tego, że znak hash (#) i liczba określają znak.

XSLT ma następujące pięć predefiniowanych encji:

Znak

Kod encji

< (mniej niż)

<

& (łącznik)

&&

> (więcej niż)

>

" (cudzysłów)

&quot;

' (apostrof)

'

Jeśli używasz innych jednostek znakowych w pliku XSL, musisz je zdefiniować w sekcji DTD pliku XSL. Dreamweaver udostępnia kilka domyślnych definicji jednostek, które można zobaczyć na górze pliku XSL utworzonego w Dreamweaver. Te domyślne jednostki obejmują szeroki wybór najczęściej używanych znaków.

Gdy oglądasz plik XSL w przeglądarce w podglądzie, Adobe Dreamweaver sprawdza plik XSL pod kątem niezdefiniowanych jednostek i powiadamia, jeśli znajdzie niezdefiniowaną jednostkę.

Jeśli oglądasz plik XML dołączony do pliku XSLT w podglądzie lub jeśli oglądasz stronę serwerową z przekształceniem XSLT w podglądzie, serwer lub przeglądarka (zamiast Adobe Dreamweaver) powiadamia o niezdefiniowanej jednostce.Poniżej przedstawiono przykład komunikatu, który może się pojawić w programie Internet Explorer po żądaniu pliku XML przekształconego przez plik XSL z brakującą definicją jednostki:Odwołanie do niezdefiniowanej jednostki „auml".Błąd podczas przetwarzania zasobów „http://localhost/testthis/list.xsl”. Wiersz 28, Pozycja 20 <p class=''test''>&auml;</p> -------------------^

Aby poprawić błąd na stronie, definicję encji należy dodać do strony ręcznie.

Odwołanie do niezdefiniowanej jednostki „auml".Błąd podczas przetwarzania zasobów „http://localhost/testthis/list.xsl”. Wiersz 28, pozycja 20

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

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

Dodawanie definicji brakującej encji

Wyszukaj brakujący znak na stronie referencyjnej elementów znakowych w witrynie W3C pod adresem www.w3.org/TR/REC-html40/sgml/entities.html.

Ta strona internetowa zawiera 252 dozwolone elementy w HTML 4 i XHTML 1.0.

Na przykład, jeśli brakuje elementu znakowego Egrave, wyszukaj „Egrave" na stronie internetowej W3C.Zostanie wyświetlony następujący wpis:

<!ENTITY Egrave CDATA "&#200;" -- duża litera łacińska E z akcentem gravis, U+00C8 ISOlat1 -->

Zanotuj nazwę encji i kod encji we wpisie.

W przykładzie Egrave to nazwa encji, a &#200 to kod encji.

Mając te informacje, przejdź do widoku Code i wprowadź następujący znacznik encji na początku pliku XSL (po deklaracji Doctype wraz z innymi znacznikami encji):

<!ENTITY entityname "entitycode;">

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

<!ENTITY Egrave "&#200;">

Zapisz plik.

Jeśli wielokrotnie używasz tych samych encji znakowych, możesz trwale dodać ich definicje do plików XSL, które program Dreamweaver tworzy domyślnie podczas używania polecenia Plik > Nowy.

Dodaj definicje encji do plików XSL, które program Dreamweaver tworzy domyślnie

Zlokalizuj następujący plik konfiguracyjny w folderze aplikacji Dreamweaver i otwórz go w dowolnym edytorze tekstu:

Configuration/DocumentTypes/MMDocumentTypeDeclarations.xml

Znajdź deklarację o nazwie mm_xslt_1:

<documenttypedeclaration id="mm_xslt_1">

Wprowadź nowy znacznik encji lub znaczniki na liście znaczników encji w następujący sposób:

<!ENTITY entityname "entitycode;">

Zapisz plik i ponownie uruchom program Dreamweaver.