Merge "Fixed resolving of schema path and qname for nodes added by augmentation."
[yangtools.git] / yang / yang-parser-impl / src / test / resources / grouping-test / uses-grouping.yang
index 6e807422a4ba70cf4b962d8072299b431fcefef3..09bee29110fe92c2b04ae4a1ffef1224f8c640d8 100644 (file)
 module uses-grouping {
-       yang-version 1;
-       namespace "urn:opendaylight:params:xml:ns:yang:uses-grouping";
-       prefix "ug";
-
-       import ietf-inet-types { prefix inet; revision-date 2010-09-24; }
-
-       organization "opendaylight";
-       contact "asdf";
-
-       revision "2013-07-30" {
-       }
-       
-       typedef int-ext {
-           type union {
-               type uint8;
-               type protocol-version;
-           }
-       }
-
-       typedef protocol-version {
-               type uint8 {
-                       range 1..7;
-               }
-       }
-
-       grouping bandwidth-object {
-               uses object-header;
-
-               container bandwidth {
-                       uses ieee754-32;
-               }
-       }
-
-       grouping base-header {
-               leaf delete {
-                       type uint32;
-                       mandatory true;
-               }
-               leaf setup {
-                       type uint32;
-                       mandatory true;
-               }
-       }
-
-       grouping endpoints-object {
-               uses object;
-
-               choice address-family {
-                       case ipv4 {
-                               leaf source-ipv4-address {
-                                       type inet:ipv4-address;
-                                       mandatory true;
-                               }
-                       }
-                       case ipv6 {
-                               leaf source-ipv6-address {
-                                       type inet:ipv6-address;
-                                       mandatory true;
-                               }
-                       }
-               }
-       }
-
-       grouping ieee754-32 {
-               reference "IEEE 754-2008";
-               leaf fraction {
-                       type uint32 {
-                               range 0..1677215;
-                       }
-                       mandatory true;
-               }
-       }
-
-       grouping lsp-attributes {
-               container bandwidth {
-                       uses bandwidth-object;
-               }
-       }
-
-       grouping message-header {
-               leaf version {
-                       type protocol-version;
-                       default 1;
-               }
-               leaf type {
-                   type int-ext;
-               }
-       }
-
-       grouping metric-object {
-               uses object;
-               leaf metric-type {
-                       type uint8;
-                       mandatory true;
-               }
-       }
-       
-       grouping object {
-               uses object-header;
-
-               container box {
-               }
-       }
-
-       grouping object-header {
-               leaf processing-rule {
-                       type boolean;
-               }
-               leaf ignore {
-                       type boolean;
-               }
-       }
-       
-       grouping path-key-object {
-               uses object-header;
-
-               list path-keys {
-               }
-       }
-       
-       grouping route-object {
-               uses object-header;
-
-               list subobjects {
-               }
-       }
-
-       grouping rp-object {
-               uses object {
-                       augment "box" {
-                               container order {
-                                       uses base-header;
-                               }
-                       }
-               }
-
-               leaf priority {
-                       type uint8 {
-                               range 1..7;
-                       }
-               }
-       }
-       
-       grouping svec-object {
-               uses object-header;
-
-               leaf link-diverse {
-                       type boolean;
-                       default false;
-               }
-       }
-
-
-       notification pcreq {
-               uses message-header;
-
-               list requests {
-                       container rp {
-                               uses rp-object;
-                       }
-                       container path-key-expansion {
-                               when "rp/path-key = true";
-                               container path-key {
-                                       uses path-key-object {
-                                           augment path-keys {
-                                               uses message-header;
-                                           }
-                                       }
-                               }
-                       }
-                       container segment-computation {
-                               when "rp/path-key = false";
-
-                               container p2p {
-                                       when "../rp/p2mp = false";
-
-                                       container endpoints {
-                                               uses endpoints-object;
-                                       }
-                                       container reported-route {
-                                               uses route-object;
-
-                                               container bandwidth {
-                                                       uses bandwidth-object;
-                                               }
-                                       }
-
-                                       uses lsp-attributes;
-                               }
-                       }
-               }
-
-               list svec {
-                       uses svec-object;
-                       list metric {
-                               uses metric-object;
-                       }
-               }
-       }
+    yang-version 1;
+    namespace "urn:opendaylight:params:xml:ns:yang:uses-grouping";
+    prefix "ug";
+
+    import ietf-inet-types { prefix inet; revision-date 2010-09-24; }
+    import grouping-definitions { prefix gd; revision-date 2013-09-04; }
+
+    organization "opendaylight";
+    contact "asdf";
+
+    revision "2013-07-30" {
+    }
+
+
+    grouping bandwidth-object {
+        uses gd:object-header;
+
+        container bandwidth {
+            uses gd:ieee754-32;
+        }
+    }
+
+    grouping endpoints-object {
+        uses gd:object;
+
+        choice address-family {
+            case ipv4 {
+                leaf source-ipv4-address {
+                    type inet:ipv4-address;
+                    mandatory true;
+                }
+            }
+            case ipv6 {
+                leaf source-ipv6-address {
+                    type inet:ipv6-address;
+                    mandatory true;
+                }
+            }
+        }
+    }
+
+    grouping lsp-attributes {
+        container bandwidth {
+            uses bandwidth-object;
+        }
+    }
+
+    grouping metric-object {
+        uses gd:object;
+        leaf metric-type {
+            type uint8;
+            mandatory true;
+        }
+    }
+
+    grouping path-key-object {
+        uses gd:object-header;
+
+        list path-keys {
+        }
+    }
+
+    grouping route-object {
+        uses gd:object-header;
+
+        list subobjects {
+        }
+    }
+
+    grouping svec-object {
+        uses gd:object-header;
+
+        leaf link-diverse {
+            type boolean;
+            default false;
+        }
+    }
+
+
+    notification pcreq {
+        uses gd:message-header;
+
+        list requests {
+            container rp {
+                uses gd:rp-object;
+            }
+            container path-key-expansion {
+                when "rp/path-key = true";
+                container path-key {
+                    uses path-key-object {
+                        augment path-keys {
+                            uses gd:message-header;
+                        }
+                    }
+                }
+            }
+            container segment-computation {
+                when "rp/path-key = false";
+
+                container p2p {
+                    when "../rp/p2mp = false";
+
+                    container endpoints {
+                        uses endpoints-object;
+                    }
+                    container reported-route {
+                        uses route-object;
+
+                        container bandwidth {
+                            uses bandwidth-object;
+                        }
+                    }
+
+                    uses lsp-attributes;
+                }
+            }
+        }
+
+        list svec {
+            uses svec-object;
+            list metric {
+                uses metric-object;
+            }
+        }
+    }
 
 }