Tisztelt
hallgatóság! Az XML fogalmával valamennyien találkoztunk az elmúlt egynéhány év
során. Divatos téma és nem is nem alaptalanul. Remélem, ezt a kijelentést ez a
rövid előadás is alátámasztja majd. Mielőtt a címben jelzett témára
rátérnék, engedjék meg, hogy néhány szót szóljak a fogalmakról, amelyeket használni
fogunk.
A következő rövid meghatározás a W3C Magyar Iroda honlapjáról
származik. Szó szerint átvettem, mert nem tudnám tömörebben elmondani a
lényeget:
„Az XML szabályok gyűjteménye (ezeket felfoghatjuk
szamárvezetőknek vagy konvencióknak), melyek segítségével olyan szöveges
formátumokat állíthatunk elő, amelyek alkalmasak adatok strukturált
leírására. Az XML nem egy programozási nyelv, és a használatához vagy
megtanulásához nem szükséges programozónak lenni. Az XML a számítógép számára
megkönnyíti az adatok generálását, olvasását és biztosítja, hogy az
adatszerkezet egyértelmű legyen. (…) A HTML-hez hasonlóan az XML is tagokat
(szavak '<' és '>' jelek között) és attribútumokat
(név="érték" formátumban) használ. Azonban míg a HTML előre
definiálja, hogy az egyes tagok és attribútumok mit jelentsenek, s hogy a tagok
közötti szöveg a böngészőben miképp jelenjen meg, addig az XML a tagokat
csak az egyes adatcsoportok elválasztására használja, az adatok értelmezését
meghagyja az alkalmazások számára, amelyek az XML-t olvassák.” [1]
A
HunTéka könyvtári rendszerről bizonyára sokkal kevesebben hallottak, mint
az XML-ről, ami érthető, hiszen újszülöttről van szó, akit
egyelőre csak a szűk családi kör és néhány közeli barát ismer. A
hasonlatnál maradva, a családi kört az MTA SZTAKI[3]
könyvtári csoportja és a szegedi székhelyű iKron Kft.[4]
fejlesztő gárdája alkotja, míg a barátokat a velük kapcsolatban álló,
és a fejlesztésben is szerepet vállaló könyvtárak és könyvtárosok jelentik. A
HunTéka megszületését egy évtizedes tapasztalat a könyvtári rendszerek
fejlesztése terén és több éves előkészítő munka alapozta meg.
A
HunTéka jellemzői címszavakban:
Ř
HUNMARC
rekordszerkezet
Ř
SQL
adatbázis-kezelés
Ř
Z39.50
protokoll alkalmazása szerver és kliens oldalon
Ř
Platform
független Java programozási nyelv
Ř
Jól
konfigurálható, grafikus felhasználói felületek
Ř
Az
erőforrás-megosztás tekintetében rugalmasan skálázható kliens-szerver
architektúra
Ř
XML
szabványok széleskörű implementálása
Ř
Nyílt
szabványokra, ajánlásokra épül
Ř
Messzemenőkig
támogatja a hálózatos együttműködést, például egyetemi könyvtár egyes
karai, vagy városi könyvtár és fiókhálózata között
A címben
szereplő két fogalom rövid bemutatása után kapcsoljuk össze őket, és
lássuk, milyen szerepet kap az XML alkalmazása a HunTéka könyvtári rendszerben!
A HunTéka jelenleg
az alábbi részekben alkalmaz XML technológiát:
1. konfigurációs
beállítások leírása (objectsrv.xml,
logicalsrv.xml)
példa
adatbázis-kapcsolat leírására:
<DataSource name="sqlDataSource"
class="hu.ikron.hunteka.data.SqlDataSource">
<Parameter
name="name">default_sql_datasource</Parameter>
<Parameter
name="driver">org.postgresql.Driver</Parameter>
<Parameter name="url">jdbc:postgresql://fatty.ibase:5432/hunteka_pazmany_htk</Parameter>
<Parameter
name="user">postgres</Parameter>
<Parameter
name="password">xxxxxx</Parameter>
</DataSource>
2. felhasználói
felületek leírása: ablakok,
menük, eszköztárak, listák leírása (pl.: marc_form.xml)
példarészlet egy
245-ös MARC hívójelet leíró kontrollra:
(…)
<!-- Egyébb cím, alcím -->
<Control name="c245.*.*.b"
type="MULTI.CONTROL">
<Value>c245.#.#.b</Value>
<Size height="2"/>
<Coordinate x0="0" y0="1"
x1="8" y1="4"/>
</Control>
<!-- Szerzőségi közlés -->
<Control name="c245.*.*.c"
type="SINGLE.CONTROL">
<Value>c245.#.#.c</Value>
<Coordinate x0="0" y0="4"
x1="8" y1="5"/>
</Control>
(…)
3. Z39.50 adat-transzformációs
felhasználás: a Z39.50
adatforrásban történő keresés eredményének lekérése XML formátumban, majd
átalakítása HunTéka belső formátumra. Ennek
segítségével a HunTéka kliens programja képes heterogén adatbázisokban
egyidejűleg kereséseket végrehajtani. Ennek a gyakorlatban rendkívül nagy
előnye van, hiszen a könyvtáros – anélkül, hogy saját rendszeréből
kilépne – az általa megszokott kereső felületet használhatja a Z39.50-es
szolgáltatást nyújtó könyvtárak lekérdezéséhez. A dolog szépsége természetesen
nem abban áll, hogy pusztán csak keresni tud, hanem abban, hogy egyúttal a
lekeresett tételek között válogatva, azokból könnyűszerrel, a fájlba
mentést kihagyva, át is emelhet rekordokat a saját rendszerébe.
4. A „Monguz”[5],
az iKron Kft által kifejlesztett általános célú webes lekérdező motor
egyes feladatainak rugalmas megoldása:
Ř
Monguz --
HunTéka adatbázis-kapcsoló (plugin) a HunTéka specifikus adatok átalakítására
(XML + XSL -> XML -> Monguz belső formátum)
Ř
Monguz
belső formátumának leírása a kommunikáció során.
Amint a
felsorolásból is látszik, a felhasználás egyik jelentős köre a „monguzos”
webes lekérdezések területe. A „Monguz” egyik erőssége, hogy egyszerre,
párhuzamosan több adatbázist képes lekérdezni, legyenek ezek egyazon szerveren,
vagy az Internet bármely elérhető pontján. Az adatbázis-kapcsolók
(„plugin”-ek) segítségével pedig megvalósítható, hogy heterogén
adatbázis-halmazon is működjön a lekérdezés, ami kicsit közérthetőbben
annyit tesz, hogy a különféle könyvtári rendszerekkel épített adatbázisokat is
képes a program egyidejűleg lekérdezni.
A
„Monguz” másik erőssége éppen az XML alkalmazásában rejlik. Az
előadás második felében ennek gyakorlati megvalósítását szeretném Önöknek
bemutatni.
A
Hódmezővásárhelyi Németh László Városi Könvtárban[6]
éppen folyamatban van az áttérés az eddig használt, és a HunTéka elődjének
tekinthető TinLib könyvtári rendszerről a HunTékára. Ennek során – a
már amúgy is jelentős, és nagymértékben digitalizált állományokra is
támaszkodó helytörténeti gyűjtemény – újabb értékes elemmel gazdagodott. A
városban 1910-1912 között megjelent „A Jövendő” című közéleti
folyóiratot digitalizálták, majd elvégezték a rekognitázott szöveg javítását és
XML formátumra történő konvertálását. Az XML konverzió az iKron Kft. által
kifejlesztett konvertáló program segítségével történt. Az XML-ben tárolt teljes
szöveg ezáltal visszakereshetővé vált a HunTéka XMLDB adatbázis-kapcsolója
segítségével.
A
keresés két pontról indítva is lehetséges. Egyrészt készítettek a folyóiratnak
egy honlapot, amin keresztül az összes folyóirat-szám közvetlenül
böngészhető, illetve teljes szövege visszakereshető; másrészt a
HunTéka rendszer Monguzra épülő WebOPAC-ján keresztül, az on-line
katalógusba integrálva is megvalósították a teljes szöveges visszakeresés
lehetőségét.
Lássuk
most, hogyan néz ki ez a gyakorlatban!
A folyóirat
honlapja elérhető a könyvtári honlapról az elektronikus könyvtári
szekcióból, vagy közvetlen URL címről[7]
is. Itt bevezető szöveget olvashatunk a folyóiratról és a digitalizálás
körülményeiről, valamint segítséget kapunk az oldal használatához és
lehetőségünk van a folyóirat egyes számainak böngészésére, vagy a teljes
szövegben való keresésre.
A
keresés azonban történhet a könyvtár katalógusán keresztül is, ahol – jelenleg
csak példaképpen – néhány cikket is bekatalogizáltunk. Itt meg kell említeni a
pontos tájékoztatás kedvéért, hogy a könyvtár katalógusa jelenleg
üzemszerűen még a TinLib adatbázis TinWeb OPAC-ján keresztül történik,
mivel a HunTéka jelenleg bevezetés alatt áll. Amint ez a folyamat
befejeződik, a most bemutatott felületen és lehetőségek szerint lehet
majd a katalógust a weben elérni.
Végül
szeretnék bemutatni néhány űrlapot a HunTéka program katalogizáló
moduljából! Az XML technológia használatával sikerült elérni, hogy az
űrlapok rendkívül rugalmasan módosíthatók. Ez a tény, és az
adatbázis-struktúra azon sajátossága, miszerint a rekordszerkezet nincs
„beégetve” az adatbázisba, együttesen azt eredményezi, hogy a HunTéka
rendszerben bármely MARC, sőt nem MARC formátum szerinti rekordtárolást is
mg lehet valósítani. A jelen verzióban az űrlapok a HUNMARC 2002-es
kiadású szabályzatának előírásait követik.[8]
Az
egyszerű szerkesztő űrlapok létrehozásával az volt a célunk,
hogy olyan könyvtáros is könnyedén használhassa a programot, aki nem jártas a
MARC katalogizálásban, vagy éppen most kezd vele megismerkedni. Mivel ezt
használva a háttérben felépül a MARC rekord, amit aztán megtekinthetünk,
alkalmas a program a MARC rekordszerkezet tanulására is.
Példa
egyszerű szerkesztő űrlapra:
A MARC
űrlapon lehetőség van az egyszerű szerkesztőben felvet
adatok módosítására, kiegészítésére, de a profi MARC katalogizáló innen is
kezdheti a munkát, innét indulva építheti fel a rekordot.
Példa
MARC űrlapra:
Befejezésül
szeretném megköszönni a figyelmet! Remélem, hogy az előadással sikerült
megerősíti azt az állítást, miszerint az XML technológia egyáltalán nem
alaptalanul lett divatos téma napjainkban.
[2] http://www.hunteka.hu
[3] http://www.sztaki.hu
[4] http://www.ikron.hu
[5] http://www.monguz.hu
[6] A könyvtár URL címe: http://www.nlvk.hu/
[7] http://www.nlvk.hu:8080/jovendo/index.jsp
[8] HUNMARC. A bibliográfiai rekordok adatcsere formátuma, KSZ/4.1, 2002. Letölthető az OSZK honlapjáról: http://www.oszk.hu