netconfcentral logo

ietf-netconf-with-defaults.yang



  module ietf-netconf-with-defaults {

    yang-version 1;

    namespace
      "urn:ietf:params:xml:ns:yang:ietf-netconf-with-defaults";

    prefix ncwd;

    import ietf-netconf {
      prefix nc;
    }

    organization
      "IETF NETCONF (Network Configuration Protocol) Working Group";

    contact
      "WG Web:   <http://tools.ietf.org/wg/netconf/>
      WG List:  <mailto:netconf@ietf.org>

      WG Chair: Bert Wijnen
                <mailto:bertietf@bwijnen.net>

      WG Chair: Mehmet Ersue
                <mailto:mehmet.ersue@nsn.com>

      Editor: Andy Bierman
              <mailto:andy.bierman@brocade.com>

      Editor: Balazs Lengyel
              <mailto:balazs.lengyel@ericsson.com>";

    description
      "This module defines an extension to the NETCONF protocol
      that allows the NETCONF client to control how default
      values are handled by the server in particular NETCONF operations.

      Copyright (c) 2010 IETF Trust and the persons identified as
      the document authors.  All rights reserved.

      Redistribution and use in source and binary forms, with or
      without modification, is permitted pursuant to, and subject
      to the license terms contained in, the Simplified BSD License
      set forth in Section 4.c of the IETF Trust's Legal Provisions
      Relating to IETF Documents
      (http://trustee.ietf.org/license-info).

      This version of this YANG module is part of RFC XXXX; see
      the RFC itself for full legal notices.";

    revision "2010-06-09" {
      description "Initial version.";
      reference
        "RFC XXXX: With-defaults capability for NETCONF";

    }


    typedef with-defaults-mode {
      type enumeration {
        enum "report-all" {
          value 0;
          description
            "All default data is reported.";
          reference
            "RFC XXXX; section 3.1";

        }
        enum "report-all-tagged" {
          value 1;
          description
            "All default data is reported.
                 Any nodes considered to be default data
                 will contain a 'wd:default' XML attribute,
                 set to 'true'.";
          reference
            "RFC XXXX; section 3.4";

        }
        enum "trim" {
          value 2;
          description
            "Values are not reported if they contain the default.";
          reference
            "RFC XXXX; section 3.2";

        }
        enum "explicit" {
          value 3;
          description
            "Report values that contain the definition of
                 explicitly set data.";
          reference
            "RFC XXXX; section 3.3";

        }
      }
      description
        "Possible modes to report default data.";
      reference
        "RFC XXXX; section 3.";

    }

    grouping with-defaults-parameters {
      description
        "Contains the <with-defaults> parameter for control
         of defaults in NETCONF retrieval operations.";
      leaf with-defaults {
        type with-defaults-mode;
        description
          "The explicit defaults processing mode requested.";
        reference
          "RFC XXXX; section 4.6.1";

      }
    }  // grouping with-defaults-parameters

    augment /nc:get-config/nc:input {
      description
        "Adds the <with-defaults> parameter to the
           input of the NETCONF <get-config> operation.";
      reference
        "RFC XXXX; section 4.6.1";

      uses with-defaults-parameters;
    }

    augment /nc:get/nc:input {
      description
        "Adds the <with-defaults> parameter to
           the input of the NETCONF <get> operation.";
      reference
        "RFC XXXX; section 4.6.1";

      uses with-defaults-parameters;
    }

    augment /nc:copy-config/nc:input {
      description
        "Adds the <with-defaults> parameter to
           the input of the NETCONF <copy-config> operation.";
      reference
        "RFC XXXX; section 4.6.1";

      uses with-defaults-parameters;
    }
  }  // module ietf-netconf-with-defaults