@Override
    public RemComponent build(
        Node element, Orientation orientation, Stack<String> parentPath, FocusListener listener) {
      String groupId = DocumentHelper.getAttributeValue("elem", element).orElse("");
      Stack<String> path = new Stack<String>();
      path.addAll(parentPath);
      path.push(groupId);

      RemInterviewGroup group = new RemInterviewGroup(identifierFromPath(path));
      group.setLabel(DocumentHelper.getAttributeValue("label", element).orElse(""));
      Orientation childOrientation = orientation.orthogonalOrientation();
      for (Node childNode : DocumentHelper.getChildElements(element)) {
        RemComponent childComponent =
            RemComponentBuilder.buildComponent(childNode, childOrientation, path, listener);
        group.addSubComponent(childComponent);
      }
      return group;
    }