Skip to content

Import drools docs (7/10) #4556

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 92 commits into from
May 8, 2025
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
92 commits
Select commit Hold shift + click to select a range
9286d3f
Incorporate several additional corrections/improvements from "laune".
IanDarwin Jun 28, 2012
b95d0c9
Update master
wlaun Jun 29, 2012
f096323
Update master
wlaun Jun 29, 2012
474c721
Improving readability
wlaun Jun 29, 2012
640c9ca
Improve readability.
wlaun Jul 1, 2012
f315475
[JBRULES-3582] Create a EBNF file describing the DRL syntax
mariofusco Jul 24, 2012
e518313
- When a pkg is deserialized the classloader of the provided kbase (i…
esteban-aliverti Feb 21, 2012
0ae8893
Document logging
ge0ffrey Aug 8, 2012
72a27e8
Updated image to reflect operation
manstis Aug 15, 2012
68142db
add warning about the wierd double quoth encodings in some locales
ge0ffrey Aug 23, 2012
74f57c4
typo
ge0ffrey Aug 30, 2012
8298c10
JBRULES-2438 - BUGZILLA-724313: Document warning in decision tables d…
ge0ffrey Aug 30, 2012
90b3c02
JBRULES-2438 - BUGZILLA-724313: Add spreadsheet name in rule name uni…
ge0ffrey Aug 31, 2012
df6674c
Set release version: 5.5.0.Beta1 (jBPM 5.4.0.Beta1)
manstis Sep 24, 2012
9daa9f8
Set next development version: 5.5.0-SNAPSHOT (jBPM 5.4.0-SNAPSHOT)
manstis Sep 26, 2012
f79063b
[JBRULES-3644] document how to configure a TimerJobFactoryManager
mariofusco Oct 11, 2012
f160385
Set release version: 6.0.0-SNAPSHOT
manstis Oct 15, 2012
1949a29
new kie api
mariofusco Nov 28, 2012
40b5ca1
start implementing new kie api
mariofusco Nov 28, 2012
3a100ce
Kie API refactor
mariofusco Dec 11, 2012
2d7b7c0
Set release version: 6.0.0.Alpha7 (0.1.1.Final for UberFire)
manstis Feb 7, 2013
8e15b4c
Set release version: 6.0.0-SNAPSHOT (0.2.0-SNAPSHOT for UberFire)
manstis Feb 8, 2013
2eb5a17
Clarify activation-group semantics
wlaun Feb 14, 2013
23c3ea0
Several grammar fixes, improve wording.
wlaun Feb 16, 2013
37b6fde
Set release version: 6.0.0.Alpha8
Feb 27, 2013
bcbe56f
Set next development version: 6.0.0-SNAPSHOT
Feb 27, 2013
b5eacde
Set release version: Drools 6.0.0.Alpha9 and uberfire 0.2.0.Alpha2
Feb 28, 2013
3676f8d
Set next development version: 6.0.0.-SNAPSHOT and uberfire 0.2.0-SNAP…
Feb 28, 2013
eb63580
DROOLS-7 Initial Working Phreak
Mar 11, 2013
47f0b2d
Resolve split-packages: move everything from drools-compiler under or…
ge0ffrey Mar 15, 2013
450f082
Don't teach our users bad habbits
ge0ffrey Mar 15, 2013
78578ea
Resolve split-packages: move everything from drools-core under org.dr…
ge0ffrey Mar 15, 2013
cf93a6f
Resolve split-packages: move everything from drools-core under org.dr…
ge0ffrey Mar 15, 2013
5a834a6
Resolve split-packages: move everything from drools-core under org.dr…
ge0ffrey Mar 16, 2013
4d75a8b
Resolve split-packages: move everything from drools-core under org.dr…
ge0ffrey Mar 16, 2013
8488e1f
Resolve split-packages: move everything from drools-core under org.dr…
ge0ffrey Mar 16, 2013
3576795
Fix refactoring errors due to IntelliJ bug
ge0ffrey Mar 18, 2013
73bfdcb
docs: remove empty widths
ge0ffrey Mar 19, 2013
e0315ea
Set release version: 6.0.0.Beta1
mbiarnes Apr 8, 2013
fff0716
to version 6.0.0-SNAPSHOT
mbiarnes Apr 9, 2013
efa1c92
docs: typo
ge0ffrey Jun 20, 2013
2976803
Update Section-Rule.xml
wlaun Jun 22, 2013
9d066d8
upgrade to 6.1.0-SNAPSHOT, (uberfire 0.4.0-SNAPSHOT)
mbiarnes Jul 29, 2013
55b500c
-Refactor docs so images display in XmlMind and published versions
Aug 21, 2013
d7f6631
-Refactor docs to simplify layout and namings
Aug 21, 2013
bbb64bd
update uml diagrams
mariofusco Oct 22, 2013
15486ba
add timers documentation
mariofusco Oct 22, 2013
6b084fd
rewriting of building and runtime docs for the new Kie api
mariofusco Oct 25, 2013
dc05e6d
Documentation
Oct 27, 2013
baa9abc
rewriting of deploying docs for the new Kie api
mariofusco Oct 28, 2013
54c1c1e
docs: disable all old *-docs artifacts + go to 3 docs (drools-docs, j…
ge0ffrey Oct 30, 2013
88cdd1f
DROOLS-316 Arbitrary Conflict Resolution can be confusing use LoadOrder
Nov 2, 2013
d08fec9
upgrade to new version: 6.2.0-SNAPSHOT
kiereleaseuser Jun 6, 2014
ef99109
docs: fix accumulate example
triceo Jun 14, 2014
cea5f5c
BZ1126651 Rule attributes under "RuleSet" in spreadsheet affects pack…
tkobayas Aug 6, 2014
73bc1fd
programlisting typo
tarilabs Aug 26, 2014
6f403d0
programlisting typo
tarilabs Aug 26, 2014
ab9cb6e
upgrade to next -SNAPSHOT
kiereleaseuser Oct 13, 2014
0b53da7
move tutorials.banking to examples
mariofusco Oct 14, 2014
dc16dd0
Removing drools-docs as docs were moved to drools-jbpm
etirelli Jan 13, 2015
578c0c9
Revert "Removing drools-docs as docs were moved to drools-jbpm"
etirelli Jan 13, 2015
0662de0
Remove drools-docs module. Drools docs are now in droolsjbpm-knowledg…
Jan 16, 2015
663aa4e
Redo lost commits: gitignore META-INF, drools-grid-core, empty dirs
ge0ffrey Dec 23, 2010
9ab58b1
JBRULES-2858
wlaun Jan 2, 2011
0923d05
Follow-up for JBRULES-2819, 2858, 2866 and extensions to DSL (no JIRA).
wlaun Jan 16, 2011
c62fce0
upgrade to maven-jdocbook-plugin 2.3.4
ge0ffrey Jan 18, 2011
e4614f9
Documentation of decision table change (parens, from, eval)
wlaun Jan 18, 2011
72bb0a1
JBRULES-1582 Info logging should have no more than 1 line per step
ge0ffrey Jan 19, 2011
a092e36
Changed BRMS to Guvnor, less confusion between project and product
Rikkola Jan 25, 2011
dbcba4b
typo
ge0ffrey Jan 27, 2011
2ad2763
remove flow modules (as they have been copied to the specific jbpm re…
ge0ffrey Jan 27, 2011
cfd98f9
Fix bad markup
wlaun Feb 1, 2011
6baeef0
split-up preparation: move drools-docs-planner dir into the drools-pl…
ge0ffrey Feb 7, 2011
c1a27a8
JBRULES-2869: Split-off of module guvnor into separate git repository
ge0ffrey Feb 12, 2011
1a19ac6
JBRULES-2869: Split-off of integration into separate git repository
ge0ffrey Feb 15, 2011
49e8b26
Created the 5.2.0.M1 release notes section
Rikkola Feb 15, 2011
2a4a669
JBRULES-2869: Rename to new directory structure after split-up: renam…
ge0ffrey Feb 18, 2011
7d4fc6e
JBRULES-2869: Split-off: remove directories from docs and examples th…
ge0ffrey Feb 18, 2011
63b1cc2
[DROOLS-6671] organize drools 8 docs (#4292)
mariofusco May 9, 2022
3ef2a5b
[KOGITO-7165] Drools release pipeline: Antora documentation handling …
tkobayas May 29, 2022
6a8eae7
Bump convict from 6.2.2 to 6.2.3 in /drools-docs/antora (#4415)
dependabot[bot] May 30, 2022
e20cc29
[main] Update version to 8.24.0-SNAPSHOT (#4449)
Jun 8, 2022
f8c17b7
[DROOLS-7004] Publish Antora docs as drools job (#4439)
tkobayas Jun 8, 2022
322c6b1
[DROOLS-6984] Drools8 docs : getting started / how to (#4422)
tkobayas Jun 15, 2022
7ea32ad
BXMSDOC-3050-alternative: New kie-docs master. (#1024)
sterobin Aug 30, 2018
f95799a
BXMSDOC-3202-master: Single-source DMN content between community and …
sterobin Sep 6, 2018
454001b
BXMSDOC-3197-master: Update BOM versions in docs. (#1060)
sterobin Sep 12, 2018
f4e7bb8
BXMSDOC-3236-master: Global terminology update. (#1104)
sterobin Sep 21, 2018
4532ec8
BXMSODC-2980-master: Create PMML doc and implement SME, QE, and peer …
sterobin Sep 25, 2018
e77b811
BXMSDOC-3345-master: Fix broken links in community docs. (#1166)
sterobin Oct 23, 2018
4ec92c2
DROOLS-3176 Document DMN org.kie.dmn.compiler.execmodel flag(s) (#1167)
tarilabs Nov 6, 2018
1d4bc4c
BXMSDOC-3066-master: Create KIE APIs doc. (#1200)
sterobin Nov 20, 2018
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
12 changes: 12 additions & 0 deletions drools-docs/.gitignore
Original file line number Diff line number Diff line change
@@ -1,10 +1,22 @@
# Local files
/target
/local
/build
/node
/node_modules

# Eclipse, Netbeans and IntelliJ files
/.*
!.gitignore
!.gitattributes
!.htaccess
/nbproject
/*.ipr
/*.iws
/*.iml

# Repository wide ignore mac DS_Store files
.DS_Store

# Doc generation
!.index.adoc
61 changes: 61 additions & 0 deletions drools-docs/README.adoc
Original file line number Diff line number Diff line change
@@ -0,0 +1,61 @@
= Drools documentation website

https://www.drools.org/docs[www.drools.org/docs]

NOTE: The instructions below are to generate Antora site manually. This drools-docs is already configured to generate Antora site with maven plugins.

== Prerequisite

Running Antora with Lunr extension (required to generate self-hosted search) requires Node.js v16.0.0 or above.

== Installing Antora and Lunr

Install Antora CLI 3.0.0 within the playbook project so you can run the antora command using npx:

`npm i -D -E @antora/[email protected]`

Next, install the site generator package within the playbook project:

`npm i -D -E @antora/[email protected]`

Now when you run `npx antora -v`, you should see the version of both the Antora CLI and the site generator printed in the terminal.

```
@antora/cli: 3.0.0
@antora/site-generator: 3.0.0
```

Finally install the Lunr extension with:

`npm i @antora/lunr-extension`

== Building the website locally

This folder contains 2 antora playbooks, `antora-playbook.yml` to generate the documentation from the Drools git repository and `antora-playbook-author.yml` to generate it from the source of your locally installed drools project. To run the latter and generate the documentation locally under the `build` folder use:

`npx antora antora-playbook-author.yml`

== How it works

This module builds a documentation website using https://antora.org/[Antora] that pulls the content from
the latest release branch of the https://github.com/kiegroup/drools[drools repository].

To simplify the maintenance, the documentation website is based on a pre-built default Antora UI bundle
located in `ui-bundle/ui-bundle.zip`. Customizations are located in `supplemental-ui` that Antora uses to replace
parts of the default `ui-bundle.zip`.

== How to upgrade

=== Upgrade UI bundle

Download the latest `ui-bundle.zip` from https://gitlab.com/antora/antora-ui-default/-/jobs/artifacts/master/raw/build/ui-bundle.zip?job=bundle-stable[Antora GitLab job]
and replace the existing one in the `ui-bundle` directory.

Be aware that the bundle is not versioned and in the future might not be compatible with the customizations this website uses.

=== Upgrade Lunr search engine

Download the new version of the https://lunrjs.com/[Lunr engine] from the https://www.npmjs.com/package/lunr[NPM registry]
and replace the existing `supplemental-ui/js/vendor/lunr-*.min.js` file.

Make sure the search box in the top-right corner of the documentation website can still provide hints.
20 changes: 20 additions & 0 deletions drools-docs/antora-playbook-author.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
# This file serves for local development. Keep it in sync with antora-playbook.yml.
site:
title: Drools Documentation
url: https://www.drools.org/docs
start_page: drools::getting-started/index.adoc
robots: allow
content:
edit_url: '{web_url}/edit/main/{path}'
sources:
- url: ..
branches: [HEAD]
start_path: drools-docs/src
ui:
bundle:
url: ./ui-bundle/ui-bundle.zip
supplemental_files: ./supplemental-ui
antora:
extensions:
- '@antora/lunr-extension'

23 changes: 23 additions & 0 deletions drools-docs/antora-playbook.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
# This file serves for generating the Drools documentation website.
# For local development, see antora-playbook-author.yml.
site:
title: Drools Documentation
url: https://www.drools.org/docs
start_page: drools::getting-started/index.adoc
robots: allow
content:
edit_url: '{web_url}/edit/main/{path}'
sources:
- url: [email protected]:kiegroup/drools.git
# Update with every release.
branches: [main]
start_path: drools-docs/src
ui:
bundle:
url: ./ui-bundle/ui-bundle.zip
snapshot: true
supplemental_files: ./supplemental-ui
antora:
extensions:
- '@antora/lunr-extension'

Original file line number Diff line number Diff line change
Expand Up @@ -4,10 +4,9 @@
xml:base="./" xmlns="http://docbook.org/ns/docbook" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xlink="http://www.w3.org/1999/xlink"
xmlns:xi="http://www.w3.org/2001/XInclude" xmlns:ns="http://docbook.org/ns/docbook">
<title>Api Reference</title>
<title>Deployment and Testing</title>

<xi:include href="Section-Building.xml" />
<xi:include href="Section-Deploying.xml" />
<xi:include href="Section-Running.xml" />
<xi:include href="Section-Deployment.xml" />
<xi:include href="Section-Testing.xml" />

</chapter>
Original file line number Diff line number Diff line change
@@ -0,0 +1,95 @@
<?xml version="1.0" encoding="UTF-8"?>
<section version="5.0"
xsi:schemaLocation="http://docbook.org/ns/docbook http://www.docbook.org/xml/5.0/xsd/docbook.xsd http://www.w3.org/1999/xlink http://www.docbook.org/xml/5.0/xsd/xlink.xsd"
xml:base="../" xmlns="http://docbook.org/ns/docbook" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xlink="http://www.w3.org/1999/xlink"
xmlns:xi="http://www.w3.org/2001/XInclude" xmlns:ns="http://docbook.org/ns/docbook">
<title>Testing</title>

<para>In recent years, practices such as Test Driven Development have become
increasingly mainstream, as the value and quality that these techniques
bring to software development has been realized. In a sense, rules are code
(although at a high level), and a lot of the same principles apply.</para>

<para>You can provide tests as a means to specify rule behavior before
rules are even written. Further to this, tests are even more important in
environments where rules change frequently. Tests can provide a baseline of
confidence that the rule changes are consistent with what is specified in
the tests. Of course, the rules may change in such a way as the tests are
now wrong (or perhaps new tests need to be written to cover the new rule
behavior). As in TDD practices, tests should be run often, and in a rule
driven environment, this means that they should be run every time the rules
change (even though the software may be static).</para>

<section>
<title>Testing frameworks</title>

<para>For developers, clearly JUnit (or TestNG) are popular tools for
testing code, and these can also apply to rules. Keep in mind that rule
changes may happen out of sync with code changes, so you should be
prepared to keep these unit tests up to date with rules (may not be
possible in all environments). Also, the best idea is to target testing
some core features of the rule sets that are not as likely to change over
time.</para>

<para>Obviously, for rule tests, other non source code driven frameworks
would be preferable to test rules in some environments. The following
section outlines a rule testing component add on.</para>
</section>

<section>
<title>FIT for Rules - a rule testing framework</title>

<para>As a separate add-on, there is a testing framework available that is
built on FIT (Framework for Integrated Testing). This allows rule test
suites (functional) to be capture in Word documents, or Excel spreadsheets
(in fact any tool that can save as HTML). It utilizes a tabular layout to
capture input data, and make assertions over the rules of a rulesets
execution for the given facts. As the tests are stored in documents, the
scenarios and requirements can be (optionally) kept in the same
documents, providing a single point of truth for rule behavior.</para>

<para>Also, as the test documents are not code, they can be updated
frequently, and kept with the rules, used to validate rule changes etc. As
the input format is fairly simple to people familiar with the domain of
the rules, it also facilitates "scenario testing" where different
scenarios can be tried out with the rules - all external to the
application that the rules are used in. These scenarios can then be kept
as tests to increase confidence that a rule change is consistent with the
users understanding.</para>

<para>This testing framework is built on FIT and JSR-94, and is kept as a
separate project to JBoss Rules. Due to it being built on FIT, it requires
a different license (but is still open source). You can download and read
more about this tool from this web page:
<link xlink:href="http://fit-for-rules.sourceforge.net/">Fit for rules</link></para>

<para>The following screen captures show the fit for rules framework in
action.</para>

<screenshot>
<mediaobject>
<imageobject>
<imagedata fileref="images/Chapter-Deployment/Testing1.png" />
</imageobject>
</mediaobject>
</screenshot>

<para>Using Fit for rules, you capture test data, pass it to the rule
engine and then verify the results (with documentation woven in with the
test). It is expected that in future, the Drools Server tools will provide
a similar integrated framework for testing (green means good ! red means a
failure - with the expected values placed in the cell). Refer to
http://fit.c2.com for more information on the FIT framework itself.</para>

<screenshot>
<mediaobject>
<imageobject>
<imagedata fileref="images/Chapter-Deployment/Testing2.png" />
</imageobject>
</mediaobject>
</screenshot>

<para>More information and downloads from <link xlink:href="http://fit-for-rules.sourceforge.net/">here</link></para>
</section>
</section>
Loading