public void findRecord1(GeneralizedNode<Node<String>> generalizedNode) {
        // get the alone child
        Node<String> tagNode = generalizedNode.get(0);
        // check if all the child nodes are similar
        boolean similarChildren = false;
        Iterator<Node<String>> childIter = tagNode.getChildren().iterator();
        if (childIter.hasNext()) {
            /*
             * at least one child
             */
            Node<String> child = childIter.next();
            if (!childIter.hasNext()) {
                /*
                 * single child, treat as all child similar
                 */
                similarChildren = true;
            } else {
                Node<String> nextChild = childIter.next();
                if (child.toPreOrderString().equalsIgnoreCase(nextChild.toPreOrderString())) {
                    similarChildren = true;
                    while (childIter.hasNext()) {
                        child = nextChild;
                        nextChild = childIter.next();
                        if (child.toPreOrderString().equalsIgnoreCase(
                                nextChild.toPreOrderString())) {
                            similarChildren = true;
                        } else {
                            similarChildren = false;
                            break;// no need to check further, treat as non
                                  // similar
                        }
                    }
                }
            }
        }
        if (!tagNode.getLabel().equalsIgnoreCase("tr") && similarChildren) {
            generalizedNode.dataRecordIndecator = Node.DataRecordIndecator.CHILD_CONT;
        } else {
            generalizedNode.dataRecordIndecator = Node.DataRecordIndecator.SELF;
        }
    }