Home

Drools

Drools is a business rule management system (BRMS) and rules engine written in Java by JBoss, now part of Red Hat. It provides a production rule system for modeling and executing business rules and supports complex event processing. At its core, Drools evaluates rules defined in the Drools Rule Language (DRL) against a set of facts represented by Java objects. Rules are organized into a knowledge base and executed through stateless or stateful sessions. The engine uses a Rete-based algorithm to determine rule activations and an agenda to fire rules in a controlled order.

Drools supports decision tables, domain-specific languages (DSLs), and various editors to author rules, and can ingest

Drools is designed to be embedded in Java applications and supports both stateless and stateful sessions, as

rules
in
DRL
as
well
as
guided
or
business-friendly
formats.
It
includes
components
such
as
Drools
Expert
(the
rules
engine)
and
Drools
Fusion
(complex
event
processing),
with
historical
Drools
Flow
for
process/workflow
integration.
The
Guvnor
web-based
governance
tool
provides
knowledge-base
management
and
versioning.
In
modern
releases,
these
capabilities
are
organized
under
the
KIE
(Knowledge
Is
Everything)
group
as
part
of
KIE
Workbench
and
the
KIE
API,
with
integration
pathways
to
jBPM
for
business
processes.
well
as
query
support
and
event
streams.
It
emphasizes
modularity
and
interoperability,
allowing
rules
to
be
maintained
separately
from
application
code
and
combined
with
processes
when
needed.
Drools
is
released
under
the
Apache
License
2.0,
reflecting
its
open-source
model
and
community
development.