Re: [Sipping] draft-york-sipping-p-charge-info-12: ABNF

"Haluska, John J" <jhaluska@telcordia.com> Wed, 30 November 2011 23:46 UTC

Return-Path: <jhaluska@telcordia.com>
X-Original-To: sipping@ietfa.amsl.com
Delivered-To: sipping@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 58FD31F0C51 for <sipping@ietfa.amsl.com>; Wed, 30 Nov 2011 15:46:41 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.398
X-Spam-Level:
X-Spam-Status: No, score=-1.398 tagged_above=-999 required=5 tests=[BAYES_00=-2.599, HTML_MESSAGE=0.001, J_CHICKENPOX_23=0.6, J_CHICKENPOX_57=0.6]
Received: from mail.ietf.org ([12.22.58.30]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id 5ruwMaYL3Bo7 for <sipping@ietfa.amsl.com>; Wed, 30 Nov 2011 15:46:38 -0800 (PST)
Received: from dnsmx1mnh.telcordia.com (dnsmx1mnh.telcordia.com [192.4.156.21]) by ietfa.amsl.com (Postfix) with ESMTP id E69FE1F0C35 for <sipping@ietf.org>; Wed, 30 Nov 2011 15:46:37 -0800 (PST)
Received: from rrc-dte-bms01.telcordia.com (rrc-dte-bms01.cc.telcordia.com [128.96.150.38]) by dnsmx1mnh.telcordia.com (8.13.8+Sun/8.13.8) with ESMTP id pAUNkO8L001016; Wed, 30 Nov 2011 18:46:32 -0500 (EST)
X-AuditID: 80609626-b7b9aae000000a7c-e6-4ed6c0546017
Received: from pya-dte-exhb1.dte.telcordia.com (pya-dte-exhb1.cc.telcordia.com [128.96.20.11]) by rrc-dte-bms01.telcordia.com (Symantec Brightmail Gateway) with SMTP id 20.66.02684.450C6DE4; Wed, 30 Nov 2011 18:46:28 -0500 (EST)
Received: from rrc-dte-exmb2.dte.telcordia.com ([128.96.180.27]) by pya-dte-exhb1.dte.telcordia.com ([128.96.20.11]) with mapi; Wed, 30 Nov 2011 18:46:32 -0500
From: "Haluska, John J" <jhaluska@telcordia.com>
To: Dan York <dan-ietf@danyork.org>, Brett Tate <brett@broadsoft.com>
Date: Wed, 30 Nov 2011 18:46:30 -0500
Thread-Topic: draft-york-sipping-p-charge-info-12: ABNF
Thread-Index: Acyuzmvijplp2eLHR2+O2k5m6ncpfQAvk8Og
Message-ID: <8B6A9EC265011E4CB70F99C64426E8C206CA69B6A9@rrc-dte-exmb2.dte.telcordia.com>
References: <7FF1E5E16911C54BB2D57D4C4A2ED35A0C1267A0F5@EXMBXCLUS01.citservers.local> <E4BBC312-18FF-46AC-A076-7FC34A75DC47@danyork.org>
In-Reply-To: <E4BBC312-18FF-46AC-A076-7FC34A75DC47@danyork.org>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
acceptlanguage: en-US
Content-Type: multipart/alternative; boundary="_000_8B6A9EC265011E4CB70F99C64426E8C206CA69B6A9rrcdteexmb2dt_"
MIME-Version: 1.0
X-Brightmail-Tracker: AAAAAA==
Cc: "sipping@ietf.org" <sipping@ietf.org>
Subject: Re: [Sipping] draft-york-sipping-p-charge-info-12: ABNF
X-BeenThere: sipping@ietf.org
X-Mailman-Version: 2.1.12
Precedence: list
List-Id: "SIPPING Working Group \(applications of SIP\)" <sipping.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/sipping>, <mailto:sipping-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/sipping>
List-Post: <mailto:sipping@ietf.org>
List-Help: <mailto:sipping-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/sipping>, <mailto:sipping-request@ietf.org?subject=subscribe>
X-List-Received-Date: Wed, 30 Nov 2011 23:46:41 -0000

Dan,

I don't think that it was me who commented about the ABNF. I'm not an ABNF expert so I'm probably not qualified to make a concrete recommendation here. I do agree that it'd be helpful to explicitly point out that the charge-params belong on the left hand side of the "@" sign.


Thanks

John



From: Dan York [mailto:dan-ietf@danyork.org]
Sent: Tuesday, November 29, 2011 2:38 PM
To: Brett Tate
Cc: Tolga Asveren; sipping@ietf.org; Haluska, John J
Subject: Re: draft-york-sipping-p-charge-info-12: ABNF

Brett, (and replying from a slightly different address so that it will go to the SIPPING list)

Thank you for the feedback and question.  The ABNF in the draft has evolved over the past almost-4 years as various people more literate than I in ABNF have given us feedback and we've updated the draft.

In the ABNF section, "chargeparam" is intended to represent that you could optionally have the "noa", "npi" parameters - or any other generic parameters found in RFC 3261(such as "user=phone")

Originally, the ABNF read:


         P-Charge-Info = "P-Charge-Info" HCOLON (name-addr / addr-spec)*

                 (SEMI charge-param)

                 ; name-addr and addr-spec are specified in RFC 3261<http://tools.ietf.org/html/rfc3261>

             charge-param = npi-param / noa-param / generic-param

I thought that was fairly clear and made sense.  However, I changed the ABNF in rev -10 in October 2010 to more simply:


         P-Charge-Info = "P-Charge-Info" HCOLON (name-addr / addr-spec)

                 ; name-addr and addr-spec are specified in RFC 3261<http://tools.ietf.org/html/rfc3261>

             charge-param = npi-param / noa-param / generic-param

after someone strongly made the case that the "* (SEMI charge-param)" was not required because it was a "userinfo parameter" to the name-addr/addr-spec element.  Unfortunately, the email exchange about this seems to have NOT taken place on the mailing list but rather in a private email exchange - and I no longer have access to the archives of the email account where that occurred (I am no longer with Voxeo) - so I don't know who it was that argued for this change.

I'm directly cc'ing John Haluska as he was involved in with a number of those exchanges and can perhaps clarify this.

In reviewing section 19.1.1 of RFC 3261 ( http://tools.ietf.org/html/rfc3261#section-19.1.1 ) and sections 19.1.2, 19.1.3, and 19.1.6 as well as the ABNF in section 25,  I am guessing that the rationale was because the "charge-param" does fit into the "user" section of the URI.

So that's a roundabout way of saying that it is part of "user", as I interpret the ABNF in RFC 3261.

Do you have suggestions for how to make this clearer in the draft?  Would the original ABNF be more useful to you?  Should the sentence "charge-param is used as a userinfo parameter in P-Charge-Info" indicate that it is the "user" part of the "userinfo" field?

Thanks,
Dan

P.S. After not receiving any feedback for many, many months I suddenly have received two email questions/comments about P-Charge-Info today. I don't know if this is as a result of the mention on a mailing list that Richard Shockey mentioned... but I was surprised.

On Nov 29, 2011, at 1:35 PM, Brett Tate wrote:


Howdy,

Draft-york-sipping-p-charge-info-12 includes the following ABNF without explicitly indicating if the charge-param is part of user, telephone-subscriber, or both.  I'm not sure how to interpret the charge-param statement since userinfo has no parameters (although user and telephone-subscriber can have them).

Is charge-param part of user, telephone-subscriber, or both?  I recommend updating section 7 to remove the ambiguity.

Thanks,
Brett


------

Draft-york-sipping-p-charge-info-12:

"The syntax of the P-Charge-Info header is described as follows:

        P-Charge-Info = "P-Charge-Info" HCOLON (name-addr / addr-spec)
                ; name-addr and addr-spec are specified in RFC 3261
            charge-param = npi-param / noa-param / generic-param
            npi-param = ";npi" EQUAL npi-value
                ; generic-param is specifed in RFC 3261
            npi-value = gen-value
            noa-param = ";noa" EQUAL noa-value
            noa-value = gen-value

  The SIP URI contained in the name-addr/addr-spec is the billing
  indicator that is passed between the parties.

  charge-param is used as a userinfo parameter in P-Charge-Info."


RFC 3261:

userinfo =  ( user / telephone-subscriber ) [ ":" password ] "@"
user     =  1*( unreserved / escaped / user-unreserved )

RFC 2806:

telephone-subscriber  = global-phone-number / local-phone-number

--
Dan York  dyork@lodestar2.com<mailto:dyork@lodestar2.com>
Phone: +1-802-735-1624  skype:danyork
http://www.danyork.com/
http://twitter.com/danyork


--
Dan York  dyork@lodestar2.com<mailto:dyork@lodestar2.com>
http://www.danyork.com/   skype:danyork
Phone: +1-802-735-1624
Twitter - http://twitter.com/danyork
--------------------------------------------------------
All comments and opinions are entirely my own and have no connection whatsoever to any employer, past or present. Indeed, by tomorrow even I might be disavowing these comments.
--------------------------------------------------------