On 22/06/2009, at 7:26 AM, Paul Davis wrote:

Also +lots on deterministic revisions. As a side note, we've been
worrying a bit about how to calculate the revision id's in the face of
JSON differences in clients. I make a motion that we just stop caring
and define how we calculate the signature. Ie, instead of calling it
canonical JSON just call it, "The CouchDB deterministic revision
algorithm" or some such. Then we can feel free to punt on any of the
awesome issues we'd run into with a full canonical JSON standard.

I haven't seen the recent discussions about canonicalisation, but IMO a minimum requirement is that the infoset <-> serialisation mapping must be 1:1, which requires completeness and prescription. Doing unicode normalisation (NFC probably) is IMO also an absolute requirement - it's virtually impossible to construct documents by hand with repeatable results without it.

Unicode normalisation is an issue for clients because it requires they have access to a Unicode NFC function.

Antony Blakey
--------------------------
CTO, Linkuistics Pty Ltd
Ph: 0438 840 787

It is as useless to argue with those who have renounced the use of reason as to administer medication to the dead.
  -- Thomas Jefferson


Reply via email to