knowledge
Class A_Box

java.lang.Object
  |
  +--knowledge.A_Box

public class A_Box
extends java.lang.Object
implements java.io.Serializable, java.lang.Cloneable

Die A-Box ist eine Liste aller Instanzen. Es gibt eine globale suchuebergreifende A-Box und fuer jede Planausfuehrung eine lokale.

Version:
2.2 [10.02.00]
Author:
Volkher Kaschlun, Ulla Mentel
See Also:
Serialized Form

Field Summary
 java.util.LinkedList ConcreteRolesList
           
(package private) static long serialVersionUID
          serialVersionUID
private  java.util.LinkedList theConstraintInstances
           
private  java.util.Hashtable theInstanceHashTable
          Der Hashtable aller Instanzen.
protected  T_Box theTBox
           
 
Constructor Summary
(package private) A_Box()
          Konstruktor der Klasse A_Box
  A_Box(T_Box t)
          Konstruktor der Klasse A_Box
 
Method Summary
 void clean(java.util.Calendar theDeleteDate, java.util.LinkedList theUndeleteConcepts)
          Entfernt Instanzen mit dem ältesten Datum des letzten Zugriffs (simuliert das Vergessen) Soll nur vom Instanzenlerner aufgerufen werden
 java.lang.Object clone()
          Liefert eine tiefe Kopie der globalen A-Box.
private  void computeNextInstanceID()
           
private  Instance createInstanceClone(Instance theInstance)
          Erzeugt ein neue Objekt der Klasse Instanz, wobei die ID, der Name und alle Flags von der uebergebenen Instanz kopiert werden.
private  void deleteInstance(Instance theInstance)
          deleteInstance loescht eine Instanz endgueltig aus der A-Box.
 java.util.LinkedList find(java.lang.String instanceName)
          Sucht zum gegeben Namen die Instanzen mit gleichem Namen.
 ConcreteRole getConcreteRole(Role theRole, Instance from, Instance to)
          Sucht die konkrete Rolle, die unter die übergebene Konzept-Rolle fällt und von der Instanz from zu der Instanz to verläuft.
 java.util.LinkedList getConcreteRoles(Role theRole)
          Zu einer Konzeptrolle wird eine Liste aller konkreten Rolle geliefert.
 java.util.LinkedList getConstraintInstances()
           
 NetEntity getContents(Instance i)
          liefert ein optional zu einer Instanz vorhandenes Inhaltsobjekt zurueck
 Instance getInstance(long id)
          liefert zu der ID die Instanz
 java.util.LinkedList getInstances(Concept theConcept)
           
 java.util.LinkedList getOneLevelInstances(Concept theConcept)
           
 T_Box getT_Box()
          Liefert einen Verweis auf die T-Box
 boolean insertNewRole(Role theRole, Instance from, Instance to, double probability)
          Fügt eine neue Rolle und ihre Inverse ein.
 void load(java.lang.String fileName)
          Lädt die globale A-Box.
 void markAsConstraint(Instance i)
          markiert eine Instanz als constraint
 void merge(A_Box theLocaleABox)
          Soll nur vom Instanzenlerner aufgerufen werden
private  void readObject(java.io.ObjectInputStream in)
           
 void save(java.lang.String fileName)
          Speichert die globale A-Box.
 void setContents(Instance i, NetEntity c)
          speichert ein optional vorhandenes Inhaltsobjekt zur gegebenen Instanz
 boolean setInstance(Instance theInstance)
          Fuegt eine neue Instanz in die A-Box ein, sollte schon eine Instanz unter diesem Schlü existieren, wird sie überschieben.
 java.lang.String toString()
          Gibt eine die A-Box beschreibenden String aus.
 void update(java.util.LinkedList theStartConcepts)
          Soll nur vom Instanzenlerner aufgerufen werden
 
Methods inherited from class java.lang.Object
, equals, finalize, getClass, hashCode, notify, notifyAll, registerNatives, wait, wait, wait
 

Field Detail

serialVersionUID

static final long serialVersionUID
serialVersionUID

theInstanceHashTable

private java.util.Hashtable theInstanceHashTable
Der Hashtable aller Instanzen.

theTBox

protected T_Box theTBox

theConstraintInstances

private java.util.LinkedList theConstraintInstances

ConcreteRolesList

public java.util.LinkedList ConcreteRolesList
Constructor Detail

A_Box

public A_Box(T_Box t)
Konstruktor der Klasse A_Box
Parameters:
t - Die zugehörige T-Box
Since:
1.0
See Also:
T_Box

A_Box

A_Box()
Konstruktor der Klasse A_Box
Since:
1.0
Method Detail

getOneLevelInstances

public java.util.LinkedList getOneLevelInstances(Concept theConcept)
Parameters:
theConcept - Ein Konzept aus der T-Box
Returns:
Liste mit allen Instanzen, die genau zu dem gegebenen Konzept gehoeren und für die delete false ist.
Since:
1.0
See Also:
Concept, Instance, T_Box, LinkedList

setInstance

public boolean setInstance(Instance theInstance)
Fuegt eine neue Instanz in die A-Box ein, sollte schon eine Instanz unter diesem Schlü existieren, wird sie überschieben.
Parameters:
theInstance - Ein Objekt der Klasse Instance
Returns:
true, wenn die Instanz in der A-Box neue eingefügt wurde und false wenn sie schon vorhanden war.
Since:
1.0
See Also:
Instance

getInstances

public java.util.LinkedList getInstances(Concept theConcept)
Parameters:
theConcept - Ein Konzept aus der T-Box
Returns:
Liste mit allen Instanzen, für die delete false ist und das gegebene Konzept subsumieren.
Since:
1.0
See Also:
Concept, Instance, T_Box, LinkedList

getInstance

public Instance getInstance(long id)
liefert zu der ID die Instanz
Parameters:
id - Die ID zur gesuchten Instanz
Returns:
Die gesuchte Instanz oder null
Since:
1.0
See Also:
Instance

markAsConstraint

public void markAsConstraint(Instance i)
markiert eine Instanz als constraint
Parameters:
i - die zu markierende Instanz
Since:
1.0

getConstraintInstances

public java.util.LinkedList getConstraintInstances()
Returns:
LinkedList eine Liste mit den als constraint markierten Instanzen
Since:
1.0

insertNewRole

public boolean insertNewRole(Role theRole,
                             Instance from,
                             Instance to,
                             double probability)
                      throws RoleNotFoundException,
                             ConcreteRoleAddInstanceException
Fügt eine neue Rolle und ihre Inverse ein. Die Rolle kann auch in den Oberkonzepten von dem Objekt from definiert sein.
Parameters:
theRole - Die konzeptionelle Rolle
from - Die Instanz, von der die Rolle ausgeht
to - Die Instanz, auf die die Rolle verweist
probability - der Konfidenzwert dieser konkreten Rolle
Returns:
true wenn die Rolle neu eingefügt wurde, und false wenn sie schon vorhanden war.
Since:
1.0
See Also:
Instance, ConcreteRole, Role

find

public java.util.LinkedList find(java.lang.String instanceName)
Sucht zum gegeben Namen die Instanzen mit gleichem Namen.
Parameters:
instanceName - Der Name der gesuchten Instanz
Returns:
Eine Liste von Instanzen oder null, falls keine passende Instanz gefunden wurde.
Since:
1.0
See Also:
Instance

setContents

public void setContents(Instance i,
                        NetEntity c)
speichert ein optional vorhandenes Inhaltsobjekt zur gegebenen Instanz
Parameters:
i - die Instanz, zu der ein Inhalt gespeichert werden soll.
c - ein Objekt vom Typ NetEntity
Since:
2.1
See Also:
NetEntity, Instance

getContents

public NetEntity getContents(Instance i)
liefert ein optional zu einer Instanz vorhandenes Inhaltsobjekt zurueck
Parameters:
i - die Instanz, dessen Inhalt angefragt wird.
Returns:
ein Objekt vom Typ NetEntity
Since:
2.1
See Also:
Contents

getT_Box

public T_Box getT_Box()
Liefert einen Verweis auf die T-Box
Returns:
Referenz auf dazugehörigen T-Box
Since:
2.0
See Also:
T_Box

createInstanceClone

private Instance createInstanceClone(Instance theInstance)
Erzeugt ein neue Objekt der Klasse Instanz, wobei die ID, der Name und alle Flags von der uebergebenen Instanz kopiert werden.
Parameters:
theInstance - die Instanz, die kopiert werden soll
Since:
2.2

clone

public java.lang.Object clone()
Liefert eine tiefe Kopie der globalen A-Box.
Returns:
Ein Objekt der Klasse A_Box
Overrides:
clone in class java.lang.Object
Since:
1.0

load

public void load(java.lang.String fileName)
          throws java.io.IOException,
                 ABoxLoadErrorException
Lädt die globale A-Box.
Parameters:
fileName - Der Dateiname, unter welchem die Datei gespeichert ist. Wird kein vollständiger Pfad angegeben, wird vom aktuellen Verzeichnis ausgehend gesucht.
Since:
1.0

save

public void save(java.lang.String fileName)
          throws java.io.IOException
Speichert die globale A-Box.
Parameters:
fileName - Der Dateiname, unter welchem die Datei gespeichert ist. Wird kein vollständiger Pfad angegeben, wird vom aktuellen Verzeichnis ausgehend gesucht.
Since:
1.0

getConcreteRole

public ConcreteRole getConcreteRole(Role theRole,
                                    Instance from,
                                    Instance to)
Sucht die konkrete Rolle, die unter die übergebene Konzept-Rolle fällt und von der Instanz from zu der Instanz to verläuft.
Parameters:
theRole - Die konzeptionelle Rolle
from - Die Instanz, von der die Rolle ausgeht
to - Die Instanz, auf die die Rolle verweist
Returns:
Ein Objekt der Klasse ConcreteRole, wenn eine passende Rolle existier, ansonsten null
Since:
2.1

getConcreteRoles

public java.util.LinkedList getConcreteRoles(Role theRole)
Zu einer Konzeptrolle wird eine Liste aller konkreten Rolle geliefert.
Parameters:
theRole - Die Konzeptrolle, zu der alle konkreten Rollen gesucht werden sollen.
Returns:
LinkedList Liste aller konkreten Rollen
Since:
1.0
See Also:
Role, ConcreteRole

update

public void update(java.util.LinkedList theStartConcepts)
Soll nur vom Instanzenlerner aufgerufen werden
Parameters:
theStartConcepts - Liste mit den Konzepten, deren Instanzen nicht in die globale A-Box übernommen werden sollen.
Since:
1.0

merge

public void merge(A_Box theLocaleABox)
Soll nur vom Instanzenlerner aufgerufen werden
Parameters:
theLocaleABox - Die lokale A-Box, deren Inhalt in die globale transferiert werden soll
Since:
2.1

clean

public void clean(java.util.Calendar theDeleteDate,
                  java.util.LinkedList theUndeleteConcepts)
Entfernt Instanzen mit dem ältesten Datum des letzten Zugriffs (simuliert das Vergessen) Soll nur vom Instanzenlerner aufgerufen werden
Parameters:
theDeleteDate - Das Datum bestimmt, daß Instanzen gelöscht werden, deren letzter Zugriff zeitlich davor liegt.
theUndeleteConcepts - Die Konzepte, deren Instanzen niemals geloescht werden sollen.
Since:
2.1

toString

public java.lang.String toString()
Gibt eine die A-Box beschreibenden String aus.
Returns:
Ein String der Form "A-Box {, ... }"
Overrides:
toString in class java.lang.Object
Since:
1.0

deleteInstance

private void deleteInstance(Instance theInstance)
deleteInstance loescht eine Instanz endgueltig aus der A-Box. Auch alle konkreten Rollen die an dieser Instanz haengen, werden endgueltig geloescht.
Since:
2.1

computeNextInstanceID

private void computeNextInstanceID()
Since:
2.0

readObject

private void readObject(java.io.ObjectInputStream in)
                 throws java.io.IOException,
                        java.lang.ClassNotFoundException
Since:
2.0