Re: [netmod] Shepherd review on draft-ietf-netmod-yang-instance-file-format-10

Balázs Lengyel <balazs.lengyel@ericsson.com> Wed, 08 April 2020 12:06 UTC

Return-Path: <balazs.lengyel@ericsson.com>
X-Original-To: netmod@ietfa.amsl.com
Delivered-To: netmod@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 65B623A07F5 for <netmod@ietfa.amsl.com>; Wed, 8 Apr 2020 05:06:31 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.268
X-Spam-Level:
X-Spam-Status: No, score=-2.268 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.168, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, SPF_PASS=-0.001, URIBL_BLOCKED=0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (1024-bit key) header.d=ericsson.com
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id XSd0j6W2skjI for <netmod@ietfa.amsl.com>; Wed, 8 Apr 2020 05:06:29 -0700 (PDT)
Received: from EUR04-VI1-obe.outbound.protection.outlook.com (mail-eopbgr80083.outbound.protection.outlook.com [40.107.8.83]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id B015C3A0798 for <netmod@ietf.org>; Wed, 8 Apr 2020 05:06:28 -0700 (PDT)
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=SzIGRbT+o5J//XgjcKEJKYjQb/DZviLtZHkpfQ+AB3bx4JZ3OdV1hDb79OJQCWWD6jx0UkgxWqxjfcd7NPfLyjTwt4FaAVC4CM+5+CbEJVOvZMIBuUizn3ewMQq27TBuwdT9vZrcrvkpiAI8mJxPDBbGIv5H8xmRB//DBJ+Iv4lLiXjwq/pSFlGJ5koYl1Ta15eYpa/erUESHQeli31DOJj63FwzoOCQFuJl40wH7yVQ46yMp2oT1LDKE4fzC+Y1dLYj+fAOZSBqODtv+aywGColOYtgTjk5h7s4ZWCdjoOKMmD1VW+C6gQjjkydIdevB1eB6mC0XD6bKYbyJCogoQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=2r+Ioh7XornmHKSSWpaWo3gUqFuArPXItBcKbOXRqKY=; b=GblVTX7+hAUt7//H3Kk8VIA+nuTOF9PMHehuEM+s2NisGZBVfRK/VqD2QvgrnIO264a8BQY14av06t9Cc6E26fkfaAZfD605S3Pv1FtDz/iy1wKDGbC8R5rFeHyMGOCc2tEtj+g9PwkgnkHPHPJijyUzWtiX7yXnpBfMXHekjgLtwrmMp1DcfPM2GTTtX5OWn2hY+2H5F0o99Unw+v3C5gmPrMJ1FvXNrP+Kntwgcw/NjQ1QSVe2VHz4dwkf53smeIsqAj43esC1MlkhqNUwJzo9Rr7KkdQ/tTabbLfycvs0MZeQPUjcQMSxjO7L6U47rBvdjoEynzHZU+jaK7Kw5w==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=ericsson.com; dmarc=pass action=none header.from=ericsson.com; dkim=pass header.d=ericsson.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ericsson.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=2r+Ioh7XornmHKSSWpaWo3gUqFuArPXItBcKbOXRqKY=; b=qnXdH33Uk7cCDKTINvEj6CEV3QU6ZGlzwxTwD7xTU7LK3DTkflhqfLb7eunX/FP5i+gHQwo0TU8Pb6yPPydRdWcCBEO9NabCEl3Xcl+0O99XT3Zm5fRjbO/kiIegSn377MLDQBI13ibQtoe1lD31HSQuVXdLu34OwvtvkgLycTs=
Received: from DB7PR07MB4011.eurprd07.prod.outlook.com (52.134.97.155) by DB7PR07MB5452.eurprd07.prod.outlook.com (20.178.45.210) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.2900.12; Wed, 8 Apr 2020 12:06:26 +0000
Received: from DB7PR07MB4011.eurprd07.prod.outlook.com ([fe80::a07e:3b6:fa05:3b37]) by DB7PR07MB4011.eurprd07.prod.outlook.com ([fe80::a07e:3b6:fa05:3b37%4]) with mapi id 15.20.2900.012; Wed, 8 Apr 2020 12:06:26 +0000
From: Balázs Lengyel <balazs.lengyel@ericsson.com>
To: Kent Watsen <kent+ietf@watsen.net>, "netmod@ietf.org" <netmod@ietf.org>
Thread-Topic: [netmod] Shepherd review on draft-ietf-netmod-yang-instance-file-format-10
Thread-Index: AQHWBsiHw0i2pb8NhUW3/SG15kFU86hh7+OAgAPCO/A=
Date: Wed, 08 Apr 2020 12:06:25 +0000
Message-ID: <DB7PR07MB40110143FEDD70AD8C9C22EEF0C00@DB7PR07MB4011.eurprd07.prod.outlook.com>
References: <010001712ce4c5fe-04a059c3-ced3-4e6d-8389-5dd7c1257ac2-000000@email.amazonses.com> <010001712e483a1b-204d92e3-7046-46fb-b6b8-13d8ad4cb9ff-000000@email.amazonses.com>
In-Reply-To: <010001712e483a1b-204d92e3-7046-46fb-b6b8-13d8ad4cb9ff-000000@email.amazonses.com>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach: yes
X-MS-TNEF-Correlator:
authentication-results: spf=none (sender IP is ) smtp.mailfrom=balazs.lengyel@ericsson.com;
x-originating-ip: [80.98.254.17]
x-ms-publictraffictype: Email
x-ms-office365-filtering-correlation-id: 779fcd29-b823-49e3-6671-08d7dbb54346
x-ms-traffictypediagnostic: DB7PR07MB5452:
x-microsoft-antispam-prvs: <DB7PR07MB5452D3849C8D2A63BD261467F0C00@DB7PR07MB5452.eurprd07.prod.outlook.com>
x-ms-oob-tlc-oobclassifiers: OLM:8273;
x-forefront-prvs: 0367A50BB1
x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:DB7PR07MB4011.eurprd07.prod.outlook.com; PTR:; CAT:NONE; SFTY:; SFS:(10009020)(4636009)(136003)(346002)(376002)(396003)(366004)(39860400002)(30864003)(186003)(85202003)(55016002)(26005)(71200400001)(966005)(2906002)(99936003)(66946007)(33656002)(86362001)(66446008)(66476007)(52536014)(81156014)(8936002)(64756008)(66616009)(85182001)(8676002)(5660300002)(66556008)(76116006)(7696005)(110136005)(316002)(53546011)(478600001)(6506007)(81166007)(4326008)(9686003)(66574012); DIR:OUT; SFP:1101;
received-spf: None (protection.outlook.com: ericsson.com does not designate permitted sender hosts)
x-ms-exchange-senderadcheck: 1
x-microsoft-antispam: BCL:0;
x-microsoft-antispam-message-info: 9ZwrDbIvXc+4pXZBF94o0XkkS6ERy4ySIc1Cb4C1yx7iiiQ3sZZKLq4AWaksw5PMY/a1N6NBbhbDO2TjM6pvWbEF6P2ufKZkZl2BgNmQ5hrnBxRWebBMC8ks9+JHd2dadUuzzqYZsmkWuvSKaQkgQuadz2s1utAJIm/WZHFJxQYyC/DD8BXzeHYuBKFNgYctDcladvL+9ydiGJ2+Mup6rA1mbj7FSF/P/AxaWT2P0t93J+OYvmOuvXK5E5jpttUFSZBJy0iF74ySdVR801JFM4CSHhcZHOXjiQOnAWB8aBLh7bZze535s5esn17DqYZtHFbZz7DzlsXsYO/GFnkq568w3FFHVQAuuAwygvUhDYnzVy4Gu/hhRRsaAIGFv5STn/ylhlC6Xs5LogmVJi8f2EnGopn6EfdSaKQ/X+gJYFK36VdsHJW9nwKc4a2A9Pa6wvW0akkIBvX+q31HLgXrjNSbkqEDanL3zdOMcVf6E1m9gxvnOKuzSCK6SfKSBPqQ0LVADDkLFqpefO3M710I4g==
x-ms-exchange-antispam-messagedata: O3k83mb9l10vnX4JmvdqEBAIjeTZMdWI+7MFaiDbBv0sYpqpV/mPudHvEKbBLvcKjp56jgLdmEmCqpuFJvhk+pEILch8BvEN9SWAeR8htjtfgJwqfM/sF2KDE/2yBrUAGIej3QaSQRUSrp/cX1qbiw==
x-ms-exchange-transport-forked: True
Content-Type: multipart/signed; protocol="application/x-pkcs7-signature"; micalg="SHA1"; boundary="----=_NextPart_000_0299_01D60DAE.E3228810"
MIME-Version: 1.0
X-OriginatorOrg: ericsson.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 779fcd29-b823-49e3-6671-08d7dbb54346
X-MS-Exchange-CrossTenant-originalarrivaltime: 08 Apr 2020 12:06:25.9685 (UTC)
X-MS-Exchange-CrossTenant-fromentityheader: Hosted
X-MS-Exchange-CrossTenant-id: 92e84ceb-fbfd-47ab-be52-080c6b87953f
X-MS-Exchange-CrossTenant-mailboxtype: HOSTED
X-MS-Exchange-CrossTenant-userprincipalname: T6dh9LdSrKqqphJ98mq+ZsKZt9j6rFinJgR9F76dYfrPglCZ+HjMdaIKEo4ovhLjhH6n68T3vpqd8o5z4Th4hh575V/11DN7jaA4eJq3wIs=
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB7PR07MB5452
Archived-At: <https://mailarchive.ietf.org/arch/msg/netmod/VcBmGyRfSrl3w-6slVo1hYOX_Y0>
Subject: Re: [netmod] Shepherd review on draft-ietf-netmod-yang-instance-file-format-10
X-BeenThere: netmod@ietf.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: NETMOD WG list <netmod.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/netmod>, <mailto:netmod-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/netmod/>
List-Post: <mailto:netmod@ietf.org>
List-Help: <mailto:netmod-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/netmod>, <mailto:netmod-request@ietf.org?subject=subscribe>
X-List-Received-Date: Wed, 08 Apr 2020 12:06:31 -0000

Hello Kent,
Thanks for the review. See answers below.
I tried to address all you comments, sorry if I missed something. 
I updated the draft and uploaded a -11 version. Please check/advance it.

One question I could not settle: XML2RFC does not accept
      <?rfc include='reference.I-D.netmod-yang-module-versioning'?>      
Only
      <?rfc include='reference.I-D.verdt-netmod-yang-module-versioning'?>      
Why ? Please help.
Regards Balazs

-----Original Message-----
From: netmod <netmod-bounces@ietf.org> On Behalf Of Kent Watsen
Sent: 2020. március 31., kedd 3:50
To: netmod@ietf.org
Subject: Re: [netmod] Shepherd review on draft-ietf-netmod-yang-instance-file-format-10

[UPDATE: I just realized that I prematurely stopped the review after the YANG module.  Picking up where I left off…]


Structural Issues:

 - S5 contains an mix of important and unimportant information.   I think that the most important thing to state that the module defines an offline format that MAY contain security sensitive information, and thus safe handling is advised.  Maybe also say something about because the YANG module only defines a “structure”,  the Security Considerations doesn’t follow the template specified in https://tools.ietf.org/html/rfc8407#section-3.7.1).  For instance: s/is designed as a wrapper specifying a format and a metadata header for YANG instance data defined by the content-schema/specifies an offline format/
BALAZS: Most of text was required to be put there by earlier reviewers (Mostly Juergen and Acee Lindem) and sent to the mailing list.
I added that we do not follow the security template for YANG models.
  - S6.1. the full registration is not inside the <figure>.  (How could happen?)
BALAZS: Corrected
  - S8.1: I-D.ietf-netmod-yang-data-ext should be listed last, as the number it will be the greater than any other...
BALAZS: The order of references is decided by Xml2Rfc. In the draft-..xml it is the last.
  - S8.1: RFC8340 is Informative
BALAZS: OK
  - S8.1: agreed that RFC8525 is Normative, but the only place it it referenced is in a non-normative section…please add a ref to it from a normative section.
BALAZS: It is referenced from the YANG module which is normative.
  - S8.2: same comment as before re: floating the I-D refs to the end…
BALAZS: The order of references is decided by Xml2Rfc. In the draft-..xml it is the last.
  - Appendix C: remove the unnecessary “C.1” section.
BALAZS: OK

Editorial Issues:

  - Appendix B:
     - s/For instance data/Instance data/
BALAZS: Sorry, that would make the sentence incorrect.
     - “...to avoid are listed.” - listed where?  Section reference?
BALAZS: In the next list in the same chapter. Added "below".
     - In P2, how is the 2nd sentence connected to the 1st?
BALAZS: Separated them into 2 paragraphs. Instance data can be produced automatically or by some design activity. I was told by a previous reviewer that I should provide these guidelines only for the latter. However the guidelines are valid and important as proven by experience.
     - s/may lead to problems/may lead to the following problems:/?
BALAZS: OK
  - Appendix C:
      - Don’t put “Non-Normative” into the Section title (move to 1st sentence of section) 
BALAZS: OK, changed (earlier it was requested to have it in the title.)
      - s/We present/This section presents/
      - s/use cases were YANG/use cases where YANG/
      - Actually, this whole sentence is meaningless
BALAZS: removed  

I gave up reviewing Section C at C.1.1, since it’s non-normative.  Honestly, I'd remove the entire section but, if you want to keep it, I suggest reviewing it for issues…


Kent // shepherd



> On Mar 30, 2020, at 3:22 PM, Kent Watsen <kent+ietf@watsen.net> wrote:
> 
> 
> As part of the Shepherd writeup, I read the entire draft and found the following issues, which I’d like to see resolved before progressing the document.  Most of these issues should have been caught be the WG and/or Editors...
> 
> 
> Logical Issues:
> 
>  - S3, P8 defines MUSTs inside a SHOULD, a logical contradiction.
BALAZS: Changed to SHOULD
>  - In S3, P8 (the P beginning w/ "The name of”), text fails to indicate what SHOULD be done if both “revision” and “timestamp” are present?
BALAZS: IMHO the preference depends on the use case, so a general guidance cannot be given.
>  - the syntax grammar used in S3, P8 doesn’t make sense - use ABNF?
BALAZS: 
>  - In S3, P8: “the semicolons and the decimal point, if present, shall be replaced by underscores” - why are they not escaped?
BALAZS: This is a file name. Escaping in file names does not always work (depending on the filesystem and tools used). This is more simple and understandable
>  - Example 1 seems semantically invalid?  e.g., "ietf-netconf-monitoring” is in "content-data" though not in "modules-state”.  Also, "module-set-id” is missing 
BALAZS: OK, added. 
The original example is valid, just illogical. It follows the YANG modules defined in the content schema; it is allowed to have partial data sets, so some modules may be omitted from modules-state. However you are right this is illogical.
module-set-id does not need to be there. Partial data sets are allowed.
>  - It is unclear how the "inline-content-schema” feature could ever be used.  I.e., there are no protocol-accessible nodes in the module…
BALAZS: The system can declare in supported/not-supported in design documentation. E.g. in UC2, Preloading Default Configuration the designer preparing instance data, can decide to use or not use the inline-content-schema based on this.
>  - "leaf-list inline-module" is "min-elements 1” and "ordered-by user”, but "leaf-list module” has neither (though it may be that ordering is irrelevant for simple-inline).
BALAZS: ordered-by  removed. It doesn't really mean anything. In this case there is no chance of the system reordering a list a CLI/Netconf/Restconf client provided.
Min-elements is not needed for simplified-inline as the case will only be selected if there is at least one "module" leaf-list entry. It is needed for inline because otherwise the case could contain an " inline-schema" anydata section and no "inline-module" entries. That would not be usable.
>  - "leaf-list inline-module” has "ordered-by user”, what does that mean in the context of, e.g., UC1?
BALAZS: OK. Removed. In this case there is no chance of the system reordering a list a CLI/Netconf/Restconf client provided.
>  - P4 in the “description” statement on line 134 in the YANG module makes no sense (grammatically incorrect).  Try breaking into multiple sentences.
BALAZS: OK, Reworded.
>  - The last two sentences of the “description” statement on line 207 in the YANG module contradict each other.
BALAZS: Why ? I don't see the contradiction. If you know a single datastore specify it. If not omit the leaf. If the leaf is omitted, the situation is unknown.
> 
> 
> Structural issues:
> 
>  - Why isn’t the “Introduction” Section ‘1’ as is common in RFCs?
BALAZS: OK, rearranged sections
>  - the list in S3, P4 is missing symbols.
BALAZS: OK, added
>  - the two lists in S3, P8 should be indented, or remove the leading symbol
BALAZS: OK removed symbols
>  - The list under "Metadata MUST include:” is missing symbols.
BALAZS: OK, added
>  - The list under "Metadata SHOULD include:” is not indented.
BALAZS: OK, added
>  - 3.2, Example 1: move the comment under "content-data” under "modules-state”.  Replace said comment with a new comment that says something like “This content-data only contains the data identified by the ‘content-schema’ node, despite the ‘module-state’ node indicating that the server implements other modules
BALAZS: Removed comment, it is not needed
>  - The three examples should be <section> of their own (e.g., 3.2.x)
BALAZS: OK
>  - The “inline” choice node is generally confusing.  I can’t tell if it’s missing container called “inline” or if the two descendant nodes are poorly named.  In either case, it would be best to try to make it more readable.
BALAZS: Yes it is complicated. Some members of Netmod (I think Rob W.) Asked for a full, powerful, flexible way of documenting the content schema. In some cases it is needed.
> 
> 
> Editorial issues:
> 
>  - s/The term Server is/The term “server" is/
BALAZS: OK
>  - s/not available/unavailable/
BALAZS: OK
>  - s/Data is often needed already at/Data is often needed at/
BALAZS: OK
>  - s/needed by groups that do not have a live running server available/needed when a live running server is unavailable/.
BALAZS: OK
>  - s/ietf-yang- instance-data/"ietf-yang-instance-data”/
BALAZS: OK
>  - remove the word “we” throughout: s/we/this document/?
BALAZS: OK
>  - remove P3’s forward-reference to S3, P9?
BALAZS:  Sorry, I did not find this. Could you specify the text around it
>  - s/is actually implemented/is implemented/
BALAZS: OK
>  - s/e.g., UC5 documenting diagnostic data/(e.g., UC5 [Section 2])/
BALAZS: I prefer to use the short name of the use case instead of the reference. IMHO it provides information instantly without a look-up. Is that a problem?
>  - s/and state data set/and state data/
BALAZS: OK
>  - s/Config=true/configuration (“config true”)/
BALAZS: OK 
>  - s/Config=false/operational state data (“config false"/
BALAZS: OK 
>  - OLD: mandatory, min-elements, require-instance=true, must and when
>    NEW: “mandatory", "min-elements", "require-instance true", “ ust”, and “when”
BALAZS: OK
>  - OLD: If revision information inside the data set is present
>    NEW: If “revision" information is present inside the data set:
BALAZS: OK
>  - OLD: If the leaf "name" is present in the instance data header, this MUST be used.
>    NEW: If the leaf "name" is present in the instance data header, its value should be used for the "instance-data-set-name”.
BALAZS: OK 
>  - s/items MAY also be used/items MAY be used/
BALAZS: I would to keep "also" to indicated that they can be used as additional possibilities.
>  - s/Metadata MUST include:/\nMetadata MUST include:/
BALAZS: OK
>  - s/Content schema specification/Content schema specification (i.e., the "content-schema” node)/
BALAZS: OK
>  - s/Do not include the content-schema,/Do not include the "content-schema” node”;/
BALAZS: OK
>  - s/for "UC2 Preloading Data”/for UC2 [Section 2],/
BALAZS: I prefer to use the short name of the use case instead of the reference. IMHO it provides information instantly without a look-up. Is that a problem?
>  - S3.1.1 P2 doesn’t makes sense to me (esp. the verdt ref, which likely should be removed or better explained)
BALAZS: This was explicitly requested by 2 members of the verdt team. I tried to amend the text to make it more understandable, however IMHO we should not try to explain the usage of revision label here. Also this is just an example.
>  - s/The same-schema-as-file leaf/The "same-schema-as-file" leaf/
BALAZS: OK
>  - s/In Use Case 6/in UC6 [Section 2]/
BALAZS: OK
>  - S3.2 P1: s/examples use/example uses/ and s/for better formatting//.   
BALAZS: OK. Originally  I intended to use it in multiple places, but it was unneeded.
>  - s/is based on "UC1, Documenting Server Capabilities”/exemplifies UC1 [Section 2]/
BALAZS: Exemplifying is an uncommon word I find ugly. Is the current text hard to understand or misleading?  
I changed it to " The following example illustrates ..." I hope that's OK.
>  - s/(a shortened)/a/g
BALAZS: OK
>  - For Ex1: s/uses the inline method/uses the “inline" method/
BALAZS: OK
>  - s/- Use case 1, Documenting server capabilities/Exemplifying UC1/
BALAZS: Exemplifying is an uncommon word I find ugly. Is the current text hard to understand or misleading?  
IMHO the string stating  the name of the use case is more helpful then a reference, that needs to be looked up.
I changed it to " The following example illustrates ..." I hope that's OK.
>  - s/is based on "UC2, Preloading Default Configuration”/exemplifies UC2 [Section 2]/
BALAZS: Exemplifying is an uncommon word I find ugly. Is the current text hard to understand or misleading?  
I changed it to " The following example illustrates ..." I hope that's OK.
>  - For Ex2: s/uses the inline method/uses the "simplified-inline" method/
BALAZS: OK
>  - s/- Use case 2, Preloading access control data/Exemplifying UC2/
BALAZS: Exemplifying is an uncommon word I find ugly. Is the current text hard to understand or misleading?  
IMHO the string stating  the name of the use case is more helpful then a reference, that needs to be looked up
.>  - s/is based on UC5 Storing diagnostics data/exemplifies UC5 [Section 2]/
BALAZS: OK. but I changed it to: exemplifies UC5, Storing diagnostics data. IMHO the string stating  the name of the use case is more helpful then a reference, that needs to be looked up.
I changed it to " The following example illustrates "UC2, Preloading ..." I hope that's OK.
>  - s/statistics about NETCONF/statistics about the NETCONF server/
BAALZS: OK
>  - s/- UC5 Storing diagnostics data/Exemplifying UC5/
BALAZS: Exemplifying is an uncommon word I find ugly. Is the current text hard to understand or misleading?  
IMHO the string stating  the name of the use case is more helpful then a reference, that needs to be looked up.>
I changed it to " The following example illustrates ..." I hope that's OK.
> 
> Editorial issues inside the YANG module:
>  - "description" statement on line 74: rephrase to make more sense.
BALAZS: Other people thought it was OK. Any specific suggestion?
>  - :description" statement on line 92: so confusing.  Just write “The ‘revision' of the 'ietf-yang-instance-data’ module used to encode this 'instance-data-set’.”
BALAZS: OK
>  - “description" statement on line 100: s/content schema/schema (i.e., YANG modules)/?
BALAZS: The term "content-schema" is defined in the terminology section.  It defines  
>  - “type string” statement on lines 109 and 131 are missing a “pattern" statement.
BALAZS: OK, Defined it as a typedef.
>  - “description" statement on line 110: should this be mostly the same as the description statement of line 134, sans the bit regarding features, deviations, etc.?
BALAZS: Paragraphs 2,3 are the same. Paragraphs 1, 4,5,6 are really different. Inline is not just the same list with features, it involves one more level of indirection in defining the content schema.  
>  - line 152: s/ietf-yang-library@2019-01-04/revision "2019-01-04” of the "ietf-yang-library” module/?
BALAZS: OK
>  - P2 in the “description" statements on lines 220 and 249: s/For instance data sets/Instance data sets/
BALAZS: The sentence will not make sense unless I change the comma at the end of sentence to a colon.
>  - “description" statement on line 256: s/Modules/modules/ and s/content-schema-spec/‘content-schema’/
BALAZS: OK
> 
> 
> YANG module formatting issues:
> 
>  - On line 19: s/  reference/reference/
BALAZS: OK
>  - On line 21: s/}/  }/
BALAZS: OK
>  - On line 235: s/pattern/  pattern/ 
BALAZS: OK
> 
> Kent // shepherd