A L E P H: INTEGRIRANI PROGRAMSKI PAKET ZA AVTOMATIZACIJO KNJIŽNIC IN NJIHOVO POVEZOVANJE V MREŽE Barbara Bergami, ATLANTIS S.r.l., Verona Matjaž Musek, Mednarodni center za podjetja v državni lasti, Ljubljana UDK 02:519.688 Povzetek V prvem delu članka je podan splošen opis računalniškega programa za integrirano avtomatizacijo knjižnic ALEPH, ki je nastal v Izraelu. Opisani so posamezni moduli programa, koncept organizacije baze in struktura zapisa. Drugi del prinaša še krajši kritični opis funkcionalnosti programa ter njegove pomanjkljivosti in komparativne prednosti pred konkurenco na tržišču. Navedeno je tudi, kdo vse program uporablja, dodan pa je še pregled strokovnih člankov, ki opisujejo ALEPH. UDC 02:519.688 Summary The article features two parts: in the first, the integrated library management program ALEPH from Israel is described. Presented are specific modules and their features as well as ALEPH database concept and its record structure; the second part brings a brief critical review of ALEPH functionality and describes its comparative advantages and disadvantages to other programs in the market. At the end a comprehensive list of current users of the program is given and a bibliography of articles on ALEPH. BERGAMI, Barbara; MUSEK, Matjaž: ALEPH : an Integrated Software for Automation of Libraries and Their Networking. Knjižnica, Ljubljana, 36(1992)1, 47-72 I. ALEPH : Opis programa in modulov ALEPH (Automated Library Expandable Programme) je program za integrirano avtomatizacijo knjižnic in predstavlja nov prodor izraelskega računalniškega znanja na trg večjih sistemov za avtomatizacijo in povezovanje knjižnic. Njegov začetek sega v zgodnja '80.1eta, ko je Center za informatiko Hebrejske univerze predstavil prototip. Program je nastal kot skupen projekt univerzitetne knjižnice in njenega Centra za informatiko na podlagi zahtev knjižnice po avtomatizaciji. Od začetne verzije, ki je podpirala predvsem katalog, je nastal integriran paket, ki pokriva praktično vse funkcije v knjižnicah in omogoča tudi njihovo povezovanje v popolnoma transparentnem načinu dela. Tehnične karakteristike: program teče na računalnikih VAX pod operacijskim sistemom VMS in tudi na vseh računalnikih, ki jih poganja operacijski sistem UNIX. V obeh primerih podpira tako verzijo z grafičnim vmesnikom (npr. X/Windows za VMS ali SF/Motif za UNIX), kot tudi neposredni način dela. V tem članku bo opisana predvsem verzija brez grafičnega vmesnika, znana kot verzija 2.4 (prva verzija, ki podpira delo z grafičnimi vmesniki, je 3.0). ALEPH lahko poganjamo tudi na PC z operacijskim sistemom MS-DOS, kar omogoča lokalno polnenje podatkov, ki jih nato lahko neposredno naložimo v skupni računalnik. Verzija za MS-DOS je po modularnosti enaka večuporabniškim verzijam. Da bi program tekel brez bistvenih zastojev, je potrebno 16Mb RAM pom-, nilnika za cca.14 terminalov, velikost trdega diska ali diskov pa je odvisna od predvidenega števila zapisov v bazi, kar pomeni, da je ob širjenju baze mogoče dodajati diskovne kapacitete. Npr. za 50.000 bibliografskih zapisov (s pripadajočimi zapisi ostalih modulov) je potreben disk kapacitete 305Mb. Število vhodno/izhodnih enot je lahko poljubno veliko in mešanih tipov, saj ALEPH podpira vse vrste tiskalnikov (tudi laserske s Postscript mikro jezikom), CD-ROM ali WORM enote, izdelavo COM fišev neposredno iz kataloga, magnetne kartice in optične skenerje. Prav tako sprejme skoraj vse glavne simbologije za palično kodo, sam program pa lahko generira in tiska na odgovarjajočem tiskalniku palične kode sistema UPC in Interleave 39 (ali 3 of 9). V tem primeru je priporočljivo tiskati nalepke na laserskem ali termičnem tiskalniku. Te lahko tiskamo v paketni obliki (določimo le začetno številko), posamezno ali določen niz (če moramo nadomestiti uničene in strgane nalepke) ali pa nam sistem pri registraciji zaloge sam generira palične kode in jih kasneje tiska za vse novo vnešene fizične enote gradiva, to pa lahko kombiniramo tako, da nam poleg kode natiska za lažjo identifikacijo še osnovne podatke o enoti. Zelo privlačna karakteristika programa je, da lahko obdeluje podatke z različnimi nabori znakov, t.j. v istem zapisu lahko nastopajo različne pisave. Osnovna instalacija omogoča uporabo latinice, cirilice, hebrejščine in arabskih znakov, mogoče pa je razviti dodatne sete. Sprejema tudi vse znake iz tki. razširjene tabele ASCII in jih pravilno sortira, na kar pa lahko tudi sami vplivamo, saj je mogoče dodati poljubno število sortnih pravil, za vsako polje ali za vsako iskalno listo pa lahko predpišemo drugačen način sortiranja. V primeru mešanja pisav z različno orientacijo (levo-desno ali desno-levo) bo sam program poskrbel, da bo kurzor na pravem mestu, ko bomo vpisovali podatke. Ves program, vključno z diagnostičnimi sporočili, je mogoče prevesti v katerikoli jezik ali imeti več paralelnih jezikovnih verzij, tako da lahko sproti spreminjamo jezik dialoga. Seveda moramo v tem primeru prevesti vse ekranske slike, sporočila in menije. Konceptualna zasnova programa ALEPH: - vsaka aplikacija ima lahko eno GLOBALNO KNJIŽNICO, več GLOBALNIH KNJIŽNIC pa se lahko preko mreže poveže v vzajemno bazo, ki jo podpira posebna tabela, v kateri so navedena polja za različne strukture podatkovnih zbirk in njihovo poenotenje za transparentne preiskave (npr. več fizično ločenih GLOBALNIH KNJIŽNIC na različnih računalnikih, ki so povezani v mrežo, ima lahko različne podatkovne strukture; če želimo doseči, da partnerji preiskujejo po podatkih v vseh zbirkah hkrati, sestavimo posebno tabelo, kjer so vključena vsa polja ali pa konvertiramo poljubna polja v skupen nabor oznak za polja, ki veljajo za preiskave v mreži); - v okviru GLOBALNE KNJIŽNICE je mogoče definirati LOKALNE KNJIŽNICE; te so po strukturi lahko različne, vsaka pa pravzaprav predstavlja svojo aplikacijo in je lahko popolnoma neodvisna od ostalih. Povezuje jih le dejstvo, da se vse nahajajo znotraj ene GLOBALNE KNJIŽNICE, torej na istem računalniku; - znotraj vsake LOKALNE KNJIŽNICE pa je mogoče odpreti SEKCIJSKE KNJIŽNICE; te imajo enotno strukturo (definirano v LOKALNI KNJIŽNICI), imajo pa lahko lastne datoteke o uporabnikih, o izposoji, o nabavi, o zalogi, le baza ali glavni katalog je skupen za vse. Za lažjo predstavitev modela si predočimo tri rešitve: Primer 1: Univerzitetno knjižnico določimo kot GLOBALNO, posamezne fakultetne knjižnice pa kot LOKALNE (še posebno v primeru, če so dislocirane in ' imajo potrebe po specifičnih lokalnih podatkih). V primeru, da so znotraj fakultetnih knjižnic tudi razni instituti in odseki z lastnimi oddelčnimi knjižnicami, lahko te definiramo kot SEKCIJSKE. Tako smo zagotovili mini- malno standardizacijo znotraj protokolov, enako pa tudi glede strukture med SEKCIJSKIMI in LOKALNIMI knjižnicami. V tem primeru vse knjižnice uporabljajo en skupen računalnik kot glavni servis, vsaka pa dela v svojem lokalnem katalogu, obenem pa imajo lahko skupno ali ločeno izposojo, nabavo itd. Ker so vse knjižnice znotraj ene GLOBALNE, ni problemov prevajanja struktur. Univerza (skupen računalnik) ITD... Faks 3 Faks 1 Faks 2 ITD... Odd. 2 Odd 1 SEKCIJSKA-2 LOKALNA-1 LOKALNA-3 LOKALNA-2 GLOBALNAKNJ SEKCIJSKA-1 Primer 2: Več knjižnic se odloči za distribuirano tvorjenje skupnega kataloga. Zaradi zmanjšanja stroškov ločenega vodenja nabave, normativnih datotek, popisa zaloge, registracije vezav, itd. se lahko knjižnice odločijo, da bodo formirale skupno GLOBALNO knjižnico, eno samo LOKALNO knjižnico (en računalnik, na katerega so vse povezane), za vsako knjižnico pa se določi posebna SEKCIJSKA knjižnica, kar dovoljuje neodvisno vodenje izposoje in njene politike. Uporabnik ali knjižničar v katerikoli knjižnici lahko vedno ugotovi lokacijo določene enote v katalogu in njen status (kdo vse ima knjigo, kje je izposojena in kje ne, kakšna so pravila izposoje, itd) in se na podlagi tega odloči, kam si bo šel knjigo izposodit. Vsaka knjižnica tudi definira svoje zahteve za kontrolne izpise, statistične preglede, izposojevalne izpise, opomine, itd. ITD... SEKCIJSKA-1 SEKCIJSKA-2 SEKCIJSKA-3 LOKALNA KN J. GLOBALNA Knjižnica 1 Knjižnica 2 Knjižnica 3 Primer 3: Knjižnice na nivoju regije se dogovorijo za skupno rešitev pri avtomatizaciji katalogov in ostalih funkcij. Zaradi zmanjšanja stroškov se odločijo za maksimalno standardizacijo in s tem za delitev stroškov pri nabavi in aplikaciji računalniškega sistema. Odločijo se za rešitev, opisano v Primeru 2. Ker pa se želijo povezati tudi z ostalimi regijami v enoten in transparenten način pregledovanja zalog na nivoju države, se dogovorijo z ostalimi regijami za enotno tehnologijo (razdelitev stroškov in prihranek vložene energije pri razvoju rešitev), vendar je vsaka regija povezana v svojo GLOBALNO knjižnico, te pa se med seboj povežejo na nivoju celotne države v transparenten sistem, ki omogoča sprotno preiskovanje katalogov in zaloge vseh sodelujočih knjižnic in preko elektronske pošte (npr. E-Mail v okviru DECnet) in faxov omogočijo nepapirno medbibliotečno izposojo. Ob sprotnem dogovarjanju in standardizaciji je zagotovljena maksimalna mobilnost informacij, saj so dosežene rešitve na nivoju strojne, programske in komunikacijske opreme, razlike v aplikacijah pa se rešujejo znotraj istega programskega paketa. GLOBALNA 1 LOKALNA Regija 3 SEKCIJSKA1 SEKCIJSKA2 SEKCIJSKA3 PREVAJALNA TABELA Nivo republike GLOBALNA 2 LOKALNA SEKCIJSKA 2 SEKCIJSKA 1 Regija 2 SEKCIJSKA 3 Knj. 1 Knj.2 Knj.3 Regija 4 Knj. 1 Knj.2 Knj.3 ALEPH dejansko omogoča vse naštete rešitve (dober primer je nastajajoča mreža univerznih in drugih knjižnic, ki uporabljajo ALEPH, na področju Rima), seveda pa je mogoče tudi navzkrižno mešanje rešitev, ki so nakazane v treh zgornjih primerih. V splošnem velja, da moramo pri vsaki instalaciji (tudi znotraj ene same knjižnice) določiti vsaj eno GLOB ALNO, eno LOKALNO in vsajenoSEKCIJSKO knjižnico, ker ALEPH izvaja kontrolo nad zalogo na nivoju SEKCIJSKE knjižnice. Tako je bibliografski zapis na nivoju LOKALNE knjižnice, fizična zaloga, ki ji pripada bibliografski zapis, pa na nivoju SEKCIJSKE knjižnice. IZPOSOJA - status izv. • obiskovalec ISKALNE LISTE ■ norm. liste ■ indeksi • lista besed NABAVA - naročila • računi - dobava - fondi PERIODIKA - kardex - kroženje - vezava ZAPIS 0 ZALOGI BIBLIOGRAFSKI ZAPIS Koncept podatkovne zbirke in pripadajočih zapisov (ki jih tvorijo različni moduli) je zgrajen po sledeči shemi: Programski moduli Preden opiševa posamezne module programa, morava predstaviti okolje in orodja, ki jih uporabljamo v ALEPH-u v okviru celotnega programa. Vsi vnosi tekstov, definiranja ekranskih slik, menijev, izpisov, prevodi aplikacije, itd. potekajo s pomočjo urejevalnika besedil posameznega operacijskega sistema (v primeru VMS je to stari dobri ED). Na razpolago nam je ves nabor ukazov takšnega urejevalnika. To tudi pomeni, da so vse nastale datoteke tipa ASCII (torej tekst brez posebnih oznak). Vnos podatkov v katerem koli modulu je lahko paketen, tako da vsebino vnaprej pripravimo ali pa poteka preko urejenih zaslonskih slik (obrazcev). Osnovna aplikacija in njen otvoritveni meni je načelno dosegljiv vsem uporabnikom, samo kreiranje aplikacije in urejanje raznih parametrov pa poteka na dveh nivojih: aplikacija posamezne GLOBALNE baze poteka s pomočjo menijsko urejenega programa UTIL; povezovanje več GLOBALNIH datotek v vozle in mreže, ter globalne parametre pa določamo s pomočjo programa M UTIL. Seveda je to odvisno tudi od nivojev zaščite, tako v okviru operacijskega sistema kot za vsako aplikacijo posebej. Razne nivoje zaščite in omejitve bom opisal kasneje v poglavju o zaščiti. Z vsemi moduli programa komuniciramo prek menijev ali pa z ukazi, včasih pa izpolnimo polja v predpisanem obrazcu na ekranu. Razen niza fiksnih funkcij, ki so aktivne znotraj posameznega modula, lahko vse ostalo oblikujemo po lastnih željah in prilagodimo svojemu okusu. Otvoritveni meni ponuja sledeče opcije: SE - Preiskovanje (OPAC) CAT - Katalogizacija/Popis zaloge ACC - Vodenje normativnih datotek SER - Vodenje in urejanje periodičnega gradiva ACQ - Nabava gradiva (naročila, fondi, računi, dobavitelji) CI - Izposoja in datoteka izposojevalcev IUTIL - Pomožni programi USER - Določanje privilegijev uporabnikom sistema Preiskovanje (OPAC) Kar takoj je treba povedati, da so skoraj vse aplikacije narejene tako, da po vstopu v računalniški sistem neposredno skočimo v meni za preiskave po katalogu. Ta je seveda različno oblikovan, odvisno od aplikacije, podaja pa vsaj osnovno informacijo o katalogu, v katerem se nahajamo (če jih je več na voljo), kako izberemo drug katalog (tu se običajno pojavi spisek dosegljivih baz), kako menjamo jezik dialoga, kako se vrnemo v preiskovalni ali otvoritveni meni, katere iskalne liste so na razpolago. Ker je iskanje z določenimi omejitvami odprto za vse uporabnike, je mogoče neposredno preiskovati ali skočiti v otvoritveni meni, od tu pa so stvari že omejene glede na privilegije posameznega uporabnika. Preiskovati je mogoče na tri načine: 1 - z listanjem skozi iskalne liste 2 - s pomočjo pomožnih ekranskih obrazcev 3 - v ukaznem načinu Poleg tega lahko neposredno listamo po zapisih tako, da povemo številko zapisa, s katero bomo začeli ali si ogledamo le zalogo (monografskih in serijskih publikacij). Lahko pa z vpisom številke izposojevalca tudi neposredno pogledamo, kaj imamo izposojeno. 1. Listanjepo iskalnih listah: To je najenostavnejši način, ki ima seveda določene omejitve glede preiskovalnih (relacijskih in Boolovih) operatorjev. Običajno si izberemo listo, po kateri bomo pregledovali in iz nje izberemo iskalni element. ALEPH ima tri vrste list: normativna datoteka (authority file), datoteka besed (word file) in indeks (index file). Obenem sistem samostojno vodi poseben indeks, kjer so registrirane vse uporabljene številke zapisov. Zadnja ni dosegljiva za pregled, aktiviramo jo le v primeru, ko skočimo neposredno v zapis. Listanje poteka v obeh smereh, pred izbiro pa pri normativni datoteki lahko pogledamo še vse navzkrižne reference, biliotekarske opombe, veljavnost itd. Zapisi v normativni datoteki so razvrščeni najprej po pravilu, katerega smo določili kot sistem sortiranja za posamezno polje, ki pošilja svojo vsebino v to listo, znotraj te pa po pravilu razvrščanja, ki velja za celotno datoteko. Število normativnih datotek ni omejeno in isto polje lahko pošilja svojo vsebino v več normativnih datotek. Ni pa mogoče združiti več polj, ki naj tvorijo iskalni ključ v normativni datoteki. Ko izberemo določen iskalni element, sistem prikaže vse zadetke v kratkem zapisu (po 6 na zaslon), lahko pa izberemo drug tip izpisa. Vseh tipov je 99, seveda pa vsaka aplikacija omeji število ponujenih formatov. Sistem bo izpisoval po predpisanem vrstnem redu, ki smo ga določili pri gradnji baze. V primeru, da smo našli željen zapis, si lahko ogledamo, kakšna je zaloga (torej koliko je fizičnih kopij), ali so izposojene ali ne, kdo si jih je izposodil, kdaj in za koliko časa. Pri tem lahko vidimo zalogo za vse sodelujoče knjižnice skupaj ali pa za vsako posebej. V primeru, ko si želimo delo izposoditi, lahko željeni izvod rezerviramo (če je izposojen, nas bo sistem uvrstil na čakalno listo). Lahko tudi zahtevamo medbibliotečno izposojo ali fotokopijo. Sistem bo sam dodal podatke o knjižnici in uporabniku, ki zahteva izposojo ali kopiranje. Če smo na čakalni listi, pa nas bo sistem v trenutku, ko bo izvod vrnjen, pismeno obvestil, da nas rezervirani izvod čaka. Enako poteka iskanje po datoteki besed (iskanje po prostem tekstu), le da tu v verziji 2.4 še ni navzkrižnih referenc. Iskanje po besedah je izjemno hitro, kombiniramo pa lahko poljubno število besed. Besede so sortirane po pravilu, ki velja za določen jezik ali kombinacije jezikov. Preiskovanje po indeksih se razlikuje od ostalih d veh le v tem, da nam sistem neposredno prikaže zadetke v kratkem zapisu, listati pa začne pri prvem zapisu, ki ustreza preiskovalnemu izrazu. 2. Preiskovanje s pomočjo obrazcev je vmesna pot med ukaznim načinom in listanjem skozi posamezne indeksne datoteke. Sistem ponuja določeno število kombinacij (za vsako kombinacijo en obrazec), sami pa določimo Boolov operator med polji (IN, ALI, NE). Po takem iskanju nam sistem najprej kaže njegov potek in sestavi set zadetkov. Če želimo preiskavo še naprej ožiti (pri večjem številu zadetkov v prvem setu), lahko nadaljnje iskanje omejimo na že dobljeni set. Ko smo zadovoljni, zahtevamo, da nam sistem prikaže zadetke v setu. To prikazovanje poteka neposredno v formatu, ki ga aplikacija ponuja kot stalni format, lahko pa ga predhodno zamenjamo z drugim. 3. Preiskovanje v ukaznem načinu poteka tako, da v samem osnovnem meniju za preiskovanje vpišemo vse parametre preiskave. Tako oblikujemo set zadetkov, po katerem lahko naprej poizvedujemo. Pomembno pri tem načinu iskanje je, da ALEPH v celoti podpira nabor ukazov CCL (Common Command Language) po standardu ISO DIS 8777. S tem se ALEPH pridružuje vrsti programov, ki podpirajo isti preiskovalni jezik, kar je gotovo hvale vredno, saj je prehod iz enega sistema na drugi olajšan. Ukazni jezik CCL ima tako bogat nabor ukazov in dovolj preprosto sintakso, da praktično ne pozna omejitev. Preiskave, kot sem že omenil, je mogoče omejiti na določene baze ali pa celo na posebne dele posamezne baze. V ta namen v programu obstaja posebno polje BASE, ki nabere zapise pripadajočega podseta baze. Tako je mogoče preiskovati le po člankih, po člankih in raziskovalnih nalogah, po več bazah hkrati itd. V vseh teh primerih nam sistem v desnem zgornjem kotu zaslona zapiše, v kateri bazi se nahajamo. V osnovno stanje se vedno vrnemo z ukazom BASE brez dodanih parametrov. Katalogizacija/popis zaloge Meni za katalogizacijo nam nudi dva ločena sklopa funkcij: prve skrbijo za vnos, popravljanje, brisanje in kopiranje bibliografskih zapisov; druge so namenjene registriranju zaloge - fizičnih enot ali izvodov (holdings), ki pripadajo vsakemu bibliografskemu zapisu. Vnos in popravljanje zapisov lahko poteka na več načinov: - neformatirano, kar pomeni, da nam sistem odpre zaslon s praznimi vrsticami, v katere sekvenčno vpisujemo podatke po formuli: /Oznaka polja presledek vsebina polja/itd.; - formatirano, preko posebej oblikovanih ekranskih obrazcev (worksheets); podatke vpisujemo v prazne prostore (polja), sistem pa skrbi za kontrolo vsebine v poljih, kot smo to določili v definiciji baze; - s skokom v urejevalnik besedil, kar pomeni, da nam je na razpolago celoten nabor ukazov urejevalnika, sami pa moramo skrbeti za pravilnost vnosa, glede na logično strukturo naše baze; ta način je mogoče kombinirati še s posebno zaslonsko sliko, ki smo jo pripravili za urejevalnik in ki nas vodi od polja do polja: - s preslikavo obstoječega zapisa, ki nam služi kot predloga za nov zapis (predvsem koristno v primerih, ko se mnogo podatkov ponovi za večje število zapisov). Preslikave so mogoče med dvema LOKALNIMA ali pa GLOBALNIMA knjižnicama (če so povezane v mreži). V vseh teh primerih sistem po vnosu vseh podatkov za en zapis kreira tki. začasni zapis (draft record), ki ga nato lahko še dodelamo, šele ko zahtevamo, da ga sistem shrani, je zapis dejansko v bazi. Začasni zapis lahko dopolnjujemo tako, da neposredno preverjamo njegovo vsebino v normativnih datotekah in iz njih neposredno prenesemo pravilno obliko v samo polje. Če smo v neko polje vnesli npr.avtorja v obliki, na katero je v normativni datoteki narejena kazalka na izbrano (prefered) obliko, bo sistem sam popravil to polje, ko bo zapis shranil na disk. Pri popravljanju zapisov je dodana še možnost, da dva zapisa v bazi združimo v enega in dodamo popravke. Pri brisanju zapisov so ti le logično izbrisani (ni več kazalcev na njihovo lokacijo), fizično pa šele pri prvem arhiviranju (backup) ali kompaktiranju baze (kar je priporočljivo storiti vsakič, ko baza doseže velikost 20.000 blokov ali pa enkrat mesečno pri intenzivnem vnosu podatkov). Tako si tudi povrnemo izgubljene diskovne kapacitete, ki jih sicer izbrisani zapisi zasedajo. Številke izbrisanih zapisov pa ostanejo izkoriščene in nam niso več dosegljive. Katalogizacija je strogo kontroliran proces v smislu zaščite. Vsak katalogiza-tor ima posebno ime, temu pa je dodan še nivo zaščite. Tako lahko določimo, da nekdo opravi pred-katalogizacijo že v fazi naročanja, katalogizator, ki pa ima višji nivo, nato ta zapis dopolni. Ime in nivo katalogizatorja sta vsakič zapisana v glavi zapisa, kot tudi datum prvega kreiranja zapisa (ta se ne spreminja) ter datum vsakega popravljanja zapisa (vedno vidimo le zadnji datum). Zaščita torej deluje tako, da zapis lahko spreminja, brišeali popravlja le uporabnik z enakim ali višjim nivojem privilegijev od uporabnika, ki je kreiral originalni zapis. V glavi zapisa je tudi registrirana interna številka zapisa (ki jo vodi sistem avtonomno) in ime lokalne knjižnice (ta je lastnik zapisa). Popis zaloge poteka na nivoju sekcijske knjižnice (v najbolj preprostem primeru je ta istovetna z lokalno), za vsako fizično enoto pa na nivoju izvoda. Tako velja en bibliografski zapis za zaloge vseh sekcijskih knjižnic istega dokumenta in tudi za vse izvode tega dokumenta. Vsak izvod opišemo s številko bibliografskega zapisa, ki mu pripada, s kodo sekcijske knjižnice, kjer se fizično nahaja, kodo, ki določa politiko izposoje izvoda in podatkom o tem, ali naj sistem za registrirani izvod izračuna in natiska palično kodo ali ne. V primeru, da moramo zaradi poškodbe neko nalepko ponovno tiskati, lahko sami spremenimo status kode v zahtevanem polju in to nalepko ponovno izpišemo. Če nam sistem sam generira palične kode, bodo te vsebovale številko zapisa v bazi, kodo knjižnice, številko izvoda v popisu zaloge in naključno štirimestno številko, ki nastane na podlagi algoritma za izračunavanje simbologije Interleave 39. Če pa knjižnica že uporablja palične kode in jih želi obdržati, te pri registraciji zaloge s čitalnikom preprosto prenesemo v ustrezno polje. Kot sem že omenil, sistem podpira vsaj tri glavne simbologije in vse tiste, ki temeljijo na kontrolni številki (check digit). Naj še dodava, da pri zalogi popišemo izvode monografskih publikacij (v enem ali več zvezkih) in tudi vezane izvode periodike (npr. cel letnik). Za posamezne izvode periodičnega tiska pa poteka popis znotraj modula za vodenje periodičnega gradiva (kardex sistem). Normativne datoteke Normativne datoteke imajo v ALEPH-u zelo pomembno funkcijo, saj so dobro sestavljene normativne datoteke ključnega pomena za lažje preiskovanje in konsistentno katalogizacijo. Sistem dovoljuje vnaprejšnje nastavljanje normativnih datotek. Dovoljene so sledeče povezave: GLEJ (v obeh smereh); GLEJ TUDI; UPORABI RAJE; NE VELJA VEČ; ŠIRŠI POJEM; OŽJI POJEM. Jasno je, da so nekatere teh povezav mišljene za kazala v obliki tezavra, spet druge pa predvsem za tipske normativne datoteke. Vsak pojem v normativni datoteki je zapisan v svoji vrstici, na koncu pa mu je v oklepajih dodano število pripadajočih zapisov. Če ima referenco, je to označeno z zvezdico, če pa gre za referenco o preferenčni obliki, je ta zapisana pod pojmom in zamaknjena v desno. Ker po popravljanju zapisov lahko ostanejo v normativni datoteki pojmi, ki nimajo več pripadajočih zapisov in jih sistem ne izbriše avtomatično, je potrebno v določenih časovnih presledkih očistiti te datoteke vseh neveljavnih pojmov. Tako tudi znova pridobimo diskovni prostor, saj se normativna datoteka odgovarjajoče zmanjša. Vsak popravek, ki ga naredimo v normativni datoteki za določen pojem, se avtomatsko izvede tudi v vseh pripadajočih zapisih. To je sicer zelo močna, a tudi dvorezna funkcija, saj če nismo previdni, lahko neželjene dosežemo učinke. Na koncu naj tudi povem, da ALEPH trenutno interno še ne podpira UNIM-ARC/Authorities standarda, čeprav je mogoče pričakovati, da bo z naraščanjem števila uporabnikov (predvsem visokošolskihh knjižnic) to vključeno v naslednje verzije programa. Urejanje periodičnega gradiva S tem modulom vodimo dnevno evidenco periodike, kontrolo manjkajočih izvodov, avtomatično predvidevamo prihod naslednjega izvoda, generira-mo zahtevke za manjkajoče izvode, urejamo kroženje dospelega gradiva tistim uporabnikom, ki prejemajo določene naslove, še preden gredo v redno postavitev in izposojo, in vodimo pripravo in kontrolo vezave. Evidentiranje periodike zahteva, da naslov najprej popišemo v katalogu (zanj kreiramo bibliografski zapis). Temu nato sistem pripne zapis o zalogi (vezani letniki se preselijo iz kardexa v zalogo = holdings) ter kompleten zapis iz kardexa, v obliki nam dobro znanega obrazca za dnevno vodenje prispelih izvodov. Tu sistem ponuja nešteto možnosti, najpomebnejše pa je, da lahko za vsak naslov pred vidimo dinamiko prihajanja in tako avtomatsko skrbimo za tekoče obveščanje dobaviteljev o izvodih, ki jih nismo prejeli do roka. Vsakemu izvodu periodičnega naslova določimo politiko izposoje (npr. prvi izvod lahko obiskovalec uporablja le v čitalnici, drugi izvod bo postavljen v posebni zbirki, tretji bo dan v izposojo, itd). Če želi knjižnica omogočiti kroženje periodičnega gradiva med določenimi uporabniki, še preden bo to gradivo dano v izposojo, sestavimo posebne liste kroženja (routing lists), ki imajo več nivojev kontrole in privilegijev. V tem primeru izvod v kroženju ni avtomatsko registriran v izposoji, temveč moramo to storiti eksplicitno ali pa ves postopek poteka mimo same izposoje. Enako kot pri vodenju zaloge monografskih publikacij tudi pri periodiki lahko vse opravimo s palično kodo, tako da jih tiskamo s pomočjo programa ali pa uporabimo tiste, ki so že odtisnjene na samih izvodih (npr. mnogo periodičnih publikacij že ima natisnjeno palično kodo, največkrat tipa UPČ). Če uporabljamo palično kodo, poteka vsakodnevna registracija izredno hitro, saj nam ni potrebno klicati ustrezne kartice za posamezen naslov, temveč zgolj s čitalnikom preberemo kodo, sistem pa iz nje dobi vse podatke, ki so potrebni. Če imamo vključeno avtomatsko detekcijo prihodnjega izvoda, bo sistem tudi vpisal naslednji pričakovani izvod in ga ustrezno označil, da bodo uporabniki OP AC lahko videli, kaj imamo in kaj pričakujemo. Vsi postopki evidence se dogajajo v realnem času in so takoj vidni v javnem katalogu. Enako fleksibilno poteka tudi priprava gradiva za vezavo. Ločeno lahko vodimo poljubno število knjigoveznic in vsakemu naslovu lahko pripenjamo razne knjigoveze. Za vezavo lahko določimo tipe vezav, opišemo barve, kvaliteto itd. Vezava sicer ni avtomatsko povezana z izposojo, ker to tudi ni potrebno, saj je bibliografskemu zapisu za naslov, ki je dejansko poslan v knjigoveznico, dodana posebna oznaka (BD = Binding), ki je vidna v javnem katalogu skupaj s predvidenim datumom vrnitve gradiva na police. Nabava gradiva Ta modul je zadnji zapustil laboratorije snovalcev programa in je zato morda tudi najbolj kompleten. Vsebuje štiri podsisteme: 1 - Datoteka naročil 2 - Datoteka finančnih sredstev (fondov) 3 - Datoteka dobaviteljev 4 - Datoteka računov Vse štiri datoteke so medsebojno povezane, hkrati pa so vezane še na sam bibliografski zapis, ki je osnova za naročilo. Torej poteka tki. pred-katalogi-zacija že v sami fazi naročanja. Osnova je datoteka naročil, ker se nanjo pripenjajo ostale, preko nje pa na katalog. Tako je knjižničarju omogočen tudi retrospektivni pregled o načinu pridobitve neke knjige ali naslova periodike, o viru sredstev, dobaviteljih in računih, v katere je bila enota vključena. Princip organizacije in tehnologije popisa naročil je sledeč: najprej nastavimo datoteke dobaviteljev in finančnih sredstev, iz katerih bomo plačevali naročila. Nato izvršimo pred-katalogiza-cijo naročila, ki je tako vnešeno tudi v javni katalog in ga uporabnik lahko zasledi, seveda z označbo "V NAROČILU". To označbo dinamično menjamo z menjavo faz obdelave. Vsako naročilo ima poleg številke zapisa še številko naročila, ki jo lahko vodimo sami ali pa zahtevamo od sistema, da jo enotno vodi za nas. Pri naročilu, ki je raztegnjeno na tri ekranske slike, določimo vse mogoče parametre, predviden datum izpolnitve naročila (po tem datumu sistem sam izpiše opomin dobavitelju), tip pošiljanja (poštno, letalsko, s kurirjem), časovne tolerance izpolnitve naročila, finančna sredstva, iz katerih bomo plačali (vsako naročila lahko proporcionalno razdelimo na tri različne fonde), kdo je naročnik, komu je namenjeno, predvidena cena (za izračuna vo predvidenih potrebnih sredstev), dejanska cena (za izračun dejansko porabljenih sredstev), ali je naročilo abonma ali enkratno, število naročenih izvodov (kopij), tip gradiva, kodo dobavitelja (preko nje se avtomatsko izpolnijo ostale rubrike dobavitelja), pogoji plačila, pošiljanja, popusti itd. Ko naročilo prispe, mu dodamo še številko računa, dejansko ceno, ceno poštnine in datum, ko je naročilo prispelo. Na podlagi teh podatkov se oblikuje datoteka računov, ki so odprti ali pa jih zapremo, ko smo registrirali vse izvode na enem računu. Izpolnjena naročila lahko kasneje (npr. enkrat mesečno) odložimo v historični arhiv naročil, da ne obremenjujemo diskovnih kapacitet s starimi podatki. Te podatke pa je vedno mogoče priklicati in po njih iskati. V datoteki finančnih sredstev registriramo vse razpoložljive fonde. Pri tem za vsakega vnesemo podatke o njegovem imenu, lokaciji, času veljavnosti fonda (če gre za sredstva nekega projekta z omejenim trajanjem), informacije o predvidenih in dejansko alociranih sredstvih ali popravku le teh itd. Sistem / nam na podlagi teh informacij sproti dopolnjuje sliko stanja v fondu, preostanku sredstev in v primeru prekoračitve opozori, da smo ta fond že izčrpali. Datoteka dobaviteljev nam omogoča tekoče vodenje registra dobaviteljev, pri katerih gradivo naročamo. Vsakega dobavitelja natančno popišemo (glavni naslov, naslov za terjatve, naslov za naročila, kontaktna oseba), pogoji dobavitelja pri ceni, pogoji pošiljanja gradiva, itd. Vsak dobavitelj ima svoj zapis in mu moramo določiti kodo. Z vpisom te kode v obrazec naročila sistem sam po prej predvidenem formatu izpiše ostale podatke, sestavi standardno pismo za naročilo, za terjatev, za dogovore, itd. Če določimo jezik komuniciranja z dobaviteljem, bo sistem sam poskrbel, da bo izbral ustrezno jezikovno verzijo pisemskih formatov za različne vrste korespondence. Ker pri naročanju gradiva naletimo na cene v različnih valutah, nastavimo v sistemu tabelo valut in konverzijo v željeno valuto, v kateri vodimo naše fonde. Sistem bo sprejel citirano ceno v originalni valuti, izpisal še konvertirano ceno in odštel le to od citiranih fondov za posamezno naročilo, še to: vsak fond lahko vodimo v različni valuti, za navzkrižne transakcije in preračunavanja pa bo poskrbel program sam. Izposoja Modul izposoje je organiziran okrog treh funkcij: - datoteka izposojenega gradiva - datoteka izposojevalcev - politika izposoje knjižnice (del definicije baze) Izposoja je seveda tesno povezana s preiskovanjem po javnem katalogu. Uporabnik kataloga identificira željeni dokument, preveri na ekranu, če je ta dosegljiv za izposojo ali ne, če je že izposojen ali ne. V primeru izposojenega gradiva lahko uporabnik sebe uvrsti na listo rezervacij, če pa je gradivo v knjižnici, ga lahko označi, da si ga bo izposodil. Seveda so vse te funkcije podvržene kriterijem izposoje vsake knjižnice posebej in privilegijem, ki jih knjižnica vsakemu uporabniku določi. V bazi uporabnikov ali izposojevalcev registriramo vse uporabnike knjižnice (vnaprej ali sproti). S tem jim nastavimo konto in lahko izdamo izkaznico, ki je lahko navadna, s palično kodo (zelo pogosto) ali pa z magnetnim zapisom. Na kartici so zapisani vsi parametri in privilegiji izposojevalca ter glavni podatki. Tu je nešteto možnih variant, saj uporabnike lahko razdelimo v različne razrede po več kriterijih, glede na te kriterije pa določimo privilegije. Omejimo lahko število gradiva, ki si ga nekdo lahko izposodi, onemogočimo izposojo, če nam uporabnik dolguje zamudnino ali če ni vrnil gradiva do določenega roka (sproti pa je mogoče podaljšati ali razširiti te privilegije), sistem nas opozori na rezervirano gradivo (pred tem je uporabnik že prejel obvestilo, da je gradivo na razpolago in do kdaj ga bo čakalo, preden ga vrnemo na police). Drug pomemben del izposoje je register izposojenega gradiva. Ta je voden preko glavnega kataloga (osnovne podatke pobira iz bibliografskega opisa) in vsebuje le sistemske številke fizičnih enot in določila izposoje ter informacijo o rezervacijah. Tako lahko preko zapisa pridemo do informacij o uporabniku ali pa preko uporabnika do vseh izposojenih enot na njegovem kontu. Kriterije in politiko izposoje določimo že pri nastavitvi osnovne baze (vse to je urejeno preko posebnih tabel, v tem primeru TABALEPH), kjer najprej določimo, katere izvode bomo sploh dajali v izposojo, kakšni bodo roki izposoje, kakšni so tipi uporabnikov, kakšne privilegije lahko uporabniki imajo, kolikšno je minimalno ali maksimalno število gradiva, ki si ga uporabnik lahko izposodi ob enem obisku, kako se bo izračunavala in kolikšna bo izposojevalnina ali zamudnina, kakšne so kazni za uporabnike, ki ne vračajo v roku itd. Podobno kot pri naročilih, je tudi tu mogoče zgodovino bralčevih kontov shraniti na rezervne spominske lokacije, da si prihranimo diskovni prostor. Podatke iz njih pa je vedno mogoče priklicati in po njih poizvedovati. Na koncu je potrebno še povedati, da običajno izposoja poteka preko osebnih računalnikov, ki so povezani s centralnim sistemom. Vse transakcije potekajo v realnem času, obenem pa so vse bistvene datoteke (konti bralcev, datoteka izposojenega gradiva, privilegiji) tudi na osebnem računalniku. V primeru, da pride do okvare na centralnem sistemu ali je ta nedosegljiv, lahko izposojo še naprej avtomatsko vodimo na PC. Takoj, ko je centralni sistem spet vzpostavljen, preslikamo transakcije, ki so se izvršile v času izpada sistema (down-time), na centralni pomnilnik in nadaljujemo z delom v terminalskem načinu. Nova verzija programa ALEPH predvideva celo samodejno kontrolo povezave in preklope ter avtomatsko presnemavanje ob ponovni vključitvi. Tako je vsaka transakcija najprej registrirana v centralnem sistemu in še enkrat na lokalnem nivoju v PC-ju, da ima izposoja vedno na voljo tekoče stanje. Določanje zaščite in privilegijev porabnikom sistema Zaščita v programu ALEPH deluje na dveh nivojih. Prvi nivo zagotavlja že operacijski sistem (npr.VMS) s sistemom vstopnih kod. Tako lahko že pri instalaciji programa določimo, da uporabniki z določeno vstopno kodö skočijo neposredno v OPAC in so jim s tem odprte le funkcije iskanja, pregledovanja zaloge, rezervacije in naročila kopij. Drugi nivo pa kontroliramo znotraj programa ALEPH. Uporabniki programa so interno razdeljeni v dve kategoriji: najvišjo, to je upravnik ali vzdrževalec aplikacije, ki ima najvišjo prioriteto in vse privilegije; ter interni uporabniki aplikacije, ki so ustrezno razdeljeni. Ti lahko sami dodeljujejo privilegije drugim uporabnikom, a le enake ali nižje tistim, ki jih imajo sami. Vsakega uporabnika ALEPH registrira s štirimi podatki: - ime uporabnika - vstopna koda - nivo dostopa - moduli in funkcije, ki so odprte za uporabnika Pri vstopu v ALEPH mora uporabnik, če želi poklicati vse ostale module razen OPAC-a, navesti ime in kodo. S tem se mu ustrezno z njegovimi privilegiji odpre dostop do ostalih delov programa. S tem je mogoče knjižničarju na izposoji dovoliti, da vodi registracijo izposoje, ne more pa odpreti nov konto bralca, kar je dovoljeno le vodji izposoje. Podobno velja za katalogizacijo, kjer katalogizator izvrši bibliografski del, drug delavec knjižnice pa vnese podatke o zalogi, ne more pa spreminjati ali popravljati zapisa. Istočasno je na nivoju vzdrževalca aplikacije mogoče omejiti dostope v razne dele aplikacije glede na priključeni terminal, kar je npr.koristno, ko omejimo terminale na izposoji, da vstopijo neposredno v meni za izposojo in ne morejo prestopati v vzdrževanje normativnih datotek ali katalogizacijo. Na ta način je pogojeno varno delovanje aplikacije in onemogočeno namerno ali nenamerno poškodovanje podatkov kateregakoli dela sistema. Pomožni programi S skokom v meni pomožnih programov lahko uporabljamo niz servisnih funkcij, vse pa delujejo nad izbrano LOKALNO knjižnico. Gre za sklope postopkov nad deli aplikacije, ki jih lahko razdelimo v: - postopke za nabiranje zapisov, izpisovanje in sortiranje - postopke za urejanje iskalnih list - postopke za paketno spreminjanje podatkov v pomožnih bazah - statistični pregledi ALEPH vse vrste izpisov pripravi tako, da jih kreira in izpiše v ciljne datoteke, te pa kasneje lahko izpišemo skozi program operacijskega sistema, ki krmili razne izhodne enote. Vse datoteke so tipa ASCII in jih pred končnim izpisom lahko še dodatno obdelamo z urejevalniki besedil. Vsebujejo pa vse potrebne kontrolne sekvence, s katerimi krmilimo izhodne enote (tiskalnik, COM generator za fišete, tiskalnik palične kode, itd). Postopki, ki paketno spreminjajo podatke v določenih podsistemih aplikacije ali urejajo iskalne liste, pa delujejo v realnem času (rezultat procesa je takoj viden v bazi), čeprav je mogoče seveda določiti čas, ko naj se paketna obdelava izvrši. Nekateri postopki začasno preprečijo ostalim uporabnikom uporabo aplikacije (zaklenejo dostop v podatke ali module), zato takšne postopke sprožimo vedno v dogovoru z ostalimi uporabniki (npr. izven urnika delovanja knjižnice ali ponoči). Vsi ti postopki predvidevajo pripravljalno fazo, ko željene zapise in pripadajoče podatke iz podsistemov najprej naberemo. To lahko storimo že pri poizvedbi, ko zadetke shranimo za poznejše tiskanje ali pa s pomočjo samega servisnega programa za nabiranje zapisov. Program zgradi začasno datoteko, ki vključuje le sistemske številke izbranih zapisov, ob kreiranju izpisa ali drugih postopkov pa jo uporabi kot referenčni indeks. Poleg posebnih izpisov, ki jih pripravimo za poročila o izposoji ali nabavi, izpis raznih obvestil, itd., imamo na razpolago še štiri tipe izpisov bibliografskih podatkov: bibliografske liste, kataložne kartice z vsemi dodatnimi vpisi, dvovrstične kratke izpise in kazala. Naj takoj povem, da so izpisi najšibkejši del programa ALEPH in snovalci programa prejemajo mnogo zahtev in sugestij za izboljšanje teh funkcij. Zaželjeno bi bilo tudi, da bi bil del posebnih servisnih programov, ki so zunaj dosega pretežnega dela uporabnikov aplikacije, vključen v samo osnovno aplikacijo, s posebno zaščito pa bi ga bilo mogoče odpreti le pooblaščenemu vzdrževalcu aplikacije. S pomožnimi programi izpisujemo tudi vse tipe nalepk, palične kode, gene-riramo COM fišete. Če imamo laserski tiskalnik, je posebej zanimiva možnost uporabe mikro oblikovnega jezika PostScript, ki ga ALEPH popolnoma podpira. Moduli za kreiranje in vzdrževanje aplikacije V prejšnjih poglavjih sva opisala tisti del ALEPHA, ki je viden in dosegljiv večini uporabnikov (čeprav obiskovalci, ki pregledujejo katalog, običajno nimajo privilegijev za vstopanje v ostale module), torej knjižničnemu osebju. Ta del ALEPH-a imenujemo aplikacijski del. , Postavljanje vseh parametrov aplikacije in njeno vzdrževanje na nivoju GLOBALNE ali MREŽE GLOBALNIH knjižnic pa poteka s pomočjo dveh servisnih programov, ki sta glede na zaščito dostopna le omejenemu številu oseb (običajno vzdrževalcu aplikacije) in sta zunaj aplikacijskega dela. To sta sta UTIL in MUTIL, hierarhično pa je prvi podrejen drugemu. UTIL je modul, ki vsebuje niz servisnih postopkov, s katerimi delujemo nad vsemi LOKALNIMI bazami in s tem tudi nad vsemi SEKCIJSKIMI. V bistvu UTIL omogoča definiranje parametrov ene GLOBALNE knjižnice tako, da lahko načrtujemo in spreminjamo vsako LOKALNO bazo posebej. Gotovo je najpomebnejši del definicija baze LOKALNE knjižnice, ki jo sestavimo v posebni tabeli, imenovani TABALEPH. Pravzaprav vse prilagajanje programa poteka skozi posebne tabele, ki so tipa ASCII in za spreminjanje podatkov v njih uporabljamo urejevalnik besedil operacijskega sistema (npr. ED v VMS). To sicer omogoča določeno fleksibilnost, hkrati pa, kot je to bolj natančno opisano v drugem delu članka, narekuje tudi neprijetne omejitve, ki lahko močno oklestijo to isto fleksibilnost in odprtost programa. TABALEPH vsebuje več podtabel (vse nosijo identifikacijsko številko), v katerih definiramo naslednje segmente aplikacije: 01 - Ime in koda LOKALNE knjižnice - pod tabela "L" - Definicija tabele znakov (pisav) - podtabela "B" - SEKCIJSKE knjižnice - podtabela "S" - Struktura zapisa/baze po poljih - podtabela "D” - Iskalne liste za hitre dostope pri iskanju - podtabela "H" 02 - Lista besed, ki naj jih sistem ne upošteva pri sestavi iskalnih ključev (ACC stop-word file) 03 - Lista besed, ki naj jih sistem ne upošteva pri oblikovanju ključev za iskanje po prostem tekstu (WORD stop-word table) 04 - Tabela za konverzijo MARC-formatov v ALEPH format 06 - Tabela prevodov vseh oznak iz podtabele 1 v vse jezike, ki jih želimo podpirati v aplikaciji 15 - Kode statusa za izvode/fizične enote 16 - Tabela za avtomatsko preračunavanje datumov vračanja gradiva 17 - Omejitev števila enot, ki si jih lahko obiskovalec izposodi glede na tip/kategorijo 25 - Prevajalna tabela oznak polj za tiskanje kataložnih kartic Na hitro si poglejmo, kaj vse določimo pri definiciji polj za zapise v bazi. Ker je vse urejeno v obliki tabel, je pomembno, v kateri koloni se nahaja določen podatek. Sistem bere te tabele sekvenčno in izvaja kontrolo glede na določila v njih. Za vsako polje povemo njegovo oznako (tag), ki je lahko številčna, črkovna ali mešana, nato določimo, v katerih iskalnih listah bo zastopana (če sploh bo), določimo podpolja in za vsako podpolje posebej lahko povemo, v katero iskalno listo bo uvrščeno, določimo, če bo polje indeksirano tudi po besedah (WORD lista, ki je ena sama, logično pa jo lahko razdelimo v več ločenih), določimo, če bo to polje tvorilo vsebino kratkega izpisa po preiskavi, določimo ime zaslona, ki bo nudil on-line pomoč za opis uporabe tega polja, določimo tip sortiranja podatka v polju, določimo, če bo polje vidno vsem ali le tistim z določeno kodo privilegijev, ali je polje obvezno ali ne, lahko omejimo število ponovitev polja, definiramo proceduro preverjanja pravil- nos ti podatka v polju (npr. za ISBN ali ISSN lahko zahtevamo, da se ob vnosu izračuna po algoritmu točnost teh podatkov). Za iskalne liste določimo v posebni pod tabeli sledeče parametre: ime iskalne liste, tip iskalne liste (ACC - normativna; IND - index; VV - lista besed), vrstni red polj za sortiranje zapisov, ki pripadajo vsakemu iskalnemu ključu; določimo, ali naj se ažuriranje iskalnih list izvaja v realnem času ali v paketnem načinu; tip sortiranja iskalnih ključev v posamezni listi; kodo za omejitev prikaza določene liste uporabnikom s posebnimi privilegiji (npr. imamo le eno javno listo za iskanje vseh tipov avtorstva, to pa sestavljajo ločene liste, ki so dosegljive le knjižničnemu osebju, ki jih vzdržuje). Polja v obeh listah nato še podamo v prevajalni tabeli za vse jezike komuniciranja z uporabnikom. Prevodi so dvojni: prevod kode (če to želimo) in opisnega imena polja. Tipi sortiranja podatkov v iskalnih listah so številni, lahko pa razvijemo še dodatne. Program ponuja že izdelana posebna določila za sortiranje, kjer upoštevamo razliko med velikimi in malimi črkami, sortiranje za signature tipa Kongresne knjižnice (Cutterjev sistem), sortiranje po UDK, itd. Ko končamo definiranje TABALEPH tabel, lahko preizkusimo pravilnost in konsistentnost našega dela s posebnim pomožnim programom, ki nam javi in označi vse logične napake ter jih izpiše na posebno datoteko. Program UTIL pa vsebuje še ogromno drugih funkcij, ki jih pri vzdrževanju aplikacije močno potrebujemo. Gre za sledeče sklope: - programi za prevajanje in prilagajanjeekranskih slik in menijev, diagnostike in oblike tiskanih sporočil - programi za nadziranje postopkov nad bazo - programi za neposredno reševanje logičnih napak (debugging) - postopki za definicijo baze in pomožnih tabel (že opisano) - postopki za čiščenje in ponovno kreiranje iskalnih list - postopki za kreiranje transparentne tabele za knjižnice v mreži; - postopki za kontrolo preslikav v bazo in iz baze M UTI L pa je program, ki ima hierarhično naj višji nivo in ga, razen na začetku, le redko uporabljamo. Z njim določimo, katere GLOBALNE knjižnice se povezujejo v vozlišča in naprej vozlišča v mrežo. Določimo tudi globalne parametre za terminale in izhodne enote (tiskalnike itd), konfigu- riramo vsa vstopna vrata v našo bazo za zunanje uporabnike ter postavljamo parametre za arhiviranje in restavriranje vseh baz na enem sistemu. Delo s programom MUT1L zahteva dobro poznavanje funkcij ALEPH-a in je običajno v domeni sistemskega knjižničarja (vzdrževalca aplikacije). Poleg vseh navedenih programov je treba omeniti še dva, ki sta seveda ključna: BACKUP (arhiviranje) in RESTORE (ponovna vzpostavitev) baze in aplikacije. Oba programa sta menijsko urejena in popolnoma interaktivna. Arhiviranje lahko poženemo za vse baze na sistemu ali pa le za izbrane. Delo lahko poteka interaktivno ali paketno, pri čemer določimo čas, ko naj se arhiviranje izvrši. Na razpolago sta dva tipa arhiviranja: dnevni (ki ne ovira dela drugih uporabnikov) in tedenski (ki zaklene dostop do baze). Dnevno arhiviranje vodi kontrolo ciklov, ki jih je sedem (vsak dan pomeni en cikel), tedensko arhiviranje pa lahko organiziramo v štiri cikle ali pa po principu ded-oče-sin. II. ALEPH In aplikacija : moč in nemoč 1 V tem delu članka bi rad prikazal nekaj problemov, ki se jih uporabnik programa, kot je ALEPH, zave šele, ko načrtuje aplikacijo. Kot pri vseh tovrstnih proizvodih, priročniki prikazujejo precej bolj rožnato sliko, šele neposredno delo in snovanje posameznih rešitev pa pokaže vse funkcionalne plati nekega programa. Pri programu ALEPH (kar velja za vse verzije, ki so trenutno v rabi, od 2.3 do 3.1) ni nič drugače. Prva pomanjkljivost je precej neurejen priročnik, ki ne nudi dovolj ilustracij in primerov, kako uporabiti razne ukaze. Posebno moti, ker manjkajo opisi nekaterih funkcij v modulu UT1L, ki sicer še ne delujejo v celoti, v samem meniju pa se že pojavljajo. V primeru knjižnic, kot npr. pri nas, ko je določen nacionalni format, gotovo lahko štejemo za pomanjkljivost pri ALEPH-u to, da ne podpira v celoti ISO 2709, torej ne omogoča manipulacij vseh podatkovnih struktur. Zdi se mi, da bi vsak program za integrirano avtomatizacijo knjižnic, ki danes kandidira na tržišču, moral podpirati generični ISO 2709, kar pomeni, da bi različni moduli programa, ki delujejo nad podatki, morali omogočati sledeče podatkovne kombinacije: - neponovljivo polje brez pod polj - ponovljivo polje brez podpolj - neponovljivo polje s podpolji 'Tekst tega dela članka izraža zgolj mnenje enega od obeh avtorjev (M. Muska). - neponovljivo polje s ponovljivimi podpolji - ponovljivo polje z neponovljivimi podpolji - ponovljivo polje s ponovljivimi podpolji, vključno z indikatorji ali brez njih v vseh variantah. ALEPH tu naleti na težave že v konceptualnem smislu: TABALEPH in njegova podtabela 1-D, kjer definiramo strukturo zapisa, ne omogoča določanja več kot štirih pod-polj na polje. Morda je res, da se to da rešiti s kombinacijo večih polj in morda je tudi res, da mnoga polja niso tako kompleksna, da bi rabili več podelemen-tov, vendar to ne opravičuje odločitve, da tak integriran program danes ne daje vsaj možnosti, da sledimo predpisani strukturi nekega nacionalnega standarda, kot npr. UNIM ARC (ki je brez dvoma najbolj razširjen nacionalni format v Evropi). Omenil sem že tudi, da je ALEPH najšibkejši pri določanju izpisnih formatov. Potrebno je razumeti, da je mnogo standardiziranih izpisnih formatov že določenih, npr. pisma, opomini, dopisi, naročila in da njihovo obliko in vsebino brez težav spremenimo. Težje je pri bibliografskih izpisih, ker jezik izpisnih formatov ne ponuja dovolj širokega izbora oblikovalnih ukazov in kretnic. Tako se zdi, da avtorji programa (tako sem tudi razumel pogovor z i njimi) poudarjajo predvsem idejo brezpapirne knjižnice, kjer vsa komunikacija in iskanje potekata on-line preko zaslonov. Res je, da je program tudi zasnovan v to smer, vendar ne verjamem, da si vse knjižnice tako zlahka privoščijo retrokonverzijo bogatih listovnih katalogov, brez te pa avtomatizirane izposoje ne more biti. Precej nerodna je tudi rešitev, da se program UTIL nahaja zunaj osnovnega aplikacijskega dela, kajti v razmerah, ko sistemski knjižničar, ki načrtuje aplikacijo in jo vzdržuje, nima na voljo d veh terminalov ali možnosti uporabe X/Windows, porabi zelo veliko časa, da preskakuje iz enega modula v drugi, vsakič seveda preko zaščite samega operacijskega sistema. Za ilustracijo, kaj to pomeni, le en primer: ko sem pripravljal izpisne formate in jih popravljal, sem moral vsakič izstopiti iz modula UTIL (ki je omejen za uporabnike s posebno vstopno kodo), naložiti aplikacijski del ALEPH-a, preizkusiti format in če ni bilo vse v redu, ponovno zapustiti aplikacijski del in se preseliti v UTIL. Takšna nerodnost je nepotrebna, saj bi s sistemom posebne zaščite bilo mogoče vključiti dostop v UTIL znotraj aplikacijskega dela in takoj preverjati rezultat dela ali pa omogočiti za nekatere funkcije modula UTIL, da jih testiramo neposredno na podatkih v bazi. Gotovo je velika moč programa v njegovi fleksibilnosti glede mešanja raznih naborov znakov, popolna odprtost glede prilagajanja aplikacije in prevajanja v razne jezike, ki lahko vsi obstajajo drug ob drugem znotraj ene aplikacije. Tudi rešitev povezovanja knjižnic (GLOBALNIH) v vozlišča in le teh v mrežo je lepo narejena. Mnogi zgodnji uporabniki tega programa so se že začeli povezovati (že omenjene knjižnice rimskega kroga, dalje vse univerzitetne knjižnice v Izraelu, ki so se pretežno avtomatizirale s pomočjo tega programa). Nadaljnja dobra karakteristika je, da je program relativno enostaven za uporabo in, če knjižnica tako koncipira svojo aplikacijo, popolnoma me-nijsko urejen, z izdatno on-line pomočjo. Najbolj privlačno je to, da vsi moduli delujejo v soglasju, da so dejansko narejeni po predstavah knjižničarjev (vsebujejo vse njihove bistvene zahteve) in dejstvo ostaja, da ALEPH izredno olajša delo knjižnicam, ki so izpeljale avtomatizacijo vseh opravil. Široka podpora raznim tipom izhodnih medijev in podpora standardnim simbologijam paličnih kod še povečuje atraktivnost avtomatizacije izposoje in naročil. Na pilotskem primeru, ki sem ga izdelal za potrebe testiranja, sem odpravil skoraj vsa podvajanja podatkov, vsa kontrola pa je potekala skoraj izključno preko palične kode in končnih izpisov za razne periferne kataloge. Tako smo že v fazi nabave vsakemu naročilu določili palično kodo (ki je kontrolirano število). Sprejem naročila, izračun elementov, odštevanje od fondov in evidenco smo opravili s preprostim enkratnim skeniranjem te kode. Sistem je nato pri popisu zaloge dotiskal preostale nalepke s palično kodo (za vsak izvod) in nalepke s kratkimi bibliografskimi podatki za natančno identifikacijo, tako da se je izredno skrajšal čas bibliografsko/tehnične obdelave knjige od njenega prihoda do pojavljanja na policah. Ker smo sproti dinamično spreminjali status obdelane enote in je ta bil viden v zapisu pri preiskavi, je vsak uporabnik (pa tudi vodilno osebje knjižnice) vedel, kdaj lahko pričakuje željeno knjigo. Tako ni bilo redko, da so se pojavljale rezervacije že v fazi naročanja, kar je bilo pričakovano glede na visoko zahtevnost uporabnikov knjižnice. Kljub vsem omenjenim pomanjkljivostim moram povedati, da je ALEPH primeren program za vse tiste knjižnice, ki žele integrirano rešiti problem avtomatizacije obdelave in odpreti svoje fonde v interaktivnem načinu, pri tem pa jim ni prioritetno, da struktura njihovih podatkov 100% povzema nacionalni standard, saj je mogoče koncipirati bazo tako, da zapise lahko vedno "izvozimo" v dovolj ortodoksen ISO zapis. Knjižnice, ki čutijo težišče svojega dela v izposoji in kontroli nabave in ki bi se želele povezati s sorodno orientiranimi knjižnicami v večji transparentni sistem, ki omogoča tudi brezpapimo medbibliotečno izposojo, bodo našle večino rešitev za svoje zahteve v tem programu. Seveda pa je treba tudi poudariti, da ima program zelo dinamičen razvoj in vsako leto izide vsaj ena manjša verzija, na dve leti pa tudi večja, vsaka pa vključuje vse več zahtevanih elementov, ki jih uporabniki organizirano posredujejo avtorjem programa preko združenja uporabnikov (user group). Dodatne informacije Cena programa ALEPH za naše tržišče ni znana, saj trenutno ni nobenega zastopnika. Tako se lahko ozremo le na cene v sosednji Italiji, kjer je uradni zastopnik družba ATLANTIS (naslov naveden v zaglavju pri prvem avtorju). Končna cena je odvisna od velikosti pred videne baze, števila priključenih terminalov in podobno. Tako imenovana neomejena verzija se vrti okrog 70.000 USD. Uporabnikov programa ALEPH je v svetu že kar nekaj, največ seveda v Izraelu (kjer ima praktično absolutni delež med visokošolskimi knjižnicami) in Italiji (glej natančnejši popis na koncu). Nam najbližja instalacija, ki sedaj že obratuje s polno paro, je Univerza v Vidmu (Udine). Uporabniki ALEPH-a so povezani v konzorcij (Consortiumof ALEPH Users) in koordinirajo prioritetnost svojih zahtev pri vključevanju novih funkcij v prihodnje verzije programa. Konzorcij se sestaja enkrat letno, vsakič pa je gostitelj druga knjižnica (prihodnje leto bo srečanje verjetno v Italiji). Spisek važnejših uporabnikov programa ALEPH (po državah): Danska(7): DTB - Narodna Tehniška Knjižnica, Kopenhagen; Niels Bohr Institut, Kopengahen; Centralna knj. za agronomijo in veterino; Centralna medicinska knj. Italija(13): Knjižnica univ. v Kalabriji, Cosenza; Vzajemni katalog Univerznih knjižnic, Genova; Knjižnica visoke šole v Pisi; Univerza v Vidmu; Teološka fakulteta v Palermu; ISMES, Bergamo; Knjižnice rimskega kroga: Pontifikal-na knjižnica San Anselmo, Pontifikalna knjižnica Antoniana; Salezijanska knjižnica, itd. Izrael(36): Univerzitetna knjižnica v Haifi; B.G.Segal Law Library Centre; Bloomfield Library for Humanities & Social Sciences; Graduate School of Library and Archive Sciences; Hebrew Union College Library; Index of Jewish Art; Institute of Archeology; Knesset Library (parlamentarna knjižnica); Jewish National and Univ. Library; Library of Supreme Court of Israel; Central Library for the Blind; Bar Ilan Univ. Library (vse v Jeruzalemu); Tel-Aviv University Library, Tel Aviv; Madžarska(l): Centralna knj. Tehniške univerze, Budimpešta; Španija(2): Informacijski center (vključuje 84 knjižnic); Švica(2): CERN (Evropski center za nuklearne raziskave), Ženeva; SANDOZ Pharma AG; ZDA(2): Židovska teološka fakulteta, New York; Bibliografija Naštete reference vključujejo tudi zadetke iz poizvedbe v bazi LISA, ki jo je za potrebe tega članka opravil g.Dare Balažič iz NUK v Ljubljani in se mu na tem mestu najlepše zahvaljujem. 1. Panzer,C.: The development of multiscriptual multilingual library management system for the Israel Universitiy Libraries Network. // Burton,B.; Wong, N.(eds): The use of new information technologies in developing countries. Proceedings of the IFID, Commission for Asia and Oceania, 10th Congress and General Assembly, Beijing, 24-26 October 1988. 2. Levy,J.: Cooperation and coordination in Aleph's University Li- brary Network. ISLIC Bulletin, 16(1), 1988, p.5-8 3. Lefkovitz, J.: Program organisation : a historical evaluation of Aleph. ISLIC Bulletin, 16(1), 1988, p.9-15 4. Ben Haim,D.: The Aleph search module. ISLIC Bulletin, 16(1), 1988, p.16-21 5. Katz, M.: The Aleph circulation mode. ISLIC Bulletin, 16(1), 1988, p.28-33 6. Farkas, S.; Lajcher,C.: How to beat the high cost of living... Aleph can help. ISLIC Bulletin, 16(1), 1988, p.42-44 7. Huppert, M.: Instructions for the online Aleph catalog. ISLIC Bul- letin, 16(1), 1988, p.34-41 8. Aczel, E.: The national library's Aleph subject heading catalog. ISLIC Bulletin, 16(1), 1988, p.46-49 9. Adler, E.: The library automation scene in Israel. Judaica Librarian- ship, 3(1/2), 1986-87, p.21-23 10. Cuomo, E. I.: Computerised legal databases and their contents : Is- rael. International Journal of Legal Information, 15(5/6), 1987, p.201-207 11. Ben-Chaim, D.: Different approaches to online catalogue instruc- tions : an Israeli experience. IATUL Quarterly, 1(1), 1987, p.13-24 12. Roitberg, N.: Resource sharing and coordinated automation in university libraries in Israel, p.107-112 // Fjallbrant, N. (ed): The future of information resources for science and technology and the role of the library. Goeteborg : IATUL, 1986. 13. LeviJ.: ALEPH : an online real-time integrated library system. Judaica Librarianship, 1(2), 1984, p.58-63 14. Sever, S. (et.al.): Networking aspects of information services and li- braries. p.697-766 // Karen, C.; Perlmutter, L. (eds): The application of mini and micro computers in information, documentation and libraries. Amsterdam : North Holland, 1983. 15. Bemardis, L.: Un esempio di valutazione mediante checklist: la consultazione facilitata de catalogo (OPAC) nel sistema Aleph. Biblioteche oggi, 9(6), 1991, p.733-749