SlideShare a Scribd company logo
Ontology-based Classification and
Faceted Search Interface for APIs
Knarig Arabshian, PhD
knarig@gmail.com
Overview
n  Motivation
n  Background
n  Problem
n  Solution
n  Related Work
n  Conclusion & Future Work
Motivation
n  Most of today’s Web content is suitable
for human consumption
n  Humans are left with the work of gathering
information from various websites
n  Web content is heterogeneous with little or no
structure
n  Data is not easily shared between web
content providers
Travel Example
Use services to
manually search for
airfares, car rentals
and hotels
Or search with
aggregating services
Use services to help plan travel
itinerary and provide information
on local sites such as weather,
events, or attractions
Use services that also
provide you with helpful
customer reviews
Semantic Web Vision
n  Web information can be processed by computers
n  Computers can integrate information from the web
“A web of data that can be processed directly
and indirectly by computers”
~Tim Berners-Lee (Inventor of WWW)
Quest for Semantics
Three main goals of the Semantic Web:
1. Building models: describe the world in abstract terms to
allow for an easier understanding of complex reality
2. Computing with knowledge: constructing reasoning
machines that can draw meaningful conclusions from
encoded knowledge
3. Exchanging Information: distribute, interlink, and
reconcile knowledge on a global scale
Planning Booking Reviews
Travel
Airline Tickets Car Rental Hotels
Using structured data, computers
can aggregate information and
customize it for the user
Travel
ontology
describes and
classifies
travel
services
Motivation
§  We can see similar problems when it comes to
API discovery on the Web
§  Discovering an API requires searching through a
large number of services on the Internet
§  Reading pages of documentation to figure out how
to use the ones that may match your application
§  Example: ProgrammableWeb (PW)
§  De facto API directory with over 14,000 APIs
§  Contains over 50 categories of services
§  API providers register their APIs in PW
§  Each API is manually categorized in a single category
by PW team
Exponential PW API Growth
Current state of PW
Current classification is
a flat categorization of
high-level service
classes without any
refinement between
common attributes
Needs a better method
for API discovery
Example: Search for Social
Advertising APIs in PW
Example: Search for Social
Advertising APIs in PW
Example: Search for Social Advertising
APIs in the Advertising Category
Search for
‘social’ and
‘advertising’
keywords in
Advertising
Category
Results in 7
APIs
Example: Search for Social Advertising
APIs in the Social Category
Search for
‘social’ and
‘advertising’
keywords in
Social
Category
Results in 2
APIs
What is needed?
A common data model has to be provided such as
an ontology in order to classify terms and
represent knowledge
Definition:
A formal, explicit specification of a shared
conceptualization ~ Tom Gruber
Overview
n  Motivation
n  Background
n  Problem
n  Solution
n  Related Work
n  Conclusion & Future Work
Ontology
§  OWL (Web Ontology Language): Approved
standard by W3C
§  Characteristics of ontologies
§  Classes: set of resources
§  Instances: ground level objects
§  Properties: relationships between classes
§  First order logic axioms
§  Class relationships such as disjointness, equivalence,
subsumption
§  Restrictions on properties such as existential, universal,
cardinality
Ontology Benefits
n  Standard way of describing the world both in terms
of language and meaning
n  Easily sharable across domains
n  Machine readable
n  Reasoning
n  Provide complex class relationships such as disjointness,
union, intersection besides pure hierarchy
n  Description logic reasoners automatically derive new
information and classify data
n  Automated classification can be very useful for dynamic data
that is continually updated
Ontology vs Relational Database
n  Similarities
n  Both use a model to identify common classes and
properties
n  ER model can be seen as a simple hierarchical
ontology
n  Differences
n  Ontologies are broader in scope (rules, incomplete
knowledge)
n  Ontologies provide a way for automated reasoning
to occur in order to discover new relationships
between entities
Example: Reasoning with a
Restaurant Ontology
Import class Cuisine
Create a restaurant
classification based on
cuisine by setting a
restriction on the
hasCuisine property
Example: Reasoning with a
Restaurant Ontology
Since ChineseCuisine has
non-disjoint siblings
JapaneseCuisine and
KoreanCuisine then also
conclude that these are
similar to ChineseCuisine
Example: Reasoning with a
Restaurant Ontology
Example: Reasoning with a
Restaurant Ontology
Run Reasoner for
Automated Classification
Conclude that
NewClass is
equivalent to
ChineseRestaurant
EQUIVALENT
Overview
n  Motivation
n  Background
n  Problem
n  Solution
n  Related Work
n  Conclusion & Future Work
Problem
§  Problem:
§  Improve API discovery and classification in Programmable
Web by providing a common data model such as an
ontology in order to automatically classify terms and perform
semantic API searches
§  Main Challenges:
§  Define high-level semantic descriptions of Programmable
Web services
§  Combine manual and automated data mining techniques to
create an ontology description of existing Programmable
Web services
§  Implement system that makes use of the ontology, such as
front-end user interface
What will improve?
§  Given a PW ontology, the system will:
§  Automatically classify existing API instances
within this ontology
§  Create an ontology-based user-interface for
automatic registration and querying
§  API providers will be able to register their services via this
interface
§  Users will be able to discover services with semantic queries
§  Example:
§  Find me an advertising service for social networks
§  Find me a social networking service for book
sharing
What do we need?
PW Service Classes Properties Feature Classes
API Individuals
AutomatedClassification
PW Service Classes
hasFeature
<140Proof, hasFeature, Advertising_Feature>
<140Proof, hasFeature, Social_Feature>
Advertising_Service
Social_Service
Advertising_Feature
Social_Feature
Advertising_Service
Social_Service
<BadgeVille, hasFeature, Advertising_Feature>
<BadgeVille, hasFeature, Social_Feature>
Refinement properties for a given PW Category to
enable automatic classification
Example: Ontology for Feature Class
Ontology-based Classification and Faceted Search Interface for APIs
Current PW Classification
VideoAdvertising Social Photo
PW Services
Travel
Video
Improved PW Classification using an
OWL Ontology
Advertising Social Photo
PW Services
VideoSocial PhotoSocial TravelSocial
Travel
AdvertisingSocial
APIs that have attributes
belonging in more than one
category will automatically be
classified
Current PW Search Interface
APIBrowse: Improved Faceted Search
Interface
Given the PW ontology, automatically generate a faceted search
interface by integrating it with a search platform such as SOLR
APIBrowse: Improved Faceted Search
Interface
Overlapping API Instances
Overlapping API Instances
Overview
n  Motivation
n  Background
n  Problem
n  Solution
n  Related Work
n  Conclusion & Future Work
LexOnt: A semi-automatic
ontology creation tool
§  A semi-automatic ontology creation tool that uses the
Programmable Web as its corpus
§  Suggest high-level property terms for a given service class
which distinguish it from the rest of the categories
§  Implemented as a Protege plugin, de facto ontology
editor, to aid in semi-automated ontology creation
§  Contributions:
§  Novel algorithm ranks terms and phrases within a PW category as
candidate property assignments by comparing them to external
domain knowledge within Wikipedia, Wordnet and the current
state of the ontology
§  Can be used even if the ontology engineer is not necessarily an
expert of a certain domain
LexOnt Algorithms
Well-known NLP algorithms used to find terms and phrases
§  TF-IDF: Text frequency-inverse document frequency
§  Score of a word in the document shows how important the word is
§  Importance of a word depends on how frequently the word has been
used in the document vs. all the documents in the corpus
§  Significant Phrases:
§  Chi-square test used to calculate the significance of collocated words
§  Two-phase process:
§  Determine collocations and terms that appear together
§  Filter out unique collocations from the list
§  Gave a very good indication of high-level property descriptions
LexOnt Algorithms
Novel algorithm uses external resources like Wikipedia, Wordnet
and the constructed ontology to highlight the important terms
even more
§  Useful for those who are not domain experts but want to
understand what the relevant terms of a domain are
§  Algorithm for using the External Knowledge Base
§  Extract Wikipedia page for each category and rank top words with TF-IDF
§  If a word or phrase in the API contains any of the top Wikipedia words, label it
§  Find synonymous or related terms to the list of generated terms using Wordnet
§  If a word or phrase in the API contains any of the related terms label them
§  If any of the generated terms lexically match terms in the ontology label them
using a color code
Top N TF-IDF from Wiki Advertising, marketing, brand, television, semiotics,
advertisement, billboard, radio, product, bowl,
sponsor, consumer, advertise, placement, super,
logo, commercial, infomercial
Top N TF-IDF from Wordnet Ad, advertisement, advertizement, advertising,
advertizing, advert, promotion, direct-mail, prview,
advertorial, mailer, newspaper-ad, commercial,
circular, teaser, top-billing
Top N TF-IDF from PW
Category
Proof, persona, stream, replies, authors, say, hello,
ad, brands, social, consumers, advertisers,
audience, ads
Top N TF-IDF Ranked based
on external KB
Advertisers (wiki), Consumers(wiki),
Social(wiki) Brands(wiki), Ads (related), Ad
(related), proof, persona, stream, replies, authors,
say, hello, audience
Top N Significant Phrases
ranked based on external KB
Stream advertising (wiki), social
stream(wiki), say hello, author, replies, google
groups, ober, michaels, proof, erik, michaels,
persona targeting
Example of Property Selection from a
Social Advertising API
LexOnt: A semi-automatic
ontology creation tool
LexOnt Implementation
§  LexOnt is implemented as a Protege plugin to
enhance the user experience of semi-
automated ontology creation
§  Four different Java APIs used for the
implementation
§  Lingpipe API used for the NLP algorithms to
generate TF-IDF terms and Significant Phrases
§  Lucene used for indexing and searching for terms
§  Protege API used for implementing the Protege
plugin GUI
§  OWL-API used for ontology generation code
LexOnt Results
§  Used PW Corpus of ~3000 APIs equalling 250MB data
§  Constructed ontology for 5 categories with following features:
§  Domain specificity
§  A priori knowledge of domain
§  Number of APIs within the domain
§  Tested for four things when evaluating LexOnt
1. The precision/recall of the TF-IDF term and Significant Phrase
generation without external KB information
2. How helpful the external KB was when choosing terms by finding
the percentage of terms used in ontology
3. Whether or not the terms were used in their exact form, similar
form or different forms
4. How quickly an ontology API was constructed by the user
LexOnt Results
1. Precision/Recall tests for terms without taking external KB
into account
n  4% precision
n  28% recall
Results:
Using only TF-IDF/Sig Phrases alone is not good enough to
determine how terms should be used
2. For categories with well-defined Wikipedia pages,
percentage of terms used from external KB was >50%
Results:
Well-defined external KBs made it much easier to quickly assess
distinguishing features of a category
LexOnt Results
Domain Number of
APIs
Specifically
Defined
External KB
A priori
knowledge
of Domain
% terms
used from
External KB
Advertising <100 √ X 50%
Travel <100 √ √ 80%
Real Estate <100 √ X 100%
Social >100 X √ 20%
LexOnt Results
3. Tested to see how these terms were actually assigned
within the instances
n  Compared matches that were exact, similar or completely
different
n  Example: if LexOnt produced a term “mobile” but the actual
ontology assignment was “mobile advertising,” this would count
as a similar match
n  Percentage of equal and similar matches for API instances
averaged over 80%
Results:
n  External KB terms were used over 80% of the time
n  Percentage of different matches was higher when category was
not well-defined such as the Utility category
LexOnt Results
4. Speed of ontology construction
n  Before we had the LexOnt tool, and only worked with generated
TF-IDF/Sig Phrase terms, it took around 15 minutes to construct an
API instance and related feature
n  After the completion of LexOnt, this dropped to 2 minutes.
Results:
n  LexOnt’s user interface and external knowledge base ranking
reduced the time for ontology construction by a factor of 7
Overview
n  Motivation
n  Background
n  Problem
n  Solution
n  Related Work
n  Conclusion & Future Work
Related Work
§  Most related work involves semi-automated ontology
creation for
§  Pure hierarchical ontologies
§  Domains that already have some kind of structural description
§  Machine learning and NLP techniques used
§  On text corpora
§  Alongside existing structured or annotated external knowledge
base
§  The work closest to LexOnt’s
§  Find property relationships between concepts
§  Use unstructured external knowledge bases
Related Work
System Corpus Ontology
Suggestions
External
Knowledge
Text2Onto annotated Probabilistic
Ontology
Models
None
OntoLT rule-based Classes and
properties
None
OntoLearn unstructured Hierarchical
classification
Definitions,
Synonyms
LexOnt unstructured Properties Wikipedia,
Wordnet,
Generated
Ontology
Conclusion
n  LexOnt has shown to be an effective tool for
semi-automated ontology creation
n  From our initial results, we have determined that
using an external knowledge base to filter out
generated terms and phrases
n  Increases the accuracy of the feature selection
n  Helps in understanding the common terms within a
corpus
LexOnt Publications
n  Knarig Arabshian and Peter Danielsen, Ontology-based Faceted Search
Interface for APIs (In Journal Submission).
n  Peter Danielsen and Knarig Arabshian, User Interface Design in Semi-
Automated Ontology Construction, International Conference on Web
Services (ICWS 2013), Santa Clara, CA, June 2013.
n  Knarig Arabshian, Peter Danielsen and Sadia Afroz, LexOnt: Semi-
Automatic ontology Creation Tool for Programmable Web, AAAI 2012
Spring Symposium on Intelligent Web Services Meet Social Computing,
Palo Alto, CA, March 2012.
n  Knarig Arabshian and Peter Danielsen, Semi-automated Ontology
Creation for High-level Service Classification 7th International
Conference on Semantics, Knowledge and Grids (SKG 2011), Beijing,
China, Oct 2011.

More Related Content

PPTX
Ontology
PDF
Lect6-An introduction to ontologies and ontology development
PPTX
Ontology and Ontology Libraries: a critical study
PDF
Application of Ontology in Semantic Information Retrieval by Prof Shahrul Azm...
PDF
Introduction to Ontology Engineering with Fluent Editor 2014
PPT
Ontology Engineering for the Semantic Web and beyond
PPTX
Semantic Web, Ontology, and Ontology Learning: Introduction
Ontology
Lect6-An introduction to ontologies and ontology development
Ontology and Ontology Libraries: a critical study
Application of Ontology in Semantic Information Retrieval by Prof Shahrul Azm...
Introduction to Ontology Engineering with Fluent Editor 2014
Ontology Engineering for the Semantic Web and beyond
Semantic Web, Ontology, and Ontology Learning: Introduction

What's hot (20)

PPTX
Ontology
PDF
Ontology Mapping
PDF
Ontologies and semantic web
PPTX
Ontology development in protégé-آنتولوژی در پروتوغه
PPT
Ontology engineering
PDF
Introduction to Ontology Concepts and Terminology
PPTX
The Standardization of Semantic Web Ontology
PDF
Eswc2012 ss ontologies
PPTX
Ontology mapping for the semantic web
PDF
Ontology and its various aspects
PDF
Ontologies
PDF
Using Text Comprehension Model for Learning Concepts, Context, and Topic of...
PDF
Ontology Engineering: Introduction
PPTX
ONTOLOGY BASED DATA ACCESS
PPTX
Ontology and Ontology Libraries: a Critical Study
PPTX
Information Extraction
DOCX
NE7012- SOCIAL NETWORK ANALYSIS
PPT
Introduction to the Semantic Web
PPT
Accessibility Issues
PPTX
Ontology integration - Heterogeneity, Techniques and more
Ontology
Ontology Mapping
Ontologies and semantic web
Ontology development in protégé-آنتولوژی در پروتوغه
Ontology engineering
Introduction to Ontology Concepts and Terminology
The Standardization of Semantic Web Ontology
Eswc2012 ss ontologies
Ontology mapping for the semantic web
Ontology and its various aspects
Ontologies
Using Text Comprehension Model for Learning Concepts, Context, and Topic of...
Ontology Engineering: Introduction
ONTOLOGY BASED DATA ACCESS
Ontology and Ontology Libraries: a Critical Study
Information Extraction
NE7012- SOCIAL NETWORK ANALYSIS
Introduction to the Semantic Web
Accessibility Issues
Ontology integration - Heterogeneity, Techniques and more
Ad

Viewers also liked (20)

PPTX
Faceted Navigation for SEO: Technical Tricks to Boost Your Visibility
PPTX
Faceted navigation webinar
PDF
Test Dependencies and the Future of Build Acceleration
PDF
PPT
Semantic Search Engines
PPT
TwitIE: An Open-Source Information Extraction Pipeline for Microblog Text
PPTX
Adding Semantic Edge to Your Content – From Authoring to Delivery
PPTX
Intriduction to Ontotext's KIM platform
PDF
Ontological approach for improving semantic web search results
PPTX
A Taxonomy of Semantic Web data Retrieval Techniques
PPTX
Extending facet search to the general web
PDF
Faceted Navigation
PPTX
In Search of a Semantic Book Search Engine: Are We There Yet?
PPTX
Keystone Summer School 2015: Mauro Dragoni, Ontologies For Information Retrieval
PDF
Semantics And Search
PDF
Semantic data mining: an ontology based approach
PDF
Text Analysis and Semantic Search with GATE
PDF
Semantic security framework and context-aware role-based access control ontol...
PPTX
Semantic Search at Yahoo
Faceted Navigation for SEO: Technical Tricks to Boost Your Visibility
Faceted navigation webinar
Test Dependencies and the Future of Build Acceleration
Semantic Search Engines
TwitIE: An Open-Source Information Extraction Pipeline for Microblog Text
Adding Semantic Edge to Your Content – From Authoring to Delivery
Intriduction to Ontotext's KIM platform
Ontological approach for improving semantic web search results
A Taxonomy of Semantic Web data Retrieval Techniques
Extending facet search to the general web
Faceted Navigation
In Search of a Semantic Book Search Engine: Are We There Yet?
Keystone Summer School 2015: Mauro Dragoni, Ontologies For Information Retrieval
Semantics And Search
Semantic data mining: an ontology based approach
Text Analysis and Semantic Search with GATE
Semantic security framework and context-aware role-based access control ontol...
Semantic Search at Yahoo
Ad

Similar to Ontology-based Classification and Faceted Search Interface for APIs (20)

PPT
Intelligent expert systems for location planning
PPTX
Semantic mark-up with schema.org: helping search engines understand the Web
PPTX
Semtech bizsemanticsearchtutorial
PDF
Ak4301197200
PDF
Ontological approach for improving semantic web search results
PPTX
Semantic Web: introduction & overview
PPTX
Jim Hendler's Presentation at SSSW 2011
PPT
A review of the state of the art in Machine Learning on the Semantic Web
PDF
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
PPTX
(Keynote) Peter Mika - “Making the Web Searchable”
PPTX
Making the Web Searchable - Keynote ICWE 2015
PDF
G Antoniou Frank Van Harmelen A Semantic Web Primer
PPTX
The Evolving Semantic Web
PDF
Semantic Web Services Theory Tools And Applications Jorge Cardoso
PPT
Semantic Web: Technolgies and Applications for Real-World
PDF
Semantic Web: Ontology Engineering Presentation
PDF
How to model digital objects within the semantic web
PPTX
Web 3 final(1)
PDF
Ijarcet vol-2-issue-2-676-678
PPTX
Making things findable
Intelligent expert systems for location planning
Semantic mark-up with schema.org: helping search engines understand the Web
Semtech bizsemanticsearchtutorial
Ak4301197200
Ontological approach for improving semantic web search results
Semantic Web: introduction & overview
Jim Hendler's Presentation at SSSW 2011
A review of the state of the art in Machine Learning on the Semantic Web
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
(Keynote) Peter Mika - “Making the Web Searchable”
Making the Web Searchable - Keynote ICWE 2015
G Antoniou Frank Van Harmelen A Semantic Web Primer
The Evolving Semantic Web
Semantic Web Services Theory Tools And Applications Jorge Cardoso
Semantic Web: Technolgies and Applications for Real-World
Semantic Web: Ontology Engineering Presentation
How to model digital objects within the semantic web
Web 3 final(1)
Ijarcet vol-2-issue-2-676-678
Making things findable

More from New York City College of Technology Computer Systems Technology Colloquium (9)

PDF
Towards Improving Interface Modularity in Legacy Java Software Through Automa...
PDF
Data-driven, Interactive Scientific Articles in a Collaborative Environment w...
PPTX
Pharmacology Powered by Computational Analysis: Predicting Cardiotoxicity of ...
PPTX
How We Use Functional Programming to Find the Bad Guys
Towards Improving Interface Modularity in Legacy Java Software Through Automa...
Data-driven, Interactive Scientific Articles in a Collaborative Environment w...
Pharmacology Powered by Computational Analysis: Predicting Cardiotoxicity of ...
How We Use Functional Programming to Find the Bad Guys

Recently uploaded (20)

PDF
Audit Checklist Design Aligning with ISO, IATF, and Industry Standards — Omne...
PDF
2025 Textile ERP Trends: SAP, Odoo & Oracle
PPTX
Introduction to Artificial Intelligence
PPTX
Transform Your Business with a Software ERP System
PPTX
Reimagine Home Health with the Power of Agentic AI​
PDF
Digital Strategies for Manufacturing Companies
PDF
top salesforce developer skills in 2025.pdf
PPTX
Operating system designcfffgfgggggggvggggggggg
PDF
Design an Analysis of Algorithms II-SECS-1021-03
PDF
Claude Code: Everyone is a 10x Developer - A Comprehensive AI-Powered CLI Tool
PPTX
L1 - Introduction to python Backend.pptx
PPTX
VVF-Customer-Presentation2025-Ver1.9.pptx
PDF
Flood Susceptibility Mapping Using Image-Based 2D-CNN Deep Learnin. Overview ...
PPTX
Agentic AI Use Case- Contract Lifecycle Management (CLM).pptx
PDF
Internet Downloader Manager (IDM) Crack 6.42 Build 41
PDF
Addressing The Cult of Project Management Tools-Why Disconnected Work is Hold...
PDF
Raksha Bandhan Grocery Pricing Trends in India 2025.pdf
PDF
How to Choose the Right IT Partner for Your Business in Malaysia
PDF
Understanding Forklifts - TECH EHS Solution
PDF
AI in Product Development-omnex systems
Audit Checklist Design Aligning with ISO, IATF, and Industry Standards — Omne...
2025 Textile ERP Trends: SAP, Odoo & Oracle
Introduction to Artificial Intelligence
Transform Your Business with a Software ERP System
Reimagine Home Health with the Power of Agentic AI​
Digital Strategies for Manufacturing Companies
top salesforce developer skills in 2025.pdf
Operating system designcfffgfgggggggvggggggggg
Design an Analysis of Algorithms II-SECS-1021-03
Claude Code: Everyone is a 10x Developer - A Comprehensive AI-Powered CLI Tool
L1 - Introduction to python Backend.pptx
VVF-Customer-Presentation2025-Ver1.9.pptx
Flood Susceptibility Mapping Using Image-Based 2D-CNN Deep Learnin. Overview ...
Agentic AI Use Case- Contract Lifecycle Management (CLM).pptx
Internet Downloader Manager (IDM) Crack 6.42 Build 41
Addressing The Cult of Project Management Tools-Why Disconnected Work is Hold...
Raksha Bandhan Grocery Pricing Trends in India 2025.pdf
How to Choose the Right IT Partner for Your Business in Malaysia
Understanding Forklifts - TECH EHS Solution
AI in Product Development-omnex systems

Ontology-based Classification and Faceted Search Interface for APIs

  • 1. Ontology-based Classification and Faceted Search Interface for APIs Knarig Arabshian, PhD knarig@gmail.com
  • 2. Overview n  Motivation n  Background n  Problem n  Solution n  Related Work n  Conclusion & Future Work
  • 3. Motivation n  Most of today’s Web content is suitable for human consumption n  Humans are left with the work of gathering information from various websites n  Web content is heterogeneous with little or no structure n  Data is not easily shared between web content providers
  • 4. Travel Example Use services to manually search for airfares, car rentals and hotels Or search with aggregating services Use services to help plan travel itinerary and provide information on local sites such as weather, events, or attractions Use services that also provide you with helpful customer reviews
  • 5. Semantic Web Vision n  Web information can be processed by computers n  Computers can integrate information from the web “A web of data that can be processed directly and indirectly by computers” ~Tim Berners-Lee (Inventor of WWW)
  • 6. Quest for Semantics Three main goals of the Semantic Web: 1. Building models: describe the world in abstract terms to allow for an easier understanding of complex reality 2. Computing with knowledge: constructing reasoning machines that can draw meaningful conclusions from encoded knowledge 3. Exchanging Information: distribute, interlink, and reconcile knowledge on a global scale
  • 7. Planning Booking Reviews Travel Airline Tickets Car Rental Hotels Using structured data, computers can aggregate information and customize it for the user Travel ontology describes and classifies travel services
  • 8. Motivation §  We can see similar problems when it comes to API discovery on the Web §  Discovering an API requires searching through a large number of services on the Internet §  Reading pages of documentation to figure out how to use the ones that may match your application §  Example: ProgrammableWeb (PW) §  De facto API directory with over 14,000 APIs §  Contains over 50 categories of services §  API providers register their APIs in PW §  Each API is manually categorized in a single category by PW team
  • 10. Current state of PW Current classification is a flat categorization of high-level service classes without any refinement between common attributes Needs a better method for API discovery
  • 11. Example: Search for Social Advertising APIs in PW
  • 12. Example: Search for Social Advertising APIs in PW
  • 13. Example: Search for Social Advertising APIs in the Advertising Category Search for ‘social’ and ‘advertising’ keywords in Advertising Category Results in 7 APIs
  • 14. Example: Search for Social Advertising APIs in the Social Category Search for ‘social’ and ‘advertising’ keywords in Social Category Results in 2 APIs
  • 15. What is needed? A common data model has to be provided such as an ontology in order to classify terms and represent knowledge Definition: A formal, explicit specification of a shared conceptualization ~ Tom Gruber
  • 16. Overview n  Motivation n  Background n  Problem n  Solution n  Related Work n  Conclusion & Future Work
  • 17. Ontology §  OWL (Web Ontology Language): Approved standard by W3C §  Characteristics of ontologies §  Classes: set of resources §  Instances: ground level objects §  Properties: relationships between classes §  First order logic axioms §  Class relationships such as disjointness, equivalence, subsumption §  Restrictions on properties such as existential, universal, cardinality
  • 18. Ontology Benefits n  Standard way of describing the world both in terms of language and meaning n  Easily sharable across domains n  Machine readable n  Reasoning n  Provide complex class relationships such as disjointness, union, intersection besides pure hierarchy n  Description logic reasoners automatically derive new information and classify data n  Automated classification can be very useful for dynamic data that is continually updated
  • 19. Ontology vs Relational Database n  Similarities n  Both use a model to identify common classes and properties n  ER model can be seen as a simple hierarchical ontology n  Differences n  Ontologies are broader in scope (rules, incomplete knowledge) n  Ontologies provide a way for automated reasoning to occur in order to discover new relationships between entities
  • 20. Example: Reasoning with a Restaurant Ontology Import class Cuisine Create a restaurant classification based on cuisine by setting a restriction on the hasCuisine property
  • 21. Example: Reasoning with a Restaurant Ontology Since ChineseCuisine has non-disjoint siblings JapaneseCuisine and KoreanCuisine then also conclude that these are similar to ChineseCuisine
  • 22. Example: Reasoning with a Restaurant Ontology
  • 23. Example: Reasoning with a Restaurant Ontology Run Reasoner for Automated Classification Conclude that NewClass is equivalent to ChineseRestaurant EQUIVALENT
  • 24. Overview n  Motivation n  Background n  Problem n  Solution n  Related Work n  Conclusion & Future Work
  • 25. Problem §  Problem: §  Improve API discovery and classification in Programmable Web by providing a common data model such as an ontology in order to automatically classify terms and perform semantic API searches §  Main Challenges: §  Define high-level semantic descriptions of Programmable Web services §  Combine manual and automated data mining techniques to create an ontology description of existing Programmable Web services §  Implement system that makes use of the ontology, such as front-end user interface
  • 26. What will improve? §  Given a PW ontology, the system will: §  Automatically classify existing API instances within this ontology §  Create an ontology-based user-interface for automatic registration and querying §  API providers will be able to register their services via this interface §  Users will be able to discover services with semantic queries §  Example: §  Find me an advertising service for social networks §  Find me a social networking service for book sharing
  • 27. What do we need? PW Service Classes Properties Feature Classes API Individuals AutomatedClassification PW Service Classes hasFeature <140Proof, hasFeature, Advertising_Feature> <140Proof, hasFeature, Social_Feature> Advertising_Service Social_Service Advertising_Feature Social_Feature Advertising_Service Social_Service <BadgeVille, hasFeature, Advertising_Feature> <BadgeVille, hasFeature, Social_Feature> Refinement properties for a given PW Category to enable automatic classification
  • 28. Example: Ontology for Feature Class
  • 30. Current PW Classification VideoAdvertising Social Photo PW Services Travel
  • 31. Video Improved PW Classification using an OWL Ontology Advertising Social Photo PW Services VideoSocial PhotoSocial TravelSocial Travel AdvertisingSocial APIs that have attributes belonging in more than one category will automatically be classified
  • 32. Current PW Search Interface
  • 33. APIBrowse: Improved Faceted Search Interface Given the PW ontology, automatically generate a faceted search interface by integrating it with a search platform such as SOLR
  • 34. APIBrowse: Improved Faceted Search Interface
  • 37. Overview n  Motivation n  Background n  Problem n  Solution n  Related Work n  Conclusion & Future Work
  • 38. LexOnt: A semi-automatic ontology creation tool §  A semi-automatic ontology creation tool that uses the Programmable Web as its corpus §  Suggest high-level property terms for a given service class which distinguish it from the rest of the categories §  Implemented as a Protege plugin, de facto ontology editor, to aid in semi-automated ontology creation §  Contributions: §  Novel algorithm ranks terms and phrases within a PW category as candidate property assignments by comparing them to external domain knowledge within Wikipedia, Wordnet and the current state of the ontology §  Can be used even if the ontology engineer is not necessarily an expert of a certain domain
  • 39. LexOnt Algorithms Well-known NLP algorithms used to find terms and phrases §  TF-IDF: Text frequency-inverse document frequency §  Score of a word in the document shows how important the word is §  Importance of a word depends on how frequently the word has been used in the document vs. all the documents in the corpus §  Significant Phrases: §  Chi-square test used to calculate the significance of collocated words §  Two-phase process: §  Determine collocations and terms that appear together §  Filter out unique collocations from the list §  Gave a very good indication of high-level property descriptions
  • 40. LexOnt Algorithms Novel algorithm uses external resources like Wikipedia, Wordnet and the constructed ontology to highlight the important terms even more §  Useful for those who are not domain experts but want to understand what the relevant terms of a domain are §  Algorithm for using the External Knowledge Base §  Extract Wikipedia page for each category and rank top words with TF-IDF §  If a word or phrase in the API contains any of the top Wikipedia words, label it §  Find synonymous or related terms to the list of generated terms using Wordnet §  If a word or phrase in the API contains any of the related terms label them §  If any of the generated terms lexically match terms in the ontology label them using a color code
  • 41. Top N TF-IDF from Wiki Advertising, marketing, brand, television, semiotics, advertisement, billboard, radio, product, bowl, sponsor, consumer, advertise, placement, super, logo, commercial, infomercial Top N TF-IDF from Wordnet Ad, advertisement, advertizement, advertising, advertizing, advert, promotion, direct-mail, prview, advertorial, mailer, newspaper-ad, commercial, circular, teaser, top-billing Top N TF-IDF from PW Category Proof, persona, stream, replies, authors, say, hello, ad, brands, social, consumers, advertisers, audience, ads Top N TF-IDF Ranked based on external KB Advertisers (wiki), Consumers(wiki), Social(wiki) Brands(wiki), Ads (related), Ad (related), proof, persona, stream, replies, authors, say, hello, audience Top N Significant Phrases ranked based on external KB Stream advertising (wiki), social stream(wiki), say hello, author, replies, google groups, ober, michaels, proof, erik, michaels, persona targeting Example of Property Selection from a Social Advertising API
  • 43. LexOnt Implementation §  LexOnt is implemented as a Protege plugin to enhance the user experience of semi- automated ontology creation §  Four different Java APIs used for the implementation §  Lingpipe API used for the NLP algorithms to generate TF-IDF terms and Significant Phrases §  Lucene used for indexing and searching for terms §  Protege API used for implementing the Protege plugin GUI §  OWL-API used for ontology generation code
  • 44. LexOnt Results §  Used PW Corpus of ~3000 APIs equalling 250MB data §  Constructed ontology for 5 categories with following features: §  Domain specificity §  A priori knowledge of domain §  Number of APIs within the domain §  Tested for four things when evaluating LexOnt 1. The precision/recall of the TF-IDF term and Significant Phrase generation without external KB information 2. How helpful the external KB was when choosing terms by finding the percentage of terms used in ontology 3. Whether or not the terms were used in their exact form, similar form or different forms 4. How quickly an ontology API was constructed by the user
  • 45. LexOnt Results 1. Precision/Recall tests for terms without taking external KB into account n  4% precision n  28% recall Results: Using only TF-IDF/Sig Phrases alone is not good enough to determine how terms should be used 2. For categories with well-defined Wikipedia pages, percentage of terms used from external KB was >50% Results: Well-defined external KBs made it much easier to quickly assess distinguishing features of a category
  • 46. LexOnt Results Domain Number of APIs Specifically Defined External KB A priori knowledge of Domain % terms used from External KB Advertising <100 √ X 50% Travel <100 √ √ 80% Real Estate <100 √ X 100% Social >100 X √ 20%
  • 47. LexOnt Results 3. Tested to see how these terms were actually assigned within the instances n  Compared matches that were exact, similar or completely different n  Example: if LexOnt produced a term “mobile” but the actual ontology assignment was “mobile advertising,” this would count as a similar match n  Percentage of equal and similar matches for API instances averaged over 80% Results: n  External KB terms were used over 80% of the time n  Percentage of different matches was higher when category was not well-defined such as the Utility category
  • 48. LexOnt Results 4. Speed of ontology construction n  Before we had the LexOnt tool, and only worked with generated TF-IDF/Sig Phrase terms, it took around 15 minutes to construct an API instance and related feature n  After the completion of LexOnt, this dropped to 2 minutes. Results: n  LexOnt’s user interface and external knowledge base ranking reduced the time for ontology construction by a factor of 7
  • 49. Overview n  Motivation n  Background n  Problem n  Solution n  Related Work n  Conclusion & Future Work
  • 50. Related Work §  Most related work involves semi-automated ontology creation for §  Pure hierarchical ontologies §  Domains that already have some kind of structural description §  Machine learning and NLP techniques used §  On text corpora §  Alongside existing structured or annotated external knowledge base §  The work closest to LexOnt’s §  Find property relationships between concepts §  Use unstructured external knowledge bases
  • 51. Related Work System Corpus Ontology Suggestions External Knowledge Text2Onto annotated Probabilistic Ontology Models None OntoLT rule-based Classes and properties None OntoLearn unstructured Hierarchical classification Definitions, Synonyms LexOnt unstructured Properties Wikipedia, Wordnet, Generated Ontology
  • 52. Conclusion n  LexOnt has shown to be an effective tool for semi-automated ontology creation n  From our initial results, we have determined that using an external knowledge base to filter out generated terms and phrases n  Increases the accuracy of the feature selection n  Helps in understanding the common terms within a corpus
  • 53. LexOnt Publications n  Knarig Arabshian and Peter Danielsen, Ontology-based Faceted Search Interface for APIs (In Journal Submission). n  Peter Danielsen and Knarig Arabshian, User Interface Design in Semi- Automated Ontology Construction, International Conference on Web Services (ICWS 2013), Santa Clara, CA, June 2013. n  Knarig Arabshian, Peter Danielsen and Sadia Afroz, LexOnt: Semi- Automatic ontology Creation Tool for Programmable Web, AAAI 2012 Spring Symposium on Intelligent Web Services Meet Social Computing, Palo Alto, CA, March 2012. n  Knarig Arabshian and Peter Danielsen, Semi-automated Ontology Creation for High-level Service Classification 7th International Conference on Semantics, Knowledge and Grids (SKG 2011), Beijing, China, Oct 2011.