submodule openconfig-rib-bgp-table-attributes {

  belongs-to openconfig-rib-bgp {
    prefix "oc-rib-bgp";
  }


  // import some basic types
  import openconfig-extensions { prefix oc-ext; }
  import openconfig-types { prefix oc-types; }
  import openconfig-rib-bgp-types { prefix oc-bgpribt; }

  // meta
  organization "OpenConfig working group";

  contact
    "OpenConfig working group
    www.openconfig.net";

  description
    "This submodule contains common data definitions for data
    related to a RIB entry, or RIB table.";


  oc-ext:openconfig-version "0.3.0";

  revision "2016-10-17" {
    description
      "OpenConfig BGP RIB refactor";
    reference "0.3.0";
  }



  grouping bgp-common-route-annotations-state {
    description
      "Data definitions for flags and other information attached
      to routes in both LOC-RIB and Adj-RIB";

    leaf last-modified {
      type oc-types:timeticks64;
      description
        "Timestamp when this path was last modified.

        The value is the timestamp in seconds relative to
        the Unix Epoch (Jan 1, 1970 00:00:00 UTC).";
    }

    leaf valid-route {
      type boolean;
      description
        "Indicates that the route is considered valid by the
        local router";
    }

    leaf invalid-reason {
      type identityref {
        base oc-bgpribt:INVALID_ROUTE_REASON;
      }
      description
        "If the route is rejected as invalid, this indicates the
        reason.";
    }

  }

  grouping bgp-loc-rib-route-annotations-state {
    description
      "Data definitions for information attached to routes in the
      LOC-RIB";

    // placeholder for route metadata specific to the LOC-RIB

  }

  grouping bgp-adj-rib-in-post-route-annotations-state {
    description
      "Data definitions for information attached to routes in the
      Adj-RIB-in post-policy table";

    leaf best-path {
      type boolean;
      description
        "Current path was selected as the best path.";
    }
  }

  grouping bgp-common-table-attrs-state {
    description
      "Common attributes attached to all routing tables";

    // placeholder for metadata associated with all tables
  }

  grouping bgp-common-table-attrs-top {
    description
      "Operational state data for common attributes attached to
      all routing tables";
    // no enclosing container as this data will fit under an
    // existing LOC-RIB container

    container state {
      config false;
      description
        "Operational state data for data related to the entire
        LOC-RIB";

      uses bgp-common-table-attrs-state;
    }
  }


}