Sewelis (aka. Camelis 2) - a LIS for the Semantic Web
Sewelis (pronounce seh-weh-lis) stands for SEmantic WEb Logical Information System.
Faceted search and querying are the two main paradigms to search the Semantic Web. Querying languages, such as SPARQL, offer expressive means for searching knowledge bases, but they are difficult to use. Query assistants help users to write well-formed queries, but they do not prevent empty results. Faceted search supports exploratory search, i.e., guided navigation that returns rich feedbacks to users, and prevents them to fall in dead-ends (empty results). However, faceted search systems do not offer the same expressiveness as query languages. We introduce query-based semantic faceted search, the combination of an expressive query language and faceted search to reconcile the two paradigms. The query language covers most of SPARQL, but with a syntax that better fits in a faceted search interface. A prototype, Sewelis (aka. Camelis 2), has been implemented, and a usability evaluation demonstrated that semantic faceted search retains the ease-of-use of faceted search, and enables users to build complex queries with little training.
This combination of expressiveness and guided interaction extends to editing, i.e., the production of RDF data. Descriptions of new objects are composed in the same way as queries, except that none of negation, disjunction, and variables are allowed. The important difference with querying is that suggestions to complete the description are not based on the answers to the query, but to existing objects with a similar description.
The LIS approach to browsing, exploring, searching, querying, and editing Semantic Web data offers the following features:
- Compatibility with Semantic Web standards and models
- Complete RDFS inference, and a bit of OWL (owl:TransitiveProperty, owl:SymmetricProperty)
- A query language, LISQL, that covers most of SPARQL (apart from filter primitives so far), with a more concise and uniform syntax inspired by natural language
- A user interface that reconciles faceted search and querying in a consistent way
- Hierarchies of classes, properties, and values (with transitive properties)
- A guided interaction that allows for the step-by-step construction of the most complex queries (including unions, negations, optionals, filters, aggregations)
- No dead-end, and rich feedback at every step for understanding-at-a-glance
- Ordering and aggregation on the table of results for analytical queries
- Assertion and retraction of complex facts with the same language, the same interface, and the same interaction
- Suggestions to complete the description of a new object, according to similar objects in the base (UTILIS)
- Intelligent auto-completion for both querying and editing
- On-the-fly creation of new individuals, classes, and properties, through their label
- One-click definition of labels (rdfs:label) and namespaces for the concise representation of URIs
- Import of data via RDF files or LOD dereferencing (follow-your-nose pattern)
- Sébastien Ferré and Alice Hermann. Reconciling faceted search and query languages for the Semantic Web. Int. J. Metadata, Semantics and Ontologies, 7(1):37-54, 2012.
- Alice Hermann, Sébastien Ferré, and Mireille Ducassé. An Interactive Guidance Process Supporting Consistent Updates of RDFS Graphs. In A. ten Teije et al., editor, Int. Conf. Knowledge Engineering and Knowledge Management (EKAW), LNAI 7603, pages 185-199, 2012. Springer.
- S. Ferré and A. Hermann. Semantic Search: Reconciling Expressive Querying and Exploratory Search. In L. Aroyo and C. Welty, editors, Int. Semantic Web Conf., LNCS 7031, pages 177-192, 2011. Springer.
- S. Ferré, A. Hermann, and M. Ducassé. Semantic Faceted Search: Safe and Expressive Navigation in RDF Graphs. Research Report, IRISA, 2011.
Sewelis is an open source software under GPL license. Its source code is available as a Bitbucket repository. We also provide here the necessary files for playing and experimenting with Sewelis without compilation:
- A Linux executable sewelis (the version that was used for the screencasts is here). A file path (without extension) must be passed as a command line argument. This file (created with extension .log) is used to record the history of updates made by the user, so that it can be replayed in a latter session.
- A RDF file filmsDPpedia.rdf about 120 films extracted from DBpedia.
- A Sewelis log file GeorgesWashington.log about the genealogy of Georges Washington, converted from a GED file.
Screencasts (outdated but still informative)
A screenshot is worth a thousand words, and a screencast is worth a thousand screenshots!
The following screencasts demonstrate typical use cases of Sewelis. They make use of the above dataset about films, extracted from DBpedia. They do not cover all features of Sewelis, and please keep in mind that this software is a prototype in constant evolution.
This screencast presents the user interface, its different components, and what can be learned about a given selection of resources (here, films) by browsing the different facets.
- Loading a RDF file
This screencast first shows how to launch Sewelis. A logfile must be passed as a parameter on the command line. It will record all update operations performed by the user. It then shows how to import a RDF file into Sewelis, and how the display of resource names can be improved by defining labels on URIs. Finally, basic navigation and browsing is presented.
- Standard Faceted Search
This screencast shows how Sewelis can be used for standard faceted search, where queries are conjunctions of restriction values. This is illustrated on the selection of films whose director is Tim Burton, and starring both Johnny Depp and Helena Bonham Carter. A previsualization mechanism allows to quickly discover relationships between selected resources and restriction values.
- Queries with paths of properties and disjunctions of values
This screencast demonstrates how paths of properties and disjunction of values can be formed, thus allowing to reach more complex queries through guided navigation. This is illustrated on the selection of films whose director was born in an English-speaking country, and released since 2000. The key notion here is focus change, here from films to their director's birthdate and their release date.
- Queries with disjunctions and negations of complex subqueriesThis screencast demonstrates that disjunction and negation are not restricted to values, but do apply to complex queries. This is illustrated to the selection of films that are related to France in various ways: country, director's birthdate, actor's birthdate. Negation can be inserted to reach the opposite selection: films not related to France. For each alternative, the corresponding subselection can still be visualized simply by changing the focus.
- Queries with branching properties
This screencast further demonstrates the capabilities of Sewelis in the navigation to complex selections of resources. This is here illustrated on the selection of people born in the United States that are a director of a film starring Johnny Depp and released since 2000. The branching is here on the film with three outgoing properties: director, starring, and release date.
- Queries with co-references
This screencast shows how to express equalities and inequalities between different entities involved in a query by introducing variables. Naming an entity introduces an automatically generated variable, which can latter be suggested by Sewelis to refer to the named entity. This is first illustrated on the selection of people who directed some film, and starred in the same film. This is then illustrated on the selection of films produced in some country, and whose director was born in another country. Therefore, co-reference variables enable the translation of 'same' and 'another'.
- Creation of a resource and its description
This screencast shows that the very same interface can also be used to create objects along with their descriptions. Properties and values are suggested according to similar objects in the knowledge base. This is illustrated on the creation of the film "Charlie and the Chocolate Factory". In the same way, it is also possible to add or remove facts about existing objects, taking into account their current properties.
Scalewelis: Sewelis on top of SPARQL endpoints
Scalewelis reimplements the main features of Sewelis (exploratory search) as a Web-client on top of SPARQL endpoints. You can specify the URL of a SPARQL endpoint, and then start exploring it. The default SPARQL endpoint is DBpedia. Scalewelis was developed by Joris Guyonvarc'h as part of his master thesis at IRISA/INSA.
Last modified 16.09.2013 02:19 PM