Cross-Lingual Web API Classification

30,389 views

Published on

Recent developments on the Web are marked by the growing support for the Linked Data initiative, which encourages government and public organisations, as well as private institutions, to expose their data on the Web. This results in a plentitude of multi-lingual document collections where the original resources are published in the language, in which they are available. The challenges of multilingualism present on the Semantic Web are also reflected in the context of services on the Web, characterised by the rapid increase in popularity and use of Web APIs, as indicated by the growing number of available APIs and the applications built on top of them. Web APIs are commonly described in plain-text as part of Web pages, following no particular guidelines and conforming to no standards, despite some initial approaches in the area. Therefore, API providers publish descriptions in any language they see fit, making the service discovery and the subsequent processing of the documentation challenging tasks. We present a cross-lingual approach that calculates semantic similarity of text to help classify and annotateWeb APIs, based on their textual descriptions. Furthermore, we show how our solution can be implemented as part of SWEET, which is a tool that enables the semi-automated creation of semantic Web API descriptions. In addition, we demonstrate how the cross-lingual approach can be adopted to support the language-independent discovery of Web APIs.

Published in: Technology, Education
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
30,389
On SlideShare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
3
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Cross-Lingual Web API Classification

  1. 1. Cross-Lingual Web API Classification and Annotation Maria Maleshkova, Lukas Zilka, Petr Knoth, Carlos Pedrinaci 2nd Workshop on the Multilingual Semantic Web ISWC 201
  2. 2. Services on the Web <ul><li>“ Classical “ Web services (WSDL, SOAP, WS-*) </li></ul><ul><ul><li>Enable the publishing and consuming of functionalities of existing applications </li></ul></ul><ul><li>Web APIs </li></ul><ul><ul><li>Enable the access to collections of resources </li></ul></ul>+ =
  3. 3. Why Web APIs?
  4. 4. Challenges with Web APIs <ul><li>There is not a widely used IDL </li></ul><ul><ul><li>Only textual documentation (HTML) </li></ul></ul><ul><ul><li>Finding services is hard </li></ul></ul><ul><li>Their use requires human interpretation of semi-structured descriptions </li></ul><ul><li>The semantics of the services are not described in a machine-processable manner </li></ul><ul><ul><li>Prevents automating discovery, invocation, and composition of Web APIs </li></ul></ul>
  5. 5. Lightweight Semantics hRESTS and MicroWSMO <ul><li>&quot;There's usually an HTML page&quot; </li></ul><ul><li>Identifying machine-readable parts </li></ul><ul><ul><li>Service, its operations </li></ul></ul><ul><ul><li>Resource address, HTTP method </li></ul></ul><ul><ul><li>Input/output data format </li></ul></ul><ul><li> hRESTS microformat </li></ul><ul><li>MicroWSMO extends hRESTS </li></ul><ul><ul><li>model for model references </li></ul></ul><ul><ul><li>lifting, lowering </li></ul></ul>
  6. 6. Annotation Example
  7. 7. Annotation Example Service Operation Input Parameter
  8. 8. Geocoding API <ul><li>http://www.geonames.org/export/web-services.html </li></ul>
  9. 9. Geocoding API <ul><li>http://ondras.zarovi.cz/smap/geokodovani/ </li></ul>
  10. 10. Explicit Semantic Analysis (ESA) <ul><li>EAS – a method for assessing semantic relatedness of two texts </li></ul><ul><li>It represents text as a bag-of-concepts </li></ul><ul><li>I uses a background collection </li></ul><ul><ul><li>cross-lingual semantic comparison possible </li></ul></ul><ul><li>Adopting ESA for API Classification and Annotation: </li></ul><ul><li>ProgrammableWeb as background collection </li></ul><ul><ul><li>Both for API classification and determining relevant annotations </li></ul></ul><ul><li>Text preprocessing </li></ul><ul><ul><li>service-specific stop-word removal </li></ul></ul><ul><li>Applying Explicit Semantic Analysis </li></ul><ul><ul><li>Obtain categories and central concepts </li></ul></ul>
  11. 11. Supporting Cross-Lingual Classification <ul><li>Determine the language of the description </li></ul><ul><li>Remove stop words and project description in language-specific concepts space of Wikipedia </li></ul><ul><li>Project the resulting vector in the English Wikipedia concept space </li></ul><ul><li>Determine the most similar vector from the background collection </li></ul><ul><li>Determine category based on similarity scores </li></ul>
  12. 12. Cross-Lingual API Annotation <ul><li>Determine the language of the description </li></ul><ul><li>Remove stop words and project description in language-specific concepts space of Wikipedia </li></ul><ul><li>Project the resulting vector in the English Wikipedia concept space </li></ul><ul><li>Determine the most similar vector from the background collection </li></ul><ul><li>Determine central concepts based on most similarity API </li></ul><ul><ul><li>- Manually assigned </li></ul></ul><ul><ul><li>- Automatically derived </li></ul></ul>
  13. 13. Implementation SWEET
  14. 14. Approach Implementation <ul><li>SWEET’s architecture </li></ul>
  15. 15. Future Work <ul><li>Harvest the “surrounding&quot; web to help the classier </li></ul><ul><li>Pattern based extraction of useful information </li></ul><ul><li>Ensure quality of the background collection </li></ul>
  16. 16. Conclusion <ul><li>Finding and using Web APIs is a challenging task </li></ul><ul><li>Need for a cross-lingual support </li></ul><ul><li>We provide </li></ul><ul><ul><li>Solution: adoption of the cross-lingual EAS approach </li></ul></ul><ul><ul><li>Implementations and tool realization </li></ul></ul><ul><ul><li> Universal cross-lingual approach enabling us to support almost any human language </li></ul></ul>
  17. 17. <ul><li>Thank you! </li></ul>

×