Digitalizált szövegek XML-alapú feldolgozása

a W3C legújabb ajánlásaival

 

A Neumann János Digitális Könyvtár és Multimédia Központ vezető szerepet tölt be a magyar kulturális örökség digitalizálásában. A könyvtár nagy múltra tekint vissza az SGML alapú szövegfeldolgozási technológia alkalmazásában.

 

A Neumann-ház egyik kiemelkedően fontos gyűjteménye a Bibliotheca Hungarica Internetiana.

 

Forrás: http://www.neumann-haz.hu/db/bhi.html

 

Előadásomhoz ebből a gyűjteményből válogattam a példákat, az alkalmazott technikai/technológiai folyamatok mellett a gyűjtemény gyarapításának lépéseit is be szeretném mutatni.

 

1. SGML alapú szövegfeldolgozás a Neumann-házban

 

A Bibliotheca Hungarica Internetiana gyűjteményben található műveket SGML formátumban tároljuk. Ez a formátum lehetővé teszi, hogy az elektronikus szövegeket formai megjelenésüktől függetlenül tartalmi oldalról is feltárjuk. Az SGML állományokból több formátum is egyszerűen előállítható, így az olvasói igényekhez igazodva a műveket mindig a leghasználhatóbb formában tehetjük közzé, legyen szó egyszerű HTML lapokról vagy e-könyvekről.

 

Miért döntöttünk az SGML szabvány használata mellett?

 

Az SGML technológiát a Neumann-ház már a kezdetektől (az alapítás óta) használja. A nemzetközi szabványokat és ajánlásokat figyelembe véve a Neumann Könyvtár megtervezte és elkészítette saját DTD-jét (dokumentum-típus definícióját) és szövegmegjelenítő stíluslapját, így egyedülálló honosított technológiai háttérrel rendelkezik.

 

A digitalizálás és a szolgáltatás technológiája

 

Az 1997. év végi induláskor a legfontosabb feladatunk a leendő szolgáltatások technológiai alapjainak a kidolgozása volt. Más lehetőség híján csak a nemzetközi szakirodalomra támaszkodva tudtuk a külföldi tapasztalatokat feltérképezni. Magyarországon akkor még csak egyetlen példa, a Magyar Elektronikus Könyvtár volt előttünk. Ők a Gutenberg Project mintájára főként text (TXT), és kisebb számban Microsoft Word 2.0 formátumú fájlokban tárolták a dokumentumaikat. Mi ezeknél komplexebb szolgáltatást lehetővé tevő, időtállóbb formátumot kerestünk - így esett a döntésünk az SGML szabvány alkalmazására.

 

1998-ban elkészült az irodalmi művek feldolgozására szolgáló DTD. Egy pályázatnak köszönhetően hozzájutottunk Fretwell-Downing cég által fejlesztett, Oracle Library nevű integrált könyvtári rendszerhez. A Neumann Könyvtár összes szolgáltatása azóta is ennek a szoftvernek a korszerűsített verzióira épül.

 

Az SGML technológiát a magyar könyvtárak közül mi alkalmaztuk először. Sajnos, a példánkat kevesen követték, pedig azóta bebizonyosodott, hogy hosszú távon nagyon is kifizetődő az az intellektuális és anyagi befektetés, amellyel az SGML alkalmazása jár. Túlzás nélkül mondhatjuk, hogy most játszi könnyedséggel tudunk átállni a világszerte egyre jobban terjedő XML-re (amely köztudottan az SGML könnyített és egyszerűsített változata), és - ami az 1997. évi döntés fő motiváló tényezője volt - az SGML-ben kódolt fájlokból igen sokféle formátumot tudunk előállítani.

 

1.1 Leírónyelv és technológia

 

1.1.1 A World Wide Web szabványait kidolgozó szervezetek

 

Forrás: http://www.idealliance.org

 

A fenti ábra azoknak a szervezeteknek a térképét mutatja, amelyek aktívan részt vesznek a webes szabványok kidolgozásában. Az intézményeket az alábbiak szerint csoportosíthatjuk:

 

-         intézmények, amelyek a web infrastruktúráját szabványosítják,

-         intézmények, amelyek szabványaikkal elősegítik a web használhatóságát,

-         intézmények, amelyek speciális szabványokat dolgoznak ki bizonyos üzleti feladatokra.

 

Jelenleg három olyan szervezet van, amelyik a web infrastruktúráját fejleszti:

 

1.      a World Wide Web Consortium (W3C),

2.      az International Standards Organization (ISO),

3.      és az Internet Engineering Task Force (IETF).

 

Sokan azt gondolják, hogy egyedül a W3C felel a webes fejlesztésekért. A legtöbb webes szabvány valóban a W3C-től származik, de az ISO felel például az SGML-ért és a Topic Maps-ért (tématérképek) is. Az IETF a HTTP szabványért felelős.

 

Számos olyan szervezet létezik, amely a webes technológiák használhatóságáért (interoperability) felelős. Az OASIS az egyik ilyen. Ők fejlesztették ki az XML tábla modellt, aktívan dolgoznak az ebXML-en és további kezdeményezéseken.

 

A Digital Information Standards Association (DISA) szintén hasonló szabványokon dolgozik. Jelenleg a DISA fejleszti az XML/EDI-t, és az ANSI EDI-t. A National Information Standards Organisation (NISO) szintén foglalkozik az általános használhatóság kérdésével.

 

Az XML-hez kapcsolódó alkalmazási szabványokat gyakran ipari csoportok készítik el, olyan szabvány-fejlesztő intézmények mint például az IDEAlliance.

 

A világhálót működtető szabványokat kidolgozó szervezetek közül mi a World Wide Web Consortium (W3C) ajánlásait tekintjük iránymutatónak.

 

1.1.2 A World Wide Web Consortium (W3C) helye és szerepe a webes szabványok kidolgozásában

 

A World Wide Web Consortium (W3C) webes szabványokat dolgoz ki. A W3C célja az, hogy kiaknázza a Web összes lehetőségét az információs fórumok, a kereskedelem, a kommunikáció és a kollektív tudás terén egyaránt.

 

A W3C-t 1994 októberében alapították azzal a céllal, hogy elősegítsék a Webben rejlő lehetőségek minél teljesebb kihasználását olyan közös számítógépes protokollok kidolgozásával, amelyek előremozdítják a Web fejlődését és garantálják széleskörű felhasználhatóságát. Ma már a W3C-nek több, mint 450 tagja és közel 70 teljes munkaidős munkatársa van szerte a világon, akik hozzájárulnak a W3C specifikációk és szoftverek fejlesztéséhez.

 

Forrás: http://w3c.sztaki.hu/

 

1.2 A szövegfeldolgozás folyamata

 

A Neumann-házban alkalmazott szövegfeldolgozási folyamat az alábbiak szerint épül fel:

 

 

A Digitalizáló Laborban folyó munkálatokra kidolgozott technológiai folyamat elemei - a szkennelés, az optikai karakterfelismertetés (OCR), a korrektúrázás, az SGML-kódolás, az SGML-kódolás ellenőrzése - mind-mind egymásra épülő, ugyanakkor jól elkülöníthető részekből állnak.

 

 

Szkennelés

 

A hagyományos úton előállított input dokumentumok beszkennelése után az OCR-program segítségével a papírra vetett szöveg elektronikus formátumúvá alakítható, így azután formázható, szerkeszthető.

 

OCR-előkészítés

 

A beolvasott oldalakat mindenképpen célszerű valamilyen képszerkesztő programmal az optikai karakterfelismeréshez előkészíteni. A nemkívánatos fekete foltokig bezárólag eltüntethetjük mindazt, amit egész biztosan nem akarunk felismertetni, illetve a nem szigorú rendben feliratozott oldalakat a jobb eredmény érdekében rendbe akarjuk szedni. Ehhez egyszerűbb képszerkesztői programok is alkalmasak lehetnek, a szélesebb körű alkalmazást feltéve azonban mégis egy komolyabb szoftver alkalmazása indokolt.

 

Optikai karakterfelismerés/felismertetés - OCR

 

A Digitalizáló Laborban az optikai karakterfelismertetéshez a Recognita OmniPage Pro 11-et használjuk.

 

Az OCR-ezés során nyert szöveget a tárolása előtt korrektúráztathatjuk, továbbá igénybe vehetjük az OmniPage szoftver IntelliTrain szolgáltatását is. Az IntelliTrain megjegyzi a korrektúrázás során tett javításokat, és esetenként felhasználja azokat a dokumentum fennmaradó részében talált bizonytalan esetek megoldására.

 

Korrektúrázás

 

A korrektor szerepe a Digitalizáló Labor esetében nagyban hasonlít azokhoz a  feladatkörökhöz, melyeket például kiadóknál, szerkesztőségeknél vagy nyomdáknál végeznek. Feladata, hogy a digitalizálásra kerülő eredeti szöveg teljes mértékben megegyezzen a majdan interneten megjelenő szöveggel.

 

SGML-kódolás

 

Az információfeldolgozással kapcsolatban a következő szempontokat támaszthatjuk:

 

-         legyen az információ (a továbbiakban információ alatt szöveges információt értünk) szerkezete tervezhető,

-         legyen olyan elfogadott szabvány, amellyel az ember és a gép számára le lehet írni az információ szerkezetét, meg lehessen jelölni a felhasználás számára lényeges elemeket,

-         legyen az információ tárolására általánosan elfogadott, dokumentált, gyártófüggetlen szabvány,

-         az információ legyen számítógéppel könnyen feldolgozható,

-         a kívánt információt gyorsan, pontosan meg lehessen találni,

-         a tárolt információ legyen hordozható,

-         a tárolt információ legyen sokoldalúan újrafelhasználható.

 

Ezeknek a kritériumoknak megfelel az SGML nemzetközi szabvány, illetve annak leszűkétése, az XML.

 

A már korrektúrázott forrásanyagot az Emacs (Linux) vagy TextPad (Windows) szövegszerkesztők valamelyikébe töltjük be. Itt kell lecserélni az ékezetes betűket entitásokra (erre a program automatizmust is felajánl), valamint itt kell az SGML címkéket (tag-eket) elhelyezni a kódban.

 

A helyes szintaktikai kódolás ellenőrizhető a felhasznált DTD-vel való összevetéskor. A kódolás befejeztével az SGML kódot le kell fordítani XML formátumúvá, majd HTML formátumúvá.

 

Az SGML-korrektor feladata az SGML-kódoló munkájának ellenőrzése és korrigálása.

 

Az SGML-korrektornak minden hiba javítása után el kell végeznie az SGML-XML-HTML konverziót, ezzel ellenőrizve azt, hogy a hiba javítása esetleg nem mutatott-e ki, vagy okozott más hibákat. Amennyiben ez a folyamat is befejeződött, a művet feldolgozottnak tekintjük.

 

1.3 Példák a Neumann-ház digitális gyűjteményéből

 

A példaállományok SGML, XML és HTML kódmintáit a mellékelt PowerPoint prezentáció tartalmazza.

 

Példák:

 

-         Ady Endre: Levél a Nagyváradi Napló szerkesztőjéhez

-         Ady Endre: Párisban járt az Ősz

-         Jókai Mór: És mégis mozog a föld (A csittvári krónika)

2. Új igények és lehetőségek: a W3C ajánlásai

 

Az XML szabványcsalád

 

Az XML szabványcsalád feladata, hogy összefogja azokat a technológiákat, amelyek a webet működtetik. Az XML-es szabványok legősibb alapja az ISO 8879 szabványa, az SGML. Ez a szabvány tette lehetővé a szövegek absztrakt kódolását, ebből született a HTML és az XML 1.0 is.

 

A HTML átvette az SGML-ben is jelen lévő jelölőelem-nyelvtant, de ahelyett, hogy engedte volna, hogy a felhasználó saját maga definiáljon új jelölőelemeket, egy általános jelölőelem halmazt adott meg, amelyet webes publikálásra lehet használni. A HTML volt a szabványcsalád első tagja, amely 7 évvel előzte meg az XML-t.

 

Amint a HTML terjedni kezdett, és az akadémiai szféra után az üzleti szféra is elkezdte alkalmazni - ekkor került a W3C felügyelete alá -, a felhasználók az alábbi két területen követeltek új megoldásokat:

 

-         a webes tervezők több lehetőséget, ellenőrzési pontot szerettek volna kapni a formázási elemeknél,

-         azok, akik a HTML-t üzleti célokra szerették volna használni, szerették volna még jobban "prezentálni" tartalmaikat.

 

Végül két új szabvány készült el a W3C irányítása alatt. Az első a CSS volt, amely több formázási lehetőséget adott a tervezőknek. A második az XML volt, amellyel a HTML tartalom-kezelő lehetőségeit javították.

 

Az XML az SGML szintaxisra épült, csakúgy mint a HTML. A CSS azonban SGML-független lett.

 

Az XML fejlődését követve számos egyéb szabvány is született, amely mind az XML sajátosságait használta ki. Megemlíthetjük az XHTML-t, az XSL-t, az XSLT-t, az XPointer-t, és az XLink-et. Az XML séma definiáló nyelvet (XSD) XML-ben írták, és segítségével új mechanizmusokat sikerült éltre hívni.

 

Az alapvető webes szabványok mellett az XML sok más egyéb technológiai újítás alapjául is szolgált. Legtöbbször az azonos érdekektől vezérelt ipari csoportok fejlesztenek kapcsolódó szabványokat. XML-alapú szabvány pl. az ICE, az SVG, a MathML, az OFX, az XTM, és az ebXML.

 

 

Forrás: http://www.idealliance.org/XMLRoadmap/WEB/TOC/xmlrotoc.htm

 

2.1 Ajánlások, megoldások, előnyök

 

Az SGML-hez szorosan kapcsolódó XML technológia - úgy tűnik - hosszú távon is jó alapnak bizonyul. A World Wide Web Consortium (W3C) ajánlásai kifejezetten a webes társadalomnak szólnak, nekünk - digitális könyvtárosoknak - pedig a konzorcium technikai/technológiai ajánlásai különösen fontosak.

 

Legújabb digitalizálási projektjeink már túlmutatnak az egyszerű SGML-alapú szövegfeldolgozáson, a feldolgozásra kerülő anyagokban már matematikai egyenletek, képletek, geometriai ábrák is szerepelnek.

 

Ezekben a speciális esetekben is a W3C legfrissebb ajánlásait követjük: a matematikai részekhez a MathML (Mathematical Markup Language) leírónyelvet, a méretezhető ábrák elkészítéséhez pedig az SVG (Scalable Vector Graphics) XML-alapú nyelvet használjuk.

 

A közeljövőben azt tervezzük, hogy a teljes SGML-re épülő szövegfeldolgozási munkafolyamatot átszervezzük, és egy hatékonyabb, XML alapú rendszert dolgozunk ki.

 

2.2 Példák a Neumann-ház digitális gyűjteményéből

 

A példaállományok SGML, XML és HTML kódmintáit a mellékelt PowerPoint prezentáció tartalmazza.

2.2.1 A régi módszer: matematikai egyenletek képként (GIF, JPG, PNG)

 

A példaállományok SGML, XML és HTML kódmintáit a mellékelt PowerPoint prezentáció tartalmazza.

2.2.2 Az új módszer: a MathML alkalmazása

 

A példaállományok SGML, XML, HTML és MathML kódmintáit a mellékelt PowerPoint prezentáció tartalmazza.

2.2.3 Alternatív lehetőségek: matematikai egyenletek méretezhető képként (SVG)

 

A példaállományok HTML, MathML és SVG kódmintáit, képeit a mellékelt PowerPoint prezentáció tartalmazza.

3. K+F tapasztalatok, a fejlesztés új irányai

 

Nagy erőkkel kezdtünk bele digitalizált szövegeink hatékonyabb konverziós folyamatainak kidolgozásába. Megtanultuk és a jövőben is mindig igyekszünk szem előtt tartani a W3C általunk alkalmazható/alkalmazandó ajánlásait.

 

Sajnos ma még úgy látjuk, hogy például a MathML esetében a böngésző alkalmazások nagyon esetlegesen vagy egyáltalán nincsenek felkészítve a jól formázott matematikai kódok kezelésére, megjelenítésére.

 

Érdekes megjegyeznünk, hogy az egyik leghasználhatóbb böngésző, a Mozilla már sokkal kiforrottabb megoldásokat kínál a matematikai képletek, egyenletek megjelenítésére mint legfőbb konkurense az Internet Explorer.

 

Igaz, hogy a Mozillát is fel kell készíteni a feladatra: speciális font-készleteket kell telepíteni, amit egy átlagos felhasználó nem biztos, hogy hibátlanul és elsőre véghez tud vinni.

 

A skálázható vektorgrafikák esetében a felhasználónak kiegészítőket, ún. plug-in-eket kell telepítenie a korrekt megjelenítés érdekében.

 

Összegezve tehát: a W3C ajánlásai számunkra továbbra is irányadóak, a megjelenítő eszközök (böngésző alkalmazások) gyártóinak is érdemes tanulmányozniuk ezeket az ajánlásokat és egyzserű, könnyen használható alkalmazás-kiegészítőket készíteniük.

 

 

Budapest, 2003. február 28.

 

Kora András

 

Neumann János Digitális Könyvtár és Multimédia Központ Kht.