He:Elements

From OpenStreetMap Wiki
Jump to navigation Jump to search

אלמנטים הם הרכיבים הבסיסיים של מודל הנתונים הקונספטואלי של OpenStreeMap של העולם הפיזי. קיימים 3 סוגי אלמנטים:

  • צמתי גרף (מגדירים נקודות במרחב. בווספוצ'י הם קרויים מפרקים)
  • דרכים (מגדירות תכונות לינאריות וגבולות של שטחים)
  • יחסים (מגדירים איך אלמנטים משתלבים יחד)

לכל המוזכרים לעיל ניתן להגדיר שיוך לתגית (תיאור למשמעות האלמנט)

צומת (או מפרק) node

צומת מייצג נקודהמ סויימת על פני כדור הארץ. מוגדר על ידי קווי אורך ורוחב, בהקשר למערכת הגאודזית של העולם 1984. כל מומת מורכב מלפחות מזהה וזוג קואורדינטות.

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

ניתן להשתמש בצמתים גם כדי להגדיר צורת דרך. במקרה כזה, בד"כ לא יהיו תגיות לצמתים, למרות שלחלק יכולות להיות. לדוגמה, highway=traffic_signals מציין רמזורים בכביש. ו־power=tower מציין עמוד חשמל לאורך קו חשמל.

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

דרך waywayway

מאמר ראשי: Way

דרך היא רשימה סדורה של אחד עד 2,000 צמתים המגדירים קו מקוטע. דרכים יכולות לשמש לייצוג תכונות קוויות כגון נהרות או כבישים way

דרכים יכולות לייצג גם גבולות של שטחים(מצולעים) כגון בניינים או יערות. במקרה זה, הדרךמתחילה ונגמרת באותה נקודה (צומת), והיא קרויה דרך סגורה. way

שימו לב כי לעתים דרכים סגורות מייצגות לולאות כגון מעגלי תנועה בדרכים, במקום שטחים מוצקים. בד"כ זה נגזר מהתגיות בדרך, לדוגמה *=landuse לעולם לא יכול להשתייך לתכונות קוויות. אולם, לכמה אובייקטים מהחיים האמיתיים (כגון man_made=pier יכולים להיות גם ייצוגים קווייםway וגם ייצוגים שטחיים area. וניתן להשתמש בתגית area=yes כדי למנוע כפלי משמעות ופירוש מוטעה. ראו גם Way#Differences between linear and area representation of features.

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

יחס relation

מאמר ראשי: Relation

יחס הוא מבנה נתונים רב שימושי המתעד יחס בין שני אלמנטים(צמתים, דרכים או יחסים אחרים) או יותר. בין הדוגמאות:

  • יחס הנתיב המהווה רשימה של הדרכים מדרך ראשית (ממוספרת), נתיב אופניים או מסלול קו אוטובוס.
  • יחס הגבלת פנייה שמשמעותו כי אין לפנות מדרך אחת לאחרת.
  • רב־מצולע המתאר שטח (שגבולו הוא "דרך חיצונית") שבתוכו חורים ("דרכים פנימיות").

משמעות היחס מוגדרת על ידי התגיות שלו. ליחס חובה שתהיה לפחות vתגית type. תגיות אחרות צריכות להיות מפורשות לאור תגית הסוג.

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

לכל אלמנט יכולה להיות, כאופציה, תפקיד בתוך היחס, לדוגמה ליחס של הגבלת פניה יכולה להיות דרך אליה או ממנה אסור לפנות, כלומר פנייה מסוימת אסורה.

בתלוי בסוג היחס, אלמנט בודד יכול להופיע בו יותר מפעם אחת.

תגית tag

מאמר ראשי: Tag

לכל אלמנטי הנתונים (צמתים, דרכים ויחסים), כמו גם לערכות שינויים, יכולות להיות תגיות. תגיות מתארות את המשמעות של אובייקט מסוים שאליו הן הוצמדו.

תגית בנויה משני שדות טקסט בפורמט חפשי: מפתח וערך. שניהם הם מחרוזות יוניקוד באורך של עד 255 תווים. לגודמה, highway=Tag:highway=residential מגדירה דרך שתפקידה לאפשר גישה לבתי מגורים. לאלמנט לא יכולות להיות שתי תגיות עם אותו מפתח. לדוגמה, לא יכולות להיות לאלמנט התגית amenity=restaurant וגם amenity=bar. קיימים מקרים בהם ניתן להפריד בין ערכים על ידי נקודה־פסיק כדי להשים מספר ערכים לאותו מפתח, אך לא ניתן ליישם זאת אוניברסלית.

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

לא לכל האלמנטים יש תגיות. צמתים לעתים קרובות אינם מתויגים אם הם חלק מדרך. הן דרכים והן צמתים יכולים להיות חסרי תגיות אם הם חלק מיחס.

מאפיינים נפוצים

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

שם ערך תיאור
id שלם (64 סיביות) משמש לזיהוי האלמנט. לסוגי האלמנטים מרחב מזהים משלהם, כך שיכולים להיות , למשל, גם צומת וגם דרך עם ID=100 שסביר שלא יהיו קשורים זה לזה או שתהיה להם קרבה גאוגרפית.
ערכים חיוביים (>0) יהיו בשימוש לכל האלמנטים הקיימים (ועדיין ישמרו על ערכיהם כשהאובייקט ישונה או יימחק) ערכים שליליים (<0) שמורים (התחום שלהם מוגבל לערכת השינויים הנוכחית ולעולם האלמנטים לא יאוחסנו במסד הנתונים עם ערכים אלה) ויהיו בשימוש רק בעת שליחת הנתונים למסד נתוני ה־OSM לזיהוי אובייקטים ליצירה והתייחסות אליהם כשנוצרים או משתנים אובייקטים (השרת יחליף מזהים זמניים אלה הנשלחים על ידי יישומי עריכה, על ידי השמת מזהים חיוביים (על ידי השמת מזהה חיובי למעשה לכל אובייקט שנוצר, ייווצר מיפוי בין הערכים השליליים לחיוביים המתאימים להם ).
user מחרוזת תווים השם המוצג של המשתמש/ת האחרון/ה ששינה/תה את האובייקט (למידע בלבד, וייתכן שיהיה ריק). משתמש/ת יכול/ה לשנות את שם התצוגה בכל עת (אלמנט קיים ישקף את שם המשתמש/ת החדש ללא צורך בשינוי גרסה).
uid שלם המזהה המספרי של המשתמש/ת ששינה/תה לאחרונה את האובייקט. מזהים אלה אף פעם אינם משתנים.
timestamp פורמטי תאריך ושעה בתקן W3C. זמן השינוי האחרון (למשל, 2016-12-31T23:59:59Z"), ללא שברי שניות.
visible "true" או "false" אינדיקציה לאם האובייקט נמחק או לא נמחק ממסד הנתונים. אם 'visible='false אזי יוחזר האובייקט רק בקריאה להיסטוריה.
version שלם גרסת העריכה של האובייקט. מספר הגרסה של אובייקט הנוצר לראשונה יהיה 1 והערך יקודם על ידי השרת כשלקוח מעלה גרסה חדשה של האובייקט. השרת ידחה גרסה חדשה של אובייקט אם הגרסה שסיפק הלקוח אינה תואמת את זו של האובייקט המאוחסן.
changeset שלם מספר ערכת השינויים שבה נוצר או עודכן (תמיכה ב64 סיביות מומלצת ליישומים לצורך תאימות עם אבולוציה ארוכת טווח של מסד נתוני OSM, אך יישומים השולחים שאילתות נתונים בלי להעלות אותם ייתכן שיתעלמו ממאפיין אינפורמטיבי זה.

כמובן שבנוסף מאוחסנות התגיות וכל ההיסטוריה של כל אלמנט.

מהעבר

בעבר היה קיים עוד טיפוס אלמנטים, והוא:

  • סגמנט (מחבר שני צמתים, חלק מדרך).

דגשים ל־XML והערות לגבי המונחים בתחום

מאמר ראשי: OSM XML

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

אלמנטים

ערכת האלמנטים ב־OSM XML, אליהם התיעוד מתייחס כאלמנטים, הם תת קבוצה של אלמנטי XML אמתיים שנמצאים בנתונים. כלומר, המונח אלמנט ב־XML אינו שם נרדף לאלמנט OSM XML.

האלמנטים שבנתוני ה־OSM הם way,node ו־relation. לאלמנטים nd,tag ו־member ב־XML אין מתייחסים כאל אלמנטי OSM XML, אך הם אכן אלמנטי XML.

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

משהים

על משתמשי כלי XML להיות מודעים לכך שצמתים, דרכים ויחסים אינם שותפים באותו מרחב מזהי אובייקטים. כל כלי המתייחס בלעדית לאובייקט OSM על פי המזהה ייתקל בהתנהגות שאינה מוגדרת (למשל, document.getElementById()). אל אובייקט OSM תמיד יש לפנות עם מסר הזיהוי ומרחב המספרים המזהים המתאים (node, way, relation).