Re: [xmpp] draft-cridland-xmpp-session-00

Ralph Meijer <> Tue, 10 June 2014 08:35 UTC

Return-Path: <>
Received: from localhost ( []) by (Postfix) with ESMTP id B9E2C1A01B3 for <>; Tue, 10 Jun 2014 01:35:01 -0700 (PDT)
X-Virus-Scanned: amavisd-new at
X-Spam-Flag: NO
X-Spam-Score: -2.551
X-Spam-Status: No, score=-2.551 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, RP_MATCHES_RCVD=-0.651] autolearn=ham
Received: from ([]) by localhost ( []) (amavisd-new, port 10024) with ESMTP id yFu4w2RoP0af for <>; Tue, 10 Jun 2014 01:35:00 -0700 (PDT)
Received: from ( [IPv6:2001:16f8:4::61]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by (Postfix) with ESMTPS id 8F4EE1A0011 for <>; Tue, 10 Jun 2014 01:35:00 -0700 (PDT)
Received: from (localhost []) by (Postfix) with ESMTP id 10227A1068 for <>; Tue, 10 Jun 2014 10:34:50 +0200 (CEST)
X-Virus-Scanned: amavisd-new at
Received: from ([]) by ( []) (amavisd-new, port 10024) with SMTP id UXEkJa-tjnz5 for <>; Tue, 10 Jun 2014 10:34:48 +0200 (CEST)
Received: from [] ( []) by (Postfix) with ESMTPSA id BDC25A1067 for <>; Tue, 10 Jun 2014 10:34:48 +0200 (CEST)
Message-ID: <>
Date: Tue, 10 Jun 2014 10:34:48 +0200
From: Ralph Meijer <>
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:24.0) Gecko/20100101 Thunderbird/24.5.0
MIME-Version: 1.0
References: <> <> <> <> <> <>
In-Reply-To: <>
X-Enigmail-Version: 1.6
Content-Type: text/plain; charset=windows-1252
Content-Transfer-Encoding: quoted-printable
Subject: Re: [xmpp] draft-cridland-xmpp-session-00
X-Mailman-Version: 2.1.15
Precedence: list
List-Id: XMPP Working Group <>
List-Unsubscribe: <>, <>
List-Archive: <>
List-Post: <>
List-Help: <>
List-Subscribe: <>, <>
X-List-Received-Date: Tue, 10 Jun 2014 08:35:01 -0000

On 2014-06-10 05:44, Curtis King wrote:
> On Jun 9, 2014, at 9:54 AM, Dave Cridland <> wrote:
>> On 9 June 2014 17:36, Curtis King <> wrote:
>> Instead of adding an redundant flag into the XMPP spec. Why doesn’t this draft state the <optional/> flag explicit and give the session as an example? Otherwise we will be adding <optional/> to more features than session.
>> We've discussed, and rejected, this before, for example:
>> I'm not averse to reopening the discussion, though I'll still argue against it. One or other of a generic <optional/> and <required/> will always be redundant, and multiple <required/> elements will often conflict.
>> In any case, you'll note that <optional/> in this instance doesn't really mean "optional" so much as "redundant" - in fact, I think the name is an artifact of the discussion we had back then, though I can't find the thread that proposes it in this case. (But both M-Link and Prosody do this, so I assume it was discussed sometime).
> It was in the 3921bis draft then removed. BTW, we are about to remove it from M-Link because it isn’t covered in any RFC or XEP.

Alas, <required/> elements are (or are not) defined per stream feature,
in whatever document specifies them, not in any generic way. You are
correct that we shot down that idea in the threads linked above.

This Draft proposes a flag to make optional negotiation explicit, while
RFC 3921 (the only document specifying the protocol) make it required by
default. Also, see my other messages.

As for the flag not being in any RFC or XEP, isn't that what this draft
is exactly about? It is not like there is any hurry in removing it from
your code base right now.

Chairs, I want to request this Draft to become a Workgroup item.