A district court judge has ruled that the Java APIs in Android are not eligible for protection under U.S. copyright law, marking a defeat for Oracle in a high-stakes lawsuit against Google.
The ruling is a fairly narrow one, applying only to the 37 Java application programming interfaces that Google was accused of infringing at trial. Still, it will be seen as a victory by many in the software industry, who feared that a ruling in Oracle's favor would stifle innovation among developers.
"This order does not hold that Java API packages are free for all to use without license," Judge William Alsup wrote in his order filed Thursday at the U.S. District Court for the Northern District of California. "It does not hold that the structure, sequence and organization of all computer programs may be stolen. Rather, it holds on the specific facts of this case, the particular elements replicated by Google were free for all to use under the Copyright Act."
Oracle said it would "vigorously pursue an appeal of the ruling."
Oracle sued Google about two years ago, alleging its Android software infringed patents and copyrights for Java that Oracle acquired when it bought Sun Microsystems in early 2010.
The jury cleared Google of patent infringement earlier this month, but it delivered only a partial verdict on the question of copyright infringement. Before Thursday's ruling, Google faced the prospect of a new trial to decide that issue.
However, a larger question hung over the trial: Whether the Java APIs can be protected by copyright under U.S. law at all. The judge had to decide that question himself based on the facts in the case and his reading of copyright law, and it's that decision he delivered on Thursday.
His 41-page order discusses in detail the nature of the Java platform and his reasoning for why the APIs cannot be protected by copyright. In essence, Alsup argued that the APIs are a functional, "utilitarian" part of the Java platform and therefore not eligible for protection.
The Java APIs are basically short words and phrases that describe functions that a programmer might want to implement in a Java program, such as "print screen" or "find the square root of."
Anyone is free to write code that implements those functions, so long as the code for the implementation is original, the judge said. The fact that Google used the same names as Oracle for its methods and classes does not matter.
"Under the rules of Java, [the names] must be identical to declare a method specifying the same functionality -- even when the implementation is different. When there is only one way to express an idea or function, then everyone is free to do so and no one can monopolize that expression," Alsup wrote.
U.S. copyright law does not typically extend to works that are functional in nature. That was the basis of Alsup's argument, said Edward Naughton, an intellectual-property attorney and a partner with the law firm Brown Rudnick.
"Ultimately, he decided that the methods here, and the structure that Oracle was trying to protect by copyright ... was functional. Yes, he said it was creative and original, but insofar as it's functional, you can't protect it by copyright," he said.
Alsup indicated in his ruling that the patent laws would be a more appropriate way for Oracle to protect its APIs.
Next: What the Ruling Means to the Industry