Re: [XCON] AD review: draft-ietf-xcon-common-data-model-19

Peter Saint-Andre <stpeter@stpeter.im> Thu, 13 January 2011 00:59 UTC

Return-Path: <stpeter@stpeter.im>
X-Original-To: xcon@core3.amsl.com
Delivered-To: xcon@core3.amsl.com
Received: from localhost (localhost [127.0.0.1]) by core3.amsl.com (Postfix) with ESMTP id 9A0E43A67AE for <xcon@core3.amsl.com>; Wed, 12 Jan 2011 16:59:07 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -102.442
X-Spam-Level:
X-Spam-Status: No, score=-102.442 tagged_above=-999 required=5 tests=[AWL=0.157, BAYES_00=-2.599, USER_IN_WHITELIST=-100]
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 drAuoRcEC0Hp for <xcon@core3.amsl.com>; Wed, 12 Jan 2011 16:59:06 -0800 (PST)
Received: from stpeter.im (stpeter.im [207.210.219.233]) by core3.amsl.com (Postfix) with ESMTP id 55CCA3A67A4 for <xcon@ietf.org>; Wed, 12 Jan 2011 16:59:06 -0800 (PST)
Received: from squire.local (dsl-251-175.dynamic-dsl.frii.net [216.17.251.175]) (Authenticated sender: stpeter) by stpeter.im (Postfix) with ESMTPSA id B5F29400EE; Wed, 12 Jan 2011 18:16:23 -0700 (MST)
Message-ID: <4D2E4EDB.6000403@stpeter.im>
Date: Wed, 12 Jan 2011 18:01:15 -0700
From: Peter Saint-Andre <stpeter@stpeter.im>
User-Agent: Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10.5; en-US; rv:1.9.2.13) Gecko/20101207 Thunderbird/3.1.7
MIME-Version: 1.0
To: Robert Sparks <rjsparks@nostrum.com>
References: <326FB158-5C3C-48FC-96C6-252ABE05A10B@nostrum.com> <58E207308662A748A4AC1ECB4E88561403D02C92@ESESSCMS0355.eemea.ericsson.se> <537E4975-C9FB-4046-A264-C3325310959B@nostrum.com> <58E207308662A748A4AC1ECB4E885614013029BA0E@ESESSCMS0355.eemea.ericsson.se> <0957E5CB-0D6C-4992-9AF5-55C1DC2E9AFF@nostrum.com> <58E207308662A748A4AC1ECB4E88561401304EC4A5@ESESSCMS0355.eemea.ericsson.se> <0DE83F89-E769-4112-91E8-27F96AC69D45@nostrum.com>
In-Reply-To: <0DE83F89-E769-4112-91E8-27F96AC69D45@nostrum.com>
X-Enigmail-Version: 1.1.1
OpenPGP: url=http://www.saint-andre.com/me/stpeter.asc
Content-Type: multipart/signed; protocol="application/pkcs7-signature"; micalg="sha1"; boundary="------------ms060002040300040208030408"
Cc: "xcon@ietf.org" <xcon@ietf.org>, Gonzalo Camarillo <gonzalo.camarillo@ericsson.com>
Subject: Re: [XCON] AD review: draft-ietf-xcon-common-data-model-19
X-BeenThere: xcon@ietf.org
X-Mailman-Version: 2.1.9
Precedence: list
List-Id: Centralized Conferencing <xcon.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/listinfo/xcon>, <mailto:xcon-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/xcon>
List-Post: <mailto:xcon@ietf.org>
List-Help: <mailto:xcon-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/xcon>, <mailto:xcon-request@ietf.org?subject=subscribe>
X-List-Received-Date: Thu, 13 Jan 2011 00:59:07 -0000

On 1/12/11 1:32 PM, Robert Sparks wrote:

> I'll ask the xml directorate to review how we're restating 4575's
> schema. (Has such a review already been performed?). One question I
> have is whether this is a normative update to 4575 as written.

I'll volunteer to look at that topics and other XML matters (probably
next week).

>>> /------------------------Question-------------------------------------
>>>>
>>>>
>>>>
>>> 
* In the Schama in section 5, there are several comment blocks
>>>> instructing someone to redefine something as <empty/> or
>>>> <notAllowed> (no trailing slash?).  Is this an established
>>>> convention documented somewhere? If so, can you provide a
>>>> pointer? If not, please add text explaining who the
>>>> instructions are intended for and when they should be invoked.
>>>> 
>>>> [ON] The Data Model is an extensible schema. We just indicate
>>>> to the implementor how to limit the schema if it's not
>>>> extended. The trailing slash has been included in the
>>>> <notAllowed> element.
>>> 
>>> [RObert] Then,  please add text explaining who the instructions
>>> are intended for and when they should be invoked.
>>> 
>>> [ON1] Is not the current text self-explanatory? Which
>>> instructions would you suggest?
>> 
>>> [Robert] No, it's not self-explanatory - if it were, we wouldn't
>>> be having this conversation. I suggest pulling it into an
>>> "Implementer note", introducing the note with a sentence or two
>>> explaining that this is something you can do if you know >>you
>>> are not going to use any extensions.
>> 
>> [O] Right, what about adding the following text in every
>> extensibility elements?
>> 
>> "If extensions (check section 6) beyond this specification are not
>> used, re-define anyAttribute as <empty/> and remove the definition
>> below"
>> 
>> Would it be clear adding the text above?
> 
> Thinking about this some more, I believe this is dangerous, and is
> not something we should recommend as part of standardizing this
> model. Basically, you're saying that an implementation that believes
> it isn't going to exercise an extension point can stub those
> extension points out. In practice, this will result in incompatible
> versions of the schema being fielded, and in the worst of cases, when
> the implementer was _wrong_ about this implementation (or the things
> around it) wanting to use the extension points, results in a brittle
> system. We certainly can't prevent an implementer from making this
> simplification if they choose to do so, but it's a hazardous practice
> that is very likely to make rolling out extensions in the future more
> difficult.
> 
> I think you should remove the comments from the document altogether.

I agree with Robert here.

As a point of comparison, in XMPP we have many extension points. In some
environments, the deploying organization wishes to lock down the service
so that only particular extensions are allowed (say, only a small set of
known stream features during initial negotiation). And one way that such
organizations lock down the service is by performing schema validation
on all of the XMPP traffic, using a schema that removes ability to
extend the protocol at certain points. However, although we know that
some organizations do this, I don't think it's the kind of thing we'd
want to recommend or encourage, at least not in the core specification
for an XML protocol or format that by definition includes the extension
points.

Just my gram of silver...

Peter

-- 
Peter Saint-Andre
https://stpeter.im/