Ho provato a utilizzare MS Excel 2007 per modificare i dati tabulari memorizzati in un file XML. Fa un buon lavoro di importazione e persino di validazione dei dati XML rispetto allo schema (file xsd), ma quando esporto, rilascia gli attributi xmlns, xlmns: xsi e xsi: schemaLocation dall'elemento root. Cambia anche lo spazio dei nomi predefinito in uno spazio dei nomi esplicito.Esiste un modo per far sì che Excel mantenga gli attributi XML nell'elemento radice?
Ecco una prima/dopo il confronto:
Prima (il file XML prima dell'importazione in 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>
Dopo (il file XML dopo l'esportazione da 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>
Esiste un modo per impedire a Excel di rimuovere questi attributi e incasinare con gli spazi dei nomi? Ho letto l'aiuto di MS su mappatura XML e importazione/esportazione, ma non sembrano esserci impostazioni nella GUI per quello che voglio fare. Se ho bisogno di scrivere una macro personalizzata, questa è una possibilità, ma preferirei non farlo se c'è un modo migliore/più semplice.
Una seconda domanda: esiste uno strumento migliore per consentire la modifica facile di determinate parti di file XML utilizzando un'interfaccia utente simile a Excel?
Si noti che Excel non sta cambiando lo spazio dei nomi. Elimina solo 'xsi: schemaLocation' e quindi rimuove lo spazio dei nomi' xsi' non utilizzato. –