Subject: IPP> Use of "-" for range in ABNF: confusion with "-" in rule names?

From: Tom Hastings <[email-masked]>
Date: Thu, 17 Apr 1997 12:43:22 PDT

I'm working on the Internet Printing Protocol (IPP) project and we are
considering using ABNF.  However, our attribute names and attribute
value names have hyphens in them.  Also ASN.1 tokens and many ASN.1 based
standards use "-" (hyphen) in token names.  So I was concerned when I heard
that ABNF was changing from using ".." (also used in ASN.1 for ranges) for 
ranges to using "-".

I happen to like ".." a lot, since it is natural and has been used in ASN.1
and some programming languages.  So picking something new for ranges
will confuse a lot of people who will be seeing ABNF for the first time.

I'm also concerned that changing to "-" for ranges may create confusion 
with "-" in rule names (IPP uses rule names for attribute names and 
attribute value names)

Is there some other way to solve the ambiguity problem that you had with
using ".." for ranges, so that ".." could continue to be used for ranges?

If not, then how about some other notation for ranges, such as ":"?

Thanks,
Tom Hastings

Return-Path: <[email-masked]>
X-Sender: [email-masked]
Date: Wed, 16 Apr 1997 23:50:47 PDT
To: [email-masked]
From: Carl-Uno Manros <[email-masked]>
Subject: IPP> ABNF near finished?
Sender: [email-masked]

Here are suggested fixes to the current ABNF draft.

Carl-Uno

>Date: Mon, 14 Apr 1997 16:46:30 -0700 (PDT)
>From: Chris Newman <[email-masked]>
>Subject: ABNF near finished?
>To: Detailed Revision/Update of Message Standards <[email-masked]>
>
>At the IETF meeting, we spent a fair amount of time discussing some
>possible problems with ABNF.  The conclusions were as follows (using my
>own interpretations):
>
>(1) It's too hard to get the set notation {} both clear and useful, so
>we'll punt.
>
>(2) Range notation needs to be simplified to avoid confusions like
>"a".."Z", which is ambiguous since each end is case-insensitive.  Also
>decided to use "-" instead of "..".
>
>(3) The "#" notation is used incompatibly in many specs (e.g. 822 & 2060).
>Decided to drop it from notation since it's usually #thing or 1#thing both
>of which are fairly simple to write without that notation.  In addition,
>current definition implies linear-white-space which is troublesome.
>
>(4) Case-sensitive strings can be written with literals, and shouldn't be
>used often anyway.  No special notation needed.
>
>Given these decisions it appears the ABNF document has no remaining
>substantive open issues.  If you think this is wrong, please speak up now.
>
>[As an implementation test, I updated my working copy of the ACAP
> specification to use the new ABNF plus these decisions.  Removing "#"
> wasn't bad, and the literal numbers + ranges allowed me to get rid of
> all <description> rules.]
>
>
>
>

---

From: Keith Moore <[email-masked]>
Date: Thu, 17 Apr 1997 16:54:01 -0400

> with "-" in rule names (IPP uses rule names for attribute names and 

It's not a huge deal as far as coding is concerned -- the immediately
preceding context suffices to distinguish "-" in identifiers from "-"
in ranges -- but I still prefer either ".." or ":" to "-".
Recognizing ".." is no more difficult than distinguishing the two
meanings of "-".

And while I can't think of many other meanings of ".." than to
indicate some sort of range. "-", on the other hand, is quite
overloaded.

Keith