KML ve GeoRSS Katmanları

Platform seçin: Android iOS JavaScript

KmlLayer, KML ve GeoRSS öğelerini bir Maps JavaScript API karosu yer paylaşımında oluşturur.

Genel bakış

Maps JavaScript API, coğrafi bilgileri görüntülemek için kullanılan KML ve GeoRSS veri biçimlerini destekler. Bu veri biçimleri, bir KmlLayer nesnesi kullanılarak haritada görüntülenir. Bu nesnenin kurucusu, herkese açık bir KML veya GeoRSS dosyasının URL'sini alır.

Not: Maps JavaScript API'de KML yer paylaşımları oluşturan KmlLayer sınıfı, oluşturma amacıyla KML dosyalarını almak ve ayrıştırmak için Google tarafından barındırılan bir hizmet kullanır. Dolayısıyla, KML dosyaları yalnızca, erişim için kimlik doğrulaması gerektirmeyen ve herkesin erişebileceği bir URL'de barındırıldılarsa görüntülenebilir.

Gizli dosyalara erişmeniz, önbellekler üzerinde ayrıntılı kontrol sahibi olmanız veya tarayıcı görüntü alanını sorgu parametresi olarak bir coğrafi veri sunucusuna göndermeniz gerekiyorsa KmlLayer yerine veri katmanlarını kullanmanızı öneririz. Bu işlem, kullanıcılarınızın tarayıcılarını doğrudan web sunucunuzdan kaynak istemeye yönlendirir.

Maps JavaScript API, sağlanan coğrafi XML verilerini, Maps JavaScript API karo yerleşimi kullanılarak haritada görüntülenen bir KML gösterimine dönüştürür. Bu KML, tanıdık Maps JavaScript API yer paylaşımı öğelerine benzer (ve bir şekilde davranır). KML <Placemark> ve GeoRSS point öğeleri işaretçi olarak oluşturulur. Örneğin, <LineString> öğeleri çoklu çizgi olarak, <Polygon> öğeleri ise poligon olarak oluşturulur. Benzer şekilde, <GroundOverlay> öğeleri de haritada dikdörtgen resimler olarak oluşturulur. Bununla birlikte, bu nesneler Maps JavaScript API Markers, Polylines, Polygons veya GroundOverlays değildir. Bunun yerine harita üzerinde tek bir nesne olarak oluşturulurlar.

KmlLayer nesne, map özellikleri ayarlandıktan sonra haritada görünür. null üzerinden geçen setMap() yöntemini çağırarak bu yerleri haritadan kaldırabilirsiniz. KmlLayer nesnesi, haritanın verilen sınırları için uygun özellikleri otomatik olarak alarak bu alt öğelerin oluşturulmasını yönetir. Sınırlar değiştikçe mevcut görüntü alanındaki özellikler otomatik olarak oluşturulur.

KmlLayer içindeki bileşenler isteğe bağlı olarak oluşturulduğundan bu katman, binlerce işaretçi, çoklu çizgi ve poligonun oluşturulmasını kolayca yönetmenizi sağlar. Bu bileşen nesnelere doğrudan erişemeyeceğinizi, ancak bunların her biri, bu bağımsız nesneler hakkında veri döndüren tıklama etkinlikleri sağladığını unutmayın.

KML katmanı seçenekleri

KmlLayer() oluşturucu, isteğe bağlı olarak belirli sayıda KmlLayerOptions iletir:

  • map, KmlLayer öğesinin oluşturulacağı Map öğesini belirtir. setMap() yönteminde bu değeri null olarak ayarlayarak bir KmlLayer öğesini gizleyebilirsiniz.
  • preserveViewport, katmanın gösterilmesi sırasında haritanın KmlLayer içeriğinin sınırlarına göre ayarlanmaması gerektiğini belirtir. Varsayılan olarak, bir KmlLayer görüntülenirken harita yakınlaştırılır ve katman içeriğinin tamamını gösterecek şekilde konumlandırılır.
  • suppressInfoWindows, KmlLayer içindeki tıklanabilir özelliklerin InfoWindow nesnelerinin görüntülenmesini tetiklememesi gerektiğini belirtir.

Buna ek olarak, KmlLayer oluşturulduktan sonra bir KmlLayerMetadata nesne değişmez değeri içinde katmanın adını, açıklamasını, snippet'ini ve yazarını içeren sabit bir metadata özelliği içerir. Bu bilgileri, getMetadata() yöntemini kullanarak inceleyebilirsiniz. KmlLayer nesnelerinin oluşturulması harici bir sunucuyla eşzamansız iletişim gerektirdiğinden, özelliğin doldurulduğunu belirten metadata_changed etkinliğini dinlemek isteyebilirsiniz.

Aşağıdaki örnek, belirtilen GeoRSS özet akışından bir KmlLayer oluşturur:

TypeScript

function initMap(): void {
  const map = new google.maps.Map(
    document.getElementById("map") as HTMLElement,
    {
      zoom: 4,
      center: { lat: 49.496675, lng: -102.65625 },
    }
  );

  const georssLayer = new google.maps.KmlLayer({
    url:
      "http://api.flickr.com/services/feeds/geo/?g=322338@N20&lang=en-us&format=feed-georss",
  });
  georssLayer.setMap(map);
}

declare global {
  interface Window {
    initMap: () => void;
  }
}
window.initMap = initMap;

JavaScript

function initMap() {
  const map = new google.maps.Map(document.getElementById("map"), {
    zoom: 4,
    center: { lat: 49.496675, lng: -102.65625 },
  });
  const georssLayer = new google.maps.KmlLayer({
    url: "http://api.flickr.com/services/feeds/geo/?g=322338@N20&lang=en-us&format=feed-georss",
  });

  georssLayer.setMap(map);
}

window.initMap = initMap;

CSS

/* 
 * Always set the map height explicitly to define the size of the div element
 * that contains the map. 
 */
#map {
  height: 100%;
}

/* 
 * Optional: Makes the sample page fill the window. 
 */
html,
body {
  height: 100%;
  margin: 0;
  padding: 0;
}

HTML

<html>
  <head>
    <title>GeoRSS Layers</title>
    <script src="https://polyfill.io/v3/polyfill.min.js?features=default"></script>

    <link rel="stylesheet" type="text/css" href="./style.css" />
    <script type="module" src="./index.js"></script>
  </head>
  <body>
    <div id="map"></div>

    <!-- 
      The `defer` attribute causes the callback to execute after the full HTML
      document has been parsed. For non-blocking uses, avoiding race conditions,
      and consistent behavior across browsers, consider loading using Promises.
      See https://developers.google.com/maps/documentation/javascript/load-maps-js-api
      for more information.
      -->
    <script
      src="https://maps.googleapis.com/maps/api/js?key=AIzaSyB41DRUbKWJHPxaFjMAwdrzWzbVKartNGg&callback=initMap&v=weekly"
      defer
    ></script>
  </body>
</html>

Örneği Deneyin

Aşağıdaki örnekte, belirtilen KML feed'inden bir KmlLayer oluşturulmuştur:

TypeScript

function initMap(): void {
  const map = new google.maps.Map(
    document.getElementById("map") as HTMLElement,
    {
      zoom: 11,
      center: { lat: 41.876, lng: -87.624 },
    }
  );

  const ctaLayer = new google.maps.KmlLayer({
    url: "https://googlearchive.github.io/js-v2-samples/ggeoxml/cta.kml",
    map: map,
  });
}

declare global {
  interface Window {
    initMap: () => void;
  }
}
window.initMap = initMap;

JavaScript

function initMap() {
  const map = new google.maps.Map(document.getElementById("map"), {
    zoom: 11,
    center: { lat: 41.876, lng: -87.624 },
  });
  const ctaLayer = new google.maps.KmlLayer({
    url: "https://googlearchive.github.io/js-v2-samples/ggeoxml/cta.kml",
    map: map,
  });
}

window.initMap = initMap;

CSS

/* 
 * Always set the map height explicitly to define the size of the div element
 * that contains the map. 
 */
#map {
  height: 100%;
}

/* 
 * Optional: Makes the sample page fill the window. 
 */
html,
body {
  height: 100%;
  margin: 0;
  padding: 0;
}

HTML

<html>
  <head>
    <title>KML Layers</title>
    <script src="https://polyfill.io/v3/polyfill.min.js?features=default"></script>

    <link rel="stylesheet" type="text/css" href="./style.css" />
    <script type="module" src="./index.js"></script>
  </head>
  <body>
    <div id="map"></div>

    <!-- 
      The `defer` attribute causes the callback to execute after the full HTML
      document has been parsed. For non-blocking uses, avoiding race conditions,
      and consistent behavior across browsers, consider loading using Promises.
      See https://developers.google.com/maps/documentation/javascript/load-maps-js-api
      for more information.
      -->
    <script
      src="https://maps.googleapis.com/maps/api/js?key=AIzaSyB41DRUbKWJHPxaFjMAwdrzWzbVKartNGg&callback=initMap&v=weekly"
      defer
    ></script>
  </body>
</html>

Örneği Deneyin

KML özellik ayrıntıları

KML çok sayıda özellik içerebileceği için özellik verilerine doğrudan KmlLayer nesnesinden erişemezsiniz. Bunun yerine, özellikler görüntülenirken tıklanabilir Maps JavaScript API yer paylaşımları gibi görünecek şekilde oluşturulur. Tek tek özellikler tıklandığında, varsayılan olarak söz konusu özellikle ilgili KML <title> ve <description> bilgilerini içeren bir InfoWindow açılır. Ayrıca, bir KML özelliği tıklandığında, aşağıdaki bilgileri ileten bir KmlMouseEvent oluşturulur:

  • position, bu KML özelliği için InfoWindow konumunun dayanacağı enlem/boylam koordinatlarını belirtir. Bu konum genellikle poligonlar, çoklu çizgiler ve GroundOverlays için tıklanan konumdur ancak işaretçiler için gerçek başlangıç noktasıdır.
  • pixelOffset, InfoWindow "kuyruğu"nu sabitlemek için yukarıdaki position konumundan uzaklığı belirtir. Çokgen nesneler için bu ofset genellikle 0,0 şeklindedir ancak işaretçiler için işaretleyicinin yüksekliğini içerir.
  • featureData, KmlFeatureData JSON yapısı içeriyor.

Aşağıda örnek bir KmlFeatureData nesnesi gösterilmektedir:

{
  author: {
    email: "nobody@google.com",
    name: "Mr Nobody",
    uri: "http://example.com"
  },
  description: "description",
  id: "id",
  infoWindowHtml: "html",
  name: "name",
  snippet: "snippet"
}

Aşağıdaki örnekte, özellik tıklandığında KML özelliğindeki <Description> metni yan <div> içinde gösterilmektedir:

TypeScript

function initMap(): void {
  const map = new google.maps.Map(
    document.getElementById("map") as HTMLElement,
    {
      zoom: 12,
      center: { lat: 37.06, lng: -95.68 },
    }
  );

  const kmlLayer = new google.maps.KmlLayer({
    url: "https://raw.githubusercontent.com/googlearchive/kml-samples/gh-pages/kml/Placemark/placemark.kml",
    suppressInfoWindows: true,
    map: map,
  });

  kmlLayer.addListener("click", (kmlEvent) => {
    const text = kmlEvent.featureData.description;

    showInContentWindow(text);
  });

  function showInContentWindow(text: string) {
    const sidebar = document.getElementById("sidebar") as HTMLElement;

    sidebar.innerHTML = text;
  }
}

declare global {
  interface Window {
    initMap: () => void;
  }
}
window.initMap = initMap;

JavaScript

function initMap() {
  const map = new google.maps.Map(document.getElementById("map"), {
    zoom: 12,
    center: { lat: 37.06, lng: -95.68 },
  });
  const kmlLayer = new google.maps.KmlLayer({
    url: "https://raw.githubusercontent.com/googlearchive/kml-samples/gh-pages/kml/Placemark/placemark.kml",
    suppressInfoWindows: true,
    map: map,
  });

  kmlLayer.addListener("click", (kmlEvent) => {
    const text = kmlEvent.featureData.description;

    showInContentWindow(text);
  });

  function showInContentWindow(text) {
    const sidebar = document.getElementById("sidebar");

    sidebar.innerHTML = text;
  }
}

window.initMap = initMap;

CSS

/* Optional: Makes the sample page fill the window. */
html,
body {
  height: 100%;
  margin: 0;
  padding: 0;
}

#container {
  height: 100%;
  display: flex;
}

#sidebar {
  flex-basis: 15rem;
  flex-grow: 1;
  padding: 1rem;
  max-width: 30rem;
  height: 100%;
  box-sizing: border-box;
  overflow: auto;
}

#map {
  flex-basis: 0;
  flex-grow: 4;
  height: 100%;
}

HTML

<html>
  <head>
    <title>KML Feature Details</title>
    <script src="https://polyfill.io/v3/polyfill.min.js?features=default"></script>

    <link rel="stylesheet" type="text/css" href="./style.css" />
    <script type="module" src="./index.js"></script>
  </head>
  <body>
    <div id="container">
      <div id="map"></div>
      <div id="sidebar"></div>
    </div>

    <!-- 
      The `defer` attribute causes the callback to execute after the full HTML
      document has been parsed. For non-blocking uses, avoiding race conditions,
      and consistent behavior across browsers, consider loading using Promises.
      See https://developers.google.com/maps/documentation/javascript/load-maps-js-api
      for more information.
      -->
    <script
      src="https://maps.googleapis.com/maps/api/js?key=AIzaSyB41DRUbKWJHPxaFjMAwdrzWzbVKartNGg&callback=initMap&v=weekly"
      defer
    ></script>
  </body>
</html>

Örneği Deneyin

KML oluşturma işlemi için boyut ve karmaşıklık kısıtlamaları

Maps JavaScript API'nin, yüklenen KML dosyalarının boyutu ve karmaşıklık düzeyiyle ilgili sınırlamaları vardır. Aşağıda, mevcut sınırların özeti verilmiştir.

Not: Bu sınırlar herhangi bir zamanda değiştirilebilir.

Maksimum getirilen dosya boyutu (ham KML, ham GeoRSS veya sıkıştırılmış KMZ)
3MB
Maksimum sıkıştırılmamış KML dosyası boyutu
10MB
KMZ dosyalarındaki maksimum sıkıştırılmamış resim dosyası boyutu
Dosya başına 500 KB
Maksimum ağ bağlantısı sayısı
10
Doküman genelindeki özelliklerin maksimum sayısı
1.000
KML katmanlarının sayısı
Tek bir Google Haritası'nda görüntülenebilecek KML Katmanı sayısı sınırlıdır. Bu sınırı aşarsanız haritadaki katmanların hiçbiri görünmez ve web tarayıcınızın JavaScript konsolunda bir hata bildirilir. Sınır, oluşturulan KmlLayer sınıflarının sayısı ve bu katmanları oluşturmak için kullanılan tüm URL'lerin toplam uzunluğunun kombinasyonuna dayanır. Oluşturduğunuz her yeni KmlLayer, katman sınırının bir kısmını ve KML dosyasının yüklendiği URL'nin uzunluğuna bağlı olarak sınırın başka bir kısmını kaplar. Sonuç olarak, ekleyebileceğiniz katman sayısı uygulamaya göre değişir; ortalama olarak, sınıra ulaşmadan 10 ila 20 katman yükleyebilirsiniz. Sınıra hâlâ ulaşıyorsanız KML URL'lerini kısaltmak için bir URL kısaltıcı kullanın. Alternatif olarak, ayrı KML URL'leri için NetworkLinks'nı içeren tek bir KML dosyası oluşturun.

Performans ve önbelleğe almayla ilgili dikkat edilmesi gerekenler

Google'ın sunucuları, sunucularınızdaki yükü azaltmak için KML dosyalarını geçici olarak önbelleğe alır. Bu ayrıca kullanıcılarınız haritayı tıkladığında, kaydırırken ve yakınlaştırırken KML dosyanızdaki uygun segmentlerin alan verimli bir şekilde gösterilmesini sağlayarak kullanıcılarınızın performansını da artırır.

En iyi performans için şunları yapmanızı öneririz:

  • KML'de uygun bir <expires> etiketi kullanın.

    KmlLayer, KML dosyalarının nasıl önbelleğe alınacağına karar verirken HTTP üst bilgilerini kullanmaz.
  • İstek zamanında dinamik olarak dosya oluşturmayın.

    Bunun yerine, dosyaları ihtiyaç duyulmadan önce oluşturun ve statik olarak sunun. Sunucunuzun KML dosyasını iletmesi uzun zaman alırsa KmlLayer görüntülenmeyebilir.
  • Dosyanızın güncellendiğini kesin olarak bilmiyorsanız önbellekleri atlamaya çalışmayın.

    Önbellekleri her zaman atlamak (örneğin, sorgu parametresi olarak rastgele bir sayı veya kullanıcının saatini eklemek), siteniz aniden popülerleşirse ve büyük KML dosyaları sunuyorsanız sunucularınızın aşırı yorulmasına neden olabilir.

    Bu durum, herhangi bir kullanıcı saati yanlışsa ve <expires> etiketi doğru ayarlanmadıysa önbelleğin kullanıcılara eski veriler sunmasına da neden olabilir.

    Bunun yerine, güncellenen statik dosyaları yeni ve ayrı bir düzeltme numarasıyla yayınlayın ve KmlLayer hizmetine iletilen URL'yi geçerli sürümle dinamik olarak güncellemek için sunucu tarafı kodu kullanın.
  • KML dosyalarınızda yapılan değişiklikleri dakikada bir defayla sınırlandırın.

    Tüm dosyaların boyutu 1 MB'tan büyükse (sıkıştırılmamışsa) değişiklikleri 5 dakikada bir yapılacak şekilde sınırlayın.
  • Coğrafi veri sunucusu kullanırken, katmanların görüntü alanını sınırlandırmak için sorgu parametreleri kullanmaktan kaçının.

    Bunun yerine, harita görüntü alanını bounds_changed etkinliğiyle sınırlandırabilirsiniz. Kullanıcılara yalnızca otomatik olarak gösterilebilen özellikler gönderilecek.

    Coğrafi veri sunucunuzda büyük miktarda veri varsa bunun yerine veri katmanlarını kullanabilirsiniz.
  • Coğrafi veri sunucusu kullanırken, farklı sorgu parametrelerine sahip tek bir KmlLayer yerine kullanıcıların geçiş yapmasına izin vermek istediğiniz her özellik grubu için birden fazla KmlLayer kullanın.
  • Dosya boyutunu küçültmek için sıkıştırılmış KMZ dosyaları kullanın.
  • Google Cloud Storage veya başka bir bulut depolama çözümü kullanıyorsanız erişim denetimlerini uygulamak için İmzalı URL'ler veya geçici jetonlar gibi özellikleri kullanmaktan kaçının. Bunlar yanlışlıkla önbelleğe almayı engelleyebilir.
  • Tüm noktaların hassasiyetini uygun bir hassasiyete düşürün.
  • Poligonlar ve çoklu çizgiler gibi benzer özelliklerin geometrisini birleştirin ve basitleştirin.
  • Kullanılmayan öğeleri veya resim kaynaklarını kaldırın.
  • Desteklenmeyen öğeleri kaldırın.

Özel verilere erişmeniz, önbelleğe almayı engellemeniz veya tarayıcı görüntü alanını sorgu parametresi olarak bir coğrafi veri sunucusuna göndermeniz gerekiyorsa KmlLayer yerine veri katmanları kullanmanızı öneririz. Bu işlem, kullanıcılarınızın tarayıcılarını doğrudan web sunucunuzdan kaynak istemeye yönlendirir.

Desteklenen KML öğeleri

Maps JavaScript API, aşağıdaki KML öğelerini destekler. KML ayrıştırıcısı, genellikle, anlamlandıramadığı XML etiketlerini sessiz bir şekilde göz ardı eder.

  • Yer İşaretleri
  • Simgeler
  • Klasörler
  • Açıklayıcı HTML: <BalloonStyle> ve <text> aracılığıyla varlık değiştirme
  • KMZ (ekli resimler de dahil olmak üzere, sıkıştırılmış KML)
  • Çoklu çizgiler ve poligonlar
  • Renk, dolgu ve saydamlık da dahil olmak üzere, çoklu çizgiler ve poligonlar için stiller
  • Dinamik olarak veri içe aktarmak için ağ bağlantıları
  • Yer katmanları ve ekran katmanları

Aşağıdaki tabloda, desteklenen KML öğelerinin tüm ayrıntıları verilmiştir.

KML öğesi API'de destekleniyor mu? Yorum
<address> no
<AddressDetails> no
<Alias> Yok <Model> desteklenmiyor
<altitude> no
<altitudeMode> no
<atom:author> evet
<atom:link> evet
<atom:name> evet
<BalloonStyle> kısmen yalnızca <text> desteklenir
<begin> Yok <TimeSpan> desteklenmiyor
<bgColor> no
<bottomFov> Yok <PhotoOverlay> desteklenmiyor
<Camera> no
<Değiştir> kısmen yalnızca stil değişiklikleri desteklenir
<color> kısmen #AABBGGRR ve #BBGGRR içerir; <IconStyle>, <ScreenOverlay> ve <GroundOverlay>'de desteklenmez
<colorMode> no
<cookie> no
<coordinates> evet
<Oluştur> no
<Data> evet
<Sil> no
<description> evet HTML içeriğine izin verilir ancak bu tür içerikler, tarayıcılar arası saldırılardan korumak için temizlenir. $[dataName] biçimindeki varlık değişiklikleri desteklenmez.
<displayMode> no
<displayName> no
<Document> kısmen üstü kapalı olarak desteklenir; ancak bu destek, diğer Özelliklerin alt öğesi olarak etkilenmez.
<drawOrder> no
<east> evet
<end> Yok <TimeSpan> desteklenmiyor
<expires> evet ayrıntılar için Özet bölümüne bakın
<ExtendedData> kısmen Yalnızca yazılmamış <Data>, < SimpleData> veya <Schema> desteklenmez ve $[dataName] biçimindeki varlık değişiklikleri desteklenmez.
<extrude> no
<fill> evet
<flyToView> no
<Klasör> evet
<geomColor> no desteği sonlandırıldı
<GeometryCollection> no desteği sonlandırıldı
<geomScale> no desteği sonlandırıldı
<gridOrigin> Yok <PhotoOverlay> desteklenmiyor
<GroundOverlay> evet döndürülemiyor
<h> evet desteği sonlandırıldı
<heading> evet
ipucu evet target=... destekleniyor
<hotSpot> evet
<href> evet
<httpQuery> no
<Icon> evet döndürülemiyor
<IconStyle> evet
<ImagePyramid> Yok <PhotoOverlay> desteklenmiyor
<innerBoundaryIs> evet dolaylı olarak <DoğrusalRing> sıralamasından
<ItemIcon> Yok <ListStyle> desteklenmiyor
<key> Yok <StyleMap> desteklenmiyor
<kml> evet
<labelColor> no desteği sonlandırıldı
<LabelStyle> no
<latitude> evet
<LatLonAltBox> evet
<LatLonBox> evet
<leftFov> Yok <PhotoOverlay> desteklenmiyor
<LinearRing> evet
<LineString> evet
<LineStyle> evet
<Link> evet
<linkDescription> no
<linkName> no
<linkSnippet> no
<listItemType> Yok <ListStyle> desteklenmiyor
<ListStyle> no
<Konum> Yok <Model> desteklenmiyor
<Lod> evet
<longitude> evet
<LookAt> no
<maxAltitude> evet
<maxFadeExtent> evet
<maxHeight> Yok <PhotoOverlay> desteklenmiyor
<maxLodPixels> evet
<maxSessionLength> no
<maxWidth> Yok <PhotoOverlay> desteklenmiyor
<message> no
<Metadata> no desteği sonlandırıldı
<minAltitude> evet
<minFadeExtent> evet
<minLodPixels> evet
<minRefreshPeriod> no <NetworkLink>
<Model> no
<MultiGeometry> kısmen oluşturulur ancak sol yan panelde ayrı özellikler olarak görüntülenir
<name> evet
<near> Yok <PhotoOverlay> desteklenmiyor
<NetworkLink> evet  
<NetworkLinkControl> kısmen <Update> ve <expires> kısmen destekleniyor. API, HTTP üst bilgilerindeki geçerlilik bitiş ayarlarını yok sayar ancak KML'de belirtilen geçerlilik bitiş ayarlarını kullanır. Geçerlilik bitiş ayarları olmadığında veya zaman geçerlilik aralığı içinde, Google Haritalar internetten getirilen verileri belirtilmeyen süreler boyunca önbelleğe alabilir. Doküman yeniden adlandırılıp farklı bir URL altında getirilerek veya belgenin uygun geçerlilik süresi ayarları içerdiğinden emin olunmasıyla verilerin internetten yeniden getirilmesi zorlanabilir.
<north> evet
<open> evet
<Orientation> Yok <Model> desteklenmiyor
<outerBoundaryIs> evet dolaylı olarak <DoğrusalRing> sıralamasından
<outline> evet
<overlayXY> no
<Pair> Yok <StyleMap> desteklenmiyor
<phoneNumber> no
<PhotoOverlay> no
<Placemark> evet
<Point> evet
<Polygon> evet
<PolyStyle> evet
<range> evet
<refreshInterval> kısmen Yalnızca <Link>; <Icon> içinde değil
<refreshMode> evet HTTP üstbilgileri, "onExpire" modu için desteklenmez. Yukarıdaki <Update> ve <expires> ile ilgili notlara bakın.
<refreshVisibility> no
<Region> evet
<ResourceMap> Yok <Model> desteklenmiyor
<rightFov> Yok <PhotoOverlay> desteklenmiyor
<roll> Yok <Kamera> ve <Model> desteklenmiyor
<rotation> no
<rotationXY> no
<Ölçek> Yok <Model> desteklenmiyor
<scale> no
<Schema> no
<SchemaData> no
<ScreenOverlay> evet döndürülemiyor
<screenXY> no
<shape> Yok <PhotoOverlay> desteklenmiyor
<SimpleData> Yok <SchemaData> desteklenmiyor
<SimpleField> Yok <Schema> desteklenmiyor
<size> evet
<Snippet> evet
<south> evet
<state> Yok <ListStyle> desteklenmiyor
<Style> evet
<StyleMap> no Fareyle üzerine gelme (vurgulama) efektleri desteklenmiyor
<styleUrl> Yok <StyleMap> desteklenmiyor
<targetHref> kısmen <Alias>'da değil, <Update>'de desteklenir
<tessellate> no
<text> evet $[geDirections] değişimi desteklenmiyor
<textColor> no
<tileSize> Yok <PhotoOverlay> desteklenmiyor
<tilt> no
<TimeSpan> no
<TimeStamp> no
<topFov> Yok <PhotoOverlay> desteklenmiyor
<Güncelle> kısmen <Create> veya <Delete> değil, yalnızca stil değişiklikleri
<Url> evet desteği sonlandırıldı
<value> evet
<viewBoundScale> no
<viewFormat> no
<viewRefreshMode> kısmen "onStop" desteklenir
<viewRefreshTime> evet
<ViewVolume> Yok <PhotoOverlay> desteklenmiyor
<visibility> kısmen <Klasör> üzerinde evet - alt yer işaretleri görünürlüklerini devralır
<w> evet desteği sonlandırıldı
<west> evet
<when> Yok <TimeStamp> desteklenmiyor
<width> evet
<x> evet desteği sonlandırıldı
<y> evet desteği sonlandırıldı