Subject: Proposed changes for <chkscope>

From: Russ Allbery <[email-masked]>
Date: Sat, 04 Jul 2009 15:42:31 -0700

I think I received no feedback for this proposed diff other than
agreement from Julien.  Given that we're in AUTH48, in the absence of
more consensus on the list that this is worth pushing at this phase, I'm
not going to try to ask the RFC Editor to include it.

So if you want me to push for this change, please speak up now.

Index: usepro.xml
===================================================================
--- usepro.xml  (revision 5949)
+++ usepro.xml  (working copy)
@@ -2022,14 +2022,24 @@
           the valid groups in all hierarchies or sub-hierarchies with a
           prefix listed in the &lt;chkscope> argument, excluding any
           sub-hierarchy where the &lt;chkscope> argument is prefixed by
-          "!".  If no &lt;chkscope> argument is given, it applies to all
+          "!".  For complex cases with multiple &lt;chkscope> arguments,
+          start from an empty list of groups, include all groups in the
+          checkgroups control message matching &lt;chkscope> arguments
+          without a "!" prefix, and then exclude all groups matching
+          &lt;chkscope> arguments with a "!" prefix.  Follow this method
+          regardless of the order of the &lt;chkscope> arguments in the
+          Control header field.</t>
+
+          <t>If no &lt;chkscope> argument is given, it applies to all
           hierarchies for which group statements appear in the body of the
-          message.  Since much existing software does not honor the
-          &lt;chkscope> argument, the body of the checkgroups control
-          message MUST NOT contain group statements for newsgroups outside
-          the intended scope and SHOULD contain a correct newsgroup list
-          even for sub-hierarchies excluded with "!" &lt;chkscope> terms.
-          News servers, however, MUST honor &lt;chkscope> as specified
+          message.</t>
+
+          <t>Since much existing software does not honor the &lt;chkscope>
+          argument, the body of the checkgroups control message MUST NOT
+          contain group statements for newsgroups outside the intended
+          scope and SHOULD contain a correct newsgroup list even for
+          sub-hierarchies excluded with "!" &lt;chkscope> terms.  News
+          servers, however, MUST honor &lt;chkscope> as specified
           here.</t>
 
           <t>The &lt;chksernr> argument may be any positive integer.  If

-- 
Russ Allbery ([email-masked])             <http://www.eyrie.org/~eagle/>

---

From: Julien ÉLIE <[email-masked]>
Date: Sun, 5 Jul 2009 11:19:39 +0200

Hi all,

> agreement from Julien.

Harald was also in favour of a diff (but it was before you actually
wrote it):
    http://www.imc.org/ietf-usefor/mail-archive/msg04638.html

    "It seems to me that since we're incompatible with something
     people will also know about (wildmat), flagging the
     incompatibility is important."

> Given that we're in AUTH48, in the absence of

Please note that if this diff is not in USEPRO, it will lead to various
incompatible implementations of checkgroups processing, like this one
we have already seen on news.software.nntp:

"When one expression describes a subset of another expression in an
opposite manner (inclusion vs. exclusion), an order of processing is
necessary to resolve the conflicting directives.

Given:  a,  a.b,  a.b.c,  a.b.c.d

In the order "a !a.b a.b.c !a.b.c.d", natural left-to-right processing is
the same as superset-subset order, so what results is that we include "all
of a not in a.b except all of a.b.c not in a.b.c.d".

However, let's make the order:  "!a.b.c.d a.b.c !a.b a".  Processing
superset-subset order will result as above, but left-to right will result
as "include all of a" and the other three expressions are rendered
meaningless.  The syntax may not care.  The semantics of order processing
DOES care.

Exclusion lacks the commutative property; order matters.  If the elements
may appear in any syntactic order, the order of application of their use
must be defined, else different answers can ensue.  We should not have
ambiguous results."

> +          For complex cases with multiple &lt;chkscope> arguments,

That solves the issue.

-- 
Julien ÉLIE

« There's a way of transferring funds that is even faster
  than electronic banking.  It's called marriage. » (Sam Kinison)

---

From: Harald Tveit Alvestrand <[email-masked]>
Date: Sun, 12 Jul 2009 23:15:28 +0200

> So if you want me to push for this change, please speak up now.
I'd like to see this change.