Uso de espacios de nombres en Groovy MarkupBuilder
Quiero tener el siguiente resultado:
<?xml version="1.0" encoding="UTF-8"?>
<structure:structuralDataRoot xmlns:register="http://www.test.ch/register/1" xmlns:structure="http://test.ch/structure/1" >
<structure:tester>ZH</structure:tester>
<structure:surveyYear>2001</structure:surveyYear>
<structure:surfaceData>
<structure:houseSurfaceData>
<structure:creationDate>2001-01-01</structure:creationDate>
<structure:localFarmId>
<register:houseIdCategory>token</register:houseIdCategory>
<register:houseId>token</register:houseId>
</structure:localFarmId>
</structure:houseSurfaceData>
</structure>
Puedo agregar espacio de nombres a un xml como este:
xml.records('xmlns:structure' :"http://test.ch/structure/1" ...
Pero, ¿cómo puedo hacer un prefijo de espacio de nombres para un elemento xml? La única solución que encontré fue esta:
tester('xmlns:structure' :"http://test.ch/structure/1", 'ZH')
Pero esto me da el siguiente resultado:
<tester xmlns:structure='http://test.ch/structure/1'>ZH</tester>
Es sintácticamente correcto, pero no es agradable de leer cuando tienes muchos nodos.