[Json] RFC 4627bis vs RFC 6902 (JSON Patch)

Francis Galiegue <fgaliegue@gmail.com> Thu, 20 February 2014 17:03 UTC

Return-Path: <fgaliegue@gmail.com>
X-Original-To: json@ietfa.amsl.com
Delivered-To: json@ietfa.amsl.com
Received: from localhost (ietfa.amsl.com []) by ietfa.amsl.com (Postfix) with ESMTP id CA0FA1A021E for <json@ietfa.amsl.com>; Thu, 20 Feb 2014 09:03:18 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2
X-Spam-Status: No, score=-2 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, FREEMAIL_FROM=0.001, SPF_PASS=-0.001] autolearn=ham
Received: from mail.ietf.org ([]) by localhost (ietfa.amsl.com []) (amavisd-new, port 10024) with ESMTP id lLQ2L_Xeuw6S for <json@ietfa.amsl.com>; Thu, 20 Feb 2014 09:03:14 -0800 (PST)
Received: from mail-ea0-x22e.google.com (mail-ea0-x22e.google.com [IPv6:2a00:1450:4013:c01::22e]) by ietfa.amsl.com (Postfix) with ESMTP id 0C5FA1A01EE for <json@ietf.org>; Thu, 20 Feb 2014 09:03:13 -0800 (PST)
Received: by mail-ea0-f174.google.com with SMTP id m10so788872eaj.5 for <json@ietf.org>; Thu, 20 Feb 2014 09:03:09 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:date:message-id:subject:from:to:content-type; bh=JbzMUy8wZFfDrIG6998yh0dSzvB+3I49kgZa/tGH3Vs=; b=dZKeR1snW+Ww3Bl1ta2UE/T5tNgpXhviCJvGQBXS5E3lAo9xLq2Konajs+1lBKBSNx h+XlwR7bijuXO1qiBYHpH4SYdws0HfupHHnykFLKMtK2oyMppnnO3BGyhCYg6H5FWRZx Uxwn3BYrLnjbNH0omIPO3e74ODlbYU6qXEXCaclG31qS7aatj5ddGRLjHelWdziT9tUm XuFWaYLVGTlDGSJRyxeCB73n9eVqR6sa+Cq/N27KFRk4+RR1Nz9ExS+bz5o1ZWYmJbod YwC1KHUM0h0Hp7tDKrXTqxvcMq/7utu7FX9HFlohUzSbkVEZ7KbtjZHONZQRzMN9SWsY 2/1A==
MIME-Version: 1.0
X-Received: by with SMTP id a41mr3041416eez.110.1392915789587; Thu, 20 Feb 2014 09:03:09 -0800 (PST)
Received: by with HTTP; Thu, 20 Feb 2014 09:03:09 -0800 (PST)
Date: Thu, 20 Feb 2014 18:03:09 +0100
Message-ID: <CALcybBCTih9A6RL=r4WYrqf05rHsjgF4tEJP3cTY2FAmONRQaw@mail.gmail.com>
From: Francis Galiegue <fgaliegue@gmail.com>
To: json@ietf.org
Content-Type: text/plain; charset="UTF-8"
Archived-At: http://mailarchive.ietf.org/arch/msg/json/tL_7knoRqB10n0ZQwZAAQZ2eBVI
Subject: [Json] RFC 4627bis vs RFC 6902 (JSON Patch)
X-BeenThere: json@ietf.org
X-Mailman-Version: 2.1.15
Precedence: list
List-Id: "JavaScript Object Notation \(JSON\) WG mailing list" <json.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/json>, <mailto:json-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/json/>
List-Post: <mailto:json@ietf.org>
List-Help: <mailto:json-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/json>, <mailto:json-request@ietf.org?subject=subscribe>
X-List-Received-Date: Thu, 20 Feb 2014 17:03:19 -0000


Something makes me really uneasy when I read these two documents side by side.

RFC 4627bis (even though only a draft at the moment), section 4,
reads: "When the names within an object are not unique, the behavior
of software that receives such an object is unpredictable".

RFC 6902, section 4, reads: "Operation objects MUST have exactly one
"op" member".

The latter makes sense on the _producer_ of a patch operation;
however, on the parser side, should a parser receive a "malformed"
(f.e duplicated "op") operation, it seems to me that RFC 6902 expects
the parser to raise an error -- which RFC 4627bis does not mandate.

What are your thoughts?

Francis Galiegue, fgaliegue@gmail.com
JSON Schema in Java: http://json-schema-validator.herokuapp.com