[YANGTOOLS-688] DataTree: enforce 'when'-statement conditional nodes Created: 17/Oct/16 Updated: 18/Jan/24 |
|
| Status: | Confirmed |
| Project: | yangtools |
| Component/s: | data-impl |
| Affects Version/s: | None |
| Fix Version/s: | None |
| Type: | Improvement | Priority: | Medium |
| Reporter: | Robert Varga | Assignee: | Unassigned |
| Resolution: | Unresolved | Votes: | 1 |
| Labels: | None | ||
| Remaining Estimate: | Not Specified | ||
| Time Spent: | Not Specified | ||
| Original Estimate: | Not Specified | ||
| Environment: |
Operating System: All |
||
| Issue Links: |
|
||||||||||||||||
| Epic Link: | Complete DataTree enforcement | ||||||||||||||||
| Description |
|
InMemoryDataTree needs to be cognizant of 'when' statement and more specifically it needs to dynamically adjust which nodes are to be considered based on the candidate model. This requires an XPath evaluator first and then figuring out how this mechanics will work with the rest of IMDT logic. |
| Comments |
| Comment by Robert Varga [ 17/Oct/16 ] |
|
https://tools.ietf.org/html/rfc6020#section-7.19.5 needs to be checked for each transaction. In order to implement this efficiently, we need to analyze the XPath expression and find the root of the tree from which all referenced are directly reachable and evaluate it on if that subtree is modified. Parts of the support are available in yang.data.api.schema.xpath and yang-data-jaxen. This needs to be finished and integrated with the data tree implementation. |