Я нашел ответ
ArrayCategory=new ArrayList<Category>();
//get the root element
//2
Element docEle = dom.getDocumentElement();
NodeList nl = docEle.getElementsByTagName("categorie");
//3
if(nl != null && nl.getLength() > 0) {
//3.1
for(int i = 0 ; i < nl.getLength();i++) {
//3.1
Element element_categorie = (Element)nl.item(i);
//3.2
String id_cat=element_categorie.getAttribute("id_cat");
String titreCat=element_categorie.getAttribute("titre");
String uriicon = getTextValue(element_categorie,"icone");
Category catTemp = new Category(id_cat, titreCat, uriicon);
catTemp.vsousCat= new ArrayList<Sous_category>();
//3.4
//NodeList sscatList= e1.getElementsByTagName("sous_categorie");
NodeList sousNodeList = element_categorie.getElementsByTagName("sous_categorie");
for(int j=0; j<sousNodeList.getLength();j++){
//3.4.1
Element sous_element_categorie = (Element) sousNodeList.item(j);
//3.4.2
String s_idcat = sous_element_categorie.getAttribute("id_sscat");
String s_titre= getTextValue(sous_element_categorie,"titre");
String s_description= getTextValue(sous_element_categorie,"description");
String s_uriicon = getTextValue(sous_element_categorie,"icone");
Sous_category sous_catTemp = new Sous_category(s_idcat, s_titre, s_description, s_uriicon);
//3.4.3 Ajouter SubCatTemp à Cate
catTemp.vsousCat.add(sous_catTemp);
//catTemp.sousCat.add(subTemp);
}
//add Category to the Arraylist of Category
ArrayCategory.add(catTemp);
}
}