|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Object
|
+--dataanalysis.databases.DatabaseElement
|
+--dataanalysis.dictionaries.Dictionary
unterst?tzt den Classifier bei der Klassifizierung von Texten, da das
Dictionary STOP-Listen, Synonyme etc. repr?sentieren kann.
Aber auch der Vectorizer besitzt die M?glichkeit auf das Dictionary
zuzugreifen.
Sinn dieser Klasse ist es, einen kleinsten gemeinsamen Nenner f?r die
Entwicklung verschiedener Dictionarytypen vorzugeben.
Wird ein neues Dictionary entwickelt, muss darauf geachtet werden, dass
die Konventionen der Ergebnisr?ckgabe, die hier spezifiziert werden
eingehalten werden!
Classifier,
Vectorizer, Serialized Form| Field Summary | |
protected boolean |
isCaseSensitive
Legt fest, ob das Dictionary Case-sensitive ist. |
protected int |
lastNumber
gibt die letzte Nummer an, der ein Wort zugewiesen wurde. |
protected java.lang.String |
queriedWord
beinhalted das abgefragte Wort aus getFirstRelated(String),
oder null falls das abgefragte Wort nicht im
Dictionary existiert. |
protected java.lang.String |
relatedWord
beinhalted das Wort, das der erste Aufruf von getFirstRelated(String) bzw. |
protected double |
relationValue
beinhalted den Wert der Relation zwischen den Worten queriedWord und relatedWord, oder
Double.NaN falls der Wert nicht verf?gbar ist. |
protected int |
wordCount
beinhalted die Anzahl der im Dictionary gespeicherten Worte. |
| Fields inherited from class dataanalysis.databases.DatabaseElement |
elementname |
| Constructor Summary | |
Dictionary()
legt ein Standard-Dictionary an, indem der Konstruktor Dictionary(boolean) mit dem Parameterwert false
aufgerufen wird. |
|
Dictionary(boolean vIsCaseSensitive)
|
|
| Method Summary | |
abstract int |
addRelation(java.lang.String word1,
java.lang.String word2,
double value)
f?gt eine Gewichtung der Beziehung zwischen zwei Eintr?gen word1 und word2 ein.Die Relationen sind nicht kommutativ. Bei der Erstellung der Beziehungen sollte der Benutzer darauf achten, keine Zirkel zu erzeugen, da das Dictionary diese nicht abfangen muss! |
abstract int |
addWord(java.lang.String word)
f?gt ein neues Wort word ins Lexikon ein. |
int |
count()
gibt die Anzahl der W?rter im W?rterbuch zur?ck ( wordCount). |
abstract int |
deleteRelation(java.lang.String word1,
java.lang.String word2)
l?scht eine Relation zwischen den beiden Worten word1 und
word2. |
abstract int |
deleteWord(java.lang.String word)
l?scht das Wort word aus dem Dictionary. |
abstract java.lang.String |
getFirstRelated(java.lang.String word)
liefert das erste verwandte Wort zu word. |
abstract java.lang.String |
getNextRelated()
gibt das n?chste verwandte Wort zu "queriedWord" zur?ck. |
abstract double |
getRelationValue(java.lang.String word1,
java.lang.String word2)
liefert den Wert der Relation zwischen den beiden Worten word1 und word2. |
abstract java.lang.String |
getWord(int number)
liefert das Element number des W?rterbuches zur?ck. |
static Dictionary |
newInstance(boolean isCaseSensitive)
Liefert eine neue Instanz der Standardimplementierung des Dictionaries zur?ck. Momentan ist dies ein Objekt der Klasse StringBasedDictionary. |
abstract int |
numberOf(java.lang.String word)
|
int |
optimize()
sorgt f?r eine Neustrukturierung des Dictionaries. |
abstract boolean |
queryWord(java.lang.String word)
gibt zur?ck, ob das abgefragte Wort word im W?rterbuch
vorhanden ist. |
double |
relatedValue()
liefert den Wert der Relation zur?ck, die zwischen queriedWord und relatedWord besteht. |
java.lang.String |
toString()
Liefert eine Stringrepr?sentation dieses Objektes. |
| Methods inherited from class dataanalysis.databases.DatabaseElement |
getElementname,
logMessage,
setElementname |
| Methods inherited from class java.lang.Object |
|
| Field Detail |
protected boolean isCaseSensitive
true, so m?ssen alle
internen Vergleiche ohne
Ber?cksichtigung der Gross-/Kleinschreibung durchgefuehrt werden.protected int wordCount
protected int lastNumber
protected transient java.lang.String queriedWord
getFirstRelated(String),
oder null falls das abgefragte Wort nicht im
Dictionary existiert.protected transient java.lang.String relatedWord
getFirstRelated(String) bzw. letzte Aufruf von
getNextRelated() zur?ckgeliefert hat, oder null,
falls kein Wort mehr verf?gbar ist. Dies tritt z.B. auf, wenn kein
weiteres verwandtes Wort verf?gbar ist, oder
getFirstRelated(String) noch nicht aufgerufen wurde.protected transient double relationValue
queriedWord und relatedWord, oder
Double.NaN falls der Wert nicht verf?gbar ist. Dies tritt
z.B. auf, wenn getFirstRelated(String) noch nicht aufgerufen
wurde oder kein weiteres verwandtes Wort verf?gbar ist.| Constructor Detail |
public Dictionary()
Dictionary(boolean) mit dem Parameterwert false
aufgerufen wird.public Dictionary(boolean vIsCaseSensitive)
vIsCaseSensitive - legt fest, ob im Dictionary zwischen
Gross-/Kleinschreibung unterschieden wird. Dabei ist es der
jeweiligen Klasse ?berlassen, ob ebenfalls Unterschiede in Akzenten
ignoriert werden, wenn die Gross-/Kleinschreibung ignoriert wird.
Sollte dies geschehen, so ist dies in der Klasse zu dokumentieren!| Method Detail |
public static final Dictionary newInstance(boolean isCaseSensitive)
StringBasedDictionary. Die Variable isCaseSensitive
wird an den Konstruktor der Klasse weitergegeben.public int count()
wordCount).public double relatedValue()
queriedWord und relatedWord besteht.
Existiert kein verwandtes Wort, so wird Double.NaN
zur?ckgegeben.
Da diese Methode nur den Wert von relationValue zur?ckgibt,
muss in der erbenden Klasse daf?r gesorgt werden, dass immer der
korrekte Wert in dieser Variablen steht.
- Returns:
- den Wert der Relation zwischen
queriedWord und
relatedWord, oder Double.NaN, falls der Wert
nicht verf?gbar ist.
public abstract int addWord(java.lang.String word)
throws ElementExistsException
word ins Lexikon ein. Jedes Wort
besitzt eine eindeutige Nummer im Dictionary. Durch L?schung
freiwerdene Pl?tze bzw. Nummern d?rfen nicht wieder verwendet
werden, da z.B. die Vectorizer darauf
angewiesen sind. lastNumber muss dementsprechend angepasst
werden.word - steht f?r das Wort, das ins Lexikon eingef?gt werden soll.
public abstract int deleteWord(java.lang.String word)
throws DictionaryWordNotFoundException
word aus dem Dictionary.word - steht f?r das Wort, das aus dem W?rterbuch
gel?scht werden soll.
public abstract int addRelation(java.lang.String word1,
java.lang.String word2,
double value)
throws DictionaryWordNotFoundException
word1 und word2 ein.word1 - steht f?r den ersten Einstrag, f?r den eine Gewichtung
eingef?gt werden soll.word2 - steht f?r den zweiten Eintrag, f?r den eine Gewichtung
eingef?gt werden soll.value - steht f?r den Wert der Gewichtung zwischen den beiden
W?rtern.
public abstract int deleteRelation(java.lang.String word1,
java.lang.String word2)
throws DictionaryRelationNotFoundException,
DictionaryWordNotFoundException
word1 und
word2.word1 - steht f?r den ersten Eintrag, f?r den die Relation
gel?scht werden soll.word2 - steht f?r den zweiten Eintrag, f?r den die Relation
gel?scht werden soll.public abstract java.lang.String getWord(int number)
number des W?rterbuches zur?ck.number - steht f?r die Position des Eintrags, der aus
dem W?rterbuch gelesen werden soll.null zur?ckgeliefert.public abstract boolean queryWord(java.lang.String word)
word im W?rterbuch
vorhanden ist.word - steht f?r das Wort, f?r das ?berpr?ft werden soll, ob es
im W?rterbuch vorhanden ist oder nicht.true wenn das Wort im Dictionary enthalten ist,
sonst false.
public abstract java.lang.String getFirstRelated(java.lang.String word)
throws DictionaryWordNotFoundException
word.
Ist kein verwandtes Wort vorhanden, wird ein leerer String
zur?ckgegeben.queriedWord setzen!word - steht f?r das Wort, f?r das ein n?chstes verwandtes
Wort gefunden werden soll.word nicht im Dictionary
vorhanden ist.public abstract java.lang.String getNextRelated()
relatedWord und
relationValue korrekt setzen. N?heres zu der zu erwartenden
Wertebelegung kann der Dokumentation der Variablen entnommen werden.public int optimize()
public abstract double getRelationValue(java.lang.String word1,
java.lang.String word2)
throws DictionaryRelationNotFoundException,
DictionaryWordNotFoundException
word1 und word2.
Diese Methode darf den Wert von queriedWord,
relatedWord und relationValue nicht
ver?ndern!word1 - das Wort, von dem die Relation ausgeht.word2 - das Wort, zu dem die Relation zeigt.word1 und
word2.
public abstract int numberOf(java.lang.String word)
throws DictionaryWordNotFoundException
public java.lang.String toString()
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||