Ósamrýmanlegir eiginleikar?

Inngangur.

Hvað ætli þeir séu margir, sem gefa því einhvern verulegan gaum, þegar þeir eru að skrifa eitthvað í tölvu, hvernig þeir geta sett hlutina frá sér með skipulegum hætti? Þá á ég ekki við að hið ritaða skjal – á blaði eða rafrænt – sé vel eða illa sett upp útlitslega, heldur með hversu skipulögðum hætti menn gera þetta útlit. Nota þeir t. d. stíla? Hvernig er að vinna með þau gögn aftur, sem talin eru frágengin?

Ég vinn við þær aðstæður að mjög mikið af skjölum ganga “í endurnýjun lífdaga”, ef svo má segja. Þetta eru skjöl, sem þarf að breyta af og til og gera nýjar útgáfur. Vandamálin, sem ég hef staðið frammi fyrir, eru t.d. þau, að erfitt getur verið að finna, hvar og hvernig útlitsbreyting hefur átt sér stað hjá fyrri ritara, og kemur það til dæmis fram í að erfitt getur verið að losna við ákveðin útlitsform, t.d. “bullets” o.s.frv.

Ekki batnar málið, þegar uppfærslur hafa komið á forritið sem notað er við ritvinnsluna – einkum þetta, sem flestir nota og ég hirði ekki að nefna hér. Þá fer gjarnan blaðsíðutalning í rugl, og fleiri þættir sem of langt yrði upp að telja hér.

Menn haf reynt að einfalda útlitsþáttinn með því að setja upp stíla eða fjölva. Ýmis ritvinnsluforrit gera þetta ágætlega, en sum, einkum hið ónefnda hér að framan, sinnir þessu afskaplega slælega. Það kemur þó oftast ekki í ljós fyrr en þarf að endurvinna skjalið.

Í háskólaumhverfinu hefur skapast ákveðin þróun í þá átt að reyna að einfalda þessa vinnu og búa til forrit sem heldur utan um þessa þætti með vandaðri hætti, og jafnvel svo að fyrirfram eru settir til afnota mjög afmarkað fylki af stílum, þar sem gert er ráð fyrir öllum stílbrögðum, sem eiga og geta komið fyrir í þeirri tegund skjals og hvorki meira né minna.

Líkast til hringir þetta ýmsum bjöllum hjá lesendum sem þekkja LaTeX umhverfið. Þó er ég ekki hér að tala nákvæmlega um LaTeX, heldur LyX og þvílík forrit, sem taka TeX/LaTeX skipanirnar á enn afmarkaðra plan. Þessi forrit eru sérhæfð til ritunar á ýmiss konar ritgerðum og skýrslum. Þarf þá notandinn í raun ekkert að hugsa um annað en innihald þess sem hann er að rita.

Þróunin

Ég ætla að sleppa umfjöllun um ritvélina og blýsetninguna hér, en segja má að í framhaldi af því síðara hafi komið fyrstu tilraunir til setningar og síðan umbrots í tölvum, sem þá voru sérhannaðar setningartölvur, og síðar komu einmenningstölvurnar með sín fyrstu frumstæðu ritvinnsluforrit.

Ég gaf eitt sinn út svokallaða sjónvarpsdagskrá. Á þeim tíma voru slík rit vélrituð og síðan klippt og límd saman og kannski voru rammar teiknaðir með penna eða þrykkilínum. Þrykkiletur var notað til þess að setja fyrirsagnir. Þessu skilaði ég í prentsmiðju og þar var dagskráin offsetprentuð.

Í prentsmiðjunum var þá þegar farið að nota filmusetningarvélar. Þar þurftu menn að kunna að reikna út hversu mikill texti færi í ákveðna spalta miðað við þessa og þessa leturstærð og -fót. Skömmu síðar kom á markaðinn byltingarkennd tölva, sem kölluð var umbrotstölva. Sameinaði hún skipanir, líkar og notaðar höfðu verið, og sýniskjá. Allt var þetta (og fleiri atriði) á einum skjá og var hægt að breyta á tiltölulega einfaldan hátt stærð svæðana sem tekin voru undir hina ýmsu þætti á skjánum. Þetta voru mín fyrstu persónulegu kynni af setningu og umbroti.

Á þessum setningar- og umbrotsvélum, var, líkt og í TeX/LaTeX, unnið út frá ákveðinni stærð umbrotsflatar með beinum skipunum í ákveðinni niðurskipaðri röð. Í LaTeX, skilst mér reyndar að þurfi að gefa upp síðustærðina fyrirfram, en í setningar- og umbrotsvélunum þurfti aðeins að gefa upp breiddina, því að ljósnæma filman/pappírinn, sem síðan var “prentað” á, var í rúllum. Engu að síður eru miklir skyldleikar með TeX og þessum gömlu setningar- og umbrotsvélum. Munurinn er einkum sá, að með TeX og viðspunnum forritum/fjölvasettum getur sá sem ekki á mikla peninga gert svipaða hluti og aðeins fyrirtæki gátu leyft sér, þar sem TeX forritin og fontar þess eru ýmist ókeypis eða mjög ódýr og ganga þess utan mjög vel á frjáls og ókeypis stýrikerfi eins og Linux og FreeBSD.

Efni og útlit

Þegar menn eru að skila ritgerð til prófs eða annarra slíkra hluta, þá hafa menn ekki miklar útlitslegar áhyggjur af öðru en að koma verkefninu frá sér á þann hátt, sem gangi hæfilega í augun á kennaranum/prófessornum. En með ýmis önnur verkefni er hlutunum á annan veg farið. Ýmist þarf að birta efnið á mjög ólíkum tækjum, svo sem á A4 pappír, á bók í smærra broti, sem HTML vefsíðu, eða til lestrar á lófatölvu, svo nokkur dæmi séu tekin. Einnig getur þurft að vinna með skjalið aftur og aftur og breyta því með einhverjum hætti annað slagið, t.d. á eins til tveggja ára fresti. Þá standa menn gjarnan frammi fyrir því að nýja uppfærslan á ritvinnsluforritinu fer að eiga í vandræðum með gamla skjalið og engin leið er að temja það nema með því að hanna skjalið upp á nýtt og afrita og líma efnið (textann) úr gamla skjalinu yfir í það nýja í sérstökum ham. Stundum gengur það heldur ekki áfallalaust. Hvað er þá til ráða? Eins og segir í lauslegri endursögn úr “Mastering XML”: It all began with GML (bls. 5).

Sem sagt löngu áður, eða 1967 komust nokkrir menn úr lögfræði-, bókaútgáfu- og grafíkgeirunum að samkomulagi um að sértæk kóðun, sem þá þegar var til staðar við nokkrar stórar blaðaútgáfur (San Fransisco Chronicle o.fl.) og að því er virðist í grafíkinni líka, væri ekki heppileg að öllu leyti. Einn þeirra, William Tunnicliffe, stjórnarformaður Graphic Communications Associations (GCA) lagði fram tillögu um að aðskilja innihald og form (stíl) með því sem þeir kölluðu almenna kóðun.

Þessa hugmynd tóku þrír frumherjar frá IBM, Charles Goldfarb, Edward Mosher og Raymond Lorie upp og útfærðu nánar í hugmynd að merkingakerfi, sem þeir kölluðu GML, sem táknaði nöfn þeirra félaga, en gæti allt eins staðið fyrir Generalized Markup Language, sem er það sem gjarnan hefur verið notað sem skýring á GML síðan.

Hér er dæmi um merkingar úr GML kerfi, sem kallað var Document Composition Facility (DCF), sem Goldfarb og fleiri unnu fyrir IBM:

	:h1.Chapter 1: Introduction
	:p.GML supported hierarchial containers, such as
	:ol
	:li.Ordered lists (like this one),
	:li.Unordered lists, and
	:li.Definition lists.
	:eol.
	as well as simple structures.1

Glöggir lesendur átta sig á hversu líkindin við HTML eru mikil, en HTML er flokkað sem dótturkerfi SGML. SGML – Standard Generalized Markup Language – þróaðist upp úr GML undir styrkri stjórn Goldfarbs og þátttöku hundruða annara.

Mikill munur er þó á HTML og SGML að því leyti að SGML skiptir sér eingöngu af strúktúrnum en ekki útliti, en HTML lýtur meira að útliti, þó svo að sjálft merkingakerfið eigi við ákveðinn strúktúr. HTML er hins vegar bundið fyrirfram ákveðnum skjal-skilgreiningum (Document Type Definition (DTD), sem forrit eins og vefvafrar nota til þess að forma innihaldið. HTML er einnig mjög takmarkað að stærð og afli. Verkefni SGML var hins vegar miklu stærra.

Charles Goldfarb skrifaði 1971:

Að hluta skjalagreininguna frá eiginleikum forrita (s.s. vafra, ritvinnsluforrita o.þ.h. – innskot BBJ) gerir mögulegt að skýra eiginleika, sem öll skjöl sömu tegundar hafa... Möguleikinn á að hafa slíka 'tegundargreiningu' gæti bætt nýjum verkunum við textavinnslukerfin. Forrit gætu bætt merkjum við ófullkomin skjöl eða gert ritara viðvart með gagnvirkum hætti með því að sýna merkin. Almennt merkjamál (a generalized markup language) myndi þá leyfa fullar upplýsingar um skjal sem geyma á, sama með hvaða hætti skjalið væri notað eða birt.

SGML hefur verið mikið notað í flugvélaiðnaðinum, bæði vegna þess að ýmiss konar skjöl, handbækur, “Service Bulletin”, “Service Letter” þarf að endurskoða og breyta aftur og aftur, og einnig hentar SGML vel til þess að vinna upplýsingar úr gagnagrunnum.

SGML og aðrar tegundarmerkingar

Nú þykir mér rétt að sýna dæmi um SGML í sinni einföldustu mynd.

<ljod>
  <titill>Um afa</titill>
  <erindi>
    <hending>Afi minn fór á honum rauð</hending>
    <hending>eitthvað suður á bæi</hending>
    <hending>að kaupa bæði sykur og brauð,</hending>
    <hending>sitt af hvoru tæi.</hending>
  </erindi>
  <erindi>
    <hending>Aftur fór hann afi minn</hending >
    <hending>alla leið til baka.</hending >
    <hending>Komst hann heim í kofa sinn</hending >
    <hending>knár, án þess að saka.</hending >
  </erindi >
</ljod>

Hér sjáum við að merkin (merkingarnar) umlykja hver um sig ákveðna heild, sem greina má sem einingu út af fyrir sig. <ljod> lykur þannig um titil og tvö erindi, <titill> lykur um titilinn “Um afa”, <erindi> lykur um fjórar hendingar hvort og <hending> um hvert sína – já – hendingu.

Nú gætum við viljað sjá eitthvað meira um þetta ljóð. Þá er t.d. hægt að bæta við svokölluðum “attributum”, eða einkunum (sbr. þá málfræði, sem ég lærði í skóla í gamla daga). Við gætum sagt:

<ljod Hofundur=”Jón og ég” Samid=”1934” BirtFyrst=”Tímarit Máls og menningar”>
  <titill Upprunalegur=”ja”>Um afa</titill>
  <erindi Nr=”1”>
    <hending Lina=”1”>Afi minn fór á honum rauð</hending>
    <hending Lina=”2”>eitthvað suður á bæi</hending>
    <hending Lina=”3”>að kaupa bæði sykur og brauð,</hending>
    <hending Lina=”4”>sitt af hvoru tæi.</hending>
  </erindi >
  <erindi nr=”4”>
    <hending Lina=”1”>Aftur fór hann afi minn</hending>
    <hending Lina=”2”>alla leið til baka.</hending>
    <hending Lina=”3”>Komst hann heim í kofa sinn</hending>
    <hending Lina=”4”>knár, án þess að saka.</hending>
  </erindi>
</ljod>

Hér er farið að segja ýmislegt um efnisinnihaldið.

Merkið <ljod> fær nú þrjár mismunandi einkunnir: höfund, hvenær samið og hvar birt. Þetta kallast “metadata”. Þessar einkunnir geta verið mjög hjálplegar við að endurbirta eða velja hluta úr skjalinu eða að raða því upp á nýtt.

Þetta getur þó ekki staðið svona eitt og út af fyrir sig. Í SGML verður alltaf að vera til staðar DTD. DTD-ið segir til um hvernig uppbyggingin í SGML skjali megi vera og verði að vera. Ef við ætluðum að gera DTD (Document Type Definition) fyrir þetta ljóð, gæti það litið svona út:

<!ELEMENT ljod	-  -	(titill?, erindi+)>
<!ATTLIST ljod
		Hofundur		CDATA	#IMPLIED
		Samid		CDATA	#IMPLIED
		BirtFyrst		CDATA 	#IMPLIED	>
<!ELEMENT titill	- 0	(#PCDATA)>
<!ATTLIST titill	Upprunalegur (ja | nei) ja 	>
<!ELEMENT erindi	- -	(hending+)>
<!ATTLIST erindi	Nr 	CDATA	#IMPLIED	>
<!ELEMENT hending 	- 0	(#PCDATA)>
<!ATTLIST hending 	Lina	CDATA	#IMPLIED >

Þessi DTD getur staðið einn eða byggður inn (fremst) í SGML skjalið sjálft. Einnig getur hann kallað á DTD einingar, sem skilgreindar eru annars staðar. Þetta dæmi er sem sé mjög einfalt.

Fyrst er sagt að “ljod” geti innihaldið titil (spurningarmerkið þýðir að þessi þáttur sé valfrjáls og megi þá aðeins koma fram einu sinni í sínu samhengi, þ. e. í “ljod” elementinu), sem verði þá að koma á undan erindi. “ljod” verður að innhalda a.m.k. eitt erindi. Attlistinn útskýrir einkunnirnar (attributes) og segir til um hvers eðlis þær eru.

“titill” er Parsed Character Data, þ.e. texti.

“erindi” verður að innihalda a.m.k. eina hendingu. Ef við vildum að hendingar í erindi væru að lágmarki tvær, yrði skipunin svona:

<!ELEMENT erindi	- -	(hending, hending+)>

Eins og við sjáum af þessu, er mikill eðlismunur á útlitsmerkingum eins og í TeX og öðrum umbrotsforritum og SGML fjölskyldunni. SGML varðar ekkert um endanlegt útlit en útvegar aftur á móti upplýsingar um hvernig megi greina og vinna áfram þann texta og annað efni, sem SGML skjalið inniheldur. Merkingar eða merki (markup) í SGML fjölskyldunni eru lýsandi fyrir innihaldið. Útlitsmerkingar eru hins vegar aðeins til þess að skilgreina hvernig menn (höfundur) vill sjá – og að aðrir sjái – höfundarverk sitt í einu tilteknu formi, oftast á pappír.

XML er mjög líkt SGML, nema hvað það er útvíkkanlegt (eXtensible). Hægt er að nota DTD með því en einnig má nota aðrar skilgreiningarreglur, svo sem Schema. Þannig er hægt að setja reglurnar sjálfar í gildu XML skjali.

Það er útbreiddur misskilningur að XML hafi með útlit að gera. Það er ekki svo – alla vega ekki beinlínis. Þessi “misskilningur” kemur oftast úr herbúðum örmýktarmanna2, en þeir virðast leggja mikla áherslu á að fá fólk til að halda að XML sé m.a. eins konar umbrotskerfi. Hins vegar er til n. k. xml undirtegund, sem tekur á útlitinu. Þar má nefna XSL, eða Extensible Stylesheet Language (ekki sama og XSLT, sem er XSL Transformations, sem er eins konar vörpunarkerfi). Þessu stílakerfi eru sum rituð í XML kóða. Þá er oft hægt að nota CSS (Cascading Style Sheets) beint á XML, en það er mikið notað við HTML og ekki síst XHTML. CSS flokkast hins vegar undir “Script”.

Í XML er að finna ýmsa flokka, svo sem NameSpaces, sem er kerfi, sem nýtist einkum í stærra samhengi eins og netviðskiptum o.v., en engan veginn er rúm hér til þess að fara inn á það svið og auk þess hef ég ekki næga þekkingu til þess að tala um það af viti.

Tilgangur þessarar greinar er að gera lítillega grein fyrir mismuninum á SGML fjölskyldunni og TeX fjölskyldunni. Ógrynni bóka er til um allt þetta hvert fyrir sig, ekki síst XML, sem virðist í sumum tilfellum ofnotað eða misnotað, einkum vegna þess að menn missa sjónar á megin tilganginum: að greina efni frá útliti.

Hægt væri að vísa á margar bækur, en ég læt mér nægja að vísa á vef World Wide Web Consortium http://www.w3.org, leitarvélar eins og Google, bókavefi eins og http://www.amazon.com, http://www.bn.com (Barnes & Noble).

Að splæsa

Ég reikna með að lesendur hafi hugmynd um hin öflugu (en kannski seinvirku) kerfi sem notuð eru til þess að forma SGML skjöl. Í rauninni er þeim varpað úr SGML yfir í troff, groff, TeX/LaTeX eða slík umbrotskerfi, sem við þekkjum í UNIX/Linux umhverfinu. Þetta er til dæmis gert með “man-pages” og fleiri hjálpargögn í Linux/UNIX. Ég get ekki útlistað þetta, því að ég hef nánast enga reynslu í að vinna með þessum hætti. Ég aðeins veit að þetta er gert og um það bil með hvaða hætti það er gert.

En sjáum við nokkurs staðar þessi ólíku kerfi, útlitsskipanasettin og innihaldslýsingasettin brædd saman. Og ef þau eru brædd saman, er þá hægt að slíta þau sundur aftur án skaða?

Ég kynntist SGML u. þ. b. ári eftir að ég byrjaði á mínum núverandi vinnustað, hjá Flugfélaginu Atlanta. Árið 1996 var settur í mínar hendur bunki af diskettum og nokkrar segulbandskasettur sem innihéldu svokölluð Service Bulletins frá Boeing. Þetta var allt í skrítnu formi – allt í ASCII texta en með einhverjum haug af merkingum eða upplýsingum, sem var framan við og utan um einstaka textaliði. Ennfremur var þar að finna einhverjar diskettur með einhverjum skrám, sem virtust ekki hafa að geyma neinn vitrænan texta, þrátt fyrir að vera í ASCII textasniði. Sá sem ég tók við þessu af hafði ekki mikla þekkingu á þessu aðra en að segja mér að þetta væri í SGML. Þetta vakti forvitni mína og ég náði mér fljótlega í rit á netinu, eins og “A Gentle Introduction to SGML – Chapter two of Guidelines for Electronic Text Encoding and Initiative (TEI P3)” og litla bók um SGML, “Practical SGML, Second Edition” eftir Eric van Herwijnen, útgef. Kluwer Academic Publisher. Þessi rit reyndust of lítil til þess að ég gæti lært nema hugmyndafræðina á bak við SGML. En ég lærði þó nóg til þess að geta notað þau gögn, sem ég hafði í höndum og sífellt var að bætast við. Það gekk þó ekki fyrr en ég hafði lært Linux og sett hann upp á tölvu hjá mér í vinnunni, því að vinnutæki fyrir SGML voru afskaplega takmörkuð í Windows umhverfinu á þeim tíma, en í Linux, eins og í UNIX, var einmitt mjög mikið ritað í SGML. Í Linux fékk ég þau tól og tæki sem ég þurfti til.

Enn voru ekki öll ljón úr vegi, því að ég þurfti að gera ákveðnar breytingar á skránum áður en hægt var að nýta þær. Boeing sendi smáforrit til þess arna, en ég þurfti hjálp hjá öðrum Linux manni, sem um leið var fær forritari, til þess að gera þessar breytingar.3

En það skoðar enginn skjöl beint í SGML, er það? Rétt er það, að ekki er mikið um tól eða tæki til þess fallin, en þó fann ég nokkur, en aðeins eitt, sem ég gat notað í mínu umhverfi. Það hét Panorama frá SoftQuad. Inn í það var byggt gífurlega öflugt leitarkerfi og athugasemdakerfi, sem virkaði þannig (sem þá var algjör nýung) að í ákveðið skjal, sem var aðgengilegt öllum, gat hver notandi fyrir sig sett inn merkingar, en aðeins hann sá eða varð var við sínar athugasemdir. Mjög gagnlegt einmitt við notkun skjala sem þessara. Þetta er eins og að vera með eigin pappírsafrit, sem maður getur krotað á að vild fyrir sig, nema að þarna var um að ræða sama skjalið og allir aðrir voru að skoða og sáu sem hreint skjal þrátt fyrir allar athugasemdir og krot hins aðilans. Merkingarnar voru þannig skráðar í sérstaka einkaskrá notandans og tengd almenna skjalinu.

Því miður, eins og með svo mörg góð einkaeignarforrit, þá var þetta selt til keppinautar, sem síðan sá ekki ástæðu til að halda áfram þróunarvinnu við þetta forrit, sem var svo miklu ódýrara en hans.

Nú gerist það á svipuðum tíma að XML er að þróast hratt, Boeing ákveður að fara meira út í PDF og XML og umbrotsforrit, sem hafði verið til í dýrri sérútgáfu með SGML stuðningi, býður almennan XML stuðning á sama verði og einfaldari útgáfan.

Teningunum var kastað. Ég fékk leyfi til þess að fara á námskeið í Structured FrameMaker® og kynna mér þetta. Þvílík bylting!

FrameMaker var upprunalega hannað af Frame Technology Corp., en Adobe keyptu það í lok ársins 1995 eða byrjun 1996 (sjá: http://www.fact-index.com/f/fr/framemaker.html). Hvenær þeir hófu stuðning við SGML (FrameMaker +SGML), er mér ekki kunnugt, en fyrir voru möguleikar á beinni formöttun (bold, skáletur, undirstrikun, fontastærð o.s.frv.) eins og í öllum ritvinnsluforritum, en einnig mjög vel skipulögðum leiðum til að setja upp stíla, bæði fyrir málsgreinar og stafbundnar útlitsbreytingar (paragraph and character style formatting). Forritið er upprunalega hannað á og fyrir Sun UNIX, en fæst nú einnig fyrir HPUX og AIX auk Windows. Því miður var stuðningi við Macintosh stýrikerfin hætt í Apríl sl.

“Structured” FrameMaker notar ekki beint SGML eða XML heldur sitt eigið merkjakerfi, sem kallast EDD – Element Definition Document. Hér sameinast innihaldslýsingarkerfi og útlitsteikningin mjög vel.

EDD er textaskrá, sem má formsníða (þarf ekki að vera óformaður ASCII texti), sem virkar svipað og sambland af DTD og stílkerfi svo sem CSS. Fyrst er grunnelementið skilgreint (hvers eðlis það er og hvað það má og á að innihalda) og þar má setja grunn formsniðið fyrir skjalið ef vill. Síðan er spunnið áfram líkt og í DTD, nema að alls staðar eru möguleikar á að setja formsniðsskipanir inn. Þær má setja inn með ýmsum hætti, t. d. má vísa til stílmáts, sem búið er til í FramMaker í skjalinu, sem EDD skjalið lýsir, einnig má setja þessi sniðmát í EDD skjalinu sérstaklega og ennfremur er hægt a nota ættartengdar formskipanir, þannig að ákveðið form erfist frá móðurelementi til dótturelements, og síðan megi gera beinar eða hlutfallsbreytingar á þeim erfðum í dótturelementinu, sem þá erfast áfram o.s.frv. Þetta er gífurlega öflugt kerfi, og hentar einkar vel þar sem huga þarf að því að auðvelt sé að breyta útliti skjals fyrir mismunandi not eða “endastöð”, svo sem A4 öðrum megin, A5 báðum megin (hversu djúpur á kjölurinn að vera?), “Slide Show”, On-line PDF með eða án bókamerkja o.s.frv. Hvaða leið er valin fer eftir því hvað ritararnir hafa tileinkað sér eða hvers konar rit er um að ræða.

Þá hefur FrameMaker möguleika, sem ég hef hvergi annars staðar séð. Hægt er að hafa tilbúin mismunandi útlitssniðmát (templates), sem nota má til þess að draga allar eða hluta þeirra upplýsinga, sem þar eru geymdar, inn í skjalið, sem vinna á í. Einnig má draga þessa þætti inn úr hvaða öðru FrameMaker skjali sem er.

Enn er vert að nefna að FrameMaker býr yfir öflugu breytukerfi fyrir texta og einnig möguleika á að setja og birta eða birta ekki skilyrtan texta eða annað efni. Þá er hægt að hengja inn í skjal önnur sjálfstæð FM skjöl. Það er mjög hentugt, þegar ávallt þarf að birta nýjustu upplýsingar um mismunandi atriði. Þá er hægt að gera þær breytingar í grunnskjalinu og FM getur þá uppfært þær upplýsingar sjálfkrafa í aðalskjali, sem vísar í grunnskjalið.

Nú eru tvö og hálft ár síðan ég byrjaði að læra FrameMaker og ég er enn að læra. Ástæðan fyrir að ég eyði svo miklu rými í það forrit, er að ég hef hvergi séð neitt í líkingu við það hvað varðar möguleikana á samnýtingu þessara tveggja þátta, útlitshönnunar og efnislýsingar.

En nú spyrð þú: Þegar búið er að sameina þetta svona, er þá ekki allt fast og illmögulegt að slíta þetta sundur aftur? Svarið er: Nei. Inn í FrameMaker er innbyggt enn eitt kerfi, sem er vörpunarsnið, þar sem varpa má úr EDD yfir í XML eða SGML og til baka.

Þá er enn eitt skráarsnið, sem opnar heiminn fyrir FrameMaker og öfugt, en það er MIF, sem er í raun hreint ASCII textaform. Öll FrameMaker skjöl er hægt að vista sem .mif skjöl og lesa í hvaða textaritli sem er (TextPad, Emacs, Vi). Þar sjáum við að í raun er allt FrameMaker skjalið byggt upp í ákveðinni skipan (stucture). MIF skjalið lítur á margan hátt út líkt og XML skjal. Þarna er líka hægt að gera beinar breytingar og vista skjalið til baka yfir í FrameMaker skjalasnið (.fm) eða varpa því yfir í t.d. TeX. En vörpun úr .mif yfir í TeX eða önnur skjalasnið en .fm, hef ég aðeins lesið um en ekki reynt.

Nokkrar vísanir

Vörpunar milli TeX og MIF er ekki getið hér: http://www.tex.ac.uk/cgi-bin/texfaq2html?label=fmtconv

Hér er hins vegar vörpun milli mif og LyX: http://www.cs.brandeis.edu/~pablo/mif2lyx/mif2lyx, sbr. að ofan, bls 1

DBSlide notar DSSSL til þess að varpa SGML yfir í ýmis önnur skráasnið, m.a. TeX og MIF: http://ourworld.compuserve.com/homepages/hoenicka_markus/dbsmc205.html

Cameron Laird er með nokkrar hugmyndir um vörpun milli mismunandi skráasniða hér: http://phaseit.net/claird/comp.text.frame/frame.html



Böðvar Björgvinsson
Útgáfustjóri tæknirita



1Mastering XML, Sybex 2001, bls. 5.

2Örmýkt, örmjúkur = micro-soft.

3Þessi maður er Einar Þór Einarsson, nú hjá Frisk.

/home/bodvar/Documents/TeX/TeX_og_efnisskipuð_ritun_Rev1.sxw Bls 8