Advertisement

Take - A Rule Compiler for Derivation Rules

  • Jens Dietrich
  • Jochen Hiller
  • Bastian Schenke
Part of the Lecture Notes in Computer Science book series (LNCS, volume 4824)

Abstract

Rule engines have been used successfully in recent years in order to improve the agility of enterprise applications. Most existing rule engines focus on production rules, neglecting another important class of rules, derivation rules. We point out that derivation rules are very useful in many application scenarios, and present Take, a rule compiler for Java. Take compiles derivation rules into optimized, reflective code that can be deployed into running applications.

Keywords

Knowledge Source Inference Engine Business Rule Complex Term Derivation Rule 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. 1.
    Boley, H., Tabet, S., Wagner, G.: Design Rationale for RuleML: A Markup Language for Semantic Web Rules. In: SWWS, pp. 381–401 (2001)Google Scholar
  2. 2.
    JSR 94: (JavaTMRule Engine API), http://www.jcp.org/en/jsr/detail?id=94
  3. 3.
    OMG: Business Semantics of Business Rules Request For Proposal (2003)OMG Document: br/2003-06-03Google Scholar
  4. 4.
    Forgy, C.L.: Rete: A fast algorithm for the many pattern/many object pattern match problem. Artificial Intelligence 19(1), 17–37 (1982)CrossRefGoogle Scholar
  5. 5.
    Horrocks, I., Patel-Schneider, P.F., Boley, H., Tabet, S., Grosof, B., Dean, M.: SWRL: A semantic web rule language combining OWL and RuleML. Technical report, W3C Member submission 21 may 2004 (2004)Google Scholar
  6. 6.
    Wagner, G., Giurca, A., Lukichev, S.: A general markup framework for integrity and derivation rules. In: Bry, F., Fages, F., Marchiori, M., Ohlbach, H.-J. (eds.) Principles and Practices of Semantic Web Reasoning. Dagstuhl Seminar Proceedings, IBFI Schloss Dagstuhl, Germany. Dagstuhl Seminar Proceedings, vol. 05371 (2006)Google Scholar
  7. 7.
    Szyperski, C.: Component software: beyond object-oriented programming. ACM Press/Addison-Wesley Publishing Co, New York (1998)Google Scholar
  8. 8.
    JSR 199: (JavaTMCompiler API) http://jcp.org/en/jsr/detail?id=199
  9. 9.
    JSR 223: (Scripting for the JavaTMPlatform), http://jcp.org/en/jsr/detail?id=223
  10. 10.
    Rumbaugh, J.: Relations as semantic constructs in an object-oriented language. In: OOPSLA 1987. Conference proceedings on Object-oriented programming systems, languages and applications, Orlando, Florida, United States, pp. 466–481. ACM Press, New York, NY, USA (1987)CrossRefGoogle Scholar
  11. 11.
    Noble, J.: Basic relationship patterns. In: EuroPLOP 97: Conference proceedings(1997)Google Scholar
  12. 12.
    Genova, G., del Castillo, C.R., Llorens, J.: Mapping UML Associations into Java Code. Journal of Object Technology 2(5), 135–162 (2003)Google Scholar
  13. 13.
    Rewerse Working Group I1 - Rule Modeling and Markup (URML - a UML-Based Rule Modeling Language), http://oxygen.informatik.tu-cottbus.de/rewerse-i1/?q=node/7
  14. 14.
    Dietrich, J.: The Take manual (2007), http://docs.google.com/Doc?id=dgzzp6gn_23fx23xx
  15. 15.
    Brase, R.: Eliminate bottlenecks with a buffered iterator (2002), http://builder.com.com/5100-6370-1046648.html
  16. 16.
    Robinson, J.A.: A machine-oriented logic based on the resolution principle. J. ACM 12(1), 23–41 (1965)MATHCrossRefGoogle Scholar
  17. 17.
    Gamma, E., Helm, R., Johnson, R., Vlissides, J.: Design patterns: elements of reusable object-oriented software. Addison-Wesley Longman Publishing Co., Inc., Boston, MA, USA (1995)Google Scholar
  18. 18.
    Apache Foundation (Apache Commons Collections ), http://jakarta.apache.org/commons/collections/
  19. 19.
    OMG: Object Constraint Language Specification, version 2.0. Object Management Group (2006)Google Scholar
  20. 20.
    Rewerse Working Group I1 - Rule Modeling and Markup (Web Service for Rule Interchange), http://oxygen.informatik.tu-cottbus.de/rewerse-i1/?q=node/27
  21. 21.
    de Bruijn, J., Kifer, M.: D16.2v0.1. F-logic/XML - An XML Syntax for F-logic (2004), http://www.wsmo.org/2004/d16/d16.2/v0.1/20040324/
  22. 22.
    Carroll, J., Dickinson, I., Dollin, C., Reynolds, D., Seaborne, A., Wilkinson, K.: Jena: Implementing the semantic web recommendations (2003)Google Scholar
  23. 23.
    OMG (OMG Model Driven Architecture), http://www.omg.org/mda/
  24. 24.
    Take (project home page), http://code.google.com/p/take/
  25. 25.
    Dietrich, J.: A rule-based system for ecommerce applications. In: KES, pp. 455–463 (2004)Google Scholar
  26. 26.
    Kifer, M., Lausen, G., Wu, J.: Logical foundations of object-oriented and frame-based languages. Journal of the ACM 42(4), 741–843 (1995)MATHCrossRefMathSciNetGoogle Scholar
  27. 27.
    Business Rule Forum: (UServ Product Derby Case Study), http://www.businessrulesforum.com/2005_Product_Derby.pdf

Copyright information

© Springer-Verlag Berlin Heidelberg 2007

Authors and Affiliations

  • Jens Dietrich
    • 1
  • Jochen Hiller
    • 2
  • Bastian Schenke
    • 3
  1. 1.Massey University, Institute of Information Sciences and Technology, Palmerston NorthNew Zealand
  2. 2.Top-Logic Business Operation Systems GmbH, D-63263 Neu-IsenburgGermany
  3. 3.Brandenburgische Technische Universität Cottbus, Institut für Informatik, D-03013 CottbusGermany

Personalised recommendations