Download - Cross-Lingual Web API Classification

Transcript
Page 1: Cross-Lingual Web API Classification

Cross-Lingual Web API Classification and Annotation

Maria Maleshkova, Lukas Zilka,Petr Knoth, Carlos Pedrinaci

2nd Workshop on the Multilingual Semantic WebISWC 201

Page 2: Cross-Lingual Web API Classification

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 + =

Page 3: Cross-Lingual Web API Classification

Why Web APIs?

Page 4: Cross-Lingual Web API Classification

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

Page 5: Cross-Lingual Web API Classification

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

Page 6: Cross-Lingual Web API Classification

Annotation Example

Page 7: Cross-Lingual Web API Classification

Annotation Example

Service

Operation InputParameter

Page 8: Cross-Lingual Web API Classification

Geocoding API

• http://www.geonames.org/export/web-services.html

Page 9: Cross-Lingual Web API Classification

Geocoding API

• http://ondras.zarovi.cz/smap/geokodovani/

Page 10: Cross-Lingual Web API Classification

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

Page 11: Cross-Lingual Web API Classification

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

Page 12: Cross-Lingual Web API Classification

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

Page 13: Cross-Lingual Web API Classification

ImplementationSWEET

Page 14: Cross-Lingual Web API Classification

Approach Implementation

• SWEET’s architecture

Page 15: Cross-Lingual Web API Classification

Future Work

• Harvest the “surrounding" web to help the classier

• Pattern based extraction of useful information

• Ensure quality of the background collection

Page 16: Cross-Lingual Web API Classification

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

Page 17: Cross-Lingual Web API Classification

Thank you!Thank you!