Addition of common model.
Change-Id: If5fd6bae01a59ebf9d27f8369ac3403c83f70fad
diff --git a/models/common/src/main/yang/ietf-complex-types@2011-03-15.yang b/models/common/src/main/yang/ietf-complex-types@2011-03-15.yang
new file mode 100644
index 0000000..dd967ba
--- /dev/null
+++ b/models/common/src/main/yang/ietf-complex-types@2011-03-15.yang
@@ -0,0 +1,91 @@
+module ietf-complex-types {
+
+ namespace "urn:ietf:params:xml:ns:yang:ietf-complex-types";
+ prefix "ct";
+
+ organization
+ "NETMOD WG";
+
+ contact
+ "Editor: Bernd Linowski
+ <bernd.linowski.ext@nsn.com>
+ Editor: Mehmet Ersue
+ <mehmet.ersue@nsn.com>
+ Editor: Siarhei Kuryla
+ <s.kuryla@gmail.com>";
+
+ description
+ "YANG extensions for complex types and typed instance
+ identifiers.
+
+ Copyright (c) 2011 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 6095; see
+ the RFC itself for full legal notices.";
+
+ revision 2011-03-15 {
+ description "Initial revision.";
+ }
+
+ extension complex-type {
+ description "Defines a complex-type.";
+ reference "Section 2.2, complex-type Extension Statement";
+ argument type-identifier {
+ yin-element true;
+ }
+ }
+
+ extension extends {
+ description "Defines the base type of a complex-type.";
+ reference "Section 2.5, extends Extension Statement";
+ argument base-type-identifier {
+ yin-element true;
+ }
+ }
+ extension abstract {
+ description "Makes the complex-type abstract.";
+ reference "Section 2.6, abstract Extension Statement";
+ argument status;
+ }
+
+ extension instance {
+ description "Declares an instance of the given
+ complex type.";
+ reference "Section 2.3, instance Extension Statement";
+ argument ct-instance-identifier {
+ yin-element true;
+ }
+ }
+
+ extension instance-list {
+ description "Declares a list of instances of the given
+ complex type";
+ reference "Section 2.4, instance-list Extension Statement";
+ argument ct-instance-identifier {
+ yin-element true;
+ }
+ }
+
+ extension instance-type {
+ description "Tells to which type instance the instance
+ identifier refers.";
+ reference "Section 3.2, instance-type Extension Statement";
+ argument target-type-identifier {
+ yin-element true;
+ }
+ }
+
+ feature complex-types {
+ description "Indicates that the server supports
+ complex types and instance identifiers.";
+ }
+
+ }