Hypertext Transformation Language (HTTL) HTTL ist eine spezialisierte Programmiersprache zur Erzeugung von Hypertextsichten auf lineare, XML-annotierte Dokumente. Im Gegensatz zu anderen Transformationssprachen wie z.B. Die Hypertext Transformation Language erlaubt die Generierung sehr unterschiedlicher Hypertextsichten, z.B. die Erzeugung von Modulen verschiedener Granularität, 1:n-Links, prozedural und semantisch typisierte Links. Im Falle von 1:n-Links können die Linkziele nach verschiedenen Kriterien flexibel geordnet werden (Ranking), dies verwenden wir beim terminologiesensitiven Linking . HTTL stellt Sprachkonstrukte für verschiedene Hypertextualisierungsoperationen bereit:
Zur Zeit sind nur die ersten beiden Hypertextualisierungsoperationen – Segmentierung und Linking – implementiert. Die Kriterien zum Segmentieren und Linken werden oft (informell) in Form von Konversionsregeln ausgedrückt, z.B.:
Solche Konversionsregeln – die oft Teil einer umfassenderen Konversionsstrategie sind (siehe Projektbeschreibung ) – können mit HTTL formalisiert werden. Wozu braucht man dafür eine spezielle Programmiersprache? Konversion von Text in Hypertext kann natürlich auch erreicht werden, indem die Regeln einer Konversionsstrategie in einer gängigen Programmiersprache (z.B. in XSLT) direkt implementiert werden. In der ersten Phase des HyTex-Projekts wurde dies auch gemacht. Dieser Ansatz ist insbesondere dann sinnvoll, wenn die Zielsprache fest ist (z.B. HTML), wenn die Zielsprache die gewünschten Hypertext-Funktionalitäten unterstützt und die Konversionsregeln nicht mehr verändert werden sollen. Im HyTex-Projekt trifft dies jedoch nur zum Teil zu: HTML unterstützt z.B. keine 1:n-Links oder aufklappbare Inhaltsverzeichnisse, diese müssen – z.B. mit JavaScript – auf relativ aufwändige Weise nachgebildet werden. Mit Auf der Suche nach einer flexibleren Lösung entstand HTTL. Mit HTTL können automatisch verschiedene Ausgabeformate erzeugt werden, bisher HTML kombiniert mit JavaScript und CSS sowie XLink. Prinzipiell kann HTTL so weiterentwickelt werden, dass weitere Ausgabeformate, wie z.B. HTML in Kombination mit eingebettetem PHP-Code, erzeugt werden können. Ein HTTL-Benutzer kann zwischen diesen Techniken wählen, muss sie aber nicht beherrschen, da ihm abstrakte Konstrukte wie z.B. 1:n-Links zur Verfügung gestellt werden. Das Ziel ist, eine spezialisierte Transformationssprache zu entwickeln, die für Hypertext-Experten intuitiver und schneller zu erlernen ist als eine universelle Programmiersprache. Der Ansatz hat weitere Vorteile: Um Konversionsstrategien zu testen oder ändern zu können, müssen nur in HTTL formulierte Regeln geändert werden – kein Quellcode, der schwieriger zu warten ist. Eingabe- und Ausgabeformate können gewechselt werden, ohne die Regeln selbst zu ändern. HTTL ist somit ein Werkzeug, das die schnelle Entwicklung und das Testen verschiedener Hypertextsichten unterstützt, sowie die Entwicklung speziell auf ein Szenario angepasster Hypertextsichten. Damit ist das Hauptanwendungsgebiet die Hypertextforschung. Andere mögliche Anwendungsgebiete sind das Cross-Media-Publishing, da die Generierung verschiedener Ausgabeformate unterstützt wird, sowie die "Visualisierung" von XML-Daten durch Techniken wie Segmentierung und Linking. Bei der Implementierung kommen verschiedene XML-basierte Technologien zum Einsatz: XSLT, XPath, Schematron, und XLink. Die Entwicklung von HTTL ist Ziel des Dissertationsprojekts von |