The structure, sequence and organisation of the 37 Java APIs in question during the Oracle v. Google trial are not copyrightable, according to Judge William Alsup in his ruling on Thursday afternoon.
However, it's a narrow ruling that only covers the APIs in question in the copyright phase of this case.
Oracle sued Google over copyright infringement related to the use of 37 Java APIs used on the Android mobile operating system. Google argued that they were free to use, because the Java programming language is free to use, and the APIs are required to use the language. Oracle tried to make the case that Google had knowingly used the APIs without a licence from Sun Microsystems, which was bought by Oracle in 2010.
In what was once touted as a $6 billion case, it now looks like Oracle is going to end up with not much more than a hefty legal bill. Last week, the jury ruled that Google was not guilty of patent infringement on both counts related to US patents RE38,104 and 6,061,520. Yesterday, Alsup rejected Oracle's motion to overturn the jury's verdict.
That's after the jury came back with a partial verdict in the copyrights phase of the trial a few weeks ago, in which the then-12 jurors said that Google had infringed upon Oracle's copyrights — but they could not come up with a unanimous answer on the question of fair use.
However, Alsup has now handed another win to Google by ruling that the 37 APIs weren't copyrightable in the first place. Here is the heart of the ruling:
So long as the specific code used to implement a method is different, anyone is free under the Copyright Act to write his or her own code to carry out exactly the same function or specification of any methods used in the Java API. It does not matter that the declaration or method header lines are identical.
Under the rules of Java, they 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 monopolise that expression. And while the Android method and class names could have been different from the names of their counterparts in Java and still have worked, copyright protection never extends to names or short phrases as a matter of law.
The key point to understand here is that Alsup's ruling only refers to the APIs in this lawsuit, and he is not handing down a broad ruling that would extend to all APIs in general.
"This order does not hold that Java API packages are free for all to use without licence," Alsup wrote. "It does not hold that the structure, sequence and organisation 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."
Thus, two major decisions are wrapped up: Oracle's copyright-infringement claims against Google are dismissed, turning Google's motion for a retrial into a moot point.
Now the big question will be where Oracle heads to from here: accept the US District Court's decision, or try to go for an appeal.
The latter seems like an incredible long shot, given that it barely won on any counts from the jury on copyrights, and absolutely nothing on patents.
The jury only gave Oracle the win on the nine lines of code involved in the rangeCheck method, and Alsup had previously said that Oracle could only hope for statutory damages — a maximum of US$150,000 — at best on those. The court later tacked on the test files, but Oracle's efforts in this case will not result in the payday for which it had originally hoped.
Yet Alsup nodded towards the possibility that Oracle will try again anyway, explaining in regards to rangeCheck and the test files that "this circumstance is so innocuous and overblown by Oracle that the actual facts, as found herein by the judge, will be set forth below for the benefit of the court of appeals".
Nevertheless, an appeal would still be extremely difficult, considering that Alsup has tightly buttoned up this case as it related to the 37 Java APIs and Android only.
Google has already issued the following statement:
The court's decision upholds the principle that open and interoperable computer languages form an essential basis for software development. It's a good day for collaboration and innovation.
For a look at Alsup's ruling in full, read through the document below.
Via ZDNet US