Overview
KML stands for Keyhole Markup Language and is a file format used to display geographic data in Earth browsers such as Google Earth, Google Maps, and Google Maps for Mobile. KML was developed for use with Google Earth, originally named Keyhole Earth Viewer. It utilizes a tag-based structure with nested elements and attributes and is based on the XML standard. The format contains boundary coordinates and placemark information for multiple zones.
There are three methods by which KML features can be integrated with SmartSimple.
Uploading a KML File to an XML Field
- Create a Special - XML Data custom field.
- Enable the Enable KML and Show Upload Button settings.
This field on a record will display an Upload button, allowing selection of a downloaded file in *.kml format.
After opening the *.kml file, the field's Open button will launch a Google Map window with the uploaded KML overlay.
Enabling KML on Custom Fields
KML functionality can be enabled on the following custom field types:
- Dynamic Data – Dynamic Control Field
- Lookup – Entity and People
- Lookup – External Entity
- Lookup – External People
- Select Many – Check Boxes
- Select Many – List Box
- Select One – Combo Box
- Text – Password Protected
- Text – Multiple Lines
- Text – Single Line
- Lookup - NAIC Codes
- Lookup - ICD Code
- Special - XML Data
To enable KML, edit the custom field and select the "Enable KML" option under General Options:![]()
Fields containing SmartSimple KML Variables will display a "View Map" button in view mode:
In this example, California is highlighted on the Google Map, and census information is accessible.
SmartSimple KML Variables currently supported include:
- @geo.us.states, representing U.S. States
- @geo.us.counties, representing U.S. counties
- @geo.ca.provinces, representing Canadian provinces
SmartSimple KML Variable Syntax
| To highlight only two U.S. counties | @geo.us.counties.Washington-Ferry@,@geo.us.counties.North Dakota-Renville@ or @geo.us.counties.Washington-Ferry,North Dakota-Renville@ (both produce identical map overlays) |
| To highlight only Washington State | @geo.us.states.washington@ |
| To display all U.S. counties | @geo.us.counties.*@ |
| To display all Canadian provinces | @geo.ca.provinces.*@ |
Storing Public KML Files to System Variables
Public *.kml and *.kmz files can be added as "System Map Overlays" to every map generated by a KML-enabled field:
- Create a System Variable with a Name that begins with the characters "KML-".
- Set the Value of the System Variable to the URL of the KML file hosted on the Internet.
- All such System Variables will appear as selectable overlays on the left side of Google Maps opened via KML-enabled custom fields.
- The label for each overlay corresponds to the portion of the System Variable Name following the "KML-" prefix. For example, a System Variable named "KML-Bicycle Shelters" will be labeled "Bicycle Shelters" on the Google Map.







