He estado experimentando con el uso de MS Excel 2007 para editar datos tabulares almacenados en un archivo XML. Hace un buen trabajo al importar e incluso validar los datos XML con el esquema (archivo xsd), pero cuando los exporto, quita los atributos xmlns, xlmns: xsi y xsi: schemaLocation del elemento raíz. También cambia el espacio de nombre predeterminado a un espacio de nombre explícito.¿Hay alguna manera de hacer que Excel preserve los atributos XML en el elemento raíz?
He aquí una comparación antes/después:
Antes (el archivo XML antes de su importación en Excel)
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<database
xmlns="experimentManager"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="experimentManager Database.xsd">
<conditionTokens>
...
</conditionTokens>
<participants>
...
</participants>
</database>
Después (el archivo XML después de la exportación de Excel)
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<ns1:database xmlns:ns1="experimentManager">
<ns1:conditionTokens>
...
</ns1:conditionTokens>
<ns1:participants>
...
</ns1:participants>
</ns1:database>
¿Hay alguna manera de evitar que Excel elimine estos atributos y el desorden? con los espacios de nombres? He leído la ayuda de MS sobre mapeo XML e importación/exportación, pero no parece haber ninguna configuración en la GUI para lo que quiero hacer. Si necesito escribir una macro personalizada, esa es una posibilidad, pero prefiero no hacer esto si hay una manera mejor/más fácil.
Una segunda pregunta: ¿Hay una mejor herramienta para permitir una fácil edición de ciertas partes de los archivos XML utilizando una interfaz de usuario similar a Excel?
Tenga en cuenta que Excel no cambia el espacio de nombres. Solo está soltando el 'xsi: schemaLocation' y luego eliminando el espacio de nombres' xsi' no utilizado. –