I have seen in some yang files which is using “action” keyword. I saw that structure is very similar as tailf:action, which has description, input, and output.
So what is difference between “action” and “tailf:action” ? Is that “action” deprecated and “tailf:action” is new version which replaced it ?
No, it’s rather the other way around: the Tail-f tools have supported tailf:action as a proprietary extension ever since YANG was introduced, but with YANG 1.1, action was added as a standard statement - see RFC 7950 - The YANG 1.1 Data Modeling Language . They work essentially the same - there are minor differences in the NETCONF encoding of requests and replies, but ConfD will actually handle both forms whether tailf:action or action is used in the YANG module. For YANG 1.1 modules, action should be preferred, since it is standard and thus can be understood by clients without knowledge of the Tail-f extensions.