Search code examples
xmlgoogle-mapskmlxsd-validationgoogle-earth

Google KML Schema License - kml22gx.xsd


Context:

Running continuous integration builds, it's nice to not rely on HTTP queries for a variety of reasons. We are manually parsing some data out of KML files, and as a first smoke test we're validating them against the KML schema. Presently we're using ogckml22.xsd, but we'd like to add support for Google's extensions, as we primarily use Google Maps/Google Earth. We downloaded the old schema and use it locally for KML validations.

Google Earth appears to produce KMLs with the following namespaces:

<kml xmlns="http://www.opengis.net/kml/2.2" 
xmlns:gx="http://www.google.com/kml/ext/2.2" 
xmlns:kml="http://www.opengis.net/kml/2.2" 
xmlns:atom="http://www.w3.org/2005/Atom">

The http://www.google.com/kml/ext/2.2 is Google's own, and begins with this notice:

<!-- Copyright 2010. Google, Inc. All rights reserved. -->

The ancient Google Groups discussion here manages to not answer the question, but is the only resource I've found that directly addresses this.

tl;dr: What is the license for kml22gx.xsd? Can I legally download it and bundle it in an application/use it locally?


Solution

  • If you are not reselling your application then including the google extension schema without removing the Copyright or Google name should comply with Google's permissions. It should be under "fair use" as defined in Google Permissions General Guidelines.

    In fact, all of the defined "gx" extensions (Track, MultiTrack, Tour, etc.) to-date have been incorporated in the new KML 2.3 standard.

    The OGC KML 2.3 documents are free and may be downloaded from http://www.opengeospatial.org/standards/kml#downloads.

    Note that Google Earth at present only supports the OGC KML 2.2 standard. KML 2.3 may be supported in a TBD future version.