Suppose MS Excel has an API so that other programs can communicate with it. Suppose I'm the developer of OpenOffice Calc, and I want other programs to be able to communicate with my program in like manner. So, for example, let's say Excel's API has a function called "run" and takes a formula as an argument. Calc's API would then also have a function called "run", which takes a function as an argument. Is that legal?
My opinion is that the copying of a single API endpoint, "run" that takes a function as an argument is not infringement.
I can think of several lines of argument that get to this same conclusion:
- Originality: It doesn't exhibit the modicum of creativity required by the originality test. (Feist)
- Short phrases doctrine: It is a short word or phrase, which both the copyright office (Copyright Office Circular, 37 CFR 202.1) and courts (e.g. Hutchins v. Zoll) have declared ineligible for copyright.
- Merger: The merger doctrine allows reuse of an expression if it is one of only a very few number of ways of expressing an idea. I can't think of many other ways to express a function intended to run a function other than with the verb "run".
- Scènes à faire: It is not infringement to use an expression if it has become standard, stock, or common in a particular setting. Naming a function "run" is common in the programming community.
Any one of these alone would be enough to rule out copyright infringement by taking this individual component of Excel's API.
Note: Whether merger and scènes à faire are part of the originality/copyrightability analysis or part of the infringement analysis is not uniform across circuits. For example, the 6th circuit considers both merger and scènes à faire part of the copyrightability analysis. But, the 2nd and 9th circuits treat them as part of the infringement analysis and in the 9th circuit, they are affirmative defenses.