Per quello che vale, ho creato uno strumento di Java (o Kotlin in realtà) per effecient e canonicalizzazione configurabile di file xml.
sarà sempre:
- nodi Ordinare e attributi per nome.
- Rimuovere gli spazi dei nomi (sì - potrebbe - ipoteticamente - essere un problema).
- Impronta il risultato.
Inoltre, si può dire a:
- Rimuovere un determinato elenco di nomi nodo - forse non si vuole sapere che il valore di un pezzo di metadati - dicono
<RequestReceivedTimestamp>
è cambiato.
- Ordina un determinato elenco di raccolte nel contesto del genitore - forse non ti interessa che l'ordine delle voci
<Contact>
in <ListOfFavourites>
sia cambiato.
Utilizza XSLT e fa tutto quanto sopra in modo efficiente utilizzando il concatenamento.
Limitazioni
Esso supporta l'ordinamento liste annidate - ordinamento liste più intimi prima esterna. Ma non può ordinare in modo affidabile livelli arbitrari di liste annidate ricorsivamente.
Se si dispone di tali esigenze è possibile, dopo aver utilizzato questo strumento, confrontare le matrici di byte ordinate dei risultati. saranno uguali se restano solo i problemi di smistamento delle liste.
dove trovarlo
Si può ottenere qui: XMLNormalize
fonte
2018-02-16 09:34:14