The KML response example in the OpenSearch Geo extensions DRAFT
violates the OGC KML 2.2 specification.
<kml xmlns="
http://www.opengis.net/kml/2.2" xmlns:atom="http://
www.w3.org/2005/Atom"
xmlns:opensearch="
http://a9.com/-/spec/opensearch/1.1/"
xmlns:geo="
http://a9.com/-/opensearch/extensions/geo/1.0/">
<!-- non-KML namespace elements not allowed in kml element -->
<opensearch:totalResults>4230000</opensearch:totalResults>
<opensearch:startIndex>21</opensearch:startIndex>
<opensearch:itemsPerPage>10</opensearch:itemsPerPage>
<opensearch:Query role="request" searchTerms="New York History"
startPage="3" geo:box="-74.0667,40.69418,-73.9116,40.7722"/>
....
Example from
http://www.opensearch.org/Specifications/OpenSearch/Extensions/Geo/1.0/Draft_2#KML_Response
An alternative representation that conforms to the KML 2.2 spec could
use an ExtendedData element on the outer-most Document with the
opensearch elements as arbitrary XML with an explicit namespace.
<kml xmlns="
http://www.opengis.net/kml/2.2"
xmlns:atom="
http://www.w3.org/2005/Atom"
xmlns:opensearch="
http://a9.com/-/spec/opensearch/1.1/">
<Document>
<ExtendedData>
<opensearch:totalResults>4230000</opensearch:totalResults>
<opensearch:startIndex>21</opensearch:startIndex>
<opensearch:itemsPerPage>10</opensearch:itemsPerPage>
<opensearch:Query role="request" searchTerms="New York History"
startPage="3" geo:box="-74.0667,40.69418,-73.9116,40.7722"/>
<atom:link rel="related" href="
http://example.com/New+York+History?
pw=3&bbox=-74.0667,40.69418,-73.9116,40.7722" type="text/html" />
<atom:link rel="related" href="
http://example.com/New+York+History?
pw=3&bbox=-74.0667,40.69418,-73.9116,40.7722&format=atom"
type="application/atom+xml" />
</ExtendedData>
...
</Document>
</kml>