[Allegro] Vb.289: a35v2 ist da

Bernhard Eversberg b-eversberg at gmx.de
Di Mai 23 11:09:51 CEST 2017


> Gesendet: Dienstag, 23. Mai 2017 um 09:52 Uhr
> Von: "Fischer, Thomas" <fischer at sub.uni-goettingen.de>
> > 
> >  http://www.allegro-b.de/db/nbank/a35-pc.php
> > 
> 
> interessant!
> Aber warum geht die Volltextsuche nur mit Login?
> 

Aus prinzipiellen Gründen will ich es mir nicht zu leicht machen mit der Antwort, aber
zwangsläufig fällt sie damit etwas länglich aus:

Zunächst: Man muß sich unbedingt von der Vorstellung lösen, in a35 sei irgendeine Funktion fest
eingebaut, und zwar genau so, wie es einem erscheint. Was man in den Menüs sieht und was
unter den Buttons liegt, beruht so gut wie *alles* darauf, und darin unterscheidet es sich
gewaltig von a99, daß

1. jede "höhere" Funktion von einem FLEX-Job erledigt wird, z.B. die Registersuche
   von a35ind.job, die Satzanzeige von a35get.job, die Ergebnisliste von a35erg.job, und
   die Volltextsuche von a35fts.job, u.v.m. So gut wie alle diese Jobs sind universell,
   also nicht datenbankspezifisch anzupassen, aber das wäre leicht zu machen.

2. in der Menüdatei (a35-X-menu.php) die Funktion angeboten ist, d.h. der Aufruf des die
   Funktion erledigenden FLEX-Jobs. Jederzeit kann man was raus- oder reinnehmen in das
   Menü oder die Jobs, ohne irgendwie was kompilieren oder den Apache neu aufstarten zu 
   müssen oder was immer.

In jeden dieser Jobs kann man eingreifen, um seine Arbeitsweise irgendwie zu ändern, oder
auch die Meldungen oder Hinweise, die der Job vielleicht ausgibt.
Eingriffe in PHP oder JavaScript sind dazu nicht nötig. (Java kommt gar nicht zum Einsatz)
Eigene Menüs kann man vollumfänglich in HTML5 schreiben, darin aufzurufende Funktionen
sehen meistens so aus:  <a href="javascript:reqJob('jobname')>NewFunction</a>
Damit wird das FLEX-Skript  jobname.job in Gang gesetzt. (Die JavaScript-Funktion
reqJob() ist in a35.js und da braucht man nix dran zu machen.)

Die Volltextsuche betreffend heißt das: Es gibt gar nicht "die" Volltextsuche als
fest eingebaute Funktion, und sie hat nicht genau "die" Eigenschaften, die man in den 
Beispielen sieht. Daß sie z.B. ein Login erfordert, ist nicht zwingend: Man braucht nur 
eine Zeile wegzunehmen aus dem a35fts.job, und zwar diese:

perform authent   // hat der user sich eingeloggt?

und schon kann's jeder machen.

Bevor ich das aber konkret so freigebe bei den Beispielen, will ich noch daran was testen.
Sie haben da zielsicher diejenige Funktion gewählt, die am längsten nicht mehr kritisch
gesichtet wurde, und das soll erst noch passieren.
Man sollte sich, ganz unabhängig von a35, aber darüber klar sein, daß wohl kaum ein Endnutzer
eine zutreffende Vorstellung hat, was denn eine "Volltextsuche" in einem Bibliothekskatalog
eigentlich ist und was sie wohl leisten könnte und was ganz sicher nicht. Und weil bei einer
sehr großen Datenbank eine VTS unvermeidlich fette Leistung braucht, kann es nicht
verkehrt sein, sie nicht einfach so für alle Welt freizugeben. Dann lieber überlegen,
ob man einen Solr-Index anflanscht. Das Potential ist schon da, besser gesagt der Job,
er heißt  a35solr.job  und ist mit im Paket. (Vorgänger war 2010 schon ein a30solr.job)
Das Thema hat aber aus besagten Gründen keine Priorität.

B.E.

P.S.
Daß eine Sache vielleicht nicht oder sogar nie so *ist* wie sie dem Beobachter durch die
schmalen Fenster seiner Sinnesorgane *erscheint*, das ist ein Thema, das die Philosophen seit 
der Antike umtreibt. Auf die Spitze getrieben schon von der Stoa und den Skeptikern (notabene 
Sextus Empiricus und Sokrates) und viel später von Hume und Kant. Das aber nur *ganz* nebenbei, 
es fällt nur immer wieder auf, daß es bis heute dem Alltagsverstand, manchmal auch des Philosophen 
oder Experten, nicht ständig gewärtig ist.



Mehr Informationen über die Mailingliste Allegro