Dokumentfelder definieren

Bei Dokumentfeldern unterscheidet das Verity-Modul zwischen Standard- und benutzerdefinierten Feldern. Standardfelder werden in der Datei style.sfl , benutzerdefinierte in der Datei style.ufl konfiguriert. Wenn Sie Felder definieren möchten, um in den Suchergebnissen weitere Informationen über die Dokumente zur Verfügung zu haben, so beachten Sie bitte folgendes:

  • Jedes Feld vergrößert den Speicherplatzbedarf proportional zur Anzahl der indizierten Dokumente.
  • Felder werden bei der Indizierung gefüllt und können bei der Suche ins Suchergebnis aufgenommen werden. Diese Vorgänge dauern um so länger, je mehr Felder Sie definiert haben bzw. ins Suchergebnis aufnehmen lassen.

Die Namen der Standard-Dokumentfelder sind Vorgaben des Verity-Moduls, die Sie aus Gründen der Kompatibilität Ihrer Collections mit Collections aus anderen Quellen nicht ändern sollten. Stattdessen können Sie jedoch bei Bedarf Aliasnamen für Dokumentfelder vergeben.

Das Format der beiden Dateien style.sfl und style.ufl ist identisch. Sie werden vom Verity-Modul indirekt über die Datei style.ddd eingelesen. Felder werden in diesen Dateien nach dem folgenden Muster definiert:

data-table: nps{    
    varwidth: objId       dda       
    /minmax = yes
    /alias = objectId    
    autoval:  collection  DBNAME}

Mit dem Schlüsselwort data-table wird der Name einer Tabelle des Verity-Moduls innerhalb eines Datensegments festgelegt. Im obigen Beispiel lautet der Name nps.

Jedes Feld hat einen Speichertyp, der bestimmt, woher der Wert des Feldes stammt und wie er gespeichert wird. Es gibt die folgenden Speichertypen:

Speichertyp Bedeutung und Syntax
autoval Weist dem Feld einen internen Wert des Verity-Moduls zu.
Syntax: autoval: FeldName DBNAME|DBPATH
FeldName: Name des Feldes.
DBNAME: Name der Collection.
DBPATH: Pfad der Collection.
constant Weist dem Feld einen konstanten Wert zu.
Syntax: constant: Feldname Datentyp Wert
FeldName: Name des Feldes.
Datentyp: Einer der unten aufgeführten Datentypen.
Wert: Der Wert des Feldes. Enthält er Leerzeichen, so muss er in Anführungszeichen eingeschlossen werden.
worm Weist dem Feld einen Wert aus einer Dokumentzone zu. Der Wert wird anschließend nicht mehr geändert (write once, read many times).
Syntax: worm: Feldname Datentyp
FeldName: Name des Feldes.
Datentyp: Einer der unten aufgeführten Datentypen.
fixwidth Weist dem Feld einen Wert aus einer Dokumentzone zu. Der Wert hat eine feste Länge und wird gegebenenfalls gekürzt.
Syntax: fixwidth: Feldname Länge Datentyp
FeldName: Name des Feldes.
Länge: Die maximale Länge des Feldwertes in Zeichen.
Datentyp: Einer der unten aufgeführten Datentypen.
Modifikator: /minmax = yes|no: Beschleunigt die Suche in Werten dieses Feldes, insbesondere bei großen Collections und wenn die Feldwerte sich in einem spezifischen Bereich befinden.
varwidth Weist dem Feld einen Wert beliebiger Länge aus einer Dokumentzone zu.
Syntax: varwidth: Feldname Speicherort
FeldName: Name des Feldes.
Speicherort: Eine Zeichenkette aus 3 Zeichen, nicht mit _ oder di beginnend.
Modifikator: /minmax = yes|no: s. fixwidth.

Feldnamen können aus bis zu 128 alphanumerischen Zeichen bestehen und dürfen nicht mit einem Unterstrich beginnen. Geben Sie als Speicherort beim Speichertyp varwidth beispielsweise dda an.

Jedes Dokumentfeld kann einen der folgenden Datentypen haben:

Datentyp Bedeutung
text Das Feld enthält ASCII-Zeichen.
date Ein internes Datumsformat, das Datums- und Zeitangaben im Bereich von 1904 bis 2037 aufnimmt. Dieser Datentyp ist nicht kompatibel mit dem Format von Datumsangaben der Search Cartridge.
signed-integer Eine vorzeichenbehaftete Ganzzahl. Der Wertebereich ist abhängig von der Größe des Feldes.
1 Byte: -128 bis 127
Bytes: -32768 bis 32767
4 Bytes: -2e31 bis 2e31 -1
unsigned-integer Eine nicht vorzeichenbehaftete Ganzzahl. Der Wertebereich ist abhängig von der Größe des Feldes.
1 Byte: 0 bis 255
2 Bytes: 0 bis 65535
4 Bytes: 0 bis 2e32 -1

Dokumentfelder, die mit der Option minmax angelegt wurden, können bis zu 256 Bytes aufnehmen. Ist der zu speichernde Wert größer, so werden nur die ersten 256 Bytes im Feld abgelegt. Mit der Option alias kann ein alternativer Name angegeben werden, unter dem das Feld in Such-Requests angesprochen werden kann.