Kort beskrivning av olika verktyg och standarder.
SGML Standard Generalized Markup Language.
SGML är en ISO standard för elektronisk dokument överföring, arkivering och processing. Hjärtat i SGML är strukturen i dokumenten, SGML ignorerar sid eller skärmlayout och koncentrerar sig helt på strukturen. Strukturen på ett dokument är informellt definierat som en samling element i dokumentet och relationerna mellan dessa element. Exempelvis är en title, en abstract , keywords, sections and paragraphs de olika elementen i en rapport. Dessa element ligger i en hierarki där rotelement som sections konstrueras av element som title och paragraphs.
SGML ligger som grund för både HTML och XML.
För att kunna publicera information som blir tillgänglig för alla, så måste man ha ett universellt språk. Språket som används för att publicera på WWW heter HTML (Hyper Text Markup Language).
HTML ger utvecklarna möjlighet att skapa "online-dokument" som kan innehålla text, tabeller, listor, bilder, fotografier etc. Designa formulär för att kunna ta emot t.ex. ordrar, göra hyperlänkar till andra online-dokument. Inkludera kalkylart, videoklipp, ljudklipp och andra applikationer direkt in i dokumentet.
De flesta personer håller med om att HTML-dokument måste kunna fungera på olika sorters browsar. Det skulle kosta alldeles för mycket pengar och tid om det skulle finnas olika versioner av HTML för olika browsar. Därför har HTML utvecklats med visionen att alla olika apparater skall kunna använda informationen på webben: PC med skärmar med olika sorters upplösning och färgljup, mobiltelefoner, apparater för att ta emot och generera prat, datorer med hög eller låg bandvidd osv.
HTML 4.0 utökar HTML med mekanismer för style sheets, scripting, frames, inbäddade objekt, utökad support för höger till vänster lokering av text, mer avancerade tabeller och förbättrade möjligheter för människor med handikapp.
Ett viktigt steg i utvecklingen av HTML 4.0 har varit att adoptera in ISO/IEC:10646- standard. Denna standard är världens mest omfattande när det gäller representation av tecken, punktering, mm. Detta bidrar till att HTML nu erbjuder support för olika språk inom ett dokument.
Man uppmuntrar vidare att man använder style sheets (hellre än tabeller) för att få layout-effekter såsom fontfärger, placering mm. Utvecklaren får nu större kontroll över strukturen på layouten.
Ett objektelement (tillsammans med elementen IMG och APPLET) tillgodoser en mekanism för att inkludera ljud, bilder, video, uträkningar, specialiserade applikationer till dokumentet.
Genom script kan utvecklarna göra "smarta formulär" som reagerar när användarna fyller i information. Scriping tillåter också utvecklarna att designa dynamiska webbsidor.
En webb-sida är i dag mestadels statisk, den skulle lika gärna kunna vara tryckt på papper. Detta vill både Microsoft och Netscape ändra på, och lösningen är då något som de kallar dynamisk HTML. Men som vanligt talar de om olika saker.
För att HTML skulle vara så enkelt som möjligt innehåller det ingen information om layout, typsnitt och liknande, utan detta sköts av browsern. Detta gick bra så länge det bara handlade om att presentera dokument. Men idag är webb-sidor skyltfönster mot omvärlden för många företag, och de vill kunna bestämma hur informationen skall presenteras, detta skall inte avgöras hur användaren har ställt in sin browser. Det är dessa problem som skall avhjälpas med DHTML. Man skall kunna skapa interaktiva, föränderliga webb-sidor genom att manipulera sidelementen med script.
Principen är den samma som för den ursprungliga HTML-koden, och även programspråket Java: allt arbete sker på klienten, inte på servern. Detta innebär att all information som behövs för att utföra t.ex. animeringar finns i själva HTML-koden. Trots att innehållet på webbsidan rör sig och förändras behöver alltså inte mer data laddas ner från nätet, vilket ökar hastigheten och minskar belastningen på nätet.
Detta åstadkoms med hjälp av en antal tekniker som inte är speciellt nya. Viktigast av dessa är Cascading Style Sheets, CSS. Läs mer om detta nedan.
Allt detta har man kunnat göra tidigare på ett eller annat sätt, till exempel med Javaprogram. Det som är nytt är att dessa funktioner har integrerats som en naturlig del i HTML. Detta innebär att allt som ligger på webbsidan kan användas dynamiskt.
Ett vanligt problem med vanlig HTML är att den som gör en webbsida inte kan veta hur stort fönster besökaren har på sin browser. Gör man sidan för bred måste man scrolla runt för att se hela sidan. Detta blir naturligtvis ett större problem om positionen på ett objekt kan bestämmas.
I DHTML har detta lösts på ett ganska osmidigt sätt med var som kallas Canvas Mode. I CM öppnas ett separat fönster för webbsidan, som är tänkt att fylla upp hela skärmen. Problem här är att webbmakaren inte kan veta vilken grafikupplösning besökaren har på sin skärm. Ett alternativ till detta är att man först kommer till en startsida där användaren själv kan välja vilken storlek fönstret skall ha.
Den som vill börja med dynamisk HTML nu kanske inte får det så lätt. Både Netscape Communicator och Internet Explorer 4.0 har funktioner för DHTML, men den är bara delvis gemensam. (olika syntax för att komma år samma saker, stöd för olika typsnitt och händelsehantering) Detta kräver dubbla uppsättningar instruktioner för att få webbsidorna att fungera. Allt detta är dock främst övergångsproblem. W3C har lovat en standard för DHTML, som i sin tur Netscape och Microsoft lovat att följa
DHTML kan mycket väl bli tekniken som knuffar bort glada amatörer från nätet eftersom det kommer att krävas regelrätta programeringskunskaper.
Tänk dig att du öppnar ett textdokument, editerar några rader, och får hela webbsidan redesignad av sig själv. Eller tänk dig att du gör webbsidor online med mycket grafik, fonter och marginaler och överlappande bilder utlagda med precis kontroll som inte tar mer än 10K i utrymme. Detta är världen av Cascading Stylesheets !
I HTML är det enorma begränsningar med hur man kan placera ut bilder, hur sidorna ser ut med olika browsers mm. Den enkla strukturen som HTML tillåter går säkert jättebra när det gäller att skriva akademiska papers, men den passar helt enkelt inte in i världen med elektroniska publikationer och kommersiell kommunikation.
Varför inte göra alla glada genom att skapa ett strukturerat språk som innehåller kraftfull design-kapabilitet ? Varför inte göra dem separat och sen bara integrera dem när någon tittar in på din sida ? Tanken bakom stylesheets ligger bakom dessa frågor.
Egentligen är det ganska enkelt. Man skriver bara ett vanligt standard HTML dokument. Efter det skriver du ett separat stylesheet som talar om för browsern hur den skall "render" ditt dokument. Du säger tillexempel till den att paragraferna skall vara 12 punkters Times Roman med 1,5 radavstånd och att titeln skall vara grön osv. Sen i början på ditt HTML dokument så sätter du ut en pekare till stylesheetet, sen är det bara att ladda upp dessa två till servern.
Fördelarna med att separera struktur och style i ett dokument skall nu börja visa sig. Du kan ha flera HTML dokument pekande till samma stylesheet, du kan effektivt ändra utseendet på hela webbsajten. Man kan även han flera stylesheets och ordna dessa hierarkiskt.
Snart kommer också en ny variant som kallas HTML Layout Control. Här har man möjlighet till tvådimensionell layout.
XML Extensible Markup Language.
Inledning
HTML är ett språk som är bra på att beskriva för en browser hur man ska presentera data på en sida. Något som HTML inte kan göra är att ge information om vad datan egentligen betyder, dvs beskriva metadata. XML handlar egentligen om metadata. Precis som HTML så består XML av taggar och deklarationer men istället för att koncentrera på att formatera information på en sida så fokuserar XML på att ge information om datan själv och hur den hänger ihop med andra data.
Kortsiktigt sett så ger den en direkt möjlighet för databasdriven intranet utveckling. Inom stora organisationer är det ju ofta så att man har många olika avdelningar med olika krav på vilken information som ska hämtas ur samma databas. Exempelvis finns det ju försäljningsavd, ekonomiavd, lager, marknadsföring osv.
Genom att använda XML kan man skräddarsy den efterfrågade informationen så att den blir mest användbar för den personen som jobbar med datan. När datan har skickats kan den rekompileras utan att behöva ha accessa servern igen. Till exempel kanske försäljningspersonalen vill se resultat per region istället för per person. XML kommer också att göra det lättare med informationsdelning mellan företagen.
Skaparna av XML ville göra mer än att bara hjälpa intranetutvecklingen,. De hade visionen om en de facto data beskrivnings standard för stora grupper med gemensamma databehov (data communities). Till exempel så jobbar doktorer med unika data som har en annorlunda inbördes relation än andra typer av information. XML ger möjligheten att utveckla medicinska standard modeller (X-RAY, INSURANCETYPE, INSULINELEVEL) som gör det möjligt att dela information mellan läkare, försäkringsbolag mm.
Genom att ge en standard för hur man karakteriserar data istället för att fastställa karakteriseringen själva tillåter XML arkitekterna att data communities växer fram organiskt istället för genom en kommitté. Detta åstadkommer genom DTD (document type definition). En DTD ger möjligheten att specificera alla de karakteristiska i de dataelement som man behöver använda sig av. En DTD kan göras offentlig och möjlig för vem som helst att använda sig av eller så kan de finnas bara inom en organisations privata server. Exempelvis så har mjukvaru och internetföretag ett förslag på en DTD för att distribuera mjukvara och uppdateringar över nätet.
Eftersom XML endast specificerar karaktäristika om data och inte bara visar den, behövs att man skriver Style sheets för att använda det.
XML är en förenkling av SGML och det designades för att behålla de mest användbara delarna av SGML. SGML kräver att strukturerade dokument refererar till ett DTD för att vara "valid", XML tillåter att "well formed" data kan levereras utan ett DTD.
Vilka är fördelarna med att använda XML med HTML?
XML levererar data för lokal behandling. Data som levereras till arbetsstationen är tillgänglig för lokal behandling. Datan kan läsas av en browser och sedan levereras till en lokal applikation för vidare beskådan eller bearbetning eller så kan datan manipuleras genom scripts eller andra programmeringsspråk genom att använda XML objekt modell.
XML ger användarna en rättvisande bild av strukturerad data. Data som levereras till en arbetsstation kan presenteras på många olika sätt. Lokala data kan presenteras på det sätt som är bäst för användaren, dynamiskt, baserat på användarreferenser, konfiguration osv.
XML integrerar strukturerade data från multipla källor. Agenter kommer att användas för att integrera data från back-end databaser och andra applikationer, på en mitten-lager (middle tier) server, och göra denna data tillgänglig för leverans till arbetsstation eller till andra servrar för fortsatt aggregation, processing och distribution.
XML beskriver data genom ett stort antal olika applikationer. Genom att XML är Extensible (utökningsbart), kan det användas för att beskriva data som finns i ett antal olika applikationer, från att beskriva samlingar med webb-sidor till dataregister. Eftersom datan är självbeskrivande, kan data tas emot och processas utan att man har kunskaper om sändarapplikationen.
XML förbättrar prestandan genom granular (bitvis) uppdatering. Med "bitvis" uppdatering behöver bara det förändrade elementet sändas från servern till klienten.
Var kommer XML att användas på nätet ?
Eftersom XML beskriver data på ett konsistent, självbeskrivande, öppna format, Kan XML potentiellt användas var som helst på nätet där det finns behov av informationsutbyte och leverans. I början kommer det nog mest att användas till att beskriva information om HTML sidor.
Eftersom XML beskriver data själv kommer det att bli användbart för ekonomiska transaktioner, nyhetsuppdateringar, väderinformation, patientjournaler eller lagliga bibliotek på datorn.
Vilka är relationerna mellan HTML, Dynamisk HTML och XML?
HTML (och CSS) används tillsammans föra att skapa och presentera hyperlänkade sidor.
Dynamisk HTML gör genom Document Object Model alla element i HTML tillgängliga genom språk-oberoende scripting och andra programmerings språk. Genom detta ökas dramatiskt Client sidans interaktivitet utan vidare förfrågningar till servern. Sidans objekt modell tillåter att vilken del som helst av dess innehåll (tillägg, borttagningar och rörelse inkluderat) att ändras dynamiskt
Genom att lägga till XML för strukturerade data, har utvecklare de tekniker som krävs för att bygga nästa generations webbapplikationer. Med dessa verktyg kan de leverera strukturerad data till arbetsstationerna, bearbeta datan genom objekt modellen, skapa formateringsregler för datan genom XSL (extensible style language) och presentera datan med HTML.
Extensible Stylesheets Language (XSL) är en viktig medlem i XML-familjen och är baserad på DSSSL. Den är designad för att formatera XML data och dokuments på nätet. Antagligen kommer CSS att användas för att visa enkelt strukturerade XML dokument. Hur som helst så har XSL större funktionalitet än CSS och kommer därför att bli mer kraftfull när det gäller strukturerad data.
XML kräver XSL eftersom CSS inte klarar av de nya funktioner som XML tillför.
DSSSL Document Style Semantics and Specification Language.
DSSSL ger en standardiserad syntax och standardiserad semantiks för att specificera style och layout för SGML dokument eller för SGML dokument fragment. Genom att använda DSSSL kan man specificera style för ett element eller attribut.
Ur DSSSL har utsprungit CSS och XSL.
Streaming Audio Video
Är en teknik för att skicka data så den kan bli processad som en stadig och kontinuerlig ström. Streaming teknologier kommer att bli mycket viktiga i internets framtid och tillväxt eftersom de flesta användare har inte tillräckligt snabba anslutningar för att ladda ner stora multimediafiler snabbt. Med streaming, kan klientbrowsern eller plug-in börja att visa data innan hela filen har blivit nerladdad.
För att detta skall fungera måste klientsidan som tar emot datan kunna samla datan och sen sända den som en ström till applikationen som processar datan och konverterar den till ljud eller bilder. Detta betyder att om streaming-klienten tar emot data snabbare än vad som behövs, så måste den spara överflödiga datan i en buffert. Om inte datan kommer tillräckligt snabbt, kommer inte presentationen av datan att vara slät.
Det kommer flera olika teknologier inom streamingen men den som är de facto standard på Internet är Progtressive Network´s Real Audio.
Tv är ett rikt och dynamiskt medium men ändå ett passivt medium. Tittarna har liten eller ingen möjlighet att interagera med eller modifiera utsändningen som fungerar som en opersonlig one-way distribution av information från distributören till tittaren. Internet däremot sänder sitt innehåll till individen som sedan kan svara på innehållet på ett antal olika sätt, exempelvis genom att välja från en lista med alternativ, fylla i formulär, följa skilda länkar, spela interaktiva spel eller söka på specifika ämnen.
Sammangåendet mellan TV och internet i ett nytt medium började när WebTv Networks, inc, erbjöd den första gångbara internet terminalen till konsumenterna i September 1996. Dessa terminaler använder de existerande teknologierna i Tv och telefonledningarna för att tittaren lätt ska kunna växla mellan TV och Internet.
Om man tänker på de möjligheter som öppnar sig genom det faktum att alla de som inte har en dator (faktiskt ganska många) helt plötsligt finns med som potentiella surfare, blir man lätt alldeles snurrig. Det kanske till och med blir så att alla till slut "måste" surfa för att kolla sportresultaten på nätet istället för som nu på text tv.