module cord-core {
  
  namespace "urn:onlab:cord";
  prefix cord;
  yang-version 1.1;

  organization
   "Open Networking Lab (CORD) / Corenova Technologies";

  contact
    "Larry Peterson <llp@onlab.us>
     Peter K. Lee <peter@corenova.com>";

  description
   "This module contains a collection of core models for CORD.

    Copyright (c) 2016 ON.LAB 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 of the Apache License, Version 2.0 which accompanies this
    distribution, and is available at
    (http://www.apache.org/licenses/LICENSE-2.0).";
  
  revision 2016-07-22 {
    description "Initial revision.";
  }

  import xos-core        { prefix xos; }
  import cord-subscriber { prefix csub; }
  import corenova-node   { prefix node; }
  
  /*** primary configuration tree for this module ***/
  
  container cord {
    list subscriber {
      uses csub:subscriber-controller;
      key "id";

      description
        "Authorative list of all subscriber instances";

      leaf humanReadableName {
        config false;
        type string {
          pattern '^cordSubscriber-\w+$';
        }
      }
      action delete;
    }
  }

  // here we augment the /api/tenant/cord API configuration tree in 'xos' module
  augment "/xos:api/xos:tenant" {
    container cord { node:map "/cord:cord"; }
  }
  
}
