Re: XML and Objects

Ken MacLeod (ken@bitsko.slc.ut.us)
Tue, 29 Sep 1998 10:02:58 -0500 (CDT)


Mark Baker writes:
> David Brownell wrote:
>
> > <BEAN CLASS="com.example.foo.SimpleBean">
> > <PROPERTY NAME="prop1" DCD:i4>49</PROPERTY>
> > <PROPERTY NAME="prop2" DCD:string>hello world</PROPERTY>
> > ...
> > </BEAN>

> I'd personally like to see Java packages mapped to namespaces in
> some manner, thereby allowing us to do away with Java-specific
> structures, and just stick to the content, ala (ignoring the
> namespace stuff for the moment - I haven't looked at them recently);

> <SimpleBean>
> <prop1 DCD:i4>49</prop1>
> <prop2 DCD:string>hello world</prop2>
> </SimpleBean>

It's clear that there are two forms of serialization, and since I'm
not aware of any terms to call them, I'll call them internal and
external.

The first example above is ``external'', the serialization uses a
fixed set of elements, and class and member information is marshaled
as data. External serialization is generally done using reflection
and introspection, and often doesn't require any class-defined
behavior. LDO's XML serialization and XML-RPC are examples of the
``external'' form.

The second example above is ``internal'', the serialization uses
class-specific elements, where class and member information are
represented as XML elements. Internal serialization is generally done
according to the class definition (reflection or IDL), and often
requires a stub or class-specific behavior. Coins (if I understand
correctly) is an example of the ``internal'' form.

-- Ken MacLeod
ken@bitsko.slc.ut.us