Upload
nusa
View
58
Download
7
Embed Size (px)
DESCRIPTION
XML in TEI Tomaž Erjavec. Seminar projekta Neznani rokopisi slovenskega slovstva 17. in 18. stoletja: informacijsko-tehnološko podprta evidenca, znanstvene objave in analize 24 . 4 .200 8 ZRC-SAZU. ZDRAVLJICA - PowerPoint PPT Presentation
Citation preview
XML in TEI
Tomaž Erjavec
Seminar projekta Seminar projekta Neznani rokopisi slovenskega Neznani rokopisi slovenskega slovstva 17. in 18. stoletja: slovstva 17. in 18. stoletja:
informacijsko-tehnološko podprta informacijsko-tehnološko podprta evidenca, znanstvene objave in evidenca, znanstvene objave in
analizeanalize2424..44.200.20088ZRC-SAZUZRC-SAZU
ZDRAVLJICAZDRAVLJICA
Prijatlji! odrodilePrijatlji! odrodileso trte vince nam sladkó,so trte vince nam sladkó,
ki nam oživlja žile,ki nam oživlja žile,srce razjásni in oko,srce razjásni in oko,
ki utopiki utopivse skrbi,vse skrbi,
v potrtih prsih up budi! v potrtih prsih up budi!
……
<?xml version="1.0" encoding="utf-8"?><pesem><pesem>
<naslov><naslov>ZDRAVLJICAZDRAVLJICA</naslov></naslov><kitica><kitica>
<vrstica><vrstica>Prijatlji! odrodilePrijatlji! odrodile</vrstica></vrstica><vrstica><vrstica>so trte vince nam sladkó,so trte vince nam sladkó,</vrstica></vrstica>
<vrstica><vrstica>ki nam oživlja žile,ki nam oživlja žile,</vrstica></vrstica><vrstica><vrstica>srce razjásni in oko,srce razjásni in oko,</vrstica></vrstica>
<vrstica><vrstica>ki utopiki utopi</vrstica></vrstica><vrstica><vrstica>vse skrbi,vse skrbi,</vrstica></vrstica>
<vrstica><vrstica>v potrtih prsih up budi!v potrtih prsih up budi!</vrstica></vrstica></kitica></kitica>
……</pesem></pesem>
Kaj je XML?
XML XML je standard, ki je standard, ki omogoomogoča hranjenje ča hranjenje in procesiranje besedil v elektronski in procesiranje besedil v elektronski oblikiobliki,, ne glede na operacijski ne glede na operacijski sistem sistem oz. vrsto naprave. oz. vrsto naprave.
standard standard XML XML je projekt konzorcija je projekt konzorcija W3CW3C in je javen in je javen
XML XML je je “meta“metajezikjezik” - ” - omogočaomogoča definiranje specifičnih jezikov za definiranje specifičnih jezikov za različne zvrsti dokumentovrazlične zvrsti dokumentov
Zakaj potebujemo standarde za zapis digitalnih podatkov?
Ponavadi Ponavadi je je (bil) (bil) zapis digitalnih podatkov vezan na zapis digitalnih podatkov vezan na določen računalniški program, npr. urejevalnik določen računalniški program, npr. urejevalnik besedilbesedil
ProblemiProblemi:: zastaranjezastaranje:: zaradi hitrega tehnološkega napredka zaradi hitrega tehnološkega napredka
programi postaprogrami postanenejo zastareli, podatki, ki so nanje jo zastareli, podatki, ki so nanje vezani pa neberljivivezani pa neberljivi
izmenjavaizmenjava:: podatke je težko izmenjevati med podatke je težko izmenjevati med različnimi različnimi programiprogrami
uporabauporaba:: podatke je težko uporabljati za različne podatke je težko uporabljati za različne namenenamene
razumljivostrazumljivost:: podatke razume samo program podatke razume samo program - - ni ni zanesljivih in javno dostopnih specifikacij za zapis zanesljivih in javno dostopnih specifikacij za zapis podatkovpodatkov
pravilnostpravilnost:: ne moremo vedeti, ali so podatki ne moremo vedeti, ali so podatki zapisani v skladu s specifikacijami določenega zapisani v skladu s specifikacijami določenega formata ali neformata ali ne
Kaj je označevalni jezik? nabor označevalnih konvencij, ki jih nabor označevalnih konvencij, ki jih
uporabljamo za zapis besediluporabljamo za zapis besedil z njim z njim eksplicekspliciramo iramo interpretacijo interpretacijo
besedilabesedila
označevalni jeziki morajo določatioznačevalni jeziki morajo določati: : kako so oznake ločene od besedilakako so oznake ločene od besedila, , katere oznake so dovoljenekatere oznake so dovoljene, , katere oznake so katere oznake so zahtevane,zahtevane, ((kaj oznake pomenijokaj oznake pomenijo))
Struktura dokumentov XML
dokument = dokument = besedilo + besedilo + oznakeoznake
element = element = začetna oznaka + začetna oznaka + vsebina + vsebina + končna oznakakončna oznaka
element vsebuje element vsebuje besedilo ali besedilo ali elemente ali elemente ali obojeoboje ( (ali ničali nič))
<pesem><pesem>
<naslov><naslov>ZDRAVLJICAZDRAVLJICA</</naslov>naslov>
<kitica><kitica>
<vrstica><vrstica>Prijatlji! Prijatlji! odrodileodrodile</vrstica></vrstica>
<vrstica><vrstica>so trte vince nam so trte vince nam sladkó,sladkó,</vrstica></vrstica> ……
<<//kitica>kitica>
……
</pesem></pesem>
Prazni elementi
elementelementii z vsebino: z vsebino: <<oznakaoznaka> … </> … </oznakaoznaka>>
prazni elementi nimajo vsebineprazni elementi nimajo vsebine::<<oznakaoznaka/>/>
uporabljajo se za označevanje uporabljajo se za označevanje “točk” v dokumentu, npr. za “točk” v dokumentu, npr. za prelome straniprelome strani
<<oznakaoznaka/>/> = = <<oznakaoznaka></></oznakaoznaka>>
Atributi
Atributi se uporabljajo za opis lastnosti Atributi se uporabljajo za opis lastnosti elementovelementov
NprNpr: :
<tab<tabela ela status='status='popravljenopopravljeno' xml:id=“t' xml:id=“tabelaabela..001">1"> ... ... </tab</tabeellaa>>
lastnost podamo kot par atribut-vrednot lastnost podamo kot par atribut-vrednot znotraj začetne oznakeznotraj začetne oznake
vrednost mora biti znotraj enakih narekovajev, vrednost mora biti znotraj enakih narekovajev, bodisi enojnih ali dvojnihbodisi enojnih ali dvojnih; ;
nekateri specialni atributi nekateri specialni atributi ((xml:id, xml:langxml:id, xml:lang) ) imajo preimajo predponodpono xml:xml:
Komentraji Komentraji se lahko pojavijo kjerkoli v besedilu Komentraji se lahko pojavijo kjerkoli v besedilu
((vendar ne v oznakahvendar ne v oznakah) ) Komentra se začne s Komentra se začne s <!--<!-- in konča z in konča z -->--> Npr.Npr.::
<naslov><naslov>ZDRAVLJICAZDRAVLJICA</naslov></naslov> <kitica><kitica> <vrstica><vrstica>Prijatlji! odrodilePrijatlji! odrodile <!--ali je to mogoče “obrodile”? --><!--ali je to mogoče “obrodile”? --></vrstica></vrstica> ……
Opomba: v Opomba: v XML XML se se 'meta-'meta-oznakeoznake' ' začnejo s začnejo s <!<! aliali <?<?
Primer: jezikoslovno označen korpus
Primer: slovar
Entitete (delčki) XML Dokumenti XML lahko vsebujejo tudi reference Dokumenti XML lahko vsebujejo tudi reference
na t.i. entitetena t.i. entitete ob procesiranju XML se referenca nadomesti z ob procesiranju XML se referenca nadomesti z
nadomestnim nizom, nadomestnim nizom, ententitetoiteto referenca na entiteto se začne z znakom “in”, referenca na entiteto se začne z znakom “in”,
&& in konča s podpičjem, in konča s podpičjem, ; ; nekaj entitet je predefiniranih v nekaj entitet je predefiniranih v XMLXML: :
&<lt;; (<), (<), &>gt;; (>), (>), &&amp; ; (&), (&), &&aposapos; ; ((‘‘), ), &"quot; ; ( (““)) 1 < 21 < 2 mora biti napisan kot mora biti napisan kot
1 < 21 < 2 Mlinar & MlinarMlinar & Mlinar mmora biti napisanora biti napisanoo kot kot
Mlinar &Mlinar & amp; MlinarMlinar entiteentitetete se uporablja tudi za druge namene, npr. za se uporablja tudi za druge namene, npr. za
kodiranje znakov unikodakodiranje znakov unikoda, , npr.npr. ༲༲
Dobro oblikovan dokument XML dokument se začne z deklaracijo XML, npr.dokument se začne z deklaracijo XML, npr.
<?xml version="1.0" encoding="iso-8859-1" ?>
oznake in entitete so pravilno napisaneoznake in entitete so pravilno napisanenarobenarobe: : <a x=y>1 < 2<\a><a x=y>1 < 2<\a>
dokument mora biti drevodokument mora biti drevo:: vsaka začetna oznake mora imeti svojo končno vsaka začetna oznake mora imeti svojo končno
oznakooznako elementi se morajo gnezditielementi se morajo gnezditi
narobe: narobe: <a>…<b>…</a>…</b><a>…<b>…</a>…</b> dokument ima eno samo vrhnjo oznakodokument ima eno samo vrhnjo oznako
tak dokument XML je dobro oblikovan (tak dokument XML je dobro oblikovan (well-formed XML well-formed XML documentdocument))
Podatkovna struktura XML<poem><title>The SICK ROSE</title> <stanza><line>O Rose thou art sick.</line> <poem><title>The SICK ROSE</title> <stanza><line>O Rose thou art sick.</line> <line>The invisible worm,</line> <line>That flies in the night</line> <line>In the <line>The invisible worm,</line> <line>That flies in the night</line> <line>In the howling storm:</line></stanza> <stanza><line>Has found out thy bed</line> <line>Of howling storm:</line></stanza> <stanza><line>Has found out thy bed</line> <line>Of crimson joy:</line> <line>And his dark secret love</line> <line>Does thy life crimson joy:</line> <line>And his dark secret love</line> <line>Does thy life destroy.</line></stanza></poem> destroy.</line></stanza></poem>
~~
The SICK ROSEThe SICK ROSE
poempoem
titletitle stanzastanza
linelinelineline lineline
O Rose thou O Rose thou
art sickart sick
The invisible The invisible
worm,worm,
That flies That flies
in the nightin the night
linelinelineline lineline
Has found Has found
out thy bedout thy bedOf crimson joyOf crimson joy
And his dark And his dark
secret lovesecret love
stanzastanza
lineline
In the In the
howling stormhowling storm::
lineline
Does thy Does thy
life destroy.life destroy.
datotekadatoteka je je linearnalinearna
podatkovni podatkovni model je model je drevodrevo
Kaj je narobe?<greeting>Hello world!</greeting><greeting>Hello world!</Greeting>
<greeting><grunt>Ho</grunt> world!</greeting><grunt>Ho <greeting>world!</greeting></grunt><greeting><grunt>Ho world!</greeting></grunt>
<grunt type=loud>Ho</grunt><grunt type="loud"></grunt>
<grunt type= "loud"><grunt type ="loud"/>
Sheme XML Če bi v XML dokumentih lahko uporabljali
katerekoli elemente, bi bil rezultat kaos XML omogoče zapis formalnih gramatik t.i.
shem, ki definirajo nabor elementov za posamezne zvrsti dokumentov
tako lahko npr. napišemo shemo za poezijo, za kuharske recepte, za opis rokopisov, …
shema določi: imena vseh elementov, ki se lahko
uporabljajo imena in podatkovne tipe atributov pravila o gnezdenju elementov
Pravilen dokument XML
Dokument XML, ki upošteva pravila zapisana v neki shemi se imenuje pravilen dokument XML (valid XML document)
pozor: shema ne more določiti kaj posameznimi elementi pomenijo - to lahko naredi samo spremna dokumentacija, ki je nujna priloga k vsaki shemi
Čemu služijo sheme? zagotovijo, da dokument uporablja samo
predefinirane elemente, atribute in entitete postavijo strukturna pravila, kot npr. ‘vsako
poglavje se mora začeti z naslovom’ ali ‘recept mora vsebovati seznam sestavin’
zagotovijo, da se enaka stvar vedno enako imenuje
obstaja več jezikov za definiranje shem (DTD, W3C sheme, ISO RelaxNG sheme)
Standardizirane sheme
Za določeno zvrst dokumentov in Za določeno zvrst dokumentov in aplikacijo lahko shemo napišemo samiaplikacijo lahko shemo napišemo sami
vendar pa uporabnost vendar pa uporabnost XML XML sloni na sloni na dejstvu, da mnogo XML shem že dejstvu, da mnogo XML shem že obstajaobstaja, , skupaj z dokumentacijo in skupaj z dokumentacijo in programsko opremo, ki jih interpretiraprogramsko opremo, ki jih interpretira
Nekatere sheme so standardi ISO, Nekatere sheme so standardi ISO, nekatere priporočila konzorcija nekatere priporočila konzorcija W3CW3C,,
in potem je še in potem je še TEI…TEI…
Čemu TEI?
TEI nudi okvir za definicijo raznovrstnih shem za zapis besedil v namene znanstvene obravnave
definira in poimenuje več sto uporabnih besedilnih kategorij
ponuja nabor modulov, s katerimi je mogoče definirati sheme, ki ozančujejo te kategorije
ponuja tudi mehanizem za prilagajanje in kombiniranje teh definicij z novimi, vendar znotraj istega konceptualnega modela
Od kod izvira TEI? Začetek je v raziskovalnem projektu s področja
humanistike podprtem s strani mednarodnih znastvenih
združenj ALLC, ACH, ACL financiran 1990-1994, ZDA in EU
Glavni vplivi digitalne knjižnice in zbirke besedil jezikovni korpusi akademske podatkovne zbirke
Mednarodni konzorcij ustanovljen 1999http://www.tei-c.org/
Cilji TEI boljša izmenjava in integracija akademskih
vsebin podpora za vsa besedila, v vseh jezikih, iz
vseh obdobij uvajanje za začetnike: kaj označiti — torej,
kodifikacija priporočene uporabe podpora za strokovnjake: kako označiti —
torej, ohlapen okvir, v katerega je možno umestiti nepredvidljive razširitve
Ti, na prvi pogled nezdružljivi cilji so realizirani v fleksibilnem in modularnem okolju
Priporočila TEI Zbirka priporočil za označevanje besedil, ki
pokriva tako splošne besedilne strukture, kot tudi nekatera ozko specializirana področja osnovana (vendar ne omejena) na obstoječe prakse
Zbirka definicij elementov z dokumentacijo in pripadajočimi pravili za različne jezike definicij shem XML
Modularni sistem za ustvarjanje shem prilagojenih lastnim potrebam
Zadnja inačica priporočil (2007) se imenuje TEI P5, prosto dostopna, v HTML in PDF (1300 strani)
c.f. http://www.tei-c.org/Guidelines/P5/
Dediščina TEI
način, da spoznamo kaj besedilo “resnično” je
kodifikacija obstoječe akademske prakse nabor uveljavljenih predpostavk in
prioritet na področju digitalizacije besedil: poudarek na vsebini in funkciji
(ne pa na izgledu) iskanje generičnih rešitev
(ne pa vezanih na posamezne aplikacije)
Kaj TEI nudi?
PriporočilaPriporočila Način za definicijo sheme TEI XML Način za definicijo sheme TEI XML
za naš projekt (za naš projekt (RomaRoma)) Podporni programi, npr. za Podporni programi, npr. za
konverzijokonverzijo TEI XML v HTML ali PDF TEI XML v HTML ali PDF Prijazen dopisni seznam tei-lPrijazen dopisni seznam tei-l Letna srečanjaLetna srečanja
Uporabniki TEI
Čez Čez 100 proje100 projektovktov naštetih na naštetih na strani strani Projekti TProjekti TEIEI
Glavna področjaGlavna področja:: digitaldigitalnene knjižniceknjižnice tekstnokritične izdajetekstnokritične izdaje besedilni korpusibesedilni korpusi slovarjislovarji