Copyrighting Software: Case Likely Heading to Supreme Court

by Dennis Crouch

Google v. Oracle (Fed. Cir. 2018)

Google has now filed an en banc rehearing petition in its dispute with Oracle over copyrightability of the naming system for an application programming interface — namely Oracle’s Java API that Google copied.  [Oracle Am. v. Google LLC Rehearing Petition]

The basic issue here stems from Google’s program interface for Android App development.  Rather than creating its own set of functions and methods, Google decided to mimic the method-calls of Java.  At the time, Google’s third-party app marketplace was lagging far behind Apple’s, and the Java-API mimic was seen as a strategy to facilitate more rapid development of apps since the programming language was already so popular.  I previously explained:

As an example, Google used the Java method header “java.lang.Math.max(a,b).”  When called, the “max” function returns the greater of the two inputs.  In Android’s API, Google copied a set of 37 different Java “packages” (such as Math) that each contain many classes and method calls (such as “max()”).  Overall, Google copied the header structure for more than six-thousand methods.

Although Java was available for licensing, Google refused. Although Java’s originator Sun Microsystems was known for its lack of IP enforcement, that all changed when Oracle acquired the company.

In the most recent iteration of the case, the jury found that Google’s use was a “fair use” and thus not an infringement.  On appeal, however, the Federal Circuit reversed — finding the API the proper subject of copyright protection and not subject to a fair use defense in this case.  As Jason Rantanan wrote: “the court’s analysis all but says (expressly so!) that fair use can never apply.”

In its petition, Google raises both the underlying copyright challenge and the fair use question. Questions:

  1. Whether application programming interface (“API”) declarations—which are designed to invoke pre-written functions and methods of software—are systems or methods of operation and thus not entitled to copyright protection.
  2. Whether use of API declarations, but not implementing code, in a new and different context is protected by the fair-use doctrine.

The petition walks through a handful of copyright cases – explaining its position that the Federal Circuit’s position is “contrary to.”

  • Campbell v. Acuff-Rose Music, 510 U.S. 569 (1994) (on fair use, the transformation question is whether the work as a whole has been transformed — not just a focus on the copied portions);
  • Harper & Row Publishers v. Nation Enters., 471 U.S. 539 (1985) (fair use is a mixed question of fact and law – not simply a question of law);
  • Sony Computer Entm’t v. Connectix Corp., 203 F.3d 596 (9th Cir. 2000) (functional requirements for comparability are not protected by copyright; protection is also limited by fair use);
  • Lotus Dev. Corp. v. Borland Int’l, 49 F.3d 807 (1st Cir. 1995), aff’d by an equally divided court, 516 U.S. 233 (1996) (menu hierarchy not entitled to copyright protection);
  • Sega Enters. v. Accolade, 977 F.2d 1510 (9th Cir. 1992) (See Sony).

The issues here are fundamental and I expect are likely to rise up to the Supreme Court.

32 thoughts on “Copyrighting Software: Case Likely Heading to Supreme Court

  1. 8

    Copyright applies to the original expression in software, not the function. Oracle was able to show the hierarchy of names Sun chose and organized were creative and expressive. Not any one name, but the 7000+ names altogether, which altogether are creative enough to be an original work of authorship. Google copied the whole kit and kaboodle of them. Too bad for Google the names were separable from their functions, which we know because Sun had an infinity of choices for how to name and organize the APIs. They named and organized them so they were easy for human beings to learn and remember (a compiler wouldn’t care what they’re called). Sun could have named them anything, and the functions would still have worked. That means the API names had not merged with the API functions, which made the names protectable expression without that protection extending to the function itself. And if there were any doubt, at no time would a copyright on the Java APIs prevent Google from writing its own APIs to access the same functionality. Those ideas re still free for everyone to access and employ.

  2. 7

    Trump tweets he will pardon Dinesh D’Souza; will consider pardoning Martha Stewart and Rod Blagojevich

    Scott Peterson must be on the short list.

    But, hey, Hillary used a private email server so … both sides

    1. 7.1

      …what the H does this have to do with patent law?

      ( besides being just plain , your rants, Malcolm, just are inappropriate here)

  3. 6

    “As Jason Rantanan wrote: “the court’s analysis all but says (expressly so!) that fair use can never apply””. — apply to what? At face value, this is false. If it means it can never apply to APIs, also false. What opinion did Rantanan read? The decision was a straightforward application of Fair Use Doctrine to the facts of the case.

    Cert will not be granted.

    1. 6.1

      I concur (in all aspects of your post).

      The SC has already once denied cert in this case.

      The four steps of Fair Use were extensively covered; there is NO such indication of “can never apply.”

  4. 5

    “java.lang.Math.max(a,b).” When called, the “max” function returns the greater of the two inputs.

    How many ways are there really to say “return the greater of” given that each letter in the call contributes to the size of a program. I suppose you could say max, or greatest (though that is, from a functional standpoint, worse than max) or larger, or biggest. But are any of those really expressive beyond the definition of the word – that it’s returning the greater of the values?

    There’s not really a good way to say “return the greater of” (without sacrificing function) than max. There’s no other way to describe the type of operation than some form of the word “math.” I guess that leaves “java.lang,” but it appears to be uncontested fact that java.lang was added so that people who knew how to code in java could easily call the function. In other words, it had a functional rather than expressive use. It’s more akin to a trademark usage, identifying a source, than a copyright expression.

    The fact of the matter is that all operative code is functional. If someone can apply for a patent on unused code strippers (where automated programs optimize code) then people shouldn’t be able to copyright code – it can’t both be functional and expressive. The idea that they could have replaced java.lang.Math.max(a,b) with a(a,b) (which does nothing but cause a functional understanding issue for code writers) and avoided a multimillion dollar verdict is stupid.

    1. 5.1

      The fact of the matter is that all operative code is functional.

      That’s not the question, nor the point.

      …yet another reflection by Random highlighting his inability to recognize fundamental aspects of the various forms of IP law.

      it can’t both be functional and expressive.

      Yes.
      It.
      Can.

      An item may indeed have multiple aspects – and the patent/copyright question is NOT generally an “either/or” determination. That you do not seem to grasp this just means that you have no business being close to EITHER form of protection.

      It is ONLY in the extreme case wherein there is truly NO aspect of expressiveness does the “expression” collapse into the “function” and copyright protection is eliminated.

      This mirrors Malcolm’s purposeful obfuscations and dissembling when he attempts to make exactly equal “logic” and “software.”

      Nowhere in all of law is it recognized that one may obtain copyright protection on logic. Software – in its general state** – is universally recognized as being able to obtain copyright protection. The obvious disparity in discussing this only highlights those who refuse to be inte11ectually honest.

      **Aside from the rare collapse, as indicated.

  5. 4

    After reading this en banc rehearing petition [in which Question 1 is well argued based on the copyright statute and case law] I am still somewhat puzzled by Question 2. It asks: “Whether use of API declarations, but not implementing code, in a new and different context is protected by the fair-use doctrine.” Obviously they want a reversal of the Fed. Cir. panel decision on “fair use,” but can someone please explain what “in a new and different context” has to do with that issue?

    1. 4.1

      can someone please explain what “in a new and different context” has to do with that issue?

      I think Google’s position is that the “new and different context” is a fact (among many others) that Google believes must be considered when performing the fair use analysis.

      In other words, it’s not just the holding that “fair use can never apply to API’s” that Google wants reversed. They want to make sure that the fair use doctrine not only CAN be applied to API’s but SHOULD be applied in this case. The argument would go, I have to assume, that the use of APIs in a “new and different context” is more deserving of exception than their use in a context that it is (for example) nearly identical to the original context in which the APIs were found.

      1. 4.1.1

        OK MM, but what is the copyright law rationale for “in a new and different context” making a copyright law distinction HERE for fair use? Both “contexts” here are major commercial uses, not parody, satire, criticism, etc.

        1. 4.1.1.1

          Malcolm knows even less about copyright law than he knows about patent law.

          You will not receive a cogent answer to your question, Paul.

        2. 4.1.1.2

          By the way Paul, the court dealt with this “context” argument in its decision – and found no ground there.

    2. 4.2

      They are trying to make the argument that using a piece if CR’d work is transformative if it is used in a different context. It’s a weak argument that the CAFC rightly rejected.

  6. 3

    The best thing here is that Oracle’s very existence is predicated on its main product, the Oracle database, which is principally a copy of IBM’s SQL API.

    Before this case, no one in the industry believed APIs were covered by copyright at all. They are excluded by both statute and precedent, after all. The common practice of the industry included massive investment in ‘clean room’ techniques which copy APIs without any copyright infringement of software—which is protected. Trillions of dollars of commerce are and have been carried out based on that principle.

    So Oracle saw its way clear to copy IBM’s API. That copying is the basis of the broad-based database industry today, but Oracle was a pioneer.

    Now the CAFC wants to reverse decades of practice. Should be entertaining and the Supremes should be pleased to get another chance to hold the big show on their stage.

    1. 3.1

      Part of the problem is SCOTUS loves to extend copyright and bat down patents.

      I suspect this is because most of them are PoliSci or History majors and therefore understand copyrights and the benefits it gives them (and their book deals), but none of them have ever invented anything (patentable). Therefore, they view patents with disdain and copyrights with approval.

    2. 3.2

      Not true. There is actually a number of old cases finding APIs copyrightable.

      SQL is a published open standard; ANSI 1986.

      CAFC did not set any precedent or alter the law with this decision. A simple application of existing law to the facts, leading to correct outcome.

  7. 2

    Two other influencing factors in favor of the Sup. Ct. granting cert here are the very large amounts of money at stake and the 4 to 4 split of the Sup. Ct. in a software spreadsheet menu case in Lotus Dev. Corp. v. Borland Int’l, 516 U.S. 233 (1996), cited above.

  8. 1

    So many screwy things here.

    Software should be protected, alright, but under patents, not copyright. The term of protection shouldn’t be 95 frickin’ years.

    But if you’re gonna allow copyright to be used to protect purely functional things like software, then no way no how should what Google did be classified as fair use.

    Another chance for SCOTUS to muck about and mess things up some more.

    1. 1.1

      Software is NOT purely functional.

      What is protected by copyright is what is protected for ALL other items under copyright: expression.

      1. 1.1.1

        Sorry….as the CAFC decision makes clear….Google COULD have rewritten the software code to enable the APIs….at which point it could easily argue that the ‘expression’ is different…..but DELIBERATELY lifting (copying) the entire library wholesale…which is what the evidence showed is what they did to save time at a point in mobile operating system development where timing was critical to get third-party developers onboard (see Microsoft’s OS mobile operating system effort as an example of being late to the party)….is claiming someone else’s (Sun Micro/Oracle’s) ‘expression’ as Google’s…..something copyright is designed to prevent.

        1. 1.1.1.1

          Say you built a library and populated it with 6,000 books. Those 6,000 books has the same title as already existing books (remember, copyright does not extend to titles per the copyright office). However, the contents of the books are entirely different than their corresponding actual book. Granted, my book and the original book both make you feel a sense of accomplishment and moral superiority.

          What exactly did I do wrong?

        2. 1.1.1.2

          Valuationguy,

          Did you have a point? You say “sorry,” but go on with a rambling that is not on point to what I stated.

          Maybe you have forgotten that coverage of IP is NOT an “either/or” type of thing.

          Each form exists to protect that which it is designed to protect, and an item (such as software) can have different aspects that inure different protection under the different forms of IP protection.

          This is not rocket science.

        3. 1.1.1.3

          what they did to save time at a point in mobile operating system development where timing was critical to get third-party developers onboard (see Microsoft’s OS mobile operating system effort as an example of being late to the party)….is claiming someone else’s (Sun Micro/Oracle’s) ‘expression’ as Google’s

          Sure sounds like you’re saying that those “expressions” acquired a functional use. People knew how to call a functional result, and Google didn’t want to slow adoption by forcing them to learn a new way to call a functional result.

        4. 1.1.1.4

          Could that could-have argument also apply to could have rewritten the menus in Lotus v. Borland?

        5. 1.1.1.5

          Absolutely. And the threshold for requisite human expression is low. Clean cut case and no cert.

    2. 1.2

      > Software should be protected, alright, but under patents

      Come now that isn’t what Alice says

    3. 1.3

      The CR is nit for the functi9nality. It is for the literal naming of the API functions. Does anyone read opinions anymore?

      1. 1.4.1

        Sure. There are pieces of software that I have to use that strike me as almost totally non-functional.

Comments are closed.