XML פורמט

עיצוב יפה או דחיסה של XML, ורואים בדיוק היכן הוא אינו תקין מבנית.

הזחה
קלט
פלט

הפלט יופיע כאן

מה עושה מעצב ה-XML הזה

XML (Extensible Markup Language) מאחסן נתונים מובְנים בתגים מקוננים, והוא עדיין עמוד השדרה של אינספור קובצי הגדרות, פורמטי מסמכים (כמו קובצי Office ו-SVG), שירותי SOAP והזנות נתונים. כמו כל markup, הוא קל הרבה יותר לקריאה כשהוא מוזח. הכלי מעצב XML יפה — מציב כל אלמנט בשורה משלו עם הזחה עקבית — או דוחס אותו לשורה אחת, ובו-זמנית בודק שהמסמך well-formed.

מה המשמעות של "well-formed"

Well-formedness הוא מערך הכללים הבסיסי שכל מסמך XML חייב לעמוד בו, בנפרד מהשאלה אם הוא תואם לסכמה מסוימת. מסמך well-formed כולל:

  • כל תג פתיחה מותאם בתג סגירה, או כתוב כתג שסוגר את עצמו.
  • תגים מקוננים כראוי, כך שהם לעולם לא חופפים (תג פנימי חייב להיסגר לפני התג החיצוני שלו).
  • כל ערכי התכונות עטופים במרכאות.
  • תווים מיוחדים כמו < ו-& עם escaping כישויות (&lt; ו-&amp;) בתוך טקסט.

כשאחד הכללים האלה מופר, הכלי מדווח על השורה והעמודה המדויקות של הבעיה הראשונה — תג לא-תואם או לא-סגור, הערה לא-מסתיימת, או < תועה בטקסט — כדי שתתקן מהר במקום לחפש בכל המסמך.

עיצוב יפה מול דחיסה

  • עצב יפה כשצריך לקרוא, להשוות או לנפות XML: הזחה חושפת את מבנה המסמך והופכת את הקינון לברור. בחר 2 רווחים, 4 רווחים או טאב כדי להתאים לסגנון שלך.
  • דחוס כשצריך לשדר או לאחסן XML בקומפקטיות: רווחים בלבד בין אלמנטים מוסרים והמסמך מתקפל לשורה אחת, ללא שינוי משמעותו.

הערות, מקטעי CDATA, הוראות עיבוד והצהרת ה-XML כולם נשמרים בשתי הפעולות, כך ששום דבר משמעותי לא אובד כשמעצבים מחדש.

XML בהשוואה ל-JSON

JSON הפך לברירת המחדל ל-API של אינטרנט כי הוא קל יותר וממופה ישירות לסוגי הנתונים של רוב שפות התכנות. XML נשאר התאמה טובה יותר כשמסמכים צריכים תוכן מעורב (טקסט עם markup בתוכו), מטא-דאטה עשיר דרך תכונות, הערות, namespaces, או ולידציה מול סכמה פורמלית. הרבה מערכות — אינטגרציות ארגוניות, צינורות הוצאה-לאור, מסמכי אופיס — בנויות על XML ויישארו כך עוד זמן רב, ולכן עיצוב נוח ואמין עדיין חשוב.

שאלות נפוצות

מה המשמעות של "well-formed"?
XML שהוא well-formed הוא כזה שבו כל תג סגור ומקונן כראוי, ערכי התכונות במרכאות, ותווים מיוחדים עם escaping. הכלי בודק את הכללים הללו ומצביע על המקום הראשון שבו הם נשברים.
האם ה-XML שלי נשלח לשרת?
לא. העיצוב והוולידציה מתרחשים כולם בדפדפן שלך. שום דבר שתדביק לא עוזב את המכשיר שלך.
האם הוא מאמת מול סכמה (DTD או XSD)?
לא. הוא בודק well-formedness — הכללים המבניים שכל מסמך XML חייב לעמוד בהם — אבל לא אם המסמך תואם לסכמת DTD או XSD מסוימת, שזהו שלב נפרד.
האם הערות ו-CDATA נשמרים?
כן. הערות, מקטעי CDATA, הוראות עיבוד והצהרת ה-XML כולם נשמרים בשלמותם כשמעצבים יפה או דוחסים.
למה הוא מדווח שגיאה על HTML?
HTML סלחני יותר מ-XML — הוא מתיר תגים לא-סגורים כמו <br> ותכונות ללא מרכאות. אלה אינם XML שהוא well-formed, ולכן מדווחים. רק markup בסגנון XHTML, סגור בהחלט, יעבור.
האם העיצוב משנה את הנתונים שלי?
לא. עיצוב יפה ודחיסה רק משנים רווחים בין אלמנטים. שמות אלמנטים, תכונות, תוכן טקסט ומבנה נשארים ללא שינוי.