Lightweight Semantic Annotation of Geospatial Annotation of Geospatial RESTful Services Victor Saquicela, Luis. M. Vilches-Blazquez, and Oscar Corcho Facultad de Informática, Universidad Politécnica de Madrid Campus de Montegancedo s/n, 28660 Boadilla del Monte, Madrid http://www.oeg-upm.net {vsaquicela,lmvilches,ocorcho}@fi.upm.es Phone: 34.91.3366605, Fax: 34.91.3524819 Date: 02/06/2011 Project: EV Presented by Boris Villazón-Terrazas ESWC 2011 Heraklion, Greece
19
Embed
Lightweight Semantic Annotation of Geospatial RESTful Services
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Lightweight SemanticAnnotation of GeospatialAnnotation of Geospatial
RESTful Services
Victor Saquicela, Luis. M. Vilches-Blazquez, and Oscar Corcho
Facultad de Informática, Universidad Politécnica de MadridCampus de Montegancedo s/n, 28660 Boadilla del Monte, Madrid
Date: 02/06/2011Project: EVPresented by Boris Villazón-Terrazas ESWC 2011
Heraklion, Greece
ToC
• Introduction & motivation
• Related work
• Semantic annotation of RESTful services
• A sample set of RESTful services
• Syntactic descriptiony p
• Semantic annotation
• Checking the semantic annotation of RESTful services• Checking the semantic annotation of RESTful services
• Experimental results
• Conclusions and future work
2
Introduction and motivation
RESTfulService YRESTful
Service XService Y
RESTfulService Z
RESTfulS i WService W …
Description in HTML that contains:• a list of the available operations
RESTfulService W
• a list of the available operations• URIs and parameters• expected output• error messages• set of examples of execution
• 3274 of RESTful services (APIs) in programmableweb.com
Introduction
• Description in HTML page
4
Related work
• SyntacticH i ht WSDL• Heavyweight: WSDL
• Lightweight: WADL, hREST
• Semantic• Heavyweight: OWL-S, WSMOy g
• Lightweight: SA-REST, MicroWSMO
• ToolsSWEET• SWEET
• WSMO editor
5
Our approachS ti t ti f RESTf l i bSemantic annotation of RESTful services by
(1) Obtaining and formalising their syntactic descriptions(2) Interpreting, and semantically enriching their parameters
Our approach uses diverse types of resourcesOur approach uses diverse types of resources• cross-domain ontology, DBpedia (combined with GeoNames)• Suggestion services• Synonym services
Syntactic description
Repository
Semanticannotation
6
Syntactic description
A sample set of RESTful services• Service 1. retrieves information related to a country.
• http://ws.geonames.org/countryInfo?country=ES • Service 2. retrieves information about places (venues).
htt // i tf l / t/ / h? k 4t8BF LDt C dS&l ti M d id• http://api.eventful.com/rest/venues/search?app_key=p4t8BFcLDt CzpxdS&location=Madrid Service 1 Service 2
<country_abbr>ESP</country_abbr><longitude>-3.68333</longitude><latitude>40.4</latitude><geocode_type>City Based GeoCodes</geocode_type><owner>frankg</owner>
owner frankg /owner<timezone></timezone><created></created><event_count>0</event_count><trackback_count>0</trackback_count><comment_count>0</comment_count><li k t>0</li k t>
7
<link_count>0</link_count><image></image>
</venue><venue id="V0-001-000154998-5">
Syntactic description: Invocation and registration
• User adds the URL of a service in our system
• System invokes the RESTful service with some sample yparameters, by using SDO API
• System analyzes the response (XML) to obtain a syntactic description of the parameters
• Results• Service1.
countryInfo($country,bBoxSouth,isoNumeric,continent,fipsCode,areaInSqKm,languages,isoAlpha3,countryCode,bBoxNorth,population,bBoxWest,currencyCode bBoxEast capital geonameId countryName)ncyCode,bBoxEast,capital,geonameId,countryName)
Semantic annotation (I)• The starting point is the list of syntactic parameters
Th t t i ll th l / ti f• The system retrieves all the classes/properties fromDBpedia ontology whose names have a match with eachparameter of the RESTFul Service.p• Exact match• Similarity measures: Jaro, Jaro Winkler, and Levenshtein
• If the system obtains correspondences from the matchingprocess it uses DBPedia concepts/properties to retrieveprocess, it uses DBPedia concepts/properties to retrievesamples (RDF instances).
• If there is no “matching”, we use external services• Spelling suggestion services• Synonym services
Enriching the original parameters with external resources
Semantic annotation: more examples
11
Result
Service1 (i1, i2, o1, o2, o3, o4, o5, o6, o7)
Service 1(http://dbpedia.org/ontology/Country,http,http://www.w3.org/2003/01/geo/wgs84_pos#lat,http://www.w3.org/2003/01/geo/wgs84_pos#long,isoNumeric,http://dbpedia.org/ontology/Continent,fipsCode,http://dbpedia.org/property/areaMetroKm,languages,isoAlpha3,http://dbpedia.org/ontology/country,http://www.w3.org/2003/01/geo/wgs84_pos#lat,http://www.w3.org/2003/01/geo/wgs84_pos#long,http://dbpedia.org/ontology/populationDensity,http://www.w3.org/2003/01/geo/wgs84_pos#lat,http://www.w3.org/2003/01/geo/wgs84_pos#long,http://dbpedia.org/ontology/Currency,http://www.w3.org/2003/01/geo/wgs84_pos#lat,http://www.w3.org/2003/01/geo/wgs84_pos#long,http://dbpedia.org/ontology/capital,geonameId,http://dbpedia.org/ontology/country)
12
Checking the semantic annotation (Input)
• The system selects for each parameter a random subsetof the example instances.
• It makes several invocations of the service, by iteratingover the registered values.g
• If the service return results from the invocation -> theservice is considered as executable; non-executable if itcannot invoked succesfully.
• The system only takes into account executions withcorrect inputs.
• The system compares the outputs obtained afterexecution with the information already stored in theyrepository.
• If the output can be matched, the system considers theoutput annotations as valid.
• Finally, the correspondences between the differentparameters of the service and DBpedia/Geonamesparameters of the service and DBpedia/Geonamesontology are registered and stored into the respository.
14
Experimental results (I)
• 60 RESTful services selected from www.programmableweb.com (manually)
• 56 registered in the system• 56 registered in the system
• List of 369 different parameters, 52 input parameters and 342 output parameters, without duplications.
• We have proposed an approach to perform semantic annotation process of RESTful services, using ontologies (DBpedia and Geonames) and external resources (suggestions and synonyms).
• Future work:• GUI that will ease the introduction of existing service by users• GUI that will ease the introduction of existing service by users.
• Improving the SPARQL queries
• More specific domain ontologies in the semantic process
• Standards generation such as hREST, SA-REST and MicroWSMO
• Integration with iServe.
17
Lightweight SemanticAnnotation of GeospatialAnnotation of Geospatial
RESTful Services
Victor Saquicela, Luis. M. Vilches-Blazquez, and Oscar Corcho
Facultad de Informática, Universidad Politécnica de MadridCampus de Montegancedo sn, 28660 Boadilla del Monte, Madrid