[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [APPS-REVIEW] Gen-ART review of draft-ietf-dkim-overview-11



Thank you so much, Dave for your review.

Your comments are right to the point.
We'll come up with a revised draft based on your comments.

-Munjo Yu

On Wed, Jun 24, 2009 at 3:25 PM, Dave CROCKER<dhc2 at dcrocker.net> wrote:
> I have been selected as the App Area Review Team reviewer for:
>   <http://www.ietf.org/internet-drafts/draft-kim-abnf-codegen-00.txt>
>
> The Apps Area Review team reference is at:
>   <http://www.standardstrack.com/ietf/apps-review/>
>
>
>
>
> Document:      An ABNF Extension for code generation
> I-D:           draft-kim-abnf-codegen-00
> Reviewer:      Dave Crocker
> Review Date:   2009-06-24
>
>
>
> Summary:
>
>     This draft proposes two types of enhancements for ABNF:  an unordered
> set
> construct and a generation-time directives construct.  The draft provides
> far
> too little explanation for its choices or specification of them.  Further it
> requires special-case handling of numerous existing ABNF constructs and is
> likely to be confusing to use and complex to implement.
>
>
>
> Extended Comments:
>
>     ABNF permits specifying formats of protocol data units and payload
> contents. It was first codified in RFC 733 and then RFC 822 and gained
> popularity from amongst a variety of efforts that tailored pure BNF
> notation. As
> part of the DRUMS effort to revise the primary email specifications, ABNF
> was
> split out as a stand-alone reference, in RFC 5234.  The DRUMS effort
> included
> extensive review of existing and proposed ABNF refinements.  The draft under
> review, "An ABNF Extension for code generation" proposes enhancements to
> ABNF.
> The stated purpose is to facilitate automated generate of software based on
> ABNF
> specification.
>
>     ABNF permits specifying an ordered sequence with the "( )" construct.
> The
> current draft adds the construct of an unordered set noted with "{ }". The
> draft also defines a means of adding code-generation directions, with an
> enhanced commenting notation:  ";-- ".
>
>     Over the years, many proposals for enhancing ABNF have been made. From
> this it has become clear that the single biggest requirement for ABNF
> enhancement is to develop a community demand for the change.  This review
> notes
> that requirement but does not have the task of commenting on its presence or
> absence for this particular proposal.
>
>     In general, the draft text has clear and understandable text, with few
> typographical or language errors.  However it has virtually no explanation
> for
> the motivation behinds its particulars, or detailed explanation for how the
> particulars work, including extended examples.  The draft needs a
> substantial
> amount of both.
>
>     Structurally, the draft has Section 2 defining Non-Sequence Group with
> restrictions imposed by it, and Sections 3 & 4 discussion the Extension rule
> and
> restrictions imposed by it.  That is, the two discussions have different
> sub-structures and should be made to be comparable.
>
>     The draft notes that an unordered set ("Non-sequence Group") construct
> was
> part of the DRUMS effort but was dropped due to ambiguity concerns.  The
> draft
> does not discuss how the current proposal satisfies those concerns.
>
>     Within the context of Non-sequence Groups, the draft imposes special
> interpretations of ABNF repetition, sequence, grouping and alternation.
>  This
> makes Non-sequence Groups essentially independent of existing ABNF.  Having
> to
> make definition of existing constructs be context-dependent -- non-sequence
> group versus other uses -- is highly problematic.  It is certain to be
> confusing
> and to make the code for an ABNF parser notably more complex.
>
>     There is a long history in having parsing languages support
> generation-time directives.  Hence, the basic idea in this part of the draft
> could be useful.  Unfortunately, this portion of the draft is insufficiently
> specified.
>
>     The draft proposes a meta-notation for ABNF comments, by having the
> comment begin with two dashes.  Hence:  ;-- .  This is specified as
> providing
> "data type" and "variable name".  However I was not able to see that these
> were
> provided in the particular Extension rules that were supplied.
>
>     Mechanically, the draft needs to define a registry for directives.
>
>     More basically, it needs to explain each provided directive in far more
> detail than is supplied in the current draft.  Frequently, I could not tell
> what
> a particular directive was meant to accomplish.  Other times I could not
> tell
> how it as meant to accomplish it; that is, whether the supplied information
> was
> sufficient.
>
>
> d/
>
>
> --
>
>  Dave Crocker
>  Brandenburg InternetWorking
>  bbiw.net
>