It's been an eventful week in the Oracle vs. Google trial; we've seen Eric Schmidt, three days of Andy Rubin, and revelations about the early days of Android thanks to some formerly-confidential Google documents. Today both parties rest their respective cases in the copyright phase of the battle, setting the stage for the patent and damages sections yet to come.

For much of the day it was a case of dueling doctors, with both Oracle and Google calling technical experts to the stand. The latter called Duke University professor Dr. Owen Astrachan, who commented on the positive impact of Google using APIs consistent with those used by Java. Astrachan testified that while there's nothing in the Java language itself that mandates the same names be used in a new implementation, it provides a much lower barrier to entry for Java programmers that would like to begin developing for Android. He even went so far as to call knowledge of Java's core APIs an "industry expectation" for coders.

Judge Alsup cut to the heart of the matter

Whether Google's use of the names of these APIs has upside has never been questioned, however; it's whether Google was able to legally do so that's being contested. It took Judge William Alsup to cut to the heart of the matter, asking Astrachan directly if it would have been possible for Google to take the Java programming language as a base, and then construct new core APIs with different names to reproduce the same functionality. He answered in the affirmative, saying that Google engineers are "pretty smart people." Astrachan also acknowledged that Android utilized an identical organizational hierarchy for its version of the 37 APIs, but felt that the implementing code used in each was "completely different."

Unsurprisingly, a witness for Oracle's rebuttal case disagreed. Stanford's Dr. John Mitchell made a return visit — he testified earlier this week — stating that Android's version of the 37 APIs used the same input, output, and intended behavior, while also noting that the implementing code itself was organized per the API specifications. It's a seemingly-tenuous comparison, but an important part of Oracle's case, with its attorneys arguing that the structure, sequence, and organization (SSO) of Java APIs are copyrightable —- and therefore any material created to their specifications represent cases of infringement.

"We never wanted to be in this litigation"

Just as it opened its case with CEO Larry Ellison, Oracle closed its rebuttal with President and CFO Safra Catz. Stating that "we never wanted to be in this litigation," Catz described several conversations and meetings she had with Google Senior Vice President Alan Eustace in her efforts to persuade Mountain View to bring Android into Java compliance and to secure licensing fees for the use of Oracle's intellectual property. She claimed that Eustace said Google could simply remove Java from Android if necessary — "I said that's what they'd have to do then," she testified — before discussions broke off. When addressing Oracle's own attempts to enter the mobile phone space, Catz confirmed that Oracle did not attempt to bring its "Java Phone" concept to market after the introduction of Android, saying "It's pretty hard to compete with free."

Oracle was able to successfully address some of the copyright registration problems that surfaced yesterday. The company moved several documents into evidence that confirm Oracle had indeed submitted CDs with the copyright registrations for both Java 2 SE 1.4 and 5.0. With the US Copyright Office itself unable to provide the originals, however, the question of whether Oracle has a valid claim to the code that's been presented is something the jury will have to consider in its deliberations. Closing arguments for the copyright phase are scheduled for Monday, with the jury currently expected to reach a decision sometime next week.