Tech Briefs

Dynamic Server-Based KML Code Generator Method for Levelof-Detail Traversal of Geospatial Data

Innovation uses a C- or PHP-code-like grammar that provides a high degree of processing flexibility.

Geospatial data servers that support Web-based geospatial client applications such as Google Earth and NASA World Wind must listen to data requests, access appropriate stored data, and compile a data response to the requesting client application. This process occurs repeatedly to support multiple client requests and application instances. Newer Webbased geospatial clients also provide userinteractive functionality that is dependent on fast and efficient server responses. With massively large datasets, serverclient interaction can become severely impeded because the server must determine the best way to assemble data to meet the client applications request. In client applications such as Google Earth, the user interactively wanders through the data using visually guided panning and zooming actions. With these actions, the client application is continually issuing data requests to the server without knowledge of the server’s data structure or extraction/assembly paradigm.

A method for efficiently controlling the networked access of a Web-based geospatial browser to server-based datasets — in particular, massively sized datasets — has been developed. The method specifically uses the Keyhole Markup Language (KML), an Open Geospatial Consortium (OGS) standard used by Google Earth and other KMLcompliant geospatial client applications. The innovation is based on establishing a dynamic cascading KML strategy that is initiated by a KML launch file provided by a data server host to a Google Earth or similar KML-compliant geospatial client application user. Upon execution, the launch KML code issues a request for image data covering an initial geographic region. The server responds with the requested data along with subsequent dynamically generated KML code that directs the client application to make follow-on requests for higher level of detail (LOD) imagery to replace the initial imagery as the user navigates into the dataset. The approach provides an efficient data traversal path and mechanism that can be flexibly established for any dataset regardless of size or other characteristics. The method yields significant improvements in userinteractive geospatial client and data server interaction and associated network bandwidth requirements.

The innovation uses a C- or PHP-codelike grammar that provides a high degree of processing flexibility. A set of language lexer and parser elements is provided that offers a complete language grammar for writing and executing language directives. A script is wrapped and passed to the geospatial data server by a client application as a component of a standard KML-compliant statement. The approach provides an efficient means for a geospatial client application to request server preprocessing of data prior to client delivery.

Data is structured in a quadtree format. As the user zooms into the dataset, geographic regions are subdivided into four child regions. Conversely, as the user zooms out, four child regions collapse into a single, lower-LOD region. The approach provides an efficient data traversal path and mechanism that can be flexibly established for any dataset regardless of size or other characteristics.

This work was done by Gregory Baxes, Brian Mixon, and Tim Linger of TerraMetrics, Inc. for Stennis Space Center. For more information call the SSC Center Chief Technologist at (228) 688-1929. SSC-00362/5