quiero aprender como se crea un nodo de xml con php
yo tengo este ejemplo pero en java y quiero pasarlo en php

response.setContentType("application/xml");
PrintWriter out = response.getWriter();
DAOFactory daoFactory = SystemDAOFactory.getDAOFactory();
ProductoDAO productoDAO = daoFactory.getProductoDAO();
ProductoVO productoVO = new ProductoVO();
String xmlRetorno = "<?xml version=\"1.0\"?>\n<data>\n";
String finalArchivo = "</data>";
String medioArchivo = "";
try {
List listaProductos = productoDAO.searchProducto(productoVO);
Iterator it_pro = listaProductos.iterator();
while (it_pro.hasNext()){
productoVO = (ProductoVO)it_pro.next();
medioArchivo += "<producto>\n";
medioArchivo += "<id>"+productoVO.getProducto()+"</id>\n";
medioArchivo += "<nombre>"+productoVO.getNombreProducto()+"</nombre>\n";
medioArchivo += "<tipo>"+productoVO.getTipoProducto()+"</tipo>\n";
medioArchivo += "<detalle>"+productoVO.getDetalleProducto()+"</detalle>\n";
medioArchivo += "<venta>"+productoVO.getValorVenta()+"</venta>\n";
medioArchivo += "<compra>"+productoVO.getValorCompra()+"</compra>\n";
medioArchivo += "</producto>\n";
}
} catch (DAOException ex) {
ex.printStackTrace();
}
xmlRetorno += medioArchivo;
xmlRetorno += finalArchivo;
out.print(xmlRetorno);
out.close();
y no se como comenzar por favor ayudar