Node first = n.getFirstChild(); for (n=first; n != null; n = n.getNextSibling()) { if ("table".equalsIgnoreCase(n.getNodeName())) parseTable(n); } for (int i=1; i <= lastLvl; i++) { for (n=first; n != null; n = n.getNextSibling()) { if ("set".equalsIgnoreCase(n.getNodeName())) parseBeanSet(n, sets[i-1], i); } }