Ditalog
msgbartop
DITA für Redakteure – von Single Source Publishing bis Self-Publishing
msgbarbottom

21 Feb 13 Metadaten im Text ausgeben

{lang: 'de'}

So geben Sie z.B. das Datum der letzten Änderung unterhalb des Seitentitels aus.

Dieser Artikel ist im kostenlosen eBook Ditalog als EPUB und PDF-Datei verfügbar.

Seit Jahren war ich auf der Suche nach einem Weg, die Metadaten, speziell das Erstellungs- und Aktualisierungsdatum eines Topics, im Text auszugeben. Da ich keine Lösung dafür hatte, habe ich das Aktualisierungsdatum immer im abstract hart kodiert. Bis ich im XMetal-Forum auf ein Skript stieß, das die beiden Datumsangaben im PDF-Output mit ausgibt. Dies habe ich selbst noch nicht ausprobiert. Da ich die Datumsangaben für den XHTML-Output benötige, habe ich das Skript für meine Online-Publikationen folgendermaßen angepaßt.

So soll es aussehen

Aktualisierungsdatum im Text ausgeben

Aktualisierungsdatum in der CHM-Hilfe

In den Formaten CHM, XHTML und EPUB soll oben rechts immer das Datum der Erstellung und der letzten Änderung in grauer Schrift kursiv ausgegeben werden. Und zwar rechtsbündig unterhalb des Titels und vor der Kurzbeschreibung shortdesc.

Metaangaben im Topic

Vorraussetzung ist, dass in jedem Topic, egal ob Task oder Concept etc, folgende Metadaten innerhalb des Tags prolog gefüllt sind.

<critdates>
  <created date="08.06.2012"/>
  <revised modified="01.07.2012"/>
</critdates>

Hat das Topic noch kein Änderungsdatum, lassen Sie den Tag für revised weg.

gen-user-header-Template anpassen

Suchen Sie innerhalb Ihres DITA-Open Toolkits im Ordner xsl/xslhtml nach der Datei dita2htmlImpl.xsl. Innerhalb dieser Datei muss das Template gen-user-header angepasst werden. Es ist das zweite Template im Bereich, der extra für Ihre Modifikationen für den Header, Footer etc angelegt wurde.

<!-- ========== STUBS FOR USER PROVIDED OVERRIDE EXTENSIONS ========== -->

Im vorhandenen Template gen-user-header fügen Sie, wie unterhalb des Kommentars folgende Zeile ist neu aufgeführt, eine neue Zeile ein.

<xsl:template name="gen-user-header">
  <xsl:apply-templates select="." mode="gen-user-header"/>
</xsl:template>
<xsl:template match="/|node()|@*" mode="gen-user-header">
  <!-- to customize: copy this to your override transform, add the content you want. -->
  <!-- it will be placed in the running heading section of the XHTML. -->
  <!-- folgende Zeile ist neu! -->
  <xsl:apply-templates select="*[contains(@class, ' topic/prolog ')]" 
  mode="gen-user-header"/>
</xsl:template>

Unterhalb dieses angepaßten Templates gen-user-header fügen Sie ein zweites Template hinzu.

<xsl:template match="*[contains(@class, ' topic/prolog ')]">
  <p align="right">
    <xsl:if test="*[contains(@class,' topic/critdates ')]/
    *[contains(@class,' topic/created ')]/@date">
    <span>Erstellt am <xsl:value-of select="*[contains(@class,' topic/critdates ')]/
    *[contains(@class,' topic/created ')]/@date"/>.   </span></xsl:if>
    <xsl:if test="*[contains(@class,' topic/critdates ')]/
    *[contains(@class,' topic/revised ')]/@modified">
    <xsl:for-each select="child::*[contains(@class,' topic/critdates ')]/
    *[contains(@class,' topic/revised ')]">
    <span>Letzte Änderung: <xsl:value-of select="@modified"/></span>
    </xsl:for-each>
    </xsl:if>
   </p>
</xsl:template>

Formatierung in der CSS-Datei

Der Absatzp hat eine class="header-metadata" erhalten. Diese Klasse müssen Sie noch Ihrer CSS-Datei hinzufügen.

.header-metadata
{
  text-align: right;
  font-style: italic;
  color: #C2C2C2;
  margin-right:10px;
}

Plugin

Da ich die Metadaten nur für Onlinehilfen und eBooks benöte, die des Öfteren aktualisiert werden, habe ich das Template in ein Plugin ausgelagert.

Links

Skript für Metadaten im Text für PDF-Dateien im XMetal-Forum

Dieser Artikel ist im kostenlosen eBook Ditalog als EPUB und PDF-Datei verfügbar.

16 Sep 11 Einbinden der Dita4Publishers-DTDs in XMLSpy und XMLMind

{lang: 'de'}

Als Quellcode-Editor nutze ich Altova XMLSpy. Als WYSIWYG-Editor XMLMind.  Bei allen anderen XML-Editoren wird es sich jedoch ähnlich verhalten. Es gilt hauptsächlich, die DITA-Catalog-Datei in die Catalogdatei des jeweiligen Editors einzubinden. Darum habe ich das eBook Dita4Publishers – von Eliot Kimber um ein Kapitel erweitert. Darin finden Sie eine Anleitung, wie Sie pubmap.dtd, article.dtd und weitere Document Type Definitions in XMLSpy einbinden und lokal nutzen können. Ein zweites Kapitel beschreibt das Einbinden der DTDs in XMLMind. Leider scheint das Programm noch keine Cataloge zu unterstützen. So fällt das Einbinden recht arbeitsintensiv aus. Aber ich bin ein Fan des Programms, weil es das Nutzen des Conref-Mechanismus´ so einfach macht.

Dieser Artikel ist im kostenlosen eBook Ditalog als EPUB und PDF-Datei verfügbar.

18 Feb 11 Autor unbekannt in EPUB-Vorschau

{lang: 'de'}

Autor und verlag unbekannt

Geben Sie Autor und Verleger in einer Ditamap an, so dass in der Adobe Digital Editions bei Autor und Verleger
Ihre Angaben stehen.

In vielen ePUB-Reader fällt der Umstand der fehlenden Angaben zu Autor und Verlag nicht auf. So z.B. im
Firefox-Addon ePUB-Reader. Jedoch in Adobe Digital Editions wirken die unbekannt-Vermerke wenig
vertrauenserweckend.

Angaben in der ditamap hinterlegen

Hinterlegen Sie in Ihrer Ditamap-Datei nach dem map-Tag und vor dem ersten topicref-Tag die
topicmeta-Angaben wie in diesem Beispiel.

<map id="DDR-Protagonisten" title="DDR-Protagonisten der 70er
und 80er Jahre" xml:lang="de-de">
<topicmeta>
<author>Andreas Petersell</author>
<publisher>Andreas Petersell</publisher>
<copyright>
<copyryear year="2011"></copyryear>
<copyrholder>Andreas Petersell</copyrholder>
</copyright>
</topicmeta>
...

Dieser Artikel ist im kostenlosen eBook Ditalog als EPUB und PDF-Datei verfügbar.

18 Jan 11 Fußnoten im Dita4Publishers-Plugin

{lang: 'de'}

Offizielles ePUB-Logo der IDPF.

Im Rahmen meines Projektes DDR-Protagonisten der 70er und 80er Jahre stieß ich auf den leidigen Umstand, dass im Dita4Publishers-Plugin von Eliot Kimber die Fußnoten zwar am Ende der Seite angezeigt werden, jedoch nicht im Text an der Stelle, wo sie definiert werden. Nicht nur für wissenschaftliche Texte ist die Fußnotenkennzeichnung unverzichtbar.

Natürlich verliert man Zeit, da man die Fehlerursache erst bei sich selbst sucht. Doch mein anfänglicher “Frust” schlug in Begeisterung um, als der “Meister” selbst binnen weniger Tage Abhilfe schaffte. Mit der Version 0.9.12 werden Fußnoten <fn> korrekt umgesetzt.

27 Sep 10 Neue Publikation für HTML, CHM und ePUB

{lang: 'de'}

Nun ist es mir schon wieder passiert: weil ich mir keine Notizen gemacht hatte, durfte ich von neuem herausfinden, warum mein HTML-Output mit dem Plugin TOCJS wieder die Umlaute nicht richtig darstellt.

Umlaute falsch in DITA TOCJS-Navigation

Falsche Darstellung der Umlaute im Navigationsframe des TOCJS-Plugins

Es gilt, die Datei \demo\tocjs\xsl\tocjs.xml zu editieren. Ändern Sie den Wert für encoding von utf-8 auf ISO-8859-1. So muß es am Ende aussehen:

<xsl:output method="text" encoding="ISO-8859-1"/>

Diese Aktualisierung des TOCJS-Plugins ist auch in die neue PDF-Publikation mit eingeflossen. In ihr sind sämtliche Kapitel mit den Ausgabeformaten HTML, CHM und ePUB mit eingebunden. Wenn Ihnen die Ditalog-Artikel eine Hilfe waren, schreiben Sie darüber in Ihrem Blog! Wenn Sie Ihnen keine Hilfe waren, schreiben Sie die Gründe ebenfalls in Ihrem Blog.

Text als PDF downloaden
Titel des Downloads: Ausgabeformate HTML und CHM
Art der Publikation: Kapitel
Beschreibung: Sämtliche Artikel zu den Ausgabeformaten HTML, HTML mit dem Plugin TOCJS (Javascript-Navigationsframe) sowie CHM (Windowshilfe). Ohne Leerseiten.
Aktualisiert am: 18.04.2011. Die EPUB-Generierung ist in der Kapitelausgabe "Dita4Publishers" zu finden.
Anzahl der Downloads: 452

21 Mai 10 DITA-Plugin dita4publishers installieren

{lang: 'de'}

Anleitung: So installieren Sie das Plugin Dita4Publishers.

  1. Downloaden Sie das Plugin unter http://sourceforge.net/projects/dita4publishers/files/. Die Dateisyntax ist dita4publishers-datum.zip.
  2. Entpacken Sie die Zip-Datei. Als Ergebnis erhalten Sie folgende Zip-Dateien und Ordner:
    • dita4publishers_toolkit_plugins.zip
    • documentation
    • epubs
    • sample_data
    • xslt
  3. Entpacken Sie die Datei dita4publishers_toolkit_plugins.zip in den Plugin-Ordner Ihrer Toolkit-Installation.

    Abbildung 1. plugins als Zielverzeichnis zum Entpacken

    Entpacken Dita For Publishers

    Im Ergebnis entstehen im Verzeichnis \plugins folgende Unterordner:

    • net.sourceforge.dita4publishers.doctypes
    • net.sourceforge.dita4publishers.epub
    • net.sourceforge.dita4publishers.pubmap.html
    • net.sourceforge.dita4publishers.shakespear.doctypes
    • net.sourceforge.dita4publishers.shakespear.html
    • net.sourceforge.dita4publishers.xmldomain.doctypes
    • net.sourceforge.dita4publishers.xmldomain.html
  4. Öffnen Sie das Toolkit auf Kommandoebene und geben Sie den Befehl
    ant -f integrator.xml

    ein.

  5. Probieren Sie die Generierung eines mitgelieferten Beispiels aus dem Ordner \sample_data, welcher beim Entpacken des ursprünglichen Archivs von Sourceforge entstanden ist. Kopieren Sie den Ordner \wizard-of-oz in den DITA-OT-Ordner \samples.
  6. Wechseln Sie in das Toolkit-Fenster und geben Sie folgenden Build-Befehl ab:
    java -jar lib\dost.jar /i:C:/DITA-OT1.5/samples/wizard-of-oz/wizard-of-oz.ditamap
    /transtype:epub
    /outdir:C:/DITA-OT1.5/out /logdir:C:/DITA-OT1.5/log

    Im Out-Ordner sollte sich nun die erzeugte epub-Datei befinden.

Da das Plugin die Templates für XHTML zu Grunde legt, ist es ratsam, mit einer ditaval-Datei über das Product-Attribut bestimmte Links herauszufiltern. So sieht dann mein Build-Befehl mit Filter folgendermaßen aus:

java -jar lib\dost.jar /i:C:/DITA-SRC/Installationsanleitung.ditamap
/transtype:epub /filter:C:/DITA-SRC/filters/admin-print.ditaval
/outdir:C:/DITA-SRC/out/epub-admin /logdir:C:/DITA-SRC/log

Text als PDF downloaden
Titel des Downloads: {title}
Art der Publikation: {version}
Beschreibung: {description}
Aktualisiert am: {meta-revised}
Anzahl der Downloads: {hits}