Printer Problems Diagnosis#

This small demo example shows the basic functionality of KnowWE and its corresponding knowledge representations for the formalization of diagnostic knowledge.

We build a knowledge base for deriving the reasons for the faults of an imaginary printer.

Set-Up#

Annotate Wiki Articles#

Every article containing knowledge of the printer example needs to be tagged in a special manner. We choose the tag name Printer_Demo and we insert the annotation
%%Package Printer_Demo
into every particular article containing knowledge.

Define the Knowledge Base Center#

In general, the knowledge base can be distributed across many wiki articles (each of them tagged with Printer_Demo). Therefore, we need to define a place where all knowledge elements are collected into a single knowledge base. For this, we use the KnowledgeBase markup in the following manner:
%%KnowledgeBase 
  Printer Fault Diagnosis Demo 
  @author: joba
  @version: 1.0
  @uses: Printer_Demo
%

By inserting the markup the following center is provided:

Printer Fault Diagnosis Demo
1.0 joba
Printer_Demo

Terminology#

In the first step we need to define the terminology of the planned system, i.e., the questions (inputs into the system) and the solutions (outputs of the system). The definition of terms for questions and solutions is described in the article Tutorial Printer Problem - Terminology.

Derivation Knowledge#

After the definition of the terminology we need to define knowledge elements that implement the derivation and dialog behavior of the knowledge base. For that, d3web/KnowWE provides a number of alternatives ranging from scoring rules, decision trees to set-covering models. In this tutorial we show how to implement the derivation knowledge as a DiaFlux flowchart model.

Testing the Knowledge Base#

In the next step, we test the knowledge base by running an example dialog. A quick dialog interface can be created by inserting the markup

[{KnowWEPlugin quickInterview}]
%%ShowSolutions @master: Tutorial Printer Problems

into the same article, where KnowledgeBase is defined. The markup will provide a simple interface for the user:

ShowSolutions
Unable to find knowledge base. Please either add to a package used for a knowledge base or specify a master article.

Test the printer tutorial
joba

Printer_Demo