Eine API ist ein Aktenschrank, ein Gaspedal oder ein Reiseführer
Zunächst einmal beschreiben die Richter recht eindeutig, dass eine API eine Menge von Aufgaben, die Rechner abarbeiten können, auf spezielle Art und Weise aufteile und organisiere. Die API vereinfache es dabei, eine bestimmte Aufgabe vorauszuwählen und letztlich auszuführen.
Die eigentliche Implementierung einer einzelnen Aufgabe, also das, was vom Rechner ausgeführt wird, war nicht Teil des Rechtsstreits. Beklagt hatte Oracle vielmehr die wörtliche Kopie der Methoden-Aufrufe, also den Namen einer Aufgabe im Deklarations-Code. Die API ist damit die Verbindung des eigenen Codes zur Ausführung einer bestimmten Aufgabe mit der jeweiligen Implementierung zur Ausführung dieser Aufgabe. In dem Urteil wird dies als "Abkürzung" in der Programmierung beschrieben, da bereits vordefinierte Aufgaben wieder verwendet werden könnten, statt immer neu geschrieben werden zu müssen.
Diese wohl für fachfremde Juristen technisch korrekte Beschreibung reichte dem Supreme Court aber nicht als Erklärung. Anschaulichere Vergleiche mussten her, wie sie davor schon etwa von Google gebracht wurden (Stichwort: Steckdose). Dieses Ringen um Beschreibungen ist eine Besonderheit dieses Prozesses und zeigt die Komplexität des Rechtsstreits, da die Funktion einer API in der juristischen Auslegung bisher wenig bis gar nicht beschrieben wurde.
Zu den Vergleichen der Richter des Supreme Courts gehören ein Gaspedal, das ein Auto anweist, schneller zu fahren, und die Tastatur einer Schreibmaschine, die beim Drücken einer Taste einen Buchstaben aufruft. Beides seien Mensch-Maschine-Interaktionen und damit Schnittstellen wie bei einer API. Hinzu komme bei der API aber die besondere Sortierung der Aufgaben.
Besondere Sortierung wichtig
In dem Urteil verweisen die Richter etwa auf die Dewey-Dezimalklassifikation zur Kategorisierung von Büchern in Bibliotheken. Aufgeführt wird außerdem die Kategorisierung von Sehenswürdigkeiten in einem Reiseführer. Auch unsere natürliche Sprache enthalte solche Kategorien für bestimmte Konzepte, die sich aber zwischen mehreren Sprache unterscheiden könnten.
Letztlich greift das Gericht auch auf das bereits in den vorhergehenden Verhandlungen genutzte Beispiel eines Aktenschranks zurück. Ein Aktenschrank enthalte verschiedene Schubladen, in denen sich mehrere Ordner befänden, in denen beispielsweise Rezepte seien. Diese Rezepte seien Anleitungen dafür, etwas zu kochen. Genau so funktioniere auch eine API, argumentieren die Richter.
Um das Essen zu kochen, reiche es aus, den Ort des Rezepts zu kennen. Der Inhalt sei zunächst nicht notwendig, so wie beim Aufruf einer Methode einer API die Kenntnis der Implementierung nicht notwendig sei.
Angewandt auf Oracle und Google heißt das also: Mit der Wiederverwendung der API durch Google ermöglichte das Unternehmen Java-Programmierern, ihre Kenntnisse wiederzuverwenden und auf einer neuen Plattform, also Android, anzuwenden. Diese Erkenntnis mag insbesondere für Entwickler banal erscheinen, immerhin ist genau das seit Jahrzehnten Praxis in der Informatik. Für das Urteil ist diese Erkenntnis aber von grundsätzlicher Bedeutung, da der Supreme Court nur mit diesem Wissen beurteilen konnte, ob das Kopieren der API legal war oder nicht.
Oder nutzen Sie das Golem-pur-Angebot
und lesen Golem.de
- ohne Werbung
- mit ausgeschaltetem Javascript
- mit RSS-Volltext-Feed
Google vs. Oracle: Die IT-Industrie im letzten Moment gerettet | Java-API in Android ist Fair Use |
Ich weiß nicht ob es stimmt aber nehmen wir an dass es stimmt. JA und? Ja ich weiß die...
Quatsch, libc ist ein ANSI-Standard. Jupp und auch Wine hätte dann ein Problem. Ähm, du...