Actualizaciones

Para modificar los datos cargados de manera incremental en un objeto NetworkLink, usa el elemento Update, que es un elemento secundario de NetworkLinkControl. La actualización puede contener cualquier cantidad de elementos Cambiar, Crear y Borrar que se procesan en orden.

En la siguiente figura, se ilustra la secuencia de eventos.

  1. Un NetworkLink carga el archivo KML "original" en Google Earth. Un elemento que se actualizará luego debe tener un id explícito definido cuando se lo especifica por primera vez. Los ids deben ser únicos en un archivo determinado.
  2. Otro NetworkLink carga un segundo archivo KML que contiene las actualizaciones (cualquier combinación de Cambiar, Crear y Borrar) en los objetos KML que ya se cargaron. El archivo de actualización contiene dos referencias para identificar los datos KML originales:
  3. Para localizar los objetos de Google Earth, el elemento Actualizar utiliza el elemento targetHref para identificar el archivo original que definió los objetos que se modificarán. Para identificar los objetos que se modificarán o el contenedor de los objetos nuevos, los elementos Change, Create y Delete contienen un atributo targetId que hace referencia a los id de esos objetos.

Ejemplo de cambio

El siguiente ejemplo muestra un conjunto de NetworkLinks de muestra y archivos de datos KML. Realiza lo siguiente para ejecutar la muestra:

  1. Carga el archivo Point-load.kml en Google Earth. Este archivo contiene el objeto NetworkLink que carga el archivo de datos original, que contiene dos puntos (Point.kml).
  2. Carga el archivo Update-load.kml en Google Earth. Este archivo contiene el segundo NetworkLink, que carga el archivo con los datos de Update (un nuevo nombre para point123).

El primer archivo contiene el vínculo de red que carga el archivo de datos, que contiene dos puntos. Los marcadores que contienen estos puntos tienen ID asignados. El tercer archivo contiene otro NetworkLink, que agrega el archivo Update. El elemento Change modifica el nombre del marcador para point123.

Estos son los cuatro archivos que se usan en este ejemplo. En primer lugar, este es el archivo Point-load.kml, que contiene el NetworkLink que carga el archivo de datos original (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>

Este es el archivo Point.kml, que contiene los datos originales (dos puntos). El punto con el ID "point123" es el punto que modificaremos.

<?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>

A continuación, se encuentra el segundo archivo de NetworkLink (Update-load.kml). Este archivo carga el archivo que contiene la información de actualización.

<?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>

Por último, este es el archivo KML (NetworkLinkControl-Update.kml) que contiene la información de Update:

<?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>

Volver al principio