From Wikipedia, the free encyclopedia
Jump to: navigation, search
Developer(s) various
Stable release
11.0 / July, 2016
Written in Java
Operating system Cross-platform
Type Knowledge-based systems
License LGPL
Website d3web

d3web is a free, open-source platform for knowledge-based systems (expert systems). Its core is written in Java using XML and/or Office-based formats for the knowledge storage. All of its components are distributed under the terms of the Lesser General Public Licence (LGPL).

The d3web diagnostic core implements reasoning and persistence components for problem-solving knowledge including decision trees, (heuristic) rules, set-covering models and diagnostic flowcharts. The software can be integrated into foreign applications (embedded or OEM), but a number of off-the-shelf components already exist.


d3web is a component-based software platform providing applications for authoring and using/executing problem-solving knowledge. The following applications are primarily using d3web:

  • KnowWE (Knowledge Wiki Environment): A semantic wiki building on JSPWiki. Problem-solving knowledge can be authored and executed through the wiki interface. Developed knowledge bases can be exported to be used in OEM or embedded reasoners. Additionally, knowledge exchange via OWL ontologies is provided.
  • KnowME (Knowledge Modelling Environment): A rich-client application for the development of d3web knowledge bases. Problem-solving knowledge can be authored and executed within the desktop application. Developed knowledge bases can be used in OEM or embedded reasoners. The software KnowME is no longer under active development. It is replaced by the KnowWE component (see above).
  • Dialog2: A web-based application for demonstrating the capabilities of the d3web core reasoner. The web servlet is based on Java Server Faces. It can be used out of box or as a starting point for own developments for building knowledge-based interview systems.

Application Domains[edit]

A number of industrial and academic projects already used or are currently using the d3web platform.

The main application domains are:

  • medical diagnosis, documentation, and therapy:
  • technical fault diagnosis
  • monitoring of technical devices.

Some applications (both, commercial and free) created using the d3web diagnostic engine:

  • SmartCare™: a medical closed-loop system for weaning ventilated patients, created by Dräger[1]
  • SonoConsult: a medical support system for evaluating sonographic examinations (German only)
  • eDOC: a web-based system for self-diagnosing various medical issues (German only)


The development of d3web originates from the research work of Prof. Dr. Frank Puppe (University Würzburg, Germany) going back to the 1980s, starting with the medical expert systems MED1[2] and MED2[3] . Whereas the original systems were focussed on medical diagnosis the applicability of the approach was generalized by the successor D3[4] .[5] As the predecessors were implemented in the LISP programming language, d3web[6] is a full Java re-implementation.

See also[edit]

Related systems[edit]

  • CLIPS: public domain software tool for building expert systems.
  • ILOG rules: a business rule management system.
  • JBoss Drools: a business rule management system (BRMS).
  • JESS: a rule engine for the Java platform - it is a superset of CLIPS programming language.
  • Prolog: a general purpose logic programming language.
  • DTRules: a Decision Table-based, open-sourced rule engine for Java.


  1. ^ Gritje Meinke (2011-06-22). "Analyse von Anomalien in der graphischen Modellierung von diagnostischem Wissen" (pdf). 
  2. ^ Frank Puppe; Bernhard Puppe (1983). "Overview on MED1: A Heuristic Diagnostics System with an Efficient Control-Structure". Gwai 1983. 
  3. ^ Frank Puppe; Bernhard Puppe (1985). "How Domain Characteristics Induce Expert System Features". Gwai 1985. 
  4. ^ Frank Puppe; et al. (1996). Wissensbasierte Diagnose- und Informationssysteme. Berlin, Germany: Springer. 
  5. ^ Frank Puppe (1998). "Knowledge reuse among diagnostic problem-solving methods in the Shell-Kit D3". Int. J. Hum.-Comput. Stud. Elsevier. 49 (4). 
  6. ^ Joachim Baumeister (2004). Agile Development of Diagnostic Knowledge Systems. Berlin: IOS Press. ISBN 1-58603-463-4. 

External links[edit]