Re: [netmod] WGLC on node-tags-09

Qin Wu <bill.wu@huawei.com> Wed, 05 July 2023 12:39 UTC

Return-Path: <bill.wu@huawei.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 66134C151555 for <netmod@ietfa.amsl.com>; Wed, 5 Jul 2023 05:39:50 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -6.9
X-Spam-Level:
X-Spam-Status: No, score=-6.9 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, RCVD_IN_DNSWL_HI=-5, RCVD_IN_MSPIKE_H2=-0.001, RCVD_IN_ZEN_BLOCKED_OPENDNS=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001] autolearn=ham autolearn_force=no
Received: from mail.ietf.org ([50.223.129.194]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id DG-7bI1p1NV8 for <netmod@ietfa.amsl.com>; Wed, 5 Jul 2023 05:39:46 -0700 (PDT)
Received: from frasgout.his.huawei.com (frasgout.his.huawei.com [185.176.79.56]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id EAE55C151095 for <netmod@ietf.org>; Wed, 5 Jul 2023 05:39:45 -0700 (PDT)
Received: from lhrpeml100004.china.huawei.com (unknown [172.18.147.201]) by frasgout.his.huawei.com (SkyGuard) with ESMTP id 4Qwzhf1tFyz6J7LF for <netmod@ietf.org>; Wed, 5 Jul 2023 20:37:54 +0800 (CST)
Received: from canpemm500007.china.huawei.com (7.192.104.62) by lhrpeml100004.china.huawei.com (7.191.162.219) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Wed, 5 Jul 2023 13:39:42 +0100
Received: from canpemm500005.china.huawei.com (7.192.104.229) by canpemm500007.china.huawei.com (7.192.104.62) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Wed, 5 Jul 2023 20:39:40 +0800
Received: from canpemm500005.china.huawei.com ([7.192.104.229]) by canpemm500005.china.huawei.com ([7.192.104.229]) with mapi id 15.01.2507.027; Wed, 5 Jul 2023 20:39:40 +0800
From: Qin Wu <bill.wu@huawei.com>
To: "adrian@olddog.co.uk" <adrian@olddog.co.uk>, 'Kent Watsen' <kent+ietf@watsen.net>, "netmod@ietf.org" <netmod@ietf.org>
Thread-Topic: [netmod] WGLC on node-tags-09
Thread-Index: AdmvPbpw33+PWZl5TDuP5bJp93F37A==
Date: Wed, 05 Jul 2023 12:39:40 +0000
Message-ID: <5850e9086f4548c9b41d5d5024e85881@huawei.com>
Accept-Language: zh-CN, en-US
Content-Language: zh-CN
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
x-originating-ip: [10.136.118.68]
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
MIME-Version: 1.0
X-CFilter-Loop: Reflected
Archived-At: <https://mailarchive.ietf.org/arch/msg/netmod/0po4w1dOqY1J5RhbxTknVA7GkUQ>
Subject: Re: [netmod] WGLC on node-tags-09
X-BeenThere: netmod@ietf.org
X-Mailman-Version: 2.1.39
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, 05 Jul 2023 12:39:50 -0000

--

Apart from being able to deduce it from Section 4.3, it is not absolutely clear from Section 4 that the colon has special meaning. That is that all prefixes now and in the future are delimited by the colon.
(This is important because, absent a colon, there is no way to distinguish an non-colon user prefix from any registered prefix.) This means that:
- Future definitions of tag values might not realise that they are
  supposed to use a colon - you should clarify that all prefixes end
  with a colon noting that the colon is not a separator but is part of
  the prefix. This does beg the question about separators in the
  prefixes and in the tag values
  - Prefixes that contain colons will cause confusion and so you should
    probably make it a 'MUST NOT'
  - Tag values (after the prefix) that contain colons may cause 
    confusion so you should probably make this a RECOMMENDation, 
    although 4.2 suggests the use of colons as further separators.

An alternative to all this is that you define the colon as the separator, and change the tag names to not include colons.

But 9.1 makes it pretty clear that you expect all registered prefixes to end with a colon.

[Qin Wu] That's really a good comment, so Tag = Tag prefix+ Tag Value, Colon is part of Tag prefix if you expect all registered prefix to end with a colon.
The question is whether we see colon as separator or portion of the tag prefix.
Do we need to make tag prefix is mandatory to have for a tag?

[AF] I don't really mind.
The closest to what you have is...
- Tag prefix is not mandatory
- All tag prefixes MUST end with a colon
- Colons MUST NOT be used within a prefix
- Colons SHOULD NOT be used in a tag value If you want to, you could specify a character to be used as a separator within prefixes and values (such as a period).

[Qin Wu-1] That's a good summary. I will incorporate some of these principles into the updated draft. In addition, I think Colons can be used within a tag value, "entno:vendor-defined-classifier" is one of examples used for vendor tag.

[AF2] Sounds good. 
The colon in a tag value is allowed by "SHOULD NOT", but I wanted to avoid the confusion between a tag value that does not use a prefix but contains a colon, and a tag that has a prefix and a value.
For example, ietf:foo should be a tag comprising the prefix ietf: and the value foo. But a non-prefixed tag could legitimately be ietf:foo. 
That example is a bit silly, but consider that someone makes a non-prefix tag iab:bah and deploys the code. Tomorrow the IETF decides that there should be a registered prefix iab: Now we have collisions.

[QW2]Your clarification makes sense, I think what we should first avoid is 3 prefix we defined in this draft appear in the tag value, in addition, one rule we have already added is 
" this document is purposefully not specifying any structure on (i.e., restricting) the tag values.", do we need to add further restriction to limit "iab:" to be part of tag value.
Another choice is to we set rule that it is mandatory to have prefix for each data node tag. Is this too restrictive?