Como formar un Doc. XML

Rock
14 de Enero del 2005
Buenas noches a todos

Tengo un servlet que genera un documento xml, este documento esta formado de la siguiente manera:

<project>
<tasks>
<task id=0 name=rr />
<task id=1 name=aa >
<task id=3 name=bb>
<task id=4 name=cc />
</task>
</task>
<task id=2 name=dd />
</tasks>
</project>

bueno la forma del documento xml depende de los datos que extraigo de una DB, pero es un ejemplo.
Ahora cada task es una tarea o registro en la base y cada registro tiene varios atributos entre ellos 2 que son "IPadre" que puede tener el valor de "Parent" y "Normal"; y "Identacion" que es un int, si es identacion = 0 puede ser un Parent o Normal, pero si Identacion" es mayor a 0 eso quiere decir que son hijos, como en el ejemplo de las tareas con id 3 y 4.
en mi programa hago un while que recorre los registros y los va imprimiendo en forma secuencial ascendente, voy a poner parte de mi codigo:

boolean haschild igual strTypeOfTask.equals("Parent");
if(haschild)
{
System.out.println("<task id='"+iIndice+"' name='"+ActNom+"' >");
}
if(!haschild)
{
System.out.println("<task id='"+iIndice+"' name='"+ActNom+"' />");
}

mi problema es como ponerle el tag de cierre </task> cuando una tarea tiene hijos.
Alguien me puede ayudar o aconsejar que podria hacer.
Gracias

Gito®
14 de Enero del 2005
Te sugiero que utilises las clases para la manipulacion de XML "org.w3c.dom .."

Aunque yo prefiero usar la libreria JDOM que es mas facil de manipular (encuentrala en w3.jdom.org)