Uma instância dessa interface é retornada pelo método result() presente nas interfaces Writer e Editor.
A interface Result fornece métodos que permitem configurar a transformação de determinado documento XML para outros formatos como String, arquivo, etc.
Um exemplo completo de como a interface Result pode ser utilizada é apresentado abaixo:
import java.io.File; import net.sf.xisemele.api.Result; import net.sf.xisemele.impl.XisemeleFactory;
Result result =
XisemeleFactory.newXisemele().createWriter("raiz")
.within()
.element("elementoA").within()
.element("elementoB", "Valor B")
.element("elementoC", Boolean.TRUE)
.endWithin()
.element("elementoC", "Valor C")
.endWithin()
.result();
String xml = result
.encoding("ISO-8859-1") // (1)
.ident(true) // (2)
.identNumber(3) // (3)
.toFile(new File("arquivo1.xml")) // (4)
.toFile("arquivo2.xml") // (5)
.toXML(); // (6)
System.out.println( xml );
O método Result.encoding(String) especifica o encoding que será aplicado na transformação do XML. No caso da chamada (1) foi atribuído o encoding ISO-8859-1. Os métodos Result.ident(boolean) e Result.identNumber(int) especificam se o XML resultante será identado ou não e a quantidade de espaços que será aplicada em cada nível da identação, respectivamente. Em (2) foi definido que o XML será identado, especificando-se o valor true e na sequência a chamada (3) define que será aplicado 3 espaços para cada nível na identação. Os métodos Result.toFile(java.io.File) e Result.toFile(String) salvam o XML para o arquivo especificado por parâmetro, como pode ser observado em (4) e (5). Por último, o documento XML é convertido para String através do método Result.toXML() como pode ser observado na chamada (6).
O trecho de código acima gera os arquivos arquivo1.xml e arquivo2.xml e uma saída no console contendo o seguinte XML:
<?xml version="1.0" encoding="ISO-8859-1"?>
<raiz>
<elementoA>
<elementoB>Valor B</elementoB>
<elementoC>true</elementoC>
</elementoA>
<elementoC>Valor C</elementoC>
</raiz>