June 8, 2012
On May 31, 2012, the district court for the Northern District of California issued a decision in Oracle America, Inc. v. Google Inc., a significant case in copyright law. The court held that copyright cannot protect the names used in the Java programming language to identify methods performed by software code written to implement those methods. The court further held that copyright law cannot protect the overall command structure or order of methods of operation of the Java platform. This case was widely watched by those in the software community because the use of names of methods and sequences of commands in popular programming languages are important in the development and creation of new technology.
In the case, Oracle sued Google for copyright infringement, alleging that Google had copied Java application programming interfaces in Google’s Android smartphone operating platform. Specifically, Oracle claimed that Google had replicated the structure, sequence, and organization of the overall code for 37 application programming interfaces (APIs) from the Java platform relating to mobile devices.
The Java platform, one of the most popular programming languages, enables software developers to write a single computer program that is able to run on multiple types of computer systems. Within the Java platform are keywords and sets of prewritten programs that perform various commands, such as printing what is on a screen. These sets of prewritten programs are known by software developers as application programming interfaces, or “APIs.” APIs allow different software programs to interact or talk to one another, fostering interoperability between different programs.
Google used the Java platform for the Android operating platform. In doing so, Google wrote its own implementations for the functions in the 37 Java APIs necessary for mobile devices. Google did not copy the underlying Java software, but rather wrote or acquired its own source code to implement the functions of the Java APIs. But Google did replicate the same method names and matching method functions of these Java APIs and the same overall grouping or ordering of those methods. This was so that other software programs written in Java would be able to run on the Android platform.
The court held that Google could not be liable for copyright infringement because the overall name organization and functionality of the Java APIs was not protectable by copyright. The court relied on certain fundamental principles of copyright law: (1) If there is only one or a few ways to express something, then no one can claim ownership of that expression; (2) names and short phrases are not copyrightable; and (3) ideas, procedures, processes, systems, methods of operation, and concepts are not copyrightable.
Following these principles, the court held, “As long as the specific code written to implement a method is different, anyone is free under the Copyright Act to write his or her own method to carry out exactly the same function or specification of any and all methods used in the Java API.” As a result, Google, which created its own software code to implement the methods of the Java platform, “and the public were and remain free to write their own implementations to carry out exactly the same functions of all methods in question, using exactly the same method specifications and names.” Further, the court held that Oracle’s overall system or scheme of organized method names serves as a command structure for a system or method of operation of the Java application programming interface, for which the Copyright Act specifically denies protection.
Oracle has indicated that it plans to appeal the district court decision to the Ninth Circuit Court of Appeals. Fitch Even attorneys are monitoring this lawsuit and will report on further developments.
--Written by Fitch Even attorney Alisa C. Simmons