Was ist Hypermedia?

Hypermedia ist die Erweiterung des klassischen Hypertext-Begriffs um weitere Medientypen wie Bilder, Audio oder Video. Im Webkontext steht der Begriff vor allem für ein Architekturprinzip: Ein Server liefert nicht nur Daten, sondern zugleich auch die möglichen Aktionen, die mit diesen Daten verbunden sind, etwa in Form von Links und Formularen. Der Client muss also nicht im Vorfeld wissen, welche Operationen verfügbar sind; er folgt schlicht den Verweisen, die ihm der Server in der Antwort mitliefert.

Hypermedia im Web

Das Web ist von Beginn an als Hypermedia-System konzipiert worden. HTML enthält Verweise auf weitere Ressourcen, Formulare beschreiben mögliche Aktionen samt Methode und Zieladresse, und Browser sind bewusst als generische Clients gebaut, die sich nicht für eine bestimmte Anwendung interessieren. Den Workflow steuert in dieser Architektur der Server, indem er den Zustand einer Anwendung samt der nächsten möglichen Schritte als HTML ausliefert. Dieses ursprüngliche Modell ist erstaunlich tragfähig und liegt jedem klassischen Webauftritt zugrunde.

REST, HATEOAS und JSON-APIs

Im API-Umfeld wird Hypermedia oft unter dem Begriff HATEOAS diskutiert, was für Hypermedia as the Engine of Application State steht. Eine HATEOAS-konforme REST-API liefert in ihren Antworten nicht nur die eigentlichen Daten, sondern auch Verweise auf zugehörige Ressourcen und mögliche Folgeaktionen. Eine typische JSON-API ohne diese Hypermedia-Anteile gibt ausschließlich Daten zurück und überlässt es dem Client, alle URLs aus seinem internen Wissen zu konstruieren. Mit Hypermedia steuert dagegen der Server, was der Client als Nächstes tun kann, und kann URL-Strukturen oder Operationen anpassen, ohne dass jede Client-Anwendung nachzieht. 
In der Praxis haben sich verschiedene Hypermedia-Formate etabliert, darunter HAL als bewusst schlanke Variante, JSON:API mit einem stärker normierten Aufbau und schließlich HTML selbst, das als ursprüngliches Hypermedia-Format gerade in serverseitig gerenderten Anwendungen wieder an Bedeutung gewinnt.

HTMX und Hypermedia-getriebene Anwendungen

Die Bibliothek HTMX greift die ursprünglichen Hypermedia-Prinzipien gezielt für moderne Web-Frontends auf. Anstatt eine umfangreiche Single Page Application im Browser auszuführen, bleibt der Browser ein generischer Client, der HTML-Fragmente vom Server entgegennimmt und an passender Stelle einfügt. Aktionen werden direkt im HTML beschrieben, etwa als Attribute an Buttons oder Formularen, die eine bestimmte URL aufrufen und das Ergebnis in ein definiertes Zielelement laden. Im Vergleich zu einer Single Page Application verschiebt sich die Last zurück auf den Server, der den Anwendungszustand verwaltet und HTML inklusive der nächsten Aktionen ausliefert. Der Client bleibt einfach, das Build-Setup schlank. Im Gegenzug ist eine HTMX-Anwendung enger an den Server gekoppelt und folgt einem synchronen Antwortmodell, das nicht für jeden Anwendungsfall optimal ist.

Was sind die Vorteile von Hypermedia?

Hypermedia entfaltet seine Stärken vor allem dort, wo Anwendungen langfristig wartbar bleiben sollen. Da der Server Verweise und Aktionen mitliefert, lassen sich URLs oder Operationen anpassen, ohne dass jeder Client neu ausgerollt werden muss. Antworten sind in einem gewissen Maß selbsterklärend, weil sie ihre möglichen Folgeaktionen mitführen, was die Einarbeitung in eine API erleichtert. Drei Eigenschaften werden besonders häufig genannt:

  • Evolvability, also die Möglichkeit, eine API kontrolliert weiterzuentwickeln, ohne Clients zu brechen
  • Decoupling, weil Clients Links folgen, statt sie selbst zu erzeugen
  • Self-Describing-Charakter der Antworten, der Dokumentation und API näher zusammenrückt

Was bedeutet Hypermedia für die Webentwicklung?

Mit dem Aufkommen von HTMX und ähnlichen Ansätzen erlebt der Hypermedia-Gedanke im Web eine Renaissance. Für Projekte mit klassischen serverseitigen Stacks wie TYPO3 ist das eine willkommene Entwicklung, weil Fluid-Templates und Hypermedia-getriebene Frontends sehr natürlich zusammenpassen. Inhalte sind sauber crawlbar, native HTML-Elemente erleichtern Accessibility, und die Komplexität bleibt überschaubar. Für viele typische Webanwendungen, die stark inhaltsgetrieben sind und ohne komplexe Offline-Modi auskommen, ist Hypermedia damit nicht nur eine historische Wurzel, sondern eine pragmatische Architekturoption für die Gegenwart.

Zwei Frauen neben der Aufschrift Digitale Barrierefreiheit

❮   Zurück