Re: [netmod] Y34: remove anyxml

Martin Bjorklund <mbj@tail-f.com> Thu, 20 November 2014 08:44 UTC

Return-Path: <mbj@tail-f.com>
X-Original-To: netmod@ietfa.amsl.com
Delivered-To: netmod@ietfa.amsl.com
Received: from localhost (ietfa.amsl.com [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id B58731A009E for <netmod@ietfa.amsl.com>; Thu, 20 Nov 2014 00:44:35 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.495
X-Spam-Level:
X-Spam-Status: No, score=-2.495 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, RP_MATCHES_RCVD=-0.594, SPF_PASS=-0.001] autolearn=ham
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 puoRS5gU_Bbm for <netmod@ietfa.amsl.com>; Thu, 20 Nov 2014 00:44:33 -0800 (PST)
Received: from mail.tail-f.com (mail.tail-f.com [83.241.162.140]) by ietfa.amsl.com (Postfix) with ESMTP id 66DAC1A00FA for <netmod@ietf.org>; Thu, 20 Nov 2014 00:44:33 -0800 (PST)
Received: from localhost (173-38-208-170.cisco.com [173.38.208.170]) by mail.tail-f.com (Postfix) with ESMTPSA id 6E8171280098; Thu, 20 Nov 2014 09:44:32 +0100 (CET)
Date: Thu, 20 Nov 2014 09:44:31 +0100
Message-Id: <20141120.094431.664236597197962863.mbj@tail-f.com>
To: phil@juniper.net
From: Martin Bjorklund <mbj@tail-f.com>
In-Reply-To: <201411192231.sAJMVXtm093081@idle.juniper.net>
References: <20141119.230042.326760756273955336.mbj@tail-f.com> <201411192231.sAJMVXtm093081@idle.juniper.net>
X-Mailer: Mew version 6.5 on Emacs 23.4 / Mule 6.0 (HANACHIRUSATO)
Mime-Version: 1.0
Content-Type: Text/Plain; charset="us-ascii"
Content-Transfer-Encoding: 7bit
Archived-At: http://mailarchive.ietf.org/arch/msg/netmod/fpRBnPwyBqaZXvgcZmE1A92zay8
Cc: netmod@ietf.org
Subject: Re: [netmod] Y34: remove anyxml
X-BeenThere: netmod@ietf.org
X-Mailman-Version: 2.1.15
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: <http://www.ietf.org/mail-archive/web/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, 20 Nov 2014 08:44:35 -0000

Phil Shafer <phil@juniper.net> wrote:
> Martin Bjorklund writes:
> >Fortunately, you *can* store the string, and all prefixes in effect,
> >and in the get-config return:
> >
> >   <y xmlns:p0="http://example.com"
> >      xmlns:p1="http://example.com">
> >     ... stored string goes here ...
> >   </y>
> 
> If we were smart, we would have been more pedantic about the XML
> being stand-alone.

Yes.  But this goes back to the original NETCONF spec.  It would have
been nice if the different protoocl layers in NETCONF were constrained
to being stand-alone:

  <rpc ...>
    [stand-alone operation here]
  </rpc>

  <rpc ...>
    <edit-config ...>
      <config ...>
         [stand-alone content here]
      </config>
    </edit-config>
  </rpc>

Since we use anyxml to model things like edit-config content, we
couldn't put the self-contained restriction on anyxml.

> What's meant by this text (from XML Mapping rules in anyxml)?
> 
>    Note that any prefixes used in the encoding are local to each instance
>    encoding.  This means that the same XML may be encoded differently by
>    different implementations.

It means you cannot rely on the prefixes being the same after
roundtripping.  For example, you might set:

   <foo xmlns="urn:foo">42</foo>

and get back

   <x:foo xmlns:x="urn:foo">42</x:foo>


/martin