Re: [netmod] Use XML namespaces in YANG document examples

Andy Bierman <andy@yumaworks.com> Thu, 03 February 2022 16:04 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 7E9C03A0BD6 for <netmod@ietfa.amsl.com>; Thu, 3 Feb 2022 08:04:35 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.887
X-Spam-Level:
X-Spam-Status: No, score=-1.887 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, HTML_MESSAGE=0.001, SPF_HELO_NONE=0.001, T_SPF_PERMERROR=0.01, URIBL_BLOCKED=0.001] autolearn=unavailable autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=yumaworks-com.20210112.gappssmtp.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 G9pF_BTNcG6W for <netmod@ietfa.amsl.com>; Thu, 3 Feb 2022 08:04:29 -0800 (PST)
Received: from mail-lf1-x12a.google.com (mail-lf1-x12a.google.com [IPv6:2a00:1450:4864:20::12a]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id E010C3A0ED4 for <netmod@ietf.org>; Thu, 3 Feb 2022 08:03:43 -0800 (PST)
Received: by mail-lf1-x12a.google.com with SMTP id i34so7024742lfv.2 for <netmod@ietf.org>; Thu, 03 Feb 2022 08:03:43 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yumaworks-com.20210112.gappssmtp.com; s=20210112; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=Ee7FO5br+agBQT1ivhRlz61Smxxl90aoiIvDrm5pBZc=; b=ub+jBG2WnDRJnMNEtzJtmVCwMMgUTjkKohEMiQK/m5lEOkUQNb5vNIQp33kvG2vGxB i2lufg3O2BFQqOWHav5dUO37eaIclacMcZxxtcPykTI9PpaCmtP+thZoAIhwuptJiaMm V4IFQTcu2Uk6B4Hj/92NcDY7qiRLxmHirQBt1qRLkMiV117WJW2vUcA9/L2X/wJERQVj 0bQ9Z4j8vGXJO1x08a5PR3BLeGmNL6ZxH26mrNyJyLkzTj3rX2CEeMUAs/BoZSVQIyxf rCSmEbuiXB8w0sEaoHDhqGxQ0u90D/BJcUIMstu+HZ/yB8b/V0trP2DIkZylUVpYHNY6 lKug==
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=Ee7FO5br+agBQT1ivhRlz61Smxxl90aoiIvDrm5pBZc=; b=sf+y5OpwpEma8TAZYtYqpBMG63UaG9oi+ivyIE7WaOTffJ4QGQMKb9bFUpazH0Dw9b X+bHQ+0VdmWvQqb4p6DdEgRUL2RwCdR0HweQmJay4ZC9+OCZpf1IerFSfoYSMsgqCeJ4 X9IioynEP67CFtAZfxt9lajOn4PSD0S2WOw3DaOAmv4bTqGjwCUeexqSTBigV2CE5Uxu Vsz3Si7gmZOui+BkXPp4jlexGgM59/gM304v0OxKidRSozhlqNWM55ED5pHpaswE9utE unQeLrmCTOi2AQur9vdZ5Q19jLrCbWbc4SYOFcuHXYtqe4bek0aaROIJhO0GVPe8uNsf w46w==
X-Gm-Message-State: AOAM5300fRJ0FOj7OmJGRx+Vut8SAT0w3PajLWJglhgxvWdAFuDye+Mf hkrtOXJeds63DlPxFrxugpwmJIMLBGr2fYfmaTUAmg==
X-Google-Smtp-Source: ABdhPJzVjim8x9MFmQf030b1aBZEDLz0Hnq6gHPDZTJmtkFNvrXwNDNiSEJpAMjauXL2PEbdQxVAKfMxLSzpjSR8tag=
X-Received: by 2002:a19:760d:: with SMTP id c13mr26523578lff.142.1643904221110; Thu, 03 Feb 2022 08:03:41 -0800 (PST)
MIME-Version: 1.0
References: <B6F5C201-A42B-47AB-9518-886C97EBA931@gmx.com> <AM7PR07MB624865498F51F41EFD26D723A0289@AM7PR07MB6248.eurprd07.prod.outlook.com>
In-Reply-To: <AM7PR07MB624865498F51F41EFD26D723A0289@AM7PR07MB6248.eurprd07.prod.outlook.com>
From: Andy Bierman <andy@yumaworks.com>
Date: Thu, 03 Feb 2022 08:03:30 -0800
Message-ID: <CABCOCHSM0MdXwY5AKkSXvvxDqf_CDX6SamZtMJotrn4R8FQ7Bw@mail.gmail.com>
To: tom petch <ietfc@btconnect.com>
Cc: "ianfarrer@gmx.com" <ianfarrer@gmx.com>, "netmod@ietf.org" <netmod@ietf.org>, "dhc-chairs@ietf.org" <dhc-chairs@ietf.org>, "Eric Vyncke (evyncke)" <evyncke@cisco.com>, Tim Bray <tbray@textuality.com>, "drafts-expert-review@iana.org" <drafts-expert-review@iana.org>
Content-Type: multipart/alternative; boundary="00000000000024fd8d05d71f47ad"
Archived-At: <https://mailarchive.ietf.org/arch/msg/netmod/qPdgQR2mgoNsNJxzJkuqIOMwKUE>
Subject: Re: [netmod] Use XML namespaces in YANG document examples
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: Thu, 03 Feb 2022 16:04:36 -0000

Hi,

I think the text from sec 4 refers to the usage within an application.
The XML instance document is the on-the-wire representation and
the I-D example looks correct.

https://www.w3.org/TR/xml-names/#ns-qualnames


Andy


On Thu, Feb 3, 2022 at 3:53 AM tom petch <ietfc@btconnect.com> wrote:

> From: netmod <netmod-bounces@ietf.org> on behalf of ianfarrer@gmx.com <
> ianfarrer@gmx.com>
> Sent: 03 February 2022 09:37
>
> Hi,
>
> A draft I have been working on (
> https://datatracker.ietf.org/doc/draft-ietf-dhc-dhcpv6-yang/) contains a
> number of XML configuration examples. During the XML expert review, a
> question has been raised about the use of XML namespaces in these examples.
> I’m raising it here as I don’t have the XML knowledge to answer.
>
> <tp>
>
> Ian
>
> This looks like the issue I raised on this list 14jan2022 with a subject
> line of
> XML and prefix
> although I have not checked that the usage is exactly the same; the 'XML
> Expert' comment would appear to be.
>
> Tom Petch
>
> In my example:
>
> <interfaces xmlns="urn:ietf:params:xml:ns:yang:ietf-interfaces"
>
>      xmlns:ianaift="urn:ietf:params:xml:ns:yang:iana-if-type">
>      <interface>
>        <name>eth0</name>
>        <type>ianaift:ethernetCsmacd</type>
>        <description>DHCPv6 Relay Interface</description>
>        <enabled>true</enabled>
>      </interface>
>    </interfaces>
>
> The question is related to the use of the ‘ianaift:’ prefix. This is quite
> commonly use in XML examples in YANG documents (e.g. RFC8344) so I think
> the question is generally applicable.
>
> The specific comments from the expert review are:
>
> -
> For the correct processing of these documents requires that whatever XML
> software is being used makes available to application code the namespace
> prefixes.
>
> Whilst the recommended tools (e.g. yanglint) provides this function, it is
> not an XML best practice. Quoting from the Namespaces in XML, section 4:
> "Note that the prefix functions only as a placeholder for a namespace name.
> Applications SHOULD use the namespace name, not the prefix, in constructing
> names whose scope extends beyond the containing document.”
>
> I think that violating a SHOULD assertion in a W3C standard is a problem.
>
> There is no requirement for XML processors to provide this prefix
> information, and software that (quite legally) doesn't, will not work
> correctly with YANG documents constructed as specified in this I-D.
>
> 1, YANG specifications should note this fact and specify that software
> which is used to process YANG documents MUST provide an interface such that
> applications can retrieve the prefix-namespace mappings.
> 2, For constructs such as <type>ianaift:ethernetCsmacd</type> the
> Internet-Draft should specify that the prefix ("ianaift" in this case) MUST
> be identical to the xmlns namespace prefix representing the namespace name
> urn:ietf:params:xml:ns:yang:iana-if-type
> 3, Alternately, the draft could specify that for the namespace
> urn:ietf:params:xml:ns:yang:iana-if-type, the XML namespace prefix ianaift
> MUST be used. Another XML bad practice because software that generates XML
> programmatically should feel free to generate synthetic prefixes without
> breaking the content, but at least this would solve the problem.
> -
>
> BCP216 (RFC8407 - Guidelines for Authors and Reviewers of Documents
> Containing YANG modules) doesn’t make any mention of how XML namespaces
> should be used, only that example XML/ JSON should be included and that
> these examples need to be validated (pyang and yanglint are mentioned for
> this).
>
> Does this guidance need to be updated to reflect expert review comments
> above?
>
> Thanks,
> Ian
>
>
>
> _______________________________________________
> netmod mailing list
> netmod@ietf.org
> https://www.ietf.org/mailman/listinfo/netmod
>