¿Editar XML pero evitar cambiar la estructura XML?

¿Editar XML pero evitar cambiar la estructura XML?

¿Es posible evitar que los usuarios cambien la estructura XML en un archivo, pero solo ingresen/modifiquen datos?

no hay nada enRestricciones/facetas XSDque especifica esto.

He vistoesta respuesta SOsobre especificar nodos de solo lectura, pero:

  1. Quiero lo contrario: el contenido del nodo debe ser editable, la estructura del nodo no.
  2. ¿Tengo que codificar algo yo mismo oSi esto es posible¿Los editores XML admiten esto?

No quiero que esto sea una solicitud de software, pero no tengo idea de qué dirección debo tomar para lograrlo.

Nota: Esto es en un entorno "controlado", es decir, los colegas tienen que ingresar los datos, pero no quiero que lo hagan.accidentalmentecambiar la estructura.

Respuesta1

xmlstarlettiene undominio que describe un documento XML como una lista de expresiones XPath: nombres de elementos y, opcionalmente, nombres y valores de atributos, ignorando el contenido de los elementos y, opcionalmente, de los atributos. Así que compare el resultado de este comando, después de canalizarlo md5sum, antes y después de editar el documento XML para decidir si las ediciones son aceptables.

Si xmlstarletno está disponible, no es complicado producir una salida similar usando un procesador XSLT.

información relacionada