by Irene Rajagopal, attorney at PAPER Law Office PLLC
(this blog post was initially posed on August 12, 2015)
Copyright law is an increasingly important tool for software protection. As an iron rule, copyright law only protects expressions, rather than ideas contained in the expressions. In the context of computer software, the distinction between an expression and an idea is, however, often blurred.
A recent case Oracle v. Google requires the U.S. court to give a decision on which components of computer software may be eligible for the copyright protection as an “expression”, although computer software is functional in nature. Federal Circuit Court of Appeal decided that, “the declaring code and the structure, sequence, and organization of the API packages are entitled to copyright protection”.[1] Therefore, Google has infringed Oracle’s copyright of Java API packages. On June 29, 2015, the U.S. Supreme Court denied the petition for certiorari in Oracle v. Google.
There are two parts of alleged infringing acts by Google, copying the declaring codes and copying the structure, sequence and organization (“SSO”) of Java API. While it was easy for the court to decide “literarily” copying of the declaring code, the court struggled with non-literarily copying of Java API’s SSO. Such struggle is not uncommon when courts try to decide how much legal protection on the computer programs under Copyright Act.
Should SSO be copyrightable? Oracle v. Google is an example how the courts draw a pragmatic line on the sliding scale of idea/expression to determine whether the SSO is idea or expression of idea.
1. BACKGROUND: WHY SOFTWARE NEEDS COPYRIGHT PROTECTION
Software companies may seek for legal protections on computer programs under trade secret, patent and copyright law. To obtain trade secret protection, most software companies kept source codes, algorithms and data structures in secrecy, and only released binary version of the program.[2] Their license agreements usually include a provision prohibiting users from any reverse engineering.[3] However, it is difficult to keep secrecy of some visible elements like user interface. Further, open source companies like Oracle already disclosed their source codes to public, so trade secret law could no longer protect their software like Java API.
Since a computer program by nature is functional[4], patent protection appears to fit better to protect software in the first place. However, there are considerable hurdles for patent protections.
First, the courts are cautious to grant patent protection on software. It is an established rule that the “algorithm” of software is non-patentable abstract idea, unless there is “some other inventive concept in its application”.[5] Courts followed this rule in Diehr and Bilski. In CLS Bank v. Alice Corp, the key issue is whether a computer-implemented settlement scheme is patentable. The U.S. Supreme Court affirmed the Federal Circuit’s decision and emphasized that, “simply implementing a mathematical principle on a physical machine, namely a computer, is not a patentable application of that principle.”[6]
The U.S. Supreme Court reasoned that,
“…the court must distinguish between patents that claim the building blocks of human ingenuity and those that integrate the building blocks into something more, thereby transforming them into a patent-eligible invention. The former would risk disproportionately tying up the use of the underlying ideas, and are therefore ineligible for patent protection. The latter pose no comparable risk of pre-emption, and therefore remain eligible for the monopoly granted under federal patent laws.”[7]
Alice’s computerized method claims for settlement of risk did not represent “significantly more” than abstract idea and therefore were invalid for patent protection.
The second hurdle for seeking patent protection on software is that, patent examination attorneys find challenging to decide whether software claim meets the requirement of obviousness and novelty, because there is lack of sophisticated database of prior art in software industry.[8]
The third setback of patent protection on software is that small software companies or individual programmers do not have resources to check the issued patents, which puts them in high risks to create software. Patent regime is possible to discourage the creation by vast programmers.[9]
Lastly, patent application is expensive and time consuming. In reality, big companies may file patent application for system software like Windows. Small companies either cannot afford the patent application or maintenance, or consider not worthy spending three to five years to apply patent for software that will only be sold in the market for two years.
Copyright law services the main legal ground of software protection. Current Copyright Act implied the protection over computer programs.[10] The court therefore needs to determine what kinds of elements are protectable —- source code, interface, modular structure, data structure and/or function of the program.
2. COPYRIGHT PROTECTION ON COMPUTER SOFTWARE
The process of creating software could somehow be analog with creation of a novel. To create a computer program, the software team needs to complete five steps: “(1) defining the purpose and function of the program; (2) designing the data structure; (3) designing the modular structure; 4) designing the user interface; and 5) coding the program design from parts two, three, and four into source code.”[11] It is indisputable that source codes are copyright protectable. The question usually arise whether the structure, sequence and organization shall be protected.
Courts rely on idea/expression dichotomy to make such decision. Copyright protection extent to expression of an idea, but not the underlying idea itself.[12] The statute does not clearly define “expression” or “idea”. Rather, the idea/expression distinction is “really a policy-based distinction about which elements of a work should be subject to copyright holder’s exclusive rights and which elements should be free for others”[13]. A computer program is composed of related procedures to operate together, and SSO is the way to relate procedures together for a desired result.[14] Therefore, SSOs are in between the general idea (the purpose or the function of the program) and the expression (codes). If copyright protection is limited to codes, the intellectual investments will not be effectively protected, because other programmers could easily modifies the code based on the architecture of the copyrighted software. In such a sliding scale of idea/expression dichotomy, a pragmatic line has to be drawn.
(1) Whelan Associates, Inc. v. Jaslow Dental Lab., Inc. (1986)
Whelan case was decided by the Third Circuit. The plaintiff was hired to develop a custom computer program on IBM Series One computer. The dental laboratory later use BASIC language to develop similar software derived fro the similar structure of the first IMB software. Circuit judge Becker held that copyright protection of computer programs may extend beyond programs' literal code to their structure, sequence, and organization.[15]Judge reasoned the conclusion by referring to compilation and derivative works. “Although the Code does not use the terms ‘sequence,’ ‘order’ or ‘structure,’ it is clear from the definition of compilations and derivative works, and the protection afforded them, that Congress was aware of the fact that the sequencing and ordering of materials could be copyrighted.”[16]
(2) Computer Associates International v. Altai (1992)
The Second Circuit developed “Abstraction, Filtration, Comparison” test to decide the allegation of non- literary elements. The judgment stated that, “[d]rawing the line between idea and expression is a tricky business.”[17] In the first step of abstraction, the court examines for the substantial similarity from code to the ultimate function of the program.[18] In the second step of filtration, the court filters out the “idea” or non-protectable expressions from public domain, and leaves out the core expression.[19] In the third step of comparison, the court “focuses on whether the defendant copied any aspect of this protected expression, as well as an assessment of the copied portion's relative importance with respect to the plaintiff's overall program”.[20]
Under this three-step test, a court has to “consider all of the ideas which may underlie a computer program, and to ascertain the point at which they become sufficiently delineated to warrant copyright protection”.[21]
(3) Lotus Development Corp. v. Borland International (1996)
In Lotus case, the plaintiff claimed for copyright protection on a computer menu command hierarchy. The defendant used such computer memo command hierarchy to make two programs compatible. The court held the computer memo command hierarchy is “uncopyrightable ‘method of operation’”[22], which refers “the means by which a person operates something, whether it be a car, a food processor, or a computer”,[23] and shall not be “limited to abstractions”.[24] The First Circuit did to consider the owner’s choice among many ways to build such hierarchy, and held such hierarchy is still “functions as a method for operating the computer and as such is uncopyrightable”[25]. The majority therefore ruled in favor of the defendant. The Supreme Court granted certiorari in this case, but it deadlocked 4-4 and therefore affirmed the First Circuit but produced no precedential opinion.[26]
In the concurring opinion, Circuit Judge Boudin mentioned that, “applying copyright law to computer programs is like assembling a jigsaw puzzle whose pieces do not quite fit”.[27] It’s a hard decision for the court on how much they are willing to accommodate the needs to protect software.
(4) Oracle v. Google (2014)
The Federal Circuit Court of Appeal ruled that the source code and object code, as the literal elements of a computer, “are consistently held protected by a copyright on the program”.[28] In contrast, whether the non-literal components of a computer program (the program's sequence, structure, and organization, as well as the program's user interface) are protected depends on “whether, on the particular facts of each case, the component in question qualifies as an expression of an idea, or an idea itself”.[29]
To decide the copyrightability of SSO, the Federal Circuit Court declined to follow Lotuscase, which rejected the copyright protection over software’s command hierarchy. The Federal Circuit court further rejected Google’s argument that the SSO is “method of system” that shall be precluded from copyright subject. The court noted that,
“a set of commands to instruct a computer to carry out desired operation may contain expression that is eligible for copyright protection”.[30]
The Federal Circuit Court of Appeal discussed about merger doctrine. Merger doctrine means if an expression of an idea does not have other choice, the idea will merger into the expression. In this case, the Federal Circuit Court held that Google has the choices of expression, and therefore the merger doctrine shall not apply (“The unique arrangement of computer program expression does not merge with the process so long as alternate expressions are available”).[31]
The Federal Circuit Court of Appeal ruled that: “components of a computer program that can be characterized as a ‘method of operation’ may nevertheless be copyrightable.”[32] The court understands the main purpose of the SSO of Java API is to make sure the compatibility of the software with third party softwares. The court nevertheless held such SSO is copyrightable, because “copyrightability is focused on the choices available to a plaintiff at the time a computer program is created,…Once a plaintiff creates a copyrightable work, a defendant's desire to achieve total compatibility is a commercial and competitive objective which does not enter into the issue of whether particular ideas and expressions have merged.”[33]
3. COMMENTARY
The court was willing to trim the basic copyright principles for software protection, since patent and trade secret law may not be enough for software industry. In the cases of software, the court tried hard to find the “gold nuggets” of expression in the software,[34] and justify that SSOs are creative and original so SSOs shall deserve copyright protection, even though in many ways SSOs are functioned as “operation of method” as excluded from copyright subject under 17 U.S.C. 102(b).
The line drawn by the court on the sliding scale of idea/expression dichotomy is practical too. While such line lies close to high level of idea, more non-literary elements could pass the test and become protectable. However, some industrial expert was concerned on judicial overprotection on API.[35]
In information age, software industry is lack of concentration. Individual programmers, even teenagers are writing codes of software while they do not have resource to check the issued patents. To give incentive for these people, patent shall be restrictively granted. If bending copyright law principles is a cost for avoiding expanding patent protection, such cost might be justifiable.
[1] See Oracle America, Inc. v. Google Inc. Court of Appeal for the Federal Circuit, May 9, 2014. at 5.
[2]Martin Campbell-Kelly, Not All Bad: An Historical Perspective on Software Patents, 11 Mich. Telecomm. & Tech. L. Rev. 191, 226 (2005)
[3] Ibid.
[4] Stephe M. McJohn, “Copyright”, Example and Explanation, Wolters Kluwer, 3rd edition, at 128
[5] See Parker v. Flook at 594, 98 S.Ct. 2522.
[6] Alice Corp. Pty. Ltd. v. CLS Bank Int'l, 134 S. Ct. 2347, 2349 (U.S. 2014)
[7] Ibid.
[8] Martin Campbell-Kelly, Not All Bad: An Historical Perspective on Software Patents, 11 Mich. Telecomm. & Tech. L. Rev. 191, 242-243 (2005)
[9] Ibid.
[10] Stephe M. McJohn, “Copyright”, Example and Explanation, Wolters Kluwer, 3rd edition, at 128
[11] George N. Grammas, The Test for Proving Copyright Infringement of Computer Software: "Structure, Sequence, and Organization' and "Look and Feel' Cases, 14 Wm. Mitchell L. Rev. 105, 123-24 (1988)
[12] Oracle Am., Inc. v. Google Inc., 750 F.3d 1339, 1347 (Fed. Cir. 2014)
[13] Stephe M. McJohn, “Copyright”, Example and Explanation, Wolters Kluwer, 3rd edition, at 98.
[14] George N. Grammas, The Test for Proving Copyright Infringement of Computer Software: "Structure, Sequence, and Organization' and "Look and Feel' Cases, 14 Wm. Mitchell L. Rev. 105, 123-24 (1988)
[15]Whelan Associates, Inc. v. Jaslow Dental Lab., Inc., 797 F.2d 1222 (3d Cir. 1986)
[16]Whelan Associates, Inc. v. Jaslow Dental Lab., Inc., 797 F.2d 1222, 1239 (3d Cir. 1986)
[17] Computer Associates Int'l, Inc. v. Altai, Inc., 982 F.2d 693, 704 (2d Cir. 1992)
[18]Computer Associates Int'l, Inc. v. Altai, Inc., 982 F.2d 693, 707 (2d Cir. 1992)
[19]Computer Associates Int'l, Inc. v. Altai, Inc., 982 F.2d 693, 707 (2d Cir. 1992)
[20]Computer Associates Int'l, Inc. v. Altai, Inc., 982 F.2d 693, 710 (2d Cir. 1992)
[21]Richard Armstrong Beutel, Software Engineering Practices and the Idea/expression Dichotomy: Can Structured Design Methodologies Define the Scope of Software Copyright?, 32 Jurimetrics J. 1, 22 (1991)
[22] Lotus Dev. Corp. v. Borland Int'l, Inc., 49 F.3d 807, 815 (1st Cir. 1995) aff'd, 516 U.S. 233, 116 S. Ct. 804, 133 L. Ed. 2d 610 (1996)
[23] Ibid.
[24] Ibid.
[25] Lotus Dev. Corp. v. Borland Int'l, Inc., 49 F.3d 807, 818 (1st Cir. 1995) aff'd, 516 U.S. 233, 116 S. Ct. 804, 133 L. Ed. 2d 610 (1996)
[26] Lotus Dev. Corp. v. Borland Int'l, 516 U.S. 233 (U.S. 1996)
[27] Lotus Dev. Corp. v. Borland Int'l, Inc., 49 F.3d 807, 820 (1st Cir. 1995) aff'd, 516 U.S. 233, 116 S. Ct. 804, 133 L. Ed. 2d 610 (1996)
[28] Oracle Am., Inc. v. Google Inc., 750 F.3d 1339, 1347 (Fed. Cir. 2014)
[29] Ibid.
[30] Oracle Am., Inc. v. Google Inc., 750 F.3d 1339, 1347 (Fed. Cir. 2014)
[31] Ibid.
[32] Ibid.
[33] Ibid.
[34] See Altai.
[35] See https://www.eff.org/cases/oracle-v-google
Disclaimer and Copyright Notice: This blog post does not constitute any kind of legal advice. The author and PAPER Law Office PLLC will not guarantee the accuracy of the content. Please consult with your lawyer for any legal questions. The copyright of this blog post is exclusively owned by PAPER Law Office PLLC. Please do not reproduce or publish whole or part of this post without advance written consent from the right holder.