我定义了一个分组,它的叶子的强制属性设置为 false。但在某些情况下,我想使用这种分组并指定叶子应该是强制性的。我如何在 YANG 中实现这一目标?
问问题
1154 次
1 回答
3
refine
在指定使用分组时,您将使用该语句。
module mandatory-and-grouping {
namespace "org:example:mandatory-and-grouping";
prefix "mag";
grouping my-grouping {
leaf my-leaf {
type string;
}
}
container top {
uses my-grouping {
refine my-leaf {
mandatory true;
}
}
}
}
7.13.2。“精炼”声明
分组中每个节点的某些属性可以使用“refine”语句进行细化。参数是一个字符串,用于标识分组中的一个节点。该节点称为细化的目标节点。如果分组中的节点不作为“优化”语句的目标节点存在,则它不会被优化,因此完全按照分组中定义的方式使用。
参数字符串是后代模式节点标识符(参见 第 6.5 节)。
可以进行以下改进:
- 一个叶子或选择节点可能会获得一个默认值,或者如果它已经有一个新的默认值。
- 叶列表节点可能会获得一组默认值,或者如果它已经有默认值,则可能会获得一组新的默认值;即,一组细化的默认值替换已经给出的默认值。
- 任何节点都可以得到一个专门的“描述”字符串。
- 任何节点都可能获得专门的“参考”字符串。
- 任何节点都可能得到不同的“config”语句。
- 叶、anydata、anyxml 或选择节点可能会获得不同的“强制”语句。
- 一个容器节点可能会得到一个“存在”声明。
- 叶、叶列表、列表、容器、anydata 或 anyxml 节点可能会获得额外的“必须”表达式。
- 叶列表或列表节点可能会获得不同的“最小元素”或“最大元素”语句。
- 叶、叶列表、列表、容器、选择、案例、anydata 或 anyxml 节点可能会获得额外的“if-feature”表达式。
- 如果扩展允许细化,任何节点都可以得到细化的扩展。有关详细信息,请参阅第 7.19 节。
于 2017-08-31T07:01:08.347 回答