המודל Unified Modeling Language (UML) מייצג תיאור של הנתונים שלא תלוי בפורמט. היתרון העיקרי שלו הוא שהוא מגדיר ומתאר את רכיבי הנתונים ואת הקשר שלהם. באמצעות הגישה הזו שמבוססת על מודלים, יש יותר סיכוי שהנתונים יהיו מובְנים היטב ויהיו סבילים לשינויים.
קשרים עם מחלקות UML
המחלקות הראשיות במודל UML מיוצגות כרכיבים עיקריים בסכימת ה-XML. הסוגים השונים של קשרי הגומלין בין מחלקות ה-UML קובעים את המבנה של רכיבי ה-XML בסכימה.
קיימים שלושה קשרים בין מחלקות:
- יצירה מבוימת
- כשמחלקה מורכבת מרכיב משנה או מרכיבי משנה. לדוגמה, אם יוצרים דוח בחירות, דוח הבחירות כולל נתונים מבחירות. בסכימת ה-XML, הרכיב
Election
נוצר כרכיב משנה של הרכיבElectionReport
. - "סוג" או "מופע של"
- כשמחלקה מופשטת מטמיעה מחלקה בטון. לדוגמה, אם יוצרים תחרות, הטכנולוגיה מיושמת באמצעות סיווג קונקרטי. כלומר,
תחרות בין מועמדים היא סוג של תחרות. בסכימת ה-XML,
Contest
נוצר כרכיב XML מופשט ומשמש כבסיס הרחבה לרכיבCandidateContest
. - שיוך ישיר
- כשרכיב כלשהו כולל רכיב נוסף שמכיל מזהה שמשויך לרכיב השני. לדוגמה, זה קורה אם משייכים מועמד למפלגה או מקשרים אליה. בסכימת ה-XML, הרכיב
Candidate
כולל רכיבPartyId
, שמכיל מזהה שמשויך לרכיבParty
.
התרשים הבא ממחיש את שלושת הסוגים של קשרי גומלין:
דוגמאות למודל UML
בתרשים הבא מוצגת ישות Contest
ושני סוגים של Contest
: CandidateContest
ו-PartyContest
.
בתרשים הבא מוצגת תצוגה ברמה גבוהה של תרשים המחלקה של CandidateContest
:
בתרשים הבא מוצגת תצוגה ברמה גבוהה של תרשים המחלקה של PartyContest
: