Questions tagged [jess]

Jess is a forward-chaining rule engine written in Java. It implements a Lisp-like rule language very similar to the classic CLIPS language.

Jess is a forward-chaining rule engine written in Java, developed by Ernest Friedman-Hill of Sandia National Labs. It implements a Lisp-like rule language very similar to the classic CLIPS language. You can learn more about Jess at www.jessrules.com .

Jess provides rule-based programming suitable for automating an expert system, and is often referred to as an expert system shell. In recent years, intelligent agent systems have also developed, which depend on a similar capability.

Rather than a procedural paradigm, where a single program has a loop that is activated only one time, the declarative paradigm used by Jess continuously applies a collection of rules to a collection of facts by a process called pattern matching. Rules can modify the collection of facts, or they can execute any Java code.

Jess can be used to build Java servlets, EJBs, applets, and full applications that use knowledge in the form of declarative rules to draw conclusions and make inferences. Since many rules may match many inputs, there are few effective general purpose matching algorithms. The Jess rules engine uses the Rete algorithm.

199 questions
1
vote
2 answers

Is there any way to parameter Jess in a way it will never much variables with different names in the same rule?

I explain my question by Example. (deftemplate point (slot a)(slot b)) (assert (point (a 1)(b 1))) (assert (point (a 1)(b 2))) (assert (point (a 2)(b 2))) I want to get all possible Points with avoiding Points with the same a and b…
Chihab
  • 11
  • 2
1
vote
2 answers

Get CLIPS/Jess output in string variable

i have integrated jess with java in netbeans. I want to access output in a string variable. when I (run) the .clp file and give it an input, it shows me output, but I want to get this output in string variable. How can I do this?? please help. this…
hassan mirza
  • 139
  • 2
  • 8
1
vote
1 answer

What's the use cases of rule engines in Protege?

When writing new rules in Protege with SWRLTab and SQWRLTab, we define constrained rules in SWRL and query with SQWRL by using semantic reasoners such as FaCT++, Pellet, ..., or rule engines such as Drools or Jess. But because Protege limits its…
c2416726
  • 69
  • 4
1
vote
1 answer

Return a value from rule jess or drools (expert system)

In jess the way to return a string from a rule is like that : (defrule welcome-toddlers "Give a special greeting to young children" (person {age < 3}) => (printout t "Hello, little one!" crlf)) My question is how implement the return function, this…
Lah Cen
  • 27
  • 1
  • 8
1
vote
1 answer

Counting Existing Facts in the RHS of Clips Rules

How do you test for fact existence in the RHS of rules in Clips? I'm trying to design a rule that will "score" the current state by counting how many goal facts exist. It's obvious how to test for facts in the LHS, but I can't find how to do the…
Cerin
  • 60,957
  • 96
  • 316
  • 522
1
vote
1 answer

Call in Jess manipulated Object from Java

) Im writing my Master Thesis and I´ve to use the JESS Platform for it. I want to ask a question. For example I have this Java Class which is named as "Main": public class Main { private String user = "Joe"; public String getUser(){ return…
1
vote
1 answer

Using JESS rule engine with R

I'm currently working on a weather pattern prediction system development for my final year project which is a group project. We need to crate a rule based system for pattern prediction. We used R for data mining purposes, therefore we intend to R…
Mlarnt90
  • 176
  • 1
  • 4
  • 19
1
vote
1 answer

Printout the deftemplate information in java

I am trying to print out the information stored into the recommendation(slot package)(slot explanation) deftemplate, from java after some rules have been fired in JESS. the part of code related to printing out the results is as followed : Rete r =…
1
vote
1 answer

How to Add a Newline (\n) Character to String in Jess

Assuming I have a string called ?a with a value of "b", how can I add a newline character to it so that it will contain the value "b\n"? I've tried the following to no avail: (bind ?a (str-cat ?a \n)) (bind ?a (str-cat ?a crlf)) (bind ?a (sym-cat ?a…
Vedaad Shakib
  • 739
  • 7
  • 20
1
vote
2 answers

Jess: Obtaining fact-id of already asserted fact?

So when you assert an already asserted fact in Jess, rather than assert returning the id of that fact, it returns FALSE. It seems in Java you can use "findFactByFact", which I assume is the way, but how do I use this if I don't have the fact? When I…
user2154768
  • 890
  • 3
  • 8
  • 16
1
vote
1 answer

What exactly does bsave, save in Jess?

I am quite new to Jess and am looking into persisting the Rete algorithm. It's come to my attention that in Jess there is the bsave function that saves the rete object, but what exactly does that mean? Does it save the facts, functions and rules…
1
vote
1 answer

Reporting JESS's inference

I'm trying to report the inference steps in JESS. For example, I would like to know which rules/facts caused inference engine to fire a certain rule. In order words, I want to see the theorem proving capabilities of JESS. Here is an example from…
Lorderon
  • 131
  • 1
  • 3
  • 13
1
vote
1 answer

Use Jess rules in Java: Asserted instances cannot be used for further reasoning

I am using JessTab API for manipulating ontologies in Java through Jess rules. A simple ontology with a class Person is used as an example. I ran the following code from Java to assert new instance for class Person: private final Rete r = new…
Edi
  • 109
  • 11
1
vote
0 answers

How to use Jess (Rule Engine for the Java) with Java Maven Project?

I wanted to create a simple maven java project to use Jess (Rule Engine for the Java), but I don't see any dependency is present for this to use import jess.*; I did google for Jess library to use with Java Maven project, I don't see it's free to…
user4618583
1
vote
1 answer

using Jess from Java

Hi, I have written all my code in JESS and now I wanted to use that code in Java. I wanted to know if I would need to redefine the deftemplates as in the textbook? Or is it possible to use that code with making some slight changes? I have two clp…
1 2
3
13 14