libyang学习文档

Libyang是一个用于处理YANG模型的库,支持多种格式的解析和验证。YANG是一种用于协议建模的语言,数据模型描述了数据的层次结构。叶节点、叶列表、容器节点和列表节点是YANG数据模型的主要构成部分。Libyang的特点包括解析器优化、支持插件和打印模式等功能。
摘要由CSDN通过智能技术生成

Libyang 学习

YANG模型

YANG是最初设计用于为NETCONF协议建模的语言。 YANG模块定义了可用于基于NETCONF的操作(包括配置,状态数据,RPC和通知)的数据层次结构。这允许在NETCONF客户端和服务器之间发送的所有数据的完整描述。虽然不在本规范的范围之内,但是也可以使用除NETCONF以外的协议。

YANG将数据的分层组织模型化为一个树,其中每个节点都有一个名称,或者一个值或一组子节点。YANG提供了对节点的清晰简洁的描述,以及这些节点之间的交互。

YANG将数据模型组织成模块和子模块。模块可以从其他外部模块导入定义,并可以包含子模块的定义。可以增加层次结构,允许一个模块将数据节点添加到另一个模块中定义的层次结构中。这种增加可以是有条件的,只有在满足某些条件的情况下才会出现新的节点。

 

一个模块包含三种类型的语句:模块头(module header)语句,“修订”(revision)语句和定义(definition)语句。模块头部语句描述模块并提供关于模块本身的信息,“修订”语句提供关于模块历史的信息,定义语句是定义数据模型的模块的主体

数据模型(data model):数据模型描述如何表示和访问数据。

数据节点(data node):模式树中可以在数据树中实例化的节点。containerleafleaf-listlistanydataanyxml之一。

数据树(data tree):用YANG建模的任何数据的实例化树,例如配置数据,状态数据,组合配置和状态数据,RPC或操作输入,RPC或操作输出或通知。

叶节点(leaf):数据树中至多存在一个实例的数据节点。叶子有一个值,但没有子节点。

叶列表(leaf-list):与叶节点类似,但定义了一组唯一可识别的节点,而不是单个节点。每个节点都有一个值,但没有子节点。

RPC操作(RPC operation):特定的远程过程调用。

模式节点(schema node):模式树中的节点。 actioncontainerleafleaf-listlistchoicecaserpcinputoutputnotificationanydataanyxml中的一个。

模式树(schema tree):模块中指定的定义层次结构。

Data Model

叶节点(Leaf Nodes)

leaf”语句用于在模式树中定义叶节点。 它需要一个参数,它是一个标识符,后面是一个包含详细叶子信息的

  • 3
    点赞
  • 18
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值