diff --git a/models/demo/BUCK b/models/demo/BUCK
deleted file mode 100644
index dfc93e1..0000000
--- a/models/demo/BUCK
+++ /dev/null
@@ -1,5 +0,0 @@
-
-yang_model (
-  app_name = 'org.onosproject.models.demo',
-  title = 'Demo YANG Model',
-)
diff --git a/models/huawei/BUCK b/models/huawei/BUCK
new file mode 100644
index 0000000..301456a
--- /dev/null
+++ b/models/huawei/BUCK
@@ -0,0 +1,5 @@
+
+yang_model (
+  app_name = 'org.onosproject.models.huawei',
+  title = 'Huawei YANG Model',
+)
diff --git a/models/huawei/src/main/yang/ne-bgpcomm-type.yang b/models/huawei/src/main/yang/ne-bgpcomm-type.yang
new file mode 100644
index 0000000..28f98e4
--- /dev/null
+++ b/models/huawei/src/main/yang/ne-bgpcomm-type.yang
@@ -0,0 +1,115 @@
+/*
+WARNING:
+This yang model is just for fuction ONOS opensource project demo purpose only,
+And is subject to change in future, Huawei does not commit provide compatibilty
+in commercial product.
+*/
+module ne-bgpcomm-type {
+    namespace "ne-bgpcomm-type";
+    prefix bgpcomm-type;
+    organization "Huawei Technologies Co., Ltd";
+    contact "Huawei Industrial Base
+     Bantian, Longgang
+     Shenzhen 518129
+     People's Republic of China
+     Website: http://www.huawei.com
+     Email: support@huawei.com";
+    description "ne-bgpcomm-type yang";
+    revision "2014-12-25" {
+        description "Initial version";
+    }
+    typedef bgpcommImRouteProtocol {
+        type enumeration {
+            enum "direct" {
+                value 0;
+                description "direct:";
+            }
+            enum "ospf" {
+                value 1;
+                description "ospf:";
+            }
+            enum "isis" {
+                value 2;
+                description "isis:";
+            }
+            enum "static" {
+                value 3;
+                description "static:";
+            }
+            enum "rip" {
+                value 4;
+                description "rip:";
+            }
+            enum "ospfv3" {
+                value 5;
+                description "ospfv3:";
+            }
+            enum "ripng" {
+                value 6;
+                description "ripng:";
+            }
+            enum "unr" {
+                value 7;
+                description "unr:";
+            }
+            enum "op-route" {
+                value 8;
+                description "op-route:";
+            }
+        }
+        description "";
+    }
+    typedef bgpcommPrefixType {
+        type enumeration {
+            enum "ipv4uni" {
+                value 0;
+                description "ipv4uni:";
+            }
+            enum "ipv4multi" {
+                value 1;
+                description "ipv4multi:";
+            }
+            enum "ipv4vpn" {
+                value 2;
+                description "ipv4vpn:";
+            }
+            enum "ipv6uni" {
+                value 3;
+                description "ipv6uni:";
+            }
+            enum "ipv6vpn" {
+                value 4;
+                description "ipv6vpn:";
+            }
+            enum "ipv4flow" {
+                value 5;
+                description "ipv4flow:";
+            }
+            enum "l2vpnad" {
+                value 6;
+                description "l2vpnad:";
+            }
+            enum "mvpn" {
+                value 7;
+                description "mvpn:";
+            }
+            enum "evpn" {
+                value 8;
+                description "evpn:";
+            }
+            enum "ipv4vpnmcast" {
+                value 9;
+                description "ipv4vpnmcast:";
+            }
+            enum "ls" {
+                value 10;
+                description "ls:";
+            }
+            enum "mdt" {
+                value 11;
+                description "mdt:";
+            }
+        }
+        description "";
+    }
+}
diff --git a/models/huawei/src/main/yang/ne-bgpcomm.yang b/models/huawei/src/main/yang/ne-bgpcomm.yang
new file mode 100644
index 0000000..b0bb113
--- /dev/null
+++ b/models/huawei/src/main/yang/ne-bgpcomm.yang
@@ -0,0 +1,77 @@
+/*
+WARNING:
+This yang model is just for fuction ONOS opensource project demo purpose only,
+And is subject to change in future, Huawei does not commit provide compatibilty
+in commercial product.
+*/
+module ne-bgpcomm {
+    namespace "ne-bgpcomm";
+    prefix bgpcomm;
+    import ne-bgpcomm-type {
+        prefix bgpcomm-type;
+    }
+    organization "Huawei Technologies Co., Ltd";
+    contact "Huawei Industrial Base
+     Bantian, Longgang
+     Shenzhen 518129
+     People's Republic of China
+     Website: http://www.huawei.com
+     Email: support@huawei.com";
+    description "ne-bgpcomm yang";
+    revision "2014-12-25" {
+        description "Initial version";
+    }
+
+    container devices {
+        list device {
+            key deviceid;
+            leaf deviceid {
+                type string;
+            }
+            container bgp {
+                container bgpcomm {
+                    description "";
+                    container bgpVrfs {
+                        description "";
+                        list bgpVrf {
+                            key "vrfName";
+                            description "BGP instance class";
+                            leaf vrfName {
+                                description "Specifies the name of the VPN in stance.
+                                It is a string of 1 to 31 case-sensitive characters.";
+                                type string;
+                            }
+                            container bgpVrfAFs {
+                                description "";
+                                list bgpVrfAF {
+                                    key "afType";
+                                    description "IPv4 unicast Address family class for
+                                    BGP instance";
+                                    leaf afType {
+                                        type "bgpcomm-type:bgpcommPrefixType";
+                                        description "Address family";
+                                    }
+                                    container importRoutes {
+                                        description "";
+                                        list importRoute {
+                                            key "importProtocol importProcessId";
+                                            description "Import route class";
+                                            leaf importProtocol {
+                                                type "bgpcomm-type:bgpcommImRouteProtocol";
+                                                description "Specifies the protocol from
+                                                which routes are imported.";
+                                            }
+                                            leaf importProcessId {
+                                                type "string";
+                                            }
+                                        }
+                                    }
+                                }
+                            }
+                        }
+                    }
+                }
+            }
+        }
+    }
+}
diff --git a/models/demo/src/ne-l3vpn-api.yang b/models/huawei/src/main/yang/ne-l3vpn-api.yang
similarity index 100%
rename from models/demo/src/ne-l3vpn-api.yang
rename to models/huawei/src/main/yang/ne-l3vpn-api.yang
diff --git a/models/demo/src/ne-l3vpncomm-type.yang b/models/huawei/src/main/yang/ne-l3vpncomm-type.yang
similarity index 100%
rename from models/demo/src/ne-l3vpncomm-type.yang
rename to models/huawei/src/main/yang/ne-l3vpncomm-type.yang
diff --git a/models/demo/src/ne-l3vpncomm.yang b/models/huawei/src/main/yang/ne-l3vpncomm.yang
similarity index 100%
rename from models/demo/src/ne-l3vpncomm.yang
rename to models/huawei/src/main/yang/ne-l3vpncomm.yang
