[Foundation] Growing Concerns for Client Developers

Iain Shigeoka iainshigeoka at yahoo.com
Tue Oct 9 10:08:57 CDT 2001

At 09:28 PM 10/8/2001 -0400, you wrote:

> > I agree.  Although I think the number of levels or environments should be
> > limited.  Too many and there will be too much confusion (developers and
> > users) and chances for interop problems.
>yes, makes sense. all jabber environments should be approved by the
>foundation, and approval can be revoked at any time if the Environment
>has become too cluttered or wayward. i would say around the number 12
>would be MAX. keep in mind that is the eventual number, covering
>everything jabber could be designed to do (not only simple IM, complete
>conversation, web services, and e-commerce transactions, but also
>potentially ftp-like and push presentation systems like the now defunct

Yes.  Something along that line is what I was thinking.

> > The only coherent system I've
> > seen has been Java's J2ME configurations and profiles.  Configurations sort
> > of describing hard computing resources, and profiles being application
> > types.  I was tentatively thinking if we simply clone their configuration
> > levels and profile types we can let them do all the explaining of what to
> > use where.  :)
>hmm.... heard of J2ME, but not familiar with it at all. will quickly
>look it up so i understand the basics, but could you please explain how
>you think it can help?

Yeah.  You have essentially a breakdown into "configurations" and 
"profiles".  Currently those are

Standard (workstations - servers)
         JVM - Full Java Virtual machine (GC, dynamic loading, etc)
                 J2SE - Standard edition java
                 Profile (add on to "standard" configuration)
                         J2EE - Enterprise edition java

J2ME (micro edition)

CDC Connected Device Configuration (set top boxes (webtv), email stations)
         CVM - Full Java Virtual Machine (GC, dynamic loading, etc)
                 CDC - Standard CDC libraries (limited gui, no jdbc, etc)
                 Profiles (add-ons to CDC)
                         RMI - Adds Java RMI to CDC (Almost approved)
                         TV - Adds "Web TV"-ish libraries to CDC (proposed)

CLDC Connected Limited Device Configuration (mobile phones, PDA's)
         KVM - Limited JVM (no dynamic loading, no float, kb of ram/rom, etc)
                 CLDC - Standard CLDC libraries (no gui
                 Profiles (add-ons to CDC)
                         MIDP - Mobile Information Device Profile (Approved)
                                 Cell phone and PDA support (gui libraries, 

So right now, if you were going to be writing java code on the palm pilot, 
you would use:  J2ME (CLDC, MIDP).  This defines a standard environment 
(KVM + CLDC) and library (MIDP) to let you create portable code that runs 
on a palm and on a cell phone.

Something with a hard drive (or other multimegabyte storage) and a bit more 
processor power would probably bump up to CDC (CLDC only supports UDP 
although if you have the room you can add TCP).  Note that you need to 
apply the configurations from your capabilities... so even though PDA's 
usually fall into CLDC, the iPaq can run CDC fine (in fact savaje has j2se 
running on it).

But I think this shows how their system works.  Three basic hardware platforms:

CLDC - small devices, ROM-able, limited, maybe no display or small displays 
like LCD character displays and 1/4 vga PDA screens (UDP, doesn't have to 
have float, etc)

CDC - not quite PC level but getting close.  Low resolution displays like 
NTSC (TV), more ram and rom, full networking, floating point, dynamic code 

Standard - A full PC on better (servers).  Essentially unlimited permanent 
storage, large amounts of ram, high res displays, heavy duty networking, etc.

Hope that helps.


Do You Yahoo!?
Get your free @yahoo.com address at http://mail.yahoo.com

More information about the Members mailing list