Skip to content. Skip to navigation

Agora Dokumentation

Sections
You are here: Home Support Documentation Agora System
Document Actions

Agora System

You are here: 2 General data model – Agora repository
 

2.3.1 Configuration of the repository - 'config.xml'

'config.xml' weist im Wesentlichen 3 Steuerungselemente auf:

  • 1. <element-handler> - für die Behandlung der Objekte

  • 2. <index-handler> - für die Behandlung des Index

  • 3. <content-handler> - für die Behandlung der Projektinhalte

Beispiel für eine <element-handler>-Einstellung:

<element-handler class="de.srz.agora.repository.impl.handler.element.StandardElementHandler">
  <directory>collection</directory>
  <incrementsize>2097152</incrementsize>
  <elementcache>10</elementcache>
  <relationshipcache>10</relationshipcache>
  <publicaccess>yes</publicaccess>
</element-handler>

<directory> legt den Verzeichnisnamen für die Agora-Objekte fest. Im Beispiel wird im Repository ein Unterverzeichnis 'collection' angelegt. Für Standardanwendungen sollte diese Konvention beibehalten werden

<incrementsize> bestimmt die Größe, um die sich das Repository vergrößert, wenn ein neues Objekt hinzugefügt wird. Die Angabe wird in Byte erwartet und sollte daher ein Vielfaches von 1024 (1 KByte) betragen. Als sinvolle Untergrenze kann 1024 (1 KByte) eingetragen werden, als Obergrenze bietet sich 1073741824 (1 GByte) an. Empfohlener Wert ist 1048576 (1 MByte).

<elementcache>

<relationshipcache>

Sowohl <elementcache> als auch<relationshipcache> werden nur wirksam, wenn der Handler <element-handler class="de.srz.agora.repository.impl.handler.element.CachedElementHandler"> eingesetzt wird. Die Caches arbeiten nach dem Prinzip 'Least recently used' (LRU), d. h. die am längsten nicht verwendeten Einträge werden aus dem Cache entfernt. Die Eingabewerte beziehen sich auf die Größe des Caches für Elemente bzw. Elementbeziehungen. Defaultwert ist 10, Minimum ist 1, ein sinnvolles Maximum wäre 1000. Wenn keine Performanceprobleme bestehen, sollte an der Standardkonfiguration nichts geändert werden.

<publicaccess> ermöglicht die Zugriffsbeschränkung auf bestimmte Objekte des Repository. <publicaccess> wird bislang nur in ganz speziellen Kontexten eingesetzt und sollte standardgemäß auf "yes" gesetzt bleiben

Beispiel für eine <index-handler>-Einstellung:

<index-handler class="de.srz.agora.repository.impl.handler.fulltext.StandardFulltextHandler" type="fulltext">
  <directory>fulltextlt;/directory>
  <inheritance>yes</inheritance>
  <includepages>yes</includepages>
  <usedefaultsort>no</usedefaultsort>
  <publicaccess>yes</publicaccess>
</index-handler>

<directory> legt den Verzeichnisnamen für die Agora-Index fest. Im Beispiel wird im Repository ein Unterverzeichnis 'fulltext' angelegt.

<inheritance> 'yes' bedeutet, daß Attributwerte über Dokumentebenen hinweg vererbt werden. Dies bedeutet, daß man Dokumente mit Attributwerten finden kann, die mit dem betreffenden Dokument direkt nicht verknüpft sind.

Ein Anwendungsbeispiel: Das Attribut 'Veröffentlichungsjahr' ist für eine Zeitschriftensammlung nur auf der Hierarchieebene 'Zeitschriftenband' vergeben worden. Ein Benutzer sucht nun einen Aufsatz von dem er nur den 'Namen' des Autors und eben das 'Veröffentlichungsjahr' des Textes kennt. Wenn <inheritance> auf 'no' gesetzt wäre, würde der Benutzer entweder gar keinen Treffer erhalten (die Attribute 'Veröffentlichungsjahr' und 'Name' sind mit UND verknüpft) oder aber u. U. eine sehr umfangreiche Trefferliste (die Attribute sind mit ODER verknüpft). Mit <inheritance> 'yes' (bei verUNDeten Attributen) würde man in dem dargestellten Beispiel exakt den gewünschten Aufsatz finden.

<includepages> muss eingeschaltet sein, wenn Dokumentseiten im Volltext erschlossen wurden (z. B. durch OCR) und das 'Hihlighting-on-Facsimile' aktiviert werden soll.

<usedefaultsort> erzeugt eine zusätzliche Sortierung der Repository-Objekte nach der DocumentID. Der Schalter sollte jedoch immer auf 'no' gestellt sein, da mehrere Sortierkriterien Lucene langsamer machen. Benötigt man ein bestimmtes zusätzliches Sortierkriterium sollte dies bei der Suche expizit eingeben werden (siehe Beschreibung der Agora Recherche). Der Schalter <usedefaultsort> sollte aber nicht aus der config.xml entfernt werden, auch wenn sein Wert auf 'no' gesetzt ist. Fehlt der Schalter, wird eine Sortierung grundsätzlich ausgeschlossen.

<publicaccess> analog zum <element-handler>.

Beispiel für eine <content-handler>-Einstellung:

<content-handler class="de.srz.agora.repository.impl.handler.content.StandardContentHandler">
  <directory>collection</directory>
  <incrementsize>2097152</incrementsize>
  <external-path-resolver class="de.srz.agora.repository.impl.handler.content.DummyExternalPathResolver"/>
</content-handler>

<directory> weist den Agora Inhalten ein Verzeichnis zu. Im Beispiel wird dasselbe Unterverzeichnis 'collection' verwendet, das auch der <element-handler> benutzt.

<incrementsize> bestimmt die Ausgangsgröße des Repository.

<external-path-resolver> lädt die Java-Klasse, die die Pfadeinstellungen zu den Projektdaten organisiert.


You are here: 2 General data model – Agora repository
 
last modified 2008-02-06 14:18