knowledge
Class Instance

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

public class Instance
extends java.lang.Object
implements java.io.Serializable

Instanzen sind die Entitäten von Konzepten.

Version:
2.2 [9.12.1999]
Author:
Volkher Kaschlun, Ulla Mentel, Christian Fischbach (toPredicate)
See Also:
Serialized Form

Field Summary
protected  boolean changed
          changed ist dann true, wenn in dieser Instanz etwas geändert wurde und sie noch nicht in der A-Box eingetragen wurde
protected  boolean constraint
          Constraint ist true, wenn diese Instanz eine Vorgabe aus der Suchanfrage ist, und deshalb markiert wurde.
protected  long counter
          Zählt, wie oft die Instanz verwendet wurde.
 boolean delete
          Delete ist true, wenn diese Instanz von der Planausführung als delete markiert wurde.
protected  java.lang.Long id
          ID einer Instanz, ist der eindeutige Schlüssel jeder Instanz.
 java.lang.String name
          Der Name der Instanz, z.B.
 boolean newInstance
          newInstance ist true, wenn sie in dem aktuellen Suchlauf neu erzeugt wurde.
protected static long nextid
          Hilfsvariable für IDs
(package private) static long serialVersionUID
          serialVersionUID
 boolean successfull
          successfull ist true, wenn die Instanz in einer erfolgreichen Suche verwendet wurde.
protected  A_Box theA_Box
          verweist auf die (lokale) A-Box, wenn die Instanz dort eingetragen wurde
protected  java.util.LinkedList theConcepts
          theConcepts verbindet die Instanz mit den dazugehoerigen Konzepten in der T-Box, die Listenelemente bestehen aus den Konzepten und ihren Wahrscheinlichkeitswerten.
protected  java.util.LinkedList theConcreteRoles
          Legt eine Liste mit allen konkreten Rollen an, die existieren koennen.
private  NetEntity theContents
          contents kann leer sein, oder auf einen moeglichen zu der Instanz gehoerenden Inhalt verweisen, z.B.
protected  java.util.Calendar theDate
          Das Datum der letzen Verwendung.
protected  java.util.LinkedList theInverseRoles
          Die Liste mit den inversen Rollen
 boolean toPredicateCall
          boolean-Flag, das anzeigt, ob toPredicate fuer diese Instanz schon aufgerufen wurde (true) oder nicht (false)
 boolean used
          used ist true, wenn diese Instanz von der Planausfuerung benutzt wurde.
 
Constructor Summary
(package private) Instance()
          Konstruktor der Klasse Instance
  Instance(long theID)
          Konstruktor der Klasse Instance
  Instance(long theID, java.lang.String newName)
          Konstruktor der Klasse Instance
  Instance(NetEntity theNetEntity, A_Box theA_Box)
          Konstruktor der Klasse Instance
  Instance(NetEntity theNetEntity, Concept theConcept)
          Konstruktor der Klasse Instance
  Instance(NetEntity theNetEntity, Concept theConcept, double prob)
          Konstruktor der Klasse Instance
  Instance(java.lang.String newName)
          Konstruktor der Klasse Instance
  Instance(java.lang.String newName, long theID)
          Konstruktor der Klasse Instance
 
Method Summary
 void addConcept(Concept theConcept, double probability)
          Fügt der Instanz ein Konzept mit einem Wahrscheinlichkeitswert hinzu.
 void addConcept(ConceptWithConfidence theCwC)
          Fügt der Instanz ein Objekt vom Typ ConceptWithConfidence hinzu
 boolean equals(java.lang.Object a)
          Vergleicht diese Instanz mit der uebergebenen.
 A_Box getABox()
          liefert eine Referenz auf die A-Box, in der die Instanz eingetragen wurde
 java.util.LinkedList getAllInverseRoles()
          Liefert die Liste mit allen inversen Rollen
 java.util.LinkedList getAllRoles()
          Liefert die Liste mit allen Rollen, die nicht als gelöscht markiert sind
 java.util.LinkedList getConcepts()
          Liefert eine Liste mit allen Konzepten, unter welche die Instanz fällt und die nicht als gelöscht markiert sind
 double getConfidence(Concept c)
          Liefert den Wahrscheinlichkeitswert eines Konzeptes, zum dem die Instanz gehört.
 long getId()
          Liefert die eindeutige Identifikationsnummer einer Instanz.
 java.util.LinkedList getInverseRoles(Role theRole)
          Liefert alle inversen Rollen, die diese Instanz zu der übergebenen Rolle hat, oder null, wenn keine passende Rolle gefunden werden konnte.
 NetEntity getNetEntity()
          liefert ein optional vorhandenes Inhaltsobjekt zurück
 java.util.LinkedList getRoles(Role theRole)
          Liefert alle konkreten Rollen, die diese Instanz zu der übergebenen Rolle hat, oder null, wenn keine passende Rolle gefunden werden konnte.
 boolean hasChanged()
           
 ConcreteRole insertNewRole(Role theRole, Instance to, double probability)
          Fuegt eine neue konkrete Rolle in dieser Instanz ein, falls die konkrete Rolle schon in der Liste der konkreten Rollen steht, wird nur der Wahrscheinlichkeitswert aktuallisiert.
 void markAsDeleted(Concept c)
          Markiert ein Konzept aus der Liste theConcepts als gelöscht
 void markAsDeleted(ConcreteRole r)
          Markiert eine konkete Rolle aus der Liste theConcreteRoles als gelöscht
 void markAsUndeleted(Concept c)
          Hebt eine delete-Markierung eines Konzeptes wieder auf
 void markAsUndeleted(ConcreteRole r)
          Hebt eine delete-Markierung eines Konzeptes wieder auf
 void setNetEntity(NetEntity c)
          speichert ein optional vorhandenes Inhaltsobjekt
 java.util.LinkedList toPredicate(java.util.Hashtable ipHash, java.util.LinkedList constraintConcepts, boolean restrictedPredGeneration)
          Liefert eine Predicate Repraesentation dieser Instance, ihrer ConcreteRoles und (rekursiver DFS-Aufruf) der Range-Instances, fuer die noch nicht toPredicate aufgerufen wurde.
 boolean toPredicateCalled()
          Liest das boolean-Flag toPredicateCall aus
 java.lang.String toString()
           
 
Methods inherited from class java.lang.Object
, clone, finalize, getClass, hashCode, notify, notifyAll, registerNatives, wait, wait, wait
 

Field Detail

serialVersionUID

static final long serialVersionUID
serialVersionUID

counter

protected long counter
Zählt, wie oft die Instanz verwendet wurde.

name

public java.lang.String name
Der Name der Instanz, z.B. eine URL, 'hp520' etc.

id

protected java.lang.Long id
ID einer Instanz, ist der eindeutige Schlüssel jeder Instanz.

theConcepts

protected java.util.LinkedList theConcepts
theConcepts verbindet die Instanz mit den dazugehoerigen Konzepten in der T-Box, die Listenelemente bestehen aus den Konzepten und ihren Wahrscheinlichkeitswerten.

theContents

private NetEntity theContents
contents kann leer sein, oder auf einen moeglichen zu der Instanz gehoerenden Inhalt verweisen, z.B. eine html-Seite.

theConcreteRoles

protected java.util.LinkedList theConcreteRoles
Legt eine Liste mit allen konkreten Rollen an, die existieren koennen. Ob die Rollen erfült sind, stellt man anhand der Instanzenliste in ConcreteRole fest.

theInverseRoles

protected java.util.LinkedList theInverseRoles
Die Liste mit den inversen Rollen

theA_Box

protected A_Box theA_Box
verweist auf die (lokale) A-Box, wenn die Instanz dort eingetragen wurde

theDate

protected java.util.Calendar theDate
Das Datum der letzen Verwendung. Dient dazu, die globale A-Box von alten Instanzen zu befreien.

constraint

protected transient boolean constraint
Constraint ist true, wenn diese Instanz eine Vorgabe aus der Suchanfrage ist, und deshalb markiert wurde.

delete

public transient boolean delete
Delete ist true, wenn diese Instanz von der Planausführung als delete markiert wurde. Wird auf eine Instanz über eine Rolle zugegriffen, muß immer geprüft werden, ob diese Instanz als delete markiert ist.

used

public transient boolean used
used ist true, wenn diese Instanz von der Planausfuerung benutzt wurde.

changed

protected transient boolean changed
changed ist dann true, wenn in dieser Instanz etwas geändert wurde und sie noch nicht in der A-Box eingetragen wurde

successfull

public transient boolean successfull
successfull ist true, wenn die Instanz in einer erfolgreichen Suche verwendet wurde.

newInstance

public transient boolean newInstance
newInstance ist true, wenn sie in dem aktuellen Suchlauf neu erzeugt wurde.

nextid

protected static long nextid
Hilfsvariable für IDs

toPredicateCall

public transient boolean toPredicateCall
boolean-Flag, das anzeigt, ob toPredicate fuer diese Instanz schon aufgerufen wurde (true) oder nicht (false)
Since:
version 1.1
Constructor Detail

Instance

Instance()
Konstruktor der Klasse Instance
Since:
1.0

Instance

public Instance(java.lang.String newName)
Konstruktor der Klasse Instance
Parameters:
newName - Der Name der Instanz
Since:
1.0

Instance

public Instance(long theID)
Konstruktor der Klasse Instance
Parameters:
ID - Die ID-Nummer der Instanz
Since:
1.0

Instance

public Instance(long theID,
                java.lang.String newName)
Konstruktor der Klasse Instance
Parameters:
ID - Die ID-Nummer der Instanz
newName - Der Name der Instanz
Since:
1.0

Instance

public Instance(java.lang.String newName,
                long theID)
Konstruktor der Klasse Instance
Parameters:
newName - Der Name der Instanz
ID - Die ID-Nummer der Instanz
Since:
1.0

Instance

public Instance(NetEntity theNetEntity,
                A_Box theA_Box)
Konstruktor der Klasse Instance
Parameters:
theNetEntity - Ein Objekt der Klasse NetEntity, in dem alle relevanten Informationen stehen.
Since:
2.0

Instance

public Instance(NetEntity theNetEntity,
                Concept theConcept)
Konstruktor der Klasse Instance
Parameters:
theNetEntity - Ein Objekt der Klasse NetEntity, in dem alle relevanten Informationen stehen.
theConcept - Das Konzept, zu dem die Instanz gehören soll
Since:
2.1

Instance

public Instance(NetEntity theNetEntity,
                Concept theConcept,
                double prob)
Konstruktor der Klasse Instance
Parameters:
theNetEntity - Ein Objekt der Klasse NetEntity, in dem alle relevanten Informationen stehen.
theConcept - Das Konzept, zu dem die Instanz gehören soll
prob - Der Konfidenzwert, mit der das Konzept eingetragen werden soll.
Since:
2.1
Method Detail

toPredicateCalled

public boolean toPredicateCalled()
Liest das boolean-Flag toPredicateCall aus
Since:
version 1.1

equals

public boolean equals(java.lang.Object a)
Vergleicht diese Instanz mit der uebergebenen. Der Vergleich beruht auf dem Vergleich der IDs.
Parameters:
a - das Objekt, mit dem verglichen werden soll.
Returns:
Gibt bei Gleichheit der IDs den Wert true zurueck.
Overrides:
equals in class java.lang.Object
Since:
1.0

getId

public long getId()
Liefert die eindeutige Identifikationsnummer einer Instanz.
Returns:
Den long-Wert der Instanz-ID
Since:
1.0

hasChanged

public boolean hasChanged()
Returns:
true, wenn in dieser Instanz etwas geändert wurde und sie noch nicht in der A-Box eingetragen wurde.

getABox

public A_Box getABox()
liefert eine Referenz auf die A-Box, in der die Instanz eingetragen wurde
Returns:
liefert die A-Box, zu der diese Instanz gehört.
Since:
2.0

insertNewRole

public ConcreteRole insertNewRole(Role theRole,
                                  Instance to,
                                  double probability)
                           throws RoleNotFoundException,
                                  ConcreteRoleAddInstanceException
Fuegt eine neue konkrete Rolle in dieser Instanz ein, falls die konkrete Rolle schon in der Liste der konkreten Rollen steht, wird nur der Wahrscheinlichkeitswert aktuallisiert. Mit dem Einfuegen einer neuen Rolle bzw. der korrespondierenden Instanz wird auch immer eine inverse Rolle in der korrespondierenden Instanz angelegt. Die Definition der Rolle kann auch in den Oberkonzepten des Objekts definiert sein.
Parameters:
thRole - die Rolle, zu der eine konkrete Rolle angeledt werden soll
to - Die Instanz, auf welche die konkrete Rolle verweisen soll
Returns:
Die neu erzeugte Instanz der Klasse ConcreteRoles
Since:
1.0
See Also:
ConcreteRole, Role

getRoles

public java.util.LinkedList getRoles(Role theRole)
Liefert alle konkreten Rollen, die diese Instanz zu der übergebenen Rolle hat, oder null, wenn keine passende Rolle gefunden werden konnte.
Parameters:
theRole - die Rolle, zu der die konkrete Rolle geliefert werden soll
Returns:
LinkedList, eine Liste der konkreten Rollen oder null
Since:
2.0
See Also:
ConcreteRole, Role, LinkedList

getInverseRoles

public java.util.LinkedList getInverseRoles(Role theRole)
Liefert alle inversen Rollen, die diese Instanz zu der übergebenen Rolle hat, oder null, wenn keine passende Rolle gefunden werden konnte.
Parameters:
theRole - die Rolle, zu der die inverse Rolle geliefert werden soll
Returns:
LinkedList, eine Liste der inversen Rollen oder null
Since:
2.2
See Also:
ConcreteRole, Role, LinkedList

addConcept

public void addConcept(ConceptWithConfidence theCwC)
Fügt der Instanz ein Objekt vom Typ ConceptWithConfidence hinzu
Parameters:
theCwc - das neue Objekt vom Typ ConceptWithConfidence
Since:
2.0
See Also:
ConceptWithConfidence

addConcept

public void addConcept(Concept theConcept,
                       double probability)
Fügt der Instanz ein Konzept mit einem Wahrscheinlichkeitswert hinzu.
Parameters:
theConcept - Das neue hinzuzufügende Konzept
probability - Gibt den Wahrscheinlichkeitswert an, mit dem diese Instanc unter das übergebene Konzept fllt.
Since:
2.0
See Also:
Concept

toPredicate

public java.util.LinkedList toPredicate(java.util.Hashtable ipHash,
                                        java.util.LinkedList constraintConcepts,
                                        boolean restrictedPredGeneration)
Liefert eine Predicate Repraesentation dieser Instance, ihrer ConcreteRoles und (rekursiver DFS-Aufruf) der Range-Instances, fuer die noch nicht toPredicate aufgerufen wurde.
Parameters:
ipHash - Hashtabelle, die speichert welches PredArgument fuer eine Instanz erzeugt wurde
Returns:
LinkedList der erzeugten Predicates
Since:
version 1.1
See Also:
Predicate, PredArgument, ConcreteRole, LinkedList

toString

public java.lang.String toString()
Returns:
eine textuelle Beschreibung der Klasse Instance in der Form
Overrides:
toString in class java.lang.Object
Since:
1.0

getConcepts

public java.util.LinkedList getConcepts()
Liefert eine Liste mit allen Konzepten, unter welche die Instanz fällt und die nicht als gelöscht markiert sind
Returns:
eine LinkedList mit Objekten der Klasse ConceptWithConfidence
Since:
1.0
See Also:
Concept, LinkedList

getAllRoles

public java.util.LinkedList getAllRoles()
Liefert die Liste mit allen Rollen, die nicht als gelöscht markiert sind
Returns:
LinkedList
Since:
1.0
See Also:
ConcreteRole, LinkedList

getAllInverseRoles

public java.util.LinkedList getAllInverseRoles()
Liefert die Liste mit allen inversen Rollen
Returns:
LinkedList, eine Liste mit allen inversen Rollen
Since:
1.0
See Also:
ConcreteRole, LinkedList

setNetEntity

public void setNetEntity(NetEntity c)
speichert ein optional vorhandenes Inhaltsobjekt
Parameters:
c - ein Objekt vom Typ NetEntity
Since:
2.1
See Also:
NetEntity

getNetEntity

public NetEntity getNetEntity()
liefert ein optional vorhandenes Inhaltsobjekt zurück
Returns:
ein Objekt vom Typ NetEntity
Since:
2.1
See Also:
NetEntity

getConfidence

public double getConfidence(Concept c)
Liefert den Wahrscheinlichkeitswert eines Konzeptes, zum dem die Instanz gehört. Fällt die Instanz nicht unter das übergebene Konzept, wird 0 zurück gegeben.
Parameters:
c - das Konzept, zu dem der Wahrscheinlichkeitswert gesucht wird
Returns:
double, der Wahrscheinlichkeiswert
Since:
2.0
See Also:
ConceptWithConfidence

markAsDeleted

public void markAsDeleted(Concept c)
Markiert ein Konzept aus der Liste theConcepts als gelöscht
Parameters:
c - das Konzept, das als gelöscht gelten soll
Since:
2.1
See Also:
ConceptWithConfidence

markAsUndeleted

public void markAsUndeleted(Concept c)
Hebt eine delete-Markierung eines Konzeptes wieder auf
Parameters:
c - das Konzept, das wieder gelten soll
Since:
2.1
See Also:
ConceptWithConfidence

markAsDeleted

public void markAsDeleted(ConcreteRole r)
Markiert eine konkete Rolle aus der Liste theConcreteRoles als gelöscht
Parameters:
r - die konkrete Rolle, die als gelöscht gelten soll
Since:
2.1
See Also:
ConcreteRole

markAsUndeleted

public void markAsUndeleted(ConcreteRole r)
Hebt eine delete-Markierung eines Konzeptes wieder auf
Parameters:
r - die konkrete Rolle, die wieder gelten soll
Since:
2.1
See Also:
ConcreteRole