Subject: Lexical indeterminism in SIP grammar.

From: [email-masked]
Date: Thu, 1 Apr 1999 11:39:24 -0500

I have encountered a case of lexical indeterminism in the SIP grammar. This
was in the
case of the "Contact" parameter (Section 6.13 of draft-ietf-mmusic-sip-12).
As per the EBNF
notation, a legal construct would have been,
Contact = "Contact" ":" SIP-URL *(";" contact-params)
                                           ^^^^^^^^ From addr-spec.
>From Section 2 of the same document, a  valid construct would be
SIP-URL= "sip:" hostport *(";" url-parameter) giving us

Contact= "Contact" ":" "sip:" hostport *(";" url-parameter) *(";"
contact-params)

Cause of the conflict other-param (from url-parameter) and
extension-attribute (from contact-params) which allow String "=" String.

Could someone please explain.

Regards,
Jagdeep Rao.

---

From: Henning Schulzrinne <[email-masked]>
Date: Thu, 01 Apr 1999 13:14:00 -0500

> Could someone please explain.

This was discussed earlier and led to a change in the Contact syntax.
See RFC 2543:

  Contact = ( "Contact" | "m" ) ":"
             ("*" | (1# (( name-addr | addr-spec )
             [ *( ";" contact-params ) ] [ comment ] )))

Since URIs can contain
        commas and semicolons as reserved characters, they can be
        mistaken for header or parameter delimiters, respectively.
        The current syntax corresponds to that for the To and From
        header, which also allows the use of display names.

And under the description of From:

   Even if the "display-name" is empty, the "name-addr" form MUST be     
   used if the "addr-spec" contains a comma, question mark, or
   semicolon.

-- 
Henning Schulzrinne   http://www.cs.columbia.edu/~hgs

---

From: Igor Slepchin <[email-masked]>
Date: Thu, 01 Apr 1999 13:49:18 -0500

It looks like several lines in that section were somehow omitted when
converting to text RFC. Here is a quote from
draft-ietf-mmusic-sip-12.txt/ps:

Even if the "display-name" is empty, the "name-addr" form MUST be used
if the "addr-spec" contains a comma, semicolon or question mark.

This eliminates the ambiguity by requiring the use of name-addr form if
SIP-URI contains any parameters.

---
Igor Slepchin