czwartek, 8 maja 2008

Publikowanie ciekawych miejsc z Googleearth

Jak w googleearth doda się żółtą pinezkę (dodaj oznaczenie miejsca), to zaznaczone miejsce jest zapisywane w pliku ~/.googleearth/myplaces.kml. Plik ten oprócz informacji o pinezkach zawiera różne inne informacje. Poniższy skrypt upraszcza myplaces.kml usuwając wszystko za wyjątkiem węzłów Document/Folder/Placemark jeżeli element Folder zawiera napis "Moje miejsca":


<?xml version="1.0" encoding="iso-8859-2"?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
xmlns:kml="http://earth.google.com/kml/2.2" version="1.0" >

<xsl:output method="xml" indent="yes" />

<xsl:template match='/'>
<kml xmlns="http://earth.google.com/kml/2.2">
<Document>
<name>Ciekawe miejsca Tomasza Przechlewskiego</name>
<xsl:apply-templates select='//kml:Document/kml:Folder[kml:name/text()="Moje miejsca"]/kml:Placemark' />
</Document>
</kml>
</xsl:template>

<xsl:template match="kml:Document/kml:Folder/kml:Placemark">
<xsl:copy-of select="."/>
</xsl:template>
</xsl:stylesheet>

Koniecznie trzeba używać przestrzeni nazwa. Inaczej nie działa: kml:Document oraz Document to dwie różne rzeczy.

Moje miejsca są tutaj.

Brak komentarzy:

Prześlij komentarz