VisiRule JavaScript Rule Engine Demos

This page features VisiRule charts delivered using the VisiRule for JavaScript compiler and low footprint rule engine coded in JavaScript. This is different to the VisiRule ChatBot delivery mechanism which shares the workload between client device (browser) and the VisiRule cloud-based server.


JavaScript Evaluator & Delivery

JavaScript Evaluator & Delivery means that charts can run server-free, entirely within the clients' browser with no need for interaction with any internet connection. This means that not only is delivery independent of network performance but the interaction is highly responsive.


This can be an ideal way to deliver many decision tree flowcharts solutions.

The VisiRule for JavaScript compiler encodes the business decision logic as an XML structure which reflects the structure of the VisiRule chart. This XML is evaluated locally using a dedicated JavaScript Evaluator rule engine. This allows for execution in the browser, on mobile devices - indeed anywhere that JavaScript can run. VisiRule charts delivered using the JavaScript Engine are self-contained and can even be embedded within emails and documents.

Change Your Mind?

The dedicated JavaScript Evaluator and JavaScript rule engine builds a dynamic stack of the questions asked and the answers given. This allows the user to go back and change their answers to previous questions and re-evaluate.

Embedded Calculations and Formulae

The JavaScript Evaluator and JavaScript rule engine supports the inclusion of Excel-like formulae and calculations.


JavaScript Customisation

Applications delivered as JavaScript can be easily customised, tweaked, enhanced, simply by editing the styles in the CSS style sheet or augmenting the HTML with additional JavaScript code. This greatly simplifies the run-time delivery of charts.


In a traditional server-rendered application, every user interaction has to confer with a remote server about what to do next. Client-side web apps are different. They load the entire payload up-front, so once it’s booted, it has all of the templates, business logic, etc. necessary to handle a user’s interactions. 


This means that client-side solutions are highly responsive and run very quickly.

How to compile a VisRule chart into HTML
How to Compile your VisiRule chart into HTML

Client Side Delivery

The demos presented use a basic CSS style sheet which specifies the font, size, face, colour, spacing, border for each node type found in the page (like question, explanation, conclusion etc). This presentation layer can be easily enhanced and extended by anyone familiar with HTML and standard web design principals.


This is made easier because VisiRule separates the chart structure from the chart logic and node data and stores them in XML, accompanied by the dedicated VisiRule for JavaScript business rule engine.

Lawns Example

Volatile Data

The focus of this decision tree is not to list every possible combination of scenarios, but to show some of the basic options that are available and remind examiners about things to think about when imaging.

Car Braking Example

Diagnosing braking problems and noises with shoes, rotors and calipers.

Do the brakes fail to stop the car?

If you have to step on the brake pedal harder than you want to in order for the brakes to operate normally, the brakes do stop the car. What we're interested in here is when you have to push on the pedal with both feet and the car slowly rolls to a stop rather than locking up the wheels, or when the pedal goes to the floor, won't pump up, and you have to yank the emergency brake or turn the engine off in gear in order to slow it down. I drove around ten miles through city street in a car with no hydraulic brakes when I was a stupid teenager, though fortunately it was a standard transmission and I was just smart enough to ignore the cars behind me and time all the lights.

Do I Need Approval?

Naval Operations Security (OPSEC)