Professional Documents
Culture Documents
www.gesmer.com
Wednesday, November 13, 13
District Court: To what extent, if at all, are certain replicated elements of the structure, sequence and organization of the Java application programming interface (API) protected by copyright?
www.gesmer.com
Wednesday, November 13, 13
Android and the Java API Software Copyright Law District Court Trial/Ruling Issues on Appeal
11-13-2013
Wednesday, November 13, 13
www.gesmer.com
Java/Android Timeline:
Sun releases Java Google acquires Android Google releases Android Kit First Android phone Oracle purchases Sun (Java)
11-13-2013
Wednesday, November 13, 13
www.gesmer.com
Larry Ellison
2010 - Oracle sues Google 2012 - Trial and decision on infringement 2013 - Appeal (argument: 12-4-13)
11-13-2013
Wednesday, November 13, 13
www.gesmer.com
Android Mobile OS
11-13-2013
Wednesday, November 13, 13
www.gesmer.com
11-13-2013
Wednesday, November 13, 13
www.gesmer.com
Android OS
API PACKAGES
8
11-13-2013
Wednesday, November 13, 13
www.gesmer.com
11-13-2013
Wednesday, November 13, 13
www.gesmer.com
Clean Room:
Java virtual machine Java API implementing code (2.8 million lines)
11-13-2013
Wednesday, November 13, 13
www.gesmer.com
11-13-2013
Wednesday, November 13, 13
www.gesmer.com
Android
12
- Android not marketed as Java - Android not fully interoperable with Java
11-13-2013
Wednesday, November 13, 13
www.gesmer.com
Android
13
11-13-2013
Wednesday, November 13, 13
www.gesmer.com
14
11-13-2013
Wednesday, November 13, 13
www.gesmer.com
JAVA API Declaring Code 7,000 lines Java API Implementing Code 2.8 million lines
Java Virtual Machine
15
www.gesmer.com
11-13-2013
Wednesday, November 13, 13
www.gesmer.com
www.gesmer.com
11-13-2013
Wednesday, November 13, 13
www.gesmer.com
11-13-2013
Wednesday, November 13, 13
www.gesmer.com
Google
20
11-13-2013
Wednesday, November 13, 13
www.gesmer.com
Google
21
11-13-2013
Wednesday, November 13, 13
www.gesmer.com
Oracle
Chutes and Ladders
22
11-13-2013
Wednesday, November 13, 13
www.gesmer.com
Oracle
23
11-13-2013
Wednesday, November 13, 13
www.gesmer.com
Oracle
24
Ann Droid
11-13-2013
Wednesday, November 13, 13
www.gesmer.com
Judges analogy
25
Package ~ bookshelf (166 - 37 at issue) Class ~ book (600) Method (subroutine) ~ chapter (6,000+)
11-13-2013
Wednesday, November 13, 13
www.gesmer.com
26
www.gesmer.com
(a) Copyright protection subsists . . .in 27 original works of authorship fixed in any tangible medium of expression, now known or later developed .... (b) In no case does copyright protection for an original work of authorship extend to any idea, procedure, process, system, method of operation, concept, principle, or discovery .
11-13-2013
Wednesday, November 13, 13
www.gesmer.com
A computer program is a set of statements or instructions to be used directly or indirectly in a computer in order to bring about a certain result.
11-13-2013
Wednesday, November 13, 13
www.gesmer.com
Final Report of the National Commission on New Technology Uses of Copyrighted Works (CONTU) (1978)
29
Should a line need to be drawn to exclude certain manifestations of programs from copyright, that line should be drawn on a case-by-case basis by the institution designed to make fine distinctions! the federal judiciary
11-13-2013
Wednesday, November 13, 13
www.gesmer.com
Lotus Development Corp. v. Borland International, Inc., 49 F.3d 807 (1st Cir. 1995)
30
Applying copyright law to computer programs is like assembling a jigsaw puzzle whose pieces do not quite fit
11-13-2013
Wednesday, November 13, 13
www.gesmer.com
Whelan Associates, Inc. v. Jaslow Dental Laboratory, Inc.,797 F.2d 1222 (3d Cir.1986)
31
The purpose or function of a utilitarian work would be the works idea, and everything that is not necessary to that purpose or function would be part of the expression of the idea. Because that idea could be accomplished with a number of different structures, the structure of the program is part of the programs expression, not its idea.
11-13-2013
Wednesday, November 13, 13
www.gesmer.com
Whelan v. Jaslow
32
11-13-2013
Wednesday, November 13, 13
www.gesmer.com
Computer Associates International, Inc. v. Altai, 982 F.2d 693 (2d Cir. 1992):
33
outdated appreciation of computer science . . . relies too heavily on metaphysical distinctions and does not place enough emphasis on practical considerations.
11-13-2013
Wednesday, November 13, 13
www.gesmer.com
11-13-2013
Wednesday, November 13, 13
www.gesmer.com
abstraction
Java Programming Language (JPL)
35
11-13-2013
Wednesday, November 13, 13
www.gesmer.com
36
Merger Scenes a faire (standard treatment in genre) Functionality Compatibility requirements Technical standards/industry demands Efficient implementation External factors Public domain Simplicity/ease of use
11-13-2013
Wednesday, November 13, 13
www.gesmer.com
Lotus Development Corp. v. Borland International, Inc., 49 F.3d 807 (1st Cir. 1995)
37
"method of operation," as that term is used in 102(b), refers to the means by which a person operates something ... The Lotus menu command hierarchy does not merely explain and present Lotus 1-2-3s functional capabilities to the user; it also serves as the method by which the program is operated and controlled
11-13-2013
Wednesday, November 13, 13
www.gesmer.com
Lotus:
38
The set of words, through which people use or manipulate or operate a system, is on the uncopyrightable side of the 102(a)/102(b) line
11-13-2013
Wednesday, November 13, 13
www.gesmer.com
Lotus:
39
Java API:
11-13-2013
Wednesday, November 13, 13
www.gesmer.com
Sega v. Accolade, 977 F.2d 1510 (9th Cir. 1993) and Sony v. Connectix, 203 F.3d 596 (9th Cir. 2000)
40
11-13-2013
Wednesday, November 13, 13
www.gesmer.com
2012 Trial
41
11-13-2013
Wednesday, November 13, 13
www.gesmer.com
Oracle at trial Structure, sequence, organization (SSO) of 37 packages/classes/methods Creativity API analagous to taxonomy Android not fully interoperable
42
11-13-2013
Wednesday, November 13, 13
www.gesmer.com
Google at trial Leading SSO case (Whelan) not the law Verbatim API commands essental for interoperability SSO of command structure essential for interoperability Law does not require 100% interoperability
43
11-13-2013
Wednesday, November 13, 13
www.gesmer.com
Jury verdict Did Google infringe the copyright in the structure, sequence & organization of the APIs in the 37 classes? Jury: Yes Is Googles copying protected by fair use? Jury: undecided (hung)
44
11-13-2013
Wednesday, November 13, 13
www.gesmer.com
45
www.gesmer.com
11-13-2013
Wednesday, November 13, 13
www.gesmer.com
The extent to which, if at all, certain replicated elements of the structure, sequence and organization of the Java application programming interface are protected by copyright
11-13-2013
Wednesday, November 13, 13
www.gesmer.com
District Court:
48
No law is directly on point. This order relies on general principles of copyright law ....
11-13-2013
Wednesday, November 13, 13
www.gesmer.com
source code at issue includes "declarations." Significantly, the rules of Java dictate the precise form of certain necessary lines of code called declarations, whose precise and necessary form explains why Android and Java must be identical when it comes to those particular lines of code.
11-13-2013
Wednesday, November 13, 13
www.gesmer.com
In order to declare a particular functionality, the language demands that the method declaration take a particular form. There is no choice in how to express it.
11-13-2013
Wednesday, November 13, 13
www.gesmer.com
Oracle's best argument . . . is that while no single name is copyrightable, Java's overall system of organized names covering 37 packages, with over six hundred classes, with over six thousand methods is a "taxonomy" and, therefore, copyrightable
11-13-2013
Wednesday, November 13, 13
www.gesmer.com
Structure, sequence and organization ... is a phrase that crept into use to describe a residual property right where literal copying was absent. A question then arises whether the copyright holder is more appropriately asserting an exclusive right to a functional system, process, or method of operation that belongs in the realm of patents, not copyrights
11-13-2013
Wednesday, November 13, 13
www.gesmer.com
that phrase [SSO] has not been reused by the Ninth Circuit since 1989
11-13-2013
Wednesday, November 13, 13
www.gesmer.com
the Whelan approach has given way to the Computer Associates approach
11-13-2013
Wednesday, November 13, 13
www.gesmer.com
Many different API organizations could supply the same overall range of functionality. They would not, however, be interoperable. Specifically, code written for one API would not run on an API organized differently, for the name structure itself dictates the precise form of command to call up any given method.
11-13-2013
Wednesday, November 13, 13
www.gesmer.com
- Package ~ bookshelf (166 - 37 at issue) - Class ~ book (600) - Method (subroutine) ~ chapter (6,000)
11-13-2013
Wednesday, November 13, 13
www.gesmer.com
Yes, it is creative. Yes, it is original. Yes, it resembles a taxonomy. . . . But it is nevertheless a command structure, a system or method of operation a long hierarchy of over six thousand commands to carry out preassigned functions. For that reason, it cannot receive copyright protection
11-13-2013
Wednesday, November 13, 13
www.gesmer.com
58
Degree of interoperability
11-13-2013
Wednesday, November 13, 13
www.gesmer.com
Millions of line of code had been written in Java before Android arrived ... Such code was owned by the developers, not by Oracle. In order for at least some of this code to run on Android, Google was required to provide the same command system
11-13-2013
Wednesday, November 13, 13
www.gesmer.com
Google was free to duplicate the command structure for the 37 packages,in Android in order to accommodate third-party source code relying on the 37 packages (taking care to write its own implementations).
11-13-2013
Wednesday, November 13, 13
www.gesmer.com
Contrary to Oracle, full compatibility is not relevant to the Section 102(b) analysis. Sony v. Connectix - involved subset of functions
11-13-2013
Wednesday, November 13, 13
www.gesmer.com
functional [expressive] aspects necessary for compatibility (not copyrightable) versus copying functional [expressive] aspects unnecessary for compatibility (possibly copyrightable).
11-13-2013
Wednesday, November 13, 13
www.gesmer.com
63
11-13-2013
Wednesday, November 13, 13
www.gesmer.com
Oracle:
64
. . . Ann Droid . . .
11-13-2013
Wednesday, November 13, 13
www.gesmer.com
Oracle:
Ann Droid wants to publish a bestseller. So she sits down with a copy of Harry Potter and the Order of the Phoenix .... She verbatim copies all the chapter titlesfrom Chapter 1 (Dudley Demented) to Chapter 38 (The Second War Begins). She copies verbatim the topic sentences of each paragraph, starting from the first (highly descriptive) one and continuing, in order, to the last, simple one (Harry nodded.).
65
11-13-2013
Wednesday, November 13, 13
www.gesmer.com
Oracle:
66
Defendant Google Inc. has copied a blockbuster literary work just as surely, and as improperly, as Ann Droid
11-13-2013
Wednesday, November 13, 13
www.gesmer.com
Oracle:
67
If Ann Droid had paraphrased in the same order every chapter title and topic sentence without copying a single word verbatim, the entire plot that she copiedthe structure, sequence, and organization of the overall work would be protected. ... This principle applies equally to software.
11-13-2013
Wednesday, November 13, 13
www.gesmer.com
68
11-13-2013
Wednesday, November 13, 13
www.gesmer.com
www.gesmer.com
Oracle:
Software exceptionalism Google copied a magnum opus No ex post Altai filtration process Interoperability irrelevant to copyrightability Partial interoperability/fragmentation Court over-dissected API
11-13-2013
Wednesday, November 13, 13
70
www.gesmer.com
Google Concedes Away the Entire Case To start, Google concedes that it literally copied 7,000 lines of declaring code . . . collapsing the challenge on appeal to a single question: Is there any protected expression at all in either the copied code or the copied structure
11-13-2013
Wednesday, November 13, 13
71
www.gesmer.com
Our case is not about the taking of any individual or even any small set of method declarations. Our case is about the comprehensive taking of the structure, sequence and organization of the computer programs as defined by the API specifications. That structure, sequence and organization includes method declarations at the appropriate level. It is like the sub sub subchapter in the outline structure. ... [W]hat we are seeking to protect is our very complex outline.
11-13-2013
Wednesday, November 13, 13
72
www.gesmer.com
many ways to group the methods yet still duplicate the same range of functionality ...there were many ways to group the methods yet still duplicate the same range of functionality. (District Court)
11-13-2013
Wednesday, November 13, 13
www.gesmer.com
11-13-2013
Wednesday, November 13, 13
www.gesmer.com
Oracle: Interoperability
75
11-13-2013
Wednesday, November 13, 13
www.gesmer.com
76
(2) compatibility requirements of other programs with which a program is designed to operate in conjunction; (3)computer manufacturers' design standards; (4) demands of the industry being serviced; and (5) widely accepted programming practices within the computer industry.
11-13-2013
Wednesday, November 13, 13
www.gesmer.com
77
11-13-2013
Wednesday, November 13, 13
www.gesmer.com
Oracle:
78
Oracle: Ex ante (when work created) Google: Ex post (when competing product created)
11-13-2013
Wednesday, November 13, 13
www.gesmer.com
Oracle:
79
Fact that function requires identical copy is does not deprive work of copyrightability under merger or interoperability
11-13-2013
Wednesday, November 13, 13
www.gesmer.com
De facto standard
80
Can Java command structure lose copyright protection by becoming a de facto standard? (analogy to generic trademark)
11-13-2013
Wednesday, November 13, 13
www.gesmer.com
81
Does CAFC need to draw the line between 102(a) and (b)?
11-13-2013
Wednesday, November 13, 13
www.gesmer.com
The set of words, through which people use or manipulate or operate a system is unprotected by copyright law where necessary for compatibility or interoperability ex post
11-13-2013
Wednesday, November 13, 13
www.gesmer.com
Or 83
Software commands that carry out preassigned functions necessary for interoperatibility ex post are unprotected
11-13-2013
Wednesday, November 13, 13
www.gesmer.com
Or -
APIs made available to programming community and necessary for interoperability ex post fall under 102(b) Source code/object code not disclosed to users, developers does not
84
11-13-2013
Wednesday, November 13, 13
www.gesmer.com
Justice Ginsburg, Lotus, 1996 I thought it was assumed that every one of these process, system, method of operation -- that you have to extract out of them what is the expression, the separable expression. . . . but that you can't just say, oh, method of operation. Forget it. We don't have to worry about expression. That seems to me a wholly different way of looking at 102(b) than runs through all of copyright. There's always the question, is there separable expression?
11-13-2013
Wednesday, November 13, 13
85
www.gesmer.com
Interoperability - copyrightability or fair use? Partial or full? Altai filters: ex ante or ex post? Under what circumstances should copyright law allow a free compulsory license that permits copier to use expressive aspects of a copyrighted work to create an interoperative derivative work?
86
11-13-2013
Wednesday, November 13, 13
www.gesmer.com
87
11-13-2013
Wednesday, November 13, 13
www.gesmer.com
De minimis copying
88
11-13-2013
Wednesday, November 13, 13
www.gesmer.com
89
an innocent and inconsequential instance of copying in the context of a massive number of lines of code
11-13-2013
Wednesday, November 13, 13
www.gesmer.com
De minimis copying
JUDGE ALSOP: I couldn't have told you the first thing about Java before this trial. But, I have done and still do a lot of programming myself in other languages. I have written blocks of code like rangeCheck a hundred times or more. You could do it. It is so simple. There was no way that you could say that that was speeding them along to the marketplace. That is not a good argument.
11-13-2013
Wednesday, November 13, 13
90
www.gesmer.com
De minimis copying
91
MR. BOIES: Your Honor -JUDGE ALSOP: You're one of the best lawyers in America. How can you even make that argument? You know, maybe the answer is because you are so good it sounds legit. But it is not legit. That is not a good argument.
11-13-2013
Wednesday, November 13, 13
www.gesmer.com
92
masslawblog.com
11-13-2013
Wednesday, November 13, 13
www.gesmer.com