1. Introductie
2. Wat zijn de standaarden?
2.1 W3C Standaarden
2.1.1 Wat is het W3C?
2.1.2 Wat doen ze?
2.1.3 Wat zijn de W3C standaarden?
2.1.3.1 HTML 4.0
2.1.3.2 XML 1.0
2.1.3.3 XHTML 1.0, 1.1, XHTML Modularisatie
2.1.3.4 CSS - Cascading Stylesheets
2.1.3.5 DOM
2.2 ECMA Standaarden?
2.2.1 Wat is de ECMA?
2.2.2 Wat doen ze?
2.2.3 Wat zijn de ECMA standaarden?
2.2.3.1 ECMAScript
3. Wat zijn de voordelen van het gebruik van Standaarden?
3.1 Toegankelijkheid
3.1.1 Voor software/machines
3.1.2 Voor mensen
3.2 Stabiliteit
4. Conclusies
Tim Berners-Lee’s droom over zijn uitvinding, het Wereld Wijde Web, is een gemeenschappelijke ruimte waar bezoekers informatie kunnen delen om samen te werken, te spelen en elkaar te leren kennen (The World Wide Web, A very short personal history). Als web ontwikkelaars, die commerciële, sociale en educatieve websites maken, maken we deze droom tot werkelijkheid.
Maar in deze periode van enorme groei heeft het Web begeleiding nodig om zijn potentie volledig tot wasdom te laten komen. Web standaarden zijn deze begeleiding. Deze standaarden helpen om te verzekeren dat iedereen toegang heeft tot de informatie die we geven, en ze maken web ontwikkeling ook nog eens sneller en leuker.
Toepassen van de standaarden maakt het voor mensen met speciale behoeften gemakkelijker om het web te gebruiken. Blinde mensen kunnnen de computer de webpagina's laten voorlezen. Mensen met slechte ogen kunnen hun pagina's anders laten indelen en uitvergroten om makkelijker te kunnen lezen. En mensen die kleine zak-apparaten gebruiken kunnen net zo makkelijk over het web surfen als mensen met super-de-luxe werkstations.
Zoals we zullen uitleggen, er zijn vele praktische redenen voor webontwikkelaars om zich bezig te houden met web standaarden. Zoekmachines kunnen bijvoorbeeld hun werk beter doen bij het indexeren van sites. Het gebruik van browser-specifieke codering verdubbelt of verdrievoudigt veelal het werk om webpagina's te maken, en is verre van optimaal voor nieuwe media. Dit wordt er alleen maar erger op zonder de degelijke richtlijnen van web standaarden.
Sommige mensen vrezen dat standaarden beperkend zijn. In werkelijkheid nemen ze juist veel van het saaie werk in web ontwikkeling weg, en bieden zij ontwikkelaars meer tijd en flexibibiliteit om echt creatief te zijn. Ze zijn zijn zowel gereed voor toekomstige ontwikklingen als aangepast aan oudere technologie.
Veel toepassingen van het Web, waaronder enkele waar vandaag alleen nog maar over wordt gedroomd, zullen onbruikbaar of veel moeilijker te gebruiken zijn zonder wijdverbreide toepassing van web standaarden. Tegenwoordig zijn er systemen en software die vrij algemeen, bijna universeel worden gebruikt, maar wie weet wat de toekomst zal brengen?
Standaarden hebben zo veel te bieden dat wij van het Web Standaarden Project (WaSP) het nodig vinden om jou te helpen er meer over te leren. Dit document is daarvoor slechts een eerste begin; het geeft je een degelijk overzicht welke standaarden er zijn, wat ze doen, en waarom we er waarde aan zouden moeten hechten. Elke keer dat we een stukje van het Web bouwen, dragen we bij aan de gemeenschappelijk informatie ruimte die het Web is. We kunnen het verder uitbouwen, of we kunnen er ballast aan toevoegen die het uiteindelijk doet versplinteren. De keus is aan ons, de gevolgen zijn voor iedereen.
Het World Wide Web Consortium (W3C) [nl] is een internationaal samenwerkingsverband van bedrijven die "het Web leiden naar zijn volle potentie". Het wordt geleid door Tim Berners-Lee, de uitvinder van het Web. Sinds de oprichting in 1994, heeft het W3C meer dan 450 lid organisaties - waaronder Microsoft, America Online (het moederbedrijf van Netscape Communications), Apple Computer, Adobe, Macromedia, Sun Microsystems, en verscheidene andere producenten van hardware en software, kennis leveranciers, academische instellingen, en telecommunicatie bedrijven. Het Consortium is gevestigd bij drie onderzoeksinstellingen - MIT in de Verenigde Staten, INRIA in Frankrijk, en de Keio University in Japan.
Het W3C ontwikkelt open specificaties (feitelijk standaarden) om de onderlinge operationele samenwerking van web-gerelateerde producten te vergroten. W3C Aanbevelingen zijn ontwikkeld door werkgroepen samengesteld door de consortiumleden en daarbij genodigde experts. Werkgroepen bereiken algemene consensus van bedrijven en andere organisaties die webapplicaties maken, en schrijven Werk Concepten en Voorgestelde Aanbevelingen. Deze worden vervolgens beschikbaar gesteld aan de W3C leden en de directeur, voor de formele goedkeuring als W3C Aanbevelingen. Meer informatie over deze procedure en de herzieningsstappen kun je vinden op de W3C website.
HyperText Markup Language (HTML) is veelgebruikt op het Web voor het toevoegen van structuur aan tekstdocumenten. Browsers verwerken dergelijke documenten en geven deze structuur weer aan de gebruiker op een media-specifieke wijze. Zo geven visuele browsers het strong
element (<strong>
... </strong>
) weer als vette tekst, terwijl spraak-browsers die tekst extra nadruk geven bij het uitspreken ervan.
Met behulp van Cascading Style Sheets (CSS) kan de webauteur bepalen hoe structurele elementen worden weergegeven, in weerwil van de browser instellingen.
Voorbeeld van een gedeelte van een XML document |
---|
<rolodex> <kaartje> <naam>Bill Gates</naam> <email>[email protected]</email> </kaartje> <kaartje> <naam>Marc Andreesen</naam> <email>[email protected]</email> </kaartje> <kaartje> <naam>Jon S. von Tetzchner</naam> <email>[email protected]</email> </kaartje> </rolodex> |
Extensible Markup Language (XML) is een markup taal zoals HTML, maar in plaats van een eenduidige, vaste set van elementen, laat het je eigen elementen bepalen - of een set gebruiken die door iemand anders is gemaakt. Het is zelfs mogelijk om meerdere sets te gebruiken in een enkel document - door toepassing van XML namespaces.
Sommige toepassingen van XML, zoals XHTML en MathML, zijn al W3C Aanbevelingen. Andere zijn momenteel W3C Werk Concepten.
Stijlblad standaarden, zoals CSS en XSL, bieden vele mogelijkheden om te specificeren hoe XML elementen weergegeven moeten worden. Standaarden conformiteit voor directe weergave van XML in browsers is twijfelachtig, dus voor het presenteren van informatie aan mensen is de combinatie van HTML (of XHTML) en CSS-gestuurde opmaak de beste manier. XML wordt vandaag de dag meestal gebruikt voor communicatie tussen machines.
XML is flexibeler dan HTML, vooral vanwege de mogelijkheden om je eigen elementen toe te voegen en je eigen structuursystemen te maken. Dit maakt het een ideaal format voor de organisatie van grote hoeveelheden data - het wordt dan ook al door vele databases en zoekmachines gebruikt.
XHTML 1.0 is is een nieuwe omschrijving van HTML in de vorm van een XML toepassing. XHTML 1.0 komt voort uit het gedachtengoed van HTML 4.01, en zit technisch strakker in het pak onder invloed van XML.
XHTML zal in je browser hetzelfde worden weergegeven als het verwante HTML. Je zou XHTML willen gebruiken als er een kans is dat je je inhoud opnieuw moet bewerken, bijvoorbeeld om het naar een PDA te sturen; de strakkere XML regels maken automatische verwerking van XHTML veel gemakkelijker en goedkoper dan gewone HTML.
XHTML 1.0 heeft dit algemene gedachtengoed van HTML 4.01 overgenomen:
XHTML 1.0 gebruik ook het model van drie DTDs: Strict, Transitional, en Frameset. Dit model werd het eerst gebruikt in HTML 4.0 en werd overgenomen in HTML 4.01.
Enkele belangrijke technische gebruiken voor de toepassing van XML in XHTML zijn:
Voor sjablonen kun je terecht op deze website bij Learn > Templates
XHTML 1.1 bestaat uit drie basis onderdelen:
Je kunt op verschillende manieren een document in XHTML 1.1 schrijven. De eerste manier is met gerbuik van de openbare XHTML 1.1 DTD. Hierdoor wordt je werk extreem op structuur gericht omdat er vrijwel geen lay-out attributen meer zijn in XHTML 1.1. De scheiding van structuur en presentatie is hier vrijwel volledig, en al je presenteerwerk gaat in het stijlblad zitten.
Een andere manier van schrijven van XHTML 1.1 documenten is het gerbuiken van XHTML Modularisatie. Dat is het indelen met bekende componenten van HTML and XHTML (zoals text, tables, frames, forms) in te onderscheiden stukjes. Vervolgens kun je een eigen DTD schijven en daarin alleen de componenten gebruiken die je nodig hebt. Dit is uitbreidbaarheid in actie, waarbij kenmerkend is dat het jou als schrijver de mogelijkheid geeft om je markup op maat te maken.
The Ruby Annotatie is een speciale wijze om om te gaan met enkele Aziatische tekens. Ruby is in te delen bij het werk aan de mogelijkheden van Internationalisatie.
Cascading Style Sheets (CSS) is de toepassing voor het wijzigen van de verschijningsvorm van HTML of XML elementen, door stijlen toe te wijzen aan element typen, zelf verzonnen classes of individuele elementen.
Stijlbladen kunnen gebruikt worden om de lay-out van een hele website te omschrijven. Na de introductie van CSS heeft het W3C aanbevolen dat de lay-out specifieke opties uit HTML zouden moeten verdwijnen en worden vervangen door stijlbladen, met als doel een eenvoudiger en meer gestructureerd Wereld Wijd Web.
Het DOM reguleert hoe de volle kracht en interactiviteit van scripttalen (zoals ECMAScript, de standaard versie van JavaScript) gebruikt kan worden. (In programmeer termen, het Document Object Model (DOM) Level 1 is een Application Programming Interface (API) voor interactie met webpagina's.) Het geeft de scripttaal gemakkelijke toegang tot de structuur, inhoud en presentatie van een document dat is geschreven in talen als HTML en CSS.
Het DOM is toepasbaar op toekomstige verbeteringen van technologie; het maakt het mogelijk dat alle mogelijke scripttalen interactie hebben met welke taal ook maar in het document wordt gebruikt. Deze standaard maakt het niet alleen makkelijker om dynamische HTML te programmeren, maar het maakt ook de aanpassingen aan toekomstige Internettechnologie minder lastig.
De European Computer Manufacturers Association (ECMA) is een organisatie opgericht in 1961 met het doel te werken aan standaardisatie in operationele computers formats, waaronder programmeertalen en input/output codering.
De ECMA heeft is gevestigd in Geneve, Zwitserland, nabij de kantoren van de International Organization for Standardization (ISO) en de International Electrotechnical Commission (IEC). In 1994 is de naam van de organisatie gewijzigd in ECMA - European Association for Standardizing Information and Communication Systems, om het verbrede gebied van activiteiten beter aan te duiden.
De belangrijkste taak van de ECMA is de ontwikkeling van Standaarden en Technische Rapporten op het terrein van informatie en communicatie-technologie. Aangezien ECMA een samenwerkingsverband van bedrijven is en geen officieel standaardisatie-instituut, werken ze vaak samen met officiële nationale en internationale instituten.
ECMA Standaarden zijn geaccepteerd als een basis voor internationale en Europese standaarden. Tot dusver zijn meer dan 270 ECMA Standaarden en 70 Technische Rapporten gepubliseerd.
Van deze standaarden zijn er 85 geaccepteerd als internationale standaarden door de International Organization for Standardization (ISO). Daarenboven zijn er nog eens 25 geaccepteerd als Europese standaarden door het European Telecommunications Standards Institute (ETSI).
ECMAScript is een gestandaardiseerde scripting taal, grotendeels gebaseerd op Netscape’s JavaScript en Microsoft’s JScript. Het ECMAScript is gedefinieerd door ECMA’s Technical Committee 39 (TC-39).
Het ECMAscript, een object-gebaseerde taal, wordt meestal gebruikt om de objecten in webpagina, die zijn gespecificeerd door het Document Object Model (DOM). Deze objecten (feitelijk de elementen die een webpagina vormen of de webpagina’s als geheel) kunnen worden toegevoegd, verwijderd, verplaatst of van eigenschappen gewijzigd. Dit stelt de webontwikkelaars in staat om effecten te bereiken zoals geanimeerde tekst, grafisch roll-overs en pagina’s die wijzigen door handelingen van gebruikers, zonder dat ze opnieuw geladen hoeven te worden.
De huidige ECMAscript specificatie is ECMA Standaard ECMA-262, ECMAScript Language Specification, 2nd edition.
Het gebruik van webstandaarden kan je pagina’s beter zichtbaar maken in web zoekresultaten. De structurele informatie aanwezig in standaard-conforme documenten maakt het gemakkelijk voor zoekmachines toegang te krijgen en de informatie in deze documenten te wegen, waardoor ze ook beter worden geïndexeerd.
Omdat het gebruik van web standaarden het zowel voor server-side als client-side software gemakkelijker maken om de structuur van jouw document te herkennen, is het makkelijker en effectiever om een zoekmachine aan je eigen website toe te voegen.
Standaarden zijn zodanig geschreven dat ook oude browsers de basis-structuur van je documenten zullen herkennnen. Ook al kunnen ze niet de nieuwste en flitsende uitbreidingen van de standaarden herkennen, ze zullen in elk geval de inhoud van jouw website weergeven. Hetzelfde geldt, vanzelfsprekend, voor robots - systemen die informormatie van jouw website verzamelen voor gebruik door zoekmachines en andere indexeerders.
Standaard-conforme codering maakt het mogelijk jouw webpagina te testen met een validatie-service. Deze verwerken je documenten en geven een overzicht van fouten. Hierdoor wordt het ontdekken en corrigeren van fouten veel makkelijker, wat je veel tijd kan besparen.
Standaard-conforme documenten kunnen makkelijk worden omgezet in andere formats, zoals databases of Word documenten. Dit stimuleert een meer gevarieerd gebruik van de informatie in documenten op het Web, en eenvoudige migratie naar nieuwe systemen - zowel hardware als software - waaronder apparaten zoals TV’s en PDA’s.
Toegankelijkheid is een belangrijk gedachtengoed achter de webstandaarden, met name HTML.
Dit betekent niet alleen het toegankelijker maken van het Web voor mensen met een handicap, maar ook dat webpagina’s verwerkt kunnen worden door mensen die andere browsers hebben dan de gebruikelijke - waaronder stem-browsers die webpagina’s voorlezen voor mensen met beperkt gezichtsvermogen, Braille-browsers die tekst in braille vertalen, zakagenda-browsers met zeer geringe schermafmetingen, teletext schermen, en andere minder gebruikelijke output apparaten.
Naarmate de variatie in webtoegang methoden toeneemt, wordt het steeds ingewikkelder om websites aan te passen of opnieuw te gebruiken (sommigen stellen zelfs dat het vandaag de dag al onmogelijk is geworden). Het volgen van de webstandaarden is een grote stap in het oplossen van dit probleem. Maak je website standaard-conform en je kunt erop rekenen dat niet alleen de traditionele browsers, zowel de oude als de nieuwere, in staat zullen zijn om je websites correct weer te geven, maar ook dat ze getoond kunnen wodern met ongebruikelijke browsers en media.
Enkele gevolgen van het veronachtzamen zijn vanzelfsprekend: het meest basale gevolg is dat het de toegang tot je website beperkt. Wat is de zakelijke afweging om je klantenkring te beperken tot slechts een gedeelte van degenen die klant willen worden? Voor een commerciële website veroorzaakt het verhinderen van toegang voor zelfs een klein deel van de doelgroep al gauw een groot verschil in de winstmarge. Voor een educatieve website is het natuurlijk logisch om toegang te bieden aan niet alleen de rijke en gezonde schoolkinderen met grafische browsers, maar ook aan de kinderen in Derde-Wereld landen die slechts tekst-browsers hebben, of gehandicapte studenten die bijzondere browsers moeten gebruiken.
Dezelfde afweging is van toepassing op alle soorten websites — ook al lijkt het soms aantrekkelijk om af te wijken van de standaarden en gebruik te maken van browser-specifieke toeters-en-bellen, is de toegenomen toegankelijkheid die voortkomt uit het gebruik van standaarden op de langere termijn veel voordeliger.
Het merendeel van de web standaarden is algemeen ontworpen met voorwaartse en achterwaartse compatibiliteit — opdat gegevens die oude versies van standaarden gebruiken gewoon verwerkt blijven worden door nieuwe browsers, en data die nieuwere versies van de standaarden gebruiken 'keurig degraderen' om een acceptabel resultaat te tonen in oudere browsers.
Omdat een website gedurende zijn levenscyclus door verschillende teams van ontwerpers zal worden gewijzigd, is het belangrijk dat al die mensen de codering kunnen begrijpen en deze gemakkelijk kunnen wijzigen. Web standaarden bieden een setje regels die elke webontwikkelaar kan volgen, begrijpen en zich eigen kan maken. Wanneer de ene ontwikkelaar een website overeenkomstig de standaarden ontwerpt, zal de volgende de draad kunnen oppakken waar de vorige was gebleven.
Wij webontwikkleaars zijn voortdurend bezig om het probleem van de verschillende weergave van webpagina’s in de verschillende browsers en verschillende versies van browsers het hoofd te bieden. Dit dwingt ons tot hetzij tijdvretende dubbele/meervoudige codering, hetzij tot codering voor een enkele browser, wat het weer moeilijker maakt, zo niet onmogelijk, voor een deel van de bezoekers om de website te gebruiken. Dit wordt allemaal alleen nog maar lastiger met het verschijnen van nog weer andere hardware en software waarmee men over het web kan surfen, zoals telefoons, pagers en PDA’s.
Web standaarden zijn geen aftanse wetten verordonneerd door ivoren-toren organsaties. Zoals we hebben beschreven, zijn deze standaarden merendeels vastgesteld door vertegenwoordigers van dezelfde mesnen die ze ook gaan gebruiken — browser producenten, webontwikkelaars, inhoud leveranciers en andere organisaties.
Het schrijven van webpagina’s in overeenstemming met de standaarden is sneller en maakt het eenvoudiger om de pagina’s te onderhouden. Debuggen en problemen oplossen worden gemakkelijker, omdat de codering een standaard volgt. Je hoeft je niet langer zorgen te maken over codering en onderhoud van verschillende versies van code die toch eenzelfde weergave moeten bewerkstelligen. Er is slechts één versie van je website, en daar blijft het bij.
De algemene toepassing van web standaarden is van groot belang geworden. Het is de missie van de WaSP om van het web een betere plek te maken, zowel voor ontwikkelaars als eindgebruikers, door browser producenten en webontwikkelaars te stimuleren om de web standaarden te gebruiken. Deze inspanning wordt zeer gediend wanneer webontwikkelaars de standaarden als vanzelfsprekend gebruiken, en erop aandringen dat hun code wordt gemaakt en weergegeven volgens de standaarden.
De argumenten die we hebben gegegeven zouden jou, de web ontwikkelaar, voldoende stimulans moeten geven om te beginnen met het gebruik van web standaarden, en tevens voldoende ammunitie om jouw bedrijf en mede-ontwikkelaars te kunnen aanmoedigen om deze standaarden ook te gebruiken.
Help deze droom werkelijkheid te worden.
Geactualiseerd op 27-02-2002 door Molly E. Holzschlag en Shirley E. Kaiser van het WaSP
De Nederlandse vertaling is gemaakt door: Oskar van Rijswijk [ LOGos ]