Add "presence" to container


I have container in ietf module that I want it to be defined as “presence”.
Can I add this statement using annotate module? if yes how?



This can’t be done. The tailf:annotate-statement can only be used for the following as described in the ConfD UG:

tailf:annotate-statement Annotates an existing statement with a 'tailf' statement, a validation statement, or
a type restrcition statement. This is useful in order to add tailf statements to a module without touching
the module source. Annotation statements can be put in a separate annotation module, and then passed to
'confdc' (or 'pyang') when the original module is compiled.

Any 'tailf' statement, except 'symlink' and 'action' can be annotated. The statements 'symlink' and 'action'
modifies the data model, and are thus not allowed.

The validation statements 'must', 'min-elements', 'max-elements', 'mandatory', 'unique', and 'when' can also
be annotated.

The type restriction statement 'pattern' can also be annotated.

A 'description' can also be annotated.

The argument is an XPath-like expression that selects a statement to annotate. The syntax is:
<statement-name> ( '[' <arg-name> '=' <arg-value> ']' )
where <statement-name> is the name of the statement to annotate, and if there are more than one such
statement in the parent, <arg-value> is the quoted value of the statement's argument.

All substatements to 'tailf:annotate-statement' are treated as if they were written inline in the target node,
with the exception of any 'tailf:annotate-statement' substatements. These are treated recursively.

For example, given the grouping:
grouping foo { leaf bar { type string; } leaf baz { type string; } }
the following snippet adds a callpoint to the leaf 'baz':
tailf:annotate-statement grouping[name='foo'] { tailf:annotate-statement leaf[name='baz'] { tailf:callpoint
xcp; } }