Subject: Re: [netmod] augment

From: WashamFan <[email-masked]>
Date: Mon, 02 Feb 2009 10:13:06 +0800

Hi,
>  
>  if I understand the new draft -03 correctly, augment is now allowed only
>  at (sub)module top level and inside uses-stmt. However:
>  1. augment remained in the tables of substatements (container, 
>     leaf, ...)
>  2. Sec. 7.15 says: The "augment" statement allows a module or 
> submodule 
>     to add to the schema tree defined in another module or submodule.
>     This omits the uses-augment-stmt case. I think the latter 
>     should really be renamed, so how about "amend"?
>  
>  Question: Can the target node for the top-level augment be inside a
>  grouping in the foreign module?

>From 2nd sentence in para 1 in sec 7.15 :
"The argument is a string which identifies a node in the schema tree.  This node is called the augment's target node."
I don't think node inside a grouping is in the schema tree. So no IMO.

washam

>  Lada
>  
>  -- 
>  Ladislav Lhotka, CESNET
>  PGP Key ID: E74E8C0C
>  
>  _______________________________________________
>  netmod mailing list
>  [email-masked]
>  https://www.ietf.org/mailman/listinfo/netmod
>  
_______________________________________________
netmod mailing list
[email-masked]
https://www.ietf.org/mailman/listinfo/netmod

---

From: Ladislav Lhotka <[email-masked]>
Date: Mon, 02 Feb 2009 08:46:19 +0100

> I don't think node inside a grouping is in the schema tree. So no IMO.

The notion of "schema tree" should be specified more clearly in the
draft. Intuitively, from the point of view of XML schema languages,
YANG module == schema and so grouping nodes belong to its tree.

The following (or similar) changes could help understand the difference:

Sec. 3:

o  schema tree: The definition hierarchy specified within a module.

should be

o  schema tree: The definition hierarchy specified within a module,
except the contents of groupings.

Sec. 7.5:

The "container" statement is used to define an interior node in the
schema tree.

should be

The "container" statement is used to define an interior node in the
schema tree or in a grouping.

(And similarly for all other data definition statements.)

Sec. 7.11

The grouping statement is not a data definition statement and, as such,
does not define any nodes in the schema tree.

should be

The grouping statement does not define any nodes in the schema tree. The
data nodes defined inside this statement are not contributed to the data
tree until the grouping is applied via the "uses" statement. The
identifiers of data nodes defined inside a grouping also do not belong
to any namespace and MUST NOT use any namespace prefix - they adopt the
namespace of the YANG module where the grouping is used.

Lada

-- 
Ladislav Lhotka, CESNET
PGP Key ID: E74E8C0C