2 Introductie HTML 4

Inhoud

  1. Wat is het World Wide Web?
    1. Introductie URI's
    2. Fragment identificatie
    3. Relatieve URI's
  2. Wat is HTML?
    1. Een korte geschiedenis van HTML
  3. HTML 4
    1. Internationalisatie
    2. Toegankelijkheid
    3. Tabellen
    4. Samengestelde documenten
    5. Style sheets
    6. Scripting
    7. Afdrukken
  4. Documenten schrijven met HTML 4
    1. Gescheiden structuur en presentatie
    2. Overweeg universele toegankelijkheid tot het web
    3. Documentweergave versnellen met incrementele opbouw

2.1 Wat is het World Wide Web?

Het World Wide Web (Web) is een netwerk van informatiebronnen. Het Web is gebaseerd op drie mechanismen die deze bronnen gemakkelijk ter beschikking stellen tot het grootst mogelijk publiek:

  1. Een uniform naamschema om bronnen te vinden op het Web (zoals URI's).
  2. Protocollen om toegang te krijgen tot de bronnen op het Web (zoals HTTP).
  3. Hypertext om gemakkelijk te kunnen navigeren tussen bronnen (zoals HTML).

De banden tussen deze drie mechanismen worden duidelijk in deze specificatie.

2.1.1 Introductie URI's

Elke bron beschikbaar op het web -- HTML document, figuur, video clip, programma, enz. -- heeft een adres dat gecodeerd kan worden door een Universal Resource Identifier, of "URI".

URI's bestaan uit drie stukken:

  1. Het naamschema van het mechanisme dat gebruikt wordt om toegang te krijgen tot de bron.
  2. De naam van de machine die bron ter beschikking stelt.
  3. De naam van de bron zelf wanneer er een "path" gegeven is.

Bekijk als voorbeeld de URI die de Technical Reports pagina van het W3C geeft:

   http://www.w3.org/TR

Deze URI kan als volgt gelezen worden: Er is een document beschikbaar via het HTTP protocol (zie [RFC2616]), dat zich bevindt op de machine www.w3.org, toegankelijk via het path "/TR". Andere verwijzingen in een HTML document kunnen ook "mailto" voor email en "ftp" voor FTP zijn.

Hier is een ander voorbeeld van een URI. Deze URI refereert naar een mailbox van een gebruiker:

   ...Dit is tekst...
   Voor alle commentaar, zend email naar
   <A href="mailto:jan@ergens.com">Jan </A>.

Nota. De meeste lezers zijn bekend met de term "URL" en niet met de term "URI". URL's vormen een subset van het meer algemene URI naamschema.

2.1.2 Fragment identiteiten

Sommige URI's verwijzen naar een locatie binnen een bron. Deze soort van URI's eindigen met "#" gevolgd door een anker identiteit (de fragment identiteit genoemd). Hier is een voorbeeld van een URI die verwijst naar een anker sectie_2:

http://ergens.com/html/top.html#sectie_2

2.1.3 Relatieve URI's

Een relatieve URI bevat geen naamschema informatie. Het path verwijst gewoonlijk naar een bron op dezelfde machine als het huidige document. Relatieve URI's kunnen relatieve path componenten bevatten (zoals: ".." wat betekent een niveau omhoog in de hierarchie die gedefinieerd wordt door het path), en kunnen fragment identificatie bevatten.

Relatieve URI's worden ontbonden in volledige URI's wanneer een basis URI gebruikt wordt. Als voorbeeld van relatieve URI afspraken veronderstellen we als basis URI "http://www.acme.com/support/intro.html". De relatieve URI in de volgende opmaak van een hypertext link:

   <A href="leveranciers.html">Leveranciers</A>

wordt ontbonden tot de volledige URI "http://www.acme.com/support/leveranciers.html", terwijl de relatieve URI de opmaak voor de volgende figuur

   <IMG src="../icons/logo.gif" alt="logo">

ontbonden wordt tot de volledige URI "http://www.acme.com/icons/logo.gif".

In HTML worden URI's gebruikt om:

Controleer het deel over het URI type voor meer informatie over URI's.

2.2 Wat is HTML?

Om informatie wereldwijd te verspreiden heeft men een universeel verstaanbare taal nodig. Een soort "moedertaal om te publiceren" dat door alle computers kan begrepen worden. De publiceertaal die gebruikt wordt op het World Wide Web is HTML (van HyperText Markup Language).

HTML geeft auteurs de mogelijkheid om:

2.2.1 Een korte geschiedenis van HTML

HTML was oorspronkelijk onwikkeld door Tim Berners-Lee toen hij op CERN, werkte. Het werd gepopulariseerd door de Mosaic browser die ontwikkeld werd op NCSA. In de jaren 1990 groeide het uit met de explosieve groei van het Web. Gedurende deze tijd is HTML uitgebreid op verschillende manieren. Het Web hang af van Web pagina schrijvers en verkopers die dezelfde conventies voor HTML volgen. Dit vormde een motivatie voor gezamelijk werk aan de specificaties van HTML.

HTML 2.0 (November 1995, bekijk [RFC1866]) werd ontwikkeld onder het toeziend oog van de Internet Engineering Task Force (IETF) om algemene praktijken van eind 1994 in afspraken te gieten. (coderen) HTML+ (1993) en HTML 3.0 (1995, bekijk [HTML30]) stelden veel rijkere versies van HTML voor. Ondanks het uitblijven van een consensus in standaarden, leidden deze drafts tot het aanvaarden van een aantal nieuwe kenmerken. De inspanningen van de World Wide Web Consortium's HTML Working Group om de praktijk eind 1996 te coderen leidde tot HTML 3.2 (Januari 1997, bekijk [HTML32]). Wijzigingen vanuit HTML 3.2 worden samengevat in Appendix A.

De meeste mensen zijn het eens dat HTML documenten goed zouden moeten werken tussen verschillende browsers en platformen. Toepasbaarheid bekomen verlaagd de kosten voor content providers omdat ze dan slechts één versie van een document moeten ontwerpen. Als de moeite hiervoor niet gedaan wordt, dan is er een groot risico dat het Web zal evolueren in een klassenwereld van incompatibele formaten, waardoor uiteindelijk de commerciële mogelijkheden van het Web voor alle deelnemers verloren gaan.

Elke versie van HTML heeft geprobeerd om een grotere consensus te reflecteren tussen de industriële spelers in het veld. Zo wordt de investering die gedaan werd door de content providers niet verkwist en hun documenten zullen niet onleesbaar worden in een korte tijdsspanne.

HTML werd ontwikkeld met de visie dat alle mogelijke toestellen de informatie van het web moeten kunnen gebruiken: PC's met grafische displays van variabele resolutie en kleurdiepte, draagbare telefoons, hand held devices, toestellen voor spraak als output en input, computers met hoge of lage bandbreedte en zo verder.

2.3 HTML 4

HTML 4 breidt HTML uit met mechanismen voor style sheets, scripting, frames, embedding van objecten, verbeterde ondersteuning voor rechts naar links en gemixte richting van tekst, rijkere tabellen, en verbeteringen aan formulieren, verbeterde toegang voor mensen met een handicap.

HTML 4.01 is een revisie van HTML 4.0 die een aantal fouten corrigeert en die een aantal veranderingen doorvoert sinds de vorige revisie.

2.3.1 Internationalisatie

Deze versie van HTML is ontwikkeld met de hulp van experts in internationalisatie, zodat documenten geschreven kunnen worden in elke taal en gemakkelijk de wereld rond getransporteerd kunnen worden. Dit werd gerealiseerd door het opnemen van [RFC2070], welk de internationalisatie van HTML voor zijn rekening neemt.

Een belangrijke stap was het aanvaarden van de ISO/IEC:10646 standaard (bekijk [ISO10646]) als de document karakterset voor HTML. Dit is de meest inclusieve standaard ter wereld die zich bezig houdt met de representatie van internationale karakters, tekst richting, punctuatie, en andere wereld-taal-problemen.

HTML biedt nu meer ondersteuning voor diverse menselijke talen binnen een document. Dit laat een meer effectieve indexering van documenten toe voor search engines, hogere kwaliteit typografie, betere text-to-speech omzetting, betere afbreking (koppelteken), enz.

2.3.2 Toegankelijkheid

Wanneer de Web gemeenschap groeit, dan diversifiëren zijn leden in hun mogelijkheden en kunnen. Het is cruciaal dat de onderliggende technologieën aangepast zijn aan hun specifieke noden. HTML werd ontwikkeld om Web pagina's meer toegankelijk te maken voor diegenen met fysieke beperkingen. HTML 4.01 ontwikkelingen geïnspireerd door bezorgdheid over toegankelijkheid bevatten:

Auteurs die pagina's ontwerpen met toegankelijkheidsuitgaves in gedachte zullen niet alleen de zegen van de accessibility community krijgen, maar zullen ook op andere manieren genieten van hun werk: goed ontworpen HTML documenten die structuur en presentatie gescheiden houden zullen makkelijker aan te passen zijn naar nieuwe technologiën.

Nota. Voor meer informatie over ontwerpen van toegankelijke HTML documenten raadpleeg [WAI].

2.3.3 Tabellen

Het nieuwe tabel model in HTML is gebaseerd op [RFC1942]. Auteurs hebben nu meer controle over structuur en layout (zoals kolomgroepen). De mogelijkheid om kolombreedtes aan te raden geeft de User Agents (browsers) de mogelijkheid om de tabeldata incrementeel weer te geven (wanneer het binnenkomt) eerder dan wachten op de hele tabel voordat het weergegeven wordt.

Nota. Op het moment van schrijven vertrouwen verschillende HTML-tools uitgebreid op tabellen om pagina's te structureren. Hierdoor kunnen gemakkelijk toegankelijkheidsproblemen ontstaan.

2.3.4 Samengestelde documenten

HTML biedt nu een standaard mechanisme om generic media objects (algemene media objecten) en toepassingen in HTML documenten op te nemen. Het OBJECT element (samen met zijn meer specifieke voorouder elementen IMG en APPLET) biedt een mechanisme om figuren, video, geluid, wiskunde, gespecialiseerde toepassingen en andere objecten op te nemen in een document. Het laat de auteurs eveneens toe om een hierarchie van alternatieve voorstellingswijzen te gebruiken voor gebruikers (en browsers) die een specifieke voorstelling niet ondersteunen.

2.3.5 Style sheets

Style sheets vereenvoudigen HTML opmaak ontheffen HTML van de verantwoordelijkheid van de presentatie. Ze geven zowel de auteurs als de gebruikers controle over de presentatie van documenten -- lettertype informatie, uitlijning, kleuren, enz.

Style informatie kan gespecificeerd worden voor individuele elementen of groepen van elementen. Style informatie kan gespecificeerd worden in een HTML document of in externe style sheets.

Het mechanisme om een style sheet te associëren met een document is afhankelijk van de style sheet taal.

Voor de komst van style sheets hadden auteurs beperkte controle over weergavewijze. HTML 3.2 had een aantal attributen en elementen die controle boden over uitlijning, lettergrootte en tekstkleur. Auteurs gebruikten tabellen en figuren om pagina's te layouten. De relatief lange tijd die gebruikers nodig hebben om hun browsers te upgraden heeft tot gevolg dat deze praktijk nog een tijd gebruikt zullen worden. Mits style sheets krachtigere presenatiemechanismen krijgen, zal het World Wide Web Consortium uiteindelijk de presentatie elementen en attributen uit HTML halen. De elementen en attributen die risico lopen om uit de specifiecatie gehaald te worden worden nu als "deprecated" (=afgeraden) gemarkeerd. Deze elementen en attributen worden steeds vergezeld van voorbeelden hoe hetzelfde effect met andere elementen of style sheets bekomen kan worden.

2.3.6 Scripting

Via scripts kunnen auteurs dynamische Web pagina's maken (zoals "smart forms" die reageren wanneer gebruikers ze invullen) en kunnen ze HTML gebruiken als middel om genetwerkte toepassingen te maken.

De mechanismen die voorzien zijn om scripts op te nemen in een HTML document zijn onafhankelijk van de scripting taal.

2.3.7 Afdrukken

Soms zullen auteurs het voor de gebruikers gemakkelijk maken om meer af te drukken dan enkel het huidige document. Wanneer documenten een deel uitmaken van een groter werk, dan kunnen de relaties ertussen omschreven worden door het HTML LINK element of door W3C's Resource Description Language (RDF) (bekijk [RDF10]).

2.4 Documenten schrijven met HTML 4

We raden aan dat auteurs en programmeurs de volgende algemene principes volgen wanneer ze werken met HTML 4.

2.4.1 Gescheiden structuur en presentatie

HTML heeft zijn wortels in SGML welke altijd een taal was voor de specificatie van structurele opmaak. Door het groeien van HTML, zijn meer en meer van de essentiële presentatie elementen en attributen vervangen door andere mechanismen, in het bijzonder door style sheets. Ervaring heeft uitgewezen dat het scheiden van de structuur van een document van de presentatie aspecten ervan de kosten om een breed gebied van platforms, media, enz. te ondersteunen verlaagd en dat documenten reviseren gemakkelijker wordt.

2.4.2 Overweeg universele toegankelijkheid tot het Web

Om het Web toegankelijk te maken voor iedereen, in het bijzonder diegenen met beperkingen, zouden auteurs moeten overwegen hoe hun documenten weergegeven kunnen worden op een variëteit van platforms: spraak-gebaseerde browsers, braille-lezers, enz. We raden niet aan dat auteurs hun creativiteit beperken, alleen dat ze andere weergavemogelijkheden overwegen in hun ontwerp. HTML biedt een aantal mechanismen om dit te doen (zoals het alt attribuut, het accesskey attribuut, enz.)

Verder zouden auteurs niet mogen vergeten dat hun documenten een afgelegen publiek kunnen bereiken met andere computer configuraties. Opdat documenten correct geïnterpreteerd kunnen worden zouden de auteurs in hun documenten informatie moeten opnemen over de natuurlijke taal en tekstrichting, hoe het document gecodeerd is, en andere zaken gerelateerd aan internationalisatie.

2.4.3 Documentweergave versnellen met incrementele opbouw

Door tabellen voorzichtig te ontwerpen en gebruik te maken van nieuwe eigenschappen van tabellen in HTML 4 kunnen auteurs de User Agents (browsers) helpen om documenten sneller weer te geven. Auteurs kunnen leren hoe tabellen voor incrementele weergave gemaakt moeten worden (bekijk het TABLE element). Programmeurs zouden de notities over tabellen in de appendix voor informatie over incrementele algoritmes kunnen bekijken.