Re: [mmox] LLSD and content schema

Morgaine <morgaine.dinova@googlemail.com> Sat, 21 February 2009 08:39 UTC

Return-Path: <morgaine.dinova@googlemail.com>
X-Original-To: mmox@core3.amsl.com
Delivered-To: mmox@core3.amsl.com
Received: from localhost (localhost [127.0.0.1]) by core3.amsl.com (Postfix) with ESMTP id CA5B73A6C3D for <mmox@core3.amsl.com>; Sat, 21 Feb 2009 00:39:01 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.895
X-Spam-Level:
X-Spam-Status: No, score=-1.895 tagged_above=-999 required=5 tests=[AWL=0.081, BAYES_00=-2.599, FM_FORGED_GMAIL=0.622, HTML_MESSAGE=0.001]
Received: from mail.ietf.org ([64.170.98.32]) by localhost (core3.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id UgsZu55r7b6Y for <mmox@core3.amsl.com>; Sat, 21 Feb 2009 00:39:00 -0800 (PST)
Received: from mail-bw0-f161.google.com (mail-bw0-f161.google.com [209.85.218.161]) by core3.amsl.com (Postfix) with ESMTP id 3BEDE3A6B54 for <mmox@ietf.org>; Sat, 21 Feb 2009 00:39:00 -0800 (PST)
Received: by bwz5 with SMTP id 5so3323333bwz.13 for <mmox@ietf.org>; Sat, 21 Feb 2009 00:39:14 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=googlemail.com; s=gamma; h=domainkey-signature:mime-version:received:in-reply-to:references :date:message-id:subject:from:to:cc:content-type; bh=DVMQE/vNzD8+JflXNa2eR7oE42KlsAxsDLuWJlqH9Yk=; b=wE2/Cno1gz5WeKvXT7onBpqN4/dFpIuy2Pg78I/0h2Xc/IAcQongf5Ihr2fe1LxYFK Sdq1DJYYrpj8D5CyQIe1iZRVIDcfZsdPbcqurSUZSsl31gtb652k66oZV/kON9oO3pSJ w+BMYnFlK22QtCIdQ45j5ZqQ81ZJJabzXVxPg=
DomainKey-Signature: a=rsa-sha1; c=nofws; d=googlemail.com; s=gamma; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :cc:content-type; b=L/2ygFi7yVGL5x7yPiJ3HgEocJ6180S0qwuEzmand97FUpcUUd5Bm8ZMKxcSDlDa5Q ZZsxvaA+FP8QLVy0Ezd9VHhdgGr8O8gGGm1NnEpZHO5MO4EALxoowiTlOj3kNA/XSM3j 0DUQp67gqXQg8L2ZtJXsyzOHUwQcHN+mbv8+A=
MIME-Version: 1.0
Received: by 10.181.235.6 with SMTP id m6mr611871bkr.131.1235205554319; Sat, 21 Feb 2009 00:39:14 -0800 (PST)
In-Reply-To: <499F10D7.5080605@gmail.com>
References: <62BFE5680C037E4DA0B0A08946C0933D501FE18E@rrsmsx506.amr.corp.intel.com> <62BFE5680C037E4DA0B0A08946C0933D50262DA8@rrsmsx506.amr.corp.intel.com> <29656.28734.qm@web82607.mail.mud.yahoo.com> <61320.78349.qm@web82607.mail.mud.yahoo.com> <962799.66993.qm@web82608.mail.mud.yahoo.com> <53cd6c2e0902200741m2313b1eeqffc87c8601fd72e2@mail.gmail.com> <88DFFC67-0B59-4D65-86FB-8776899B794A@lindenlab.com> <499F10D7.5080605@gmail.com>
Date: Sat, 21 Feb 2009 08:39:14 +0000
Message-ID: <e0b04bba0902210039k658cb88duaa9185748068a385@mail.gmail.com>
From: Morgaine <morgaine.dinova@googlemail.com>
To: Jon Watte <jwatte@gmail.com>
Content-Type: multipart/alternative; boundary="001636c5b1174a2ff0046369b4ee"
Cc: "mmox@ietf.org" <mmox@ietf.org>
Subject: Re: [mmox] LLSD and content schema
X-BeenThere: mmox@ietf.org
X-Mailman-Version: 2.1.9
Precedence: list
List-Id: Massively Multi-participant Online Games and Applications <mmox.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/listinfo/mmox>, <mailto:mmox-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/mmox>
List-Post: <mailto:mmox@ietf.org>
List-Help: <mailto:mmox-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/mmox>, <mailto:mmox-request@ietf.org?subject=subscribe>
X-List-Received-Date: Sat, 21 Feb 2009 08:39:01 -0000

On Fri, Feb 20, 2009 at 8:21 PM, Jon Watte <jwatte@gmail.com> wrote:

>
> If I want to send a piece of data from point A to point B, and point A and
> point B know exactly what this data will be, then data type information does
> not need to be sent as part of the serialization. In fact, including data
> type information is redundant and consumes network bandwidth unnecessarily.
>
> Thus, I would assume that any communication where size matters (such as for
> entity property update streams) will be done using negotiated (bilaterally
> understood) schema, with the following properties:
> 1) Only data elements, not names or types, are sent.
> 2) Specfic properties are addressed using short Ids that are translated in
> schema.
> 3) If certain properties are always sent together (say, position x y z and
> orientation x y z w) then schema allows for an "aggregate property" to be
> declared, such that only a single name (Id) is needed to identify that
> entire tuple.
>
>
That is quite close to being a description of Google Protocol Buffers.

One of the reasons why I find LLSD to be "tentatively satisfactory" as a *
base* from which to create an ADT layer suitable for virtual worlds interop
is that LLSD embraces multiple alternative serializations, and to its 3
current serializations I would be adding Protocol Buffers for the very good
properties that you described.

Several other changes would be needed too, in particular the addition of new
data types to remove the conversion ambiguities that others have mentioned,
as well as to support more efficient encoding of common VW elements beyond
LL's native requirements.  Despite the need for all these changes, I do find
LLSD to be a useful *base* from which to start, largely because nobody has
suggested an alternative *that ticks all the same boxes*.

Given an alternative *that ticks all the same boxes* (this is important)
then I would of course re-evaluate the matter.

Morgaine.