In a ruling on Monday, the Supreme Court found that Google could legally use elements of Oracle’s Java code when building Android.
“Google’s copying of the API to reimplement a user interface, taking only what was needed to allow users to put their accrued talents to work in a new and transformative program, constituted a fair use of that material,” the Supreme Court ruled in a 6-3 opinion. It overturned an earlier federal decision, which found that Google’s use of the API had constituted infringement.
Google and Oracle have been fighting over Android’s Java interoperability for more than ten years now, spanning three trials and two distinct appeals. The current incarnation of the case turns on whether Oracle can claim a copyright over roughly 11,500 lines of code, representing 37 separate APIs. Google developed the APIs independently, but they’re clearly based on equivalent APIs in the Java code, designed to model and interoperate with the separate language. Oracle claims their “structure, sequence, and organization” is so similar as to violate the company’s copyright on the Java code.
Oral arguments for the case were held in October, turning on a variety of florid metaphors for what the APIs represented. In one instance, Justice Breyer compared the case to instituting a copyright on the QWERTY keyboard, saying, “if you let somebody have a copyright on that now, they would control all typewriters, which really has nothing to do with copyright.”