decoration decoration
Stories

GROKLAW
When you want to know more...
decoration
For layout only
Home
Archives
Site Map
Search
About Groklaw
Awards
Legal Research
Timelines
ApplevSamsung
ApplevSamsung p.2
ArchiveExplorer
Autozone
Bilski
Cases
Cast: Lawyers
Comes v. MS
Contracts/Documents
Courts
DRM
Gordon v MS
GPL
Grokdoc
HTML How To
IPI v RH
IV v. Google
Legal Docs
Lodsys
MS Litigations
MSvB&N
News Picks
Novell v. MS
Novell-MS Deal
ODF/OOXML
OOXML Appeals
OraclevGoogle
Patents
ProjectMonterey
Psystar
Quote Database
Red Hat v SCO
Salus Book
SCEA v Hotz
SCO Appeals
SCO Bankruptcy
SCO Financials
SCO Overview
SCO v IBM
SCO v Novell
SCO:Soup2Nuts
SCOsource
Sean Daly
Software Patents
Switch to Linux
Transcripts
Unix Books

Gear

Groklaw Gear

Click here to send an email to the editor of this weblog.


You won't find me on Facebook


Donate

Donate Paypal


No Legal Advice

The information on Groklaw is not intended to constitute legal advice. While Mark is a lawyer and he has asked other lawyers and law students to contribute articles, all of these articles are offered to help educate, not to provide specific legal advice. They are not your lawyers.

Here's Groklaw's comments policy.


What's New

STORIES
No new stories

COMMENTS last 48 hrs
No new comments


Sponsors

Hosting:
hosted by ibiblio

On servers donated to ibiblio by AMD.

Webmaster
The Jim Steinman Invocation | 148 comments | Create New Account
Comments belong to whoever posts them. Please notify us of inappropriate comments.
The Jim Steinman Invocation
Authored by: Ian Al on Thursday, May 24 2012 @ 05:02 AM EDT
There is one place where sequence does matter: within the signatures of methods that take 2 or more homogeneous parameters. For instance, a method that looks like this: Object o getObjectFromInts(int i1, int i2), the output could depend on whether a value is in the first or second position. In order to implement the method, so that it replicates how someone else implemented it, I need to see their documentation.

As a practical concern, the method name of a well designed library will hint to the programmer the actual order of parameters. After all, a language shouldn't ask a programmer to look up the documentation every single time a method is used.

I take it that SSO is not a case where two out of three ain't bad. Well, maybe it ain't bad, but I suspect it isn't good enough.
Considering your last point, any copying of protectable creative expression is enough for damages. It's not like a patent thing where all of the claims have to be infringed. The issue then becomes, how much of the creative expression in the whole work was copied. I have searched for the appropriate comment without success, but this anon comment gets me there:
Structure, sequence, and organisation. It's been a concept in copyright of software (not APIs) in the U.S. since Whelan v. Jaslow in 1986.
Hardmath pointed out that:
So far he's gotten Oracle to box in their claims as regarding the "structure, arrangement, and selection" of these APIs qua "works of compilation".
Mark Webbink pointed out that this was the protection offered to compilations. The bit that I could not find was where someone pointed out that the three terms were synonymous in the case of compilations.

However, it does not really matter because the question is whether the law protects the order of the parameters. Who's to know if the law calls the order of parameters an arrangement?

The judge has ruled that functionality, names and short phrases are unprotectable. Oracle gave the following comments about what the jury should be asked:
In this case, the SSO of the 37 API packages is manifested, in part, in a hierarchy of named packages, classes, methods, and other elements such as interfaces and fields. Dr. Reinhold, Chief Java Architect at Oracle, provided the following example showing the hierarchy of some of the classes in the “java.nio.channels” package:

java.nio.channels
- Object
- Channels
-- FileLock
-- Pipe
-- SelectionKey
-- Selection
-- AbstractInterruptibleChannel
- FileChannel
-- SelectableChannel
- AbstractSelectableChannel
- DatagramChannel
-- ServerSocketChannel
-- SocketChannel

To meaningfully evaluate the SSO of the API packages, the jury will need to consider the named elements as part of the structure. Without the named elements, the upper portions of the hierarchy (everything above the method declarations) would be incomprehensible:
comprehend

v 1: get the meaning of something; "Do you comprehend the meaning of this letter?"

Your use of the word 'hint' is relevant. It is not possible to hint at creative expression fixed in a medium. It is either expressed or it is not. Oracle point out that the jury need to have this example of the meaning of the API SSO. This diagram can be found, IIRC, in both a page of the Java API Specification and the Android help pages.

It is, as I understand it, a diagram produced to express the meaning implied by lines of text in the source code files, the actual directory in which class implementation files are put, and the full inheritance tree that can be derived by understanding the ideas in the Specification and the organisation of files in directories.

Mark made the comment that 'Compilations are generally afforded only a thin layer of protection by copyright'. Oracle point out that the API is not some trivial thing: it is a highly complex structure with threads of meaning woven throughout. Does a 'thin layer of protection' truly protect the complex structure of 37, 164ths of the whole API?

If you make even the slightest change to the SSO in one tiny part, will the result in that tiny area stop being functional? If it does, then any and all of Google's SSO copying by using Harmony code is locked firmly into the functional requirements.

Also, the elements of SSO are not fixed in a media. They have to be derived by reading the API Specification or the source code of thousands of files. Oracle cannot point to the collective work or compilation of java.nio.channels and show the SSO fixed therein. The SSO is in the meanings of the individual components. It is in the ideas expressed and not in creative expression fixed in a medium.

Oracle need to prove that the SSO of java.nil.channels that they expressed in the above diagram could be replaced with another SSO and that functionality would not be changed in any way. I think they have not done that and nor do I think it is possible to do that.

Oh yes, and I Googled your title. Oracle is, indeed, a shining light of good faith, clarity and honesty when the Invocation process is applied.

br

---
Regards
Ian Al
Software Patents: It's the disclosed functions in the patent, stupid!

[ Reply to This | Parent | # ]

Groklaw © Copyright 2003-2013 Pamela Jones.
All trademarks and copyrights on this page are owned by their respective owners.
Comments are owned by the individual posters.

PJ's articles are licensed under a Creative Commons License. ( Details )