- From: Paula-Lavinia Patranjan <paula.patranjan@ifi.lmu.de>
- Date: Tue, 23 May 2006 10:13:44 +0200
- To: public-rif-wg@w3.org
- Message-ID: <4472C438.3070909@ifi.lmu.de>
Hi,
This email contains the analysis of Xcerpt and XChange following the
RIFRAF criteria; like Axel, I followed Hassan's scheme.
This is a response to the action recorded as
http://www.w3.org/2005/rules/wg/track/actions/17
Regards,
Paula
---------------------------------------------------------------------------------
Authors of this analysis: Michael Eckert, Paula-Lavinia Patranjan (REWERSE)
Xcerpt and XChange: Short description
Xcerpt (http://www.xcerpt.org) and XChange
(http://www.pms.ifi.lmu.de/projekte/xchange/) are research languages
developed at the Institute for Informatics, University of Munich, by
following the logic programming paradigm.
Xcerpt is a Web query language developed primarily for XML data, but
supports also querying RDF data. An Xcerpt program is a set of
deductive rules querying data and constructing new data.
XChange is a Web reactive language working primarily on XML data. An
XChange program is a set of ECA rules specifying the desired reactive
behaviour and Xcerpt deductive rules for constructing views over XML
data (views' data can be queried in the condition part of ECA rules).
Classification of Xcerpt and XChange
===== SYN: SYNTACTIC DISCRIMINATORS =====
SYN.1. RESTRICTED VS. UNRESTRICTED USE OF LOGIC VARIABLES
SYN.1.1. SINGLE OCCURRENCE VS. MULTIPLE OCCURRENCE (IMPLICIT VARIABLE
EQUALITY)
[Xcerpt] multiple occurrence
[XChange] multiple occurrence
SYN.1.2. RANGE-RESTRICTED RULES (NO HEAD-ONLY VARIABLES)
VS. NON-RANGE-RESTRICTED RULES
[Xcerpt] range-restricted
[XChange] range-restricted
SYN.1.3. (FURTHER RESTRICTIONS FROM STATIC ANALYSIS RESEARCH)
[Xcerpt] stratifiable
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])
[Xcerpt] no
[XChange] no
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]
[Xcerpt] only disjunction in rule bodies; note that when grouping
constructs are used in the head, disjunction cannot rewritten into
separate rules (example: f[all X] <- g[X] v h[X] is not equivalent to
f[all X] <- g[X], f[all X] <- h[X])
[XChange] only disjunction in the condition part of ECA rules; the
same note as above
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]
[Xcerpt] implicit rule scope
[XChange] implicit rule scope
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]
[Xcerpt] positional arguments tailored to semistructured data,
slotted as part of data schema possible
[XChange] positional arguments tailored to semistructured data,
slotted as part of data schema possible
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]
[Xcerpt] namespaces, RDF triples
[XChange] namespaces, RDF triples
===== SES: SYNTACTIC-ENTAILING-SEMANTIC DISCRIMINATORS =====
SES.1. HOMOGENEOUS (BODY HAS SINGLE EXPRESSIVENESS CLASS) VS. HYBRID
(BODY HAS TWO EXPRESSIVENESS CLASSES) RULES
[Xcerpt] homogeneous
[XChange] homogeneous
SES.2. FACT-ONLY (DATABASE TABLES) VS. RULE-ONLY VS. FACT-AND-RULE BASES
[Xcerpt] fact-and-rule bases
[XChange] fact-and-rule bases
SES.2.1. VARIABLE-FUL (NON-GROUND) VS. VARIABLE-FREE (GROUND) FACTS
(ALSO UNDER "VARIABLE-FUL VS. ... CLAUSES")
[Xcerpt] variable-free facts
[XChange] variable-free facts
SES.3. FUNCTION-FUL (FO HORN LOGIC) VS. FUNCTION-FREE (FO DATALOG)
[Xcerpt] function-like term structures, non-standard unification
[XChange] function-like term structures, non-standard unification
SES.3.1. FUNCTION ARITY/ARITIES
[Xcerpt] n-ary
[XChange] n-ary
SES.3.2. FIXED VS. UNFIXED FUNCTION NESTING DEPTH
[Xcerpt] unfixed
[XChange] unifixed
SES.3.3. UNINTERPRETED VS. INTERPRETED FUNCTIONS
[Xcerpt] uninterpreted in body of rules, aggregation functions are
interpreted in the head
[XChange] uninterpreted in the condition part and event part of
rules, aggregation functions are interpreted in the action part
SES.4. VARIABLE-FUL (NON-GROUND) VS. VARIABLE-FREE (GROUND) CLAUSES
[Xcerpt] variable-ful clauses
[XChange] variable-ful clauses
SES.4.1. VARIABLE-FUL (NON-GROUND) VS. VARIABLE-FREE (GROUND) FACTS
(ALSO UNDER "FACT-ONLY ... BASES")
[Xcerpt] variable-free facts
[XChange] variable-free facts
SES.5. PREDICATE ARITY/ARITIES
[Xcerpt] n-ary
[XChange] n-ary
SES.6. NUMBER OF PREMISES IN RULES
[Xcerpt] unrestricted
[XChange] unrestricted
SES.7. LABELED (ANCHORED, OIDED) VS. UNLABELED CLAUSES
SES.7.1. LABELS ALLOWED VS. NOT ALLOWED AS ARGUMENTS OF USER
PREDICATES
[Xcerpt] no support here
[XChange] no support here
SES.7.2. LABELS ALLOWED VS. NOT ALLOWED AS ARGUMENTS OF
PRIORITY-GIVING SYSTEM PREDICATE 'OVERRIDES' (CF. SCLP)
[Xcerpt] no support here
[XChange] no support here
SES.8. CERTAIN VS. UNCERTAIN CLAUSES AND ATOMS
[Xcerpt] certain
[XChange] certain
===== SEM: SEMANTIC DISCRIMINATORS =====
SEM.1. TERMINATING (ALL QUERIES TERMINATE) VS. NON-TERMINATING (AT
LEAST ONE
QUERY DOES NOT TERMINATE) RULEBASES
[Xcerpt] non-terminating in some recursive cases
[XChange] reactive programs should not terminate, it might be the
case that some rules are non-terminating (via Xcerpt)
SEM.2. FINITE-MODEL VS. INFINITE-MODEL RULEBASES (CF. DECIDABILITY)
[Xcerpt] infinite model
[XChange] infinite model for constructed data, finite model for events
SEM.3. MODALITY/INTENTIONALITY (BEYOND FOL)
[Xcerpt] no support
[XChange] no support
===== PRAG: PRAGMATIC DISCRIMINATORS =====
PRAG.1. INFERENCE CONTROL
PRAG.1.1. FORWARD CHAINING VS. BACKWARD CHAINING VS. BIDIRECTIONAL
CHAINING
[Xcerpt] both are possible, backward chaining implemented
[XChange] not applicable, event part forward chaining (for composite
events incremental over time) and condition part backward chaining
PRAG.1.2. INCREMENTAL VS. EXHAUSTIVE
[Xcerpt] exhaustive
[XChange] incremental
PRAG.2. COMPLEXITY
[Xcerpt] undecidable, complexity classes for language restrictions
are investigated (e.g. conjunctive tree and graph queries)
[XChange] undecidable
PRAG.3. INTEROPERABILITY
PRAG.3.1. ANNOTATIONS (INCLUDING CONTROLLED ENGLISH)
[Xcerpt] no
[XChange] no
PRAG.3.2. TEST CASES
[Xcerpt] XQuery use cases implemented in Xcerpt
[XChange] use cases: distributed reactive Web portals with update
propagation (implemented), (part of) EU-Rent case study (under development)
PRAG.3.3. MAPPINGS
[Xcerpt] mapping to XQuery
[XChange] no
Received on Tuesday, 23 May 2006 08:14:03 UTC