| This is a webpage to discuss KML (Keyhole Markup Language used for 3D geospatial rendering in Google Earth and other viewers) related products which are leveraged/derived from OOSTech and OOSTethys related discussions and data and services. TOC: No TOC in "Main.OOSTechKML" | |||||||||||||
| Line: 90 to 90 | |||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Server side install and usage | |||||||||||||
| Changed: | |||||||||||||
| < < |
The scripts which support the KML generation are a php page to forward the http url arguments to a called perl script which uses the LWP::Simple and XML::XPath packages to retrieve and parse the provided input files and converts them to the returned KMZ (a zipped KML) file reference. I've also included the script which I use on the server side internally for my own automated generation purposes which is pretty much the same file as earlier with just a few internal server rather than http references to data so the zipping process isn't required. The server side script also generates content for the archival script genDayArchive.pl | ||||||||||||
| > > |
The scripts which support the KML generation are a php page to forward the http url arguments to a called perl script which uses the LWP::Simple and XML::XPath packages to retrieve and parse the provided input files and converts them to the returned KMZ (a zipped KML) file reference. I've also included the script which I use on the server side internally for my own automated generation purposes which is pretty much the same file as earlier with just a few internal server rather than http references to data so the zipping process isn't required. The server side script also generates content for the archival script genDayArchive.pl | ||||||||||||
| For installation you'll also need a copy of units.xml file which is used to support unit conversion and labeling for the scripts and style.xml file which defines the color coded range limits. | |||||||||||||
| Line: 139 to 139 | |||||||||||||
Server side install and usage | |||||||||||||
| Changed: | |||||||||||||
| < < |
The scripts which support the KML generation are a php page to forward the http url argument to a called perl script which translates the xml to csv. The csv file is passed forward to the earlier csv to kml translation perl script which produces the returned kml. | ||||||||||||
| > > |
The scripts which support the KML generation are a php page to forward the http url argument to a called perl script which translates the xml to csv. The csv file is passed forward to the earlier csv to kml translation perl script which produces the returned kml. | ||||||||||||
Related Links | |||||||||||||
| Line: 147 to 147 | |||||||||||||
|
http://nautilus.baruch.sc.edu/twiki_dmcc/bin/view/Main/XeniaPackage http://nautilus.baruch.sc.edu/twiki_dmcc/bin/view/Main/JCNotes#July_27_2005_General_Info_Links | |||||||||||||
| Added: | |||||||||||||
| > > |
Update NotesNovember 8, 2025: The dated attached files on this page were changed to incorporate the use of the much faster XML::LibXML references instead of XML::XPath | ||||||||||||
| -- JeremyCothran - 14 Oct 2025 | |||||||||||||
| Added: | |||||||||||||
| > > |
| ||||||||||||
| This is a webpage to discuss KML (Keyhole Markup Language used for 3D geospatial rendering in Google Earth and other viewers) related products which are leveraged/derived from OOSTech and OOSTethys related discussions and data and services. TOC: No TOC in "Main.OOSTechKML" | ||||||||
| Line: 144 to 144 | ||||||||
|---|---|---|---|---|---|---|---|---|
Related Linkshttp://nautilus.baruch.sc.edu/twiki_dmcc/bin/view/Main/JCNotes#Google_Earth | ||||||||
| Added: | ||||||||
| > > |
http://nautilus.baruch.sc.edu/twiki_dmcc/bin/view/Main/XeniaPackage | |||||||
|
http://nautilus.baruch.sc.edu/twiki_dmcc/bin/view/Main/JCNotes#July_27_2005_General_Info_Links | ||||||||
| This is a webpage to discuss KML (Keyhole Markup Language used for 3D geospatial rendering in Google Earth and other viewers) related products which are leveraged/derived from OOSTech and OOSTethys related discussions and data and services. TOC: No TOC in "Main.OOSTechKML" | ||||||||
| Line: 90 to 90 | ||||||||
|---|---|---|---|---|---|---|---|---|
Server side install and usage | ||||||||
| Changed: | ||||||||
| < < |
The scripts which support the KML generation are a php page to forward the http url arguments to a called perl script which uses the LWP::Simple and XML::XPath packages to retrieve and parse the provided input files and converts them to the returned KMZ (a zipped KML) file reference. I've also included the script which I use on the server side internally for my own automated generation purposes which is pretty much the same file as earlier with just a few internal server rather than http references to data so the zipping process isn't required. The server side script also generates content for the archival script [[][genDayArchive.pl]] | |||||||
| > > |
The scripts which support the KML generation are a php page to forward the http url arguments to a called perl script which uses the LWP::Simple and XML::XPath packages to retrieve and parse the provided input files and converts them to the returned KMZ (a zipped KML) file reference. I've also included the script which I use on the server side internally for my own automated generation purposes which is pretty much the same file as earlier with just a few internal server rather than http references to data so the zipping process isn't required. The server side script also generates content for the archival script genDayArchive.pl | |||||||
| For installation you'll also need a copy of units.xml file which is used to support unit conversion and labeling for the scripts and style.xml file which defines the color coded range limits. | ||||||||
| This is a webpage to discuss KML (Keyhole Markup Language used for 3D geospatial rendering in Google Earth and other viewers) related products which are leveraged/derived from OOSTech and OOSTethys related discussions and data and services. TOC: No TOC in "Main.OOSTechKML" | ||||||||
| Line: 22 to 22 | ||||||||
|---|---|---|---|---|---|---|---|---|
| ||||||||
| Added: | ||||||||
| > > |
| |||||||
Web service / browser client usage | ||||||||
| Line: 89 to 90 | ||||||||
Server side install and usage | ||||||||
| Changed: | ||||||||
| < < |
The scripts which support the KML generation are a php page to forward the http url arguments to a called perl script which uses the LWP::Simple and XML::XPath packages to retrieve and parse the provided input files and converts them to the returned KMZ (a zipped KML) file reference. I've also included the script which I use on the server side internally for my own automated generation purposes which is pretty much the same file as earlier with just a few internal server rather than http references to data so the zipping process isn't required. | |||||||
| > > |
The scripts which support the KML generation are a php page to forward the http url arguments to a called perl script which uses the LWP::Simple and XML::XPath packages to retrieve and parse the provided input files and converts them to the returned KMZ (a zipped KML) file reference. I've also included the script which I use on the server side internally for my own automated generation purposes which is pretty much the same file as earlier with just a few internal server rather than http references to data so the zipping process isn't required. The server side script also generates content for the archival script [[][genDayArchive.pl]] | |||||||
| For installation you'll also need a copy of units.xml file which is used to support unit conversion and labeling for the scripts and style.xml file which defines the color coded range limits. | ||||||||
| Added: | ||||||||
| > > |
Proving GE timeline support was very easy, just added the following element tags with the observation time to each of my placemarks.
<TimeStamp><when>2006-10-17T14:00:00Z</when><TimeStamp> | |||||||
KML placemark generator for catalog effort | ||||||||
| This is a webpage to discuss KML (Keyhole Markup Language used for 3D geospatial rendering in Google Earth and other viewers) related products which are leveraged/derived from OOSTech and OOSTethys related discussions and data and services. TOC: No TOC in "Main.OOSTechKML" | ||||||||
| Line: 67 to 67 | ||||||||
|---|---|---|---|---|---|---|---|---|
| New users are encouraged to review the SOS cookbook documents at http://www.oostethys.org/sos-cgi-cookbook-v0.1 which explain how to setup a OGC SOS(Sensor Observing System) setup for your data using a comination of xml metadata files, data files, templates and scripts which tie things together. While this KML product only requires the sos_config.xml file and data files, users are encouraged to use the SOS cookbook to provide a OGC SOS service and share/register this service for additional benefit. | ||||||||
| Changed: | ||||||||
| < < |
The inputs required to this product are | |||||||
| > > |
The inputs required to this KML product are | |||||||
| ||||||||
| Added: | ||||||||
| > > |
I decided to go with zip files for this product because I have a large number of platforms(>1000) and observations(say 10 per platform) and making thousands of individual http requests using the defined OGC SOS response/request methods would be prohibitive. Hopefully at some point we'll(the OOSTech/OOSTethys groups) figure out the orthodox OGC SOS request/response methods for large amounts of data. | |||||||
Note the following
| ||||||||
| Line: 91 to 93 | ||||||||
| For installation you'll also need a copy of units.xml file which is used to support unit conversion and labeling for the scripts and style.xml file which defines the color coded range limits. | ||||||||
| Added: | ||||||||
| > > |
| |||||||
KML placemark generator for catalog effort | ||||||||
| This is a webpage to discuss KML (Keyhole Markup Language used for 3D geospatial rendering in Google Earth and other viewers) related products which are leveraged/derived from OOSTech and OOSTethys related discussions and data and services. TOC: No TOC in "Main.OOSTechKML" | ||||||||
| Line: 7 to 7 | ||||||||
|---|---|---|---|---|---|---|---|---|
KML placemark generator with layers by operator and observation and ranged color coding of observation values | ||||||||
| Changed: | ||||||||
| < < |
||||||||
| > > |
||||||||
Description | ||||||||
| Line: 49 to 49 | ||||||||
| http://carocoops.org/gearth/genPlacemarksSOS.php?zip_config_url=http://dev.gomoos.org:8081/sos/metadata/sos_config.xml.zip&zip_data_url=http://dev.gomoos.org:8081/sos/data/now/now.zip | ||||||||
| Changed: | ||||||||
| < < |
||||||||
| > > |
||||||||
| In regards to automatically zipping files, here's a snippet of some code I use on my end towards this purpose. | ||||||||
| Line: 91 to 91 | ||||||||
| For installation you'll also need a copy of units.xml file which is used to support unit conversion and labeling for the scripts and style.xml file which defines the color coded range limits. | ||||||||
| Added: | ||||||||
| > > |
KML placemark generator for catalog effortDescriptionAfter a discussion on some minimal metadata fields necessary to support an IOOS observations based catalog(not getting into sensor or data details), I developed a KML product which used a CSV (Comma Separated Value) file input to generate a KML output visualization of the the supplied catalog data detailed at ObsCatalog and with a sample visualization shown above. Fortunately the new sos_config.xml file used in the SOS/Oostethys effort has incorporated those same catalog elements. Since only the format of the input data has changed to the KML catalog visualization, I've added some code which processes the sos_config.xml.zip (a zipped sos_config.xml file) and translates that to a CSV file which is then used by the earlier scripts to produce KML. This product could be merged in with the above observations based KML product, but I'm leaving them separate for now for the following reasons
Web service / browser client usagehttp://carocoops.org/gearth/catalog/zip2kml.php?zip_url=http://dev.gomoos.org:8081/sos/metadata/sos_config.xml.zip The calling php page uses the http url to the sos_config.xml.zip file and return a KML file which should automatically load into Google Earth (if GE is installed) and there are not errors with the supplied input files. The required http argument expected is
##zip sos_config.xml file `cd /sos/metadata; zip sos_config.xml.zip sos_config.xml`; Server side install and usageThe scripts which support the KML generation are a php page to forward the http url argument to a called perl script which translates the xml to csv. The csv file is passed forward to the earlier csv to kml translation perl script which produces the returned kml. | |||||||
Related Linkshttp://nautilus.baruch.sc.edu/twiki_dmcc/bin/view/Main/JCNotes#Google_Earth | ||||||||
| Line: 1 to 1 | ||||||||
|---|---|---|---|---|---|---|---|---|
| Added: | ||||||||
| > > |
This is a webpage to discuss KML (Keyhole Markup Language used for 3D geospatial rendering in Google Earth and other viewers) related products which are leveraged/derived from OOSTech and OOSTethys related discussions and data and services.
Jeremy CothranKML placemark generator with layers by operator and observation and ranged color coding of observation valuesDescriptionThe above google earth image shows ocean observing data gathered to the SEACOOS database which is refreshed 5 minutes past the top of each hour available using this kml link. The KML is generated from files used to support the OOSTethys effort detailed here Features
Web service / browser client usageSOS cookbook usersFor users familiar with the SOS cookbook efforts documented at http://www.oostethys.org/sos-cgi-cookbook-v0.1 , the additional steps needed to provide the kml output from your existing configuration and data files are as follows
##zip sos_config.xml file `cd /sos/metadata; zip sos_config.xml.zip sos_config.xml`; ##zip latest(now) data files `cd /sos/data/now; find . -name "*.csv" -print | zip now.zip -@`; New usersNew users are encouraged to review the SOS cookbook documents at http://www.oostethys.org/sos-cgi-cookbook-v0.1 which explain how to setup a OGC SOS(Sensor Observing System) setup for your data using a comination of xml metadata files, data files, templates and scripts which tie things together. While this KML product only requires the sos_config.xml file and data files, users are encouraged to use the SOS cookbook to provide a OGC SOS service and share/register this service for additional benefit. The inputs required to this product are
Server side install and usageThe scripts which support the KML generation are a php page to forward the http url arguments to a called perl script which uses the LWP::Simple and XML::XPath packages to retrieve and parse the provided input files and converts them to the returned KMZ (a zipped KML) file reference. I've also included the script which I use on the server side internally for my own automated generation purposes which is pretty much the same file as earlier with just a few internal server rather than http references to data so the zipping process isn't required. For installation you'll also need a copy of units.xml file which is used to support unit conversion and labeling for the scripts and style.xml file which defines the color coded range limits.Related Linkshttp://nautilus.baruch.sc.edu/twiki_dmcc/bin/view/Main/JCNotes#Google_Earthhttp://nautilus.baruch.sc.edu/twiki_dmcc/bin/view/Main/JCNotes#July_27_2005_General_Info_Links -- JeremyCothran - 14 Oct 2025 | |||||||