29. Oktober 2003, Letzte Änderung: 24. August 2009
Interoperabilität
Dieses neumodische Wort ist eine Variante eines anderen, wesentlich bekannteren neumodischen Wortes, Kompatibilität, und es bedeutet einfach, dass etwas (ein Dokument, ein Programm) in Übereinstimmung mit unseren Spezifikationen geschrieben wurde und in verschiedenen Applikationen und Computern identisch ablaufen sollte. »Identisch« meint dabei folgendes: Man kann ein Dokument nicht im Bildschirm eines Handhelds und in einem 19 Zoll Farbbildschirm exakt gleich darstellen, aber man kann mit beiden Geräten die gleichen Erfahrungen und Informationen aus dem Dokument ziehen.
Der Sachverhalt wird wesentlich klarer, wenn Sie typische Browser miteinander vergleichen: Sicher, jeder Browser bietet unterschiedliche Funktionen, aus diesem Grund bevorzugen die Leute den einen oder anderen Browser, aber sie erwarten sicher nicht, dass eine Seite in dem einen Browser blau und in dem anderen Browser rot aussieht oder (was manchmal passiert) lesbar in einem einen, nicht aber in dem anderen Browser ist.
Die Entwickler einer Spezifikation haben folglich sicherzustellen, dass das, was sie spezifizieren, von allen unterschiedlichen Implementierern auch implementiert werden kann: es sollte nicht von einer bestimmten Plattform abhängig sein, es sollte nicht mehrdeutig sein, und es sollte überprüfbar sein.
Wenn es innerhalb einer Spezifikation Teile gibt, die interoperabel sind und andere nicht (oder in nur in einer beschränkten Weise), kann es oftmals sinnvoll sein, die Spezifikation in zwei separate Teile aufzusplitten, jeder Teil mit seinen eigenen Interoperabilitäts-Bedingungen.
Wir erwarten zum Beispiel nicht, dass jedes Programm, das statische Textdokumente darstellen kann (HTML), auch dynamische Präsentationen (SMIL) darstellen kann oder umgekehrt, daher sind HTML und SMIL zwei unabhängige Module.