Viimeksi päivitetty 28.4.1997 © Antti M. Latva-Koivisto <Antti.Latva-Koivisto@hut.fi>

Cougar
Yhteenveto HTML:n seuraavasta versiosta


Sisältö

  • Johdanto
  • Cougarin historia
  • Mitä Cougar pitää sisällään?
  • Kysymyksiä Cougariin liittyen
  • Lopuksi
  • Muuta
  • Lähteet
  • Johdanto

    Cougar, eli puuma [1], on koodinimi HTML:n seuraavalle versiolle, jota kehitetään World Wide Web Consortiumin työryhmissä [2].

    HTML:n nykyinen versio 3.2, koodinimeltään Wilbur, on saanut World Wide Web Consortiumilta virallisen suosituksen (Recommendation) aseman tammikuussa 1997 [3] [27]. Standardin asemaa se ei ole vielä saavuttanut. HTML:n kehittäminen kuitenkin jatkuu. Cougarin kokeellinen DTD, eli Document Type Definition, julkaistiin jo heinäkuussa 1996 [4] [29]. Cougariin liittyvät luonnokset konsortio julkisti huhtikuun alussa 1997 [5].

    Cougar laajentaa HTML 3.2:ta monilla eri ominaisuuksilla, kuten esimerkiksi style sheeteillä, skriptituella, object-tagilla ja kansainvälisillä ominaisuuksilla [2].

    Cougarin historia

    Berners-Lee, CERN ja WWW

    HTML:n synty oli pitkälle kiinni yhden henkilön innovaatiosta. Työskennellessään CERN:issä Sveitsissä Tim Berners-Lee ryhtyi kehittämään vuonna 1989 hypertekstidokumenttijärjestelmää, joka mahdollistaisi ympäri maapalloa työskentelevien tutkijoiden dokumenttien jakamisen tehokkaasti. Berners-Lee nimesi järjestelmänsä "maailmanlaajuiseksi seitiksi", World Wide Webiksi. [6]

    WWW-järjestelmän olennainen osa oli HTML, joka luotiin ja määriteltiin SGML:ää (Standard Generalized Markup Language) käyttäen. SGML on ISO-standardi, jonka avulla voidaan määritellä ja käyttää erilaisia dokumenttiformaatteja [7]. WWW-projektin määrittelyt, mukaan lukien HTML, julkistettiin kesällä 1991. [6]

    HTML:n standardointi ja HTML 2.0

    HTML saavutti suurta suosiota Internet-yhteisössä seuraavan parin vuoden aikana. Eri laitealustoille kehitettiin WWW-selaimia. HTML kehittyi kuitenkin hallitsemattomasti. HTML 1.0 -luonnos julkaistiin kesäkuussa 1993, mutta se raukeni, koska HTML:ään lisättiin koko ajan uusia ominaisuuksia [24].

    WWW löi itsensä läpi julkisessa sanassa vuonna 1994 käyttäjämäärien jatkaessa eksponentiaalista kasvuaan. Tuolloin nähtiin, että on välttämätöntä saada aikaan standardi HTML:lle. HTML 2.0 -luonnokseen, jonka kirjoittivat Berners-Lee ja Dan Connolly, otettiin mukaan ne ominaisuudet, jotka olivat yleisesti käytössä kesäkuuhun 1994 mennessä [12]. HTML 2.0 saavutti Internet-standardin aseman vasta syyskuussa 1995, jolloin se oli jo auttamattomasti ajastaan jäljessä.

    HTML 2.0 -standardi oli kuitenkin tärkeä, koska se oli yhteinen standardipohja kaikille WWW-sovelluksille. HTML 2.0 oli se mittapuu, jolla selaimia mitattiin. HTML 2.0 on nykyisinkin sovellusten vähimmäisvaatimus.

    HTML 3.0 - epäonnistunut standardiluonnos

    Seuraavaksi HTML-standardiksi yritettiin kehittää HTML 3.0:aa, jonka luonnos julkaistiin maaliskuussa 1995 [23]. HTML 3.0:ssa oli mukana piirteitä epästandardista HTML+:sta, jonka luonnoksen Dave Raggett oli esittänyt jo 1993 [8]. HTML 3.0 oli epäonnistunut, koska se oli liian monimutkainen ja poikkesi liikaa HTML 2.0:sta. HTML 3.0 raukesi syyskuussa 1995.

    HTML 3.0:n hyvät ominaisuudet, kuten taulukot, siirtyivät kuitenkin seuraavaan versioon, Wilburiin. Osa ominaisuuksista taas jalostetaan tuleviin HTML:n versioihin, kuten Cougariin.

    Wilbur - HTML 3.2

    Maaliskuussa 1996 World Wide Web Consortium muodosti Editorial Review Board -ryhmän (ERB), joka ryhtyi luomaan uutta standardia HTML:lle. Ryhmän nimeksi vaihtui tänä vuonna W3C HTML Working Group.

    Toukokuussa 1996 julkaistiinkin version 3.2, Wilburin, luonnos. Kuten HTML 2.0, sekin vain pyrki standardoimaan yleisesti käytössä olleita HTML:n laajennuksia, toisin kuin epäonnistunut HTML 3.0. Tammikuussa 1997 HTML 3.2 saavutti W3-konsortiolta virallisen suosituksen (Recommendation) aseman [3] [27].

    HTML 3.2:sta kuitenkin puuttui monia yleisiä laajennuksia ja tärkeitä ominaisuuksia, kuten kehykset (frames), skriptituki, tyylilomakkeet (style sheets) ja kansainväliset ominaisuudet. Annettiinkin ymmärtää, että nämä ja monet muut ominaisuudet tullaan sisällyttämään HTML:n seuraaviin versioihin. Cougariin näitä ominaisuuksia onkin tulossa.

    W3-konsortion asettamat tavoitteet HTML:lle

    World Wide Web Consortium on asettanut HTML:n kehittämiselle useita vaatimuksia. [9]
    Monipuolisuus
    HTML:n tulee olla ilmaisuvoimaista ja visuaalisesti vaikuttavaa. HTML:n tulee tarjota yksinkertainen käyttöliittymä interaktiivisiin sovelluksiin.
    Yksinkertaisuus
    Samanaikaisesti HTML:n tulee olla yksinkertaista. HTML:n yksinkertaisuus on eräs syy sen valtavaan suosioon. HTML:n pitäisi pysyä alaspäin yhteensopivana vanhojen versioiden kanssa siten, että Web voi jatkuvasti kehittyä sujuvasti.
    Laitteistoriippumattomuus
    Markup-idiomi mahdollistaa HTML-dokumenttien esittämisen monilla eri alustoilla, kuten graafisten käyttöliittymien päällä, tekstipohjaisilla laitteilla, kirjoittimilla, puhesyntetisaattoreilla, pistekirjoituksella, käsitietokoneissa tai televisiossa. Myös vammaisten on kyettävä käyttämään WWW:tä. Tämä on otettava huomioon HTML:n suunnittelussa.

    Mitä Cougar pitää sisällään?

    Cougar sisältää useita uusia ehdotuksia HTML:n laajentamiseksi. Cougar perustuu täysin HTML:n nykyiseen versioon 3.2, eli Wilburiin. Osa ehdotuksista, kuten style sheetit, ovat jo käytössä selaimissa. Koska Cougar on vasta luonnosvaiheessa, voivat sen ominaisuudet vielä muuttua paljon ennen lopullista standardointia.

    LINK- ja META-tagit

    HTML:ssä on käytössä linkki-idiomi, jossa kuumia sanoja valitsemalla päästään muihin kohteisiin. Kohde ei välttämättä ole HTML-dokumentti, vaan voi olla esimerkiksi kuva, video tai ääni.

    Cougarissa linkki-idiomia kehitetään siten, että LINK-tagilla voidaan ilmaista dokumentin suhteita muihin dokumentteihin tai resursseihin, esimerkiksi style sheetteihin, dokumentin erikielisiin versioihin, dokumentin hakemistoon, seuraavaan sivuun tai kappaleeseen, optimaaliseen väripalettiin, sopivaan sanastoon, dokumentin postscript-versioon ja niin edelleen. [9]

    Esimerkiksi dokumentin suhde sisällysluotteloon tai ranskankieliseen versioon ilmaistaisiin LINK-tagilla seuraavasti:

          <LINK REL=Contents HREF=toc.html>
          <LINK REL=alternate LANG=fr HREF="mydoc-fr.html">
    
    META-tagin erilaisia käyttötapoja esitetään myös Cougarin luonnoksessa. META-tagilla voidaan ilmaista nimi/arvo-pareja, joilla voidaan ilmaista esimerkiksi dokumentin tekijä tai hakusanoja hakurobotteja varten [25]. Sillä voidaan myös rajoittaa sivuja, joita hakurobotit indeksoivat.

    META-tagia käytetään myös PICS-määritysten (Platform for Internet Content) kanssa, joilla voidaan kuvata dokumentin sisältöä [HREF]. Jatkossa PICSiä tullaan käyttämään myös muun muassa tekijänoikeustietojen tai digitaalisten allekirjoitusten hallintaan. META-tagilla voidaan ilmaista erilaisia luokitteluja, kuten esimerkiksi se, mihin luokkaan dokumentti kuuluu Dewey Decimal Systemissä, jota käytetään yleisesti kirjastoissa.

    Cougarin dokumenteista ei käy kovin selvästi ilmi, miten selainten tulisi esittää LINK- ja META-tageissa annettuja tietoja. W3C myöskin kehittää uutta sofistikoituneempaa tapaa, jolla meta-dataa voidaan sisällyttää dokumenttiin.

    Tyylilomakkeet

    Cougar sisältää tuen tyylilomakkeille eli style sheeteille [13]. Tyylilomakkeet mahdollistavat tyylimäärittelyjen erottamisen dokumentin rakenteesta, joka kuvataan HTML:llä.

    Suunnittelussa on ollut muutamia eri lähtökohtia. Tyylimäärittelyjen tulisi olla joustavia, HTML:n tulisi olla riippumaton eri tyylilomakekielistä, HTML:n tulisi tarjota tuki cascading-tyyppisille tyylilomakkeille, tyylilomakkeita tulisi voida määritellä eri medioille ja lisäksi pitäisi olla mahdollista määritellä yhdelle dokumentille useita vaihtoehtoisia tyylilomakkeita [13]. Tällä hetkellä ainoa yleisessä käytössä oleva tyylilomakekieli on CSS1, eli Cascading Style Sheets level 1, joka W3C:n virallinen suositus joulukuulta 1996 [14].

    Tyylimäärittelyt voidaan sisällyttää HTML-dokumenttiin kolmella eri tavalla. Dokumentit HEAD-osassa voidaan LINK-tagilla ilmoittaa dokumenttiin liittyvät tyylilomakkeet. Tyylimäärittelyt voidaan liittää myös itse HTML-dokumenttiin HEAD-osaan STYLE-elementtien väliin. Kolmas vaihtoehto liittää kuhunkin tagiin STYLE-attribuutti, jolla määritellään elementin ulkonäkö.

    Tyylilomakkeita kohtaan on myös esitetty kritiikkiä. Kritiikin mukaan ne ovat liian monimutkaisia, puutteellisesti määriteltyjä, mahdollistavat sisällön ja esitystavan lopullisen sekoittamisen ja ne ylläpitävät tekijöiden kontrollia ulkoasun suhteen, mitä kritiikki pitää pahana. Jukka Korpela on kirjoittanut kriittisen artikkelin tyylilomakkeista [11].

    Skriptituki

    Cougar lisää HTML:ään SCRIPT-tagin, jonka avulla sivuille voidaan liittää skriptejä, eli pieniä ohjelmia, joiden avulla sivuille voidaan tuoda interaktiivisuutta. Cougar tukee geneerisesti kaikkia mahdollisia skriptikieliä, kuten JavaScriptiä, VBScriptiä tai Tcl:ää. Ohjelman suorittaminen jää selaimelle, joka voi suorittaa skriptin mikäli ymmärtää käytettyä kieltä. [15]

    Kehykset eli framet

    Netscape toi alunperin kehykset eli framet HTML:ään selaimensa version 2.0 myötä. Kehysten avulla selaimen ikkuna voidaan jakaa useaan eri osaa, jossa kussakin näytetään eri dokumenttia. Yksi kehys voi esimerkiksi näyttää sisällysluettelon samaan aikaan, kun toisessa ikkunassa näytetään eri kappaleita tekstistä. Kehykset saavuttivat nopeasti suuren suosion WWW-sivuilla.

    Kehykset ovat tulossa mukaan myös Cougariin, mutta niistä on vaikeaa päästä yksimielisyyteen. Eniten kinaa on Microsoftin keksimästä IFRAME-tagista, jolla tehdään niin sanottuja kelluvia kehyksiä, jotaka toimivat kuvien tavoin, mutta sisältävät HTML-sivun. IFRAME toimii samaan tapaan kuin OBJECT-elementti, joka on yleisempi tapa liittää dokumenttiin erilaisia objekteja, esimerkiksi muita HTML-sivuja.

    Lomakkeet eli formit [17]

    Cougar tuo HTML:n täytettäviin lomakkeisiin eli formeihin uusia parannuksia. Kontrolleja voidaan määritellä harmaannutetuiksi tai pelkästään luettaviksi, niitä voidaan ryhmitellä yhteen, kontrolleihin lisätään skriptitukea, niiden keskinäinen selailujärjestys voidaan määritellä ja niihin voidaan liittää pikavalintanäppäimiä. Nämä uudet muutokset ovat pääosin yhteensopimattomia vanhojen HTML 2.0:n formien kanssa [18].

    Formeihin lisätään myös mahdollisuus antaa syötteenä tiedostona. Tällä tavalla käyttäjä voi lähettää tiedostoja WWW-palvelimelle. Toiminto on määritelty RFC 1867:ssä [21].

    HTML:ään suunnitellaan myös lisättäväksi kehittyneempiä kontrolleja, jotka ovat yleisesti käytössä esimerkiksi Windows-ympäristössä, kuten liukukytkimet tai taulukkomuotoisen datan syöttö.

    OBJECT-tagi

    Cougar esittelee uuden yleisen tavan liittää HTML-dokumenttiin erilaisia multimediaobjekteja, kuten Java-appletteja, ActiveX-komponentteja tai muita multimediaplugineja [19]. OBJECT-tagilla voitaisiin liittää esimerkiksi Java-appletti seuraavaan tapaan:
        <OBJECT
           CLASSID="java:program.start"
           HEIGHT=100
           WIDTH=100
        >
          Your browser does not know how to execute Java applications.
        </OBJECT>
    
    Pyörivä maapallo voitaisiin näyttää seuraavalla koodin pätkälle. Ellei selain tue AVI-videoita, näytetään käyttäjälle GIF-kuva.
        <OBJECT data=TheEarth.avi type="application/avi" alt="The Earth">
        <img src=TheEarth.gif alt="The Earth">
        </OBJECT>
    
    OBJECT-tagiin liittyy lukuisia attribuutteja, joilla ohjataan dokumenttiin upotettavia objekteja. OBJECT-tagilla voidaan myös toteuttaa client-side image mappeja uudella, taaksepäin yhteensopivalla tavalla.

    Laajennettu taulukkomalli

    Cougariin liittyy HTML 3.2:ta laajempi taulukkomalli, joka on määritelty RFC 1942:ssa [20]. Malli on yhteensopiva HTML 3.2:n taulukoiden kanssa, mutta siihen on suunniteltu myös tuki tyylilomakkeille, joita ei kuitenkaan välttämättä tarvita.

    Eräs tärkeimmistä muutoksista on COLGROUP-elementti, jonka avulla taulukon sarakkeista voidaan muodostaa ryhmiä, joita käsitellään yhtenäisesti. Vastaavalla tavalla taulukon rivejä voidaan ryhmitellä. Suurten taulukkojen tapauksessa taulukkoon voidaan liittää tieto siitä, että selaimen tulisi yrittää näyttää taulukko sitä mukaa, kuin se latautuu. Taulukossa on myös mahdollista määritellä, mille sivuille piirretään kehys. Desimaalilukuja voidaan kohdistaa pilkun tai muun merkin mukaan.

    Kansainväliset ominaisuudet

    HTML nojasi alunperin ISO-8859-1-merkistöön, joka on sopiva ainoastaan länsieurooppalaisille kielille. Cougarissa on otettu huomioon eri kielet ja sisältää lukuisia HTML:n kansainvälistymistä edistäviä ominaisuuksia. Suunnittelussa on kuitenkin pidetty huolta siitä, että HTML säilyy käypänä SGML-sovelluksena.

    Cougar laajentaa tukea eri kansainvälisille merkistöille sekä muilla erikoismerkeille. Lisäksi lähes kaikki tagit tulevat tukemaan LANG-attribuuttia, jolla määritellään käytetty kieli. Cougarissa on myös tuki dokumenteille, joissa käytetään sekä vasemmalta oikealla että oikealta vasemmalle luettavaa tekstiä. Erityisesti on huolehdittu siitä, että myös formeissa voidaan käyttää eri merkistöjä.

    Kysymyksiä Cougariin liittyen

    Seuraavat kysymykset on poimittu Usenetin uutisryhmästä comp.infosystems.www.authoring.html ja käännetty suomeksi. Vastaukset on koottu ja toimitettu samasta uutisryhmästä.

    K: Mitä tapahtuu, jos käytän tagia eikä sivun katsojalla ole käytössään kyseistä fonttia?

    V: Yleenä teksti näytetään tällöin vakiofontilla. FACE-attribuuttia ei ole kuitenkaan yleensä syytä käyttää, koska se sotii HTML:n filosofiaa vastaan eikä ole mitään takeita siitä, että sivun lukijan järjestelmässä oleva samanniminen fontti muistuttaisi pätkääkään sivun tekijän järjestelmässä olevaa fonttia.
    K: Olen jakanut sivuni frameilla kahteen osaan. Haluaisin, että kun toisesta ikkunasta valitaan linkki, häviäisivät framet ja linkattu sivu täyttäisi koko selaimen ikkunan. Miten se tehdään?
    V: Kokeile seuraavaa: <A HREF="link.html" TARGET="_top">link text</A>. Tuo TARGET-attribuutti saa aikaan haluamasi.
    K: Yritin keskittää taulukon seuraavasti: <TABLE ALIGN="center"> <TR><TD>Hello!</TD></TR> </TABLE> mutta se ei toiminut. Right ja left toimivat ALIGN-attribuutteina, muttei center. Mitä tehdä?
    V: Käytä CENTER-tagia seuraavasti: <CENTER> <TABLE> <TR><TD>Hello!</TD></TR> </TABLE> </CENTER>

    Lopuksi

    Cougar tuo monia kaivattuja parannuksia HTML-kieleen. Se on myös tuomassa lukuisia yleisessä käytössä olevia laajennuksia standardin piiriin.

    On kuitenkin vielä epäselvää, mistä ominaisuuksista W3-konsortion jäsenet pääsevät yksimielisyyteen ja mitkä ominaisuudet tulevat olemaan lopullisessa standardissa.

    Eräs Cougarista edelleen puuttuva ominaisuus on matemaattiset lausekkeet, jotka olivat alunperin mukana HTML 3.0 -standardissa [23]. Näiden merkitys WWW:n käyttäjien enemmistölle ei ole suuri, mutta tieteellisissä piireissä, missä Internet alunperin on syntynyt ja kasvanut, ne ovat tärkeitä. Matemaattiset kaavat ovat kuitenkin työn alla W3-konsortiossa ja niistä tultaneen julkaisemaan uusi standardiehdotus toukokuussa [28].

    Muuta

    WebTechsin HTML:n validaatiopalvelun [22] avulla voi tarkastaa, onko oma HTML-koodi Cougarin DTD:n [29] mukainen.

    Lähteet

    [1] Jarno Tarkoma. Mofile Place dictionary word query. 1997. <URL:http://194.252.52.3/cgi-bin/mofind.exe/dr1?word=cougar>

    [2] Dave Raggett, Arnaud Le Hors. Project: Cougar. 18.4.1997. <URL:http://www.w3.org/pub/WWW/MarkUp/Cougar/>

    [3] World Wide Web Consortium Press Release: W3C Issues HTML 3.2 Recommendation. 14.1.1997. <URL:http://www.w3.org/pub/WWW/Press/HTML32-REC-PR.html>

    [4] Dave Raggett. Experimental HTML Cougar DTD. 12.7.1996. <URL:http://www.w3.org/pub/WWW/MarkUp/Cougar/HTML.dtd>

    [5] World Wide Web Consortium. HyperText Markup Language (HTML): Working and Background Materials. 1997. <URL:http://www.w3.org/pub/WWW/MarkUp/>

    [6] Brian Wilson. HTML Overview. 17.3.1997. <URL:http://www.blooberry.com/html/history/html.htm>

    [7] Dan Connolly, Jon Bosak. Generic SGML on the Web. 18.4.1997. <URL:http://www.w3.org/pub/WWW/MarkUp/SGML/Activity>

    [8] Dave Raggett. HTML+ (Hypertext markup format). 8.11.1993. <URL:http://www.w3.org/pub/WWW/MarkUp/HTMLPlus/htmlplus_1.html>

    [9] Dave Raggett, Arnaud Le Hors, Vincent Quint. W3C Activity: Hypertext Markup Language (HTML). 4.4.1997. <URL:http://www.w3.org/pub/WWW/MarkUp/Activity.html>

    [10] Dave Raggett, Dan Connolly, Tim Berners-Lee, Murray Maloney, Liam Quin. Hypertext Links in HTML. 28.3.1997. <URL:http://www.w3.org/pub/WWW/TR/WD-htmllink-970328>

    [11] Jukka Korpela. Why style sheets are harmful. 16.4.1997. <URL:http://www.hut.fi/~jkorpela/styles/harmful.html>

    [12] Tim Berners-Lee, Dave Connolly. Hypertext Markup Language - 2.0. 22.9.1995. <URL:http://www.w3.org/pub/WWW/MarkUp/html-spec/html-spec_toc.html>

    [13] Dave Raggett, Bert Bos, Håkon Lie. HTML and Style Sheets. 24.3.1997. <URL:http://www.w3.org/pub/WWW/TR/WD-style-970324>

    [14] Håkon Lie, Bert Bos. Cascading Style Sheets, level 1. 17.12.1996. <URL:http://www.w3.org/pub/WWW/TR/REC-CSS1-961217.html>

    [15] Dave Raggett. Client-side Scripting and HTML. 14.3.1997. <URL:http://www.w3.org/pub/WWW/TR/WD-script-970314>

    [16] Netscape. Release Notes on Netscape Navigator 2.0 for Windows. 1996. <URL:http://home.netscape.com/eng/mozilla/2.0/relnotes/windows-2.0.html>

    [17] Scott Isaacs, ed. Dave Raggett, Arnaud Le Hors. Enhancing Interactive HTML documents. 2.4.1997. <URL:http://www.w3.org/pub/WWW/TR/WD-forms-970402>

    [18] Tim Berners-Lee, Dave Connolly. Hypertext Markup Language - 2.0 - Forms. 22.9.1995. <URL:http://www.w3.org/pub/WWW/MarkUp/html-spec/html-spec_8.html#SEC8>

    [19] Dave Raggett, ed. Inserting objects into HTML. 18.2.1997. <URL:http://www.w3.org/pub/WWW/TR/WD-object-970218.html>

    [20] Dave Raggett. HTML Tables. Toukokuu 1996. <URL:ftp://ds.internic.net/rfc/rfc1942.txt>

    [21] E. Nebel, L. Masinter. Form-based File Upload in HTML. Marraskuu 1995. <URL:ftp://ds.internic.net/rfc/rfc1867.txt>

    [22] WebTechs. WebTechs Validation Service. 24.4.1997. <URL:http://www.webtechs.com/html-val-svc/>

    [23] Dave Raggett. HyperText Markup Language Specification Version 3.0 (expired). Maaliskuu 1995. <URL:http://www.w3.org/pub/WWW/MarkUp/html3/CoverPage.html>

    [24] Tim Berners-Lee, Daniel Connolly. Hypertext Markup Language (HTML). A Representation of Textual Information and MetaInformation for Retrieval and Interchange. Kesäkuu 1993. <URL:http://www.w3.org/pub/WWW/MarkUp/draft-ietf-iiir-html-01.txt>

    [25] Digital. The META tag: Controlling how your Web page is indexed by AltaVista. 1996. <URL:http://altavista.digital.com/cgi-bin/query?pg=h#meta>

    [26] Rohit Khare. Platform for Internet Content Selection (PICS). 29.10.1996. <URL:http://www.w3.org/pub/WWW/PICS/>

    [27] Dave Raggett. HTML 3.2 Reference Specification. 14.1.1997. <URL:http://www.w3.org/pub/WWW/TR/REC-html32.html>

    [28] Robert Miner. HTML Math Overview. 31.3.1997. <URL:http://www.w3.org/pub/WWW/MarkUp/Math/>

    [29] World Wide Web Consortium. The Cougar Document Type Definition. 19.4.1997. <URL:http://www.w3.org/pub/WWW/MarkUp/Cougar/dtd.html>


    <URL: http://www.hut.fi/~alatvako/verkot/cougar.html>