Last Call Review of draft-ietf-netconf-netconf-event-notifications-16

Request Review of draft-ietf-netconf-netconf-event-notifications-14
Requested rev. 14 (document currently at 22)
Type Last Call Review
Team YANG Doctors (yangdoctors)
Deadline 2019-01-07
Requested 2018-12-18
Requested by Kent Watsen
Authors Eric Voit, Alexander Clemm, Alberto Prieto, Einar Nilsen-Nygaard, Ambika Tripathy
Draft last updated 2019-01-09
Completed reviews Yangdoctors Last Call review of -16 by Reshad Rahman (diff)
Secdir Last Call review of -17 by David Mandelberg (diff)
Tsvart Last Call review of -17 by Wesley Eddy (diff)
Genart Last Call review of -17 by Meral Shirazipour (diff)
Rtgdir Last Call review of -17 by Dhruv Dhody (diff)
Not reviewed previously.  Very small YANG module.
Quick turn around greatly appreciated!

Assignment Reviewer Reshad Rahman
State Completed
Review review-ietf-netconf-netconf-event-notifications-16-yangdoctors-lc-rahman-2019-01-09
Reviewed rev. 16 (document currently at 22)
Review result Ready with Issues
Review completed: 2019-01-09


YANG Doctor review of draft-ietf-netconf-netconf-event-notifications-16 (by Reshad Rahman)

No YANG module in this draft but there are numerous examples based on the YANG modules in draft-ietf-netconf-subscribed-notifications and draft-ietf-netconf-yang-push. Validation of the examples was done with yanglint 0.16.59.

The major issues are related to the examples, although in 2) below  the root-cause might be with the YANG module in draft-ietf-netconf-subscribed-notifications  and in 3) there is an issue which has already been reported on draft-ietf-netconf-yang-push:

1) The establish-subscription request in Figure 3 fails yanglint validation, the "stream" element has to be moved after the "stream-xpath-filter" element, that fixed the following issue:

err : Invalid order of elements "stream-xpath-filter" and "stream". (/ietf-subscribed-notifications:establish-subscription/stream-xpath-filter)

2) The establish-subscription error response in Figure 5 fails yanglint validation, the "id" element is missing. This is because draft-ietf-netconf-subscribed-notifications has leaf id as mandatory in establish-subscription output, either we remove the mandatory or we reserve a value as invalid id or we add a when statement?

err : Missing required element "id" in "establish-subscription". (/ietf-subscribed-notifications:establish-subscription)

3) The modify-subscription request in Figure 7 fails yanglint validation because of missing "datastore" element. 

err : When condition "../ietf-subscribed-notifications:target/ietf-yang-push:datastore" not satisfied. (/ietf-subscribed-notifications:modify-subscription/ietf-yang-push:periodic)

There are 2 causes here: missing "datastore" element and incorrect when statements in draft-ietf-netconf-yang-push (as reported by Andy Bierman).
Fixing ietf-yang-push.yang and adding the following before element "datastore-xpath-filter " fixed the example.
    <yp:datastore xmlns:ds="urn:ietf:params:xml:ns:yang:ietf-datastores">ds:running</yp:datastore>

Minor comments and nits:
- Abstract s/YANG Push/YANG-Push/ since YANG-Push is the term introduced in draft-ietf-netconf-yang-push 

- Introduction. Last sentence doesn't read well, "...a RESTCONF client via a dynamic subscription..." may need tweaking

- Section 5 s/terminates/terminates,/

- Section 7 3rd bullet. s/this MAY but does not have to be included/this MAY be included/?

- Section 7 s/kill-subscription-error/delete-subscription-error/ (thanks Rob)

- Figure 3, stream-xpath-filter uses prefix "ds" for example-datastore.yang. Since "ds" is used by ietf-datastores.yang, might be better to choose another prefix such as "ex"