Implementation and experimental evaluation
A prototype of SemSearch has been implemented, which uses Sesame and
Sesame provides a query language and a query engine for semantic data
sented in RDF. Lucene provides a fast text search engine, which is used
the semantic entity index engine and the semantic entity search engine
in the Text Search Layer of SemSearch.
The prototype has been applied to the semantic web portal of our lab.
ure 5 shows a screenshot of the search results of the query example
students. As described earlier, the search engine not only gives back
tion that the user is looking for but also gives back explanations,
the search results much more understandable than those in state-of-art
The search results are ranked according to their closeness to the
keywords. The search engine takes two factors into consideration when
One is the matching distance between each keyword and its semantic
The other is the number of keywords the search results satisfy. The
gine also provides support for search reﬁnement. It provides a web form
the user to choose the meaning of the keywords and thus supports the
reformulating a better search.
To assess the performance of the semantic search engine, we carried out
an initial study in the context of the KMi semantic web portal. We used
questions that were gathered to evaluate AquaLog (a question answering
Fig. 4. A fragment of Java code for SeRQL query construction.
developed in our lab) as the basis for experimental evaluation. Several
formulations of each search were attempted if necessary. For each
assigned a score that describes the performance of the search engine: i)
0 - no
result; ii) 1 - could get a result with heavy analysis; iii) 2 - could
get a result
with moderate analysis; and iv) 3 - good result.
Taking into account only the questions for which an answer is possible,
average score was 2.1. The performance scores are only a qualitative
of how we felt the system answered the questions so these results are
However, based on these rudimentary performance measures the semantic
is answering questions reasonably well where data is available. In
SemSearch was able to answer a high proportion of the questions despite
simplicity. It is intuitive and simple to learn. The user doesn’t need
to have a
full grasp of the ontology to get started (though they need to know
This is an aﬀordance of the way that results are presented in the
a way that informs the user about the terms in the ontology. That
can be used to help with search reﬁnement. For example, the user might
remember relations like “generic-area-of-interest” but might remember
A Search Engine for the Semantic Web 15
Fig. 5. A screenshot of the search results of the query example news:phd
word “area” is involved in a lot of relations about research topics and
through the output of a search just for “area” can gather the
information on the
ontology vocabulary needed to formulate a better one.