Textkodning: XML ”Having trouble de-coding the text, Albert?”
XML Utökar begränsningarna för vad som är möjligt, jämfört med SGML (och fr.a. HTML) –därigenom ökar förutsägbarheten Beskrivna dokumentmodeller (dvs DTDer) inte längre absolut nödvändiga -> ett dokument är giltigt (valid) eller välformat. Har genererat en stor mängd nya tillämpningar
XML-teknik XML Xlink & XPointer XSL: –XSLT –XPath –XSL-FO
XML Egentligen inget eget märkspråk, snarare syntaktiska regler för konstruktion av märkspråk (eller märkscheman) Med XML kan vi själva skapa olika märkscheman för olika syften Mer makt åt oss textproducenter
XML Ingen ”äger” XML – plattformsoberoende Stöd (dvs XML-parser) i yngre webbläsare, fr.a. MS IE W3C: HTML, XHTML, XML, CSS, validering
”barn” till SGML TEI (1988) (språkvet., litteraturvet.) EAD (arkiv o museer) DocBook (akademiska texter) HTML XML
SGML - HTML, XML - XHTML specificitet generalitet SGML (1986) HTML (ca 1992) XML (1998) XHTML (2000)
XHTML HTML omdefinierad som en XML- tillämpning Skillnader HTML ↔ XHTML –utbyggbart –egna märken –krav på giltigt, välformat –exakthet i notationen –v/g –tomma element måste vara stängda
Grundläggande komponenter i ett XML-dokument Prologen Element Attribut och attributvärden Entiteter (CDATA i kommentarer)
Processinstruktioner, dokumenttypsdeklarationer
Prologen This Be The Verse They fuck you up, your mum and dad. They may not mean to, but they do. They fill you with the faults they had And add some extra, just for you. …
Element Par: Undantag tomma element: Versaler / gemener
attribut This Be The Verse They fuck you up, your mum and dad. They may not mean to, but they do. They fill you with the faults they had And add some extra, just for you. …
ett eller flera attribut
Entitetsreferenser LE BATEAU IVRE Comme je descendais des Fleuves impassibles, Je ne me sentis plus guidé par les haleurs: Des Peaux-rouges criards les avaient pris pour cibles, Les ayant cloués nus aux poteaux de couleurs. …
entiteter En viss teckensekvens har fördefinierats (i DTD:n) och givits ett namn. Vanligen för att representera tecken som annars kan “riskeras” Ibland även för att generera kortare eller längre text: genom att bara referera till namnet komprimerar man koden och spar arbete Refererar till externa data såsom grafik Behövs inte minst när märkenas och elementinnehållens notation kolliderar (<)
Entitetsexempel é = é = é ü = ü = ü &kontakt; = referens till en textsträng i DTD:n, i det här fallet ett namn på den aktuella kontaktpersonen &introduktion I DTD:n:
Kommentarer This Be The Verse They fuck you up, your mum and dad. They may not mean to, but they do. They fill you with the faults they had And add some extra, just for you. Man hands on misery to man. It deepens like a coastal shelf. Get out as early as you can, And don't have any kids yourself.
Rotelement This Be The Verse They fuck you up, your mum and dad. They may not mean to, but they do. They fill you with the faults they had And add some extra, just for you. Man hands on misery to man. It deepens like a coastal shelf. Get out as early as you can, And don't have any kids yourself.
Ett XML- dokument kan vara välformat eller giltigt
Välformad XML Versaler / gemener Minst ett element Alltid ett rotelement Elementen bäddas in i strikt hierarkiska strukturer (OHCO) – tänk träd och filstrukturer Elementnamnen i start- och slutmärke matchar varandra Attributnamn förekommer blott en gång i startmärket Attributvärden inom citattecken Attributvärden refererar inte till externa entiteter (annat än till DTD:n) Entiteter deklareras
Välformad XML Philip Larkin
Giltig XML En välformad XML-fil som använder en dokumentypsdeklaration för att referera till en DTD och sedan följer denna DTD
Dokumenttypsdeklaration referens till rotelementet TEI.2 publik identifierare + backup referens till en särskild dtd-fil med deklarationer av TEI-dokumentets element, attribut och entiteter
En simpel DTD Philip Larkin DTD:
Innehållsmodellen #PCDATA EMPTY andra element blandat innehåll
Notation i DTD:n Se övningsmaterialet, bl.a. en bilaga
Verktyg Kommersiella redigeringsverktyg ”Fria” verktyg –Anteckningar (ingen validator) –JEdit (validator) –Emacs m fl MS IE Explorer (parsern ”validerar”)
Some images are courtesy of Edward Vanhoutte