Merge "Bug 9092: revert to org.json temporarily"
[netconf.git] / restconf / sal-rest-connector / src / main / yang / opendaylight-md-sal-remote.yang
1 module sal-remote {
2
3     yang-version 1;
4     namespace "urn:opendaylight:params:xml:ns:yang:controller:md:sal:remote";
5     prefix "sal-remote";
6
7     organization "Cisco Systems, Inc.";
8     contact "Martin Bobak <mbobak@cisco.com>";
9
10     description
11           "This module contains the definition of methods related to
12            sal remote model.
13
14            Copyright (c)2013 Cisco Systems, Inc. All rights reserved.
15
16            This program and the accompanying materials are made available
17            under the terms of the Eclipse Public License v1.0 which
18            accompanies this distribution, and is available at
19            http://www.eclipse.org/legal/epl-v10.html";
20
21     revision "2014-01-14" {
22         description
23             "Initial revision";
24     }
25
26
27      typedef q-name {
28        type string;
29        reference
30          "http://www.w3.org/TR/2004/REC-xmlschema-2-20041028/#QName";
31      }
32
33     rpc create-data-change-event-subscription {
34         input {
35             leaf path {
36                 type instance-identifier;
37                 description "Subtree path. ";
38             }
39          }
40          output {
41             leaf stream-name {
42                 type string;
43                 description "Notification stream name.";
44             }
45          }
46     }
47
48     notification data-changed-notification {
49         description "Data change notification.";
50         list data-change-event {
51             key path;
52             leaf path {
53                 type instance-identifier;
54             }
55             leaf store {
56                 type enumeration {
57                     enum config;
58                     enum operation;
59                 }
60             }
61             leaf operation {
62                 type enumeration {
63                     enum created;
64                     enum updated;
65                     enum deleted;
66                 }
67             }
68             anyxml data{
69                 description "DataObject ";
70             }
71          }
72     }
73
74     rpc create-notification-stream {
75         input {
76             leaf-list notifications {
77                 type q-name;
78                 description "Notification QNames";
79             }
80          }
81         output {
82             leaf notification-stream-identifier {
83                 type string;
84                 description "Unique notification stream identifier, in which notifications will be propagated";
85             }
86         }
87     }
88
89     rpc begin-transaction {
90         output {
91             anyxml data-modification-transaction{
92                 description "DataModificationTransaction xml";
93             }
94         }
95     }
96
97 }