Dove è definita la convenzione di denominazione delle proprietà JavaBean?

Il documento dell’API di Spring Framework dice:

La convenzione utilizzata consiste nel restituire il nome breve non classificato della class, in base alle regole di denominazione delle proprietà di JavaBeans: Quindi, com.myapp.Product diventa prodotto; com.myapp.MyProduct diventa myProduct; com.myapp.UKProduct diventa UKProduct.

Ho guardato il sito Web di Suns per trovare una definizione, ma non l’ho trovata. Mi chiedo una regola per i nomi con più di un carattere maiuscolo all’inizio. La regola è che il primo carattere sia maiuscolo se il secondo carattere è anche maiuscolo?

Lo sfondo è che voglio generare automaticamente i nomi delle variabili da usare nei template HTML a seconda del tipo di object. Esempio: class: SomeName -> object: someName.

http://download.oracle.com/otndocs/jcp/7224-javabeans-1.01-fr-spec-oth-JSpec/

http://www.oracle.com/technetwork/java/javase/tech/index-jsp-138795.html

Inoltre, un collegamento diretto alle specifiche (PDF) .

La sezione 8.8 nel documento collegato è intitolata “Capitalizzazione dei nomi dedotti” e illustra brevemente come vengono derivati ​​i nomi delle proprietà.

l’implementazione di questa funzionalità è in questa class: http://java.sun.com/javase/6/docs/api/java/beans/Introspector.html