Creating web service interfaces and scientific workflows using command line tools: A GRASS example

With tremendous increase in data from earth and space based sensors, there is growing realization within geoscience community that technologies like web services and allied technologies need to be leveraged for geospatial data analysis and management. Traditionally, standalone Geographic Information Systems software was used for these tasks. Adaptation of this software for use in web services raises several issues and challenges. We have created large number of web services on top of Geographic Resources Analysis Support System (GRASS GIS), which is an open source command line GIS software. In this paper the conceptual architecture used in developing the web services is presented in detail. This architecture has different layers of services. The user of services at each layer is immune from having to know the details of lower level services and software. The geospatial model developer, who develops services at highest layer, can work at conceptual level without having to learn specifics of any particular software. The model developer can concentrate on the model itself rather than on many unnecessary and time consuming details. Some of the issues that we encountered during the development — granularity of services, statelessness of services and interoperability between services - are also discussed.