Difference between revisions of "User:Luigi.scarso/testpage"

From Wiki
Jump to navigation Jump to search
(Blanked the page)
 
(70 intermediate revisions by the same user not shown)
Line 1: Line 1:
=1 The data­base=
 
  
The  bibTEX  for­mat is rather pop­u­lar in the  TEX  com­mu­nity and even with its short­com­ings it will stay around for a while. Many pub­li­ca­tion web­sites can ex­port and many tools are avail­able to work with this data­base for­mat. It is rather sim­ple and looks a bit like  Lua  ta­bles. Un­for­tu­nately the con­tent can be pol­luted with non-stan­dard­ized  TEX  com­mands which com­pli­cates pre- or post­pro­cess­ing out­side  TEX . In that sense a  bibTEX  data­base is of­ten not coded neu­trally. Some lim­i­ta­tions, like the use of com­mands to en­code ac­cented char­ac­ters root in the  ascii  world and can be by­passed by us­ing  utf  in­stead (as han­dled some­what in  LATEX  through ex­ten­sions such as  <pre>bibtex8</pre> ).
 
    <br/>
 
The nor­mal way to deal with a bib­li­og­ra­phy is to re­fer to en­tries us­ing a unique tag or key. When a list of en­tries is type­set, this ref­er­ence can be used for link­ing pur­poses. The type­set list can be processed and sorted us­ing the  <pre>bibtex</pre>  pro­gram that con­verts the data­base into some­thing more  TEX  friendly (a  <pre>.bbl</pre>  file). I never used the pro­gram my­self (nor bib­li­ogra­phies) so I will not go into too much de­tail here, if only be­cause all I say can be wrong.
 
    <br/>
 
In  ConTEXt  we no longer use the  <pre>bibtex</pre>  pro­gram: we just use data­base files and deal with the nec­es­sary ma­nip­u­la­tions di­rectly in  ConTEXt . One or more such data­bases can be used and com­bined with ad­di­tional en­tries de­fined within the doc­u­ment. We can have sev­eral such datasets ac­tive at the same time.
 
    <br/>
 
A  bibTEX  file looks like this:
 
    <pre detail='typing'>
 
@Article{sometag,
 
author = "An Author and Another One",
 
title = "A hopefully meaningful title",
 
journal = maps,
 
volume = "25",
 
number = "2",
 
pages = "5--9",
 
month = mar,
 
year = "2013",
 
ISSN = "1234-5678",
 
}
 
</pre><br/>
 
Nor­mally a value is given be­tween quotes (or curly brack­ets) but sin­gle words are also OK (there is no real ben­e­fit in not us­ing quotes, so we ad­vise to al­ways use them). There can be many more fields and in­stead of strings one can use pre­de­fined short­cuts. The ti­tle for ex­am­ple quite of­ten con­tains  TEX  macros. Some fields, like  <pre>pages</pre>  have funny char­ac­ters such as the en­dash (typ­i­cally as  <pre>--</pre> ) so we have a mix­ture of data and type­set­ting di­rec­tives. If you are cov­er­ing non--eng­lish ref­er­ences, you of­ten need char­ac­ters that are not in the  ascii  sub­set but  ConTEXt  is quite happy with  utf . If your data­base file uses old-fash­ioned  TEX  ac­cent com­mands then these will be in­ter­nally con­verted au­to­mat­i­cally to  utf . Com­mands (macros) are con­verted to an in­di­rect call, which is quite ro­bust.
 
    <br/>
 
The  bibTEX  files are loaded in mem­ory as  Lua  ta­ble but can be con­verted to  xml  so that we can ac­cess them in a more flex­i­ble way, but that is a sub­ject for spe­cial­ists.
 
    <br/>
 
In the old  MkII  setup we have two kinds of en­tries: the ones that come from the  bibTEX  run and user sup­plied ones. We no longer rely on  bibTEX  out­put but we do still sup­port the user sup­plied de­f­i­n­i­tions. These were in fact pre­pared in a way that suits the pro­cess­ing of  bibTEX  gen­er­ated en­tries. The next vari­ant re­flects the  ConTEXt  re­cod­ing of the old  bibTEX  out­put.
 
    <pre detail='typing'>
 
\startpublication[k=Hagen:Second,t=article,a={Hans Hagen},y=2013,s=HH01]
 
\artauthor[]{Hans}[H.]{}{Hagen}
 
\arttitle{Who knows more?}
 
\journal{MyJournal}
 
\pubyear{2013}
 
\month{8}
 
\volume{1}
 
\issue{3}
 
\issn{1234-5678}
 
\pages{123--126}
 
\stoppublication
 
</pre><br/>
 
The split  <pre>\artauthor</pre>  fields are col­lapsed into a sin­gle  <pre>author</pre>  field as we deal with the split­ting later when it gets parsed in  Lua . The  <pre>\artauthor</pre>  syn­tax is only kept around for back­ward com­pat­i­bil­ity with the pre­vi­ous use of  bibTEX .
 
    <br/>
 
In the new setup we sup­port these vari­ants as well:
 
    <pre detail='typing'>
 
\startpublication[k=Hagen:Third,t=article]
 
\author{Hans Hagen}
 
\title{Who knows who?}
 
...
 
\stoppublication
 
</pre><br/>
 
and
 
    <pre detail='typing'>
 
\startpublication[tag=Hagen:Third,category=article]
 
\author{Hans Hagen}
 
\title{Who knows who?}
 
...
 
\stoppublication
 
</pre><br/>
 
and
 
    <pre detail='typing'>
 
\startpublication
 
\tag{Hagen:Third}
 
\category{article}
 
\author{Hans Hagen}
 
\title{Who knows who?}
 
...
 
\stoppublication
 
</pre><br/>
 
Be­cause in­ter­nally the en­tries are  Lua  ta­bles, we also sup­port load­ing of  Lua  based de­f­i­n­i­tions:
 
    <pre detail='typing'>
 
return {
 
["Hagen:First"] = {
 
author = "Hans Hagen",
 
category = "article",
 
issn = "1234-5678",
 
issue = "3",
 
journal = "MyJournal",
 
month = "8",
 
pages = "123--126",
 
tag = "Hagen:First",
 
title = "Who knows nothing?",
 
volume = "1",
 
year = "2013",
 
},
 
}
 
</pre><br/>
 
Files set up like this can be loaded too. The fol­low­ing  xml  in­put is rather close to this, and is also ac­cepted as in­put.
 
    <pre detail='typing'>
 
<?xml version="2.0" standalone="yes" ?>
 
<bibtex>
 
<entry tag="Hagen:First" category="article">
 
<field name="author">Hans Hagen</field>
 
<field name="category">article</field>
 
<field name="issn">1234-5678</field>
 
<field name="issue">3</field>
 
<field name="journal">MyJournal</field>
 
<field name="month">8</field>
 
<field name="pages">123--126</field>
 
<field name="tag">Hagen:First</field>
 
<field name="title">Who knows nothing?</field>
 
<field name="volume">1</field>
 
<field name="year">2013</field>
 
</entry>
 
</bibtex>
 
</pre><br/>
 
Todo: Add some re­marks about load­ing End­Note and RIS for­mats, but first we need to com­plete the tag map­ping (on Alan’s plate).
 
    <br/>
 
So the user has a rather wide choice of for­mat­ting style for bib­li­og­ra­phy data­base files.
 

Latest revision as of 14:10, 26 January 2014