The emergence and advantages of Web services #
WebGIS developed rapidly after its emergence in the early 1990s, but most of the early Web application systems and software, including WebGIS, were websites that could only be used independently. This system gradually showed its limitations in terms of internal structure and external openness (Huang Xiaobin, 2002), making it difficult to give full play to the potential of WebGIS.
Limitations 1: Lack of good interoperability between systems
Each WebGIS is an isolated and closed system. Different systems cannot call each other’s functions and share information, and cannot operate with each other. See Figure 3. As shown in 1, assume that a certain function of system A is exactly what system B needs. However, because system A is closed and does not provide a Web-based programming interface, neither the client nor the server of system B can call system A. Vice versa, system A cannot call system B.
Limitations 2: The internal coupling of the system is strong and the application mode is not flexible enough
Each system is open as a “stand-alone solution”, and the interfaces between various modules in the system are tight and local. When the system needs improvement, this highly coupled structure is costly in source program changes and system maintenance and is not flexible enough.
With the development of the information society, more and more practical applications need to call, combine, or embed the functions and information provided by other WebGIS systems. Therefore, how to make WebGIS open so that different systems can call each other becomes very important. In the late 1990s, this was not only a problem and demand faced by the WebGIS field, but also a demand of the entire information technology industry. At that time, Microsoft, Oracle, IBM, the World Wide Web Consortium (W3C) and other organizations all launched explorations in this regard and researched and released Web service technology.
In recent years, the technology of Web services has continued to improve, and its definition has also changed. Early definitions of Web services mostly involved S0AP, XML and WSDL technologies (see Section 3.3.1). Now SOAP is no longer the only way to implement Web services. REST-style Web services (see Section 3. Section 3.2) expands the concept of Web services.
Web services are programs that run on a Web server that have a programming interface that can be called by other programs over the Internet Protocol (mainly HTTP ).
Web services technology represents an important advancement in distributed computing, replacing functions on local computers with functions on remote servers. Web services can be understood this way: Desktop software consists of a series of local programs that run together, assuming that these programs are distributed and run on different Web servers, but they can still communicate with each other and work as a whole-this is the original intention of Web services.
A comparison of Web pages and Web services helps understand Web services. Web services are different from ordinary web pages:
Web pages are for people to understand and read, mainly in HTML format, which includes content and styles (font size and color, page layout…), etc.
A Web service is a Web-based programming component that is called by client computer programs. Its results are mainly in a format that computer programs such as XML or JSON can automatically parse, rather than for people to read directly.
A complete Web services architecture has three parts: providers, users and portals. Service providers and users do not need to know each other’s existence. Providers can register their own Web service information in the portal, and users can query the portal, find the services they need, and then use these services (Figure 3.2). Fig. 23 The three components of a Web service architecture and their mutual relationships # 
Web services inherit the characteristics of both Web programs and development interfaces. Compared with traditional computing methods, they have the following advantages:
openness
Web services can interact with other computer software on the Web and be called by other systems to exchange and share functions and information, breaking the limitations of isolation and closure of early Web applications.
Independent of programming language and operating system
A Web service is based on the Web and is called remotely using the HTTP protocol. It is not compiled with the client program that calls it. No matter what programming language it is developed in (such as Java,. NET, or C++), what operating system it is deployed on (such as Windows, Linux, or MacOS), or what Web application server it runs on (such as IIS or Apache/Tomcat, etc.), it can be called by clients equally. Clients are not bound to any programming language when calling a Web service, and developers are free to choose development languages such as. NET, Java, Python, JavaScript, Flex, or Silverlight.
Loosely coupled integrability
The client software and the Web service it calls do not have to run on the same machine, and the two do not have to rely on each other to exist. When a client is dissatisfied with a Web service or the Web service cannot be used, the client can replace it with another Web service. As long as the interfaces of the two Web services are the same, the client only needs to point to the URL of the new Web service without making other changes. From the perspective of a Web service provider, he can change or update a Web service, such as migrating from J2EE to. NET or vice versa. As long as the interface of the Web service is kept unchanged, these changes are transparent to callers, and callers do not need to make any changes (Chai Xiaolu, 2002). This loose coupling feature facilitates flexible combination and embedding to meet users ‘business needs.
Uniformity of releases and updates
When a Web service is updated or a new version is released, it only needs to be updated on the server side. Each client program naturally calls the latest Web service, so that there is no need to install and update software packages separately at each client side. This is an important aspect of how Web services are superior to desktop component technology.
The impact of geospatial Web services #
At present, Web services have become the core of GIS. Its emergence has had a great impact on the geospatial industry and provides an excellent solution for realizing geospatial information sharing, interoperability and cross-department collaborative cooperation.
(1)It is an accelerator for WebGIS product differentiation and new market formation
Focusing on Web services, the geographical information community has released new products or new functions to realize a series of workflows such as author of geographical resources, publication of services, discovery and use of services. This is very evident in the Esri ArcGIS product line (Figure 3. 3)。
Server products such as ArcGIS Sever can publish a variety of geospatial Web services, ArcGIS Online offers a variety of cloud-based services.
Client products such as ArcGIS Online online map browser, ArcGIS Explorer, ArcGIS client based on Flex and Silverlight, iPhone/iPad, Android and Windows based Mobile clients such as Phone allow users to call their own or other people’s Web services without programming. In addition,ArcGIS Server’s Web services provide web services based on? {£ 81’, deduct ¥38(31^1;, 1? 161, 8Office 61’-light, iOS, Android, Windows Phone and other development interfaces, allowing developers to flexibly integrate Web services for quick secondary development.
Geographic information portals such as ArcGIS. com, ArcGIS Portal and GeopartalSever allow providers to register their services in the portal, and allow users to query and discover the Web services they need in the portal website.
The differentiation of these products provides new markets and new survival points as described below. Fig. 24 Web services are the core of WebGIS, and WebGIS products are divided into multiple products that support the creation, publication, registration, query and use of geospatial Web services # 
On the server side: If you have a lot of data, you can become a provider of data and map services. If you have unique analytical models, you can publish them as a professional geoprocessing service. These services can be free or charged per view.
In terms of clients: If you are good at development, you can choose to develop desktop clients or mobile clients for Web services to show your advantages in terms of the types of services supported or usability.
In terms of portals: You can collect Web services that meet certain areas, topics, or standards, catalog and publish this information, and make it possible for people who need these services to inquire.
(2)It is a basic component for GIS to integrate into mainstream information systems
Before geographical Web services, the integration of GIS and other information systems often had to be realized “locally”, that is, geographical data was copied locally and GIS software was installed locally. The call to GIS functions was complex and limited. These reasons have been restricting GIS to a small circle for many years, hindering the seamless integration of GIS with mainstream information systems. Geographical Web services hide the above complexities. Other information systems, such as Enterprise Resource Planning (ERP) and Customer Relationship Management (CRM) systems, can flexibly and easily call and integrate remote geographical Web services to obtain maps, data, and geographical analysis functions. The openness and flexibility of Web services will greatly expand the market for GIS.
(3)Is a new way to achieve interoperability
One of the challenges in GIS applications is how to achieve interoperability, that is, to allow products from different GIS software vendors to work together. Before Web services technology, interoperability was mainly completed at the data format level, that is, using the exchange format formulated by standards bodies. Software from different manufacturers needs to be able to input and output these formats or directly read and write these data formats. This method often involves the copying of data and the installation of local software, and is disjointed and inflexible.
Web services allow the GIS community to elevate interoperability to a Web service-based level that goes beyond data transformation and installation of transformation tools (Bacharach, 2005). Geographic information standards bodies such as the Open Geospatial Information Alliance (OGC ) and the International Organization for Standardization (ISO ) have kept pace with the times and developed a series of Web service standards. Strictly following these standards, servers and clients from different manufacturers can be used cross-using, regardless of which company’s products released these services or which company’s clients are using these services (see Section 3. Section 3).
(4)It is an important architecture for realizing spatial data infrastructure
Spatial Data Infrastructure (SDI) refers to the general term for the technologies, policies, standards and human resources necessary for the collection, processing, storage, publication, utilization and protection of geographical information. The key to building regional, national and global space infrastructure is standards, sharing, collaboration and coordination. Web services architecture establishes a dynamic communication and integration method between service providers and information users, and is the key to building spatial infrastructure. Information such as geographical data can leave the data in the original unit, maintain the data, and share it through Web services. When the data is updated, the Web services are also updated, ensuring the current nature of the Web services. For example, a local government can continuously maintain and update its land records while sharing this information with other units through Web services. A public utilities department can directly use this map service as a base map without having to copy and install the raw data of its map locally. On the other hand, this public facilities department can also share its infrastructure information with other government departments in the form of Web services, so that the municipal government can use the information for business needs such as land use planning and approval. This collaborative approach provides a new and flexible technical framework for geographic information sharing and collaboration between different agencies (Dangermond, 2008 ).