| Hajautettu dokumenttien hallinta: Johdatus tekstin ja dokumenttien käsittelyyn tietoverkoissa | ||
|---|---|---|
| Edellinen | Luku 5 SGML, XML ja rakenteiset dokumentit | Seuraava |
Dokumentin alussa kerrotaan, että käsillä oleva dokumentti on tyyppiä article ja että siinä käytettävät merkinnät perustuvat tyyppimääritykseen document.dtd (lyhyesti DTD).
Artikkeli kokonaisuudessaan sijoittuu alkuerottimen <article> ja loppuerottimen </article> väliin. Dokumentin alkuerottimessa ilmoitettu attribuutti täsmentää sen käsittelytapaa. Artikkeli on tässä tapauksessa tarkoitettu tulostettavaksi kaksipuolisena.
DTD:n toiselta riviltä alkaen <!ELEMENT article ...) esitetään artikkelin ennalta määritelty rakenne. Artikkeli on tarkoitettu koostuvaksi pakollisesta otsikkosivusta, valinnaisesta abstraktista, valinnaisesta sisällysluettelosta, tekstin alkuosaan sijoittuvasta otsikottomasta joukosta kappaleita, joka voi myös puuttua (p*) ja niiden jälkeen tulevista luvuista ja aliluvuista. Artikkelin lopussa on vielä valinnainen liite ja valinnainen kirjallisuusluettelo.
Dokumentin rakenteen kuvaus perustuu elementteihin, jotka jakaantuvat edelleen elementeiksi ja lopulta koostuvat merkkijonoista tai vakiosymboleista. Elementtejä ja niistä muodostettuja nimeämättömiä rakenneosia ryhmitellään alla esiteltävien sääntöjen mukaan sulkujen avulla.
Lukumääriä ohjaavat erikoismerkit elementtinimien ja rakenneosien lopussa tarkoittavat seuraavaa. Elementtinimi ilman erikoismerkkiä tarkoittaa, että elementti on pakollinen, se voi esiintyä ainoastaan kyseisessä kohdassa ja vain kerran (titlepag). Elementtinimeä seuraava kysymysmerkki ilmaisee, että elementti on valinnainen (abstract?). Elementtinimeä seuraava ‘+’-merkki tarkoittaa, että elementin on esiinnyttävä kyseissä kohdassa vähintään kerran (sect+). Elementtinimen perässä oleva kertomerkki ilmaisee, että kyseinen elementti voi esiintyä kyseisessä kohdassa kuinka monta kertaa hyvänsä tai olla esiintymättä lainkaan (p*).
Indeksien ja sanastojen tekemistä varten on tekstiin voitava vapaasti sijoittaa tarpeellisia merkintöjä. Samoin ala- ja loppuviitteitä voi olla lähes missä tekstin kohdassa tahansa. Näiden varalta on käytettävissä poikkeusmerkintä, josta esimerkkinä on DTD:n alaviitteiden määrittely +(footnote).
Pilkut eri rakenneosien välissä ilmaisevat, että rakenneosien on oltava täsmälleen määritellyssä järjestyksessä. Pystyviiva elementtien välissä tarkoittaa vaihtoehtoa, kyseiseen kohtaan tulee jompikumpi pystyviivalla erotetuista rakenneosista. Jos rakenneosien välissä on ‘&’-merkki, se tarkoittaa, että kyseiseen kohtaan tulevat molemmat rakenneosat jommassa kummassa järjestyksessä.
Esimerkkidokumentissa artikkelin alussa oleva otsikkosivu on alku- ja loppuerottimien avulla rajattu. Erottimien pakollisuus tai valinnaisuus ilmaistaan DTD:ssä elementin nimen ja sisällön määrittämisen välissä olevilla ‘O’ (optionaalinen, eli valinnainen) ja ‘-’ (pakollinen) merkeillä. Esimerkiksi nimekkeen (title) alkuerotin on pakollinen mutta loppuerotin ei.
Nimekkeen sisältömäärityksenä on (#PCDATA) ja se tarkoittaa, että nimeke koostuu nollasta tai useammasta dokumentissa käytetyn merkistön mukaisesta merkistä. Sana ei viittaa mikrotietokoneen merkistöön, akronyymi auki kirjoitettuna on parced data characters.
Suurin osa esimerkkidokumentin ja DTD:n riveistä on samantapaisia kuin edellä esitellyt rivit. DTD:stä on varsinaisesti esittelemättä enää vain attribuuttilista ja yksi entiteetti.
Dokumentin elementtiin article voi liittyä attribuutteja ja tätä mahdollisuutta on käytettykin dokumentin koodauksessa (tulostus kaksipuolisena). DTD:ssä attribuutit määritellään elementtikohtaisesti attribuuttilistan avulla. Tässä tapauksessa artikkelilla voi olla yksikäsitteinen tunniste id, jolle ei ole määritelty mitään oletusarvoa. Dokumentin käsittelytapaa täsmentävä optio on merkkijono, jonka oletusarvona on tyhjä merkkijono.
Entiteetti sect on DTD:n kirjoittamisessa käytetty lyhennysmerkintä. Entiteettimäärityksen jälkeen olevilla riveillä merkintä %sect korvataan aina entiteetin arvolla ‘‘heading, p* ’’. Entiteettien tavallisin käyttötapa on erikoismerkkien yhteydessä. Jos tekstin joukkoon halutaan esimerkiksi merkki ‘<’ sellaisenaan, on käytettävä entiteettiä ‘<’. Ampersandi eli ‘&’-merkki ilmaistaan entiteetillä ‘&’.