Subject: Re: [Tools-discuss] Nits in the idnits checker

From: Henrik Levkowetz <[email-masked]>
Date: Wed, 20 Feb 2008 10:24:08 +0100

Hi John,

Thanks for the feedback.  More inline:

On 2008-02-20 02:14 John C Klensin said the following:
> Henrik,
> 
> I just tried running draft-klensin-rfc2821bis-07.txt through the
> online idnits checker and discovered several small bugs.   I
> don't think any of these are urgent, or even nearly-so, but
> thought them worth reporting and getting into the queue. 

Yes, that's much appreciated.

> An annotated extract from the checker output is attached.
> Comments start and end in ###.
> 
> best,
>    john

> Checking references for intended status: Proposed Standard
>   ----------------------------------------------------------------------------
> 
>      (See RFC 3967 for information about using normative references to
>      lower-maturity documents in RFCs)
> 
> ### Probably should mention RFC 4897 since both together are BCP 97 ###

Right.  Will be fixed in v2.08.02

>   -- Looks like a reference, but probably isn't:
>      'Additional-Registered-Clauses' on line
>      2773
> '[Additional-Registered-Clauses]...'
> 
> ### What it is is a piece of ABNF ###  

Ah.  I have some extremely primitive code to detect whether I'm in ABNF;
I'm going to use this to try to reduce this problem.  A quick test now
on the same document shows it working in this case, at least.  Will have
to see if the regression testing shows negative effects.  If not, this
will be fixed in v2.08.02.

>   == Unused Reference: '8' is defined on line 3764, but no explicit reference
>      was found in the text
>      '[8]   Newman, C., "ESMTP and LMTP Transmission Types Registration",...'
> 
> ### This actually is in the text, but it appears only in a comment in
> 	the ABNF. ###

Hmm.  Not sure what's right thing to do here -- but the ABNF fix did
unfortunately not eliminate this one.  Should stuff in ABNF comments
be ignored for this purpose, or not?

>   -- Possible downref: Non-RFC (?) normative reference: ref. '2'
> 
>   ** Obsolete normative reference: RFC  821 (ref. '7') (Obsoleted by
>   RFC 2821) 
> 
> ### But this is a reference to text found there that is still
> 	relevant, so the reference is not precisely to obsolete text ### 

I looked at the text in the document.  Relevant I'll grant you, but does
that mean it's normative?  For an informative reference, I'd emit the
format you see below for 822, is maybe a bit more reasonable?

>   -- Possible downref: Normative reference to a draft: ref. '10'  (No
>      intended status found in state file of draft-resnick-2822upd)
> 
>   -- Obsolete informational reference (is this intentional?): RFC  822 (ref.
>      '13') (Obsoleted by RFC 2822)
> 
>   -- Obsolete informational reference (is this intentional?): RFC  974 (ref.
>      '16') (Obsoleted by RFC 2821)
> 
>   -- Obsolete informational reference (is this intentional?): RFC 1869 (ref.
>      '22') (Obsoleted by RFC 2821)
> 
>   -- Duplicate reference: RFC822, mentioned in '28', was also mentioned in
>      '13'.
> 
> ### This one and the next one are actually interesting, because
> 	reference [28] is not a reference for RFC822.  It is a reference
> 	for RFC 2126, whose title is "MIXER (Mime Internet X.400 Enhanced
> 	Relay): Mapping between X.400 and RFC 822/MIME".  So there might
> 	be a small parsing problem in the checker. ###

Right.  This needs looking at, and may not be a fix I can do in just a few
minutes.  Noted.

>   -- Obsolete informational reference (is this intentional?): RFC  822 (ref.
>      '28') (Obsoleted by RFC 2822)
> 
> 
>      Summary: 3 errors (**), 2 warnings (==), 8 comments (--).

Thanks!

	Henrik
_______________________________________________
Tools-discuss mailing list
[email-masked]
http://www.ietf.org/mailman/listinfo/tools-discuss

---

From: Henrik Levkowetz <[email-masked]>
Date: Wed, 20 Feb 2008 12:40:59 +0100

I've just released idnits v2.08.03, which followed closely on v2.08.02.

From the changelog:

idnits (2.08.03)

  * Improved differentiation between ABNF and references

idnits (2.08.02)

  New rev based on input from John Klensin:

  * The note about information on normative references referred to
    RFC 3967 -- added a reference to 4897, which updates it.

  * Improved the extraction of referenced RFC number in references

Regards,

	Henrik

---

From: Henrik Levkowetz <[email-masked]>
Date: Wed, 20 Feb 2008 17:22:11 +0100

Hi John,

On 2008-02-20 14:46 John C Klensin said the following:
...
>>> ### This actually is in the text, but it appears only in a
>>> ### comment in
>>> 	the ABNF. ###
> I'd be inclined to just let it go, i.e., continue to produce the
> message.  The use of references out of ABNF comments is very
> rare and probably not a wildly good idea.  The explanatory,
> rather than normative, BNF and ABNF of 821/2821/2821bis is
> unusual and less and less in favor these days and normative ABNF
> would, I think, use such comments even less often.  I've never
> had a discussion with the RFC Editor about it, but guess it is
> not something they would particularly encourage.   I've thought
> about heuristics that would make the test better, but,
> especially if we ever get the potential for numbered productions
> (for indexing purposes) in xml2rfc, I don't see any really good
> way to distinguish among
> 
>      ...
>                  ; see the production for FooBar
>                  ; see [RFC9999]
>                  ; see P15
> and even
>                  ; the optional construction 
>                  ;    [barbaz] was deprecated by [RFC9999]
> especially since, in a perfect world, one would want
>                  ; see RFC9999
> to generate an "unreferenced RFC" warning

Ok.  I'll think about this some more, but let it go for now.

>>>   ** Obsolete normative reference: RFC  821 (ref. '7')
>>>   (Obsoleted by RFC 2821) 
>>>
> Yep.  
> In a perfect world --again, I'm not sure I'd recommend going to
> the trouble-- I would think the checker might want to remember
> any "Obsoletes" or "Updates" information in the document header
> and use that information to suppress "obsolete reference"
> warnings about those RFCs.  Informative references to previous
> versions are certainly more common than normative ones, but both
> occur.  However, if I identify the current document as a
> replacement for the older one in the header, I almost certainly
> know what I'm intending to do when I then reference it.

Right.  (Even if I'm not sure if an already obsoleted document needs
to be obsoleted again ;-)

Best,

	Henrik

---

From: "Frank Ellermann" <[email-masked]>
Date: Wed, 20 Feb 2008 19:53:15 +0100

Henrik Levkowetz wrote:

> Even if I'm not sure if an already obsoleted document needs

Zombies.  Exorcism.  At the moment RFC 1738 is obsoleted twice,
it will be only really dead when it is obsoleted four or five
times, not counting old RFCs with normative 1738 references :-)

 Frank