Section: New Results
Tralics: a LaTeX to XML Translator
Participant : José Grimm.
The major use of Tralics remains the production of the RaWeb (Scientific Annex to the Annual Activity Report of Inria),  . The input is a LaTeX file, converted by Tralics into an XML file; this file is converted to another XML file, conforming to a new DTD, via xslrproc ; this new file is converted to HTML or XSL-FO via the use of style sheets; the XSL-FO file formatted into Pdf by pdfTeX, thanks to the xmltex package that teaches TeX the subtleties of XML and utf-8 encoding, and two packages for the XSL-FO and MathML commands. This process is completely automatic: it suffices to call make ; another possibility consists in sending a tar file with the sources to iRAbot (the Inria RaWeb Robot). Once authors have finished writing their contributions, all files are sent to a common place, and processed by a tool named RalyX. Since 2002, a lot of people have worked on these tools, for instance M.P. Durollet, J. Grimm, C. Rossi, B. Marmol, A.M. Vercoustre, A. Benveniste, I. Vatton, J.-P. Verjus, J.-C. Le Moal, L. Pierron.
Other applications of Tralics consist in putting scientific papers on the Web; for instance Cedram (http://www.cedram.org (Centre de diffusion de revues académiques mathématiques), that publishes the Journal de théorie des nombres de Bordeaux , uses Tralics for the abstracts and plans to translate full papers; on the other hand the Connexions project of the Rice University is a environment for collaboratively developing, freely sharing, and rapidly publishing scholarly content on the Web, it uses it as LaTeX importer.
The main philosophy of Tralics is to have the same parser as TeX, but the same semantics as LaTeX. This means that commands defined in the eTeX binary, including \chardef , \catcode , \csname , detokenize etc., behave in Tralics. On the other hand, the semantics of most LaTeX commands are preserved; some command were re-implemented this year in order to take into account certain details (including local and global float placement instructions).
A minor versions have been released this year, namely 2.15.6 in November. The documentation consists in some technical reports   ,  ,  , they are regularly updated, especially the HTML version (produced by Tralics). Some new packages were added to the system (graphicx, xkeyval, color), and for efficiency reasons, part of the code is implemented in the C++ kernel. The referencing system was completely rewritten, so that for instance the XML document contains the same equation numbers as the PostScript version (in the RaWeb case, equation numbers are computed by the XML-to-HTML style sheet). The RaWeb preprocessor was removed: all commands specific to the Activity Report are now defined in package files, the kernel containing some primitives that can check the validity of some arguments versus a keyword list defined in the configuration file. One can add or removes entry types and fields in the bibliography.