TeXML
| (TeXML)
| |
|---|---|
| Basisdaten
| |
| Entwickler | Oleg A. Paraschenko |
| Aktuelle Version | Dezember 2010 |
| Betriebssystem | viele |
| Kategorie | Schriftsatz |
| Lizenz | MIT |
| http://www.getfo.org/ | |
TeXML ist – als Prozess – eine auf TeX basierende Alternative zu XSL-FO.
TeXML wurde als Open-Source-Projekt mit dem Ziel entwickelt, XML-Daten automatisch und in anspruchsvollem Layout als PDF darzustellen.
Mit Hilfe einer zusätzlichen Strukturdefinition überbrückt TeXML die Syntax-Unterschiede zwischen TeX und XML.
Technisch werden die Markup-Elemente von TeX im XML-Syntax dargestellt.
Entwicklung
TeXML ist eine Weiterentwicklung der ursprünglich von IBM erstellten Spezifikation, wobei zwischen Struktur und Transformation unterschieden werden muss.
- Struktur
- Die XML-Definition der TeXML-Struktur gilt seit 1999 als abgeschlossen (TeXML.dtd).
- Sie ist das Markup-Bindeglied zwischen TeX und XML.
- Transformation
- Die Transformationsprozesse arbeiten seit Ende 2010 stabil, so dass ein produktiver Einsatz der Technologie möglich ist.
- Der ursprünglich versuchte Ansatz einer Java-Anwendung wurde von IBM aufgegeben und nicht weiter verfolgt.
Anwendung
Zur Anwendung kommt TeXML zum Erstellen von Technischer Dokumentation aus XML-Daten.
Nach der Transformation TeXML → TeX steht die durch LaTeX definierte Sammlung von TeX-Makros zur Verfügung.
Mit Hilfe der TeX-Makros ist es möglich für die Publikation von XML-Daten ein beliebig konfigurierbares Layout zu definieren.
Besonderheiten
- TeXML erlaubt die automatische Publikation von XML-Daten mit Hilfe eines Textsatzprogramms, das für den manuellen Schriftsatz entworfen wurde.
- Im Gegensatz zur Publikation mit der XSL-FO Technik kann das Layout der zu publizierenden XML-Daten subtil mit Ausnahmeregeln im Zwischencode beeinflusst werden.
- Ausnahmeregeln sind vom Publikations-Prozess erlernbar, das Layout wird also mit jedem Generierungslauf verbessert.
- Hohe Geschwindigkeit des Publikations-Prozesses, besonders bei umfangreichen Dokumenten bis 100-fache Geschwindigkeit im Vergleich zu XSL-FO basierten Prozessen.
TeXML-Struktur

Die Dokumenttypdefinition der TeXML-Struktur besteht aus den XML-Elementen:
- Root element: TeXML
- Encoding commands: cmd
- Encoding environments: env
- Encoding groups: group
- Encoding math groups: math und dmath
- Encoding control symbols: ctrl
- Encoding special symbols: spec
- PDF literals: pdf
Aufbau eines TeXML-Dokuments
Ein Beispiel für ein XML-Dokument, das bereits in die TeXML-Struktur transformiert wurde:
<TeXML>
<TeXML escape="0">
\documentclass[a4paper]{article}
\usepackage[latin1]{inputenc}
\usepackage[T1]{fontenc}
</TeXML>
<env name="document">
Die Fehlinterpretation von Sonderzeichen als Steuerzeichen nennt man "Escaping", also: $, ^, >
</env>
</TeXML>
TeXML-Prozess
Der TeXML-Prozess transformiert die im Zwischenformat TeXML vorliegenden XML-Daten nach TeX:
\documentclass[a4paper]{article}
\usepackage[latin1]{inputenc}
\usepackage[T1]{fontenc}
\begin{document}
Die Fehlinterpretation von Sonderzeichen als Steuerzeichen nennt man "Escaping", also: \textdollar{}, \^{}, \textgreater{}
\end{document}
Unterstützung der Prozesse
Die Arbeiten auf der Erfassungsebene (XML) und der Publikationsebene (TeX) werden durch verschiedene Werkzeuge unterstützt, beispielsweise:
- Erfassungsebene: XML-Editoren
- – Eclipse (IDE), quelloffen
- – andere freie XML-Editoren
- Publikationsebene: Synchronisation zwischen dem Code und ausgegebenem PDF mit Hilfe von pdfSync:
Literatur
- Frank Mittelbach The LaTeX Companion – Tools and techniques for computer typesetting
- Michel Goossens The XeTeX Companion (PDF; 3,1 MB) – TeX meets OpenType and Unicode
Weblinks
- SGML/XML and (La)TeX – Lösungsansätze XML als TeX darzustellen
- TeXML: an XML syntax for TeX – TeXML-Projekt (Download)
- How to embed pdfsync into pdftex – Synchronisation zwischen Code und PDF
- TeXML: Typesetting XML with TEX (PDF; 182 kB) – Ursprüngliche Konzeption des TeXML Projekts
- TeXML: A three-part solution that provides a path from XML into the TeX formatting language – Kurzdarstellung des Projekts von IBM Research (Archiv)
Content Disclaimer
Informasi ini disarikan dari Wikipedia dan disajikan kembali untuk tujuan edukasi. Konten tersedia di bawah lisensi CC BY-SA 3.0. Kami tidak bertanggung jawab atas ketidakakuratan data yang bersumber dari kontribusi publik tersebut.
- The information displayed on this website is sourced in part or in whole from Wikipedia and has been adapted for the purpose of restating it. We strive to provide accurate and relevant information, however:
- There is no guarantee of absolute accuracy. Wikipedia is an open, collaborative project that can be edited by anyone, so information is subject to change.
- It is not intended to constitute professional advice. The content displayed is for informational and educational purposes only. For important decisions (e.g., medical, legal, or financial), please consult a professional.
- Content copyright. Wikipedia is licensed under the Creative Commons Attribution-ShareAlike License (CC BY-SA). This means that content may be reused with appropriate attribution and shared under a similar license.
- Responsible use. Any risk arising from the use of information from this website is entirely the responsibility of the user.