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