APIs are not copyrightable, the judge presiding over the Oracle-Google Java case has ruled.
Oracle's case against Google over the adaptation of Java code for Android has been weakened after the presiding judge ruled that Google was free to adapt the API for its own purposes.
The decision was part of a ruling made by Judge Alsup on Thursday which dismissed Oracle's damages claim against Google for using 37 Java API packages.
After considering Oracle's allegations that it was owed damages for Google's use of parts of Oracle's Java programming language within Android, the judge ruled that Google was within its rights to do so.
"So long as the specific code used to implement a method is different, anyone is free under the Copyright Act to write his or her own code to carry out exactly the same function or specification of any methods used in the Java API," Alsup wrote in a 41-page ruling (PDF). "When there is only one way to express an idea or function, then everyone is free to do so and no one can monopolise that expression."
"To accept Oracle's claim would be to allow anyone to copyright one version of code to carry out a system of commands and thereby bar all others from writing their own different versions to carry out all or part of the same commands," he added.
The ruling represents another victory for Google and another loss for Oracle — the jury in the long-running case already decided on 23 May that Google had not infringed Oracle's patents.
Oracle had originally sought up to $6bn (£3.91bn) in damages when it brought the case against Google in late 2010. However, by mid-May, Judge Alsup warned Oracle that the most it could expect to receive would be around $150,000.
Had the judgement gone in Oracle's favour, it would have set precedent allowing companies to charge hefty licence fees for access to the programming interfaces for their software. This would have profound effects on the software development industry, and could have pole-axed poorly funded open-source software projects that integrated with established enterprise software.
Fortunately for developers, Alsup ruled: "Duplication of the command structure is necessary for interoperability."
"The court's decision upholds the principle that open and interoperable computer languages form an essential basis for software development," A Google spokesperson said. "It's a good day for collaboration and innovation."
Oracle plans to appeal the decision, the company told ZDNet.com.