XmlTag (String subTag, String withValue, String forTag, XmlTag insideRoot) { final XmlTag[] forTags = insideRoot.findSubTags(forTag); for (XmlTag tag : forTags) { final XmlTag[] allTags = tag.findSubTags(subTag); for (XmlTag curTag : allTags) { if (curTag.getName().equals(subTag) && curTag.getValue().getTrimmedText().equalsIgnoreCase(withValue)) { return tag; } } } return null; }