Ajuda com Api DOM com XML

Caros Amigos venho aqui pedir ajuda de vocês, pois sou iniciante em java e preciso muito fazer um trabalho final da cadeira da faculdade. que devo utilizar a api Dom do java para simplesmente ler e escrever em um arquivo Xml, vou tentar deixar mais claro possivel minha explicação.

tenho as seguintes classes.

classe materia com atributos codigo e nome

classe pergunta com atributos descricao e nivel

classe resposta com atributos descricao e correta.

o meu problema é que não achei nenhuma maneira de gravar os dados no xml com objetos.

estrutura do xml

então para cada pergunta gravada no xml tem que ter quatro resposta, ate o momento tenho feito desta forma.

       //Cria novo elemento
        Element child = doc.createElement("pergunta");
        child.setAttribute("Descrição", pergunta);
        child.setAttribute("Materia", materia);
        child.setAttribute("Nivel", nivel);
       
        Element resp = doc.createElement("resposta");
        resp.setAttribute("Descrição", resposta);
        resp.setAttribute("correta", correta);
        
        
        Element resp2 = doc.createElement("resposta2");
        resp2.setAttribute("Descrição", resposta2);
        resp2.setAttribute("correta", correta2);
        
        Element resp3 = doc.createElement("resposta3");
        resp3.setAttribute("Descrição", resposta3);
        resp3.setAttribute("correta", correta3);
        
        Element resp4 = doc.createElement("resposta4");
        resp4.setAttribute("Descrição", resposta4);
        resp4.setAttribute("correta", correta4);

os atributos são passados através do construtor das classe e que depois repasso individualmente para o metodo do XML.

então gostaria de saber se a uma maneira de inserir estes dados com array list ou vector para o xml.

se agluem poder me ajudar eu agradeço.