A Comparative Assessment of Giservices Architectures
According to ISO 191191, the term of “services” means a collection of operations, accessible through an interface that allows a user to invoke a behavior of value to the user [7]. Web services are interoperable, self-contained, self-describing, module components that can communicate with each other over the Web services platform [8].
Web services architecture have three roles - service providers, service requestor, and services brokers (Figure 1). It performs three essential kinds of operations - publish, find and bind. The service providers publish machine-readable information (metadata), receiving requests and binding a service to a service requestor. In the client/server model, the service requestor is a client, the service provider is a server, and the service broker is a middleware.

Figure 1 – Generic components of Web services
2.3 Interoperability and standards
Interoperability is a desirable part of Web GIServices. Interoperability refers to the ability of a system (or components of a system) to work with the other systems without special effort on the part of the user. The interoperability will support distributed computing and/or data exchange among different computer systems, databases, or networks. Standards is necessary for defining the common agreements that are needed to achieve interoperability between IT components.
The standard behind Web services is a collection of distributed-component technologies. It gives the ability of a system to provide geographic information portability and inter-application. The World Wide Web Consortium (W3C) is an industry consortium dedicated to building consensus around Web technologies [15]. W3C proposed the eXtensible Markup Language (XML) to describe the data contained in a document while HTML describes only how to present data contained in a document [18]. XML can contain commands and parameters to be passed to a remote application, or complex data sets returned from an earlier query. XML permits users to write their own definitions that any type of data can be described. The Open Geospatial Consortium (OGC) is a non-profit, international, voluntary consensus standard leading the development of standards for geospatial and location based services [6]. The specifications (developed and provided by OGC) are based on emerging standards in the ISO/TC 211 Geographic information/Geomatics work groups and work items. OGC adopted Geography Markup Language (GML) to encode for the modeling, transport and storage of geographic information including both the spatial and non-spatial properties of geographic features [2]. It allows the data to be controlled on the browser side by the user without additional components or viewers. GML uses XML to transport descriptions of features over the Internet.
Simple Object Access Protocol (SOAP) defines a protocol for information exchanges among programs in the heterogeneous Internet environment by using HTTP and XML [10]. It is application-independent. Web services that conform to the SOAP standard can be integrated with any other Web-based application. The W3C has adopted Web Services Description Language (WSDL) as a standard way of describing the Web services [17]. WSDL is an XML format for describing network services as a set of endpoints operating on messages containing either document-oriented or procedure-oriented information. The operations and messages are described abstractly, and then bound to a concrete network protocol and message format to define an endpoint. WSDL is a template for how Web services should be described and bound by clients. The Universal Description, Discovery and Integration (UDDI) protocol is one of the major building blocks required for successful Web services [13]. UDDI creates a standard interoperable platform that enables companies and applications to quickly, easily, and dynamically find and use Web services over the Internet. UDDI is a searchable registry database that stores the metadata of system components (generated by WSDL) and allows other programs to search/access these components.
2.4 On-the-fly geoprocessing
On the Fly describes activities that develop or occur dynamically rather than as the result of something that is statically predefined [14]. The process will be done in real-time, based on dynamic factors such as the time of day, what pages the user has looked at previously, and specific user input [11]. There are several techniques for on-the-fly page development such as DHTML or client-side applications like plug-ins, ActiveX control, and Java applets. Today GIS users want to create user-defined maps rapidly without need of downloading data from Internet into local system. Real-time and on-the-fly geoprocessing will be served this requirement. The user can construct the GIServices programs on-the-fly by downloading the proper GIS components and data objects from the service provider. Systems described above cannot support on-the-fly geographic. The following user scenario will make obvious of on-the-fly geoprocessing.
Kiran, a general user, wants to plan three days trip in Bangkok. He wants to travel by buses for sight seeing and go by boats for shopping at the floating market. He needs to obtain map information such as Bangkok tourist map, Bangkok city roads map, Bangkok buses route, Bangkok water transportation route. He also needs hotel locations map for making decision for hotel reservation. Based on this scenario, there are three major actors. Kiran, who has no knowledge of GIS, wants to plan a trip. Suchada, a map designer, designs appropriate symbols and layouts for Bangkok tourist map, city roads map. She puts them into a GIS server for on-line access. Sanjay, the tourist agency, will provide the hotel reservation information and package tour.
The first step is that Kiran connects to GIS server through Web browser. He checks out theme of Bangkok maps - tourist map, city roads map and hotel locations map. Three maps were overlaid and displayed as the first result map on Web browser. He picks a few hotels that are on the bank of the river and click to follow links of hotel’s Web site. He makes on-line reservation and gets a confirmed message from Sanjay after compared prices and availability. Moreover, Kiran want to include the route of buses and boats in the final map. Unfortunately, Suchada does not define the Bangkok buses route and water transportation route. Kiran has to search for other GIS servers and download into local GISystem for overlaying. But he does not have GISystem, so that he has to print out on papers and overlay these maps by manual. Hence, on-the-fly geoprocessing can serve this requirement. Kiran holds first result map on the browser while requests for buses and boats route maps from other GISystems on the Internet. The next step is to overlay all maps through the Web browser. On-the-fly geoprocessing allow Kiran can get his own design map that Suchada does not create the predefine map.