- 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.
- Obtain a token from ArcGIS Online
- Get input data from ArcGIS Online
- Publish layers to ArcGIS Online
- Bring in map layers from ArcGIS Online
- Generate API documentation with JSDuck