Re: [vwrap] Working Draft: SNOW-375

Dzonatas Sol <dzonatas@gmail.com> Mon, 02 August 2010 21:31 UTC

Return-Path: <dzonatas@gmail.com>
X-Original-To: vwrap@core3.amsl.com
Delivered-To: vwrap@core3.amsl.com
Received: from localhost (localhost [127.0.0.1]) by core3.amsl.com (Postfix) with ESMTP id 347E63A6C6D for <vwrap@core3.amsl.com>; Mon, 2 Aug 2010 14:31:35 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.856
X-Spam-Level:
X-Spam-Status: No, score=-1.856 tagged_above=-999 required=5 tests=[AWL=0.743, BAYES_00=-2.599]
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 QDY4y2AM9itS for <vwrap@core3.amsl.com>; Mon, 2 Aug 2010 14:31:29 -0700 (PDT)
Received: from mail-pw0-f44.google.com (mail-pw0-f44.google.com [209.85.160.44]) by core3.amsl.com (Postfix) with ESMTP id 68F9B3A686B for <vwrap@ietf.org>; Mon, 2 Aug 2010 14:31:29 -0700 (PDT)
Received: by pwj1 with SMTP id 1so1673342pwj.31 for <vwrap@ietf.org>; Mon, 02 Aug 2010 14:31:57 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:received:received:message-id:date:from :user-agent:mime-version:to:cc:subject:references:in-reply-to :content-type:content-transfer-encoding; bh=fIpn34aGKEcwPePFtMZFIRKGMNyjrjUQI8HzRE2uB6U=; b=w9fvlJfLlAH9nJKqF4wyFMqvuwPK5CgIK33RDRNQTPBVQnh78kGQRVkIWlnZeRML8b MfLQbRWDkAKqIlI94d/w2yyiIQwr9pTEmw1P/dwfmcqthkOH3VfDnK+llUD+sW+/O8Lg 548WQAiZTpU6ajGbEGM7/UG/PcuTUS5b2ySo8=
DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=message-id:date:from:user-agent:mime-version:to:cc:subject :references:in-reply-to:content-type:content-transfer-encoding; b=QXguBOS/dderWFQNjTItjbDQzOOaIj1KuJ7cZigJNKaL8LT3s8CcUse6CU1BiOo1ga xy7TPNYTs0vty7ahbn6Hn2r785JoXelz0blwqStvV9nz4ZnmALHQoMFII3BuyJfgUpBP a8mIsOMLrZsqIqdx8zYbua2xxjXpxm23Kje1s=
Received: by 10.142.246.18 with SMTP id t18mr4556697wfh.270.1280784717351; Mon, 02 Aug 2010 14:31:57 -0700 (PDT)
Received: from [192.168.0.50] (adsl-68-124-103-250.dsl.scrm01.pacbell.net [68.124.103.250]) by mx.google.com with ESMTPS id f2sm8204141wfp.23.2010.08.02.14.31.55 (version=TLSv1/SSLv3 cipher=RC4-MD5); Mon, 02 Aug 2010 14:31:56 -0700 (PDT)
Message-ID: <4C573C43.5060905@gmail.com>
Date: Mon, 02 Aug 2010 14:44:35 -0700
From: Dzonatas Sol <dzonatas@gmail.com>
User-Agent: Mozilla-Thunderbird 2.0.0.24 (X11/20100329)
MIME-Version: 1.0
To: Joshua Bell <josh@lindenlab.com>
References: <4C542CAC.1090301@gmail.com> <AANLkTinLVdcwHGWWuXztN6EnBA5jL56iaRvX9pR54vOX@mail.gmail.com> <4C572A6E.8070905@gmail.com> <AANLkTik1ukKWhNcJ0TgWfREf0YCd_oLutcxk8_j4b+=e@mail.gmail.com>
In-Reply-To: <AANLkTik1ukKWhNcJ0TgWfREf0YCd_oLutcxk8_j4b+=e@mail.gmail.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit
Cc: "vwrap@ietf.org" <vwrap@ietf.org>
Subject: Re: [vwrap] Working Draft: SNOW-375
X-BeenThere: vwrap@ietf.org
X-Mailman-Version: 2.1.9
Precedence: list
List-Id: Virtual World Region Agent Protocol - IETF working group <vwrap.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/listinfo/vwrap>, <mailto:vwrap-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/vwrap>
List-Post: <mailto:vwrap@ietf.org>
List-Help: <mailto:vwrap-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/vwrap>, <mailto:vwrap-request@ietf.org?subject=subscribe>
X-List-Received-Date: Mon, 02 Aug 2010 21:31:35 -0000

Joshua Bell wrote:
>
> Although a JSON parser must be aware of the JSON types (object, array, 
> string, number, true, false, null), it does not need to be aware of 
> the interpretation of the data any more than an XML parser that is not 
> also a validator. While this may seem slightly more complicated than 
> XML (its just tags, right?), a fully conforming JSON parser is simpler 
> than a fully conforming XML parser since XML is more feature-rich 
> (whitespace rules, attributes, character entities, CDATA, namespaces, 
> mixed content, ids, etc).

Only attributes is part of raw XML, everything else you mentioned above 
is based on DTD. When you say XML parser without a validator, the above 
sounds like you don't mean raw XML.


>
> In my experience, everyone has a favorite XML schema language, and 
> thinks the others are evil. :)
Raw XML has no schema other than where to delineate.

>
> XML has a tremendous amount of power, but most of the time you need 
> only a small fraction of that power. (e.g. LLSD's XML serialization 
> doesn't need namespaces, mixed content, etc). Contrariwise, XML's 
> expressiveness lets you precisely serialize all of LLSD's types, 
> whereas many LLSD types collapse to JSON strings.

I count only 3 characters that a raw XML parser needs to know to do one 
forward sweep and perfectly index the entire structure. 4 characters if 
you want the sweep to give a nested index.

There is no secret about that. It's part of the published standard. Even 
the built-in XML parser to C# understands that. Hidden treasure? =)

Actually, I like the XML Parser of System.NET since it's easy to write 
code that gives a very detailed stack trace (when wanted) based on every 
tag, how to expect content, and how each tag should close. Look at my C# 
Snowglobe.Scalar class to see how I have split out each tag to a 
different function. It's makes it very functional and easy to group 
documentation in the source rather in the XML. Raw XML has always meant 
to exist for such usage.

DTD is just more formal "human readable," but not as "machine readable" 
as originally described by XML. The DTD was really only meant to be used 
for completely unknown exportations to describe the document in a formal 
language other than source code. If you trust how your neighbor handles 
the data then there no reason to use a DTD or any concept of it. Raw XML 
is only meant to be one step away from binary data, where raw XML is 
portable byte order and binary data is obviously not "native" once 
transmitted.

I don't see how JSON is an improvement from that.

--- https://twitter.com/Dzonatas_Sol ---
Web Development, Software Engineering, Virtual Reality, Consultant