Tuesday, January 5, 2010

Creating a KML-Enabled ArcGIS Server Map Service

(SOURCE FROM: http://tuoutreach.com/2009/09/08/lessons-learned-creating-a-kml-enabled-arcgis-server-map-service/)

Lessons Learned: Creating a KML-Enabled ArcGIS Server Map Service
Many GIS Specialists who create ArcGIS Server (AGS) map services know that you have the ability to enable KML capabilities when publishing an AGS map service from an MXD or MSD. A KML-enabled map service can be viewed in Google Earth.

So, when I was assigned a straightforward task: prove that an AGS map service and any attribute information associated with the map service’s features can be viewed in Google Earth, I immediately thought it would be a cinch. I already had a KML- enabled map service, so I assumed all I had to do was:

find the map service’s KML URL in the service’s capabilities tab under service properties using ArcCatalog
add this KML URL to Google Earth as a network link.
Unfortunately, following this process provided me with a blank map service in Google Earth. I knew I must be missing a step in creating a KML map service using AGS. After doing plenty of research, I discovered that when enabling the KML capability when publishing the map service the map service’s KMZ file is not automatically created on the ArcGIS server where the map service is located—-

Aha Moment, This is why I didn’t see a map when I added the map service’s KML URL in Google Earth as a network link. In order to actually create the necessary map service KMZ file and its associated URL (called a KML Network Link), one must log into the ArcGIS server where the map service resides using ArcGIS Server Manager and follow the steps outlined under the “How to create a new KML network link from a map service.” After following these steps, one can copy the map service’s newly generated KML URL and add it as a network link in Google Earth.

Now, I was able to view a dynamic AGS map service and any attribute information associated with the map service’s features in Google Earth. However, it’s important to note that I was working with a dynamic AGS map service, not a cached AGS map service. Cached KML AGS map services may display and function differently than dynamic KML AGS map services in Google Earth. I have not had a chance to investigate the advantages / limitations / capabilities of a cached KML AGS map service in Google Earth, but perhaps this will be my next blog topic. In the mean time check out how the Center for GIS is using these technologies to create solutions for our clients!