[MMUSIC] QUERY: are SDP attributes case sensitive?

Paul Kyzivat <pkyzivat@alum.mit.edu> Wed, 06 August 2014 14:50 UTC

Return-Path: <pkyzivat@alum.mit.edu>
X-Original-To: mmusic@ietfa.amsl.com
Delivered-To: mmusic@ietfa.amsl.com
Received: from localhost (ietfa.amsl.com []) by ietfa.amsl.com (Postfix) with ESMTP id 1CD881B2A4A for <mmusic@ietfa.amsl.com>; Wed, 6 Aug 2014 07:50:53 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.235
X-Spam-Status: No, score=-1.235 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, SPF_SOFTFAIL=0.665] autolearn=no
Received: from mail.ietf.org ([]) by localhost (ietfa.amsl.com []) (amavisd-new, port 10024) with ESMTP id XVE8Ef4qVNP2 for <mmusic@ietfa.amsl.com>; Wed, 6 Aug 2014 07:50:51 -0700 (PDT)
Received: from qmta05.westchester.pa.mail.comcast.net (qmta05.westchester.pa.mail.comcast.net [IPv6:2001:558:fe14:43:76:96:62:48]) by ietfa.amsl.com (Postfix) with ESMTP id CF28A1A0053 for <mmusic@ietf.org>; Wed, 6 Aug 2014 07:50:50 -0700 (PDT)
Received: from omta03.westchester.pa.mail.comcast.net ([]) by qmta05.westchester.pa.mail.comcast.net with comcast id bQrt1o0050bG4ec55Sqqp9; Wed, 06 Aug 2014 14:50:50 +0000
Received: from Paul-Kyzivats-MacBook-Pro.local ([]) by omta03.westchester.pa.mail.comcast.net with comcast id bSqp1o00h3ZTu2S3PSqpZW; Wed, 06 Aug 2014 14:50:50 +0000
Message-ID: <53E240C9.60305@alum.mit.edu>
Date: Wed, 06 Aug 2014 10:50:49 -0400
From: Paul Kyzivat <pkyzivat@alum.mit.edu>
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.7; rv:24.0) Gecko/20100101 Thunderbird/24.6.0
MIME-Version: 1.0
To: IETF MMUSIC WG <mmusic@ietf.org>
Content-Type: text/plain; charset=ISO-8859-1; format=flowed
Content-Transfer-Encoding: 7bit
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=comcast.net; s=q20140121; t=1407336650; bh=08TLsb0YWORpIUoEEq2m8wVPx9yK8IwwLkEftHzvJCc=; h=Received:Received:Message-ID:Date:From:MIME-Version:To:Subject: Content-Type; b=kf9Q3oZO56p9qnG0uCBASN9wgM40oxN2cWXqxp5o0j84lKnPVpBjwQy+MBZwiH2vj wEBCAB9TOHE1HJoihXzh60FmYI0w1sgG5Mlb35aJb01ciEvlDcXwkMpzHWiK5bsah1 LEmaLBrxoF1DjBgMtA9Vm4JXYYT5sOo4rtOX4p/daWSdtsmy16l555dgKTkGMKh28C 5ak1rgQb2kRH4bswKQbyYcnT71pRJZvLP8QrELHFNse6J+K7+pQL5UueimA6DwW4wD T6By4lfSgBph59D45hrvQTt90zPS0M4mFrxKZqIRq+BwELO3uvvXVdAk4NkwPDCQ0s JgNQZi+A9f8kg==
Archived-At: http://mailarchive.ietf.org/arch/msg/mmusic/bE0J0u_H0pryblHOOTD8CWOHfhk
Subject: [MMUSIC] QUERY: are SDP attributes case sensitive?
X-BeenThere: mmusic@ietf.org
X-Mailman-Version: 2.1.15
Precedence: list
List-Id: Multiparty Multimedia Session Control Working Group <mmusic.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/mmusic>, <mailto:mmusic-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/mmusic/>
List-Post: <mailto:mmusic@ietf.org>
List-Help: <mailto:mmusic-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/mmusic>, <mailto:mmusic-request@ietf.org?subject=subscribe>
X-List-Received-Date: Wed, 06 Aug 2014 14:50:53 -0000

While thinking about how to give syntax for SDP attributes, I realized 
that it is not entirely clear whether SDP attribute names are intended 
to be case sensitive or not. 4566 says:

    An SDP session description consists of a number of lines of text of
    the form:


    where <type> MUST be exactly one case-significant character and
    <value> is structured text whose format depends on <type>.  In
    general, <value> is either a number of fields delimited by a single
    space character or a free format string, and is case-significant
    unless a specific field defines otherwise.  Whitespace MUST NOT be
    used on either side of the "=" sign.

And I find nothing stating that attributes are case sensitive.

This is fine for attributes that are defined informally - they don't say 
anything to imply that attribute names are case insensitive. But it is a 
problem for those defined using ABNF. For example, consider the 
following definition from RFC5888:

            group-attribute     = "a=group:" semantics
                                  *(SP identification-tag)
            semantics           = "LS" / "FID" / semantics-extension
            semantics-extension = token
                                  ; token is defined in RFC 4566

ABNF says that matching against rules containing quoted strings is 
case-insensitive. So the above considers all of the following to be valid:


The SDP spec disallows the 'A=', but maybe not the others.

If you want to specify a case-sensitive string constant in ABNF you must 
do so by specifying each byte numerically. That isn't very convenient or 
readable. (We do it for SIP method names, and I hate it.)

A straightforward solution to this is to only specify the attribute 
*values* with ABNF, not the *names*. Specify the names independently, 
and note that they are case sensitive.

But that won't help for those that have already been defined in other 
drafts using ABNF and quoted strings.

What I really want to avoid is saying that we are defining syntax using 
ABNF, but that *our* ABNF treats quoted strings in a case-sensitive way. 
If that is what we want, then we should try to get an upgrade to ABNF to 
support both case-sensitive and case-insensitive strings.

For *values*, if they are already defined in ABNF, then case sensitivity 
is as defined by ABNF. We might have to be very careful about this when 
defining the syntax for the attributes defined in 4566.

A couple of questions:

1) does anybody think attribute *names* are/should-be case-*in*sensitive?

2) does anybody think that the ABNF *values* currently defined in ABNF 
(such as the example from 5888 above) are intended to be matched in a 
case-*sensitive* way in violation of the ABNF matching rules?