Ausgabe 98/1, 31. März 1998
Diese Ausgabe hat 16 Seiten
Universitätsbibliothek der Technischen Universität Braunschweig, Pockelsstr. 13, D-38106 Braunschweig, Tel. (0531) 391-5011, -5026, FAX -5836
At times you feel an urge to make
database, for goodness'sake!
The bigger the better
in spirit and letter,
to grow and expand as much as it may.
The sky's the limit - as long as you pay.
Buchstabe und Geist, Byte und Bedeutung
Wohl nur die Karolingischen Minuskeln, mit denen Karl der Große im Jahre 789 per Dekret das Schriftwesen im fränkischen Reich normierte, hatten vergleichbar weitreichende Auswirkungen wie der American Standard Code for Information Interchange (ASCII). Beide Normen haben jedoch irreführende Namen! Nicht Karl selbst, er war Analphabet, sondern der Mönch Alkuin entwickelte die Minuskeln, und im Fall ASCII wäre "... Data Interchange" die korrekte Bezeichnung (aber ASCII spricht sich besser als ASCDI). Denn codieren und austauschen kann man nur Daten, nicht Informationen. Den Plural "informations" gibt es im Englischen nicht, und das wird seinen tieferen Grund darin haben, daß man Information mehr als einen Vorgang begreift, nichts zähl- oder meßbares also. Information ist ferner nur subjektiv bewertbar: aus dem selben Text erfährt der eine Leser mehr, der andere weniger. Ein konkreter Text informiert einen konkreten Leser nur, wenn dieser ihn nicht nur lesen, sondern auch interpretieren kann (die Sprache beherrscht, die Terminologie kennt, der Argumentation folgen kann, etc.). Aber selbst wenn man einen Text versteht, bietet er spätestens beim zweiten Lesen wenig oder keine Information mehr ("nichts ist so alt wie die Zeitung von gestern"), obwohl kein einziger Buchstabe verschwunden ist. Viel spricht dagegen, die Wörter "Information" und "Daten" gleichwertig zu verwenden, doch ständig wird es getan. Auch "Informationsverarbeitung" ist ein fragwürdiger Begriff. Der Geist eines Dokuments steckt nicht in den Buchstaben, die Bedeutung nicht in den Bytes. Nur diese verarbeitet eine Maschine, und zwar nach streng formalen Regeln. Weit weniger kompliziert, wie man heute weiß, als alles, was im Kopf eines Lesers abläuft. Kontext, Situation, Bildungsstand und Vorgeschichte tragen entscheidend dazu bei, ob die Bedeutung sich dem Leser erschließt, der Geist, wenn man so will, ihm erscheint, kurz: ob die Daten einen Informationsvorgang auslösen. Der Umfang, die Zahl der Zeichen, hat nur wenig damit zu tun. Eine größere Bibliothek (eine größere Datenbank) ist nicht automatisch eine bessere, das hat vielmehr jeder Nutzer für sich zu entscheiden und vielleicht bei jeder Frage neu.
Wirklich normiert sind im ASCII (um darauf nun endlich zurückzukommen) nur die Codes 0 bis 126, und nur diese sind unter Windows, UNIX und DOS exakt gleich. Weil man mit 8 Bit nur bis 256 kommt, die verbleibenden 129 Codes aber zuwenig sind für die sonst noch in der Welt vorkommenden Zeichen, entstanden die unterschiedlichsten nationalen und Industriestandards und Speziallösungen, zu denen die Zeichentabellen 437 und 850 des IBM-PC gehören, aber auch der sog. OSTWEST-Zeichensatz, den die UB Braunschweig für allegro auf der DOS-Plattform festlegte. Als Basis diente dafür eine deutsche Norm, DIN 31628/2 (ihrerseits speziell für das Bibliothekswesen geschaffen), welcher noch weitere Zeichen hinzugefügt wurden. Das geschah so, daß die Buchstabencodes der PC-Tabelle 437 alle erhalten blieben, also Kompatiblität mit DOS-Standardsoftware gewahrt wurde.
In der Ausgabe 48 wurde eine Zwischenlösung vorgestellt, die für den Übergang auf Windows konstruiert worden war. Jedem Zeichen des OSTWEST-Fonts wurde ein ANSI-Ersatzzeichen zugeordnet, das statt seiner auf dem Windows-Schirm erscheint, aber intern bleiben die Daten, wie sie sind. Das ist wichtig, damit man weiter auch mit den DOS-Programmen auf die Datenbank zugreifen kann. Jedoch war von vornherein klar, daß niemand auch nur auf kurze Dauer mit Regeln wie "Ã hin,
à im Sinn" leben will, oder im Geiste das polnische Ù vor sich sehen kann, wenn auf dem Schirm ein Ù steht.Da es keinen Windows-Zeichensatz gab, der ohne Problem den bewährten OSTWEST.FON hätte ersetzen können, wurde kurzerhand einer entwickelt. Entscheidende Voraussetzung: ein geeignetes Shareware-Programm wurde entdeckt (SOFTY), mit dem man TrueType-Fonts (.TTF) bearbeiten und entwickeln kann. Und die notwendigen Zeichen lagen als Grafiken ("glyphs") schon fast alle in osteuropäischen Versionen der Times Roman- und Arial-Zeichensätze vor. Die Arbeit bestand somit hauptsächlich in einer Umordnung der Zeichen-Code-Zuordnungen in existierenden TTF-Dateien. Das war relativ rasch zu erledigen und wurde im Januar dieses Jahres abgeschlossen. Somit konnte die wenig sympathische Zwischenlösung unerwartet schnell durch eine tragfähige Dauerlösung ersetzt werden, mit der sich sehr gut leben läßt, auch wenn UNICODE für den Weg durch die Instanzen noch längere Zeit brauchen sollte. Sogar das Euro-Symbol,
, ist vorhanden. Wir stellen in dieser Ausgabe die überarbeitete Tabelle derjenigen Zeichen vor, deren DOS-Code (OSTWEST.FON) vom Windows-ANSI-Code abweicht. Weil jedoch in der Windows-Umgebung die TTF-Schriftarten zum Drucken gleichermaßen wie zur Bildschirmdarstellung dienen, kann man das Zeichensatz-Problem tatsächlich so gut wie vergessen. Man muß nur die bereitgestellten Tabellen (o.apt und d.apt) in die Parameterdateien einbinden - das ist alles, um stets ein Ù zu sehen, wo ein Ù stehen soll. Von der Hin- und Hercodierung im Hintergrund merkt man nichts, und auf DOS-Ebene läuft alles ohne jeden Eingriff weiter.
Eine noch weitergehende Lösung, bei der auch die Tabellen nicht gebraucht würden, ist nicht praktikabel. Dann müßte man innerhalb der ANSI-Tabellen z.B. die Umlaute an andere Stellen setzen und könnte folglich die allegro-Schriften nur innerhalb von allegro verwenden. So aber ist erreicht, daß die neuen Schriftarten auch unter WinWord einwandfrei benutzt werden können, und daß zumindest deutsche Texte, die man vorher mit Times Roman oder Arial geschrieben hat, mit den allegro-Versionen dieser Schriften genauso aussehen. Damit wird auch die Übernahme von Daten in WinWord-Texte elegant gelöst. Im Ergebnis sieht die Zeichentabelle wegen der diversen Randbedingungen recht unordentlich aus. Das spielt jedoch für die Arbeit damit keine Rolle.
UNICODE, die Patentlösung für die Zukunft, hat die Niederungen der Praxis noch nicht erobert, und so sind momentan immer noch Kompromisse angesagt. Wer gehört hat, daß Windows-NT und Java mit UNICODE arbeiten können, mag denken, daß dieses universelle Codesystem damit einsatzreif sein müsse. Jedoch reicht diese Voraussetzung noch nicht aus. UNICODE-Zeichen werden intern durch zwei Bytes (16 Bit) repräsentiert, und diese Tatsache würde Eingriffe an sehr vielen Stellen innerhalb der Programme erfordern, wo bisher überall mit 8 Bit pro Zeichen gearbeitet wird. Die für das Indexieren notwendigen Tabellen müßten stark aufgebläht werden, aber vor allem würde sich das Datenvolumen, in Bytes gemessen, verdoppeln. Nicht jeder wird das hinnehmen wollen, vor allem dann nicht, wenn man Sonderzeichen nur ganz selten braucht. Der Informationsgehalt, wie gesagt in Bytes nicht bezifferbar, würde sich nur höchst geringfügig vergrößern, wenn überhaupt. Solange aber Festplatten noch nicht völlig kostenlos zu haben sind, kostet eine (in Bytes) doppelt so große Datenbank in der Hinsicht das Doppelte.
ALLEGRO.TTF
ist besonders günstig für den wichtigen Bereich 9 bis 11 Punkt SchriftgradA-TIMES.TTF
auf der Basis der TimesNewRoman eignet sich für alle Größen, bes. auch für WinWord.A-LETTER.TTF
abgeleitet von der LetterGothic, ist eine Schrift mit konstanter Zeichenbreite.Man findet sie auf dem FTP-Server im Verzeichnis UTILITY, eingepackt in OSTWEST.EXE.
In der nachfolgenden Liste sind alle DOS-Codes (127-254) aufgeführt, wie sie im OSTWEST-Font definiert sind. Die hinter dem ANSI-Code angegebenen Zeichen gelten nur für die TrueType-Schriftart ALLEGRO.TTF. Die Zuordnung wird geleistet durch die Datei O.APT.
Unter DOS kann jedes Zeichen mit seiner ASCII-Nummer eingegeben werden, wenn man die Alt-Taste drückt und dann für die Zahl die Tasten des Ziffernblocks rechts auf der Tastatur benutzt. Für Windows ist es fast genauso: man muß die ANSI-Codes verwenden und eine '0' vor die Zahl setzten, also z.B. Alt+0128 für das Euro-Symbol.
Die Codes 32 bis 126 existieren unter Windows in gleicher Weise, d.h. in diesem Bereich ist kein Eingriff nötig.
Die Codes 140-143 und 157 sind unter Windows problematisch und wurden nicht belegt.
Die Zeichen sind in dieser Tabelle nach dem Buchstabenwert alphabetisch geordnet, damit man sie leicht findet. Zuerst ist immer der DOS-Wert (Originalcode OSTWEST.FON) angegeben, dann der Windows-Wert.
Akzent- und Sonderbuchstaben
142 196 Ä Umlaut Ä | 132 228 ä Umlaut ä | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
143 197 Å A mit Ringel | 134 229 å a mit Ringel | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
146 198 Æ AE Ligatur | 145 230 æ ae Ligatur | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
160 225 á | 131 226 â | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
133 224 à | 238 170 ͺ a mit Ogonek | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
128 199 Ç C mit Cedille | 135 231 ç c mit Cedille | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
166 208 Ð C mit Hacek | 167 240 ð c mit Hacek | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
240 206 Î C mit Akut | 241 205 Í c mit Akut | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
144 201 É | 221 128 Euro-Symbol | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
130 233 é | 136 234 ê | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
137 235 ë e mit Trema | 138 232 è | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
127 202 Ê e mit Hacek | 239 200 È e mit Ogonek | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
176 185 Ή i ohne Punkt (türk.) | 139 239 ï i mit Trema | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
140 238 î | 141 236 ì | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
161 237 í | 242 217 Ù L mit / (poln.) | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
243 218 Ú l mit / (poln.) | 164 241 ñ | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
165 209 Ñ | 244 213 Õ N mit Akut | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
245 245 õ n mit Akut | 153 214 Ö | 148 246 ö | 246 211 Ó | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
162 243 ó | 147 244 ô | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
215 216 Ø gr. dänisches Ö | 237 248 ø kl dänisches ö | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
___ 156 oe Lig. (fehlte in OSTWEST!) | 169 174 ® R mit Hacek | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
168 194 Â r mit Hacek | 171 138 S mit Hacek | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
172 154 s mit Hacek | 157 204 Ì s mit Cedille | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
247 192 À S mit Akut | 249 193 Á s mit Akut | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
225 223 ß scharfes s | 155 162 ’ t mit Akut oder Hacek | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
154 220 Ü | 129 229 ü | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
150 251 û | 151 249 ù | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
163 250 ú | 159 221 Ý U mit Ringel | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
158 195 Ã u mit Ringel | 152 255 ÿ y mit Trema | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
173 253 ý y mit Akut | 174 219 Û Z mit Hacek | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
175 190 Ύ z mit Hacek | 251 212 Ô Z mit Akut | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
252 210 Ò z mit Akut | 253 203 Ë Z mit Punkt oben | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
254 207 Ï z mit Punkt oben | 177 222 Þ großes isländ. Thorn | 178 254 þ kleines isländ. Thorn |
181 180 ΄ Akut (Accent aigu) | 182 145 Gravis (Accent grave) |
183 136 Acc. circonflexe | 184 149 Punkt übergesetzt |
250 183 · Punkt in der Mitte | |
189 168 ¨ Trema/diaeresis | 190 166 ˘ Halbkr.όberg/breve |
198 227 ã Doppelakut | 199 179 ³ Hacek/caron |
207 186 Ί Ringel | 208 175 ― Überstrich/Macron |
209 215 Χ Halbkr.untergesetzt | 210 171 « Ogonek |
211 184 Έ Cedille | 212 191 Ώ untergesetzter Punkt |
219 161 ‘ diakritischer Schrägstrich | 222 173 diakr. Mittelstrich |
223 247 χ diakr. Unterstrich | 213 146 Ain (arab.) |
___ 158 Alif (fehlte in OSTWEST.FON) |
Sondersymbole
(z.Z. aus DOS-Bereich 0-31)170 172 ¬ Nichtsortierzeichen | 248 176 ° Gradzeichen |
014 130 | 015 131 ☼ | 016 187 » | 017 132 " |
018 133 | 019 134 ‼ |
020 182 Ά Absatzendecode (Eingabe: Alt+t) | 021 167 § Paragraphzeichen |
022 135 ▬ | 023 137 |
024 189 ↑ | 025 139 |
028 157 (Verweisungssymbol, obsolet) | 030 165 ₯ Dreieck |
031 178 ▼ Subfield Code (Eingabe: AltGr+2 ) | 156 163 £ Brit. Pfund |
214 169 © Copyright | 216 164 € Währungs-Symbol |
220 129 Pfeil nach rechts | 236 148 " unendlich-Symbol |
Griechische Buchstaben:
224 151 "[alpha]" | 226 152 "[Gamma]" | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
227 153 ™ "[pi]" | 228 188 Σ "[Sigma]" | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
229 155 "[sigma]" | 230 181 ΅ "[mue]" (mikro) | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
231 177 ± "[gamma]" | 232 150 "[Phi]" | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
233 159 "[Theta]" | 234 160 Ω "[Omega]" | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
235 147 " "[delta]" | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
- |
- |
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
120 |
- |
- |
- |
- |
- |
- |
- |
- |
|
|
130 |
|
|
" |
|
|
▬ |
|
|
|
|
140 |
|
|
|
|
|
|
|
" |
" |
|
150 |
|
|
|
™ |
|
|
|
∟ |
|
|
160 |
|
‘ |
’ |
£ |
€ |
₯ |
¦ |
§ |
¨ |
© |
170 |
ͺ |
« |
¬ |
|
® |
― |
° |
± |
² |
³ |
180 |
΄ |
΅ |
Ά |
· |
Έ |
Ή |
Ί |
» |
Ό |
½ |
190 |
Ύ |
Ώ |
À |
Á |
 |
à |
Ä |
Å |
Æ |
Ç |
200 |
È |
É |
ě |
Ë |
Ì |
Í |
Î |
Ï |
Ð |
Ñ |
210 |
Ò |
Ó |
Ô |
Õ |
Ö |
Χ |
Ø |
Ù |
Ú |
Û |
220 |
Ü |
Ý |
Þ |
ß |
à |
á |
â |
ã |
ä |
å |
230 |
æ |
ç |
è |
é |
ê |
ë |
ì |
í |
î |
ï |
240 |
ð |
ñ |
ò |
ó |
ô |
õ |
ö |
χ |
ø |
ù |
250 |
ú |
û |
ü |
ý |
þ |
ÿ |
- |
- |
- |
- |
Zum Ausprobieren der neuen Schriften eignet sich hervorragend das Programm EBOX.
In der Nummer 47 wurde das Konzept für ein neues Editor-Modul für Windows vorgestellt und ausführlich begründet. Ein Programm namens EBOX wurde geschrieben, um zunächst das Konzept zu testen und zu verfeinern. Dann wurde EBOX aber erweitert zu einem eigenständigen Programm, das zum Bearbeiten von Ergebnismengen, Grunddateien und Externdateien schon jetzt eingesetzt werden kann. Die Beschäftigung mit EBOX lohnt sich: es ist eine nützliche Ergänzung, und es wird Bestandteil der Windows-Software werden.
Haben Sie Windows '95 oder NT? Wenn nein, können Sie EBOX nicht benutzen. Diese Software für Win 3 einzurichten, wäre zu aufwendig. Das Ergebnis wäre außerdem hinsichtlich der Leistung unbefriedigend, sorry!
Damit kann man drei verschiedene Typen von allegro-Dateien betrachten, durchsuchen und bearbeiten. Es sind nur minimale Vorbereitungen notwendig. Auch mit sehr großen Dateien arbeitet EBOX sehr schnell.
Für welche Situationen ist EBOX gedacht?
Wie groß darf eine Datei werden, damit EBOX sie bearbeiten kann? Praktisch unbegrenzt, jedenfalls mehr als die 16MB, die als Grenze für die Datenbankdateien gelten.
Befehl
Hier wird auf eine Datei
marc_1.uld (also im Format USMARC) zugegriffen, die 4274 Sätze hat, angezeigt wird gerade der Satz 223. (Im linken Feld ist die Schrift A-LETTER eingeschaltet, im Anzeigefeld A-TIMES.)Die Bearbeitung geht wie in den news 47 beschrieben, aber es gibt jetzt noch mehr und verbesserte Funktionen. Der untere Bereich ist neu hinzugekommen. Da gibt es jetzt das Eingabefeld [Find] und 6 neue Buttons.
Zusätzliche Buttons im erweiterten EBOX
[F1] | Hilfe. Je nachdem, wo der Focus ist, kommt eine der Hilfsdateien | |
HEBOxGER oder HEBOxENG (x=1,2,3,4) je nach Spracheinstellung oder HE_EX... Exportmenü HE_XT... Extras-Menü | ||
[Ausgabe] | Export des Satzes oder der Datei mit beliebigen Parametern, und zwar wahlweise:||
nur den aktuellen Satz, gesamte Datei, gefilterte Datensätze, nur geänderte Sätze, nur gelöschte Sätze. Wichtige Möglichkeit: am Ende der Bearbeitung die "angefaßten" Sätze als .ALG-Datei ausgeben. Vorgabe der Exportparameter und Dateinamen möglich in EBOX.INI. Standard: Export mit e-w.apr in output.dat | ||
[Extern] | Der aktuelle Satz kommt in die Datei E.DAT, | |
der externe Editor wird aufgerufen (default: X.EXE) Die Parameter E-W.APR sind dafür nötig. Nach Rückkehr aus dem externen Editor kann man entscheiden, ob der veränderte Satz wieder eingelesen werden soll (um den Originalsatz zu ersetzen). | ||
[Nächster] | Anzeige des nächsten Satzes aus der Datei (sequentiell). | |
Wenn ein Filter eingeschaltet ist, nur solche Sätze, die den Suchbegriff enthalten. (Siehe [Find] weiter unten.) | ||
[Voriger] | Anzeige des vorigen Satzes. Wenn ein Filter eingeschaltet ist, nur solche Sätze. | |
[Übersicht] | Einblenden der Kurzübersicht (engl. [Browse]) | |
[Neusatz] | Der aktuelle Satz soll als neuer Satz gespeichert werden. | |
Wenn man diesen Knopf drückt, wird eine Kopie des aktuellen Satzes gemacht, dadurch verlängert sich die Datei um einen Satz. In der Statuszeile unter dem Anzeigefenster erscheint "NEW". | ||
[Wechseln] | Zwischen dem Originalsatz (unveränderter Ausgangssatz) und der bearbeiteten Fassung wechseln. | |
Das geht beliebig oft, und bei jedem Satz der Ergebnismenge; der Originalsatz wird bis zum Schluß der Sitzung unverändert vorgehalten. Zwischen verschiedenen Bearbeitungsstufen kann nicht gewechselt werden, es sind immer nur die letzte Fassung und das Original verfügbar. | ||
[Löschen] | Aktuellen Satz ungültig machen (wirklich gelöscht wird erst am Schluß der Sitzung!) | |
Die Beschriftung des Buttons wechselt dann für diesen Satz auf: | ||
[Aktivieren] | d.h. ungültigen Satz wieder gültig machen, möglich bis zum Ende der Sitzung. | |
In der Kurzübersicht sind ungültig gemachte Sätze mit DEL gekennzeichnet. Wenn eine .ALD-Datei bearbeitet wird, sind am Anfang die gelöschten Sätze mit DEL gekennzeichnet, können aber aktiviert werden. Das wirkt sich nicht in der Datenbank aus, sondern beim Herausschreiben am Ende entsteht eine .ALG-Datei, und die aktivierten Sätze sind dann dabei. | ||
[Filter] | Die während der Sitzung gebildeten Ergebnismengen werden zur Auswahl angeboten. | |
Man wählt eine davon aus, um sie erneut durchzublättern. | ||
[Extras] | Mehrere Zusatzfunktionen: | |
|
Außerdem gibt es unten links ein sehr funktionsreiches Eingabefeld:
[Find] | zur Eingabe einer Satznummer oder eines Suchbegriffs. |
Damit ist schnelles Springen zu einem beliebigen Satz möglich. Wenn keine Zahl, sondern eine Zeichenkette eingegeben wird, dann wird diese als "Filter" benutzt. Die Buttons [Nächster] und [Voriger] suchen dann den jeweils nächsten Satz, der die Zeichenkette enthält. Aber es kommt noch viel besser: Wird '?' vor die Zeichenkette gesetzt, bildet EBOX eine Ergebnismenge, die man auch in der Kurzübersicht vor- und zurück durchblättern kann. Es wird eine Volltextsuche nach dem exakten Begriff durchgeführt, wobei auch die ungültigen (gelöschten) Sätze gefunden werden! Das Suchen geht ungefähr so schnell wie bei SRCH, z.B. 45 Sec. bei 15 MB. Wird hinter den Suchbegriff mit '|' noch eine Zeichenkette angehängt, erfolgt eine Ersetzung, d.h. der Suchbefehl wird zum Such- und Ersetzungsbefehl (F1 im [Find]-Feld drücken: Hilfsseite dazu). Beispiel [Find] ?#3,Symphonie|SinfonieDiese Eingabe würde in allen Feldern der Gruppe #3 das Wort Symphonie durch Sinfonie ersetzen. Läßt man das Fragezeichen weg, passiert die Ersetzung nur im ersten Satz, der Symphonie enthält. Jeden veränderten Satz kann man mit dem Button [Wechseln] wieder in den Originalzustand zurückversetzen! Mit [Nächster] kann man zum nächsten Satz weiterschalten, der Symphonie enthält. Tip: wenn man schnell mehrfach auf [Wechseln] drückt (oder Alt+w), sieht man sehr deutlich die Unterschiede zwischen Original und Änderung. |
|
[Exit] | Wenn man mit Druck auf [Exit] aussteigen will, |
kommt zuerst die Frage "Wirklich?", die man mit 'j' beantworten muß. Dann wird noch gefragt (Save?), ob die Datei gesichert werden soll. Antwortet man mit 'n', bleibt der Originalzustand unverändert (alle Korrekturen werden zunächst nicht in die Ausgangsdatei, sondern in eine temporäre Hilfsdatei *.$$$ geschrieben). Mit 'j' wird die Datei im aktuellen Zustand gespeichert, und zwar im selben Format, wie sie vorher war (.cLG oder .cDT). Die Original-Ausgangsdatei steht dann aber immer noch unter name.BAK, sie bleibt also voll erhalten. Wenn man eine .ALD-Datei bearbeitet hat, kann man am Ende zusätzlich entscheiden, ob nur die korrigierten und neuen Sätze herauszuschreiben sind. Die Ausgangsdatei wird nur zum Lesen geöffnet, man braucht also keine Sorge zu haben, es könnte etwas schiefgehen. Die herausgeschriebene Datei erhält den Namen der Ausgangsdatei, aber mit Typ .ALG. Diese muß mit UPDATE wieder eingemischt werden, wenn die Korrekturen auch in die Datenbank übernommen werden sollen! |
Installation : Dateien, die man braucht
Zuerst: EBOX.LZH im Programmverzeichnis entpacken.
Wer nicht mit $A.CFG arbeitet, hat dann noch ein paar Kleinigkeiten zu tun.
Mit *** ist markiert, wo evtl. lokal etwas vorzubereiten ist. (***) heißt, daß dies nicht zwingend erforderlich ist. Unbedingt notwendig ist demnach nur das Installieren der TTF-Dateien.
EBOX.EXE | Das Programm. Voraussetzung: Win'95 oder NT | |
EBOX.INI | Voreinstellungen (optional, enthält Kommentare) | (***) |
EBOX.ICO | Das Icon. | |
ALLEGRO.TTF | TrueType-Fonts für Windows, die alle Zeichen des DOS-Fonts OSTWEST.FON enthalten. | |
A-ROMAN.TTF | Diese Schriftarten können auch in WinWord u.a. genutzt werden! | |
A-LETTER.TTF | Installation bei Win'95: Dateien in das FONTS-Verzeichnis kopieren, dann: | |
Startmenü/Einstellungen/Systemsteuerung/Schriftarten/Datei/Neue Schriftart installieren... Die letztgültigen Fassungen sind in EBOX.LZH mit enthalten. | *** | |
UIF0xxx | User-Interface-Dateien in deutsch (xxx=GER) | |
UIFExxx | und englisch Darin stehen z.B. auch die Beschriftungen der Buttons, '&' markiert immer den "Hotkey" eines Buttons. Darf man alles ändern! | (xxx=ENG) |
c.CFG | Eine Konfigurationsdatei (default: A.CFG) Evtl. Verbesserungen darin machen: Feldbezeichnungen, Abfrageliste | (***) |
E-W.cPR | Ausgabeparameter für Externformat (wenn es fehlt, nimmt EBOX automatisch E-W0.APR, auch bei anderer Konfiguration) Optionale Erweiterung für Kurzübersicht und PV-Routinen (s.u.) | (***) |
D-W.cPR | Anzeige-Parameter (für das Display-Fenster) Ist diese Datei nicht vorhanden, nimmt EBOX automatisch D-W0.APR, aber besser ist, man macht eine eigene Konstruktion, abgeleitet von D-1.cPR. Darin müssen die folgenden zwei Zeilen stehen: to O.cPT laden td D.cPT laden Der Hauptabschnitt muß mit #-@ beginnen. Farbbefehle müssen raus, Drucker-Escape-Sequenzen auch. Achtung: Zwischenteile und indirekte Prä-/Postfixe mit Umlauten und anderen Sonderzeichen werden nicht korrekt angezeigt, weil dabei die Umcodierung nicht greift. Und es muß einen Abschnitt #-( geben, den man aus D-W0.APR kopieren kann: für die kategorisierte Anzeige. Man kommt da mit drei Zeilen aus: #-( Sprungmarke für Alternativ-Anzeige #L Anzeige aller Felder mit den Labels aus der CFG (NEUer Exportbefehl! siehe weiter unten) #+# | (***) |
O.cPT | 1:1-Umwandlungstabelle ASCII<->ANSI (normalerweise Kopie von O.APT) (nötig für das Editierfenster und die Kurzanzeige) Mit den drei TTF-Schriftarten können damit alle Zeichen des OSTWEST.FON unverändert dargestellt werden. Wenn man nicht OSTWEST.FON verwendet: Anpassungen in O.APT! Für den Pica-Zeichensatz existiert eine O.PPT, die aber noch unvollständig ist. | (***) |
D.cPT | Tabelle ASCII->ANSI für das Anzeigefenster (Kopie von D.APT) Wenn man nicht OSTWEST.FON verwendet: Anpassungen! | (***) |
HE*GER | Hilfsdateien. Diese kommen bei F1. Welche jeweils kommt, | |
HE*ENG | hängt davon ab, in welchem Feld der Focus (der Cursor) ist. Man kann diese Dateien beliebig ändern. | (***) |
EB.BAT | Beispiel, wie EBOX in die konventionellen Programme eingebunden werden kann. | |
Man starte EB.BAT nur über CockPit (΅ m p), weil es dann die nötigen Angaben automatisch bekommt. Der Ablauf ist: PRESTO ... -ei-1/edata.alg Erg.Menge exportieren mit I-1.APR in EDATA.ALG EBOX edata.alg Bearbeitung der exportierten Ergebnismenge UPDATE ... -uEDATA.ALG Wiedereinspeisung der bearbeiteten Daten Es ist sinnvoll, dann beim Ausstieg aus EBOX die Option zu wählen, bei der nur die bearbeiteten Sätze wieder gespeichert werden, denn die unveränderten sind ja in der Form schon drin. |
Temporäre Dateien (Muß man nicht wissen, nur zur Information)
Während des Programmlaufs entstehen folgende Dateien (auf dem Verzeichnis, wo man EBOX startet, dort sollte man also Schreibrecht haben), werden aber am Ende gelöscht, d.h. man sieht sie normalerweise nie.
dateiname.TAB Hilfstabelle
dateiname._n n=1,2,... Nummernlisten der Ergebnismengen
dateiname.$$$ Datei mit den veränderten Versionen der Sätze
Wenn man EBOX.EXE startet, liest es zuerst die Datei EBOX.INI (wenn es diese gibt), und danach UIF0xxx und UIFExxx. (xxx = GER oder ENG).
Wenn man keinen Dateinamen angibt, kommt der Windows-typische Dateiauswahldialog (File select box). Man wählt die Datei aus, dann zuerst nochmals [Enter], und es erscheint die Kurzübersicht der ersten Datensätze.
Das Programm EBOX kann überall da eingesetzt werden, wo eine Grund- oder Externdatei bearbeitet werden soll. Der Start kann auch innerhalb normaler Stapeldateien erfolgen, schlicht durch den Aufruf
ebox dateiname.Wenn EBOX vollautomatisch anlaufen soll und man bestimmte Voreinstellungen für Anzeige und Export wünscht, kann man auch die Datei EBOX.INI in geeigneter Weise präparieren, etwa so (in einer .BAT-Datei):
echo [general] >EBOX.INI
echo Konfiguration=u >> EBOX.INI
echo EdFile=eingabe.ulg >>EBOX.INI
echo Exportdatei=ausgabe >>EBOX.INI
echo ExportParameter=p-karte >>EBOX.INI
ebox
Wenn EINGABE.ULG und P-KARTE.UPR vorliegen, startet das Programm mit diesen Vorgaben ohne weitere Frage und präsentiert die Datei EINGABE.ULG.
Wenn man die Kurzübersicht leichter lesbar und übersichtlicher machen will, benutzt man das Externformat (Produktion mit E-W.APR), wobei man jedem Satz eine aufbereitete Kurzzeile voranstellen kann, beginnend mit einem Leerzeichen, etwa so gestaltet wie die Kurzanzeige der Datenbank. Diese Kurzzeile wird nicht als Teil des Datensatzes angesehen, also auch nicht zum Bearbeiten angeboten. In der Datei E-W.APR findet man ein geeignetes Beispiel und Kommentare dazu.
Außerdem hat man in der Kurzanzeige die Möglichkeit, den Anfangspunkt der Anzeige jederzeit auf jede gewünschte Kategorie zu setzen. Im Fenster der Kurzanzeige ([Übersicht]-Button drücken, dann kommt sie) gibt es dafür ein Eingabefeld [Show], dort gibt man z.B.
#245 ein, dann wird jeder Satz ab diesem Punkt gezeigt. Wenn man dort aber eine Zahl eingibt, werden die Ergebnissätze ab dieser Nummer angezeigt, und zwar werden immer 100 Kurzzeilen eingelesen.Programmierte Validierungen! [Handbuch 10.2.8, S.220]
Weil EBOX losgelöst von einer Datenbank arbeitet, hat es keinen Zugriff auf die Register. Das hat zwei Nachteile:
Um wenigstens solche PV-Routinen zu ermöglichen, die keinen Zugriff zu den Registern brauchen, kann man einen Hilfsabschnitt in die Parameter E-W.cPR einbauen. Beispiele dazu sind in E-W.APR zu finden. Die Ausführung und evtl. Fehlermeldung erfolgt unmittelbar bei Eingabe einer Kategorie, wie bei PRESTO.
Für die registersensitiven PV-Routinen gibt es jetzt in avanti die Möglichkeit, Prüfungen durchzuführen und in Abhängigkeit vom Ergebnis den Datensatz zu ändern oder auch die Speicherung zu unterlassen. Dazu mehr unter UPDATE.
EBOX.INIDiese Datei ist optional. Mindestens die
Language-Zeile muß vorhanden sein, wenn man nicht in Deutsch arbeiten will.Folgende Zeilen können, aber müssen nicht alle, vorkommen: (für alles, was fehlt, gelten die Defaults)
[general] | Diese Überschrift muß am Anfang der Datei stehen |
Konfiguration=A | Konfiguration A.CFG (Default=A) |
EdFile=dateiname | Wenn nicht angegeben, kommt eine file select box und bietet die vorhandenen Dateien der Typen .ALG/.ADT/.ALD an. |
Language=sprache | Sprache der Menütexte, für UIF und H-files (Default=GER) |
Single=1 | default=1; (bei 0 öffnet EBOX nur die Datei E.DAT: nur 1 Datensatz) |
ExportParameter=exportparameter | |
Name der Export-Parameter, z.B. P-KARTE (default: E-W.APR) | |
OutputFile=dateiname | Name der Export-Datei (Default ist der Name output.dat) |
ProgDir=progverzeichnis | Programmverzeichnis (Default: c:\allegro) |
Export
Neuer Befehl L
Als Manipulationsbefehl bewirkt Lxy, daß aus der CFG der Feldname (Label) entnommen und in die Variable #uxy kopiert wird. Der Feldname wird zuerst aus der Abfrageliste zu ermitteln versucht, wenn er dort nicht vorkommt, aus der Liste der Felddeskriptoren (also der mit '#' beginnenden Zeilen in der CFG, Handbuch S. 280, A.1.2).
Beispiel: #123 Lgk speichert das Label von #123 in der Variablen #ugk .
Der Direktbefehl #L funktioniert wie der Pauschalexport ## , aber vor jeder Kategorie erscheint ihr Label. So kann man mit einem einzigen Befehl den Datensatz komplett mit Feldbezeichnungen ausgeben lassen. Zwischen Label und Text der Kategorie erscheint die Zeichenkombination ":Ά " Wenn man p Ά 255 setzt, kann man erreichen, daß der Kategorietext immer auf einer neuen Zeile anfängt. Sonst sollte man p Ά 1 setzen.
Beispiel: siehe D-W0.APR, wie oben erwähnt.
INVENTarisierung
Das Programm INVENT.EXE, eine PRESTO-Variante, gehört zum V15-Paket. Das Handbuch erzählt darüber auf Seite 312 nur weniges und leider unrichtiges. Damit wird es Zeit für eine brauchbare Beschreibung, die wir nun versuchen. Zugleich wurden Verbesserungen am Programm gemacht, die jedoch momentan nur denen zugänglich sind, die sich die aktuelle Version über FTP abholen können. Auf der neuen CD wird natürlich das aktuelle Programm sein.
INVENT reagiert auf die TAB-Taste, wenn der aktuelle Satz ein Exemplarsatz ist. Das erkennt es an der Kategorie #9D. Es zerlegt den Satz in seine Teilfelder, die in #9DG stehen ($ steht für
²), und zeigt dann die unten abgebildete Maske an, damit man die Daten eintragen oder bearbeiten kann. Der Hintergrund ist dabei blau.Wenn man aber '
#' drückt, während ein Titelsatz in der Anzeige steht, wird eine leere Maske gezeigt (mit rotem Hintergrund), in der nur die Identnummer ausgefüllt ist, und zwar kopiert aus der #00 des Titelsatzes. Diese dient also als Verknüpfung zwischen Titel- und Exemplardaten. Beim Speichern entsteht ein neuer Datensatz.Eingetragen sehen Sie in der Abbildung keine Beispieldaten, sondern die Teilfeldnamen, in die dann beim Abspeichern mit F10 der jeweilige Inhalt übertragen wird.
+----- Banddaten-Bearbeitung ---- Esc=Abbr F10=Speich --------------------+
|Ident: :> #9DF | < | | | ||
|Signatur:>$s | < | Sigel:>$L | <| | |
|Bandbez.:>$b | < | Barcode:>$a | <| | |
|Exemplar:>$e 0 | < | Verfügb:>$v | <| | |
|Band :>$B | < | |||
|Ausgabe :>$E | < | Jahr:>$Y | <| | |
|Standort:>$l | <| | |||
|Kommentar>$n | <| | |||
|Zug.Nr. :>$z | < Zug.Datum:>$D | <| | ||
|Bestand :>$H | <| |
+-------------------------------------------------------------------------+
Ohne Speicherung entkommt man mit ESC. Gespeichert wird der Inhalt mit F10. Nochmals: ist der Hintergrund rot, wird es ein neuer Satz, wenn blau, ist es ein zu korrigierender Satz.
Die IdentNummer kommt in die #9DF des Exemplarsatzes, alle anderen Eingabefelder kommen als Teilfelder in #9DG.
Verwendet man nicht $A.CFG, wird man statt #9D eine andere Kategorie nehmen wollen. Diese kann man beim Programmstart mit Option
-C angeben. Default ist also -C#9D.Das Zugangsdatum funktioniert nur, wenn man beim Start Option
-D setzt. Dann wird bei einem neuen Exemplar das aktuelle Datum in das Feld eingesetzt. Man kann es ändern. Die Form ist 19JJMMTT.Die Bezeichnungen der Eingabefelder stehen in der Datei
UIFIGER und können geändert werden, die Zuordnung zu den Teilfeldern jedoch nicht, d.h. aus dem Eingabefeld "Signatur" wird immer das Teilfeld ²s gemacht usw.Ist das Programm umnutzbar für andere Zwecke? Der interessante Aspekt ist ja, daß man damit neue Sätze erzeugen kann, die mit dem aktuellen Satz über die IdNummer verknüpft sind, und das kann auch für andere Anwendungen wichtig sein.
Zwei Dinge müßte man tun:
Könnte man nicht auch die Inhalte der Teilfelder über PV-Routinen in eigene Kategorien überführen, statt sie alle in eine Kategorie packen zu lassen? Auch das könnte man tun, aber bei der Bearbeitung eines so erzeugten Satzes könnte man nicht mehr dieses Programm benutzen, weil es dann die Maske nicht aufbauen kann. Das kann es nur aus der Kategorie #9D bzw. derjenigen, die man per -C vorgibt.
Noch eine PRESTO-Alternative: REF
Wenn man zur Erfassung neuer Sätze eine Maskeneingabe wünscht, läßt sich dafür auch das Programm REF.EXE umnutzen. Dieses hat eine Eingabemaske (mit 'I' aufzurufen), die einen neuen Sacherschließungs-Stammsatz erzeugt. Mit dieser Maske kann man insgesamt 10 Datenfelder erfassen, die man über die Datei UIFRGER beliebigen Kategorien zuordnen kann, um selbstdefinierte Sätze zu erzeugen. Die Verknüpfung zum aktuellen Satz, die REF nicht herstellt, kann man durch eine PV-Routine erzeugen lassen. REF hat noch andere nützliche Funktionen: mit Alt+k kann man im Index Zeilen in den Phrasenspeicher kopieren, und in der Eingabemaske kann man sie mit Alt+k als Liste abrufen und auswählen.
Zum Programm REF gibt es eine eigene Publikation "allegro-Sacherschließung", die momentan leider vergriffen ist, aber neu aufgelegt werden soll.
Zeitschriftenheftzugang : 3 Lösungen!
Die Kontrolle der laufenden Zeitschriftenzugänge gehört zu den äußerst schwierigen Aufgaben in der Bibliotheksautomatisierung. Das liegt einfach daran, daß es bei Zeitschriften bekanntlich nichts gibt, was es nicht gibt, und daß gerade auf diesem Gebiet keine zwei Bibliotheken genau gleich arbeiten können.
Die Entwicklungsabteilung hat nach wie vor keinen Mangel an dringenden Aufgaben (wenn man nur an Windows denkt), daher wurde das heiße Eisen hier noch liegengelassen (ohne Hoffnung, daß es abkühlt). Unterdessen haben aber bewährte allegrologen das Heft selber in die Hand genommen und nicht weniger als drei verschiedene Lösungen ausgearbeitet, alle auf der Basis der Standardprogramme, also durch ideenreiche und geschickte Parametrierung. Alle drei Lösungen haben die Feuerprobe der Praxis bestanden, und so ist es Zeit für eine angemessene Würdigung.
Lösung 1 : Eigenbau der UB Leipzig
Dr. Annemarie Tews erarbeitete die Leipziger Lösung allein auf der Grundlage des Kernsystems. Die UB Leipzig betreibt ein großes, verteiltes OPAC-System mit allegro, wobei wegen der Teilnahme am Südwestverbund das MAB-ähnliche Schema P.CFG benutzt wird (Achtung: nicht mit Pica-Schema verwechseln!). Dieses wurde um einige Kategorien erweitert, um die Daten der Zeitschriftenhefte unterzubringen. Die Parametrierung nutzt intensiv die Möglichkeiten der Flips, der Globalen Manipulation und der PV-Routinen, die Erfassung der diversen Satztypen läuft über die Abfrageliste. Realisiert sind Funktionen wie: neues Heft eintragen, Heft in Umlauf geben, innerhalb des Umlaufs die Weitergabe an die nächste Stelle registrieren, etc. Die Überwachung der Umläufe ist besonders wichtig bei den Zeitschriften der Sondersammelgebiete, weil diese Hefte immer schnellstmöglich auffindbar sein sollen. Auch die Rechnungen werden erfaßt: jede Rechnung bekommt einen eigenen Datensatz. So kann man auch die Verausgabung der Mittel statistisch nach Kontingenten und Abteilungen auswerten. Beim Anlegen von Rechnungs- und Heftsätzen wird überprüft, ob der Bearbeiter für die betr. Zeitschrift schreibberechtigt ist. Das muß sein, weil etwa 10 Zweigstellen in derselben Datenbank arbeiten.
Jeder Band (Jahrgang) bekommt einen Datensatz, in welchen dann für jedes Heft eine neue Kategorie eingetragen wird. An diese Kategorien werden später hintereinander Namenskürzel und Datum der Umlaufteilnehmer angehängt. Der Teilnehmer, der ein neues Heft übernimmt, muß dazu den Titelsatz aufrufen, Strg+F10 drücken und dann den Kennbuchstaben eingeben, der bei dem Heft zu sehen ist. Eine globale Manipulationsroutine hängt dann sein Kürzel und das Datum an die Heftkategorie. Zwar kann die Erscheinungsfrequenz erfaßt werden, eine Fristberechnung für das nächste Heft erfolgt aber noch nicht. Große Pluspunkte dieser Lösung: Finanz-Kontingentkontrolle, Umlaufüberwachung, Zweigstellen. Die Umstellung auf das konsolidierte Format würde viel Parametrierung erfordern. Jedoch könnte man die Lösung so gut wie komplett übernehmen (bis auf lokale Anpassungen), wenn man für die Zeitschriftenerwerbung eine separate Datenbank führt.
Lösung 2 : aLF-Umnutzung in Kiel
Reinhold Schleifenbaum an der Bibliothek der Wirtschaftswissenschaftlichen Institute der Uni Kiel kam auf die Idee, das Ausleihprogramm aLF, mit dem man schon länger arbeitete, zu zweckentfremden. Der Grundgedanke ist dieser: jedes neu ankommende Heft wird so erfaßt, als sei es ein Exemplar der Zeitschrift, d.h. es wird mit aLF ein Exemplarsatz angelegt. Dieses "Exemplar" wird dann sofort ausgeliehen, aber nicht an eine Person, sondern an den Standort! Die "Leihfrist" errechnet sich aus dem Frequenztyp der Zeitschrift, der als aLF-Medientyp realisiert ist. Ist die Frist abgelaufen, kommt bei der aLF-Mahnroutine statt einer Rückgabeaufforderung eine Mahnung an den Lieferanten heraus. Die Lieferfristüberwachung ist der große Pluspunkt dieser Lösung, während Rechnungs- und Finanzfragen nicht einbezogen sind.
Die Parametrierung bezieht sich auf das Pica-Schema $P.CFG!
Lösung 3 : In Berlin tut's auch ALFA
Winfried Goss in Berlin setzte auf das bei jedem Anwender vorhandene Programm ALFA und das Konsolidierte Format ($A.CFG) und dokumentierte die notwendigen Erweiterungen und Abweichungen genauestens. Es gelang ihm, für eine Behördenbibliothek die ALFA-Ausleihe und den Heftzugang mit Umlaufverwaltung zu integrieren. Die Erfassung von Heften und Buch-Exemplaren wird über die Abfrageliste (mit Teilfeld-Abfragen) realisiert. Die erweiterte Indexierung ermöglicht Flips in der Titelanzeige, so daß man etwa unter dem Zeitschriften-Titelsatz die Liste der vorhandenen Bände sieht und dann jeden Band getrennt anzeigen lassen kann mitsamt der davon vorhandenen Hefte. Die Hefte sind wie bei Lösung 1 in Fortsetzungskategorien innerhalb des Bandsatzes angelegt, nicht als Einzelsätze wie bei Lösung 2.
Pluspunkte dieser Lösung: Fristüberwachung und Mahnung möglich; Integration mit dem Ausleihverfahren, d.h. auch Hefte können ausgeliehen werden. Zur Ausleihe gibt es Nutzerstammsätze, unter denen man die entliehenen Stücke sieht und per Flip abrufen kann.
Interessant ist das Ganze für Spezial- und Institutsbibliotheken. Erster Anwender ist die Bibliothek der Senatsverwaltung für Gesundheit und Soziales in Berlin.
Alle drei Lösungen können nicht aus dem Stand sofort anderswo eingesetzt werden, aber das gilt ja für jede bibliothekarische Software, zumal wenn sie Geschäftsgänge unterstützen soll. Texte in den Parametern und in Hilfs- und Menüdateien sind zu modifizieren, die lokalen Benutzerdaten zu erfassen etc. Die Substanz der Lösungen, in Form von Parameter-Paketen, wird von den drei Entwicklern dankenswerterweise zur Nachnutzung bereitgestellt. Zu jedem Paket gehört eine README-Datei, die Auskunft über die Einzelheiten der Parametrierung und Bedienung gibt, und eine START.BAT, mit der man eine kleine Demo-Datenbank startet. Diese Pakete liegen unter den Namen ZH1.LZH, ZH2.LZH und ZH3.LZH auf dem Verzeichnis PARAM des FTP-Servers und werden auch auf der nächsten CD sein. Dann ist es "nur" noch eine Sache der Parameteranpassung, bis man die maßgeschneiderte Lösung hat.
Internationaler Biographischer Index im WorldWideWeb
... natürlich als allegro-Datenbank!
Seit kurzem gibt es eine neue allegro-Datenbank im Netz der Netze, die sich wohl wirklich sehen lassen kann. Es handelt sich um den Internationalen Biographischen Index des K. G. Saur Verlags und ist die Umsetzung des gleichnamigen CD-ROM-Produkts als allegro-Datenbank. Sie enthält ca. 1,7 Millionen Einträge zu Personen, die in den folgenden Biographischen Archiven nachgewiesen sind:
Zu den Personen sind die Lebensdaten, Berufe und Quellen, in denen sie verzeichnet sind, erfaßt. Des weiteren sind die Berufe sprachunabhängigen Berufsklassifikationen zugeordnet, um ein effiziente Suche zu ermöglichen. Die Archive erstrecken sich auf unterschiedliche Zeiträume, generell reicht aber die Erfassung nicht wesentlich über die 1920er Jahre hinaus. Personen der Gegenwart sucht man vergeblich!
Für die Schnittstelle mußten die
acwww25-Skripte den Recherchemöglichkeiten dieser Datenbank angepaßt werden. Sinnvolle Suchfunktionen bietet die Schnittstelle dadurch, daß die Suche nach Personen durch die Einschränkung nach Lebensdaten, Berufsklassifikationen und Archiven präzisiert werden kann. Beim Ausfüllen der Maske wird der Benutzer durch eine kontextsensitive Hilfe unterstützt. Sie ist besonders bei der Suche nach der Berufsklassifikation notwendig, da diese als Zahlencodes vorliegen, um die Suche sprachunabhängig gestalten zu können. Der Benutzer muß sich aber nicht mit den Codes selbst herumschlagen, sondern kann seinen Suchbegriff aus Tabellen heraussuchen, wobei ein Klick auf einen Eintrag den entsprechenden Code in das Feld der Suchmaske überführt. Diese Tabellen liegen in den Sprachen Deutsch, Englisch, Spanisch, Italienisch und Französisch vor. Für die Schnittstelle selbst gibt es eine deutsche und eine englische Oberfläche.Da hauptsächlich nach den verzeichneten Personen gesucht werden dürfte, bietet das Suchformular an erster Stelle die Suche nach diesen Einträgen. Die Titel, Verfasser und Herausgeber der verwendeten Quellen sind bequem über die Registerlisten recherchierbar. Außerdem findet man im Register 7 nach Sprache getrennt eine Übersicht über die Berufsgruppenklassifikationen.
Zum Schluß noch ein paar technische Details, die vielleicht von Interesse sind. Die Scripte der Schnittstelle liegen mit den Hilfstexten auf derselben Maschine wie unser WWW-Server (Sun Ultra Sparc 2). Die Datenbank hingegen befindet sich wegen des Umfangs (ca. 590 MB) auf einer anderen Sun. Hier läuft
avanti-x als Datenbankserver. Gesteuert wird das Programm von den Scripten auf dem WWW-Server über TCP/IP.Ansehen können Sie sich die Datenbank unter
http://www.biblio.tu-bs.de/acwww25u/wbi/ .(ho)
Formate-Datenbank neu präsentiert
Nachdem das Buch "Was sind und was sollen bibliothekarische Datenformate?" (erschienen 1994) vergriffen war, wurde eine neue Präsentation der zugrundeliegenden Datenbank entwickelt. Nur noch online wird das Werk künftig verfügbar sein, weil man es nur so hinreichend schnell aktualisieren kann. Die Formate USMARC, UNIMARC, MAB2, Pica und "allegro" waren alle seit 1994 zum Teil beträchtlich erweitert worden. Die veröffentlichten Dokumentationen wurden in die Konkordanz eingebaut. Unter der Adresse
www.biblio.tu-bs.de/allegro/formate/ erscheint jetzt ein Text, der einige allgemeine Aussagen über Formate macht, um dann zu den tabellarischen Listen der Formate hinzuführen. Darin kann man jede einzelne dort aufgeführte Kategorie anklicken, um eine ausführliche Konkordanz des betreffenden Datenelements aufzublättern. So sieht man z.B. zum Element "Hauptsachtitel" (331 bei MAB, 245 bei MARC) dann eine Übersicht, in der nicht nur die Kategorienummern, sondern auch alle für die jeweiligen Formate definierten Teilfelder und Indikatoren aufgelistet sind. Sowohl die Tabellen wie die Konkordanzlisten werden alle per Export aus der Formatedatenbank erstellt. So ist es nun möglich, bei Aktualisierungen die betroffenen Dateien jederzeit neu zu produzieren, nachdem man die Korrekturen in der "allegro"-Formatedatenbank gemacht hat.Diese Datenbank und die HTML-Texte werden auf der nächsten CD sein. Jeder Anwender, auch ohne Internet-Anschluß, kann dann die Datenbank sowohl wie die WWW-Präsentation benutzen.
UPDATE
V14-Fehler behoben
UPDATE konnte durch ein Versehen noch nicht, was PRESTO und avanti schon beherrschten: Registereinträge verlagern, wenn in einem Stammsatz die Ansetzungsform, und damit der Pseudoschlüssel, sich änderte. Diese wichtige V14-Funktion (Handbuch S.215) war in UPDATE im Prinzip aber schon eingebaut und ist jetzt auch aktiviert. (Korrektur: 25.3.98)
Die folgenden drei Verbesserungen wurden am 27.3.98 eingebaut:
Löschen von Kategorien
Es kommt vor, daß man bestimmte Kategorien in bestimmten Sätzen beseitigen will und dieses nicht mit PRESTO erledigen kann, weil man die Sätze nicht als Ergebnismenge zusammenfassen und dann eine globale Änderung machen kann. Jetzt wurde deshalb UPDATE das Löschen von Kategorien beigebracht. Das funktioniert im Modus -fm41, und zwar so: Wenn z.B. die Kategorie #23 zu löschen ist, muß in dem einzumischenden Satz stehen:
#23 _
Allgemeine Regel:
die fragliche Kategorie muß im neuen Datensatz nichts als einen Unterstrich enthalten, der folglich auf der ersten Textposition stehen muß. Weiterer Text darf dahinter nicht folgen. Es können mehrere solche Löschungen in einem Satz vorgenommen werden. Der neue Datensatz darf daneben andere, ganz normale Kategorien enthalten. Kommt die Kategorien nicht vor, passiert nichts, d.h. man hat nicht auf einmal eine unerwünschte leere Kategorie.Der Unterstrich ist für diesen Zweck ein plausibles Befehlszeichen. Ein Leerzeichen wäre weniger günstig, weil der menschliche Betrachter es leichter übersieht und auch beim Produzieren solcher Daten mit anderer Software ein Leerzeichen am Feldende evtl. wegfällt. Eine ganz leere Kategorie funktioniert aus anderen, internen Gründen nicht, daher mußte für diesen Zweck ein Steuerzeichen gewählt werden, und eine Kategorie, die aus nichts als einem Unterstrich besteht, dürfte ansonsten wohl nicht vorkommen.
Anhängen von Wiederholungskategorien
Das ist ungefähr das Umgekehrte! Man will eine neue Kategorie hinzufügen, wenn diese aber im alten Datensatz schon vorhanden ist, soll sie nicht, wie es normal ist, überschrieben, sondern als neue Kategorie angehängt werden.
Dazu muß man die neue Kategorie so anliefern, daß ihr Text mit einer Tilde beginnt.
Beispiel: Zwei neue Kategorien #92x sollen eingemischt werden. Man weiß aber nicht, ob schon eine oder mehrere vorhanden sind, also etwa #92, #922 und #923. Dann schreibt man in den neuen Datensatz
#92 ~Text...
#922~Text...
UPDATE macht dann daraus
#924 und #925 und beseitigt die Tilde. Wenn noch keine #92 vorhanden ist, wird nur die Tilde beseitigt.Nicht möglich ist es, eine neue Kategorie vor oder zwischen vorhandene Mehrfachkategorien zu schieben.
Parametrierte Vorbearbeitung
Sollte alles das noch nicht reichen, kann man beliebige Manipulationen in der Exportsprache parametrieren. Man muß dazu einen Abschnitt
#-# in die Exportparameter einbauen. D.h. UPDATE muß mit einer Exportoption gestartet werden, z.B. update ... -e manip/nul .Beispiel: Man will den Inhalt einer Kategorie um eine neue Angabe verlängern. Diese liefert man zunächst in einer ganz anderen, sonst nicht benutzten Kategorie an und programmiert dann an der Sprungmarke
#-# die Aktion, die nötig ist, um diese Hilfskategorie an die richtige anzuhängen und die Hilfskategorie dann wieder zu beseitigen.Die Vorbearbeitung wird auf jeden zu speichernden Satz angewendet., d.h. der Abschnitt
#-# wird in jedem Fall angesprungen, egal ob ein Satz ersetzt oder ein neuer eingemischt wird. Erlaubt ist in den Parametern fast alles, Nachladen funktioniert aber nur mit Modus 8/9, d.h. nur aus den Registern! avanti dagegen wird auch das andere können.Durchgeführt wird der Abschnitt unmittelbar vor dem Speichern, also nachdem die Zusammenmischung von neuem und altem Satz durchgeführt wurde - etwas anderes wäre kaum sinnvoll.
Wenn die Exportparameter einen output erzeugen, hat dieser weiter keine Wirkung. Man wird, wie bei den globalen Manipulationen, immer den M-Befehl einsetzen, um eine veränderte Kategorie wieder in den Datensatz einzustellen.
Eine zusätzliche, nicht unwichtige Möglichkeit gibt es noch: Wenn man einen output erzeugt, der mit XX beginnt, dann wird der Datensatz nicht gespeichert. Damit hat man ein Mittel, um parametergesteuert das Einmischen an beliebige Bedingungen zu knüpfen. Sagen wir als Beispiel, der Satz soll nicht eingemischt werden, wenn in
#81 das Wort "Altbestand" steht. Das geht dann ganz einfach:#-#
#81 c"Altbestand" p"XX"
Ausgabetext beginnt dann mit XX, Satz wird nicht gespeichert....
avanti
Der avanti-Server hat seit den letzten news weitere Aufwertungen erfahren. Der Befehlssatz wurde erweitert und das Sperren der Datenbank im Mehrbenutzerzugriff sicherer gestaltet.
Der qrix-Befehl wurde um die Möglichkeit erweitert, den Umfang des Registerauszugs mit zwei Suchbegriffen zu beschränken., d.h. Beginn und Ende des gewünschten Abschnitts vorzugeben.
Syntax:
Als Trennung zwischen den Schranken dient das @-Zeichen. Der <BIS>-Begriff wird nicht mehr mit ausgegeben.
Falls einer der Ausdrücke nicht im Register enthalten ist, erscheint der nächst-kleinere Eintrag. Wie bisher können die Begriffe trunkiert oder in Anführungszeichen gesetzt werden. Ein vorangestellter Unterstrich verhindert die Umcodierung. Ein vorausgegangener qrix n <N> -Befehl, der die Maximalzahl der auszugebenden Registerzeilen auf N begrenzt, besitzt jedoch eine höhere Priorität. So kann man allzu lange Ausgaben verhindern.
Beispiel: qrix 1 adelmann @ baacke liefert mit der Demo-Datenbank den folgenden Auszug:
1 |
adelmann, s |
798 |
1 |
adi, wael |
126 |
1 |
ahrens, ruediger |
73 |
1 |
alexander, marguerite |
45 |
1 |
alles, wolfgang |
109 |
1 |
alt, peter-andre |
831 |
1 |
althaus, horst |
856 |
1 |
andersen, bettina |
122 |
1 |
arellano, michael |
123 |
Die VON-BIS-Beschränkung ist auch auf einen rückwärtsgerichteten Registerauszug anwendbar.
Es muß dann zuerst der Befehl qrix gegeben werden.
(ve)
INDEX
Sonderkategorien
#fna und #nr jetzt möglichImmer wieder einmal war es gewünscht worden, Schlüssel aus den Dateinamen oder -nummern bilden zu können, oder auch aus den internen Satznummern. Dem stand entgegen, daß INDEX die Sonderkategorien #fna (file name) und #nr (record number) nicht bilden konnte. D.h. in den Indexparametern konnte man sie nicht verwenden. (#fna funktionierte allerdings in PRESTO und UPDATE schon immer.)
Diese Einschränkung bestand nicht ohne Grund: es ist aus der Sicht der Datenbanktheorie unsauber, Zugriffsschlüssel zu bilden aus Elementen, die gar nicht im Datensatz selbst vorkommen. Bei gewissen Anwendungen gab es aber triftige Gründe, solche Elemente, insbesondere die Dateinummer, entgegen der reinen Lehre doch als Registereinträge zu verwenden. Andernfalls hätte man umständliche Hilfskonstruktionen machen müssen.
Kurzum, INDEX wurde jetzt mit der Fähigkeit ausgestattet, auch die Sonderkategorien #fna und #nr bilden zu können. Empfohlen wird es nicht, aber für Experten, die wissen, was sie tun und warum, fällt damit eine manchmal lästige Einschränkung weg.
PRESTO / APAC
Ausgeleuchtet: Die "Schwarzen Löcher von Leipzig"
Ein Bildausfall trat regelmäßig und unerklärlich auf, wenn sehr oft zwischen zwei Datenbanken umgeschaltet wurde. Das Bild wurde schwarz und nur Neustart des Rechners half, denn das Programm war in eine Endlosschleife geraten.
Standard-Anwender haben nichts zu befürchten und brauchen nichts zu tun. Datenverluste oder -schäden sind überhaupt in keinem Fall zu befürchten. Der Effekt ist einfach nur lästig, wenn er überhaupt auftritt.
Es stellte sich heraus: der Effekt kann nur auftreten, wenn eine Parametertabelle des Typs CAT.APT vorhanden ist, die in den Indexparametern nachgeladen wird. Darin stehen normalerweise nur die Registerüberschriften der Datenbank. Diese können beim Umschalten geladen werden, damit man bei der anderen Datenbank die richtigen Überschriften hat. Aber noch eine zweite Voraussetzung muß gegeben sein: es muß in jener Datei eine Zeile des Typs
|a="..."
stehen, also eine Überschrift für den Anzeigeschirm. Abhilfe also: diese Zeile beseitigen, sie ist sowieso nutzlos.
Dennoch wurde das Problem an der Wurzel gepackt und eliminiert. APAC, PRESTO, MENUED und ALFA sind bereinigt.
Kleine Ungenauigkeit
Die Kombination [Strg]+[Rücktaste] soll den Code 127 auslösen, was im OSTWEST-Font das e mit Hacek ist. Das ging im
#b-Fenster nicht, sondern es wurde dann das ganze Fenster gelöscht. Dieser unerwünschte Effekt ist korrigiert.Und wenn man tatsächlich mal das ganze Fenster löschen will: zuerst [Pos1] dann [Strg]+[Ende].
Flips bei hierarchischen Sätzen
Warum funktionierten sie nicht? Die Ursache wurde ermittelt und eine Abhilfe gefunden:
Im Flip-Abschnitt sorgt man dafür, daß diese drei Zeilen vorkommen und immer ausgeführt werden:
#t{ C }
neue Zeile beginnen#wh
Wiederholungsmarke hier setzen#+#
Der Hintergrund ist recht kompliziert (wie eben überhaupt der Umgang mit hierarchischen Sätzen) und wurde in der Diskussionsliste beschrieben. Es genügt, diese Abhilfe einzubauen.
PRESTO / UPDATE
Option
-N0 funktionierte nur teilweise [Handbuch 12.1, S.274]Mit
-N0 will man ja sagen, daß beim Speichern von Datensätzen die "Leersätze" nicht benutzt werden sollen, also die Plätze, wo ungültig gewordene Datensätze noch stehen und auf ihre Überschreibung warten. Wenn es viele solche Sätze gibt, dauert das Abspeichern manchmal ungewöhnlich lange. Das liegt daran, daß das Programm Zeit braucht, um erst einmal festzustellen, ob es einen Leersatz von geeigneter Größe gibt.PRESTO und UPDATE beachteten diese Option allerdings nur bei neuen Datensätzen, nicht beim Umspeichern von zu lang gewordenen Sätzen. Dieser Fall tritt allerdings nicht eben selten auf, und so konnten UPDATE-Läufe zur Geduldsprobe werden. Das ist vorbei: beiden Programmen wurde das erwünschte Verhalten beigebracht.
Nebeneffekt: es entstehen noch mehr Leersätze, d.h. die Datenbank wird löchrig wie ein Schweizer Käse. Die Löcher fallen zwar gar nicht auf, aber mit einer gelegentlichen Entlüftung (CockPit
΅r o R) kann man sie ganz beseitigen.Welche Dateien besonders löchrig sind, kann man über CockPit auch erfahren: Routinen/Organisieren/ungenutzten Platz prüfen (
΅r o u). Dann entsteht eine schöne Aufstellung (Datei PROTOQ).IMPORT
Positionierung [Handbuch 11.2.3.2, S.252]
Mitunter sind in den Fremddaten die Zeichenkombinationen für die Feldbezeichnungen zwar eindeutig definiert, aber in Groß- und Kleinschreibung nicht festgelegt. Das trifft vor allem auf HTML-Dateien zu, die immer öfter als Rohmaterial für Importe anfallen. Damit man nicht irgendwelche Kunstgriffe machen muß, wurden neue Versionen der Positionierungsbefehle
s und g geschaffen : S und G machen genau dasselbe, nur daß die Buchstaben des Suchbegriffs hinsichtlich groß und klein nicht unterschieden werden.Beispiel: Es soll eine URL aus dem Fremdtext extrahiert werden. Sie wird immer eingeleitet durch die Zeichenfolge "<A HREF=", aber es kann auch "<a HREF=" heißen, oder "<A Href=" oder oder oder. Das geht dann so:
#8e
S "<a href="
Und für G gilt dasselbe. Der Suchbegriff ist dann immer komplett in Kleinbuchstaben anzugeben!
Neuer Befehl für die Feldlänge [Handbuch 11.2.3.3, S. 254f]
Ein beliebtes Programm in der Web-Szene ist HARVEST. Man kann es unauffällig des Nachts ausschicken, um fremde Server oder ganze Domänen abzuernten, d.h. die zugänglichen Verzeichnisse abzugrasen nach Dateien bestimmter Typen, diese zu analysieren und Metadaten daraus zu machen. Die Metadaten können mit einem Textretrieval-System dann durchsuchbar gemacht werden. Sie könnten auch per IMPORT umgewandelt werden, denn es sind "flache" ASCII-Dateien. Das Format nennt sich SOIF. Natürlich haben die Entwickler es hingekriegt, die im Prinzip einfachen Daten so zu strukturieren, dass man selbst mit IMPORT Schwierigkeiten bekommt.
Hier ist ein Ausschnitt aus einer solchen Datei:
*******************************************************
@FILE { http://cantor.mathematik.uni-halle.de:8080/reports/shadows/97-38report.
update-time{9}: 886892519
description{63}: DC MetaData for: Eine Bibliothek mit parallelen
Algorithmen
last-modification-time{9}: 876310378
time-to-live{6}: 691200
gatherer-name{6}: report
gatherer-host{30}: cantor.mathematik.uni-halle.de
Charakteristisch sind die geschweiften Klammern hinter dem Feldamen. Darin steht die Feldlänge. Der Doppelpunkt und das TAB-Zeichen (!) dahinter zählen nicht mit, und ein Zeilenwechsel zählt nur als ein Zeichen. Damit konnte IMPORT nicht korrekt arbeiten. Es wurde ein neuer Befehl geschaffen, der in die Kategorie "Textausschnitt bestimmen" (11.2.3.3) gehört.
Beispiel:
#81h
S "gatherer-host"
A
_ 13 10
(wurde Datei von UNIX im Binary-Mode übertragen, dann hier nur 10)_ " "
Der Befehl
A bestimmt die Feldlänge anhand der Zahl in {...}, Zeilenbrüche innerhalb des Feldes werden Leerzeichen.Fehlermeldungen
(Eine Ergänzung zu der Liste im Anhang C.2 des Handbuchs)too many field definitions
md960
(oder eine größere Zahl: größer darf sie sein, aber nicht kleiner als 950; Default ist 800)Termin: Einsteigerseminar
Der Nachfrage soll endlich wieder einmal ein Angebot entgegengestellt werden:
Ort: UB Braunschweig, Universitδtsplatz 1, 38106 Braunschweig
Zeit: 18./19.6. (Do./Fr.), Beginn 18.6. 11.00 Uhr, Ende 19.6. 14.00 Uhr. Am 18. Gesprächsabend mit Buffet in der UB.
Begrenzung: 20 Teilnehmer
Kostenbeitrag: DM 50.--
Bei genügend Interesse wird eine Gruppe für Parametrierung gebildet.
Expertentreffen
Das diesjährige soll im Oktober stattfinden, sonst steht noch nichts fest. Wer sich einen Platz sichern will, kann aber schon eine vorläufige, formlose Anmeldung einreichen. Begrenzung: wahrscheinlich 50 Teilnehmer, Kostenbeitrag DM 50.--
© 22.07.1997 UB Braunschweig, Bernhard Eversberg (b.eversberg@tu-bs.de)
Fragen bitte an:
ub@tu-bs.de