aboutsummaryrefslogtreecommitdiffstats
path: root/sdnr/wt/devicemanager-onap/onf14/provider/src/test/resources/currentRevision/ietf-yang-patch@2017-02-22.yang
diff options
context:
space:
mode:
Diffstat (limited to 'sdnr/wt/devicemanager-onap/onf14/provider/src/test/resources/currentRevision/ietf-yang-patch@2017-02-22.yang')
-rw-r--r--sdnr/wt/devicemanager-onap/onf14/provider/src/test/resources/currentRevision/ietf-yang-patch@2017-02-22.yang358
1 files changed, 358 insertions, 0 deletions
diff --git a/sdnr/wt/devicemanager-onap/onf14/provider/src/test/resources/currentRevision/ietf-yang-patch@2017-02-22.yang b/sdnr/wt/devicemanager-onap/onf14/provider/src/test/resources/currentRevision/ietf-yang-patch@2017-02-22.yang
new file mode 100644
index 000000000..a87105232
--- /dev/null
+++ b/sdnr/wt/devicemanager-onap/onf14/provider/src/test/resources/currentRevision/ietf-yang-patch@2017-02-22.yang
@@ -0,0 +1,358 @@
+module ietf-yang-patch {
+ yang-version 1.1;
+ namespace "urn:ietf:params:xml:ns:yang:ietf-yang-patch";
+ prefix ypatch;
+
+ import ietf-restconf {
+ prefix rc;
+ }
+
+ organization
+ "IETF NETCONF (Network Configuration) Working Group";
+ contact
+ "WG Web: <https://datatracker.ietf.org/wg/netconf/>
+ WG List: <mailto:netconf@ietf.org>
+
+ Author: Andy Bierman
+ <mailto:andy@yumaworks.com>
+
+ Author: Martin Bjorklund
+ <mailto:mbj@tail-f.com>
+
+ Author: Kent Watsen
+ <mailto:kwatsen@juniper.net>";
+ description
+ "This module contains conceptual YANG specifications
+ for the YANG Patch and YANG Patch Status data structures.
+
+ Note that the YANG definitions within this module do not
+ represent configuration data of any kind.
+ The YANG grouping statements provide a normative syntax
+ for XML and JSON message-encoding purposes.
+
+ Copyright (c) 2017 IETF Trust and the persons identified as
+ authors of the code. 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 8072; see
+ the RFC itself for full legal notices.";
+
+ revision 2017-02-22 {
+ description
+ "Initial revision.";
+ reference
+ "RFC 8072: YANG Patch Media Type.";
+ }
+
+ rc:yang-data "yang-patch" {
+ uses yang-patch;
+ }
+ rc:yang-data "yang-patch-status" {
+ uses yang-patch-status;
+ }
+
+ typedef target-resource-offset {
+ type string;
+ description
+ "Contains a data resource identifier string representing
+ a sub-resource within the target resource.
+ The document root for this expression is the
+ target resource that is specified in the
+ protocol operation (e.g., the URI for the PATCH request).
+
+ This string is encoded according to the same rules as those
+ for a data resource identifier in a RESTCONF request URI.";
+ reference
+ "RFC 8040, Section 3.5.3.";
+ }
+
+ grouping yang-patch {
+ description
+ "A grouping that contains a YANG container representing the
+ syntax and semantics of a YANG Patch edit request message.";
+ container yang-patch {
+ description
+ "Represents a conceptual sequence of datastore edits,
+ called a patch. Each patch is given a client-assigned
+ patch identifier. Each edit MUST be applied
+ in ascending order, and all edits MUST be applied.
+ If any errors occur, then the target datastore MUST NOT
+ be changed by the YANG Patch operation.
+
+ It is possible for a datastore constraint violation to occur
+ due to any node in the datastore, including nodes not
+ included in the 'edit' list. Any validation errors MUST
+ be reported in the reply message.";
+ reference
+ "RFC 7950, Section 8.3.";
+ leaf patch-id {
+ type string;
+ mandatory true;
+ description
+ "An arbitrary string provided by the client to identify
+ the entire patch. Error messages returned by the server
+ that pertain to this patch will be identified by this
+ 'patch-id' value. A client SHOULD attempt to generate
+ unique 'patch-id' values to distinguish between
+ transactions from multiple clients in any audit logs
+ maintained by the server.";
+ }
+ leaf comment {
+ type string;
+ description
+ "An arbitrary string provided by the client to describe
+ the entire patch. This value SHOULD be present in any
+ audit logging records generated by the server for the
+ patch.";
+ }
+ list edit {
+ key "edit-id";
+ ordered-by user;
+ description
+ "Represents one edit within the YANG Patch request message.
+ The 'edit' list is applied in the following manner:
+
+ - The first edit is conceptually applied to a copy
+ of the existing target datastore, e.g., the
+ running configuration datastore.
+ - Each ascending edit is conceptually applied to
+ the result of the previous edit(s).
+ - After all edits have been successfully processed,
+ the result is validated according to YANG constraints.
+ - If successful, the server will attempt to apply
+ the result to the target datastore.";
+ leaf edit-id {
+ type string;
+ description
+ "Arbitrary string index for the edit.
+ Error messages returned by the server that pertain
+ to a specific edit will be identified by this value.";
+ }
+ leaf operation {
+ type enumeration {
+ enum "create" {
+ description
+ "The target data node is created using the supplied
+ value, only if it does not already exist. The
+ 'target' leaf identifies the data node to be
+ created, not the parent data node.";
+ }
+ enum "delete" {
+ description
+ "Delete the target node, only if the data resource
+ currently exists; otherwise, return an error.";
+ }
+ enum "insert" {
+ description
+ "Insert the supplied value into a user-ordered
+ list or leaf-list entry. The target node must
+ represent a new data resource. If the 'where'
+ parameter is set to 'before' or 'after', then
+ the 'point' parameter identifies the insertion
+ point for the target node.";
+ }
+ enum "merge" {
+ description
+ "The supplied value is merged with the target data
+ node.";
+ }
+ enum "move" {
+ description
+ "Move the target node. Reorder a user-ordered
+ list or leaf-list. The target node must represent
+ an existing data resource. If the 'where' parameter
+ is set to 'before' or 'after', then the 'point'
+ parameter identifies the insertion point to move
+ the target node.";
+ }
+ enum "replace" {
+ description
+ "The supplied value is used to replace the target
+ data node.";
+ }
+ enum "remove" {
+ description
+ "Delete the target node if it currently exists.";
+ }
+ }
+ mandatory true;
+ description
+ "The datastore operation requested for the associated
+ 'edit' entry.";
+ }
+ leaf target {
+ type target-resource-offset;
+ mandatory true;
+ description
+ "Identifies the target data node for the edit
+ operation. If the target has the value '/', then
+ the target data node is the target resource.
+ The target node MUST identify a data resource,
+ not the datastore resource.";
+ }
+ leaf point {
+ when "(../operation = 'insert' or ../operation = 'move')and (../where = 'before' or ../where = 'after')" {
+ description
+ "This leaf only applies for 'insert' or 'move'
+ operations, before or after an existing entry.";
+ }
+ type target-resource-offset;
+ description
+ "The absolute URL path for the data node that is being
+ used as the insertion point or move point for the
+ target of this 'edit' entry.";
+ }
+ leaf where {
+ when "../operation = 'insert' or ../operation = 'move'" {
+ description
+ "This leaf only applies for 'insert' or 'move'
+ operations.";
+ }
+ type enumeration {
+ enum "before" {
+ description
+ "Insert or move a data node before the data resource
+ identified by the 'point' parameter.";
+ }
+ enum "after" {
+ description
+ "Insert or move a data node after the data resource
+ identified by the 'point' parameter.";
+ }
+ enum "first" {
+ description
+ "Insert or move a data node so it becomes ordered
+ as the first entry.";
+ }
+ enum "last" {
+ description
+ "Insert or move a data node so it becomes ordered
+ as the last entry.";
+ }
+ }
+ default "last";
+ description
+ "Identifies where a data resource will be inserted
+ or moved. YANG only allows these operations for
+ list and leaf-list data nodes that are
+ 'ordered-by user'.";
+ }
+ anydata value {
+ when "../operation = 'create' or ../operation = 'merge' or ../operation = 'replace' or ../operation = 'insert'" {
+ description
+ "The anydata 'value' is only used for 'create',
+ 'merge', 'replace', and 'insert' operations.";
+ }
+ description
+ "Value used for this edit operation. The anydata 'value'
+ contains the target resource associated with the
+ 'target' leaf.
+
+ For example, suppose the target node is a YANG container
+ named foo:
+
+ container foo {
+ leaf a { type string; }
+ leaf b { type int32; }
+ }
+
+ The 'value' node contains one instance of foo:
+
+ <value>
+ <foo xmlns='example-foo-namespace'>
+ <a>some value</a>
+ <b>42</b>
+ </foo>
+ </value>
+ ";
+ }
+ }
+ }
+ }
+
+ grouping yang-patch-status {
+ description
+ "A grouping that contains a YANG container representing the
+ syntax and semantics of a YANG Patch Status response
+ message.";
+ container yang-patch-status {
+ description
+ "A container representing the response message sent by the
+ server after a YANG Patch edit request message has been
+ processed.";
+ leaf patch-id {
+ type string;
+ mandatory true;
+ description
+ "The 'patch-id' value used in the request.";
+ }
+ choice global-status {
+ description
+ "Report global errors or complete success.
+ If there is no case selected, then errors
+ are reported in the 'edit-status' container.";
+ case global-errors {
+ description
+ "This container will be present if global errors that
+ are unrelated to a specific edit occurred.";
+ uses rc:errors;
+ }
+ leaf ok {
+ type empty;
+ description
+ "This leaf will be present if the request succeeded
+ and there are no errors reported in the 'edit-status'
+ container.";
+ }
+ }
+ container edit-status {
+ description
+ "This container will be present if there are
+ edit-specific status responses to report.
+ If all edits succeeded and the 'global-status'
+ returned is 'ok', then a server MAY omit this
+ container.";
+ list edit {
+ key "edit-id";
+ description
+ "Represents a list of status responses,
+ corresponding to edits in the YANG Patch
+ request message. If an 'edit' entry was
+ skipped or not reached by the server,
+ then this list will not contain a corresponding
+ entry for that edit.";
+ leaf edit-id {
+ type string;
+ description
+ "Response status is for the 'edit' list entry
+ with this 'edit-id' value.";
+ }
+ choice edit-status-choice {
+ description
+ "A choice between different types of status
+ responses for each 'edit' entry.";
+ leaf ok {
+ type empty;
+ description
+ "This 'edit' entry was invoked without any
+ errors detected by the server associated
+ with this edit.";
+ }
+ case errors {
+ description
+ "The server detected errors associated with the
+ edit identified by the same 'edit-id' value.";
+ uses rc:errors;
+ }
+ }
+ }
+ }
+ }
+ }
+} \ No newline at end of file