![](bg2.png)
Section 4 talks about our proposed Semantic Search
Engine Aragog’s architecture. Section 5 explains the
algorithms and the heuristics used in the various
modules. Section 6 discusses the results of our
implementation of Aragog. Finally we conclude our
work and follow that up with the future work that
can be done on this engine to enhance its
capabilities.
2 PREVIOUS WORKS
The architecture for a semantic search engine was
proposed in (Qazi Mudassar Ilyas, et al., 2004).
However, this architecture proposes a two level
interaction with the user whereby the user needs to
separately mention both the search query and the
domain in which the searching shall be performed.
Another important work in this field is (Li Ding,
et al., 2004). It is a working implementation but it
does not incorporate searching according to
semantics. It restricts itself to keyword searching in
the semantic web documents.
(Lee & Tsai, 2001) define the Lee’s Model
which uses a matching algorithm to reflect the
semantic similarity of web page content but it is
unable to do the same completely. Thus, it is not
possible to satisfy user queries’ to an appreciable
extent.
This all reveals that semantic search engines are
still far away from reality and a better solution needs
to be found out.
3 MOTIVATION
Aragog has been conceived and developed with the
following motivations:
1) A Semantic Search Engine should minimize on
the number of user interaction levels for better
usability. For a particular query, the domain in
which the search is to be performed should be
deduced automatically. This will bring the
Semantic Search Engine at par with the existing
keyword based search engine.
2) Synonyms of the keywords should be considered
while deriving the semantics of query. Synonyms
should be handled in the sense that for a given
query, the results of all synonymous queries
should also be displayed.
3) Apart from web resources results, a semantic
search engine should also provide the user with
the exact answer of the query. This would make
it a search engine cum answering agent.
4) The query result display should enhance the user
experience. This should include ranking amongst
the domains and also, ranking within an
individual domain. Along with this, relevant text
from the web documents should also be
displayed to the user.
4 PROPOSED ARCHITECTURE
FOR ARAGOG
As discussed in the previous section, the motivation
for building Aragog has come from various
shortcomings and limitations with other existing
semantic search engines. The proposed architecture
of Aragog has been shown in Figure 1.
This architecture supports various features such
as ontology ranking, synonym handling, semantic
answer finder etc. The various modules are
described below:
Query Preprocessor: This is the module which
interacts directly with the user. The query
preprocessor is responsible for accepting a query
from the user. An acceptance list for this is
maintained in a relational database and contains
entries for tokens for which corresponding concepts
exist in the ontology collections. The user’s query
tokens are verified with the acceptance list and only
the tokens which are found in the acceptance list are
accepted. Remaining are rejected by the
preprocessor. This helps in rejecting helping verbs
such as ‘is’, ‘am’, ‘are’ etc. The acceptance list is
created/maintained/updated by the Ontology
Crawler Module discussed later.
This module also takes care of the scenario when a
user query contains similar meaning tokens. For
example if the query posed by a user is “maximum
highest score of Sachin Tendulkar in Test”. Here, the
concepts ‘maximum’ and ‘highest’ both correspond
to the same meaning. Hence, redundancy is there in
the tokens. The query preprocessor also removes the
similar meaning tokens to avoid complexity and
inefficiency that may occur at a later stage. This
module also provides features such as support for
double quotes in queries.
Ontology Ranker: This module is a major
improvement over the previously proposed versions.
An ontology ranker understands the user’s query’s
context and finds the ontologies which contain the
desired concepts. Apart from finding the relevant
ontologies, this module also ranks the ontologies for
KEOD 2009 - International Conference on Knowledge Engineering and Ontology Development
22