edu.mit.sketch.system
Class KnowledgeSourceManager

java.lang.Object
  |
  +--edu.mit.sketch.system.KnowledgeSourceManager

public class KnowledgeSourceManager
extends Object

This class coordinates all of the knowledge sources and finds which ones are triggered by a given seed item.

Knowledge sources can be selected by their triggers as well as by the type of processing they can do. For example, the system might want to do only bottom-up processing, so it would need to ask for only the KS's which do bottom-up processing, and then get the subset of those that trigger. Alternatively, the system might want to check all the knowledge sources and then choose which one to execute by judging how many from each type have triggered.

Furthermore, each KS is associated with a package, so it can be activated and deactivated according to this package. I am not sure that this is really necessary, but it's in here for now...

XXX: I am not sure how processing type will be represented yet. for now I guess each knowledge source will just have to specify a type a string. This seems to give a little too much freedom, but I don't want to overrestrict the types there can be before I know what I am talking about.

Created: Mon Nov 26 18:46:08 2001
Copyright: Copyright (C) 2001 by MIT. All Rights Reserved.


Constructor Summary
KnowledgeSourceManager()
           
 
Method Summary
 void addKnowledgeSources(Collection kss, String pkgName)
           
 LinkedList getTriggered(BBItemHandler items, Blackboard bb)
          Get all the knowledge sources that trigger.
 void removeKnowledgeSources(String pkgName)
          Remove a package of knowledge sources.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

KnowledgeSourceManager

public KnowledgeSourceManager()
Method Detail

addKnowledgeSources

public void addKnowledgeSources(Collection kss,
                                String pkgName)

removeKnowledgeSources

public void removeKnowledgeSources(String pkgName)
Remove a package of knowledge sources. You must remove them by entire package, not one at a time.

getTriggered

public LinkedList getTriggered(BBItemHandler items,
                               Blackboard bb)
Get all the knowledge sources that trigger.