- From: Axel Polleres <axel.polleres@urjc.es>
- Date: Wed, 17 May 2006 17:20:46 +0200
- To: public-rif-wg@w3.org
http://www.w3.org/2005/rules/wg/track/actions/15 http://www.w3.org/2006/05/16-rif-minutes.html As promised in may 16th teleconf, I repeat the exercise of my previous mail on WRL. Thanks to Jos De Bruijn for assisting me with this analysis. WRL (Web Rule Language) is a member submission which influenced this WG charter, see: http://www.w3.org/Submission/2005/08/ So, probably most of you are aware of it. Still, I recap the essence: WRL is located in the Semantic Web stack next to the Description Logic based Ontology language OWL. WRL defines three variants, namely Core, Flight and Full. The Core variant marks the common fragment between WRL and OWL. WRL-Flight is a rule language based on the Datalog fragment of F-Logic, extended with stratified negation. WRL-Full is a full-fledged rule language based on the Horn subset of F-Logic, extended with negation under the Well-Founded Semantics. WRL can be reduced to regular LP rules; this allows the use of many existing reasoners for WRL. The WSML2Reasoner framework (http://dev1.deri.at/wsml2reasoner/) enables using different existing rule engines such as DLV, KAON2, and MINS to reason with WSML-Rule, a superset of WRL-Full. On online demo is available at: http://tools.deri.org/wsml/rule-reasoner/ ------------------------------------------------------------------- CLASSIFYING WRL AS A RULE LANGUAGE ===== SYN: SYNTACTIC DISCRIMINATORS ===== SYN.1. RESTRICTED VS. UNRESTRICTED USE OF LOGIC VARIABLES SYN.1.1. SINGLE OCCURRENCE VS. MULTIPLE OCCURRENCE (IMPLICIT VARIABLE EQUALITY) [WRL] Variables are scoped over rules, no global variables. Variables may be typed using classes in an ontology. --> comment axel: As mentioned in the DLV part a discriminator for typing variables seems to be missing, or was this meant in SYN1.3? SYN.1.2. RANGE-RESTRICTED RULES (NO HEAD-ONLY VARIABLES) VS. NON-RANGE-RESTRICTED RULES [WRL] Safety is only required in WRL Core and Flight, but not in WRL Full. There are no other restrictions on variable ranges. SYN.1.3. (FURTHER RESTRICTIONS FROM STATIC ANALYSIS RESEARCH) --> comment axel: still unclear for me SYN.2. PREDICATE VARIABLES PERMITTED VS. NOT PERMITTED * SECOND-ORDER SYNTACTIC SUGAR ALLOWING VARIABLES IN PREDICATE POSITIONS OF QUERIES OR RULE BODIES AND POSSIBLY RULE HEADS (FURTHER GENERALIZED TO FUNCTION AND EVEN ATOM POSITIONS IN [HTTP://WWW.W3.ORG/SUBMISSION/SWSF-SWSL/#SWSL-RULES-HILOG]) [WRL] WRL Core doesn't support higher order syntax and also limits attribute names, predicate names, class names and objects to be disjoint. WRL Flight and Full allow variables to occur in the place of class and attribute names. Variables are not allowed in arbitrary predicate positions. SYN.3. MONOTONIC LLOYD-TOPOR EXTENSIONS ALLOWED VS. NOT ALLOWED * SYNTACTIC SUGAR FOR EXTENDING HORN LOGIC WITH DISJUNCTION IN RULE BODIES AS WELL AS CONJUNCTION AND CLASSICAL IMPLICATION IN RULE HEADS [HTTP://WWW.W3.ORG/SUBMISSION/SWSF-SWSL/#SWSL-RULES-MON-LT] [WRL] WRL Core does not have Lloyd-Topor extensions. WRL-Flight has monotonic Lloyd-Topor (disjunction in the body and implication and conjunction in the head). WRL Full allows full Lloyd-Topor (i.e., arbitrary first-order formulas in the body of a rule), and unstratified negation (under the Well-Founded Semantics). SYN.4. EXPLICIT VS. IMPLICIT RULE SCOPE * ALLOWING FORMULAS AND/OR NAMES DENOTING WHAT HAS BEEN CALLED MODULES, CONTEXTS, RULESETS, OR MODELS [HTTP://WWW.ISI.EDU/~ARGOS/MATTHEW/TRIPLE_BY_EXAMPLE.HTML] [WRL] does not support modules in the sense of e.g. Triple or Flora-2. SYN.4.1. SLOTTED (KEYED, ROLE-NAMED) VS. POSITIONAL ARGUMENTS * ALLOWING N-ARY ATOMS WITH A SET OF N 'ATTRIBUTE=VALUE' PAIRS AS IN RDF/OWL PROPERTIES, F-LOGIC METHODS, AND OBJECT-ORIENTED SYSTEMS [HTTP://WWW.RULEML.ORG/INDOO] [WRL] WRL core extend OWL in the sense that it supports inly binary relations, which amount to RDF/OWL properties, or F-LOGIC methods. SYN.5. WEBIZED VS. NON-WEBIZED NAMES * ALLOWING URIS AS OIDS FOR CONSTANTS, FUNCTIONS, SLOTS, PREDICATES, CLASSES, AND/OR LABELS [HTTP://WWW.W3.ORG/2000/10/SWAP/PRIMER.HTML] [WRL] Yes. ===== SES: SYNTACTIC-ENTAILING-SEMANTIC DISCRIMINATORS ===== SES.1. HOMOGENEOUS (BODY HAS SINGLE EXPRESSIVENESS CLASS) VS. HYBRID (BODY HAS TWO EXPRESSIVENESS CLASSES) RULES [WRL] does supports not support the splitting body in a resolution and a query part. SES.2. FACT-ONLY (DATABASE TABLES) VS. RULE-ONLY VS. FACT-AND-RULE BASES [WRL] facts and rules SES.2.1. VARIABLE-FUL (NON-GROUND) VS. VARIABLE-FREE (GROUND) FACTS (ALSO UNDER "VARIABLE-FUL VS. ... CLAUSES") [WRL] non-ground facts amount to unsafe rules and are thus allowed in WRL Full. SES.3. FUNCTION-FUL (FO HORN LOGIC) VS. FUNCTION-FREE (FO DATALOG) [WRL] WRL full supports function symbols. SES.3.1. FUNCTION ARITY/ARITIES [WRL] In WRL Full, the same function symbol can be used with different arities (interpreted as syntactic sugar as different function symbols) SES.3.2. FIXED VS. UNFIXED FUNCTION NESTING DEPTH [WRL] WRL Full supports arbitrary nesting of function symbols. SES.3.3. UNINTERPRETED VS. INTERPRETED FUNCTIONS [WRL] supports a basic set of datatype wrappers and builtins, which are syntactilly distinguished from uninterpreted functions. SES.4. VARIABLE-FUL (NON-GROUND) VS. VARIABLE-FREE (GROUND) CLAUSES SES.4.1. VARIABLE-FUL (NON-GROUND) VS. VARIABLE-FREE (GROUND) FACTS (ALSO UNDER "FACT-ONLY ... BASES") [WRL] non-ground clauses allowed, for WRL core and Flight safety restriction. SES.5. PREDICATE ARITY/ARITIES [WRL] The same predicate/relation can be used with different arities (interpreted as syntactic sugar as different predicate/relation symbols) SES.6. NUMBER OF PREMISES IN RULES [WRL] unrestricted. SES.7. LABELED (ANCHORED, OIDED) VS. UNLABELED CLAUSES [WRL] rules/axioms can be identified in WRL, but this is not subject to further semantic use of these labels. SES.7.1. LABELS ALLOWED VS. NOT ALLOWED AS ARGUMENTS OF USER PREDICATES [WRL] Relation arguments are not labeled/named in WRL. SES.7.2. LABELS ALLOWED VS. NOT ALLOWED AS ARGUMENTS OF PRIORITY-GIVING SYSTEM PREDICATE 'OVERRIDES' (CF. SCLP) [WRL] There is no preference/priority mechanism defined in WRL. SES.8. CERTAIN VS. UNCERTAIN CLAUSES AND ATOMS [WRL] No uncertainty in WRL. ===== SEM: SEMANTIC DISCRIMINATORS ===== SEM.1. TERMINATING (ALL QUERIES TERMINATE) VS. NON-TERMINATING (AT LEAST ONE QUERY DOES NOT TERMINATE) RULEBASES [WRL] Core and Flight yes, Full no. Considerations regarding built-in predicates and termination from [DLV] apply as well. SEM.2. FINITE-MODEL VS. INFINITE-MODEL RULEBASES (CF. DECIDABILITY) [WRL] Core and Flight finite, Full no. Considerations regarding built-in predicates and termination from [DLV] apply as well. SEM.3. MODALITY/INTENTIONALITY (BEYOND FOL) [WRL] No modalities. ===== PRAG: PRAGMATIC DISCRIMINATORS ===== PRAG.1. INFERENCE CONTROL PRAG.1.1. FORWARD CHAINING VS. BACKWARD CHAINING VS. BIDIRECTIONAL CHAINING [WRL] no commitment made; WRL is declarative. PRAG.1.2. INCREMENTAL VS. EXHAUSTIVE [WRL] no committment made. PRAG.2. COMPLEXITY [WRL] Complexity of WRL Core/Flight and WRL Full without function symbols is P/EXPTIME (data/program complexity). With function symbols, WRL Full entailment is undecidable. PRAG.3. INTEROPERABILITY [WRL] lossless interoperability with OWL on the intersection (DLP/WRL core) PRAG.3.1. ANNOTATIONS (INCLUDING CONTROLLED ENGLISH) [WRL] classes, relations, instances and rules can be annotated with arbitrary properties; recommended are the Dublin Core properties. PRAG.3.2. TEST CASES [WRL] No extensive test suites available yet; these are under development in several European projects. PRAG.3.3. MAPPINGS [WRL] Each layer (Core/Flight/Full) is a strict syntactic and semantic extension of the lower layers.
Received on Wednesday, 17 May 2006 15:20:52 UTC