הוספת ישויות תו עבור XSLT ב-Dreamweaver

עודכן לאחרונה בתאריך 20 בדצמבר 2021

קרא מאמר זה כדי לראות כיצד לציין ישויות תו חסרות כדי להחליף תווים מיוחדים עבור XSLT ב-Dreamweaver.

ממשק המשתמש הפך לפשוט יותר ב-Dreamweaver ובגרסאות מתקדמות יותר. כתוצאה מכך, ייתכן שלא תמצא חלק מהאפשרויות המתוארות במאמר זה ב-Dreamweaver ובגרסאות מתקדמות יותר. לקבלת מידע נוסף, עיין במאמר זה.

ציון ישות תו חסרה

ב-XSLT, תווים מסוימים אסורים בהקשרים מסוימים.לדוגמה, אינכם יכולים להשתמש בסימן קטן מ- (<) ובסימן אמפרסנד (&) בטקסט שבין תגיות או בערך של תכונה. מנוע הטרנספורמציה של XSLT יציג לכם שגיאה אם התווים האלה ישמשו באופן לא נכון. כדי לפתור את הבעיה, תוכלו לציין ישויות תווים כדי להחליף את התווים המיוחדים.

ישות תווים היא רצף של תווים שמייצג תווים אחרים. ישויות תווים הן בעלות שם או בעלות מספר. ישות עם שם מתחילה באמפרסנד (&) ואחריו השם או התווים, ומסתיימת בנקודה-פסיק (;). לדוגמה, < מייצג את התו של הסוגר השמאלי (<). ישויות ממוספרות גם מתחילות ומסתיימות באותו האופן, רק שסימן דיאז (#) ומספר מציינים את התו.

ל-XSLT יש חמש הישויות המוגדרות מראש הבאות:

תו

קוד יישות

‏‎<‎ (פחות מ)

<

‏& ‏(ampersand)

&

‏< (גדול מ)

>

‏" (גרשיים)

&quot;

‏‘ (גרש‏)

&apos;‎

אם אתם משתמשים בישויות תווים אחרות בקובץ XSL, עליכם להגדיר אותן בקטע ה-DTD של קובץ ה-XSL. Dreamweaver מספק מספר הגדרות ישויות ברירת מחדל שאתם יכולים לראות בחלק העליון של קובץ XSL שנוצר ב-Dreamweaver. ישויות ברירת המחדל הללו מכסות מבחר רחב של התווים הנפוצים ביותר.

כאשר אתם מציגים תצוגה מקדימה של קובץ ה-XSL שלכם בדפדפן, Dreamweaver בודק את קובץ ה-XSL לאיתור ישויות לא מוגדרות ומודיע לכם אם נמצאת ישות לא מוגדרת.

אם אתם מציגים תצוגה מקדימה של קובץ XML שמצורף לקובץ XSLT או אם אתם מציגים תצוגה מקדימה של דף בצד השרת עם טרנספורמציית XSLT, השרת או הדפדפן (במקום Dreamweaver) מודיעים לכם על ישות לא מוגדרת. הדוגמה הבאה היא דוגמה להודעה שאתם עלולים לקבל ב-Internet Explorer כשאתם מבקשים קובץ XML שהומר על ידי קובץ XSL עם הגדרת ישות חסרה: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>

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

ציון הגדרת ישות חסרה

חפשו את התו החסר בדף המילון של ישויות תווים באתר האינטרנט של W3C בכתובת www.w3.org/TR/REC-html40/sgml/entities.html.

דף האינטרנט הזה מכיל את 252 הישויות המורשות ב-HTML 4 וב-XHTML 1.0.

לדוגמה, אם ישות התווים Egrave חסרה, חפשו "Egrave" בדף האתר של W3C. תמצאו את הערך הבא:

<!ENTITY Egrave CDATA "&#200;" -- latin capital letter E with grave, U+00C8 ISOlat1 -->

רשמו את שם הישות וקוד הישות ברשומה.

בדוגמה, Egrave הוא שם הישות, ו-&#200 הוא קוד הישות.

עם המידע הזה, עברו לתצוגת קוד והזינו את תג הישות הבא בראש קובץ ה-XSL שלכם (אחרי הצהרת ה-Doctype ועם תגי הישות האחרים):

<!ENTITY entityname "entitycode;">

בדוגמה, הייתם מזינים את תג הישות הבא:<!ENTITY Egrave "&#200;">

<!ENTITY Egrave "&#200;">

שמור את הקובץ.

אם אתם משתמשים שוב ושוב באותן ישויות תווים, ייתכן שתרצו להוסיף באופן קבוע את ההגדרות שלהן לקובצי ה-XSL ש-Dreamweaver יוצר כברירת מחדל כשאתם משתמשים ב-File > New.

הוספת הגדרות ישות לקובצי ה-XSL ש-Dreamweaver יוצר כברירת מחדל

אתרו את קובץ התצורה הבא בתיקיית יישום Dreamweaver ופיתחו אותו בכל עורך טקסט:

Configuration/DocumentTypes/MMDocumentTypeDeclarations.xml

אתר את ההצהרה: mm_xslt_1:

<documenttypedeclaration id="mm_xslt_1">

הזינו את תג הישות או התגים החדשים ברשימת תגי הישות, כדלקמן:

<!ENTITY entityname "entitycode;">

שמור את הקובץ והפעל מחדש את Dreamweaver.