Kortfattat om XML
(Gammalt men får ligga kvar)
XML (Extensible Markup Language) är ett av W3C
standardiserat dokumentbeskrivningsspråk i likhet med HTML. Både XML och HTML
är en delmängd av det mera komplicerade SGML SGML (Sounds Great – Maybe Later).
HTML använder standardiserade taggar. XML använder
användardefinierade taggar vilket gör att en vanlig web-bläddrare inte utan
vidare förstår dem. Med XML går man över från ostrukterade dokument till
strukturerade dokument så att det går att använda maskinell tolkning av
informationen.
Med HTML kan ordernummer skrivas som <B>1234</B>
vilket inte kan tolkas av en dator som ordernummer. Med XML skrivs samma sak
<ordernummer>1234</ordernummer>. Detta kan tolkas av en dator.
XML används både för innehåll (Content) och Handel
(Commerce).
XML används för:
·
Samverkan mellan applikationer.
·
Återanvändning för att nyttja befintliga data på
nya sätt.
·
Specialisering för att skräddarsy innehåll och
presentationsform (olika format, innehåll eller struktur till olika mottagare).
Informationskällan kan vara relativt stabil men
informationen kan presenteras på många olika sätt. Jmf, skafferiets innehåll
kan användas i många recept.
XML är ett språk eller egentligen ett hjälpmedel
för att generera nya språk.
XML är inte ett protokoll utan består bara av en
textmassa som kan överföras mha olika protokoll (t ex HTTP, FTP, DCOM, MSMQ,
ADO, SMTP i Microsoft BizTalk).
Enligt Meta Group är XML är en banbrytande teknik
för standardiserat datautbyte mellan applikationer och kommer att få samma
betydelse som ASCII. D.v.s. det kommer inte att vara något man talar om – det
bara finns.
XML används vid asynkrona meddelandebaserade löst
kopplade applikationer B2B (=BTB = Business To Business) och för B2C (=Business
to Consumer). Det är enklare än ASN.1, Edifact, ANSI X12, GDMO, etc.
XML tolererar ett visst mått av inkompabilitet
mellan applikationer. För att två program ska kunna utbyta XML dokument krävs
att de förstår samma vokabulär, d.v.s. kunna tolka samma uppsättning
taggar. Därför bedrivs ett intensivt
standardiseringsarbete med att definiera vokabulärer i olika branscher för
olika behov.
Taggar kan definieras med en mall, en DTD
(Document Type Declaration/Definition). Den kan jämföras med ett databasschema
uttryckt i SQL DDL. Tabellerna kan jämföras med “DOCTYPE” och kolumnerna med “ELEMENT”. De sistnämda kan vara en
lista (“ATTLIST”).
DTDs används för kontrakt över överenskommelser om
informationsutbyte. Många organisationer arbetar med att standardisera eller
transformera existerande standarder till DTDs. DTD lagras sedan i bibliotek. Se
BizTalk, Rosette, m.f. Dokumentstrukturen är hierarkisk.
Det finns tre typer av XML dokument:
XML beskriver inte datas semantik mer än ett
databasshema gör. För att uttrycka semantiken behövs konventionell modellering
och dataadministration med hjälp av verktyg som CASE-verktyg och Repositories.
För att maskinellt tolka XML dokument krävs
API’er, t ex DOM (The Document Object Model) eller SAX (Simple API for XML).
W3C XML Schema Working Group arbetar med att
utvidga DTDs uttrycksfullhet med hjälp av ett ”XML Schema”. Varken XML, Edifact
eller SQL är tillräckligt för att uttrycka datas semantik. För att hålla
ordning på information krävs gamla etablerade arbetssätt som t ex datamodellering.
De stora databastillverkarna levererar XML interface
så att data kan utbytas i XML. De flesta Message Brokers klarar XML. De flesta
middleware leverantörerna lovar XML support. Microsofts nya BizTalk ramverk
innehåller XML.
RDF är två specifikationer: “RDF Model and Syntax”
är en W3C rekommendation och “RDF Schema” en kommande W3C rekommendation. RDF
är kraftfullt men komplext och kommer därför antagligen inte att användas i
någon större utsräckning för XML applikationer.
XML är bara en del av lösningen – inte hela
lösningen.
XML är bara ett språk och en massa Hype!!!
Go On and Do It !!!
1999-11-09 Björn Norén