[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
Platform: All


Issue Links:
Blocks
blocks TRNSPRTPCE-773 Issue in yang files with mandatory le... Open
is blocked by YANGTOOLS-1137 Enforce correct XPath arguments Resolved
is blocked by YANGTOOLS-711 XPath: provide an evaluator on top of... Confirmed
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.

Generated at Wed Feb 07 20:54:00 UTC 2024 using Jira 8.20.10#820010-sha1:ace47f9899e9ee25d7157d59aa17ab06aee30d3d.