The RacerPro Knowledge Representation and Reasoning System

Paper Title: 
The RacerPro Knowledge Representation and Reasoning System
Volker Haarslev, Kay Hidde, Ralf Möller and Michael Wessel
RacerPro is a software system for building knowledge-based applications based on ontologies. The backbone of RacerPro is a description logic reasoner. It provides inference services for terminological knowledge as well as for representations of knowledge about individuals. Based on new optimization techniques and techniques that have been developed in the research field of description logics throughout the years, a mature architecture for typical-case reasoning tasks is provided. The system has been used in hundreds of research projects and industrial contexts throughout the last twelve years. W3C standards as well as detailed feedback reports from numerous users have influenced the design of the system architecture in general, and have also shaped the RacerPro knowledge representation and interface languages.
Full PDF Version: 
Submission type: 
Tool/System Report
Responsible editor: 
Pascal Hitzler

This is a revised submission after an "accept pending minor revisions", which has now been accepted for publication. The reviews below are for the originally submitted version.

Solicited review by Ulrike Sattler:

The paper describes a very important and influential reasoner system, RacerPro, and thus is of interest for the journal. I am, however, not so sure about the suitability of the style: in particular, I think that, by (1) concentrating on Description Logics (and mentioning OWL aspects only in passing and in an incomplete way), (2) adding a lot of historic information on design choices, and (3) discussion what seems like a plethora of features without distinguishing between 'core' and 'also available'; the authors have made the paper rather inaccessible to the semantic web community, and thus to the readers of this journal. To put it the other way round, I'd suggest to describe (1') RacerPro mainly in OWL terms and mention relevant DL aspects when required (i.e., use class, property, etc., and OWL profile names), (2') either drop most of the historic remarks or concentrate them in a separate section for the interested reader, and (3') concentrate on some core features and explain them in an accessible way, using examples or, even better, publicly available examples.

More detailed remarks:

- [abstract] "knowledge-based applications based on ontologies" seems

- [Intro] "mosteffective"? "an software"? "a a description logic"

- [Intro] TBoxes are *not* ontologies (at least not in OWL)...this can lead to unnecessary confusion!

- Section 2.2 is half a "History Sketch", and I guess only accessible to the DL community (especially 1st paragraph). Also, shouldn't Hermit be mentioned there? Also, in the last paragraph: *size* isn't necessarily the decisive factor's more than that?!

- Section 2.3 contains some more history (and only accessible to DL community). Also, there is a reference missing for ELH (or better use the OWL profile name?). Also, the relation between nRQL and SPARQL-OWL should be mentioned. Also, regarding instance retrieval optimisation techniques, SHER and Requiem should probably be mentioned. Oh, and [55] is a reference to (stuff around) KAON *2*. And "a sublanguage of OWL" is OWL 2 EL?

- Section 3. I think you are showing a screenshot of Protege *4* and it's the OWL* *API. In Figure 4, I was surprised to see whole IRIs...aren't they normally displayed in a shortened version/local names to make things more readable (I really had difficulties reading through this). I found the use cases slightly disappointing: they are mostly toy or own use cases, and sketched at such a high level of abstraction that it is hard to gain insights...e.g., the event recognition would have been nice to see in more detail to understand in how/why abduction is used (which fits with my general impression that 'less would be more': here, perhaps fewer cases in more detail?)

Solicited review by Sergio Tessaris:

The paper describes the RacerPro Description Logics reasoner.

Racer has been one of the most reliable and widely adopted DL reasoners. For this reason its publication is highly relevant as a Systems and Tools description. The paper has the additional advantage of a wide bibliography which points to all the relevant aspects of the design and implementation of a DL reasoner.

Having said that, I believe that the paper can be improved is some of its parts and I warmly recommend a minor revision of this submission. In fact, there are some parts of the paper that in my opinion should be expanded in order to give a better overview of the system. If there are space constraints, I believe that the figures can be removed without affecting the readability and quality of the presentation (BTW there's a figure after the bibliography).

The parts that I consider worth expanding are:

- Section 3 (Interfaces) this part is rather specific to RacerPro and represents one of the added values of it wrt competing reasoners. In particular, it would be interesting to add more details on the extensibility of the system via miniLisp and plugins. Things like the kind constructs of the languages and the interaction with the reasoner would be worth. Some details should be added wrt the kind of protocols supported, in particular wrt the extensibility of the system.

- Section 4 (Use Cases) I'd suggest a more detailed section with some technical details.

In Section 5, I'd suggest to expand the comments concerning the "correctness" of RacerPro

I suggest to include a more detailed description of the licensing scheme and what is available on the free version of RacerPro

Solicited review by Zhisheng Huang:

The paper introduces the RacerPro from a systematic point of view. It can be considered as a good summary of the system. Nevertheless, one or more detailed use cases would help to clarify.

In abstract, "The system has been used in ..... interface languages", I suggest to move it to acknowledgement. The abstract should reflect the scientific contribution of the system.

In page 3, the authors argue that RacerPro has optimization for varios usage scenarios for Abox and Tbox reasoning. It is better that the author explain a little on how the optimization is designed.

For footnote 2 in page 3, it is hard for the reader on how the author draw the conclusion like this. Providing a short example would be better.