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 !!!

 

Länkar med XML anknytning  

 

 

1999-11-09 Björn Norén