For something which has the unequivocal weight of the law behind it, software copyright has had a rather bumpy history in the courts. Once we get past the obvious facts of law, namely that copyright protects source code, the application of such protection has been more difficult. The reason for this is simple: while source code is clearly protected by copyright, infringement involving code plagiarism rarely happens. Similarly, the copying of a full program is also a matter of clear copyright infringement. The law however has been struggling with non-literal copying, for example, the adoption of functionality, manuals, interfaces, computer languages, and the like. This is where the interesting legal questions are being asked and litigated, and in the last few weeks we had two very important cases decided on some of these issues in both sides of the Atlantic.
The first case is SAS v WPL decided by the European Court of Justice (a case we have discussed at length previously). SAS is a business software giant that relies heavily on proprietary control over its own programming language called Base SAS, and also by providing services and know-how. While users are allowed to program using this language to fit their own needs, SAS keeps a tight leash on the know-how elements of the equation, particularly access to the Base SAS components and training materials. World Programming Limited (WPL) is a UK software company which saw an opening in the market, it created an SAS clone (knows as WPS) which would be able to run programs coded using Base SAS and the SAS components. It also produced manuals and other supporting materials in order to train users. SAS sued WPL in England for copyright infringement, and the case was referred to the ECJ. The question at the heart of the litigation was very interesting, does SAS have a copyright claim over its programming language and training materials? In short, the answer is no.The ECJ stuck closely to the advice by the Advocate General and left the door open to wider interoperability in the software environment.
The ECJ has decided that SAS did not have copyright claim over the underlying functionality of a computer program, the programming language it is written in, nor the data format of the interface files. Moreover, the Court analysed whether any legitimate user of some piece of software has the right to “study or test the functioning of a computer program in order to determine the ideas and principles which underlie any element of the program.” The answer here was positive, as the court considered that any legitimate user “should not be prevented from performing acts necessary to observe, study or test the functioning of the program, provided that these acts do not infringe the copyright in that program.” The Court states:
” Consequently, the owner of the copyright in a computer program may not prevent, by relying on the licensing agreement, the person who has obtained that licence from determining the ideas and principles which underlie all the elements of that program in the case where that person carries out acts which that licence permits him to perform and the acts of loading and running necessary for the use of the computer program, and on condition that that person does not infringe the exclusive rights of the owner in that program.”
While there have been some criticisms against the decision because it seems to be awkwardly drafted, in my humble opinion this truly is a landmark case with regards to software functionality and interoperability. The ECJ has enshrined those principles, and I for one believe that this is a good thing.
Now contrast that with the widely publicised case of Oracle v Google (a very good FAQ about the case here). Oracle sued Google in August 2010 alleging copyright and patent infringement of Oracle’s Java by the Android mobile operating system. A jury in San Francisco decided in favour of Google in the patent case, striking a mighty blow against software patents in the process. However, everyone agrees that the really interesting part of the case was almost a sidetrack to the main patent argument, and it was whether Oracle could claim copyright over the structure of its application programming interfaces (APIs). When designing Android, Google was careful not to use Java’s interfaces in order to avoid having to pay licence fees to Oracle. It then created its own mobile APIs based on existing open source software. While these had the similar functionality to Java, they did not use Java’s code. Oracle argued that Google was infringing copyright because its interfaces were too similar to its own.
This question is really important because APIs are at the heart of the modern software development, they are the building blocks that allow devices to interact with other services and applications, and at the basic level, they allow mobile operating systems to exist. So, if a company could prove that it has copyright protection over the basic structure of its APIs, then it would force competitors to license its own offering. The judge in the case did not have to decide this question outright, but he had to instruct the jury on the matter of whether Oracle’s APIs were protected by copyright. Judge William Alsup instructed the jury that they should assume that the APIs were subject to copyright, and that he would decide fully after the verdict. As the jury struck down the patent claim, it is now up to the judge to decide on the copyright question fully.
Here is where the comparison to the SAS case is relevant, and let us hope that someone will point Judge Alsup towards that decision for inspiration. Oracle continues to claim that the very functional aspect of its APIs is protected by copyright, which is a very similar argument to that put forward by SAS. It has always been my contention that functionality should never be a part of copyright, this is an area best protected by patents. If Google produced its own API based on other code, then one has to ask if programming something which fulfils the same functions as another software infringes copyright. The answer to this question usually has been a resounding negative.
From a purely selfish perspective, I have to admit that as the proud owner of an Android phone, I want Google to win. Anything that will make a Galaxy S3 more expensive to purchase must be discouraged.
Update: Judge Alsup has ruled that APIs are not subject to copyright. Excellent news!