diff --git a/core/api/src/main/java/org/onosproject/ui/UiTopoLayoutService.java b/core/api/src/main/java/org/onosproject/ui/UiTopoLayoutService.java
index 287cc43..0036521 100644
--- a/core/api/src/main/java/org/onosproject/ui/UiTopoLayoutService.java
+++ b/core/api/src/main/java/org/onosproject/ui/UiTopoLayoutService.java
@@ -63,7 +63,7 @@
      * @param layoutId layout identifier
      * @return set of peer layouts; empty set if layout has no peers
      */
-    Set<UiTopoLayout> getPeers(UiTopoLayoutId layoutId);
+    Set<UiTopoLayout> getPeerLayouts(UiTopoLayoutId layoutId);
 
     /**
      * Returns the set of the child layouts of the specified layout.
diff --git a/core/api/src/main/java/org/onosproject/ui/model/topo/UiTopoLayout.java b/core/api/src/main/java/org/onosproject/ui/model/topo/UiTopoLayout.java
index 604cf65..12c9de6 100644
--- a/core/api/src/main/java/org/onosproject/ui/model/topo/UiTopoLayout.java
+++ b/core/api/src/main/java/org/onosproject/ui/model/topo/UiTopoLayout.java
@@ -39,7 +39,8 @@
     public UiTopoLayout(UiTopoLayoutId id, Region region, UiTopoLayoutId parent) {
         this.id = id;
         this.region = region;
-        this.parent = parent;
+        // NOTE: root layout is its own parent...
+        this.parent = parent != null ? parent : this.id;
     }
 
     @Override
@@ -85,5 +86,13 @@
         return parent;
     }
 
-    // TODO: additional properties pertinent to the layout
+    /**
+     * Returns true if this layout instance is at the top of the
+     * hierarchy tree.
+     *
+     * @return true if this is the root layout
+     */
+    public boolean isRoot() {
+        return id.equals(parent);
+    }
 }
