If you clicked the link for this article in the hopes that you would find a detailed description of the internal structure of KML, I apologize. In keeping with the DeLorme philosophy of ensuring that technology is as straightforward and accessible as possible, what follows is a layman’s approach to using Google’s mapping tools in conjunction with XMap. Detailed information on Google’s Keyhole Markup Language can be found in this KML Tutorial. Thankfully XMap 7 has been configured to automatically assign the necessary code so there’s no need to worry about what’s under the hood.
By way of laying the groundwork for describing the XMap to Google procedure, let’s begin by developing a simple hypothetical scenario. You have been tasked with capturing the location of, and collecting critical information about several sites, and you have been informed that your data must be presented in such a way as to make it available to the required stakeholders. On the assumption that the target audience is not GIS aficionados, your options are limited to a static printed map or a more universal online data delivery mechanism, which is where Google comes in. In composing this article, it is hoped that you can translate this simplistic scenario into a real-world application that reflects the typical workflow in your workplace.
To begin the process, the requisite GIS layer is created in XMap and populated with all of the required attribute fields. For our simple scenario, the point layer will include fields for the site name, type and an arbitrary numeric value to be assigned to each point.
To begin the process, the requisite GIS layer is created in XMap and populated with all of the required attribute fields. For our simple scenario, the point layer will include fields for the site name, type and an arbitrary numeric value to be assigned to each point.
Next, an XMap Form is created that will allow the data collection to be performed using a handheld Earthmate PN-Series GPS receiver. Step-by-step instructions on how to create XMap Forms are available here.
This empty layer is then deployed to a PN-Series device and all of the site information is recorded using the Waypoint button and the subsequent form. When complete, XMap’s merge function efficiently integrates this field-collected data into the original layer.
That’s the easy part; now we need to share our data.
Before exporting a KML file it is a good idea to assign a label to each object in the layer. The absence of an assigned label will result in Google applying a generic name to each point. In this case the field called Site Name will be used as a label. Click the Tools button in the GIS Workspace and select label to choose the label field.
The symbology applied to a point layer in XMap is not carried through to either Google Earth or Google Maps so there is no need to customize the symbol type before generating the KML file. The style applied to lines and polygon layers is recorded in the KML file and therefore your symbology selection for these data types will be reflected in the Google map.
To generate the KML file, simply click the Layers button in the GIS Workspace and select Export… In the resulting dialog box, use the Save as type dropdown list to select OGC KML format and type a name for your file. Unlike a shapefile, all of the constituent parts of a KML including the geometry and the attributes file are contained in a single file.
Google offers two choices for importing and displaying KML files, Google Earth and Google Maps. While they share many of the same functions and interface features they differ in terms of the platform within which the maps and data are rendered. Google Earth is a downloadable application while Google Maps is a browser-based tool. In both cases, the actual maps are delivered via the web.
For this scenario we will describe the process of creating an interactive map containing our collected points within Google Maps. This will allow us to share the data by simply sending each party a URL instead of requiring each recipient to install a local version of Google Earth. This procedure requires that the person creating the map has a Google account (or a Gmail address).
Follow these steps to publish your XMap-created points:

- Type http://maps.google.com/ into your web browser.
- On the left of the page, click the My Maps link. First time users will be prompted to login; returning visitors will see a list of previously created sites.
- Type a name for your site and, if necessary, type a brief description.
- Select the appropriate privacy settings. Normally Unlisted is the preferred option as this ensures that only those with access to the URL will see your data.
- Click the Import button and in the resulting dialog box, click the Choose File button.
- Select the KML file previously created in XMap. Note that there is a 10MB limit per file which, for large layers, may necessitate segmenting the original GIS data into several sections. Multiple KML files can be uploaded to each map.
- Click the Upload from File button. The Google map automatically redraws to display your points and a list of the records is generated on the left side of the screen
- Click a point on the map to display the attributes for that point and, when in Edit mode, to manually adjust the symbolization.
- Click the Done button to create the map
Each Google Map is assigned an unique URL which can be emailed to all of the required recipients. Use the Email button at the top right corner of the map window or click the Link button to copy the URL. Web developers can even use the included html code to embed the map into an existing web site.
View PN-40-Collected Data in Google Maps.
A description of the development and management of a GIS is often condensed into a simple three-step process: data collection; data processing; and data sharing. The PN-Series GPS receivers are ideally suited for the first stage; XMap provides a powerful set of tools for stage two; and with the inclusion of KML support in XMap 7 Google’s online mapping services offer a readily available option for stage three.