On 5th April 2021 the United States Supreme Court (USSC) finally delivered its verdict on the most keenly watched copyright dispute of this century. USSC's 6-2 decision is a big win for Google as it overturned the 2018 decision of Court of Appeals for the Federal Circuit which decided in favour of Oracle. USSC held that Google's use of the Java Application Program Interface was a fair use as a matter of law.
Origins of the Dispute
The case started in 2010 when Oracle filed a law suit against Google in the United States District Court for the Northern District of California (District Court) for both patent and copyright infringement. The main allegation of Oracle was that Google's unauthorised use of 37 packages of Oracle's Java Application Programming Interface (API) in its Android operating system infringed the patents and copyright of Oracle. An API divides and arranges the world of computing tasks in a particular manner and programmers can then use the API to select the specific task that they need for their programs
The case had lots of twists and turns in the last ten years both at the District Court and the Court of Appeals for the Federal Circuit (CAFC). In 2018 CAFC held that the API packages are copyrightable and Google's copying of the API packages will not fall under the doctrine of fair use. Finally, the case reached USSC which heard the appeal filed by Google against the decision of CAFC.
This dispute has very high stakes and in a way, it can be viewed upon as a challenge posed by Oracle (who owns the copyright in Java) against the Android operating system which had been conceived and implemented by Google as part of its entry into the smart mobility segment.
Java developed by Sun in 1996 has been one of the world's most popular programming languages and platforms. The Java language itself is composed of keywords and other symbols and a set of pre-written programs to carry out various commands called the API. In 2007, Google started rolling out its Android software platform for mobile devices based on the poplar programming language Java. In 2010, Oracle acquired Sun Microsystems that owned Java and thereafter Oracle, sued Google and accused its Android platform as infringing Oracle's Java-related copyrights and patents.
Java and Android are complex platforms that include virtual machines, development and testing kits, and APIs. Oracle's copyright claim involves 37 packages in the Java API. Java API had 166 packages, divided into more than six hundred classes which are subdivided into more than six thousand methods. Google replicated the exact names and exact functions of virtually all of these 37 packages but used a different code to implement them. Google wrote its own source code to implement virtually all the functions of the 37 API packages in question. Thus, the main issue is whether the names, organization of those names, and functionality of 37 out of 166 packages in the Java API, (called as the "Structure, Sequence and Organization or SSO) are copyrightable and secondly if SSO of the packages are copyrightable whether Google's inclusion of them in its Android platform constitutes fair use under the US Copyright law. If one were to make a side-by-side comparison of the 37 Java and Android packages, only 3% of the lines of code are the same. The identical lines pertain to those that specify the names, parameters and functionality of the methods and classes, lines called "declarations" or "headers." This three percent is the heart of the main copyright issue
Main Issues before the USSC
Google's petition raised two questions. The first question dealt with the copyrightability of Java's API. Google contended that that the API's declaring code and organization could be classified as processes/systems/methods of operation that were expressly excluded from copyright protection. The second question was whether Google's use of Java's API was a "fair use".
Unfortunately, USSC did not answer the first question, by pointing out that determination of second question on fair use was enough to adjudicate the case. "We shall assume, but purely for argument's sake, that the entire Sun Java API falls within the definition of that which can be copyrighted". USSC observed that US Congress, along with the courts, had limited the scope of copyright protection regarding works that were entitled to a copyright and a copyright holder cannot prevent another person from making a fair use of copyrighted material. §107 of US Copyright Act. For determining whether the use made of a work can be classified as fair use, the following four factors are relevant under the US Copyright law
(1) the purpose and character of the use, including whether such use is of a commercial nature or is for non-profit educational purposes
(2) the nature of the copyrighted work
(3) the amount and substantiality of the portion used in relation to the copyrighted work as a whole; and
(4) the effect of the use upon the potential market for or value of the copyrighted work.
Dealing with the first factor USSC noted the following.
Google copied portions of the Sun Java API precisely, and it did so in part for the same reason that Sun created those portions, namely, to enable programmers to call up implementing programs that would accomplish particular tasks. Google's use of the Sun Java API sought to create new products with the intention of expanding the use and usefulness of Android-based smartphones. Google's new product gave programmers a highly creative and innovative tool for a smartphone environment. To the extent that Google used portions of the Sun Java API to create a new platform that could be immediately used by programmers, Google's use was consistent with creative progress that was the objective of copyright itself. Allowing reasonable fair use of functional code enables innovation that created new opportunities for the whole market to grow.
Based on this USSC held that even though Google's use was a commercial activity it would still fall under fair use because of the inherently transformative role that the reimplementation played in the new Android system.
Coming to the second factor on the nature of copyrighted work, it should be noted that the API consisted of three main portions, the first portion consists of an "implementing code" which actually instructs the computer on the steps to follow to carry out each task. The second portion consists of a particular command, called a "method call" with the calling up of each task. The third portion called the "declaring code" consists of a computer code that will associate the writing of a 'method call' with particular places in the computer that contain the needed implementing code. The main dispute between the parties is over the declaring code.
Here USSC observed that the declaring code was different from many other kinds of copyrightable computer code. It was inextricably bound together with a general system, the division of computing tasks, that no one claimed was a proper subject of copyright. It was inextricably bound up with the idea of organizing tasks which were not copyrightable.
"In our view, for the reasons just described, the declaring code is, if copyrightable at all, further than are most computer programs (such as the implementing code) from the core of copyright"
Dealing with the third factor, USSC noted that Google copied those lines not because of their creativity or purpose. It copied them because programmers had already learned to work with the Java API's system, and it would have been very difficult to attract programmers to build its Android smartphone system without them. Further, Google's basic purpose was to create a different task-related system for smartphones and to create a platform called the Android platform which would help achieve and popularize that objective.
Regarding the fourth factor, USSC opined that given the costs and difficulties of producing alternative APIs with similar appeal to programmers, allowing enforcement of Java API was not feasible. This would make Java's "declaring code" similar to a lock that would limit the future creativity of new programs which in turn would cause considerable public harm. The uncertain nature of Java's ability to compete in Android's market place, the sources of its lost revenue, and the risk of creativity-related harms to the public, when taken together, convinced USSC that the fourth factor i.e. market effects, also weighed in favour of fair use.
The software industry was waiting eagerly for the verdict. There was a fear that a win for Oracle/Sun would have created multiple problems for the software industry by forcing them either to reinvent the wheel on every occasion they wanted to instruct a computer to do something, or to pay high licensing fees to the leading software companies for the right to carry out trivial routine tasks. The verdict gives legal approval to the common practice adopted by software developers which involves using, re-using, and re-implementing software interfaces written by others. In a nutshell this verdict is a victory for innovation, interoperability and computer programming.
About the author
V.K. Unni, a Professor at IIM Calcutta teaches courses on Intellectual Property Law, Competition Law and Corporate Transactions. He held the Thomas Edison Innovation Fellowship instituted by Center for the Protection of Intellectual Property, George Mason University (Virginia, USA) for the period 2016-17. He was also the Max Planck India Fellow (2008-11), at the Max Planck Society (Germany), as the only awardee outside the stream of natural sciences. His research contributions have been cited by renowned institutions like the European Commission, the International Telecommunication Union and also before the US Court of Appeals for the Federal Circuit.
He regularly contributes in Live Law on topics pertaining to Intellectual Property and Competition Law.