SCHEMA ST4
# SCHEMA ST4

SCHEMA ST4 (oft auch kurz ST4 genannt) ist ein professionelles Redaktionssystem zur Erstellung und Verwaltung von Produktinformationen (Handbücher, Kataloge, Loseblattwerke, Onlinehilfe).

## Geschichte

Entwickelt wurde die Software seit 2001 in der Programmiersprache C# auf Basis des .NET Framework. Es löste im Jahre 2003 als Nachfolger das bis dahin von der SCHEMA Gruppe entwickelte Redaktionssystem SchemaText 3 ab.

## Arbeitsweise

Als Client/Server-basiertes System werden die Daten in einer relationalen Datenbank gespeichert. Hierfür werden die Informationen in einem Rich-Client in einzelne Informationsbausteine (Knoten genannt) unterteilt und in der Datenbank medienneutral als XML-Daten gespeichert. Dabei werden die Knoten über relationale Beziehungen (Links) zu komplexen Informationseinheiten verbunden.

Die einzelnen Informationsbausteine werden komponenten- oder themenbezogen in einem Informationspool gespeichert und anschließend über Links zu Dokumenten zusammengestellt. Diese Dokumente können aufgrund ihrer medienneutralen XML-Speicherung in verschiedene Zielformate (PDF, RTF, HTML, HTMLHelp, DITA, …) transformiert werden. Hierbei kommen die Konzepte des Single Source Publishing zum Einsatz.

## Besonderheiten

Neben einer offenen API für den Zugriff auf das Objektmodell, die Daten und die Komponenten der Software, stellt das System einen Interpreter für einen Datenzugriff auf XML-Basis zur Verfügung. SCHEMA ST4 Transformation oder kurz STT ist eine Programmiersprache für den Zugriff sowie zur Transformation von Daten, die in „SCHEMA ST4“ gespeichert sind. Das Ziel der Transformation sind XML-Daten, die mit Standardsprachen wie XSLT weiterverarbeitet werden können. STT ist von der Syntax und der Funktionsweise stark an XSLT 1.0 angelehnt, beinhaltet dabei jedoch Erweiterungen aus XSLT 2.0 sowie EXSLT. Als Quelle dient aber kein „XML Document Object“-Modell, sondern das „ST4 Object“-Modell. Um auf das gesamte Objektmodell zugreifen zu können, wurden neben den in XSL verfügbaren Achsen (wie z. B. child::*, parent::*, attribute::*) weitere Achsen zur Navigation eingeführt (wie z. B. class::* oder outgoinglink::*).

## Auszeichnungen

* 2003: Microsoft .NET Solutions Award, 3. Platz in der Kategorie die besten Lösungen für Großunternehmen und Mittelstand
* 2008: Industriepreis 2008, Auszeichnung im Bereich Software
* 2016: Bayerischer Gründerpreis 2016, Auszeichnung im Bereich Aufsteiger
