Langjährige Nutzer des SCHEMA ST4 DocuManagers können sich vielleicht noch an die 2005 eingeführte Funktion „Word-Import“ erinnern. Damals wurde versucht mit einem VBA-Makro (Visual Basic for Applications) die Struktur und Auszeichnungen eines beliebigen Word-Dokuments so zu verändern, dass eine gemäß DocuManager-Vorgaben ausgezeichnete Version des Dokuments entstand. Technisch wurde dazu jedes Zeichen des Word-Dokuments angeschaut und anhand des implementierten Algorithmus entschieden, welche Auszeichnung das Zeichen, das Wort oder der Absatz erhalten. Schön an dieser Implementierung war eigentlich nur, dass man aufgrund der Ineffizienz der Bearbeitung von Word-Dokumenten per VBA und den damals noch deutlich langsameren Rechnern dem Algorithmus bei der Arbeit zusehen konnte: wie von Geisterhand hat sich das Ursprungsdokument langsam in ein DocuManager-Dokument verwandelt, das dann importiert werden konnte. Zugegebenerweise ist der Spannungsbogen nach dem Beobachten der Verwandlung einiger Seiten deutlich abgeflacht.

Wir haben damals recht schnell eingesehen, dass die Implementierung der Funktion „Word-Import“ grundlegend überarbeitet werden musste und zwar in Bezug auf Effizienz, Anpassbarkeit und Erweiterungsmöglichkeit bzgl. des Imports anderer Dokumente. Das Ergebnis wurde mit dem DocuManager 2.0.1 im Jahr 2007 erstmals verfügbar. Neben der Implementierung hat sich dabei auch die Bezeichnung der Funktion geändert, die seitdem „Dokument-Import“ heißt. Mit der Version ST4 DocuManager 2012 lassen sich nun erstmals auch Adobe FrameMaker-Dokumente über die gleiche Funktion wie zuvor die Word-Dokumente importieren. Und das auch für unstrukturierte FM-Dateien.

FM-Dokumentimport

Der Dokument-Import arbeitet technisch auf XML-Strukturen: als Eingabe wird eine sehr einfach aufgebaute XML-Datei erwartet. Der interaktive Mapping-Dialog im DocuManager liest diese Datei ein und bestimmt die verwendeten Absatz- und Zeichenformatvorlagen (aus den verwendeten Elementen). Dabei werden auch Kontextinformationen ausgewertet (z.B. Absatz in Tabelle, Auflistung). Diese Absatz- und Zeichenformate können dann vom Benutzer den im DocuManager konfigurierten Formaten zugewiesen werden. Der Dokument-Import transformiert schließlich die Eingabe-XML-Datei, unter Berücksichtigung der Mapping-Informationen, in eine DocuManager-konforme XML-Repräsentation.

Um diese Eingabe-XML-Datei zu erzeugen, verwendet das DocuManager-Plugin im Adobe FrameMaker zunächst die eingebaute „Als XML speichern“-Funktion des FrameMaker. Anders als bei der Standardfunktion gedacht, wird jedoch nicht die Konvertierungstabelle des FrameMaker zum Zuordnen der Absatz- und Zeichenformate zu den erwarteten XML-Elementen genutzt. Das liegt zum einen daran, dass die Verwendung der Konvertierungstabelle FrameMaker-Spezial-Know How erfordert und zum anderen, dass die Vollständigkeit der Konvertierungstabelle für jedes Dokument neu geprüft werden müsste.

Weitere Nachteile der Standardfunktion „Als XML speichern“:

  • Die Tabellen verlieren einige ihrer Eigenschaften. Bspw. gehen die Informationen der Tabellen- und Spaltenbreiten verloren.
  • Alle Grafiken werden in ein von FrameMaker definiertes Format mit meist schlechterer Qualität als das Original konvertiert (standardmäßig GIF). Ändern könnte man das nur, wenn man eigens hierfür eine „Strukturierte Anwendung“ erstellt und diese in den XML-Exportprozess einbindet.

Das DocuManager-Plugin vermeidet diese Probleme mit Hilfe der folgenden Maßnahmen:

  • Die Tabelleneigenschaften werden vor dem XML-Export durch das ST4-FrameMaker-Importplugin eingesammelt und so gespeichert, dass sie beim XML-Import erhalten bleiben.
  • Die Informationen für Bildgröße und Pfad zum Originalbild werden beim XML-Export so gespeichert, dass sie beim XML-Import erhalten bleiben. Dort wo es möglich ist, wird die Bildreferenz auf den Pfad zur Originaldatei zurückgesetzt und die ungewollt konvertierte Bilddatei ignoriert. Außerdem bleiben die Bildgrößeninformationen erhalten.

Das Mapping der Absatz- und Zeichenformate erfolgt wie in ST4 gewohnt über den Mapping-Dialog des Dokumentenimports. Ändert sich das Quellformat einmal, sind meist nur geringe Anpassungen am Mapping erforderlich. Einmal gesicherte Mappings können immer wieder verwendet und mittels Drag & Drop geändert werden.

Leider geht das alles inzwischen so schnell, dass man auch bei größeren Dokumenten dem Algorithmus nicht mehr beim Arbeiten beobachten kann.