Distribution
Category UC-411

SAND98-8206 (revised)
Unlimited Release
First Printed November 1997

Jess, The Expert System Shell for the Java Platform

http://herzberg.ca.sandia.gov/jess
Ernest J. Friedman-Hill
Distributed Computing Systems
Sandia National Laboratories
Livermore, CA
Version 6.0 (7 December 2001)

ABSTRACT

This report describes Jess, an expert system shell and scripting language written entirely in Sun Microsystem's Java language. Jess supports the development of rule-based expert systems which can be tightly coupled to code written in the powerful, portable Java language. The syntax of the Jess language is discussed, and a comprehensive list of supported functions is presented. Guides to calling Java functions from Jess, to extending Jess by writing Java code, and to embedding Jess in Java applications are also included.

Abbreviated Table of Contents

Full Table of Contents
An overview of this manual
Introduction
Unpacking and compiling Jess; when to use Jess; designing a Jess application
The Jess Language
A reference guide to the Jess language, from basic language elements to rule-based programming
Programming in the Jess Language
Helpful hints and techniques for writing Jess programs
Introduction to Programming with Jess in Java
A tutorial introduction to the most commonly used Java classes in the Jess library
Adding Commands to Jess
Writing new functions for the Jess language in Java
Embedding Jess in Java Code
A brief discussion of Java application structure
Writing GUIs in Jess
How to create GUIs without writing a single line of Java code
The Jess Function List
Reference documentation for every function in the Jess language
Java API Guide
Javadoc-generated documentation for the Java classes that comprise Jess
The Rete Algorithm
An introduction to the technical details of how Jess works
Change History
How Jess got to where it is today
Useful Reference Material
A bibliography of books, articles and links useful to the Jess user
Release Notes
Information about bugs and limitations specific to this version of Jess, and information about porting applications from Jess 5 to Jess 6
Function Cross-reference
A list of all Jess functions organized by usage