כדי לשנות נתונים שנוספו באמצעות NetworkLink, יש להשתמש ברכיב העדכון, שהוא צאצא של NetworkLinkControl. העדכון יכול להכיל כל מספר של אלמנטים מסוג 'שינוי', 'יצירה' ו'מחיקה', שמעובדים לפי הסדר.
האיור הבא ממחיש את רצף האירועים.
![](https://google-developers.gonglchuangl.net/static/kml/documentation/images/update.gif?authuser=0&hl=he)
- NetworkLink טוען את קובץ ה-KML "המקורי" ב-Google Earth. רכיב שיעודכן במועד מאוחר יותר צריך להיות מוגדר עם id מפורש כאשר הוא צוין לראשונה. המזהים חייבים להיות ייחודיים בתוך קובץ נתון.
- NetworkLink טוען מחדש קובץ KML שני שמכיל את העדכונים (כל שילוב של 'שינוי', 'יצירה' ו'מחיקה') לאובייקטים של KML שכבר נטענו. קובץ העדכון מכיל שתי הפניות לזיהוי נתוני KML המקוריים:
- כדי לאתר את האובייקטים ב-Google Earth, הרכיב Update משתמש ברכיב targetHref כדי לזהות את הקובץ המקורי שהגדיר את האובייקטים שיש לשנות. כדי לזהות את האובייקטים שרוצים לשנות או את המאגר של אובייקטים חדשים, הרכיבים 'שינוי', 'יצירה' ו'מחיקה' מכילים מאפיין targetId שמפנה למזהים של האובייקטים האלה.
דוגמה לשינוי
הדוגמה הבאה מציגה קבוצה של קובצי NetworkLinks וקובצי KML לדוגמה. כדי להפעיל את הדוגמה:
- טוענים את הקובץ Point-load.KML ב-Google Earth. הקובץ הזה מכיל את ה-NetworkLink שטוען את קובץ הנתונים המקורי, שמכיל שתי נקודות (Point.KML).
- טוענים את הקובץ Update-load.KML ב-Google Earth. הקובץ הזה מכיל את הקישור השני ב-NetworkLink, שטוען את הקובץ שמכיל את נתוני העדכון (שם חדש ל-point123).
הקובץ הראשון מכיל את ה-NetworkLink שטוען את קובץ הנתונים, שמכיל שתי נקודות. לסמנים שמכילים את הנקודות האלה מוקצים מזהים. הקובץ השלישי מכיל NetworkLink אחר, שמוסיף את קובץ ה-Update. הרכיב 'שינוי' משנה את שם הסמן ל-point123.
לפניכם ארבעת הקבצים שבהם נעשה שימוש בדוגמה זו. קודם כל, זהו הקובץ Point-load.KML, שמכיל את ה-NetworkLink שטוען את קובץ הנתונים המקורי (Point.KML).
<?xml version="1.0" encoding="UTF-8"?>
<kml xmlns="http://www.opengis.net/kml/2.2">
<NetworkLink>
<name>Loads Point.kml</name>
<Link>
<href>http://developers.google.com/kml/documentation/Point.kml</href>
</Link>
</NetworkLink>
</kml>
כאן נמצא הקובץ Point.KML, שמכיל את הנתונים המקוריים (שתי נקודות). הנקודה עם המזהה "point123" היא הנקודה שאנחנו עומדים לשנות.
<?xml version="1.0" encoding="UTF-8"?>
<kml xmlns="http://www.opengis.net/kml/2.2">
<Document>
<Placemark id="pm123">
<name>point123</name>
<Point> <coordinates>-95.44,40.42,0</coordinates> </Point>
</Placemark> <Placemark id="pm456"> <name>point456</name>
<Point> <coordinates>-95.43,40.42,0</coordinates>
</Point>
</Placemark>
</Document>
</kml>
הבא הוא קובץ NetworkLink השני (Update-load.KML). הקובץ הזה טוען את הקובץ שמכיל את פרטי העדכון.
<?xml version="1.0" encoding="UTF-8"?>
<kml xmlns="http://www.opengis.net/kml/2.2">
<NetworkLink>
<name>Update</name>
<Link>
<href>http://developers.google.com/kml/documentation/NetworkLinkControl-Update.kml</href></Link> </NetworkLink>
</kml>
לסיום, הנה קובץ ה-KML (NetworkLinkControl-Update.KML) שמכיל את פרטי העדכון:
<?xml version="1.0" encoding="UTF-8"?>
<kml xmlns="http://www.opengis.net/kml/2.2">
<NetworkLinkControl>
<Update>
<targetHref>http://developers.google.com/kml/documentation/Point.kml</targetHref>
<Change>
<Placemark targetId="pm123"> <name>Name changed by Update Change</name>
<!-- coordinates remain the same -->
</Placemark>
</Change> </Update>
</NetworkLinkControl>
</kml>