--- /dev/null
+/*
+ * Copyright (c) 2016 Intel Corporation. All rights reserved.
+ *
+ * This program and the accompanying materials are made available under the
+ * terms of the Eclipse Public License v1.0 which accompanies this distribution,
+ * and is available at http://www.eclipse.org/legal/epl-v10.html
+ */
+module neutron-qos {
+
+ yang-version 1;
+
+ namespace "urn:opendaylight:neutron-qos";
+
+ prefix neutron-qos;
+
+ import ietf-yang-types { prefix "yang"; revision-date "2013-07-15"; }
+ import neutron-attrs { prefix "attrs"; }
+
+ organization "OpenDaylight Neutron Group";
+
+ contact "Pramod Raghavendra Jayathirth <pramod.rj07@gmail.com>";
+
+ description "This YANG module defines qos attributes that are used
+ by OpenDaylight Neutron YANG module.";
+
+ revision "2016-06-13" {
+ description
+ "OpenDaylight Boron release";
+ }
+
+ grouping qos-policy-attributes {
+ leaf shared {
+ type boolean;
+ description "Whether the policy is shared or not";
+ }
+ }
+
+ grouping qos-rule-type {
+ leaf rule-type {
+ type string;
+ config false;
+ description "The type of the qos rule";
+ }
+ }
+
+ grouping bandwidthlimit-rule-attributes {
+ leaf uuid {
+ type yang:uuid;
+ description "The rule id of the associated rule";
+ }
+ leaf tenant-id {
+ type yang:uuid;
+ description "The tenant id of OpenStack Tenant";
+ }
+ leaf max-kbps {
+ type uint64;
+ description "The maximum KBPS value";
+ }
+ leaf max-burst-kbps {
+ type uint64;
+ description "The burst over the maximum KBPS value";
+ }
+ }
+
+ grouping dscpmarking-rule-attributes {
+ leaf uuid {
+ type yang:uuid;
+ description "The rule id of the associated rule";
+ }
+ leaf tenant-id {
+ type yang:uuid;
+ description "The tenant id of OpenStack Tenant";
+ }
+ leaf dscp-mark {
+ type uint8 {
+ range "0 | 8 | 10 | 12 | 14 | 16 | 18 | 20 | 22 | 24 | 26 | 28 | 30 | 32 | 34 | 36
+ | 38 | 40 | 46 | 48 | 56";
+ }
+ description "the value of dscp mark";
+ }
+ }
+
+ grouping qos-attributes {
+ container qos-policies {
+ list qos-policy {
+ key "uuid";
+ uses attrs:base-attributes;
+ uses qos-policy-attributes;
+ list bandwidth-limit-rules {
+ key "uuid";
+ uses bandwidthlimit-rule-attributes;
+ }
+ list dscpmarking-rules {
+ key "uuid";
+ uses dscpmarking-rule-attributes;
+ }
+ }
+ }
+ container qos-rule-types {
+ list rule-types {
+ key "rule-type";
+ config false;
+ uses qos-rule-type;
+ }
+ }
+ }
+}