CX_OBJECT_DICTIONARY_CI
Class hierarchy
- CX_CLASS
- CX_SIMPLE
- CX_TERMED
- CX_EXPANDABLE
- CX_STRUCTURED
- CX_OBJECT_DICTIONARY_CI
- CX_STRUCTURED
- CX_EXPANDABLE
- CX_TERMED
- CX_SIMPLE
Description: (Business Pattern)
The class CX_OBJECT_DICTIONARY_CI is suitable for entering pairs of objects and terms independent of the language set (such as barcodes) and is largely the same as the class CX_OBJECT_DICTIONARY, with the only difference being that upper and lower case letters are not distinguished when inserting/searching/deleting in the Dictionary (case insensitive).
However, the dictionary retains the upper/lower case present when the terms are entered. (see GetAllKeys / GetNames).
An object can have any number of identifiers, and any number of objects can be entered in the dictionary per identifier. Conceptually, a dictionary corresponds to a multimap.
The multi-language methods EnterML and RemoveML have been introduced for the purpose of a uniform interface. The keys are nevertheless only inserted in one language (current language of the transferred ML_STRINGS).
CX_OBJECT_DICTIONARY_CI belongs to the family of object dictionary classes.
Code example:
Var(dict) CreateTransObject(CX_OBJECT_DICTIONARY_CI) -> dict "cx" user dict Call(Enter) "cx" user dict Call(Exists) // -> TRUE "CX" user dict Call(Exists) // -> TRUE "c*" 0 dict Call(Query) // -> Collection (user) "cx" user dict Call(Remove) "c*" 0 dict Call(Query) // -> empty Collection
Function | MA* | Parameters | Return | Brief description |
---|---|---|---|---|
Cardinalities | VECTOR&lmt;INTEGER> | Number of elements in the dictionary | ||
Clear | Deletes all entries | |||
CreateBKTree 230545 | Creates BK tree for subsequent DLDistance searches. | |||
DestroyBKTree 230545 | Removes BK-Tree | |||
Enter | STRING, OBJECT | insert new entry for the object, if exactly this entry (term, object) already exists -> error message | ||
EnterAlways | STRING, OBJECT | for test purposes only ! like Enter, but without test, double entries possible | ||
EnterIfNotThere | STRING, OBJECT | like Enter; if exactly this entry (term, object) already exists -> no operation | ||
EnterML | MULTIPLE_STRING, OBJECT | like Enter | ||
EnterMLIfNotThere | MULTIPLE_STRING, OBJECT | like EnterIfNotThere | ||
Exists | STRING, OBJECT | INTEGER | Tests whether the object is entered in the dictionary under the term | |
FixKeyOwnership 220621 | STRING | Reorg for dictionaries created before Dll version 220415. | ||
GetAllKeys | COLLECTION | Return: all dictionary entries as CX_OBJECT_KEYWORDs | ||
GetNames | OBJECT | COLLECTION | Return: all entries for an object as CX_OBJECT_KEYWORDs | |
GetObjectsWithDLDistance 17449 | STRING, STRING, INTEGER, INTEGER, STRING | COLLECTION | all objects that have a key similar to the search term | |
GetObjectsWithDLDistanceWithBKTree 230545 | STRING, STRING, INTEGER, INTEGER, STRING, INTEGER | COLLECTION | like GetObjectsWithDLDistance but logarithmic search in a BK-tree instead of linear search | |
GetRelatedObjects | OBJECT | COLLECTION | Return: all entries for an object as CX_OBJECT_KEYWORDs | |
NewKey | OBJECT | OBJECT | new entry = create new object CX_KEYWORD | |
Query | STRING, INTEGER | COLLECTION | find all objects for a search term | |
QueryByType | STRING, STRING, INTEGER, INTEGER | COLLECTION | like query, filter result by class | |
QueryByDoubleMetaphone 174494 | STRING | COLLECTION | all objects that have a key that has a similar phonetics to the search term | |
QueryByDLDistance 174494 | INTEGER, STRING | COLLECTION | all objects that have a key similar to the search term | |
QueryByDLDistanceWithBKTree 230545 | INTEGER, STRING, INTEGER | COLLECTION | like QueryByDLDistance but logarithmic search in a BK-tree instead of linear search | |
RebuildDictionary | Rebuild dictionary completely | |||
RegExQuery | STRING, INTEGER | COLLECTION | find all objects for the search term, search argument is regular expression | |
RegExQueryByType | STRING, STRING, INTEGER, INTEGER | COLLECTION | like ReqExQuery, filter result by class | |
Remove | STRING, OBJECT | Delete entry for the object | ||
RemoveDuplicateKeys | Delete all duplicated entries | |||
RemoveLonelyKeys | delete all entries without relation to the object | |||
RemoveML 220415 | ML_STRING, OBJECT | Like Remove | ||
RemoveNames | OBJECT | delete all entries for the object | ||
RemoveNamesOfDeletedObjects | delete all entries that refer to a logically deleted object | |||
RepairSharpSKeys | Repair of old dictionaries with regard to ss and ß | |||
SanityCheck | INTEGER | Determine whether internal structures are free from logical errors | ||
Clone | INTEGER | OBJECT | Creates a new dictionary with the same entries for the same objects | |
string | INTEGER | CX_STRING | Returns the string representation of the object |
* MA = Member Access function,
grey background = inherited function
Data field | Type | Reference class | I* | Brief description |
---|---|---|---|---|
uniqueID | STRING | * | Name |
* I = Indexable data field,
grey background = inherited data field
Module | Brief description |
---|---|