[Opensim-dev] what to use for serializing structures? LLSD? XmlSerializer? JSON?

Frisby, Adam adam at deepthink.com.au
Tue May 13 20:07:42 UTC 2008


I think the path of inventing new standards should indicate we avoid
LLSD - it's only used for Linden technologies, and it could lead us to a
sort of 'vendor lock in' problem down the road if it never gains
industry adoption (something I don't think is possible given Stefan's
observations)

I personally cast my vote towards plain XML - whether we autoserialise
or not, the reason being it involves the least new things, we can attach
a DTD for specifics and we don't need to introduce any dependencies to
handle it. 

Regards,

Adam

-----Original Message-----
From: opensim-dev-bounces at lists.berlios.de
[mailto:opensim-dev-bounces at lists.berlios.de] On Behalf Of James Neal
Sent: Tuesday, 13 May 2008 2:28 PM
To: opensim-dev at lists.berlios.de
Subject: Re: [Opensim-dev] what to use for serializing structures? LLSD?
XmlSerializer? JSON?

Use the LLSD implementation in libsecondlife.  It has the advantage of 
being already done. We should be breaking LLSD out into its own library 
soon, so OpenSim won't need a newer version.

LLSD has a few serialization formats.  XML of course as well as a binary

serialization and a notation format that looks like JSON. I'm not sure 
if it is valid JSON or not.
An argument against the LLSD notation format from John Hurliman 
https://lists.secondlife.com/pipermail/sldev/2007-October/006125.html 
which makes some good points.

Baba

On Tue, May 13, 2008 10:25, Dr Scofield wrote:
> hi,
>
> we are currently looking at adding REST support to the RemoteAdmin 
> plugin (other stuff to follow) --- the idea being that we can get 
> information about (as well as change state of) a running OpenSim 
> instance not only via XmlRpc but also via REST.
>
> looking at the way we currently deal with serialization we either
>
>     * use LLSD where mandated by secondlife (e.g., CAPS)
>     * use System.Xml.XmlSerializer
>     * use XmlRpc serialization (which goes back to System.Xml)
>
> LLSD is being used by linden lab's and is proposed by LL/SLAWG as the 
> serialization protocol of choice (IIUC). in my opinion it suffers from

> being a bit verbose and not really easy to parse.
>
> XmlSerializer is "built in". on the other hand it's wordy and more 
> complex to parse; also, it doesn't distinguish between the number 4711

> and the string "4711" --- you have to know that a certain tag contains
a 
> string (or a number).
>
> JSON is lean, and easy to use from AJAX apps as well as python scripts

> (and the likes). it requires an additional DLL. it does however 
> distinguish between strings and numbers. using a library like 
> jsonexserializer (http://code.google.com/p/jsonexserializer/ --- BSD 
> license) makes it easy to use from C#.
>
> personally, i've started to like JSON because it's lean and easy to
use 
> --- but i'd like to hear from you guys what you think about this.
>
>     cheers,
>     dr scofield
>
>   

_______________________________________________
Opensim-dev mailing list
Opensim-dev at lists.berlios.de
https://lists.berlios.de/mailman/listinfo/opensim-dev



More information about the Opensim-dev mailing list