Re: [apps-review] apps-team review of draft-ietf-netconf-4741bis-07

"Bert Wijnen \(IETF\)" <bertietf@bwijnen.net> Tue, 08 February 2011 10:06 UTC

Return-Path: <bertietf@bwijnen.net>
X-Original-To: apps-review@core3.amsl.com
Delivered-To: apps-review@core3.amsl.com
Received: from localhost (localhost [127.0.0.1]) by core3.amsl.com (Postfix) with ESMTP id EF1413A70C1; Tue, 8 Feb 2011 02:06:06 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -100.442
X-Spam-Level:
X-Spam-Status: No, score=-100.442 tagged_above=-999 required=5 tests=[BAYES_00=-2.599, HELO_MISMATCH_NET=0.611, HOST_EQ_NL=1.545, STOX_REPLY_TYPE=0.001, USER_IN_WHITELIST=-100]
Received: from mail.ietf.org ([64.170.98.32]) by localhost (core3.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id i-ZdWe6OhJ2j; Tue, 8 Feb 2011 02:06:05 -0800 (PST)
Received: from relay.versatel.net (beverwijk.vuurwerk.nl [62.250.3.53]) by core3.amsl.com (Postfix) with ESMTP id A52903A70AB; Tue, 8 Feb 2011 02:06:05 -0800 (PST)
Received: from [87.215.199.34] (helo=BertLaptop) by relay.versatel.net with smtp (Exim 4.69) (envelope-from <bertietf@bwijnen.net>) id 1PmkSY-0007PZ-Ch; Tue, 08 Feb 2011 11:06:10 +0100
Message-ID: <C4CBEA023AC24DA7BD488BC49361C304@BertLaptop>
From: "Bert Wijnen (IETF)" <bertietf@bwijnen.net>
To: Joshua Bell <josh@lindenlab.com>, apps-review@ietf.org
References: <AANLkTim5-J5askuamk8md98wVR7y==fQnwxDqPo10Eq6@mail.gmail.com>
In-Reply-To: <AANLkTim5-J5askuamk8md98wVR7y==fQnwxDqPo10Eq6@mail.gmail.com>
Date: Tue, 08 Feb 2011 11:04:37 +0100
Organization: Consultant
MIME-Version: 1.0
Content-Type: text/plain; format="flowed"; charset="UTF-8"; reply-type="original"
Content-Transfer-Encoding: 7bit
X-Priority: 3
X-MSMail-Priority: Normal
X-Mailer: Microsoft Windows Mail 6.0.6002.18197
X-MimeOLE: Produced By Microsoft MimeOLE V6.0.6002.18263
X-Mailman-Approved-At: Thu, 10 Feb 2011 08:11:39 -0800
Cc: Netconf <netconf@ietf.org>
Subject: Re: [apps-review] apps-team review of draft-ietf-netconf-4741bis-07
X-BeenThere: apps-review@ietf.org
X-Mailman-Version: 2.1.9
Precedence: list
List-Id: Apps Area Review List <apps-review.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/listinfo/apps-review>, <mailto:apps-review-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/apps-review>
List-Post: <mailto:apps-review@ietf.org>
List-Help: <mailto:apps-review-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/apps-review>, <mailto:apps-review-request@ietf.org?subject=subscribe>
X-List-Received-Date: Tue, 08 Feb 2011 10:06:07 -0000

Josh, thanks for your review and comments

All comments together are being considered by the editors and possibly will
result in a new revision.

We'll keep you updated.

Bert Wijnen
Document Shepherd


----- Original Message ----- 
From: "Joshua Bell" <josh@lindenlab.com>
To: <apps-review@ietf.org>; <rpe@juniper.net>; <mbj@tail-f.com>; 
<j.schoenwaelder@jacobs-university.de>; <andy.bierman@brocade.com>
Cc: "SM" <sm+ietf@elandsys.com>
Sent: Monday, February 07, 2011 7:03 PM
Subject: apps-team review of draft-ietf-netconf-4741bis-07


> == Boilerplate ==
>
> I have been selected as the Applications Area Review Team reviewer for this
> draft (for background on apps-review, please see
> http://www.apps.ietf.org/content/applications-area-review-team).
>
> Please resolve these comments along with any other Last Call comments you
> may receive. Please wait for direction from your document shepherd or AD
> before posting a new version of the draft.
>
> Document: draft-ietf-netconf-4741bis-07
> Title: Network Configuration Protocol (NETCONF)
> Reviewer: Joshua Bell
> Review Date: 2011-02-04
> IETF Last Call Date: 2011-02-07
>
> == Summary ==
>
> This draft is almost ready for publication but has a few issues that should
> be fixed before publication. The issues I note are not significant
> detractions from the overall high quality and readability of the I-D.
>
> The I-D is an update to RFC 4741 and has therefore "stood the test of time".
> I was not familiar with the previous RFC and thus reviewed the document as
> "new to me", then went back and did a cursory review of my feedback to see
> what applied to the previous document as well.
>
> == Major Issues ==
>
> none
>
> == Minor Issues unique to the I-D ==
>
> Section 3 XML Considerations includes:
>
>   All NETCONF messages MUST be well-formed XML, encoded in UTF-8.  If a
>   peer receives an 'rpc' message that is not well-formed XML, it SHOULD
>   reply with an 'operation-failed' error.  If a reply cannot be sent
>   for any reason, the server MUST close the session.
>
>
> The behavior when an 'rpc' message is received that is well-formed XML but
> specifies an encoding other than UTF-8 is not strictly defined. This could
> occur where the encoding is defined via an XML declaration, such as <?xml
> version="1.0" encoding="EUC-JP" ?> (XML declarations are explicitly
> permitted a few lines down in the I-D). I suggest that the I-D specify that
> if a non-UTF-8 encoding is specified the peer SHOULD reply with an
> 'operation-failed' error, if this is the expected behavior.
>
> Section 8.9.1 XPath Capability Description includes:
>
>   The data model used in the XPath expression is the same as that used
>   in XPath 1.0 [2], with the same extension for root node children as
>   used by XSLT 1.0 [11] (section 3.1).  Specifically, it means that the
>   root node may have any number of element nodes as its children.
>
>
> It is unclear how this applies. My understanding is that in XSLT this
> wording refers to the results tree of a transform, and allows for a
> transform which e.g. outputs a non-well-formed XML document with multiple
> top-level elements (e.g. "<elem/><elem/><elem/>") rather than a well-formed
> document with a single root element. However, this section of the I-D is
> describing the input data model to the XPath filter expression, and which
> explicitly yields a node-set as a result rather than a result tree. If this
> text is intended to describe the XML returned by the <get/> or <get-config/>
> operation, it should be stated separately from the description of the XPath
> data model.
>
> On a possibly related note, the next bit which describes how the node-set
> selected by the XPath expression yields the output tree seems
> underspecified:
>
>   The response message contains the subtrees selected by the filter
>   expression.  For each such subtree, the path from the data model root
>   node down to the subtree, including any elements or attributes
>   necessary to uniquely identify the subtree, are included in the
>   response message.
>
>
> It is unclear (to me) exactly what the output should be when the node-set
> results of the XPath expression contains multiple nodes. For example
> (simplified
> relative to the examples in the I-D). given the filter:
>
>   select="/users/user[name='fred' or name='barney']
>
> Would this yield:
>
>           <users>
>
>             <user>
>               <name>fred</name>
>             </user>
>
>             <user>
>               <name>barney</name>
>             </user>
>
> </users>
>
>
> or:
>
>           <users>
>             <user>
>               <name>fred</name>
>             </user>
>           </users>
>
>
>           <users>
>             <user>
>               <name>barney</name>
>             </user>
>           </users>
>
>
> The former is strongly implied by the non-XPath-based filter logic defined
> in section 6 (i.e. the text "Specific data instances are not duplicated in
> the response in the event that the request contains multiple filter subtree
> expressions that select the same data."), but the latter is hinted at by the
> note about the "XSLT extension for root node children" called out above. In
> either case, more clarity in the normative text would be worthwhile, as well
> as an example.
>
>
> == Minor Issues in common with RFC 4741 ==
>
> Section 4.1 and 4.2 define the usage of the "message-id" attribute. Since
> the value is an arbitrary string selected by the sender, it is possible that
> XML processing would modify this value as part of attribute-value
> normalization: http://www.w3.org/TR/2008/REC-xml-20081126/#AVNormalize - I
> suggest adding the requirement that senders ensure that message-ids are
> already normalized per these rules so that they round-trip cleanly.
>
> Section 4.2 is where the <data> element first appears but only in examples;
> unlike 4.3 which explicitly calls out <rpc-error> and 4.4 which explicitly
> calls out <ok>; <data> is also not identified in the XML Schema in Appendix
> B. This leads to the impression that <data> is just an example element, but
> it is defined normatively as part of the positive response in sections 7.1
> and 7.7
>
>
> == Nits in common with RFC 4741 ==
>
> Section 5.1 has odd bulleting around the paragraph for "Running" (a single
> bullet point). (This looks like residue from an earlier revision where
> multiple datastores were defined but then made optional via capabilities.)
>
> Attribute names are called out inconsistently within the document. E.g. "...
> the select attribute...", "containing a 'type' attribute...", "... a
> "message-id" attribute...". For improved readability this should be
> standardized.
>
> Finally, I did not manually verify all of the filter examples in Section 6.
> From a cursory inspection, the introduction of the namespace wildcarding
> (Section 6.2.1) should not change the validity of the samples from RFC 4741.
> If there is a sample dataset and utility that could be used to quickly
> validate the filters in all cases it would be a good idea.
>
> -- Josh
>