Version 10 (modified by 15 years ago) (diff) | ,
---|
Kants Naturtheoretische Begriffe Online
- URL (official website): http://knb.mpiwig-berlin.mpg.de
- URL (test version): http://knb-test.mpiwg-berlin.mpg.de
- Server: xserve05.mpiwg-berlin.mpg.de
- Port: 39080 (official) und 40080 (test)
Inhaltlicher Überblick
Das Projekt bietet verschiedene Wege an, die 4 Inhaltlichen Bereiche (Begriffs-, Personen-, Literatur- und Text-Datenbank) zu erkunden.
Die Webseiten, die ueber die obere Navigation zu erreichen sind, liegen als ECHO_collection (siehe ECHO-Produkt) im Ordner "kant". Aus diesen Ordnern (und ihren Titeln!) wird die Navigation generiert. Wenn also der Text eines Navigationslinks geaendert werden soll, muss der Titel des entsprechenden Unterordners von "kant" geaendert werden.
Um die Inhalte anzusehen, kann natuerlich zunaechst gesucht werden; die Ergebnisse sind dann direkt Links auf die entsprechenden "Datasheets" (vom Datentyp abhaengig vorformatierte Datenblaetter). Oft gibt es dann auch Verlinkungen zwischen verschiedenen Datasheets untereinander. Die Suchfunktionalitaeten, inklusive Ergebnisseiten-Templates und allen Scripts, stecken alle im "search" Unterordner des Hauptverzeichnisses. Die Datasheets liegen neben diversen kleineren Hilfsskripten (z.B. "id2begr" um eine Begriffs-ID in den tatsaechlichen Begriff umzuwandeln) im "datasheets" Ordner.
Die zweite Moeglichkeit besteht darin, den Katalog mit allen Inhalten der Website zu "browsen". Dazu kann man sich durch die Baumartige Struktur unter "Browse" hangeln, die, genauso wie man sie auf der Website wiederfindet, als Ordnerstruktur unter "kant/browse/". Die Knoten/Ordner? darin beinhalten neben Titeln (der Text der fuer diesen Knoten angezeigt wird) auch ein Icon und (nur fuer Endknoten relevant) eine Link-URL. Dafuer habe ich ein extra Zope-Produkt entwickelt ("KantTree?" und "KantTreeNodes?"). Der Zustand (welche Knoten auf- und welche zugeklappt sind) des Baumes wird ueber den sogenannten "TreeState?"/"tstate" in der URL-Zeile als request-Parameter uebergeben, was es ermoeglicht, auf bestimmte Zustaende zu verlinken.
Datenbank
Saemtliche Daten, die in den Datasheets dargestellt werden, kommen aus einer Postrgres SQL Datenbank "kantdb".
Code
Der Code der Skripte und Page Templates sollte weitestgehend kommentiert sein, sodass ich hier nur den Ueberblick gebe, was man wo findet.
Seiten/Stylesheets?
Ausstehende Features
- Glossar-Tags: eigentlich war geplant, dass die Glossar Texte zu den Begriffen Verlinkungen zu anderen Datasheets enthalten sollten, wann immer Bezug auf etwas genommen wird, das in der Datenbank vorhanden ist. In der knb-test Instanz gibt es eine Oberflaeche, die es ermoeglicht, zeitsparend ensprechende Tags in den Glossartexten zu setzen. Die getaggten Fassungen werden getrennt vom originalen Text als separates Feld in die Begriffe-Datenbank gespeichert, und sobald eine getaggte Fassung existiert, werden im Datasheet der betroffenen Begriffe auch bereits fertige, funktionierende Links angezeigt. Allerdings ist vor meinem Verlassen des Instituts das Tagging noch nicht abgeschlossen, weshalb wir dieses Feature noch nicht in die offizielle Version eingebaut haben.
Sowie das Tagging abgeschlossen ist muessen die Daten der Test-Datenbank in die offizielle Datenbank uebertragen werden (Achtung, es sind neue Felder dazugekommen!), auch das Begriffe-Datasheet das Script "glossar_parse" muessen auf den offiziellen Server uebetragen werden, NICHT jedoch der Ordner "develope" (der die Tagging-Tools enthaelt).
Produkte
KantTree
Die KantTree-Objektklasse ist fuer alles Zustaendig, was mit der Generation und Darstellung der navigierbaren Baumstrukturen aus den im Objekt liegenden "Ordnern" (KantTreeNodes) zu tun hat. KantTree erbt von "Ordered Folder" und stellt das Wurzelelement des Baums dar.
KantTreeNode
KantTreeNodes sind im Grunde geordnete Folder mit zusaetzlichen Eigenschaften im "Properties" Tab.
TreeState
TreeStates verarbeiten den Zustand der Baeume (welche Knoten aufgeklappt sind) in form einer Zeichenkette, die z.B. als Request String uebergeben werden kann. Generiert auch die Links, die die Navigation innerhalb des Baumes ermoeglicht.