XML פורמט
עיצוב יפה או דחיסה של XML, ורואים בדיוק היכן הוא אינו תקין מבנית.
הפלט יופיע כאן
מה עושה מעצב ה-XML הזה
XML (Extensible Markup Language) מאחסן נתונים מובְנים בתגים מקוננים, והוא עדיין עמוד השדרה של אינספור קובצי הגדרות, פורמטי מסמכים (כמו קובצי Office ו-SVG), שירותי SOAP והזנות נתונים. כמו כל markup, הוא קל הרבה יותר לקריאה כשהוא מוזח. הכלי מעצב XML יפה — מציב כל אלמנט בשורה משלו עם הזחה עקבית — או דוחס אותו לשורה אחת, ובו-זמנית בודק שהמסמך well-formed.
מה המשמעות של "well-formed"
Well-formedness הוא מערך הכללים הבסיסי שכל מסמך XML חייב לעמוד בו, בנפרד מהשאלה אם הוא תואם לסכמה מסוימת. מסמך well-formed כולל:
- כל תג פתיחה מותאם בתג סגירה, או כתוב כתג שסוגר את עצמו.
- תגים מקוננים כראוי, כך שהם לעולם לא חופפים (תג פנימי חייב להיסגר לפני התג החיצוני שלו).
- כל ערכי התכונות עטופים במרכאות.
- תווים מיוחדים כמו < ו-& עם escaping כישויות (< ו-&) בתוך טקסט.
כשאחד הכללים האלה מופר, הכלי מדווח על השורה והעמודה המדויקות של הבעיה הראשונה — תג לא-תואם או לא-סגור, הערה לא-מסתיימת, או < תועה בטקסט — כדי שתתקן מהר במקום לחפש בכל המסמך.
עיצוב יפה מול דחיסה
- עצב יפה כשצריך לקרוא, להשוות או לנפות 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, סגור בהחלט, יעבור.
- האם העיצוב משנה את הנתונים שלי?
- לא. עיצוב יפה ודחיסה רק משנים רווחים בין אלמנטים. שמות אלמנטים, תכונות, תוכן טקסט ומבנה נשארים ללא שינוי.