Building a hybrid reactive rule engine for relational and graph reasoning

Mario Fusco, Davide Sottara, István Ráth, Mark Proctor, Mark Proctor

    Research output: Chapter in Book/Report/Conference proceedingConference contribution

    1 Citation (Scopus)

    Abstract

    The relational syntax used by Rete rule engines is cumbersome when traversing paths compared to hierarchical or Object-Oriented languages like XPath or Java. Searching the join space for references has performance implications. This paper proposes reactive rule engine enhancements to support both relational and graph reasoning, with improvements at both the language and the engine level. The language will contain both relational and graph constructs that can be used together, within the same rule. The implementation targets Drools, a Java open-source Rete based rule engine, but could be applied to any Rete engine and language of a similar class. Examples are used to describe the language extensions and discuss their behaviour. Benchmarking is used to compare the performance of the two reasoning approaches in different scenarios and provide recommendations on how to optimize a rule base.

    Original languageEnglish (US)
    Title of host publicationRule Technologies
    Subtitle of host publicationFoundations, Tools, and Applications - 9th International Symposium, RuleML 2015, Proceedings
    EditorsGeorg Gottlob, Fariba Sadri, Adrian Paschke, Nick Bassiliades, Dumitru Roman
    PublisherSpringer Verlag
    Pages208-222
    Number of pages15
    ISBN (Print)9783319215419
    DOIs
    StatePublished - Jan 1 2015
    Event9th International Web Rule Symposium, RuleML 2015 - Berlin, Germany
    Duration: Aug 2 2015Aug 5 2015

    Publication series

    NameLecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics)
    Volume9202
    ISSN (Print)0302-9743
    ISSN (Electronic)1611-3349

    Other

    Other9th International Web Rule Symposium, RuleML 2015
    CountryGermany
    CityBerlin
    Period8/2/158/5/15

    Fingerprint

    Engine
    Reasoning
    Engines
    Graph in graph theory
    Java
    XPath
    Object-oriented Languages
    Rule Base
    Object oriented programming
    Benchmarking
    Open Source
    Join
    Recommendations
    Enhancement
    Optimise
    Scenarios
    Path
    Target
    Language

    Keywords

    • Drools
    • Graph
    • Java
    • Production rule systems
    • Reasoning
    • Relational
    • Rete
    • Rule engine
    • Xpath

    ASJC Scopus subject areas

    • Theoretical Computer Science
    • Computer Science(all)

    Cite this

    Fusco, M., Sottara, D., Ráth, I., Proctor, M., & Proctor, M. (2015). Building a hybrid reactive rule engine for relational and graph reasoning. In G. Gottlob, F. Sadri, A. Paschke, N. Bassiliades, & D. Roman (Eds.), Rule Technologies: Foundations, Tools, and Applications - 9th International Symposium, RuleML 2015, Proceedings (pp. 208-222). (Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics); Vol. 9202). Springer Verlag. https://doi.org/10.1007/978-3-319-21542-6_14

    Building a hybrid reactive rule engine for relational and graph reasoning. / Fusco, Mario; Sottara, Davide; Ráth, István; Proctor, Mark; Proctor, Mark.

    Rule Technologies: Foundations, Tools, and Applications - 9th International Symposium, RuleML 2015, Proceedings. ed. / Georg Gottlob; Fariba Sadri; Adrian Paschke; Nick Bassiliades; Dumitru Roman. Springer Verlag, 2015. p. 208-222 (Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics); Vol. 9202).

    Research output: Chapter in Book/Report/Conference proceedingConference contribution

    Fusco, M, Sottara, D, Ráth, I, Proctor, M & Proctor, M 2015, Building a hybrid reactive rule engine for relational and graph reasoning. in G Gottlob, F Sadri, A Paschke, N Bassiliades & D Roman (eds), Rule Technologies: Foundations, Tools, and Applications - 9th International Symposium, RuleML 2015, Proceedings. Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics), vol. 9202, Springer Verlag, pp. 208-222, 9th International Web Rule Symposium, RuleML 2015, Berlin, Germany, 8/2/15. https://doi.org/10.1007/978-3-319-21542-6_14
    Fusco M, Sottara D, Ráth I, Proctor M, Proctor M. Building a hybrid reactive rule engine for relational and graph reasoning. In Gottlob G, Sadri F, Paschke A, Bassiliades N, Roman D, editors, Rule Technologies: Foundations, Tools, and Applications - 9th International Symposium, RuleML 2015, Proceedings. Springer Verlag. 2015. p. 208-222. (Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics)). https://doi.org/10.1007/978-3-319-21542-6_14
    Fusco, Mario ; Sottara, Davide ; Ráth, István ; Proctor, Mark ; Proctor, Mark. / Building a hybrid reactive rule engine for relational and graph reasoning. Rule Technologies: Foundations, Tools, and Applications - 9th International Symposium, RuleML 2015, Proceedings. editor / Georg Gottlob ; Fariba Sadri ; Adrian Paschke ; Nick Bassiliades ; Dumitru Roman. Springer Verlag, 2015. pp. 208-222 (Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics)).
    @inproceedings{5e952f0ef6e945218cddcaf2645a7fcb,
    title = "Building a hybrid reactive rule engine for relational and graph reasoning",
    abstract = "The relational syntax used by Rete rule engines is cumbersome when traversing paths compared to hierarchical or Object-Oriented languages like XPath or Java. Searching the join space for references has performance implications. This paper proposes reactive rule engine enhancements to support both relational and graph reasoning, with improvements at both the language and the engine level. The language will contain both relational and graph constructs that can be used together, within the same rule. The implementation targets Drools, a Java open-source Rete based rule engine, but could be applied to any Rete engine and language of a similar class. Examples are used to describe the language extensions and discuss their behaviour. Benchmarking is used to compare the performance of the two reasoning approaches in different scenarios and provide recommendations on how to optimize a rule base.",
    keywords = "Drools, Graph, Java, Production rule systems, Reasoning, Relational, Rete, Rule engine, Xpath",
    author = "Mario Fusco and Davide Sottara and Istv{\'a}n R{\'a}th and Mark Proctor and Mark Proctor",
    year = "2015",
    month = "1",
    day = "1",
    doi = "10.1007/978-3-319-21542-6_14",
    language = "English (US)",
    isbn = "9783319215419",
    series = "Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics)",
    publisher = "Springer Verlag",
    pages = "208--222",
    editor = "Georg Gottlob and Fariba Sadri and Adrian Paschke and Nick Bassiliades and Dumitru Roman",
    booktitle = "Rule Technologies",

    }

    TY - GEN

    T1 - Building a hybrid reactive rule engine for relational and graph reasoning

    AU - Fusco, Mario

    AU - Sottara, Davide

    AU - Ráth, István

    AU - Proctor, Mark

    AU - Proctor, Mark

    PY - 2015/1/1

    Y1 - 2015/1/1

    N2 - The relational syntax used by Rete rule engines is cumbersome when traversing paths compared to hierarchical or Object-Oriented languages like XPath or Java. Searching the join space for references has performance implications. This paper proposes reactive rule engine enhancements to support both relational and graph reasoning, with improvements at both the language and the engine level. The language will contain both relational and graph constructs that can be used together, within the same rule. The implementation targets Drools, a Java open-source Rete based rule engine, but could be applied to any Rete engine and language of a similar class. Examples are used to describe the language extensions and discuss their behaviour. Benchmarking is used to compare the performance of the two reasoning approaches in different scenarios and provide recommendations on how to optimize a rule base.

    AB - The relational syntax used by Rete rule engines is cumbersome when traversing paths compared to hierarchical or Object-Oriented languages like XPath or Java. Searching the join space for references has performance implications. This paper proposes reactive rule engine enhancements to support both relational and graph reasoning, with improvements at both the language and the engine level. The language will contain both relational and graph constructs that can be used together, within the same rule. The implementation targets Drools, a Java open-source Rete based rule engine, but could be applied to any Rete engine and language of a similar class. Examples are used to describe the language extensions and discuss their behaviour. Benchmarking is used to compare the performance of the two reasoning approaches in different scenarios and provide recommendations on how to optimize a rule base.

    KW - Drools

    KW - Graph

    KW - Java

    KW - Production rule systems

    KW - Reasoning

    KW - Relational

    KW - Rete

    KW - Rule engine

    KW - Xpath

    UR - http://www.scopus.com/inward/record.url?scp=84951153129&partnerID=8YFLogxK

    UR - http://www.scopus.com/inward/citedby.url?scp=84951153129&partnerID=8YFLogxK

    U2 - 10.1007/978-3-319-21542-6_14

    DO - 10.1007/978-3-319-21542-6_14

    M3 - Conference contribution

    AN - SCOPUS:84951153129

    SN - 9783319215419

    T3 - Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics)

    SP - 208

    EP - 222

    BT - Rule Technologies

    A2 - Gottlob, Georg

    A2 - Sadri, Fariba

    A2 - Paschke, Adrian

    A2 - Bassiliades, Nick

    A2 - Roman, Dumitru

    PB - Springer Verlag

    ER -