Otsikkosisältö eli topic-elementti DoX CMS:ssä sisältää useampia osuuksia kuin vain otsikon (title) ja ensisijaisen sisältökentän (content). Käyn tässä artikkelissä läpi näiden muiden kenttien mahdollisia käyttötapoja. Kyseessä ovat
- esittely eli shortdesc,
- lisätiedot eli prolog ja
- osiot eli sections.
Shortdesc
Tämä kenttä on välittömästi otsikkokentän alapuolella. Sen sisällä voi käyttää vain rivin sisäisiä elementtejä eli
- tekstin muotoiluja,
- kuvia,
- fraaseja (ph) ja
- linkkejä.
Tämän esittelykentän ensisijainen käyttötapa on sisältöjen tiivistäminen. Tälle tiivistelmälle voi määrittää tyylitiedostossa sille ominaiset asettelusäännöt käyttämällä tunnistetta .dita-shortdesc. Sitä voi kuitenkin käyttää myös muilla tavoin, jotka käyn läpi alla.
Osiolinkit
Jos jokaisessa (tietyn tason) otsikkosisällössä käytetään järjestelmällisesti linkitettävissä olevia elementtejä kuten kuvakehyksiä (fig), täysiä taulukoita tai alempana keskusteltuja osioelementtejä, voit lisätä linkit niihin esittelykenttään. Varsinkin pidempien sisältöjen tapauksessa tämä antaa käyttäjien hypätä suoraan oikeisiin dokumentin kohtiin. Jos kyseinen dokumentti on tulostettu ja nämä osuudet alkavat kukin uudelta sivulta, voivat käyttäjät selata helpommin läpi, mistä muualla mainittu osuus kuten tietty taulukko löytyy näiden vakiopaikannettujen mainintojen avulla.
Verkkojulkaisuissa voit tehdä tästä osiosta sisältöä selatessa näkyvissä pysyvän. Esimerkki tällaisesta toteutuksesta toisessa asiayhteydessä ovat Wikipedia-artikkelit, joiden sisältölista pysyy näkyvissä artikkeleiden vasemmassa ylälaidassa. Tällä tavoin käyttäjät voivat vapaasti siirtyä yhden aihealueen alaosioiden välillä kyseisellä sivulla ollessaan. Tällainen toteutus on erityisen hyödyllinen, kun sisältö on toteutettu Mark Bakerin Every Page is Page One -periaatteen mukaisesti. Tällöin sisältö jaetaan itsenäisesti käytettävissä oleviin ja linkeillä navigoitaviin kattaviin asiakokonaisuuksiin.
Tällainen siirtyvä osio onnistuu position-säännön arvojen fixed tai sticky avulla. Joudut tällöin myös määrittämään sisällön vakiosijainnin ruudulla erillisten suuntamääreiden (left, right, top, bottom) ja niille annettujen etäisyysarvojen avulla. Fixed-sijainti näyttää sisällön aina sille määritetyssä ruudun osassa. Sticky-sijainti näyttää sisällön osana muuta sisältöä kunnes käyttäjä selaa sen ohi, ja tällä tavoin sijoitettu elementti näkyy vain sen ylätason elementin halki selaamisen ajan.
Aiheikonit
Vaihtoehtoisesti voit myös käyttää tätä kenttää kuville, jotka kertovat käyttäjille kyseisen otsikkosisällön aiheista. Tällaiset ikonit voivat esimerkiksi merkitä, mitkä osuudet
- kuuluvat kullekin osaamistasolle,
- sisältävät tietynlaisia ohjeita tai selityksiä,
- liittyvät tiettyihin riskeihin tai vaativat tiettyjä varotoimenpiteitä tai
- liittyvät tiettyihin laitteen osiin tai käyttöliittymän osuuksiin.
Yksinkertainen esimerkki olisi suurennuslasi virhetilanteiden syiden selvityksen ohjeisiin liittyen.
Tällaiset ikonit ovat tunnistettavissa nopeammin kuin teksti sisältöä selatessa. Voit liittää niihin nopeammin erotettavia yksityiskohtia kuten värikoodeja tai kehyksien muotoja. Lisäksi voit sijoittaa nämä ikonit esimerkiksi sivun ulkoreunaan, mistä käyttäjä saa paikannettua ne ilman leipätekstin silmäilyä niiden paikantamiseksi.
Prolog
Tämä lisätietokenttä on käytettävissä ainoastaan metadatan lisäämiseen data-elementeillä. Tätä tietoa ei lisätä muihin kuin DITA-formaatin julkaisuihin. Sitä voi kuitenkin käyttää myös tämän sisällön hakemiseen järjestelmän sisällä.
Editorissa prolog-kentän data-elementtien käyttäminen vaatii niiden DITA-ominaisuuksien säätämistä. Tässä valikossa on kaksi kenttää: name ja value. Name-kenttä antaa määrittää metadatan tyypin ja value-kenttä sitä vastaavan arvon. Voit myös kirjoittaa näiden elementtien sisään tai sijoittaa sinne toisia data-elementtejä. Sisäkkäiset data-elementit soveltuvat metadatan kategorisoimiseen. Esimerkiksi julkaisutiedot voivat toimia kategoriana sekä julkaisuvuodelle että kirjoittajalle.
Sisällön suodattaminen ja hakeminen prolog-kentän arvojen perusteella vaatii lähdeversiossa käytetyn muotoilun lisäämistä Etsi Sisällöstä -kenttään. Jos näitä muotoiluja ei käytetä muualla dokumenteissa, voit kirjoittaa suoraan käytetyt arvot. Jos joudut täsmentämään kyseessä olevan metadatan, voit kirjoittaa myös kyseisten attribuuttien nimet eli esimerkiksi ’name=”author”’. Muista että tässä haussa välilyönti erottaa koko otsikkosisällöstä haettavat vaaditut avainsanat.
Sections
Käyttötavoiltaan monipuolisin näistä lisäkentistä on sections-kenttä, joka sisältää kunkin otsikkosisällön section-elementit. Section-elementeillä voit esimerkiksi
- lisätä väliotsikoita,
- muodostaa monesta elementistä koostuvia tageilla ehdollistettuja kokonaisuuksia,
- muodostaa monesta elementistä koostuvia kokonaisuuksia, joiden sisään ei voi tulla sivunvaihtoa,
- lisätä kehyksiä monesta elementistä koostuville kokonaisuuksille,
- käyttää sisältöviitteitä (conref) monesta elementistä koostuville kokonaisuuksille,
- käyttää sisältöviitteitä (conref) lohkoelementeille, jotka eivät normaalisti salli niitä, tai
- lisätä tageilla ehdollistettavat kehykset sisältöviitteiden (conref) kohde-elementeille.
Otsikkosisällöissä, jotka sisältävät section-elementtejä, ei kannata lisätä muuta sisältöä content-kenttään. Voit käyttää section-elementtejä myös osuuksille, jotka eivät vaadi niitä. Kun niiden title-kentän jättää tyhjäksi, näyttää sisältö samalta kuin content-kenttään kirjoitettuna, ellei tyylitiedostossa ole annettu muita määreitä. Jos kuitenkin lisäät sisältöä sekä content-kenttään että sections-kenttään, julkaisut näyttävät sections-kentän sisällöt content-kentän sisältöjen jälkeen.
Saat lisättyä useampia section-elementtejä sections-kentän sisään lisäämällä niitä oletuselementteinä. Vie osoitin section-elementtien väliin ja napsauta punaista nuolipainiketta tällöin näytetyn punaisen katkoviivan oikealla puolen.
Väliotsikot
Section-elementeillä on title-kenttä, jota voit käyttää väliotsikoiden lisäämiseen niiden välille. Tämä on paras keino lisätä otsikkosisältöjen sisälle osiokohtaisia väliotsikoita. Toisin kuin esimerkiksi tekstikappaleet, joiden tyyli on määritetty väliotsikkomaiseksi elementtiluokan avulla, nämä otsikkokentät on omistettu tähän käyttöön.
Tyylitiedoston tasolla paras keino hallinnoida näitä otsikoita on kohdentaa säännöt välittömästi section-elementtien sisällä oleviin elementtien otsikoihin. Muussa tapauksessa nämä säännöt voivat tulla voimaan myös section-elementtien sisällä olevien taulukoiden ja kuvakehyksien (fig) otsikoille. Tällainen valitsija näyttää yksinkertaisimmillaan tältä:
.dita-section > .dita-title {}
Ehdollistaminen
Section-elementit ovat ehdollistettavissa tageilla. Tämä tarkoittaa, että voit ehdollistaa joko suurempia monen elementin kokonaisuuksia yhdellä tagijoukolla tai ehdollistaa tällä tavoin sisältöviitteiden (conref) kohde-elementtejä.
Normaalisti sisältöviitteiden (conref) ehdollistaminen täytyy tehdä lähde-elementille. Syy tälle on, kuinka tämä toiminto korvaa kohde-elementit kokonaan. Myös niiden ehdollistamiseen käytetyt tagit siis korvataan lähde-elementin tageilla.
Section-elementti kohde-elementin ympärillä sen sijaan ei korvaudu tällä tavoin. Voit siis käyttää sitä kyseisen kohde-elementin näkyvyyden hallinnointiin sen sijoituspaikassa. Tällä tavoin saman lähde-elementin mukaiset kohde-elementit saa siis sijoitettua eri tavoin ehdollistettuihin julkaisuihin.
Sivunvaihdot
Koska section-elementit ovat kohdennettavissa tyylitiedostoilla, voit lisätä niille myös sivunvaihtoja hallinnoivia sääntöjä. Tällä tavoin saat esimerkiksi varmistettua, että listat ja niiden selitykset pysyvät samalla sivulla. Tällaiset säännöt voivat olla tarkemmin määritettyjä eri tarpeisiin, mutta yksinkertaisin toteutus on elementtiluokka, joka estää sivunvaihdot sillä merkityn elementin sisällä. Tämä on parempi keino kuin sivunvaihtojen estäminen kaikkien section-elementtien sisällä, ellet tiedä ennalta, että tämä soveltuu niiden käyttötavoille.
Tällainen ratkaisu näyttää tältä, kun kyseisen elementtiluokan nimi on ’NoPageBreakInside’:
[doxelementclass~="NoPageBreakInside"] {break-inside: avoid-page;}
Voit käyttää myös sääntöä ’page-break-inside: avoid’.
Kehystäminen
Joskus on hyvä ajatus lisätä kehykset useammasta elementistä koostuvan mutta muutoin yhtenäisen osuuden ympärille. Voit myös lisätä kuhunkin tällaiseen osuuteen järjestysnumeron, jos ne liittyvät esimerkiksi tehtävän työvaiheisiin. Section-elementit ovat paras ratkaisu näissä tilanteissa, koska voit lisätä muuta sisältöä niiden sisään vapaasti ja koska niihin ei liity muuta sisäänrakennettua toiminnallisuutta kuten järjestysnumerointia. Niihin voi tosin kohdistaa linkkejä tarvittaessa.
Jälleen kerran tällaiset säännöt on parasta kytkeä elementtiluokkiin, joita voit tarvittaessa käyttää section-elementteihin. En näytä tarkkaa toteutuskeinoa, koska sellainen olisi riippuvainen ulkoasuun tarvituista yksityiskohdista. Kehyksien lisääminen käyttää kuitenkin border-sääntöjä ja niihin saa lisättyä yksityiskohtia kuten pyöristetyt kulmat esimerkiksi border-radius-säännöllä.
Section-elementtien numerointi puolestaan vaatii erillistä laskuria. Tällaisen saa lisättyä asianmukaisesti kohdennetuilla säännöillä counter-reset ja counter-increment, jotka aloittavat kyseisen laskurin (alusta) ja kasvattavat sen arvoa. Tämän laskurin näyttäminen puolestaan vaatii sen sijoittamista haluttujen elementtien yhteyteen esimerkiksi ::before-sisältöinä käyttämällä content-sääntöä, jonka arvossa on mukana osio counter(). Kyseiselle laskurille määrittämäsi nimi täytyy lisätä counter()-arvon sulkeiden sisään.
Sisältöviitteet
Section-elementtien itsensä käytettävissä oleviin DITA-ominaisuuksiin kuuluvat sisältöviitteiden (conref) vaatimat ID- ja Conref-arvot. Niitä voi siis käyttää sisältöviitteinä. Voit käyttää section-elementtejä tällä tavoin toistuvien monesta elementistä koostuvien kokonaisuuksien yhdessä sijainnissa hallinnointiin. Lisäksi voit myös käyttää niitä saman tekemiseen yksittäisille lohkotason elementeille, jotka eivät itse ole yhteensopivia sisältöviitteiden kanssa.
Yksittäisten elementtien tapauksessa jätä ne section-elementtien ainoiksi sisällöiksi, vaikka ne eivät muuten vaatisi section-elementin käyttämistä. Varmista, että section-elementtien käytöllä ei ole tyylitiedoston vuoksi muita, ei-haluttuja vaikutuksia. Kun käyttöpaikkana toimivan otsikkosisällön kaikki sisältö on jaettu section-elementteihin, voi sisältöviitteen kohteena olevan section-elementin sijoittaa niiden sekaan. Tällä tavoin saat sijoitettua esimerkiksi saman kuvakehyksen (fig) useampaan sijaintiin yhden julkaisun sisällä tai useamman julkaisun kesken.
Yhteenveto
Otsikkosisältö voi sisältää muutakin kuin otsikon ja yhtenäisen sisältöosuuden. Niistä löytyy kentät myös sisällön kuvauksille ja metadatalle. Lisäksi voit jakaa sisällön useampaan palaseen, jotka laajentavat sen käytettävyyttä merkittävästi. Tämä tapahtuu shortdesc-, prolog- ja sections-kentillä tekstieditorissa.
Esittely eli shortdesc voi sisältää tekstiä, kuvia tai linkkejä. Täten pelkän esittelyn sijaan voit käyttää sitä myös alaosioiden linkittämiseen tai sisällön merkitsemiseen ikoneilla. Saat tarvittaessa siirrettyä tämän kentän esimerkiksi sivun reunaan siihen kohdistetuilla säännöillä tyylitiedostossa.
Prolog-kenttä koostuu rinnakkaisista ja sisäkkäisistä data-elementeistä. Niiden DITA-ominaisuudet sisältävät name- ja value-kentät, joiden avulla määrität, millaisesta metadatasta on kyse ja mikä sen arvo on. Voit myös kirjoittaa data-elementtien sisään. Nämä arvot ovat tällä hetkellä kuitenkin vain DoX CMS:n sisäisen sisältöhaun sekä DITA-julkaisujen käytettävissä.
Sections-kentän section-elementit puolestaan antavat jakaa sisällön erikseen hallinnoitaviin osuuksiin. Vaikka et käyttäisi näitä osuuksia väliotsikoiden lisäämiseen, voit kohdentaa niihin sääntöjä tyylitiedostoilla, ehdollistaa niitä tageilla tai käyttää niiden DITA-ominaisuuksia sisältöviitteiden (conref) käyttöön ottamiseen. Tällä tavoin saat jaettua yhden otsikkosisällön sisällön haluamasilaisiin palasiin sekä käytettyä sisältöviitteiden kohteisiin tageja tai sisältöviitteitä lohkoelementeille, jotka eivät muutoin salli niitä.