Knarig Arabshian

"Many of life's failures are people who did not realize how close they were to success when they gave up.
~ Thomas A. Edison

Ontology-based Service Discovery

This domain explores the creation of personalized services for a user based on a user's context. Web service mashups are the recent trend on the Internet and allow users to create their personal web space from different types of sources such as social networks, RSS Feeds, or Flickr. A user is able to filter tailored information on a personal page to view and share with others. The proliferation of services creates the problem of performing more sophisticated query matching, such as allowing one to query for a combination of different services in a single search. We are establishing a framework where mashup applications can be generated for specific users based on their context.

We are doing research in the following areas in order to accomplish this: 1) Service Description: design and implementation of a semi-automatic ontology creation tool that creates a high-level ontology description of services in the Programmable Web directory; 2) Service Discovery: creating an ontology-based query interface to Programmable Web for semantically enhanced querying; 3) Service Composition: incorporating a rule-based context-aware front-end system that maps user-based rules to service composition templates.

LexOnt: A Semi-automatic Ontology Creation Tool for Programmable Web

My colleague, Peter Danielsen, and I have been working on creating an ontology for the Programmable Web directory. My idea for this project was to represent the web services in the programmable web directory using an ontology in order to classify them. The PW repository is not organized well and it is hard to figure out what API to use for a specific application or for a mashup. The categorization right now is rather flat. It only has descriptions of high-level categories, which results in users having to sift through a number of APIs before knowing which ones to use. We're looking at finding a better way of classifying the services so that they can be discovered using a semantic query interface and hopefully filtering out the results to specific ones relevant to the user. The practical benefits of this would be to improve the registration/query interface to Programmable Web as well as to populate the GloServ directory with these services and see what type of mashups or service composition templates can be formed. I like to create a playground for real services and start implementing prototypes for concrete use cases. With this goal in mind, we ran into a research problem of finding a semi-automatic way to create a high-level service ontology for the PW directory and developed LexOnt.

LexOnt is a semi-automatic ontology creation tool for a high-level service classification ontology. The goal of LexOnt is to allow a user to create a domain ontology by suggesting terms and phrases from a corpus. Given a certain domain, LexOnt ranks the data by comparing it to external knowledge bases such as Wikipedia or Wordnet. This allows a user to create an ontology of a domain even if he may not be very familiar with the domain because the terms that are being suggested are common terms that are being compared to external knowledge bases.

We use the PW directory as the corpus, although it may be used for other corpuses as well. The main contribution of LexOnt is its novel algorithm which generates and ranks frequent terms and significant phrases within a PW category by comparing them to external domain knowledge within Wikipedia, Wordnet and the current state of the ontology. First it matches terms to the Wikipedia page description of the category and ranks them higher, since these indicate domain descriptive words. Synonymous words from Wordnet are then matched and ranked. In a semi-automated process, the user chooses the terms it wants to add to the ontology and indicates the properties to assign these values to and the ontology is automatically generated. In the next iteration, terms within the current state of the ontology are compared to terms in the other categories and automatic property assignments are made for these API instances as well.

We have created a demo video of how LexOnt works which you can take a look at here.