With Oracle's surprise win in federal court today over its Java intellectual property being used without permission in Google's Android mobile platform, a whole new can of worms has been opened when it comes to use of APIs in software development. Android uses Java APIs in its own Dalvik virtual machine, and Google had argued that the use of those APIs didn't require Oracle's permission because it wasn't using the actual Java Virtual Machine.
Although Java is offered as an open source platform, which means it is supposed to be openly accessible for developers, Oracle had argued this openness did not extend to the API packages. "It is undisputed that the Java programming language is open and free for anyone to use," the appeals court ruled (PDF) today. "Except to the limited extent noted below regarding three of the API packages, it is also undisputed that Google could have written its own API packages using the Java language. Google chose not to do that. Instead, it is undisputed that Google copied 7,000 lines of declaring code and generally replicated the overall structure, sequence, and organization of Oracle's 37 Java API packages.... the 37 Java API packages at issue are entitled to copyright protection."