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.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
Similar content being viewed by others
References
Boley, H., Tabet, S., Wagner, G.: Design Rationale for RuleML: A Markup Language for Semantic Web Rules. In: SWWS, pp. 381–401 (2001)
JSR 94: (JavaTMRule Engine API), http://www.jcp.org/en/jsr/detail?id=94
OMG: Business Semantics of Business Rules Request For Proposal (2003)OMG Document: br/2003-06-03
Forgy, C.L.: Rete: A fast algorithm for the many pattern/many object pattern match problem. Artificial Intelligence 19(1), 17–37 (1982)
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)
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)
Szyperski, C.: Component software: beyond object-oriented programming. ACM Press/Addison-Wesley Publishing Co, New York (1998)
JSR 199: (JavaTMCompiler API) http://jcp.org/en/jsr/detail?id=199
JSR 223: (Scripting for the JavaTMPlatform), http://jcp.org/en/jsr/detail?id=223
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)
Noble, J.: Basic relationship patterns. In: EuroPLOP 97: Conference proceedings(1997)
Genova, G., del Castillo, C.R., Llorens, J.: Mapping UML Associations into Java Code. Journal of Object Technology 2(5), 135–162 (2003)
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
Dietrich, J.: The Take manual (2007), http://docs.google.com/Doc?id=dgzzp6gn_23fx23xx
Brase, R.: Eliminate bottlenecks with a buffered iterator (2002), http://builder.com.com/5100-6370-1046648.html
Robinson, J.A.: A machine-oriented logic based on the resolution principle. J. ACM 12(1), 23–41 (1965)
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)
Apache Foundation (Apache Commons Collections ), http://jakarta.apache.org/commons/collections/
OMG: Object Constraint Language Specification, version 2.0. Object Management Group (2006)
Rewerse Working Group I1 - Rule Modeling and Markup (Web Service for Rule Interchange), http://oxygen.informatik.tu-cottbus.de/rewerse-i1/?q=node/27
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/
Carroll, J., Dickinson, I., Dollin, C., Reynolds, D., Seaborne, A., Wilkinson, K.: Jena: Implementing the semantic web recommendations (2003)
OMG (OMG Model Driven Architecture), http://www.omg.org/mda/
Take (project home page), http://code.google.com/p/take/
Dietrich, J.: A rule-based system for ecommerce applications. In: KES, pp. 455–463 (2004)
Kifer, M., Lausen, G., Wu, J.: Logical foundations of object-oriented and frame-based languages. Journal of the ACM 42(4), 741–843 (1995)
Business Rule Forum: (UServ Product Derby Case Study), http://www.businessrulesforum.com/2005_Product_Derby.pdf
Author information
Authors and Affiliations
Editor information
Rights and permissions
Copyright information
© 2007 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Dietrich, J., Hiller, J., Schenke, B. (2007). Take - A Rule Compiler for Derivation Rules. In: Paschke, A., Biletskiy, Y. (eds) Advances in Rule Interchange and Applications. RuleML 2007. Lecture Notes in Computer Science, vol 4824. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-540-75975-1_11
Download citation
DOI: https://doi.org/10.1007/978-3-540-75975-1_11
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-75974-4
Online ISBN: 978-3-540-75975-1
eBook Packages: Computer ScienceComputer Science (R0)