Hi Authors,

some quick comments on your draft.


meta-comments:

1) shouldn’t this be in the NETMOD WG and be named 
“draft-netmod-yang-json-rpc-00” once adopted, and “draft-issn-yang-json-rpc-00” 
(or whatever) for now?   Posting these comments to NETMOD at any rate :)

2) why does each page have a number 0 at the top?

3) might be worth adding a security section and some IANA considerations (even 
if there are no actions required from IANA)


Section 1:

4) s/ZMQ/0MQ (ref can still be [ZEROMQ])

5) s/RabbitMQ/AMQP (ref can still be [RABBITMQ])

6) you say JSON RPC 2.0 has a number of well known shortcomings.  Aren’t there 
really just the two - no means of describing/documenting an API method and no 
means to interpret data and to generate structures to receive the data?   or is 
that three? ;)  I almost wonder if bullets are the answer here.

7) s/lead/led in “this has lead them”

8) I think it should be “and/or use” not “and/or the use of”

9) isn’t “not portable across languages” basically the same as “break the core 
assumption of JSON being a language agnostic interchange format”?

10) is it really a core assumption that JSON is language agnostic?  Given the 
JS in its name i mean…

11) you reference the "JSON Encoding of Data Modeled with YANG” draft.  That’s 
RFC7951 :)


Section 2:

12) maybe it’s time to move to YANG 1.1 (RFC 7950)

13) do you need to use square brackets each time you refer to a doc? I’d just 
do it the first time and use the name thereafter.


Section 3:

14) s/yang/YANG

15) where you have links to sections of RFCs I’d keep the link to the section 
separate from any link to the whole RFC.

16) where referring to an RFC outside of square brackets I think the correct 
style is to have a space between “RFC” and the RFC number.

17) might be worth explaining why use of must, when, leafref and identityref 
can harm interoperability.

18) also might be worth enumerating the characters to be discouraged.

19) it’s probably worth breaking the input and output for the RPC out as 
separate sub-sections rather than having the input in the main part of section 
3 and the output as one sub-section of section 3.4

20) it’s probably worth explaining that figure 3 is the positional form and 
figure 4 is named.   You do that later on so not to do it for your first 
example is somewhat confusing.

21) it’s probably also worth explaining that the mappings for the positional 
form are a difference wrt RFC7951 (since YANG-modelled data is always carried 
in named form when mapped into XML or JSON).


Section 3.2:

22) link missing under 7.13.3


Section 3.3:

23) from my understanding of YANG extensions you need to write a YANG model for 
idl and publish that.

24) seems you’ve actually defined two extensions here - idl:value-type and 
idl:implemented-by


Section 3.4:

25) the output rules seem to conflict with the input rules re lists (one reason 
why I think separating those out into separate subsections makes sense)


Section 3.4.1:

26) I’m not sure having {“key” : “value”} is a good example for anyxml in that 
it tends to imply you have a model somewhere and know the keys?  The same 
occurs in Fig 23 (sec 3.4.3)


Section 3.4.3:

27) in fig 26 I think the result should be “object”, not “test-object”?


Section 3.6:

28) I think this is section 6.11 not 6.1 of RFC7951?

29) worth explaining why the representation doesn’t match JSON semantics

30) is this YANG path stuff equivalent to the actions in YANG 1.1?


Section 3.6.1:

31) please define QName


Section 3.6.3:

32) please delete the word “section” after “Section 3.6.1"


Section 4:

33) the Zero MQ and JSON RPC refs seem to be back to front

34) you’ve got PJZMQ pointing at www.jabsorb.org <http://www.jabsorb.org/>






_______________________________________________
netmod mailing list
[email protected]
https://www.ietf.org/mailman/listinfo/netmod

Reply via email to