[Date Prev][Date Next] [Chronological] [Thread] [Top]

RE: RFC2252 wshp and other ABNF issues



At 12:58 PM 2/8/01 -0600, Ryan Moats wrote:
>On the whitespace issue, I like the idea and look
>forward to the ABNF.

For the whitespace issue (only), I suggest replacing
the following common productions in section 4.1 as
follows:

  qdstring        = "'" dstring "'"
  qdstringlist    = [ qdstring *( space qdstring ) ]
  qdstrings       = qdstring / ( "(" whsp qdstring whsp ")" )

  oids            = oid / ( "(" whsp oidlist whsp ")" )
  oidlist         = oid * ( whsp "$" whsp oid )

  qdescrs         = qdescr / ( "(" whsp qdescrlist whsp ")" )
  qdescrlist      = [ qdescr *( whsp qdescr ) ]

  qdescr          = "'" descr "'"

and remove production woid.  Then, rewrite AttributeTypeDescription
as follows:

 AttributeTypeDescription = "(" whsp
   numericoid                             ; AttributeType identifier
   [ space "NAME" space qdescrs ]         ; name used in AttributeType
   [ space "DESC" space qdstring ]        ; description
   [ space "OBSOLETE" ]
   [ space "SUP" space oid ]              ; derived from this other
                                          ; AttributeType
   [ space "EQUALITY" space oid           ; Matching Rule name
   [ space "ORDERING" space oid           ; Matching Rule name
   [ space "SUBSTR" space oid ]           ; Matching Rule name
   [ space "SYNTAX" space noidlen ]       ; see section 4.3
   [ space "SINGLE-VALUE" ]               ; default multi-valued
   [ space "COLLECTIVE" ]                 ; default not collective
   [ space "NO-USER-MODIFICATION" ]       ; default user modifiable
   [ space "USAGE" space AttributeUsage ] ; default userApplications
   whsp ")"

And likewise for other schema description syntaxes.  Also
text like:
  Terms whose identifier begins with "X-" are reserved for
  private experiments, and MUST be followed by a <qdstrings>
  encoding.

would be replaced with:
  Terms whose identifier begins with "X-" are reserved for
  private experiments, and MUST be followed by a <space> and
  a <qdstrings> encodings.

which actually likely should be folded into the ABNF as well.
  xstring = "X-" 1*( a / "-" / "_" )

then in each add to the optional fields
  *[ space xstring space qdstrings ]        ; extensions

I note that 2252 didn't specify what the characters can be used
in a xstring, I just picked this a reasonable set which I hope
includes all current private experiments.

>On quoting, do we need \ hex or can we live with \ char?

I actually like Steven's suggestion to use "'" to escape "'".
I believe this could be specified as simply as:

        utf8 = <any sequence of octets formed from the UTF-8 [9] 
              transformation of a character from ISO10646 [10]
               except "'">
        dstring = 1*( utf8 / "''" )  ; escaped utf8 string, each "'"
                        ; appearing in the value to be encoded is
                        ; escaped by a proceeding "'"