From CyberGIS

Jump to: navigation, search



  • CyberGIS Gateway( and ArcGIS Online ( are online geospatial environments each of which has a distinctive focus. CyberGIS Gateway seeks to be a high-performance computing platform that allows the user to easily leverage cyberinfrastructure resources for spatial analysis, geovisualization, and collaborative geospatial problem solving. In contrast, ArcGIS Online serves as a content portal that can support the hosting and sharing of geospatial contents, such as web maps, data services, analytic services, and mapping applications. Since these two environments can be complementary, this project aims at building a bridge that would enable interoperation between the two separate environments. The first step was the development of Javascript widgets by which CyberGIS Gateway users can import their contents cataloged in ArcGIS Online for analysis and visualization in the Gateway, or reversely, can share analysis results from the Gateway to ArcGIS Online without leaving the Gateway environment. Because the current version of the Gateway relies on the ExtJS Javascript framework and the OpenLayers web mapping library, the bridge components were also built on top of these existing tools rather than tried to employ new tool sets (e.g., ArcGIS Javascript library). This and related wiki pages describe the implementation details and usage of the bridge components.
  • API documentation of the bridge components

Conceptual design of the bridge components


The bridge components are designed as pluggable user interface widgets of CyberGIS Gateway. Within the Gateway environment, the components will allow direct access and addition to user contents hosted on ArcGIS Online. As shown in Figure1, these components provide and collect information of each content item on ArcGIS Online and of the metadata of the geospatial resources to which it refers. The components then use that metadata to import data and map layers for analysis and visualization in the Gateway.

In particular, the bridge components or plugins support five functions to enable the data flow shown in Figure2: authentication, retrieval of item metadata, retrieval of service metadata, data/layer import, and data mediation. The function for authentication addresses the first challenge in the interoperation between CyberGIS Gateway and ArcGIS Online, namely secure access. At present, the authentication function allows the access to ArcGIS Online by obtaining a token issued by ArcGIS Online Portal. While this approach is one way for cross-environment user access, it has limitations such as the need for multiple sign-on and cross-site sharing of user credential. More secure schemes such as OAuth are under investigation.


Once a token is obtained, the plugins retrieve metadata about users' content items hosted on ArcGIS Online. The function for retrieving item metadata utilizes the search service offered by the ArcGIS Online Portal to efficiently filter out content items that may not be related to viewshed analysis (e.g., image services hosting raster data and features services hosting point data).

Since the returned metadata of the content item often describes only the very basic aspects of the geospatial service to which the item refers, the plugins communicates with the referred service directly to acquire the detailed service metadata. For this communication, the plugins employ multiple plug-and-play functions for proper formulation of metadata requests and for proper parsing of the returned metadata. Currently, ArcGIS Online allows for the addition of external web services that are instances of ArcGIS Server REST services, OGC WMS, and OGC WMTS. While the functionality of ArcGIS Server REST Map Services is similar to that of its OGC counterparts, syntactical differences still exist between the definitions of their service interfaces, and the structure and encoding of output metadata. To deal with these interoperability problems, the use of plug-and-play functions was adopted.

Provided the metadata of geospatial services, the plugins interact with other components of CyberGIS Gateway. In the case of executing viewshed analysis, the plugins pass the collected service metadata to the Gateway's middleware, along with other analysis parameters set by the user. The middleware elements then fetch data by making a direct connection to the corresponding service (e.g., an ArcGIS Image Service providing raw DEM data). They then move that data to analytical modules running on the back-end cyberinfrastructure and go through a predefined analytical workflow.

When the user simply wants to bring in map services hosted on ArcGIS Online or other servers, the pluggins work with the Gateway's mapping interface. As in the case of metadata retrieval, different services use slightly different interface definitions for map layer retrieval. For example, OGC WMS services accept GetMap requests for the retrieval of map images while ArcGIS Server Map services support the same operation on receiving export requests. In addition, the parameters for query string and the codes of geographic coordinate systems may differ across software products implementing services as well as across service types. To address this problem, the pluggins are designed as a collection of plug-in-play functions. When the pluggins fetch vector data, the encoding format of geographic feature data may cause problems due to its incompatibility with client-side web mapping tools (e.g., ESRI JSON and the OpenLayers Javascript API). For such a case, a function for data mediation is put into use for dynamic transformation from one data encoding to another.

Technical investigations

Details of the bridge components