Copyright © 2005 DERI Innsbruck at the
Leopold-Franzens-Universität Innsbruck, Austria, DERI Galway at the
National University of Ireland, Galway, Ireland, The Open University,
Software AG, Forschungszentrum Informatik (FZI), BT, and National
Research Council Canada. All rights
reserved.
This document is available under the W3C Document
License. See the W3C
Intellectual Rights Notice and Legal Disclaimers for additional
information.
This document contains brief descriptions of the relationship between WRL and other selected relevant technologies.
This document is a part of the WRL Submission.
By publishing this document, W3C acknowledges that DERI Innsbruck at the Leopold-Franzens-Universität Innsbruck, Austria, DERI Galway at the National University of Ireland, Galway, Ireland, The Open University, Software AG, Forschungszentrum Informatik (FZI), BT, and National Research Council Canada have made a formal submission to W3C for discussion. Publication of this document by W3C indicates no endorsement of its content by W3C, nor that W3C has, is, or will be allocating any resources to the issues addressed by it. This document is not the product of a chartered W3C group, but is published as potential input to the W3C Process. Publication of acknowledged Member Submissions at the W3C site is one of the benefits of W3C Membership. Please consult the requirements associated with Member Submissions of section 3.3 of the W3C Patent Policy. Please consult the complete list of acknowledged W3C Member Submissions.
RDFS [RDFS] is a simple ontology modeling language based on triples. It allows to express classes, properties, class hierarchies, property hierarchies, and domain- and range restrictions. Several proposals for more expressive Semantic Web and Semantic Web Service descriptions extend RDFS, however there are difficulties in semantically layering an ontology language on top of RDFS:
We believe that the number of use cases for the first feature, namely the use of language constructs in the language itself, is limited. However, the use of the same identifier as class, individual and property identifier (also called meta-modeling) is useful in many cases. WRL does not allow the use of the language constructs in arbitrary places in an ontology, but does allow meta-modeling in its Flight and Full variants.
WRL layers on a significant part of RDFS. WRL does not allow the use of language constructs in the language itself and does not allow full treatment of blank nodes, because this would require reasoning with existential information, which is typically not possible in the context of standard rule languages. WRL provides a significant extension of RDFS through the possibility of specifying local attributes, range and cardinality constraints for attributes and attribute features such as symmetry, transitivity and reflexivity. Furthermore, WRL provides an expressive rule language which can be used for the manipulation of RDF data.
The Web Ontology Language OWL [OWL] is a language for modeling ontologies based on the Description Logic paradigm. OWL consists of three species, namely OWL Lite, OWL DL and OWL Full, which are layered according to increasing expressiveness. OWL Lite is a notational variant of the Description Logic SHIF(D); OWL DL is a notational variant of the Description logic SHOIN(D) [Horrocks et al., 2003]. OWL Full layers both on top of OWL DL and RDFS and is a direct extension of RDFS.
WRL-Core is a semantic subset of OWL Lite, in the sense that WRL-Core and a subset of OWL Lite agree on ground entailment. However, there is a major difference between ontology modeling in WRL and ontology modeling in OWL. WRL uses an epistemology which abstracts from the underlying logical language, whereas OWL directly uses Description Logics epistemology; WRL separates between conceptual modeling for the non-expert users and logical modeling for the expert user.
Figure 1: The roles of OWL and WRL in the Semantic Web
Layer Cake
OWL and WRL are two complementary ontology languages for the Semantic Web, as depicted in Figure 1. (The DL species of) OWL is based on Description Logics, whereas WRL is based on Deductive Databases and Logic Programming. WRL and OWL support different use cases for the Semantic Web. A strong point of OWL is subsumption reasoning over conceptual schemas (ontologies), whereas WRL focuses on consistency checking sets of data (with respect to constraints) and for the specification of and reasoning with arbitrary rules.
The Semantic Web Rule Language [SWRL] is an extension of OWL which adds support for Datalog syntax-style rules over OWL DL ontologies. Instead of arbitrary predicates (as in Datalog), SWRL allows arbitrary OWL DL descriptions in both the head and the body of rules, where a unary predicate corresponds to an OWL class and a binary predicate corresponds to an OWL property. While a subset of SWRL falls inside Horn Logic, a SWRL knowledge base easily goes beyond this fragment, because of the use of classical negation and existentially quantified variables and disjunction in the head of the rule. A set of Horn Logic formulae can be reduced to standard Logic Programming rules; the Horn Logic formulae and the Logic Programming rules entail exactly the same set of ground formulae. Consequently, SWRL and standard rule languages differ in expressiveness. The advantage of common rule languages which are based on Horn Logic is the efficient reasoning support which has been developed for certain reasoning tasks like query answering. By going beyond the Horn fragment, SWRL loses this advantage.
SWRL is an expressive extension of OWL DL, which add important features to the standard, but is not a standard rule language, because OWL DL is not a rule language and only a subset can be translated to rules. In contrast to SWRL, WRL is based on standard rule languages in order to benefit from the many years of research in the areas of Deductive Databases and Logic Programming.
SWSL-Rules, part of [SWSL] is a rule language proposal for Semantic Web Services, which can also be used for the Semantic Web. SWSL-Rules is closely related to WRL. Both languages are largely based on F-logic and they mostly share the logical expression syntax. However, the WRL and SWSL-Rules initiatives have pursued complementary goals. WRL was developed with more focus on the end user, which resulted in a "conceptual syntax" for top-level descriptions of ontologies, which we believe might make the specifications easier to read. More attention was paid in WRL to the issue of OWL compatibility. To this end, we defined WRL-Core as a subset of both OWL and WRL, which will serve as a common ground for ontology interoperability. In contrast, the initiative around SWSL-Rules focused particularly on extending the functionality of their rule-based language. In particular, SWSL-Rules supports meta-reasoning with its HiLog and reification extensions. It also supports prioritized defaults and classical negation by incorporating Courteous Logic Programming.
WRL is strongly related to SWSL-Rules, which has also been proposed as a rule language for the Semantic Web. We expect that both approaches will converge in a possible working group..
The Web Service Modeling Language WSML [WSML] is a language for the modeling of various aspects related to Semantic Web Services. The language is based on the formalisms coming from the areas of Description Logics and Logic Programming. WSML defines in total 5 language variants. WSML-DL is based on Description Logics and WSML-Flight and WSML-Rule are based on rules languages (Deductive Databases and Logic Programming). WSML-Core marks the intersection of Description Logics and Logic Programming, based on DLP [Grosof et al., 2003]. It is furthermore envisioned in WSML to have a variant, WSML-Full, which unifies Description Logics and Logic Programming, but this unifying language is still an open research issue.
WRL extracts the rule-based variants of WSML, namely WSML-Flight and WSML-Rule, as well as the basic inter-operation layer with Description Logics, namely WSML-Core, leaving out the Web Service-specific elements, such as Goals, Web Services and Mediators. WRL inherits from WSML the conceptual syntax for the specification of ontologies and the logical expression syntax for the specification of rules as part of an Ontology.
The work is funded by the European Commission under the projects DIP, Knowledge Web, InfraWebs, SEKT, SWWS, ASG and Esperonto; by Science Foundation Ireland under the DERI-Lion project; by the FIT-IT (Forschung, Innovation, Technologie - Informationstechnologie) under the projects RW² and TSC; by the German Federal Ministry of Education and Research (BMBF) under the SmartWeb project.
The editor would like to thank to all the members of the WSML working group for their advice and input into this document.
[Grosof et al., 2003] B. N. Grosof, I. Horrocks, R. Volz, and S. Decker. Description logic programs: Combining logic programs with description logic. In Proc. of the Twelfth International World Wide Web Conference (WWW 2003), pages 48-57. ACM, 2003.
[Horrocks et al., 2003] I. Horrocks, P. F. Patel-Schneider, and F. van Harmelen. From SHIQ and RDF to OWL: The making of a web ontology language. Journal of Web Semantics, 1(1):7-26, 2003.
[OWL] M. Dean, G. Schreiber, (Eds.). OWL Web Ontology Language Reference, W3C Recommendation, 10 February 2004. http://www.w3.org/TR/2004/REC-owl-ref-20040210/.
[RDFS] D. Brickley and R. V. Guha. RDF vocabulary description language 1.0: RDF schema. W3C Recommendation 10 February 2004. http://www.w3.org/TR/rdf-schema/.
[SWRL] I. Horrocks, P.F. Patel-Schneider, H. Boley, S. Tabet, B. Grosof, M. Dean: SWRL: A Semantic Web Rule Language Combining OWL and RuleML, 2004. http://www.w3.org/submissions/2004/SUBM-SWRL-20040521/
[SWSL] S. Battle, A. Bernstein, H. Boley, B. Grosof, M. Gruninger, R. Hull, M. Kifer, D. Martin, S. McIlraith, D. McGuinness, J. Su, and S. Tabet: Semantic Web Services Language (SWSL), 2005. http://www.daml.org/services/swsf/1.0/swsl/
[WSML] The Web Service Modeling Language WSML. http://www.wsmo.org/wsml/wsml-syntax