Getting your hands on and understanding some of the advanced features of NETCONF and YANG can be difficult if you don’t know where to look. We have found that many users of ConfD ask one of the following questions. See if any of these come to mind?
- Do you need to make part of your YANG model conditional on the value of a leaf node?
- Do you want to make selection of your management interface restricted to one of the current set of interfaces?
- Do you want to express complex sets of conditions which should be true in your configuration?
- Do you want to be more selective in the data to be returned by your NETCONF <get> or <get-config> operations than using simple subtree filtering?
If you said yes to any or all of these questions, you can accomplish all these things using features available in the YANG and NETCONF RFCs, and these features all involve the use of XPath. XPath provides some powerful constructs for filtering data when fetching information via NETCONF. It also provides useful tools for YANG data model writers for specifying constraints in YANG data models. ConfD includes a full XPath implementation which allows users to take advantage of XPath as it is used in the NETCONF and YANG RFCs.
We have created an application note titled “XPath in NETCONF and YANG” to provide an introductory overview of XPath and how XPath is used in YANG and NETCONF to provide more advanced features.