Injecting Semantic Annotations Into (Geospatial) Web Service Descriptions
Total Page:16
File Type:pdf, Size:1020Kb
Undefined 0 (0) 1 1 IOS Press Injecting semantic annotations into (geospatial) Web service descriptions Editor(s): Thomas Lukasiewicz, University of Oxford, UK Solicited review(s): Jacek Kopecký, The Open University, UK; Tudor Groza, The University of Queensland, Australia; Marinos Kavouras, National Technical University of Athens, Greece Patrick Maué a Henry Michels a and Marcell Roth a a Institute for Geoinformatics (ifgi) University of Münster, Germany Weseler Str. 253 48151 Münster Germany e-mail: fi[email protected] Abstract. Geospatial Web services comply with well- 1. Introduction established standards to support seamless integration into applications ranging from commercial Geographic Efficient discovery relies on search engines with Information Systems (GIS) to open source web map- sophisticated indexing and scoring techniques. ping clients. Descriptions of service capabilities con- These techniques can not be simply applied on tain information about the provided data. Updates to structured data without textual content such as the underlying database result in changing descrip- tions. To ensure compatibility with existing solutions, geospatial data, or any kind of binary data, in- semantic enablement of Geospatial Web services has cluding pictures or videos. Finding such content to reflect both, standards and changing metadata. Se- relies on annotations which associate descriptive mantic annotations link between legacy non-semantic metadata with the resource [1]. The metadata is Web service descriptions and their semantic counter- then again used for common indexing and scor- parts. The open source Semantic Annotations Proxy ing techniques. Semantic annotations link to for- (SAPR) is a light-weight RESTful API deployed as mally specified vocabularies capturing the con- free service which “injects” semantic annotations into tent’s meaning. Besides the traditional informa- existing Web service descriptions without breaking the tion retrieval techniques based on indexing and standards. This approach decouples the annotations from the original metadata, which ensures the separa- string matching, semantic annotations linking to tion of concerns between data providers and end users ontologies support logic-based reasoning. In the with different and sometimes conflicting views on an- case of finding information, reasoning engines such notations. In addition, the service is robust regarding as Pellet [27] can then precisely match the seman- changes of the service descriptions. The presented ap- tic queries to the semantically annotated content, proach is focusing on W3C- and OGC-compliant Web and ensure better precision of search results [15]. services, but can be theoretically applied on any kind We understand semantic annotation as a ref- of information source with structured metadata. erence which establishes a Link Annotation [1] Keywords: Semantic Annotation, Semantic Web, between the application-specific metadata and a Tools, Geospatial Semantic Web, Semantic Web Ser- shared external vocabulary. They enable reasoning vices on the linked ontologies and support non-domain experts to better understand what the data rep- resents. In this paper we focus on annotations for Web services which describe their interfaces with standardized metadata. The latter is semantically 0000-0000/0-1900/$00.00 c 0 – IOS Press and the authors. All rights reserved 2 Injecting Semantic Annotations annotated to integrate the Web services into se- scriptions ensures a clear Separation of Concern mantically enabled applications. (SoC). The proposed solution for loosely-coupled Research on semantic annotations for Web doc- metadata (separating between client-specific an- uments [16,11], multimedia [29,3], geospatial data notations and the provider-specific metadata) sup- [15,12,19], and Web services [30,28,17] has been ports multiple annotations for one service descrip- around for years. The description of Semantic Web tion. This makes different application scenarios Services (SWS) eventually led to the standard “Se- feasible, without relying on the service provider for mantic Annotations for Web Service Description specifying the annotations. The introduced imple- Language (SAWSDL)” [14]. It specifies extension mentation reflecting the standards and changing points for W3C-compliant Web service metadata metadata, as well as the discussion of SoC for Web encoded with the Web Service Description Lan- service annotations should be considered as main guage (WSDL). Although the W3C standards are contribution of this paper. widespread and well-established, domain-specific The following section 2 introduces two applica- standardization organizations have come up with tion scenarios which illustrate the benefit of inject- their own solutions. Geospatial Data Services, for ing annotations. A more in depth discussion about example, comply to the standards of the Open the need for injecting references is following in sec- Geospatial Consortium (OGC)1. These standards tion 3. The implementation of SAPR is introduced define their own approach for XML-based meta- in section 4, followed by an evaluation in section 5. data. Depending on the type of the spatial resource Section 6 lists related work about Semantic Web (i.e. features for vector-based data, coverages for Services. The paper concludes with an outlook and raster based data, and geoprocessing methods), a summary in section 7. different OGC Web service types exist. In this paper we present the implementation of the Semantic Annotations Proxy (SAPR)2. It 2. Application Scenarios builds on (and is part of) the Sapience API3, which comprises libraries used to extract, store, Annotations support better interpretation and and inject semantic annotations within Web ser- evaluation of the referenced data. Using a proxy ensures that different sets of annotations for appli- vice metadata without breaking the underlying cations deployed in different scenarios can be re- standards. SAPR exposes the Sapience function- quested. In the following two sections we illustrate ality following a Software-as-a-Service approach. one typical application scenario for semantic an- It is a conceptually simple proxy-based [11] solu- notations (linking to vocabularies describing the tion for injecting semantic annotations. Similar to data’s relation to reality) and one for data qual- traditional HTTP proxies (e.g. for Web browsing), ity annotations (linking to vocabularies describing SAPR acts on behalf of the proxied Web service aspects such as trust or uncertainty). and either redirects client requests to the origi- nal Web service or updates the returned meta- 2.1. Annotations for capturing data semantics data. End users are not aware of its existence: the proxy takes the identity of the proxied service. The most prevalent application of annotations The “injection”-procedure refers to the semantic is semantic enrichment: the individual entities in enrichment of XML-based documents by writing a data model are linked to concepts in shared Link Annotations directly into the data stream. vocabularies to explain what the data represents We explain how the proxy-based solution for the in reality. Semantic annotations combined with semantic enablement of existing Web service de- semantic-enabled applications can be useful for a varying field of applications such as Web service 1The reason why OGC has not (yet) adapted W3C stan- discovery, automatic integration into existing busi- dards is simple: the OGC standards have been developed ness or scientific workflows, logic data integrity years before SOAP/WSDL emerged. tests, semantic validation of Web service composi- 2SAPR is a free service, available at: http:// tions, or inferring data visualization strategies. A semantic-proxy.appspot.com 3See http://purl.org/net/sapience/docs for the ac- more in depth discussion of these applications can cess to the source code, issue tracking, and documentation. be found in [20]. Injecting Semantic Annotations 3 The linked vocabularies can be commonly ac- tially avoid) semantic conflicts in geospatial work- cepted thesauri of one particular domain, shared flows. domain ontologies developed for particular use Semantic annotations linking to local applica- cases, or local application-specific ontologies. The tion ontologies have been proven useful to cap- domain ontologies should be understood as for- ture the sometimes complex functional dependen- mal specifications of reality, in particular of our cies within data models [19]. In the given exam- geographic environment. A Web Feature Service ple, CODE identifies the geological formation (i.e., (WFS) [31] could, for example, provide XML all features representing geological layers formed schema describing the data model of the fea- in the pleistocene era have the code “2”). Built-in ture type GEOL50KType with the two attributes ontology constructs such as constraints on proper- CODE and FORMATION (see Figure 1). These at- ties in OWL help to re-model this inner relation- tribute labels are unfortunately cryptic, its mean- ships of the data. To make these local ontologies ing remains hidden to non-experts (or experts useful, they have to be aligned to globally shared from different information communities). Request- ontologies. The FORMATION could then, for exam- ing the actual data returns “2” for CODE and “Plio- ple, be linked to a domain concept GeologicEra. Pléistocène” for FORMATION, which does not re- 4 veal any meaning as well. This example is taken 2.2. Annotations for describing data quality from one