private Document filterResources(Document resourceDoc, String searchText) {

    if (searchText == null || searchText.length() == 0) {
      return resourceDoc;
    }

    Element root = resourceDoc.getDocumentElement();
    Element[] children = XMLTool.selectElements(root, "//resource");

    for (Element child : children) {
      String name = child.getAttribute("name");
      if (!name.toLowerCase().contains(searchText.toLowerCase())) {
        child.getParentNode().removeChild(child);
      }
    }

    return resourceDoc;
  }