Re: [salud] WGLC of draft-ietf-salud-alert-info-urns-09

worley@ariadne.com (Dale R. Worley) Tue, 07 January 2014 20:15 UTC

Return-Path: <worley@shell01.TheWorld.com>
X-Original-To: salud@ietfa.amsl.com
Delivered-To: salud@ietfa.amsl.com
Received: from localhost (ietfa.amsl.com [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id CD2FD1AE15D for <salud@ietfa.amsl.com>; Tue, 7 Jan 2014 12:15:29 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.601
X-Spam-Level:
X-Spam-Status: No, score=-2.601 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, RCVD_IN_DNSWL_LOW=-0.7, SPF_HELO_PASS=-0.001] autolearn=ham
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id gwKlYs_dh7ql for <salud@ietfa.amsl.com>; Tue, 7 Jan 2014 12:15:28 -0800 (PST)
Received: from TheWorld.com (pcls5.std.com [192.74.137.145]) by ietfa.amsl.com (Postfix) with ESMTP id DD9061AE15B for <salud@ietf.org>; Tue, 7 Jan 2014 12:15:27 -0800 (PST)
Received: from shell.TheWorld.com (svani@shell01.theworld.com [192.74.137.71]) by TheWorld.com (8.14.5/8.14.5) with ESMTP id s07KF02I003647; Tue, 7 Jan 2014 15:15:03 -0500
Received: from shell01.TheWorld.com (localhost.theworld.com [127.0.0.1]) by shell.TheWorld.com (8.13.6/8.12.8) with ESMTP id s07K7tHn2345014; Tue, 7 Jan 2014 15:07:56 -0500 (EST)
Received: (from worley@localhost) by shell01.TheWorld.com (8.13.6/8.13.6/Submit) id s07K7pCj2344695; Tue, 7 Jan 2014 15:07:51 -0500 (EST)
Date: Tue, 07 Jan 2014 15:07:51 -0500
Message-Id: <201401072007.s07K7pCj2344695@shell01.TheWorld.com>
From: worley@ariadne.com
Sender: worley@ariadne.com
To: Paul Kyzivat <pkyzivat@alum.mit.edu>
In-reply-to: <528D41F2.8090200@alum.mit.edu> (pkyzivat@alum.mit.edu)
References: <201311201944.rAKJiS7d5355422@shell01.TheWorld.com> <528D41F2.8090200@alum.mit.edu>
Cc: salud@ietf.org
Subject: Re: [salud] WGLC of draft-ietf-salud-alert-info-urns-09
X-BeenThere: salud@ietf.org
X-Mailman-Version: 2.1.15
Precedence: list
List-Id: Sip ALerting for User Devices working group discussion list <salud.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/salud>, <mailto:salud-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/salud/>
List-Post: <mailto:salud@ietf.org>
List-Help: <mailto:salud-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/salud>, <mailto:salud-request@ietf.org?subject=subscribe>
X-List-Received-Date: Tue, 07 Jan 2014 20:15:30 -0000

I've been neglecting Salud...

> Date: Wed, 20 Nov 2013 15:12:50 -0800
> From: Paul Kyzivat <pkyzivat@alum.mit.edu>

My comments on items in this message.  (The other items I agree with.)

> Section 4:
>
>        Registration date:  TBD
> 
> How is this to be filled in? Should there be instructions to the editor?

The common method (e.g., draft-cardona-cablelabs-urn-02.txt) seems to
be:

        Registration date: YYYY-MM-DD [RFC Editor: Please replace YYYY-
        MM-DD with the publication date of this RFC.]

> Section 9.2:
> 
> The examples are a [bit] hard to follow. Specifically, each example 
> describes the signals at each source and the winner, but when doing so 
> it never mentions which signals (Signal 1, Signal 2, ...) - it instead 
> identifies by alert urn. Since to point is to determine the signal to be 
> rendered, this seems obscure. For example the following would seem 
> clearer to me for 9.2.1:
> 
>     If the device receives <urn:alert:source:internal>, then the sort is:
> 
>     Signals at source:internal: (this is, first place)
> 
>        Signal 2
> 
>     Signals at source: (tied for second place)
> 
>        Signal 3
>        Signal 4
>        Signal 5
> 
>     And these signals are excluded from the set:
> 
>        Signal 1
> 
>     So in this example, the sorting algorithm properly gives first place
>     to Signal 2.

Yes, you're right there.  I'll rewrite that section and send it in
another message.

> Section 10:
> 
>     A SIP UA MAY add a URN or multiple URNs to the Alert-Info header
>     field in a SIP request or a provisional 1xx response (excepting a 100
>     response) when it needs to provide additional information about the
>     call or about the provided service.
> 
> The above only talks about adding *to* an Alert-Info, not the adding 
> *of* an Alert-Info. I suggest:
> 
>     A SIP UA MAY include one or more Alert-Info header fields,
>     containing one or more URNs in a SIP request or a provisional 1xx
>     response (excepting a 100 response) when it needs to provide
>     additional information about the call or about the provided service.
> 
> Section 11:
> 
>     A SIP proxy MAY add a URN or multiple URNs to the Alert-Info header
>     field in a SIP request or a provisional 1xx response (excepting a 100
>     response) when it needs to provide additional information about the
>     call or about the provided service.
> 
> I think we would ideally allow a proxy to modify/remove URNs, but 3261 
> doesn't permit that. But a proxy can get a similar effect by putting a 
> counteracting URN earlier in the sequence. But it is also possible that 
> there will be no Alert-Info and the proxy needs to add one. I suggest:
> 
>     A SIP proxy MAY add an Alert-Info header field if none is present,
>     and MAY add or remove URNs to an Alert-Info header
>     field in a SIP request or a provisional 1xx response (excepting a 100
>     response) when it needs to provide additional information about the
>     call or about the provided service.

There is complexity because we don't really care whether a URN is
added to an existing Alert-Info or whether a new Alert-Info is
inserted containing the URN.  I looked up the terminology in RFC 3261,
and it isn't quite what I thought it was:

      Header Field: A header field is a component of the SIP message
         header.  A header field can appear as one or more header field
         rows. Header field rows consist of a header field name and zero
         or more header field values. Multiple header field values on a
         given header field row are separated by commas. Some header
         fields can only have a single header field value, and as a
         result, always appear as a single header field row.

      Header Field Value: A header field value is a single value; a
         header field consists of zero or more header field values.

(There is no separate definition of "header field row".)

So a "header field value" is (in our case) a single URN, a "header
field row" is one of those things starting with "Alert-Info:"
containing one or more URNs, and the Alert-Info "header field" is the
abstract array of all of all the URNs.

Also, it seems to be understood that a proxy can reorganize how a
header field is split into header field rows, and can reorder how the
header field rows for one field name are ordered with respect to the
header field rows of another field name.  (RFC 3261 section 7.3 and
section 16.6 step "copy request") But this is not stated very clearly.

Based on that, the first sentences you've listed under section 10 and
section 11 are correct, in that we mean that the UA or proxy can add
URNs as header field values into the array of header field values, and
we don't care how the entity organizes the Alert-Info header field
rows as long as the header field is correct.  I think it would be
clearer to start the sentences:

     A SIP UA/proxy MAY add one or more URN header field values to the
     Alert-Info header field ...

Do we want to footnote "header field" with "RFC 3261 section 6", which
contains the definitions I have quoted?

Dale