Saltar la navegación

3.5.5.- XQuery Update Facility.

El lenguaje XQuery solo proporciona expresiones para la realización de consultas sobre documentos XML, pero no su actualización (inserción, modificación o eliminación de nodos).

XQuery Update Facility es una extensión de XQuery que permite la actualización de documentos mediante las cláusulas insert, delete, replace y rename.

Dibujo que muestra  un cartel gris claro con las palabras: Update Xquery (azul), insert(lila), delete(rojo), rename(verde), replace(turquesa).

El funcionamiento de las cláusulas de XQuery Update es el siguiente:

  • insert. Permite la inserción de uno o varios nodos antes (before) o después (after) del nodo indicado. También se puede insertar al principio (as first into) o al final del documento (as last into).
  • delete. Elimina uno o varios nodos del documento.
  • replace. Tiene dos funciones:
    • Modificar el valor del nodo
    • Modificar el nodo completo
  • rename. Renombra un nodo (elemento, atributo o instrucciones de proceso) sin afectar a su contenido.

A continuación te mostramos dos ejemplos sencillos, uno de insert y otro de delete:

  • Eliminar la empresa de id=2 en el documento Empresa.xml: delete node doc(Empresa.xml)//empresa[@id=2]
  • Insertar el nodo tipoAccesible/tipo al final del documento /Aulas/aula3 insert node tipoAccesible/tipo as last into doc(Aulas/aula3.xml)//aula

En el siguiente enlace puedes otros ejemplos de actualizaciones usando XQuery Update:

Ejemplos de XQuery Update

Autoevaluación

Señala si la siguiente afirmación es verdadera o falsa.

Pregunta 1

Mediante rename se puede sustituir el valor de un nodo.

Para saber más

En el siguiente enlace puedes ver un documento tipo resumen con muchos de los aspectos tratados en esta unidad hasta el momento.

XML y Bases de Datos.