completed REST/JSON interface generation integration with yang-js and yang-express. now supports complete CRUD operations against the subscriber model. need to update documentation to reflect latest changes
diff --git a/schema/cord-core.yang b/schema/cord-core.yang
index 25d3d3a..b399362 100644
--- a/schema/cord-core.yang
+++ b/schema/cord-core.yang
@@ -33,27 +33,26 @@
   
   /*** primary configuration tree for this module ***/
   
-  container cord {
-    list subscriber {
-      uses csub:subscriber-controller;
-      key "id";
+  list subscriber {
+    uses csub:subscriber-controller;
+    key "id";
 
-      description
-        "Authorative list of all subscriber instances";
+    description
+      "Authorative list of all subscriber instances";
 
-      leaf humanReadableName {
-        config false;
-        type string {
-          pattern '^cordSubscriber-\w+$';
-        }
+    leaf humanReadableName {
+      config false;
+      type string {
+        pattern '^cordSubscriber-\w+$';
       }
-      action delete;
+    }
+    action delete;
+  }
+
+  // here we augment the /api/tenant API configuration tree in 'xos' module
+  augment "/xos:api/xos:tenant" {
+    container cord {
+      node:link subscriber { path "/cord:subscriber"; }
     }
   }
-
-  // here we augment the /api/tenant/cord API configuration tree in 'xos' module
-  augment "/xos:api/xos:tenant" {
-    container cord { node:map "/cord:cord"; }
-  }
-  
 }
diff --git a/schema/cord-subscriber.yang b/schema/cord-subscriber.yang
index 8f3dae5..7fa098e 100644
--- a/schema/cord-subscriber.yang
+++ b/schema/cord-subscriber.yang
@@ -119,11 +119,11 @@
     node:view "features identity related";
 
     container features {
-      leaf cdn            { node:link "../../services/cdn/enabled"; }
-      leaf uplink-speed   { node:link "../../uplink-speed"; }
-      leaf downlink-speed { node:link "../../downlink-speed"; }
-      leaf uverse         { node:link "../../services/uverse/enabled"; }
-      leaf status         { node:link "../../status"; }
+      node:link cdn            { path "../services/cdn/enabled"; }
+      node:link uplink-speed   { path "../uplink-speed"; }
+      node:link downlink-speed { path "../downlink-speed"; }
+      node:link uverse         { path "../services/uverse/enabled"; }
+      node:link status         { path "../status"; }
       
       action update {
         description "when invoked, updates the features container (PUT)";
@@ -131,8 +131,8 @@
     }
     
     container identity {
-      leaf account-num { node:link "../../service-specific-id"; }
-      leaf name        { node:link "../../name"; }
+      node:link account-num { path "../service-specific-id"; }
+      node:link name        { path "../name"; }
       
       action update {
         description "when invoked, updates the identity container (PUT)";
diff --git a/schema/corenova-node.yang b/schema/corenova-node.yang
index 104c2e4..e0873e0 100644
--- a/schema/corenova-node.yang
+++ b/schema/corenova-node.yang
@@ -15,29 +15,18 @@
   feature corenova-node {
     description
       "this is to indicate the agent supports dynamic schema node
-       link/map/view.";
+       link and view constraints.";
   }
     
   extension link {
     description
-      "Links the current leaf (or leaf-list) to an alternate leaf in the
-       schema data tree. The current leaf becomes a 'mirror' instance
-       of the target node.";
-    argument target-node-path {
-      yin-element true;
-    }
-  }
-
-  extension map {
-    description
-      "Maps the current container (or list entry) to an alternate container
-       in the schema data tree. The target-node-path must not map to
-       leaf or leaf-list nodes. The current container will map to
-       additional data nodes found inside the alternate container. The
-       mapped data nodes behave similarly to the 'link' extension
-       case. It can be defined one or more times within the same
-       container to map across modules and other subtrees.";
-    argument target-node-path {
+      "Links a new 'link-name' element to an alternate data node element in
+       the schema data tree referenced by the 'path' sub statement. It
+       can be used within 'container' or 'list' type data element to
+       hold one or more such 'links' as part of its configuration data
+       tree.  The new link element becomes a 'mirror' instance of the
+       target node found in the path expression.";
+    argument link-name {
       yin-element true;
     }
   }
diff --git a/schema/xos-core.yang b/schema/xos-core.yang
index 82d1a7e..3de5ba3 100644
--- a/schema/xos-core.yang
+++ b/schema/xos-core.yang
@@ -41,9 +41,9 @@
   typedef unique-identifier {
     description "defines valid formats for external reference id";
     type union {
+      type uint32 { range 1..max; }
       type yang:uuid;
       type inet:uri;
-      type uint32 { range 1..max; }
     }
   }