MAKOCI: A WEB PORTAL FOR INTEGRATING AND SHARING GEOGRAPHIC INFORMATION SERVICES

The lack of integration and communication of various geographic information services (GI services) has resulted in many duplication collection of earth observation data, and challenges of semantic interoperability. This paper proposes an ontology-based multi-agents platform, called MAKOCI (multi-agent knowledge oriented cyberinfrastructure), which acts as GI service one stop to manage, publish, share, and discover GI services semantically. By ontologies, formal meanings of concepts are defined to annotate and discover GI services on a conceptual level for semantic interoperability. With the assistance of multi-agents, the processes in MAKOCI can be divided into various modules and be communicated based on the same semantics in ontologies. A prototype was implemented to test MAKOCI. Finally, we conclude the advantages and disadvantages of MAKOCI and point out several future works.

ABSTRACT.The lack of integration and communication of various geographic information services (GI services) has resulted in many duplication collection of earth observation data, and challenges of semantic interoperability.This paper proposes an ontology-based multi-agents platform, called MAKOCI (multi-agent knowledge oriented cyberinfrastructure), which acts as GI service one stop to manage, publish, share, and discover GI services semantically.By ontologies, formal meanings of concepts are defined to annotate and discover GI services on a conceptual level for semantic interoperability.With the assistance of multi-agents, the processes in MAKOCI can be divided into various modules and be communicated based on the same semantics in ontologies.A prototype was implemented to test MAKOCI.Finally, we conclude the advantages and disadvantages of MAKOCI and point out several future works.KEYWORDS: Geographic Information Service, Ontologies, Multi-agent System, Cyber infrastructure

INTRODUCTION
The explosive growth of the Internet in recent years has led to significant advances in the use of Web services, instead of conventional software tools, for processing data and exchanging information [Kvaløy et al., 2005].In earth observations, observed data (e.g., satellite images or phenomenon measured by in-situ sensors) can be encoded into Web services for sharing and communication.The Open Geospatial Consortium (OGC) recently has built a unique and revolutionary framework of open standards, called sensor Web enablement (SWE), for exploiting Webconnected sensors and sensor systems of all types: flood gauges, air pollution monitors, stress gauges on bridges, mobile

MAKOCI: A WEB PORTAL FOR INTEGRATING AND SHARING GEOGRAPHIC INFORMATION SERVICES
heart monitors, Webcams, satellite-borne earth imaging devices and countless other sensors and sensor systems via Web services [Jaeger et al., 2005].The observed data by these sensors are often accompanied with geographical information, such as place names or coordinates, and can be considered as one type of geographic information services (GI services).With the assistance of OGC, there are more standard formats for GI services, such as geography markup language (GML), Web mapping service (WMS), Web feature service (WFS), and Web processing service (WPS), have dominated the Web to perform geospatial data acquisition and processes as well as information integration and exchange [Peng and Tsou, 2003].Nevertheless, while sharing and integrating heterogeneous GI services, a central platform for search required GI services and semantically interoperate these GI services [Egenhofer, 2002;Kuhn, 2003] appear more critical.
Semantic interoperability of geospatial data has been recognized as the main hamper for integrating GI services [Fonseca and Sheth, 2002].It is because that different terminology may be used to describe the same phenomenon by different domains and it lacks a common and shared understanding across the domains to interoperate and communicate [Kuhn, 2003].For example, one may use AirTemperature to describe an observation of air temperature in a GI service, whereas the other one may use ATemp to express the same observation.It will be difficult to integrate those two GI services without a shared understanding on the terminologies.
In the other hand, a central platform, such as Geospatial One-Stop1 , is lack for GI services to be registered, discovered, and managed.Data providers can easily use GIS-Server software, such as GeoServer2 , to publish their observation data into standard Web services over the Web.However, it may challenges for other users to use the Web services if they do not know where they are.In addition, semantic heterogeneity described above hampered among users as well, especially when they use different keywords to search GI services in the platform.
Therefore, this study aims to develop an ontology-enabled multi-agent platform, which facilitates ontologies to define common understandings for semantic interoperability, and uses multi agents to assist Web service providers and consumers to register and discovery GI services in the platform.The platform is called multi-agent knowledge oriented cyberinfrastructure (MAKOCI).We divide GI services into two categories: dataaccessing services (Web services that provide GIS data) and geoprocessing services (Web services that analyze GIS data) [Lutz et al., 2007].The metadata of each GI service is aimed to be registered into MAKOCI and use defined formal meanings in ontologies to annotate the registered metadata for semantic interoperability.The registered metadata is encoded in the resource description framework (RDF) [Klyne and Carroll, 2004] so that Web service consumers can search appropriate GI services not only by browsing categories or using keywords but also by using SPARQL, a query language for RDF [Prud'Hommeaux and Seaborne, 2008], on the semantic level.This paper is organized as follows.Section 2 briefly introduces the background about ontologies, RDF, and multi agents.Section 3 presents the proposed framework of MAKOCI.Section 4 shows an implemented prototype.Section 5 concludes the advantages and disadvantages of the platform and points out some future works.

Ontologies
In information science, an ontology is defined as "an explicit specification of a conceptualization" [Gruber, 1993], where a conceptualization is a way of "thinking about a domain" [Uschold, 1998] whereas the formal meanings of both the types of concepts and their relationships in a domain are delineated in a machine-readable language by the explicit specifications for semantic interoperability and knowledge inference [Benjamins et al., 1998].By Ontologies, shared and common understandings (i.e., semantics) can be communicated among people and machines [Crubézy and Musen, 2003].The formal meanings in an ontology can be incorporated into data integration processing [Peachavanish and Karimi, 2007], search algorithms [Bernard et al., 2003;Purves et al., 2007;Stock, 2008], and analytical methods [Di et al., 2006;Lutz et al., 2007].
The Web ontology language (OWL) is the standard language of ontologies and is recommended by W3C [McGuinness and Van Harmelen, 2004].Basic elements of OWL include individuals, classes, and properties (i.e., relationships) [Knublauch et al., 2004].Individuals represent real instances in a domain, whereas classes represent concepts that can be seen as collections of individuals of the same type.Properties are binary and directional links that connect individuals from one class (called the domain of the property) to another (called the range of the property).Properties can be classified on the basis of this range into object and datatype properties [McGuinness and Van Harmelen, 2004].Object properties link individuals, whereas datatype properties link an individual to an XML schema datatype (e.g., an integer or string) [Knublauch et al., 2004].
A solution to the semantic interoperability for GI services is to develop ontologies in geospatial domains to identify semantic distinctions and relations between geospatial concepts based on ontological specifications, which is a key factor suggested by Egenhofer [2002] for a geospatial semantic Web.Geospatial ontologies can be the foundation for achieving geospatial semantic interoperability [Bishr, 1998;Harvey et al., 1999;Egenhofer, 2002;Fonseca and Sheth, 2002;Kuhn, 2003;Lemmens, 2006], improving geospatial data searches [Purves et al., 2007], and discovering GI services in an SDI [Bernard et al., 2003;Lutz, 2005Lutz, , 2006;;Zhang and Tsou, 2009].

RDF
The RDF is one of standard frameworks for semantic Web recommended by World Wide Web Consortium (W3C) [Klyne and Carroll, 2004].The RDF aims to represent information in the Web by formal semantics, which can be readable and accessible by machines to query and infer implicit information.The RDF encodes the information in of subject, predicate, and object triplets [ Klyne and Carroll, 2004;Bizer et al., 2009].The subject and object of a triple are uniform resource identifiers (URIs) to identify resources (e.g., concepts and individuals in ontologies) or XML schema datatype, whereas the predicate specifies the relationships between the subject and object, and is also represented by URIs [Bizer et al., 2009].URI is similar to a uniform resource locator (URL), which use the http:// scheme to describe an address of a website.However, URI provide a more generic means to identify resources over the Web by the HTTP protocol [Klyne and Carroll, 2004].
For example, an RDF triple can state that a GI service, Taiwan_River, has the polyline geometry, as shown in Fig. 1.The subject and object of the triple are Taiwan_River and the polyline geometry which is related by the predicate, hasGeometry.URIs are used to identify each resource in the RDF triple, such as http://www.tgic.org.tw/GISData.owl#Taiwan_River for the subject, http:// www.tgic.org.tw/GIS.owl#hasGeometryfor the predicate, and http://www.tgic.org.tw/Geometry.owl#Polyline for the object.
Moreover, machines not only can understand the relationship between the subject and object in an RDF triple but also can access further information via URIs.For instance, in Fig. 1, machines can use the URI of the subject, http://www.tgic.org.tw/GISData.owl#Taiwan_ River, which is referred to GIS Data ontology (i.e., GISData.owl) to access more specifications about the subject.

Multi-agent system
Agents are computer programs capable of autonomous behavior which can sense its environment, communicate with other agents, and possess rational behavior to react [Wooldridge and Jennings, 1995;Wooldridge, 1999].Multi-agent system are referred to a system that support interactions from multiple agents with an infrastructure [Moodley and Simonis, 2006].For the purpose of agents, two types of agents can be classified: 1) simulating the perceived or measure behaviors of people response to external stimuli using computational models of rational behaviors, and 2) assisting people to collect information and making decision in hardware and software environments [Sengupta and Sieber, 2007].In this study, agents are acted the latter one in a software environment to detect and analyze users' behaviors, and automatically collect related information for the users.
However, agents are only computer programs and cannot automatically handle semantic heterogeneous of information without rational behaviors or rules.Without ontologies supports, agents are challenged to exchange information based on a common and shared understanding [Hadzic et al., 2009].For instances, Rauble [Rauble, 2001] has used ontologies to model common knowledge for the communication of agents while perceiving, cognizing, and acting for the way finding; and Moodley and Simonis [Moodley and Simonis, 2006] proposed a platform, which is based on the multi-agent infrastructure for distributed Internet applications (MASII) by Moodley [Moodley and Kinyua, 2006], aimed to integrate heterogeneous sensor data with ontologies that facilitate developing applications for multiple domains.
The MASII architecture contains several agents to communicate information under the shared semantic in ontologies, as shown in Fig. 2. The agents includes 1) user agent which represent an end-user to communicate with other agents 2) service agent is a service provider which can be searched in the directory facilitator and be consumed by the user agent, 3) nonagent service which expresses conventional web services to be consumed by the user agent and the service agent, 4) adapter agent which maintains common knowledge and semantic in ontologies for semantic interoperability among agents.
Nevertheless, how to register and semantic infer sensor web services is not presented in [Moodley and Kinyua, 2006;Moodley and Simonis, 2006].Thus, in this paper, we based on the MASII architecture and proposed an ontology-enabled multi-agents platform with a practical application for complement.Please refer to Section 3 for more detail about the proposed platform.

AN ONTOLOGY-ENABLED MULTI-AGENTS PLATFORM (MAKOCI)
The framework of MAKOCI MAKOCI aims to develop a platform for geospatial cyberinfrastructure, an Webbased environment for the integration of geospatial knowledge, data, and technologies [Yang et al., 2010].MAKOCI adopts multi-agents and ontologies to entail GI services (as geospatial data) with geospatial knowledge for the collaboration of domain experts to contribute their domain knowledge, Web service providers to publish and semantically annotate their GI services, and Web service consumers to semantically search and use their required GI services.Ontologies are used for semantic interoperability and knowledge sharing while registering or searching GI services.And multi-agents can be intelligent to assist users to automatically discover GI services in ontologies in response of users' queries, and can be autonomously communicated each agents for exchanging information.The MAKOCI framework contains the following two levels, as shown in Fig. 3: (1) The application level includes (a) ONTOCAT (ontology catalog) application, which provides a registry for Web service providers and consumers to register and discover GI services assisted by ontologies and multi-agents; (b) ONTOEDIT (ontologies editor), which offers an environment for domain experts to construct domain knowledge into ontologies; and (c) iSDSS (intelligent spatial decision support system), which supplies an integrated application for Web service consumers to use discovered GI services in ONTOCAT.
(2) The agent level involves Safeguard agent, User agent, Ontology agent, Service agent, and a Directory Facilitator.The Directory Facilities is an agent's registry where agents register their capabilities so that agents can be discoverable [Moodley and Simonis, 2006].While users log into the applications in MAKOCI, a Safeguard will be initialized to examine the authorities of the users and search an available User agent in the Directory Facilitator.Once a available User agent is found, the User agent will serve the users by analyzing users' activities and searching available Ontology agents (for the references of formal concepts in ontologies) and Service agents (to translate requests into service-specific standards and call the services).In addition, the users' activities will be recorded and stored for the analysis of users' behaviors and for the automatic recommendations of relevant GI services.

Developed Ontologies
The communication among these agents is based on the ontologies to control vocabularies and refer to the formal meaning of concepts and their relationships for semantic interoperability.Ontologies are located at the center of the framework and are developed in the 7 related geospatial domains, which are based on the suggestions of Kolas [2005].

GIS ontology
The GIS ontology delineates the relationships and definitions of geospatial features, which are abstractions of real-world phenomena with types of geometries (e.g., points, polylines, and polygons) and attributes [Moodley and Kinyua, 2006].Three OGC specifications can be followed to develop the GIS ontology.
The "OGC Abstract Specification Topic 5: Feature" stipulates that a geospatial feature should contain a geometry (e.g., point, polyline, or polygon) with a spatial reference system and attributes [Moodley and Kinyua, 2006].For example, in Fig. 4, Feature, Attribute, Geometry, Spatial Reference System, and Feature Collection (i.e., a set of features with the same attributes, geometries, and spatial references) are created as classes in the GIS ontology, whereas hasGeometry, hasAttribute, and hasSpatialReference are set as object properties to describe the relationships between these classes.
The "OGC Abstract Specification Topic 2: Spatial Referencing by Coordinates" extends the classes under the Spatial Reference

GIS Data Theme ontology
The GIS Data Theme ontology manages the classification of GIS data.This study follows the classification from Infrastructure for Spatial Information in the European Community (INSPIRE) to establish this ontology.The classification contains 34 spa tial data themes, which are grouped in 3 annexes.For each data theme, we can further customize spatial data components and spatial data sets.For example, Lake and Watercourse can be added as subcategories of the Hydrography.

GIS Function Theme ontology
The GIS Function Theme ontology describes the 6 main categories and 20 universal operations proposed by Albrecht [1998] to structure GIS function classification.Universal operations are GIS operations, which are independent of data structures, and are classified from 144 GIS functions into 20 categories (e.g., spatial search, thematic search, and reclassification) [Albrecht, 1998].Under the classification, other structure-independent GIS functions can be created as classes to customize the GIS Function Theme ontology.For example, in Fig. 5, Overlay is a universal GIS operation categorized by Locational Analysis.Under the Overlay operation, we can add Clip as a new class to extend the classification.Alternatively, Measurement is a universal GIS operation classified under the Measurements category, and Sum can be added as a structure-independent GIS function under the Measurement operation.Besides the categories, geoprocessing services are considered as individuals (e.g., ws_buffer in Fig. 5) in the GIS Function Theme ontology to state the type of geoprocessing services (e.g., the Buffer class).Furthermore, the inputs, outputs, preconditions, and results (the IOPR) of geoprocessing services can also be referred to formal classes in the following Process Model ontology for semantic annotations.

Process Model ontology
The Process Model ontology is one of the OWL Web service (OWL-S) ontologies which is recommended by the W3C [Martin et al., 2004].It aims to impose meanings and relationships on the IOPR of geoprocessing services by using the controlled classes (e.g., Atomic Process, Input, or Output) and properties (e.g., hasInput, hasOutput, hasPrecondtion, or hasResult).
Each geoprocessing service can be specified as a type of Atomic Process (i.e., a one-step process) class [Janowicz et al., 2011].It can not only semantically annotate the inputs and outputs of a geoprocessing service to the Input and Output classes by the predefined properties hasInput and hasOutput but also express their type by the RDF:Type property.For example, in Fig. 5, the ws_buffer service can first be referred to the Atomic Process class by using the RDF:Type property, so the individuals in the input class (e.g., in_buffer, unit, and distance) can be annotated as the inputs of the ws_buffer service by the hasInput property, where out_buffer can be stated as an output of the hasOutput property.The additional classes of these individuals, such as the Feature Collection class for in_buffer and out_buffer, the Length Measure class for units, and the XML schema datatype (e.g., xsd:Double) for distance, can be also stated using the RDF:Type property.Consequently, these individuals have to follow the definitions and restrictions of the additional classes.For instance, the out_buffer must have a geometry type (e.g., polygon) and attributes, because it has been declared as an instance of Feature Collection Moreover, the preconditions and results of a geoprocessing service can be annotated by the hasPrecondition and hasResult properties using specific expressions [Janowicz et al., 2010].A precondition is a logical formula stating that a condition should be satisfied before execution, whereas a result is a logical formula expressing what will be true upon successful execution.For example, the distance individual must have values before execution (precondition), whereas polygon geometry may be generated after successful execution (result).However, for simplicity, we focus only on the inputs and outputs of a geoprocessing service in this study.Further annotations of preconditions and results are listed as part of our future work.

Units of Measure ontology
The Units of Measure ontology is adopted from the suggested upper merge ontology (SUMO), an upper-level ontology providing definitions of general-purpose terms [Niles and Pease, 2001].This ontology is used to define the units of measurement, such as meters and miles in the Length Measurement class (Fig. 5).

Dublin Core ontology
We followed the Dublin core metadata element set version 1.1 3 , to develop the Dublin Core ontology to annotate generic metadata of GI services, such as title, descriptions, and keywords, with formal meanings.
In the following section, a prototype of MAKOCI is implemented, and the developed ontologies are used for semantic interoperability of GI services.

PROTOTYPE
We used the following techniques to implement a prototype for the proposed framework.1) For the ontologies, Protégé software 4 was used as an ontology editor to standardize the domain knowledge.2) For the ONTOCAT, the Protégé OWL JAVA API 5was used as a programming interface, and the Google Maps JavaScript API 6 was used as a base map.3) For the agents, Java agent developed framework (JADE) 7 was followed to build a multi-agent system.We used two aspects (i.e.how to register GI services and how to search GI services) to demonstrate the prototype and illustrate the processes in MAKOCI.

Registering GI services in MAKOCI
Web service providers can publish GI services, including data accessing and geoprocessing services, in the ONTOCAT.The formal meanings in ontologies can be given to the published GI services for semantic management and discovery by Web service consumers.Three steps are designed for the providers to publish their GI services.
First, the providers submit the metadata of the services (e.g., title, URL, coordinate systems, or geometry) into ONTOCAT, as shown in Fig. 6.While submitting, formal knowledge (e.g., classes, individuals, and properties defined in ontologies) can be selected to annotate semantics of the metadata via the user interface, such as dropdown lists to ensure that correct selection of individuals and classes from ontologies.For example, the values in the coordinate system and geometry drop-down lists are from the individuals of Spatial Reference class and Geometry class in the GIS ontology.
The hasSpatialReference and hasGeometry properties will be used to annotate the relationship between the GI service and selected values.
Nevertheless, for geoprocessing services, the inputs and outputs of geoprocessing services are critical to be annotated with formal meanings in ontologies.ONTOCAT also provides several drop-down lists for providers to select corresponding values from the ontologies, as shown in Fig. 7.For instance, in_buffer is an input parameter of coordinate system (i.e., WGS84).Moreover, these metadata of the parameter will be described by corresponding properties, such as hasWebServiceType, hasGeometry, and hasSpatialReference, in the ontologies.
Second, providers have to select at least one class from two ontologies, GIS Data Theme ontology for data accessing services and GIS Function Theme ontology for geoprocessing services, to classify GI services.Classes in these ws_buffer which have to be implemented in the WFS standard with the Point geometry and the latitude and longitude ontologies will be listed in the ONTOCAT for selection, as shown in Fig. 8.For example, Flood class in the GIS Data Theme ontology can be selected for Taiwan River, a data accessing service; or Buffer class in GIS Function Theme ontology can be also chosen for ws_buffer, a geoprocessing service.
Third, a geospatial extent can be given for GI services to express the geographical area which GI services can be served.Providers can delimit a rectangular area in ONTOCAT as a service area for a GI service, as shown in Fig. 9.
Once registered, the metadata of the GI service will be encoded in RDF, as shown in Fig. 10 for Taiwan_River and Fig. 11 for ws_buffer.The registered metadata of GI services will be semantically formalized and presented in RDF triplets so that machines can infer more external resources via these triplets.In ONTOCAT, a SPARQL endpoint is provided for the consumers to query the registered GI services in RDF.For example, if the consumers want to search all GI services which are under the Flood class with WGS84 coordinate system and Polyline geometry, a SPARQL can be given in the endpoint, as shown in Fig. 12.Therefore, the consumers can use formal meanings of concepts and vocabularies to semantically query the RDF in the MAKOCI, which stores all registered GI services, and to search required GI services.

CONCLUSION AND FUTURE WORK
GI services in the earth observation have the potential to provide real time monitoring and historical data about our environment.How to integrate and share all these tremendous volume of GI services is a major challenge ahead of us.This study presents an initial research effort (i.e., MAKOCI) to this challenge.MAKOCI facilitates ontologies and multiagents to develop a platform for integrating and sharing GI services.Ontologies are used for knowledge management and semantic interoperability of GI services, whereas multi-agents are adopted for intelligently assistances to search and query the GI services and ontologies.By MAKOCI, users do not need to consider the semantic heterogeneous in each GI service, but they can use formal meanings of concepts in ontologies to register, manage, and search GI services.For earth observations, MAKOCI could be a solution for sharing and integrating GI services.
However, there are several areas of MAKOCI that need to be improved in the future, as shown in the following issues.

More comprehensive ontologies
This study designs only six ontologies (as shown in Fig. 4) to describe formal meanings for GI services, and only use main classification to build hierarchical relations of classes in the ontologies, such as the 34 categories of INSPIRE are used for the GIS Data Theme ontology.More comprehensive ontologies should be developed in the future to describe completely concepts and relationships for GI services

Friendly ontologies editor
In the prototype, the concepts, individuals, and relationships of ontologies are encoded by using Protégé software.Nevertheless, using Protégé to encode the knowledge is a challenge for many domain experts.Therefore, a Web and Wiki-styled ontology editor would be a significant enhancement, allowing domain experts to directly encode and share domain knowledge in ontologies [Iorio et al., 2006].
Connection with Linked Open Data Linked Open Data aims to publish machinereadable data on the Web (i.e., RDF) to make the data inter-linkable to other external data sets [Bizer et al., 2009].Several websites, such as Wikipedia and GeoNames, have joined into the Linked Open Data and converted their data into the RDF format and linked to external relevant data sets to make the meanings of the data explicitly defined.MAKOCI should join into the Linked Open Data and act as a GI service one-stop for external data sets to establish links.In addition, ONTOCAT should be expanded for Web service providers to input links from external data sets to make all relevant information of GI services can be interlinked.

Fig. 5 .
Fig. 5.The relationships between GIS Function Theme, Process Model, Units of Measure, Web Service, and GIS ontologies

Fig. 9 .Fig. 10 .
Fig. 9.A rectangular area in Taipei city, Taiwan, is given to express the geospatial extent of ws_buffer

Fig. 11 .
Fig. 11.The registered metadata of ws_buffer is encoded in RDF, where DC, WS, GIS, Process, and GISFunction are namespaces for corresponding ontologies, such as Dublin Core, Web Service, GIS, Process, and GIS Function Theme ontologies, respectively