Write to candidate fails via NETCONF for leaves under "derived-from-or-self"

Hi Team,

I am trying to set leaf interface-name to 123 setting target as running via NETCONF. It is able to write to CDB and returns OK.
But when i set the target to candidate. It throws error.

It fails only for the leaves that has validation of “derived-from-or-self”. In other cases it is success for candidate.

Kindly let know if we should do anything different via netconf in case of candidate during “derived-from-or-self” scenarios. Because i dont face any issue for leaves with no validation of “derived-from-or-self” via NETCONF

  augment "/core-model:control-construct/core-model:logical-termination-point/core-model:layer-protocol" {
    when "derived-from-or-self(./core-model:layer-protocol-name, 'air-interface:LAYER_PROTOCOL_NAME_TYPE_AIR_LAYER')";
	uses air-interface-lp-pac;
	description
      "none";
  }
  grouping air-interface-lp-pac {
    container air-interface-pac {
      leaf interface-name {
        type string;
        default "interface not yet defined.";
        description
          "none";
      }
      description
        "none";
    }
  }

RPC request

<?xml version="1.0" encoding="utf-8"?>
<rpc xmlns="urn:ietf:params:xml:ns:netconf:base:1.0"
     xmlns:air-interface="urn:onf:yang:air-interface"
     message-id="1">
  <edit-config>
    <target>
      <candidate/>
    </target>
    <config>
      <control-construct xmlns="urn:onf:yang:core-model">
        <logical-termination-point>
          <uuid>83</uuid>
          <layer-protocol>
            <local-id>01</local-id>
            <air-interface-pac xmlns="urn:onf:yang:air-interface">
              <interface-name>123</interface-name>
            </air-interface-pac>
          </layer-protocol>
        </logical-termination-point>
      </control-construct>
    </config>
  </edit-config>
</rpc>

RPC reply

<?xml version="1.0" encoding="utf-8"?>
<rpc-reply xmlns="urn:ietf:params:xml:ns:netconf:base:1.0" message-id="89">
  <rpc-error>
    <error-type>application</error-type>
    <error-tag>unknown-element</error-tag>
    <error-severity>error</error-severity>
    <error-path xmlns:air-interface="urn:onf:yang:air-interface"
                xmlns:core-model="urn:onf:yang:core-model">
    /rpc/edit-config/config/core-model:control-construct/core-model:logical-termination-point[core-model:uuid='83']/core-model:layer-protocol[core-model:local-id='01']/air-interface:air-interface-pac
  </error-path>
    <error-message xml:lang="en">/control-construct/logical-termination-point[uuid='83']/layer-protocol[local-id='01']/air-interface:air-interface-pac: the 'when' expression "derived-from-or-self(./core-model:layer-protocol-name, 'air-interface:LAYER_PROTOCOL_NAME_TYPE_AIR_LAYER')" failed</error-message>
    <error-info>
      <bad-element>air-interface-pac</bad-element>
    </error-info>
  </rpc-error>
</rpc-reply>

In confd.conf, candidate is enabled.
With the same request , when target is running, it is success.