=Paper=
{{Paper
|id=Vol-239/paper-4
|storemode=property
|title=The Virtual Query Language for Information Retrieval in the SemanticLIFE Framework
|pdfUrl=https://ceur-ws.org/Vol-239/paper4.pdf
|volume=Vol-239
|dblpUrl=https://dblp.org/rec/conf/caise/HoangT06
}}
==The Virtual Query Language for Information Retrieval in the SemanticLIFE Framework==
https://ceur-ws.org/Vol-239/paper4.pdf
1062 Web Information Systems Modeling
The Virtual Query Language for Information
Retrieval in the SemanticLIFE Framework?
Hanh Huu Hoang and A Min Tjoa
Institute of Software Technology and Interactive Systems
Vienna University of Technology
Favoritenstraße 9-11/188
A-1040 Vienna, Austria
+43 1 58801 18861
{hanh, tjoa}@ifs.tuwien.ac.at
Abstract. Creating an innovative mediator environment such as graph-
ical user interfaces, lighter weight languages to help the users in the chal-
lenging task of making unambiguous requests is crucial in semantic web
applications. The query language in the Virtual Query System (VQS) of
the SemanticLIFE framework is designed for this purpose. The proposed
query language namely Virtual Query Language (VQL) is in a further
effort of reducing complexity in query making from the user-side, as well
as, simplifying the communication for components of the SemanticLIFE
system with the VQS, and increasing the portability of the system.
1 Motivation
Making unambiguous queries in the Semantic Web applications is a challeng-
ing task for users. The Virtual Query System (VQS) [7] of the SemanticLIFE
framework [1] is an attempt to overcome this challenge. The VQS is a front-end
approach for user-oriented information retrieval.
The issue is in the user-side, where users are required to make queries for
their information of interest. The RDF query languages are powerful but they
seem to be used for back-end querying mechanisms. To users, who are inexperi-
enced with them, these query languages are too complicated to use. Additionally,
the communication of components of the SemanticLIFE system with the VQS
requires the facility to transfer their requests without knowledge of the RDF
query language. Another important point is the portability of the system, i.e. if
the system is bound to specific RDF query language, we could have problems
when shifting to another one.
In the effort of coming over the above tackles, we, in this paper, present a
new query language namely Virtual Query Language (VQL). The language is
used by the VQS for information querying in the SemanticLIFE system. The
?
This work has been generously supported by ASEA-UNINET and the Austrian
National Bank within the framework of the project Application of Semantic-Web-
Concepts for Business Intelligence Information Systems - Project No. 11284.
WISM'06 1063
VQL is a much lighter weight language than RDF query languages; but it offers
interesting features to complete the tasks of information querying in the Semantic
Web applications.
The rest of this paper is organized as follows: firstly, similar approaches is
briefly presented in Section 2. Next, details of the VQL are pointed out in Sec-
tion 3. Section 4 introduces VQL query operators; and the issues of mapping a
VQL query to the respective RDF query are then described in Section 5. Finally,
the paper is concluded with a sketch of the future work.
2 Related Work
There are two main approaches to reduce the difficulty in creating queries from
user-side in Semantic Web applications. The first trend is going to design the
friendly and interactive query user interfaces to guide users in making the queries.
The high-profiled examples for this trend are GRQL [2] and SEWASIE [4].
GRQL - Graphical RQL - relies on the full power of the RDF/S data model
for constructing on the fly queries expressed in RQL [8]. More precisely, a user
can navigate graphically through the individual RDF/S class and property defi-
nitions and generate transparently the RQL path expressions required to access
the resources of interest. These expressions capture accurately the meaning of
its navigation steps through the class (or property) subsumption and/or as-
sociations. Additionally, users can enrich the generated queries with filtering
conditions on the attributes of the currently visited class while they can easily
specify the resource’s class(es) appearing in the query result.
Another graphical query generation interface, SEWASIE, is described in [4].
Here, the user is given some pre-prepared domain-specific patterns to choose
from as a starting point, which he can then extend and customize. The refine-
ments to the query can either be additional property constraints to the classes
or a replacement of another compatible class in the pattern such as a sub or
superclass. This is performed through a clickable graphic visualization of the
ontology neighbourhood of the currently selected class.
The second approach of reducing complexity is the effort in creating much
lighter query languages than expressive RDF query languages. Following this
trend, the approach in [6] and another one known as GetData Query interface [10]
are hight-rate examples.
[6] describes an a simple expressive constraint language for Semantic Web
applications. At the core of this framework is a well-established semantic data
model with an associated expressive constraint language. The framework defines
a ‘Constraint Interchange Format’ in form of RDF for the language, allowing
each constraint to be defined as a resource in its own right.
Meanwhile, the approach of GetData Query interface [10] of TAP1 expresses
the need of a much lighter weight interface for constructing complex queries. The
reason is that the current query languages for RDF, DAML, and more generally
1
TAP Infrastructure, http://tap.stanford.edu/.
1064 Web Information Systems Modeling
for semi-structured data provide very expressive mechanisms that are aimed at
making it easy to express complex queries. The idea of GetData is to design
a simple query interface which enables to network accessible data presented as
directed labeled graph. This approach provides a system which is very easy to
build, support both type of users, data providers and data consumers.
Our approach, VQL, continues this trend to design an effective and lighter
weight query language to assist the users make queries in simple manner and
simplify the communication between components of the SemanticLIFE system
with the query module - the VQS.
3 The Virtual Query Language - VQL
3.1 The Goals of the VQL
A number query languages have been developed for the Semantic Web data such
as data in form of RDF (RQL [8], RDQL [11], SPARQL [9], and iTQL [12]). Why
do we need yet another query language?
These query languages all provide very expressive mechanisms that are aimed
at making it easy to express complex queries. Unfortunately, with such expressive
query languages, it is not easy to construct queries to normal users as well as to
ask abstract information. What we need is a much lighter weight query language
that is easier to use. A simple lightweight query system would be complementary
to more complete query languages mentioned above. VQL is intended to be a
simple query language which supports “semantic” manner from users’ queries.
In the context of the VQS and SemanticLIFE system, we can see the aims of
VQL as follows:
- VQL helps clients making queries without knowledge of RDF query lan-
guages. The user just gives basic parameters of needed information in VQL
queries, and would receive the expecting results.
- VQL assists users in navigating the system via semantic links or associations
provided in the powerful query operators based on ontologies.
- VQL simplifies the communication between Query module and other parts.
Since the components asking for information do not need to issues the RDF
query statement, which is uneasy task for them. As well as this feature keeps
the SemanticLIFE’s components more independent.
- VQL enables the portability of the system. Actually, the SemanticLIFE
and VQS choose a specific RDF query language for the its back-end database.
However, in the future, they probably could be shifted to another query language,
so that this change does not effect other parts of the systems, especially the
interface of the system database.
3.2 The Syntax of VQL
Query Document Syntax. Generally, a VQL query is a document having
four parts: parameters, data sources, constraints, and query results format as
the schema depicted in Fig. 1.
WISM'06 1065
Fig. 1. The schema for general VQL queries
The first part contains parameters of specifying the information of interest.
A parameter consists of a variable name, the criteria value, and additional at-
tributes for sorting or eliminating unneeded information from the results. The
second part is used for specifying the sources where the information will be re-
ferred to extract from. Obviously, the information need defined in the first part
must be related to the sources specified in this part.
Thirdly, the constraints of the query are defined in the third part of the
document. Here the relations between sources, parameters are combined using
the VQL operators. Finally, the format of query results is identified in the fourth
part. VQL supports four query results formats that are XML, text, RDF graph,
and serialized objects of query result sets. This provides flexibility for clients to
process the query results.
XML-based Format. A standard format for information exchange, a easy-
to-use and familiar-to-clients format, a widely accepted standard, and a flexible
and open format are the requirements for the VQL query document. We have
considered some alternatives and decided to choose XML as the format for VQL
query syntax. A XML-based VQL query is structured as follow (Fig. 2):
- The top level or the body of query is element. Here, the type of
the query must be specified in type attribute. The reserved terms used for this
attribute are "data", "schema", "itql1" and "itql2" for different VQL query
types (see section 3.4). For example, is a VQL data query.
- The second level contains required sub-elements. Depending on the type of
a VQL query the elements are used respectively: for the data query, elements of
1066 Web Information Systems Modeling
Fig. 2. An XML-based VQL Query Example
, , and are used once for each. These elements
have their children specified in the third level. Fig. 2 is an example. For the
schema query or the iTQL type 1 query, we use only one element
which contains a RDF query statement (Fig. 3). For the iTQL2 query, elements
of