SlideShare a Scribd company logo
Lightweight Semantic
          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


Presented by Boris Villazón-Terrazas            ESWC 2011
Project: EV                                     Date: 02/06/2011
                                                Heraklion, Greece
ToC

• Introduction & motivation
• Related work
• Semantic annotation of RESTful services
   • A sample set of RESTful services
   • Syntactic description
      y              p
   • Semantic annotation

• Checking the semantic annotation of RESTful services
  Checking the semantic annotation of RESTful
• Experimental results
• Conclusions and future work



                                  2
Introduction and motivation


                                                                       RESTful
                                                           RESTful     Service Y
                                                                                   RESTful
                                                           Service X
                                                                                   Service Z


                                                                 RESTful
                                                                 Service
                                                                 S i W      …
              Description in HTML that contains:
            • a list of the available operations
RESTful     • URIs and parameters
Service W   • 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

• Syntactic
   • H
     Heavyweight: WSDL
            i ht
   • Lightweight: WADL, hREST

• Semantic
   • Heavyweight: OWL-S, WSMO
         y   g
   • Lightweight: SA-REST, MicroWSMO


• Tools
   • SWEET
   • WSMO editor



                            5
Our approach
Semantic annotation of RESTf l services b
S      ti    t ti    f RESTful     i    by
     (1) Obtaining and formalising their syntactic descriptions
     (2) Interpreting, and semantically enriching their parameters
Our approach uses diverse types of resources
     •    cross-domain ontology, DBpedia (combined with GeoNames)
     •    Suggestion services
     •    Synonym services




                                                                        Semantic
                                                                        annotation
                                       Repository

      Syntactic description



                                              6
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
        http://api.eventful.com/rest/venues/search?app_key=p4t8BFcLDt C
                       tf l    / t/         /      h?      k 4t8BF LDt CzpxdS&location=Madrid
                                                                           dS&l   ti   M d id
                          Service 1                                               Service 2

                                                     <venue id="V0-001-000154997-6">
       <geonames>                                       <url>http://eventful.com/madrid/venues/la-
          <country>
                  y                                     ancha-/V0-001-000154997-6</url>
             <countryCode>ES</countryCode>              <country_name>Spain</country_name>
             <countryName>Spain</countryName>           <name>La Ancha</name>
                                                        <venue_name>La Ancha</venue_name>
             <isoNumeric>724</isoNumeric>               <description></description>
             <isoAlpha3>ESP</isoAlpha3>                 <venue_type>Restaurant</venue_type>
             <fipsCode>SP</fipsCode>                    <address></address>
             <continent>EU</continent>                  <city_name>Madrid</city_name>
             <capital>Madrid</capital>                  <region_name></region_name>
                                                        <region_abbr></region_abbr>
             <areaInSqKm>504782.0</areaInSqKm>          <postal_code></postal_code>
             <population>40491000</population>          <country_abbr2>ES</country_abbr2>
             <currencyCode>EUR</currencyCode>
                      C d EUR /            C d          <country_abbr>ESP</country_abbr>
             <languages>es-ES,ca,gl,eu</languages>      <longitude>-3.68333</longitude>
             <geonameId>2510769</geonameId>             <latitude>40.4</latitude>
                                                        <geocode_type>City Based GeoCodes
             <bBoxWest>-18.169641494751</bBoxWest       </geocode_type>
            <bBoxNorth>43.791725</bBoxNorth>            <owner>frankg</owner>
                                                          owner frankg /owner
            <bBoxEast>4.3153896</bBoxEast>              <timezone></timezone>
            <bBoxSouth>27.6388</bBoxSouth>              <created></created>
          </country>                                    <event_count>0</event_count>
                                                        <trackback_count>0</trackback_count>
       </geonames>                                      <comment_count>0</comment_count>
                                                        <link_count>0</link_count>
                                                        <li k       t>0</li k     t>
                                                        <image></image>
                                                     </venue>
                                                     <venue id="V0-001-000154998-5">
                                                 7
Syntactic description: Invocation and registration
• User adds the URL of a service in our system
• System invokes the RESTful service with some sample
   y
  parameters, 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,areaInSqK
       m,languages,isoAlpha3,countryCode,bBoxNorth,population,bBoxWest,curre
       ncyCode,bBoxEast,capital,geonameId,countryName)
       ncyCode bBoxEast capital geonameId countryName)
   •   Service2.
       rest/venues/search($location,$app_key,id,link_count,page_count,longitude,t
       rackback_count,version,venue_type,owner,url,country_name,event_count,t
       rackback count,version,venue type,owner,url,country name,event count,t
       otal_items,city_name,address,name,latitude,page_number,postal_code,cou
       ntry_abbr,first_item,page_items,last_item,page_size,country_abbr2,comme
       nt_count,geocode_type,search_time,venue_name)

• Results are stored and WADL file is generated.
                                        8
Semantic annotation (I)
• The starting point is the list of syntactic parameters

• Th system retrieves all th classes/properties f
  The   t       ti     ll the l     /      ti from
  DBpedia ontology whose names have a match with each
  p
  parameter of the RESTFul Service.
   • Exact match
   • Similarity measures: Jaro, Jaro Winkler, and Levenshtein


• If the system obtains correspondences from the matching
  process,
  process it uses DBPedia concepts/properties to retrieve
  samples (RDF instances).

• If there is no “matching”, we use external services
   • Spelling suggestion services
   • Synonym services
                                9
Semantic annotation: example
Service1.
countryInfo($country,bBoxSouth,isoNumeric,continent,fipsCode,areaInSqKm,languages,
isoAlpha3,countryCode,bBoxNorth,population,bBoxWest,currencyCode,bBoxEast,capital,
geonameId,countryName)
geonameId countryName)




    Enriching the original parameters with external resources
                                           10
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://ww
w.w3.org/2003/01/geo/wgs84_pos#long,isoNumeric,http://dbpedia.org/ontology/Continent,fipsCod
e,http://dbpedia.org/property/areaMetroKm,languages,isoAlpha3,http://dbpedia.org/ontology/countr
y,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/on
tology/capital,geonameId,http://dbpedia.org/ontology/country)




                                             12
Checking the semantic annotation (Input)
• The system selects for each parameter a random subset
  of the example instances.

• It makes several invocations of the service, by iterating
  over the registered values.
             g

• If the service return results from the invocation -> the
  service is considered as executable; non-executable if it
  cannot invoked succesfully.
                                    Country




  http://dbpedia.org/ontology/country         http://dbpedia.org/ontology/locationCountry
               Instance1                                        Instance1
               Instance2                                        Instance2
               Instance3                                        Instance3
                  .........                                       .........
               InstanceM                                       InstanceM

                                                                                            13
Checking the semantic annotation (Output)
• The system only takes into account executions with
  correct inputs.

• The system compares the outputs obtained after
  execution with the information already stored in the
                                       y
  repository.

• If the output can be matched, the system considers the
  output annotations as valid.

• Finally, the correspondences between the different
  parameters of the service and DBpedia/Geonames
  ontology 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
•   List of 369 different parameters, 52 input parameters and 342 output parameters,
    without duplications.


                                                                  Additional   Matches (DBpedia and
                                   Attributes            Total
                                                                 parameters    GeoNames ontologies)



              Initial parameters                         369          -                191


              Parameters + Suggestions                   426          57                33


              Parameters + Synonyms
                            y   y                        1573        1147              126


              Parameters + Suggestions + Synonyms        1573        1204              159




                                                    15
Experimental results (II)

                                                 Annotated         Annotated
        RESTful         Total     Annotated                                          Special       Service
                                                parameters        parameters
        Service     parameters   parameters                                       parameters     validation
                                                ( p
                                                (DBpedia))       (
                                                                 (GeoNames) )

         Input
                        152          78             33                45              73        56          4
      parameters

         Output
                        862          315            202               113             299               -
      parameters


                    Results of the input and output parameters



                       Found          Not found                         Not           Right
RESTful Service                                      Annotated                                   Precision        Recall
                    parameters       parameters                      annotated     parameters


    Output
                        475                92             315               160         242           0.66         0.77
 parameters



                   Output parameters metrics



                                                          16
Conclusions and future work

•   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
                                                                    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 Semantic Annotation of Geospatial RESTful Services
Lightweight Semantic
          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 sn, 28660 Boadilla del Monte, Madrid
                   http://www.oeg-upm.net
        {vsaquicela,lmvilches,ocorcho}@fi.upm.es
         Phone: 34.91.3366605, Fax: 34.91.3524819


Presented by Boris Villazón-Terrazas            ESWC 2011
Project: EV                                     Date: 02/06/2011
                                                Heraklion, Greece

More Related Content

Similar to Lightweight Semantic Annotation of Geospatial RESTful Services (20)

PDF
Eswc lsagrsv9-boris-110602060147-phpapp02
Victor Saquicela
 
PDF
A Provenance-Aware Linked Data Application for Trip Management and Organization
Boris Villazón-Terrazas
 
PDF
Semantic Web Technologies for Automatic Service Composition
Dragan Gasevic
 
PDF
Data Mesh-up and Mapping using Semantic Wiki
Jie Bao
 
KEY
Automated testing of complex service oriented architectures
Dr. Alexander Schwartz
 
PDF
Map4rdf - Faceted Browser for Geospatial Datasets
Boris Villazón-Terrazas
 
PDF
On being RESTful
Fabio Mancinelli
 
PDF
Creating Restful Web Services with restish
Grig Gheorghiu
 
PPTX
Soa4 all technical achievements final
John Domingue
 
PDF
Rest web services
Paulo Gandra de Sousa
 
PDF
Introduction to REST and Jersey
Chris Winters
 
PDF
Understanding REST-Based Services: Simple, Scalable, and Platform Independent
Charles Knight
 
PDF
Tyler bell
Ben Allen
 
PDF
Functional Composition of Sensor Web APIs
Ruben Verborgh
 
PDF
RESTful OGC Services
Pat Cappelaere
 
PPT
Bryan lawrence
vinunag99
 
KEY
NASA SensorWeb Enterprise Services
Pat Cappelaere
 
ODP
The Internet as Web Services: introduction to ReST
Bruno Kessler Foundation
 
PDF
Eero Hyvönen: Matkailusampo, Apps4Finland-työt Paikkatietomarkkinoilla 2012
Apps4Finland
 
PDF
Jeff Siarto: Party Like It’s 1984, An introduction to social APIs
SocialDevCamp Chicago
 
Eswc lsagrsv9-boris-110602060147-phpapp02
Victor Saquicela
 
A Provenance-Aware Linked Data Application for Trip Management and Organization
Boris Villazón-Terrazas
 
Semantic Web Technologies for Automatic Service Composition
Dragan Gasevic
 
Data Mesh-up and Mapping using Semantic Wiki
Jie Bao
 
Automated testing of complex service oriented architectures
Dr. Alexander Schwartz
 
Map4rdf - Faceted Browser for Geospatial Datasets
Boris Villazón-Terrazas
 
On being RESTful
Fabio Mancinelli
 
Creating Restful Web Services with restish
Grig Gheorghiu
 
Soa4 all technical achievements final
John Domingue
 
Rest web services
Paulo Gandra de Sousa
 
Introduction to REST and Jersey
Chris Winters
 
Understanding REST-Based Services: Simple, Scalable, and Platform Independent
Charles Knight
 
Tyler bell
Ben Allen
 
Functional Composition of Sensor Web APIs
Ruben Verborgh
 
RESTful OGC Services
Pat Cappelaere
 
Bryan lawrence
vinunag99
 
NASA SensorWeb Enterprise Services
Pat Cappelaere
 
The Internet as Web Services: introduction to ReST
Bruno Kessler Foundation
 
Eero Hyvönen: Matkailusampo, Apps4Finland-työt Paikkatietomarkkinoilla 2012
Apps4Finland
 
Jeff Siarto: Party Like It’s 1984, An introduction to social APIs
SocialDevCamp Chicago
 

More from Boris Villazón-Terrazas (15)

PDF
Yet another SPARQL 1.1 brief introduction
Boris Villazón-Terrazas
 
PDF
Ecuadorian Geospatial Linked Data
Boris Villazón-Terrazas
 
PDF
SEEMP - Semantic Aspects and Interoperability
Boris Villazón-Terrazas
 
PDF
Data Shapes and Data Transformations
Boris Villazón-Terrazas
 
PDF
Linguistic resources enhanced with geospatial Information
Boris Villazón-Terrazas
 
PDF
RDB2RDF, an overview of R2RML and Direct Mapping
Boris Villazón-Terrazas
 
PDF
Methodological Guidelines for Publishing Linked Data
Boris Villazón-Terrazas
 
PDF
Linked Data Projects at OEG - Current Status
Boris Villazón-Terrazas
 
PDF
Methodological Guidelines for Publishing Linked Data
Boris Villazón-Terrazas
 
PDF
Linked Data Research Projects at Ontology Engineering Group
Boris Villazón-Terrazas
 
PDF
A Method for Reusing and Re-engineering Non-ontological Resources for Buildin...
Boris Villazón-Terrazas
 
PDF
Sitemap4rdf(v2 boris)
Boris Villazón-Terrazas
 
PPTX
Geometry2rdf(v2 boris)
Boris Villazón-Terrazas
 
PDF
An Approach to Publish Spatial Data on the Web: The GeoLinked Data Use Case
Boris Villazón-Terrazas
 
PDF
Geo linked data lstd10(v2-boris)
Boris Villazón-Terrazas
 
Yet another SPARQL 1.1 brief introduction
Boris Villazón-Terrazas
 
Ecuadorian Geospatial Linked Data
Boris Villazón-Terrazas
 
SEEMP - Semantic Aspects and Interoperability
Boris Villazón-Terrazas
 
Data Shapes and Data Transformations
Boris Villazón-Terrazas
 
Linguistic resources enhanced with geospatial Information
Boris Villazón-Terrazas
 
RDB2RDF, an overview of R2RML and Direct Mapping
Boris Villazón-Terrazas
 
Methodological Guidelines for Publishing Linked Data
Boris Villazón-Terrazas
 
Linked Data Projects at OEG - Current Status
Boris Villazón-Terrazas
 
Methodological Guidelines for Publishing Linked Data
Boris Villazón-Terrazas
 
Linked Data Research Projects at Ontology Engineering Group
Boris Villazón-Terrazas
 
A Method for Reusing and Re-engineering Non-ontological Resources for Buildin...
Boris Villazón-Terrazas
 
Sitemap4rdf(v2 boris)
Boris Villazón-Terrazas
 
Geometry2rdf(v2 boris)
Boris Villazón-Terrazas
 
An Approach to Publish Spatial Data on the Web: The GeoLinked Data Use Case
Boris Villazón-Terrazas
 
Geo linked data lstd10(v2-boris)
Boris Villazón-Terrazas
 
Ad

Lightweight Semantic Annotation of Geospatial RESTful Services

  • 1. Lightweight Semantic 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 Presented by Boris Villazón-Terrazas ESWC 2011 Project: EV Date: 02/06/2011 Heraklion, Greece
  • 2. ToC • Introduction & motivation • Related work • Semantic annotation of RESTful services • A sample set of RESTful services • Syntactic description y p • Semantic annotation • Checking the semantic annotation of RESTful services Checking the semantic annotation of RESTful • Experimental results • Conclusions and future work 2
  • 3. Introduction and motivation RESTful RESTful Service Y RESTful Service X Service Z RESTful Service S i W … Description in HTML that contains: • a list of the available operations RESTful • URIs and parameters Service W • expected output • error messages • set of examples of execution • 3274 of RESTful services (APIs) in programmableweb.com
  • 4. Introduction • Description in HTML page 4
  • 5. Related work • Syntactic • H Heavyweight: WSDL i ht • Lightweight: WADL, hREST • Semantic • Heavyweight: OWL-S, WSMO y g • Lightweight: SA-REST, MicroWSMO • Tools • SWEET • WSMO editor 5
  • 6. Our approach Semantic annotation of RESTf l services b S ti t ti f RESTful i by (1) Obtaining and formalising their syntactic descriptions (2) Interpreting, and semantically enriching their parameters Our approach uses diverse types of resources • cross-domain ontology, DBpedia (combined with GeoNames) • Suggestion services • Synonym services Semantic annotation Repository Syntactic description 6
  • 7. 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 http://api.eventful.com/rest/venues/search?app_key=p4t8BFcLDt C tf l / t/ / h? k 4t8BF LDt CzpxdS&location=Madrid dS&l ti M d id Service 1 Service 2 <venue id="V0-001-000154997-6"> <geonames> <url>http://eventful.com/madrid/venues/la- <country> y ancha-/V0-001-000154997-6</url> <countryCode>ES</countryCode> <country_name>Spain</country_name> <countryName>Spain</countryName> <name>La Ancha</name> <venue_name>La Ancha</venue_name> <isoNumeric>724</isoNumeric> <description></description> <isoAlpha3>ESP</isoAlpha3> <venue_type>Restaurant</venue_type> <fipsCode>SP</fipsCode> <address></address> <continent>EU</continent> <city_name>Madrid</city_name> <capital>Madrid</capital> <region_name></region_name> <region_abbr></region_abbr> <areaInSqKm>504782.0</areaInSqKm> <postal_code></postal_code> <population>40491000</population> <country_abbr2>ES</country_abbr2> <currencyCode>EUR</currencyCode> C d EUR / C d <country_abbr>ESP</country_abbr> <languages>es-ES,ca,gl,eu</languages> <longitude>-3.68333</longitude> <geonameId>2510769</geonameId> <latitude>40.4</latitude> <geocode_type>City Based GeoCodes <bBoxWest>-18.169641494751</bBoxWest </geocode_type> <bBoxNorth>43.791725</bBoxNorth> <owner>frankg</owner> owner frankg /owner <bBoxEast>4.3153896</bBoxEast> <timezone></timezone> <bBoxSouth>27.6388</bBoxSouth> <created></created> </country> <event_count>0</event_count> <trackback_count>0</trackback_count> </geonames> <comment_count>0</comment_count> <link_count>0</link_count> <li k t>0</li k t> <image></image> </venue> <venue id="V0-001-000154998-5"> 7
  • 8. Syntactic description: Invocation and registration • User adds the URL of a service in our system • System invokes the RESTful service with some sample y parameters, 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,areaInSqK m,languages,isoAlpha3,countryCode,bBoxNorth,population,bBoxWest,curre ncyCode,bBoxEast,capital,geonameId,countryName) ncyCode bBoxEast capital geonameId countryName) • Service2. rest/venues/search($location,$app_key,id,link_count,page_count,longitude,t rackback_count,version,venue_type,owner,url,country_name,event_count,t rackback count,version,venue type,owner,url,country name,event count,t otal_items,city_name,address,name,latitude,page_number,postal_code,cou ntry_abbr,first_item,page_items,last_item,page_size,country_abbr2,comme nt_count,geocode_type,search_time,venue_name) • Results are stored and WADL file is generated. 8
  • 9. Semantic annotation (I) • The starting point is the list of syntactic parameters • Th system retrieves all th classes/properties f The t ti ll the l / ti from DBpedia ontology whose names have a match with each p parameter of the RESTFul Service. • Exact match • Similarity measures: Jaro, Jaro Winkler, and Levenshtein • If the system obtains correspondences from the matching process, process it uses DBPedia concepts/properties to retrieve samples (RDF instances). • If there is no “matching”, we use external services • Spelling suggestion services • Synonym services 9
  • 12. 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://ww w.w3.org/2003/01/geo/wgs84_pos#long,isoNumeric,http://dbpedia.org/ontology/Continent,fipsCod e,http://dbpedia.org/property/areaMetroKm,languages,isoAlpha3,http://dbpedia.org/ontology/countr y,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/on tology/capital,geonameId,http://dbpedia.org/ontology/country) 12
  • 13. Checking the semantic annotation (Input) • The system selects for each parameter a random subset of the example instances. • It makes several invocations of the service, by iterating over the registered values. g • If the service return results from the invocation -> the service is considered as executable; non-executable if it cannot invoked succesfully. Country http://dbpedia.org/ontology/country http://dbpedia.org/ontology/locationCountry Instance1 Instance1 Instance2 Instance2 Instance3 Instance3 ......... ......... InstanceM InstanceM 13
  • 14. Checking the semantic annotation (Output) • The system only takes into account executions with correct inputs. • The system compares the outputs obtained after execution with the information already stored in the y repository. • If the output can be matched, the system considers the output annotations as valid. • Finally, the correspondences between the different parameters of the service and DBpedia/Geonames ontology are registered and stored into the respository. 14
  • 15. Experimental results (I) • 60 RESTful services selected from www.programmableweb.com (manually) • 56 registered in the system • List of 369 different parameters, 52 input parameters and 342 output parameters, without duplications. Additional Matches (DBpedia and Attributes Total parameters GeoNames ontologies) Initial parameters 369 - 191 Parameters + Suggestions 426 57 33 Parameters + Synonyms y y 1573 1147 126 Parameters + Suggestions + Synonyms 1573 1204 159 15
  • 16. Experimental results (II) Annotated Annotated RESTful Total Annotated Special Service parameters parameters Service parameters parameters parameters validation ( p (DBpedia)) ( (GeoNames) ) Input 152 78 33 45 73 56 4 parameters Output 862 315 202 113 299 - parameters Results of the input and output parameters Found Not found Not Right RESTful Service Annotated Precision Recall parameters parameters annotated parameters Output 475 92 315 160 242 0.66 0.77 parameters Output parameters metrics 16
  • 17. Conclusions and future work • 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 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
  • 19. Lightweight Semantic 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 sn, 28660 Boadilla del Monte, Madrid http://www.oeg-upm.net {vsaquicela,lmvilches,ocorcho}@fi.upm.es Phone: 34.91.3366605, Fax: 34.91.3524819 Presented by Boris Villazón-Terrazas ESWC 2011 Project: EV Date: 02/06/2011 Heraklion, Greece