decoration decoration
Stories

GROKLAW
When you want to know more...
decoration
For layout only
Home
Archives
Site Map
Search
About Groklaw
Awards
Legal Research
Timelines
ApplevSamsung
ApplevSamsung p.2
ArchiveExplorer
Autozone
Bilski
Cases
Cast: Lawyers
Comes v. MS
Contracts/Documents
Courts
DRM
Gordon v MS
GPL
Grokdoc
HTML How To
IPI v RH
IV v. Google
Legal Docs
Lodsys
MS Litigations
MSvB&N
News Picks
Novell v. MS
Novell-MS Deal
ODF/OOXML
OOXML Appeals
OraclevGoogle
Patents
ProjectMonterey
Psystar
Quote Database
Red Hat v SCO
Salus Book
SCEA v Hotz
SCO Appeals
SCO Bankruptcy
SCO Financials
SCO Overview
SCO v IBM
SCO v Novell
SCO:Soup2Nuts
SCOsource
Sean Daly
Software Patents
Switch to Linux
Transcripts
Unix Books
Your contributions keep Groklaw going.
To donate to Groklaw 2.0:

Groklaw Gear

Click here to send an email to the editor of this weblog.


To read comments to this article, go here
Oracle v. Google - Google Denied Summary Judgment on Copyright
Thursday, September 15 2011 @ 09:25 PM EDT

A motion for summary judgment is held to a high threshold of proof, and all disputes as to the underlying facts are decided in favor of the non-moving party. This high threshold was again evident in the Oracle v. Google case. Following today's hearing in the San Francisco courtroom of Judge William Alsup, Judge Alsup denied [PDF] Google's motion for summary judgment on the issue of copyright with one minor exception. Oracle will now be able to present its copyright claim at trial.

The Google motion was largely unhinged because, much as Oracle had done in its response [PDF, text] to the motion, Google argued at too high a level and failed to get into the specifics of whether copying had occurred or whether such copying was defensible under an exception to copyright protection.

The one issue upon which Google won was the issue of copyright protection of file names. Judge Alsup agreed that such names are not protected under copyright: "Google argues that 'the names of the Java language API files, packages, classes, and methods are not protectable as a matter of law' (Br. 17). This order agrees."

One of Oracle's arguments as to how it has been damaged by Google's alleged infringement is that Android has fragmented the Java market because of its incompatibility with Java. Judge Alsup provides a brief summary of this argument that may be helpful in understanding it:

According to Oracle, Android is an unauthorized and incompatible Java implementation. The Java platform and the Android platform each includes class libraries with more than one hundred API packages. Android allegedly supports some, but not all, of the APIs defined for the Java platform. Thus, some programs written for the Java platform will not run properly on the Android platform, even though both use the Java language. Similarly, the Android platform allegedly includes additional APIs that are not part of the Java platform. Thus, some programs written for the Android platform will not run properly on the Java platform, even though they are written in the Java language. This so-called fragmentation undermines the “write once, run anywhere” concept underlying the Java system and supposedly damages Oracle by decreasing Java’s appeal to software developers.
So what is at issue:
In this order, the term API will be used only to refer to the abstract concept of an application programming interface. API documentation (e.g., the specification for a class library or for an API package within the library) and API implementations (e.g., the source code relating to a particular method within a class file) will be referenced as such. Having clarified this linguistic point, this order proceeds to consider the specific items accused of copyright infringement in this action: twelve files of code, and 37 API package specifications. [emphasis placed in bold to better highlight the distinction.]
As Judge Alsup points out in his footnote, Google summarily dismissed the Oracle theory that the Google API implementations are derivative works of the specifications, so he did not address it in this order.

As we noted at the top, the threshold for a motion for summary judgment is high, and the burden of proof lies with the moving party. Here are each of the elements Judge Alsup considered in the context of the motion and his decision with respect to each:

  • De Minimis Copying - Google claimed any copying was de minimis when compared to Java in its entirety. Not surprisingly, Judge Alsup said you have to look at each element separately. If you copy a single file in its entirety and that file is protectable under copyright, you have infringed. If Google is going to win on this argument at trial, it will need to deal with each of the 37 API specifications and their implementations and each of the other 12 code files one by one.
  • Naming - Google wins on this point. The judge ruled that "the names of the various items appearing in the disputed API package specifications are not protected."
  • Scenes a Faire and the Merger Doctrine - Google's lack of specificity again hurt here. Rather than demonstrating how each of the APIs at issue does nothing more than embody a common method declaration (a function, if you will), Google argued that all 37 fell into a class of such functional declarations. The devil is in the details, and Google did not provide it.
  • Methods of Operation - This is another form of the functionality argument, i.e., something that is purely functional is not protected under copyright. More importantly, however, Judge Alsup said that Google was aiming at the wrong target, the API implementations (which are not the subject of the motion) instead of the API specifications (which are the subject of Oracle's infringement assertion). According to the judge, a specification cannot be a method of operation even though it may describe one.
  • Degree of Similarity - Google failed to demonstrate that any portions of the API specifications were not protected by copyright, thus they are not able to raise the threshold for infringement from substantial similarity to virtual identity. More importantly, a substantial difference in expert opinions leaves a sufficient factual question that this point cannot be resolved on summary judgment.
  • Fair Use - There are simply too many open factual issues to be able to resolve this on summary judgment.
  • Indirect Infringement - Google could only win on this point if it won on its arguments with respect to direct infringement. Since Google did not win its summary judgment on all of the direct infringement arguments, it could not win on the indirect infringement argument.
So it is off to trial on the copyright issue. The fact that Google did not win on summary judgment should not be construed as precluding their winning at trial, but Google now has a tougher hill to climb. They will need to walk through each of the 37 APIs and 12 code files one by one and demonstrate in detail their arguments as to non-infringement with respect to each.


****************

Docket

423 – Filed and Effective: 09/13/2011
CERTIFICATE OF SERVICE
Document Text: CERTIFICATE OF SERVICE by Oracle America, Inc. (Swoopes, Roman) (Filed on 9/13/2011) (Entered: 09/13/2011)

424 – Filed and Effective: 09/13/2011
LETTER
Document Text: Letter from Michael S. Kwun in Opposition to Oracle's Request for Leave to File Portions of Deposition Transcript. (Kwun, Michael) (Filed on 9/13/2011) (Entered: 09/13/2011)

425 – Filed and Effective: 09/14/2011
ORDER
Document Text: ORDER DENYING PRECIS REQUESTS REGARDING SUPPLEMENTAL FILINGS re 420 Letter filed by Oracle America, Inc., 424 Letter filed by Google Inc.. Signed by Judge Alsup on September 14, 2011. (whalc1, COURT STAFF) (Filed on 9/14/2011) (Entered: 09/14/2011)

426 – Filed and Effective: 09/14/2011
Administrative Motion
Document Text: Administrative Motion to File Under Seal re: Dkt. 398-10 filed by Oracle America, Inc.. (Swoopes, Roman) (Filed on 9/14/2011) (Entered: 09/14/2011)

427 – Filed and Effective: 09/14/2011
Administrative Motion
Document Text: Administrative Motion to File Under Seal ORACLE AMERICA, INC.S ADMINISTRATIVE MOTION TO FILE UNDER SEAL PORTIONS OF ORACLES RESPONSE PRECIS filed by Oracle America, Inc.. (Norton, William) (Filed on 9/14/2011) (Entered: 09/14/2011)

428 – Filed and Effective: 09/14/2011
Exhibit
Document Text: EXHIBITS re 398 Exhibits, 426 Administrative Motion to File Under Seal re: Dkt. 398-10 Revised Exhibit 13 to the Declaration of Roman A. Swoopes in Support of Oracle's Opposition to Google's Motion for Summary Judgment on Count VIII of Oracle's Second Amended Complaint filed byOracle America, Inc.. (Related document(s) 398 , 426 ) (Swoopes, Roman) (Filed on 9/14/2011) (Entered: 09/14/2011)

429 – Filed and Effective: 09/14/2011
Letter
Document Text: Letter Norton Letter re Lindholm. (Norton, William) (Filed on 9/14/2011) (Entered: 09/14/2011)

430 – Filed and Effective: 09/14/2011
ORDER
Document Text: ORDER GRANTING REQUEST TO FILE RULE 72 MOTION re 418 Letter Brief filed by Google Inc.. Signed by Judge Alsup on September 14, 2011. (whalc1, COURT STAFF) (Filed on 9/14/2011) (Entered: 09/14/2011)

431 – Filed and Effective: 09/15/2011
DECLARATION
Docket Text: DECLARATION of Michael S. Kwun in Opposition to 419 Administrative Motion to File Under Seal RE: REQUEST FOR LEAVE TO FILE PORTIONS OF DEPOSITION TRANSCRIPT filed by Google Inc.. (Related document(s) 419 ) (Kwun, Michael) (Filed on 9/15/2011) (Entered: 09/15/2011)

432 – Filed and Effective: 09/15/2011
STIPULATION
Docket Text: STIPULATION AND [PROPOSED] ORDER TO EXTEND THE NON-DAMAGES EXPERT DISCOVERY CUT-OFF FOR THE DEPOSITION OF DAVID AUGUST by Oracle America, Inc.. (Muino, Daniel) (Filed on 9/15/2011) (Entered: 09/15/2011)

433 – Filed and Effective: 09/15/2011
ORDER
Docket Text: ORDER PARTIALLY GRANTING AND PARTIALLY DENYING DEFENDANT'S MOTION FOR SUMMARY JUDGMENT ON COPYRIGHT CLAIM by Judge Alsup granting in part and denying in part 260 Motion for Summary Judgment (whalc1, COURT STAFF) (Filed on 9/15/2011) (Entered: 09/15/2011)

434 – Filed and Effective: 09/15/2011
Minute Entry
Docket Text: Minute Entry: Motion Hearing held on 9/15/2011 before William Alsup (Date Filed: 9/15/2011) re 260 MOTION for Summary Judgment on Count VIII of Plaintiff Oracle America's Amended Complaint filed by Google Inc.. (Court Reporter Kathy Wyatt.) (dt, COURT STAFF) (Date Filed: 9/15/2011) (Entered: 09/15/2011)


Documents:

******************

433:

IN THE UNITED STATES DISTRICT COURT
FOR THE NORTHERN DISTRICT OF CALIFORNIA

____________________

ORACLE AMERICA, INC.,

Plaintiff,

v.

GOOGLE INC.,

Defendant.

__________________

No. C 10-03561 WHA

ORDER PARTIALLY
GRANTING AND
PARTIALLY DENYING
DEFENDANT’S MOTION
FOR SUMMARY JUDGMENT
ON COPYRIGHT CLAIM

INTRODUCTION

In this patent and copyright infringement action involving features of Java and Android, defendant moves for summary judgment on the copyright infringement claim. With one exception described below, the motion is DENIED.

STATEMENT

Oracle America Inc. accuses Google Inc. of infringing some of Oracle’s Java-related copyrights in portions of Google’s Android software platform. Specifically, Oracle accuses twelve code files and 37 specifications for application programming interface packages. The Java technology and the basics of object-oriented programming were explained in the claim construction order (Dkt. No. 137). An overview of application programming interfaces and their role in Java and Android is provided here.

1. APPLICATION PROGRAMMING INTERFACES (APIS).

Conceptually, an API is what allows software programs to communicate with one another. It is a set of definitions governing how the services of a particular program can be called upon, including what types of input the program must be given and what kind of output will be returned. APIs make it possible for programs (and programmers) to use the services of a given program without knowing how the service is performed. APIs also insulate programs from one another, making it possible to change the way a given program performs a service without disrupting other programs that use the service.

APIs typically are composed of “methods,” also known as “functions,” which are software programs that perform particular services. For example, a programmer might write a software program method A, which calculates the area of a room when given the shape and dimensions of the room. A second programmer then could write a program method called B, which calculates the square footage of an entire house when given the shape and dimensions of each room. Rather than reinventing a new way to calculate area, the second programmer could simply write an instruction in B, “for each room, ask program A to calculate the area; then add all of the return values,” using, of course, real programming language. As long as the second programmer knows what A is named, what type of “arguments” A must be given as inputs, and what return A outputs, the second programmer can write a program that will call on the services of A. The second programmer does not need to know how A actually works, or is “implemented.” There may in fact be multiple ways to implement A — for example, different ways to divide an oddly shaped room into geometric components — and the first programmer may refine his implementation of program A without disrupting program B.

A method must be defined before it can be used. A method can be “declared” (i.e., defined) in a programming language such as Java by stating its name and describing its argument(s) and return(s) according to syntax conventions. Once a method has been declared, it can documented and implemented. Documentation is not code; it is a reference item that provides programmers with information about the method, its requirements, and its use. An

2

implementation is code that actually tells the computer how to carry out the method. Often, as in the example above, multiple implementations are possible for a given method.

In object-oriented programming, methods are grouped into “classes.” A class file typically contains several methods and related data. Classes, in turn, are grouped into “packages” known as API packages. Whereas a class generally corresponds to a single file, a package is more like a folder or directory providing an organizational structure for the class files. A given API package could contain many sub-packages, each with its own classes and sub-classes, which in turn contain their own methods. These elements generally are named and grouped in ways that help human programmers find, understand, and use them. A well developed set of API packages, sometimes called a “class library,” is a powerful tool for software developers; as such, it can help attract developers to a particular platform.

The specification for a class library — much like the specification for an automobile — is an item of detailed documentation that explains the organization and function of all packages, classes, methods, and data fields in the library. The class library specification for a given software platform, sometimes called the “API Specification” is an important reference item for programmers. In order to make effective use of the APIs, a programmer must be able to find the portion of the specification describing the particular package, class, and method needed for a given programming task.

2. JAVA AND ANDROID.

As explained in previous orders, Java and Android are both complex software platforms with many components. For example, the Java platform includes the Java programming language, Java class libraries, the Java virtual machine, and other elements. The Java programming language has been made freely available for use by anyone without charge. Both sides agree on this. Other aspects of the Java platform, however, such as the virtual machine and class libraries, allegedly are protected by patents and copyrights.

The Android platform uses the Java programming language; thus, software developers already familiar with the Java language do not have to learn a new language in order to write programs for Android. In contrast to Java, the Android platform uses the Dalvik virtual machine

3

instead of the Java virtual machine, provides Android class libraries, and has other non-Java components. The Java platform has been used primarily on desktop computers, but it also has been used on cell phones and other mobile computing devices. Android, on the other hand, was designed specifically for mobile devices. Java and Android compete in the market for mobile computing software.

According to Oracle, Android is an unauthorized and incompatible Java implementation. The Java platform and the Android platform each includes class libraries with more than one hundred API packages. Android allegedly supports some, but not all, of the APIs defined for the Java platform. Thus, some programs written for the Java platform will not run properly on the Android platform, even though both use the Java language. Similarly, the Android platform allegedly includes additional APIs that are not part of the Java platform. Thus, some programs written for the Android platform will not run properly on the Java platform, even though they are written in the Java language. This so-called fragmentation undermines the “write once, run anywhere” concept underlying the Java system and supposedly damages Oracle by decreasing Java’s appeal to software developers.

3. TERMINOLOGY.

The term API is slippery. It has been used by the parties and in the industry as shorthand to refer to many related concepts, ranging from individual methods to code implementations to entire class libraries and specifications. In this order, the term API will be used only to refer to the abstract concept of an application programming interface. API documentation (e.g., the specification for a class library or for an API package within the library) and API implementations (e.g., the source code relating to a particular method within a class file) will be referenced as such. Having clarified this linguistic point, this order proceeds to consider the specific items accused of copyright infringement in this action: twelve files of code, and 37 API package specifications.1

4

ANALYSIS

Summary judgment is proper when “there is no genuine dispute as to any material fact and the movant is entitled to judgment as a matter of law.” FRCP 56(a). Where the party moving for summary judgment would bear the burden of proof at trial, that party bears the initial burden of producing evidence that would entitle it to a directed verdict if uncontroverted at trial. See C.A.R. Transp. Brokerage Co. v. Darden Rests., Inc., 213 F.3d 474, 480 (9th Cir. 2000). Where the party moving for summary judgment would not bear the burden of proof at trial, that party bears the initial burden of either producing evidence that negates an essential element of the non-moving party’s claims, or showing that the non-moving party does not have enough evidence of an essential element to carry its ultimate burden of persuasion at trial. If the moving party satisfies its initial burden of production, then the non-moving party must produce admissible evidence to show there exists a genuine issue of material fact. See Nissan Fire & Marine Ins. Co. v. Fritz Cos., 210 F.3d 1099, 1102–03 (9th Cir. 2000).

Copyright protection subsists in “original works of authorship fixed in any tangible medium of expression.” 17 U.S.C. 102. In order to succeed on a copyright infringement claim, a plaintiff must show that it owns the copyright and that the defendant copied protected elements of the work. Only expressive elements that are “original,” i.e., independently created, are protected. Copying can be proven by showing that the alleged infringer had access to the copyrighted work and that the protected portions of the works are substantially similar. Jada Toys, Inc. v. Mattel, Inc., 518 F.3d 628, 636–37 (9th Cir. 2008). Google advances a number of arguments why Oracle supposedly cannot prove all or part of its copyright infringement claim. Google is entitled to summary judgment on only one issue.

1. THE CODE FILES.

Regarding the twelve code files at issue, Google argues that its alleged copying was de minimis (Br. 22–24). In the copyright infringement context, “a taking is considered de minimis only if it is so meager and fragmentary that the average audience would not recognize the appropriation.” Fisher v. Dees, 794 F.2d 432, 434 n.2 (9th Cir. 1986). The extent of the copying “is measured by considering the qualitative and quantitative significance of the copied portion in

5

relation to the plaintiff’s work as a whole.” Newton v. Diamond, 388 F.3d 1189, 1195 (9th Cir. 2004).

Here, the parties dispute what constitutes the plaintiff’s work as a whole. Google argues that its alleged copying should be compared to the entire Java platform, which Oracle registered as a single work (Br. 22–23; Kwun Exh. B). Oracle, on the other hand, argues that each of the twelve code files at issue is a separate work for purposes of this analysis (Opp. 23–24). Google has not shown that the Java platform is the proper basis for comparison. Google cites two provisions of the copyright regulations, but neither one supports Google’s position (Reply Br. 12–13).

First, Google misapplies 37 C.F.R. 202.3(b)(4)(i)(A). That provision states: “For the purpose of registration on a single application and upon payment of a single registration fee, the following shall be considered a single work: (A) In the case of published works: all copyrightable elements that are otherwise recognizable as self-contained works, that are included in a single unit of publication, and in which the copyright claimant is the same.” The plain meaning of this provision is that when a single published unit contains multiple elements “that are otherwise recognizable as self-contained works,” the unit is considered a single work for the limited purpose of registration, while its elements may be recognized as separate works for other purposes. Courts considering Section 202.3(b)(4)(i)(A) generally agree with this interpretation. See, e.g., Tattoo Art, Inc. v. TAT Int’l., LLC, --- F. Supp. 2d. ---, No. 2:10cv323, 2011 WL 2585376, at *15–16 (E.D. Va. June 29, 2011) (interpreting Section 202.3(b)(4)(i)(A) to codify the principle that “the copyrights in multiple works may be registered on a single form, and thus considered one work for the purposes of registration while still qualifying as separate 'works’ for purposes of awarding statutory damages”). Google relies on Section 202.3(b)(4)(i)(A) to show that the code files comprising the Java platform should be treated collectively as a single work for purposes of an infringement analysis. This interpretation is contrary to the plain language of the regulation and is not supported by any cited authority.

Second, Google cites to 37 C.F.R. 202.3(b)(3), which concerns continuation sheets. Continuation sheets are used “only in submissions for which a paper application is used and

6

where additional space is needed by the applicant to provide all relevant information.” 37 C.F.R 202.3(b)(3). The regulation requires use of a separate continuation sheet “to list contents titles, i.e., titles of independent works in which copyright is being claimed and which appear within a larger work.” Ibid. It does not, however, state that a failure to list individual titles precludes an applicant from later asserting those titles as separate works in infringement litigation. Nor does it address works registered by means other than a paper application. Google does not provide enough factual context to show that Section 202.3(b)(3) applies to the works at issue, and Google does not explain how it might bear upon the dispute at hand, even if it does apply.

Google cites no other authority. This order finds that, at least on the present record, Google has not shown that the Java platform as a whole is the work to which Google’s alleged copying should be compared. Because all of Google’s de minimis arguments compare the accused material in the code files to the entire Java platform as a whole, this order need not consider the de minimis question further.

2. THE API PACKAGE SPECIFICATIONS.

Regarding the 37 API package specifications at issue, which are reference items and not code, Google argues that the only similarities between the accused works and the asserted works are elements that are not subject to copyright protection. Google, however, does not specify which elements it views as similar. Google instead presents an array of theories why various categories of specification elements do not merit copyright protection. With one exception, this broad categorical approach fails. Google’s other arguments regarding the API package specifications — that the disputed works are not virtually identical or substantially similar, and that Google’s alleged copying was fair use — also fail to earn summary judgment for Google.

A. Names.

“Words and short phrases such as names, titles, and slogans” are “not subject to copyright.” 37 C.F.R. 202.1(a); Planesi v. Peters, No. 04-16936, slip op. at *1 (9th Cir. Aug. 15, 2005). Google argues that “the names of the Java language API files, packages, classes, and methods are not protectable as a matter of law” (Br. 17). This order agrees. Because names

7

and other short phrases are not subject to copyright, the names of the various items appearing in the disputed API package specifications are not protected. See Sega Enters. Ltd. v. Accolade, Inc., 977 F.2d 1510, 1524 n.7 (9th Cir. 1992) (“Sega’s security code is of such de minimis length that it is probably unprotected under the words and short phrases doctrine.”).

Oracle argues that it is entitled to a “presumption that the names in the Java API specifications are original” (Opp. 14). Not so. The decision Oracle cites for this proposition shows only that a certificate of registration may entitle its holder to a presumption of copyright validity as to the registered work. Swirsky v. Carey, 376 F.3d 841, 851 (9th Cir. 2004) (citing 17 U.S.C. 410(c)). Oracle cites no authority requiring a presumption of originality as to specific elements of a registered work.

Oracle also argues that its selection and arrangement of component names within the specifications is entitled to copyright protection (Opp. 15). This argument is non-responsive. Copyright protection for the selection and arrangement of elements within a work is a separate question from whether the elements themselves are protected by copyright. In finding that the names of the various items appearing in the disputed API package specifications are not protected by copyright, this order does not foreclose the possibility that the selection or arrangement of those names is subject to copyright protection. See Lamps Plus, Inc. v. Seattle Lighting Fixture Co., 345 F.3d 1140, 1147 (9th Cir. 2003) (“[A] combination of unprotectable elements is eligible for copyright protection only if those elements are numerous enough and their selection and arrangement original enough that their combination constitutes an original work of authorship.”) (emphasis added).

Having found that the names of the various items appearing in the disputed API package specifications are not protected by copyright on account of the words and short phrases doctrine, this order need not consider Google’s alternative theory that the names are unprotected because they are the result of customary programming practices.

B. Scenes a Faire and the Merger Doctrine.

“Under the scenes a faire doctrine, when certain commonplace expressions are indispensable and naturally associated with the treatment of a given idea, those expressions are

8

treated like ideas and therefore not protected by copyright.” Swirsky v. Carey, 376 F.3d at 850. “Under the merger doctrine, courts will not protect a copyrighted work from infringement if the idea underlying the copyrighted work can be expressed in only one way, lest there be a monopoly on the underlying idea.” Satava v. Lowry, 323 F.3d 805, 812 n.5 (9th Cir. 2003).

Google argues that “[t]he API declarations are unprotectable scenes a faire or unprotectable under the merger doctrine” (Br. 14). Google, however, does not specify what it means by “API declarations.” Google applies this argument to all of “[t]he allegedly copied elements of the Java language API packages,” providing only a few examples: “the names of packages and methods and definitions” (id. at 14–16). To the extent Google directs this argument to names, it is moot in light of the above ruling. To the extent Google directs this argument to other elements of the API package specifications, it is not adequately supported.

Google’s lack of specificity is fatal. If Google believes, for example, that a particular method declaration is a scene a faire or is the only possible way to express a given function, then Google should provide evidence and argument supporting its views as to that method declaration. Instead, Google argues — relying mostly on non-binding authority2 — that entire categories of elements in API specifications do not merit copyright protection. This approach ignores the possibility that some method declarations (for example) may be subject to the merger doctrine or may be scenes a faire, whereas other method declarations may be creative contributions subject to copyright protection. Google has not justified the sweeping ruling it requests. Google has not even identified which categories of specification elements it deems unprotectable under these doctrines. This order declines to hold that API package specifications, or any particular category of elements they contain, are unprotectable under the scenes a faire or merger doctrines.

C. Methods of Operation.

“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, regardless of the form in which it is described, explained, illustrated, or embodied in such work.”

9

17 U.S.C. 102(b) (emphasis added). Google argues that “APIs for a programming language” are unprotected methods of operation (Br. 13). Google, however, does not use the term API consistently in the relevant portions of its briefs, so it is unclear precisely what Google is attempting to characterize as a method of operation. Google states that all “elements common to Oracle’s Java language APIs and the Android APIs are unprotectable methods of operation,” but Google does not specify which elements it views as common (id. at 12). Context suggests two possible interpretations for Google’s use of the term APIs. Both of Google’s apparent arguments are unavailing.

First, Google appears to direct its methods-of-operation argument to APIs themselves as the term is used in this order — that is, to the abstract concept of an interface between programs. In its reply brief, Google distinguishes APIs both from their implementation in libraries of code (“the APIs are not the libraries themselves”) and from their documentation in reference materials (“The APIs do not ‘tell’ how to use the libraries, they are the means by which one uses the libraries; the documentationIt is not the APIs but rather the specifications for 37 API packages that are accused. Even if Google can show that APIs are methods of operation not subject to copyright protection, that would not defeat Oracle’s infringement claim concerning the accused specifications.

Google may be trying to head off a possible argument by Oracle that the APIs described in the specifications are nonliteral elements of the specifications subject to copyright protection. It is unclear whether Oracle is advancing such an argument. Oracle’s opposition brief seems to use the term API to refer to API packages and API package specifications. If this interpretation is correct, then the parties’ arguments concerning whether “APIs” are methods of operation simply swipe past each other, with each party using the term in a different way. Because the issue is not properly teed up for summary judgment, this order does not decide whether APIs are methods of operation.

Second, Google also states that “API specifications are methods of operation” (Br. 14). This conclusion does not follow from Google’s argument that APIs — meaning conceptual

10

interfaces between programs — are methods of operation. No other supporting argument is provided. API specifications are written documentation. Even if Google could show that APIs are methods of operation, that would not mean that a written work that describes or embodies APIs is automatically exempt from copyright protection. This order finds that the API package specifications at issue are not “methods of operation” under 17 U.S.C. 102(b).

D. Degree of Similarity.

The copying element of copyright infringement generally can be proven by showing that the alleged infringer had access to the copyrighted work and that the protected portions of the works are substantially similar. Jada Toys, 518 F.3d at 636–37. “When the range of protectable and unauthorized expression is narrow,” however, “the appropriate standard for illicit copying is virtual identity” rather than substantial similarity. Apple Computer, Inc. v. Microsoft Corp., 35 F.3d 1435, 1439 (9th Cir. 1994).

Google argues that “[g]iven the substantial unprotected elements in the documentation (such as the API method declarations), the ‘virtual identity’ standard applies here” (Br. 24). This order agrees with Google that the names of the various items appearing in the disputed API package specifications are not protected by copyright. Google, however, has not shown that any other elements of the specifications are exempt from copyright protection. Because Google has not proven that a substantial portion of the specifications is unprotected, Google’s justification for applying the virtual identity standard fails. This order therefore need not consider Google’s arguments that the disputed Java and Android API package specifications are not virtually identical. In particular, Google analyzes the selection and arrangement of elements within the specifications under only the virtual identity standard (Br. 24–25).

As a fallback position, Google argues that even under the substantial similarity standard, the disputed Java and Android API package specifications are not sufficiently similar to show copying. Google analogizes the specifications to dictionary definitions whose similarities are driven by external constraints, and Google cites an expert opinion that the Java and Android platforms are not substantially similar (Br. 24; Astrachan Exh. 1 at 77). Predictably, Oracle presents an opposing expert opinion that the API package specifications at issue are substantially

11

similar (Mitchell Exh. 1 at 45). This conflicting expert testimony highlights a factual issue that precludes summary judgment; a reasonable trier of fact might agree with either expert’s analysis of the degree of similarity between the asserted and accused specifications.

Google argues that Oracle’s expert testimony is not sufficient to defeat summary judgment. Google criticizes the expert for offering a “summary ‘conclusion’” based on a “single illustrative example,” which Google interprets differently (Reply Br. 11). In his report, however, the expert provides multiple examples and explains that he conducted a detailed comparison of each of the API package specification pairs at issue (Mitchell Exh. 1 at 60–63). His opinion that the Android specifications are substantially similar to their Java counterparts is not a mere “[c]onclusory statement[] without factual support.” See Surrell v. Cal. Water Serv. Co., 518 F.3d 1097, 1103 (9th Cir. 2008). If Google disputes the basis for the opinion by Oracle’s expert or his analysis of the specifications, then Google should raise its critiques during cross-examination at trial. Google has not earned summary judgment of no copying under either of the possible standards for comparison — virtual identity or substantial similarity.

E. Fair Use.

The following factors are considered in determining whether the use made of a work is a fair use: (1) the purpose and character of the use, including whether such use is of a commercial nature or is for nonprofit 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. 17 U.S.C. 107. Google argues that its alleged use of elements from the Java API package specifications in its Android API specifications was fair (Br. 19–22). Evaluation of the fair use factors, however, depends upon disputed questions of material fact. As such, no finding of fair use can be made on the summary judgment record.

For example, with respect to factor four, Google argues that “Android has contributed positively to the market for the copyrighted works by increasing the number of Java language developers” (Br. 21). Google cites positive reactions by Sun executives at the time when Android was first released in 2007. These statements do not prove anything about Android’s actual impact

12

on the Java market since that time. Moreover, Oracle presents sworn testimony that Android fragmented the Java platform and locked Java out of the smartphone market (Swoopes Exh. 6 at 111–12). Oracle and Google both employ complex business models for their respective products. The question of damages is one of the most complicated and hotly contested issues in this action. On the present record, a reasonable fact finder could disagree with Google’s rosy depiction of Android’s impact on the Java market.

Because fact issues preclude a summary judgment finding of fair use, this order does not reach the parties’ arguments on all of the fair use factors.

* * *

This order finds that the names of the various items appearing in the disputed API package specifications are not protected by copyright. This order makes no finding as to whether any other elements of the API package specifications (or their selection or arrangement) are protected or infringed.

3. INDIRECT INFRINGEMENT.

Google argues that Oracle’s indirect copyright infringement theories fail because Oracle cannot establish any underlying direct copyright infringement (Br. 25). Because Google is not entitled to summary judgment on direct infringement, Google also is not entitled to summary judgment on indirect infringement.

CONCLUSION

For the foregoing reasons, defendant’s motion for summary judgment on the copyright infringement claim is GRANTED IN PART AND DENIED IN PART. This order finds that the names of the various items appearing in the disputed API package specifications are not protected by copyright. To that extent, the motion is GRANTED. All of defendant’s other summary judgment theories regarding the copyright claim are DENIED. Plaintiff’s evidentiary objections to the Bornstein declaration and the Astrachan declaration are MOOT.

IT IS SO ORDERED.

Dated: September 15, 2011.

/s/ William Alsup
WILLIAM ALSUP
UNITED STATES DISTRICT JUDGE

____________________________

1 At the hearing, counsel for Oracle suggested that Google’s code implementations of the 37 API package specifications are unauthorized derivative works. This theory was disclosed by Oracle during discovery (Dkt. No. 263-3 at 11), but it was dismissed summarily in Google’s summary judgment brief (Br. 9). Because the briefing does not address this theory, it will not be addressed herein.

2 The only binding authority Google cites is the Sega decision. The cited discussion addresses computer program code, not documentation. Google has not justified applying the Sega rationale to documentation such as the API package specifications at issue here.

13



  View Printable Version


Groklaw © Copyright 2003-2013 Pamela Jones.
All trademarks and copyrights on this page are owned by their respective owners.
Comments are owned by the individual posters.

PJ's articles are licensed under a Creative Commons License. ( Details )