Re: [netmod] Does defining a feature require the module be implemented?

Andy Bierman <andy@yumaworks.com> Tue, 17 May 2022 18:18 UTC

Return-Path: <andy@yumaworks.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 40540C15E40A for <netmod@ietfa.amsl.com>; Tue, 17 May 2022 11:18:50 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.098
X-Spam-Level:
X-Spam-Status: No, score=-2.098 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, HTML_MESSAGE=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, URIBL_BLOCKED=0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=yumaworks.com
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 PlGmT0B1G96l for <netmod@ietfa.amsl.com>; Tue, 17 May 2022 11:18:46 -0700 (PDT)
Received: from mail-yb1-xb2d.google.com (mail-yb1-xb2d.google.com [IPv6:2607:f8b0:4864:20::b2d]) (using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 271D4C14F693 for <netmod@ietf.org>; Tue, 17 May 2022 11:18:45 -0700 (PDT)
Received: by mail-yb1-xb2d.google.com with SMTP id v71so8750899ybi.4 for <netmod@ietf.org>; Tue, 17 May 2022 11:18:45 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yumaworks.com; s=google; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=wVQNAjy1fFfCfffKo8b14+dVZUPBSHgygbViZHLXHXc=; b=FducbAe+zjuImPEMAUH1GRl8BHWdQahlhEAUI33o9ZQ8ks+EEnu3AtKK2Dz+RjbWLq vFCmShe5v+VFJXNfWnnRJ9RCDnoQT0SQn6w6y0+ooQ12/Vg7YvAeCCl9ZQxs0MAG1oOP qFmy5mdw7SpfbRdhvcHkro9rmfMYKSrt8mewCPLxXTD4vEMrGXsbZcoZngiYPRZCCUt/ RfQZIrZUAxYWvYquZ0MqnxRST8idqLPQqnEyWTMRT4tYIYwYdWTPbwVgbMl2VHUPIDmn d70Rpc7xI/41yomPbe/wDkU9QWrcreMJiCj5V/AFEDQxgCKFQWvGP5y2oy7zfg8fEI/R kTOw==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=wVQNAjy1fFfCfffKo8b14+dVZUPBSHgygbViZHLXHXc=; b=sAHRU71vPtLVn5wv689TtWZl14Hk1Pe+ckK7NKfUTxVV2iXYgH+3pLDAdbcQ2UbZfQ baQnSqyY+em00nLhH5b6k+jpwSCNk/AOrMtZzljr/nwP65j74Ohm0lltroN+1J10Ycdt W1hx3pkc1WvVYcZw92dlF4exSUi60EkCIQKmJYDpESrIYE4vbp5cbdUh/ih5toLmiXVq YudEUDKCAChddPGHZZ6wzSQdA5oXgAFaFoEKNHP8Zyc4lM545z+r+bYak0fFTEkXz+Ta APIHdCTy65xr0LABJm6UhygRqSSw3DbwWmwDnVnjipQ5QLjV1iEZi9Z/6HeW/Lsy9H7b Nz9g==
X-Gm-Message-State: AOAM532VAFcR54o7TZmuNlkxXY/3w4HqeyhJALC77AHMtzCbv5noT/G9 AuIzRRWDndNJOTyjunFf3KzZblwGSAcGaQPuFLuuyQ==
X-Google-Smtp-Source: ABdhPJx9PHjgTJi8k7870tjTc6LZ+xjT1uvYmx1aotGXlfFWOf98+fDLfGfwlvaHnGBx3RP0ckH39ctVs1SAPqa7t7M=
X-Received: by 2002:a25:48f:0:b0:64c:7103:81ab with SMTP id 137-20020a25048f000000b0064c710381abmr18672216ybe.445.1652811524676; Tue, 17 May 2022 11:18:44 -0700 (PDT)
MIME-Version: 1.0
References: <01000180a9eb37cb-85b9c576-c1eb-425a-b42c-b3cabe548fbb-000000@email.amazonses.com> <9ba4be2a-a9f4-8940-d470-efa385a2cb52@cesnet.cz> <01000180bdf26740-3d7da48c-9c93-4123-9298-161a294988b1-000000@email.amazonses.com> <4754acfc-8fa0-ad2b-52ad-36302c5aada9@hq.sk> <CABCOCHR29ZO3t-JzY_sLb-z-CC-CTMTDxHZq_B4JwgnFyJOorQ@mail.gmail.com> <01000180d330cb1d-a1fe63b1-513b-4cba-9c0d-3ea70bf1a0e6-000000@email.amazonses.com>
In-Reply-To: <01000180d330cb1d-a1fe63b1-513b-4cba-9c0d-3ea70bf1a0e6-000000@email.amazonses.com>
From: Andy Bierman <andy@yumaworks.com>
Date: Tue, 17 May 2022 11:18:34 -0700
Message-ID: <CABCOCHRMpXgZcdzE2TPinUw=JmiEM9QqOpoZPtY0hbGe5Y6jSw@mail.gmail.com>
To: Kent Watsen <kent+ietf@watsen.net>
Cc: Robert Varga <nite@hq.sk>, Michal Vasko <mvasko@cesnet.cz>, "netmod@ietf.org" <netmod@ietf.org>
Content-Type: multipart/alternative; boundary="000000000000cf33ea05df392b32"
Archived-At: <https://mailarchive.ietf.org/arch/msg/netmod/jFnPBvfEUBn4EFGgCuz3vINp4fs>
Subject: Re: [netmod] Does defining a feature require the module be implemented?
X-BeenThere: netmod@ietf.org
X-Mailman-Version: 2.1.34
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: Tue, 17 May 2022 18:18:50 -0000

On Tue, May 17, 2022 at 11:03 AM Kent Watsen <kent+ietf@watsen.net> wrote:

> Hi Andy,
>
> Thanks for your response, but I'm having trouble parsing it.  At first I
> thought it was just me, but I asked someone else and they said the same.
> Can you state either:
>
> 1) a module MUST be implemented in order for its features to be defined.
>

This is true because the design of the /yang-library subtree [RFC8525] does
not allow features
to be listed in the import-only-module list.



2) feature-defintion and module-implementation are orthogonal.
>
>
The term "protocol-accessible" does not cover modules like iana-crypt-hash,
[RFC7317] which has 1 typedef and 3 features defined in it.

Is there a normative definition you can point to, or are we working
> backwards from YANG Library (but note that the two versions of YANG Library
> enabled it differently).
>
> Thanks,
> Kent
>
>
>
Andy


>
> On May 13, 2022, at 12:04 PM, Andy Bierman <andy@yumaworks.com> wrote:
>
>
>
> On Fri, May 13, 2022 at 8:49 AM Robert Varga <nite@hq.sk> wrote:
>
>> On 13/05/2022 17:03, Kent Watsen wrote:
>> > True, the current YANG Library structure allows features to be declared
>> > only for implemented modules, but I'm unsure how intentional that was.
>> >
>> > We always talk about how a module needs to be "implemented" in order
>> for
>> > its Identities to be defined, but we don't ever talk about the same
>> > being true for Features.
>> >
>> > It seems that, if this is the case, there should be a note somewhere
>> > about features used in "grouping" statements and hence the
>> > exporting-module must be "implemented" for the grouping to be used as
>> > intended.
>> >
>> > These sections from RFC 8407 don't say anything about it:
>> >
>> >   * 4.13. Reusable Groupings
>> >     <https://datatracker.ietf.org/doc/html/rfc8407#section-4.13>
>> >   * 4.17.  Feature Definitions
>> >     <https://datatracker.ietf.org/doc/html/rfc8407#section-4.17>
>>
>> Right, I think we need to first clarify what RFC8525's:
>>
>> >            "An entry in this list indicates that the server imports
>> >             reusable definitions from the specified revision of the
>> >             module but does not implement any protocol-accessible
>> >             objects from this revision.
>>
>> "reusable definition" seems to be an under-defined term. I think the
>> intent is to cover not only groupings, but also typedefs and extensions.
>>
>>
>
> I thought this issue was obvious and already settled with the
> iana-crypt-hash module.
> There are features related to the server implementation of data nodes
> that use the crypt-hash typedef.
>
> We list iana-crypt-hash (or any module that has features) in the
> implemented modules.
> The client needs to know this info and that is the only way to do it.
>
> I think these should also include identities and features -- but that
>> opens up quite a can of worms in terms of what a 'supported feature' is:
>> - is it tied to a particular revision or does it apply to all revisions?
>> - is it a property of imported or (ultimante) importing module?
>>
>> Regards,
>> Robert
>>
>
> Andy
>
>
>> _______________________________________________
>> netmod mailing list
>> netmod@ietf.org
>> https://www.ietf.org/mailman/listinfo/netmod
>>
>
>