XSL-Transformationen

Für Print und Vorschau gibt es Transformationen, um  aus dem internen "Roh-XML" HTML zu erzeugen. Im Gegensatz zum Export-XML sind die Inhalte nicht in CData-Sections eingeschlossen und die Inline-Formatierungen noch in Originalform. (also z.B. ** statt <b>).


Es können 3 Transformationen festgelegt werden, die der Code dann an unterschiedlichen Stellen nutzt:

default-transformation
narrow-transformation
print-transformation

Momentan wird "narrow" für die Artikelsuche bei Artikelverweisen genutzt, "default" für die Vorschau der Artikelverweise selbst und für die Vorschau-Kachel in der Erweiterten Suche. Für die Vorschau-Kachel ist eigentlich auch "narrow" geplant (vgl. CONS-307 - Abrufen der Vorgangsdetails... STATUS ).


In der Druckvariante kann die Absatzstruktur mit übergeben werden (default: false). Konfigurationsbeispiel:

      article
preview:
          preview-html-provider:
            html-transformations:
              default-transformation: ${spring.cloud.config.uri}/${spring.application.name}/${spring.profiles.active}/${spring.cloud.config.label}/xsl/ArticleXml2Html.xsl
              narrow-transformation: ${spring.cloud.config.uri}/${spring.application.name}/${spring.profiles.active}/${spring.cloud.config.label}/xsl/narrowArticleXml2Html.xsl
              print-transformation: ${spring.cloud.config.uri}/${spring.application.name}/${spring.profiles.active}/${spring.cloud.config.label}/xsl/narrowArticleXml2Html_Print.xsl
            provider-parameters:
              print:
                convert-line-break-to-paragraph: true
              download:
                convert-line-break-to-paragraph: false


Die Transformationen sind jetzt ( ) für alle Installationen "gleich" eingecheckt (Abweichungen im nächsten Abschnitt):

WoAnz, DNT, FLZ, OPP, OWZ, REV, SZA, VD, TK, SAGA

Abweichungen (im XSL auskommentiert oder nicht):

  • DNT hat kleine Abweichungen (Link-Angabe oben und unten, Clusternamen erscheinen)
  • Blocksatz (justify) bei WoAnz und REV
  • die Variable articleLinkBase ist individuell verschieden (konkrete URL des Verlags)

Besonderheiten

In der Druck-Variante funktioniert momentan das korrekte Transformieren der Absätze. Die Inline-Formatierungen werden aber in Rohform durchgereicht. Versuche zur Umsetzung scheiterten bislang daran, dass dann Sonderzeichen wie
„“–
nur noch als Fragezeichen ausgegeben wurden. Es wird noch eine Variante benötigt, in der Strukturen zur Abarbeitung an Templates übergeben werden können.

Die beiden Vorschau-Varianten sind momentan identisch. Hier funktioniert die Umsetzung der Inline-Formatierungen fett/kursiv/unterstrichen/Inline-Link - vermutlich weil nie Absätze im Eingangs-XML übergeben werden. Das versuchsweise Nutzen der Vorschau-Transformation für den Druck führt zum Ergebnis mit "defekten" Sonderzeichen (offenbar wegen der dort enthaltenen Absätze?!?).

Mit https://www.data2type.de/xml-xslt-xslfo/xslt/xslt-referenz/include könnte man vermutlich individuelle Anpassungen beim Kunden transparenter machen (kundenspezifisches XSL konfigurieren, allgemeines XSL oben inkludieren, Template-Regeln durch kundenspezifisches XSL ggf. überschreiben - bei Dopplungen gilt die letzte Regel)