fbpx
Wikipedia

XQuery

XQuery es un lenguaje de consulta diseñado para colecciones de datos XML. Es semánticamente similar a SQL, aunque incluye algunas capacidades de programación.

XQuery 1.0 fue desarrollado por el grupo de trabajo de Consulta XML del W3C. El trabajo fue estrechamente coordinado con el desarrollo de XSLT 2.0 por el Grupo de trabajo XSL; los dos grupos compartieron la responsabilidad del XPath 2.0, que es un subconjunto de XQuery 1.0. XQuery 1.0 es una Recomendación del W3C desde el 23 de enero de 2007.

Características

XQuery proporciona los medios para extraer y manipular información de documentos XML, o de cualquier fuente de datos que pueda ser representada mediante XML como, por ejemplo, bases de datos relacionales o documentos ofimáticos.

XQuery utiliza expresiones XPath para acceder a determinadas partes del documento XML. Añade, además, expresiones similares a las usadas en SQL, conocidas como expresiones FLWOR. Las expresiones FLWOR toman su nombre de los 5 tipos de sentencias de las que pueden estar compuestas: FOR, LET, WHERE, ORDER BY y RETURN.

También incluye la posibilidad de construir nuevos documentos XML a partir de los resultados de la consulta. Se puede usar una sintaxis similar a XML si la estructura (elementos y atributos) es conocida con antelación, o usar expresiones de construcción dinámica de nodos en caso contrario. Todos estos constructores se definen como expresiones dentro del lenguaje, y se pueden anidar arbitrariamente.

El lenguaje se basa en el modelo en árbol de la información contenida en el documento XML, que consiste en siete tipos distintos de nodo: elementos, atributos, nodos de texto, comentarios, instrucciones de procesamiento, espacios de nombres y nodos de documentos.

El sistema de tipos usado por el lenguaje considera todos los valores como secuencias, asumiéndose un valor simple como una secuencia de un solo elemento. Los elementos de una secuencia pueden ser valores atómicos o nodos. Los valores atómicos pueden ser números enteros, cadenas de texto, valores booleanos, etc. La lista completa de los tipos disponibles está basada en las primitivas definidas en XML Schema.

XQuery 1.0 no incluye capacidad de actualizar los documentos XML. Tampoco puede realizar búsquedas textuales. Estas dos capacidades están siendo objeto de desarrollo para su posible incorporación en la siguiente versión del lenguaje.

Ejemplos

El siguiente ejemplo de código XQuery lista los personajes que aparecen en cada acto del Hamlet de Shakespeare, obtenidas a partir del documento hamlet.xml.

<html><head/><body> { for $act in doc("hamlet.xml")//ACT let $speakers := distinct-values($act//SPEAKER) return <span> <h1>{ $act/TITLE/text() }</h1> <ul> { for $speaker in $speakers return <li>{ $speaker }</li> } </ul> </span> } </body></html> 

XQuery es un lenguaje de programación funcional que consta en su totalidad de expresiones. No hay sentencias, aun cuando algunas de las palabras claves utilizadas puede sugerir un comportamiento similar al de una sentencia. Para ejecutar una función, la expresión dentro del cuerpo de la misma se evalúa y se retorna el resultado obtenido. Por ejemplo, para escribir una función que duplique el valor suministrado como argumento, escribiríamos:

declare function local:doubler($x) { $x * 2 } 

Para escribir una consulta XQuery que retorne el texto "Hola, Mundo", escribimos la expresión:

"Hola, Mundo" 

Aplicaciones

Una relación de algunos ejemplos de uso de XQuery:

  • Extraer información de una base de datos para usarla en un Servicio Web.
  • Generar un resumen de la información almacenada en una base de datos XML.
  • Realizar búsquedas textuales en la web y compilar los resultados de la misma.
  • Seleccionar y transformar datos de XML a XHTML de forma que se puedan publicar en la Web.
  • Obtener datos desde diferentes fuentes con vistas a ser integradas por la aplicación.
  • Dividir un documento XML que representa una serie de múltiples transacciones en varios documentos XML, uno por cada transacción.

Véase también

Enlaces externos

  • Recomendación W3C, de enero de 2007
  • (basado en el base de datos BaseX)
  •   Datos: Q850661
  •   Multimedia: XQuery

xquery, lenguaje, consulta, diseñado, para, colecciones, datos, semánticamente, similar, aunque, incluye, algunas, capacidades, programación, desarrollado, grupo, trabajo, consulta, trabajo, estrechamente, coordinado, desarrollo, xslt, grupo, trabajo, grupos, . XQuery es un lenguaje de consulta disenado para colecciones de datos XML Es semanticamente similar a SQL aunque incluye algunas capacidades de programacion XQuery 1 0 fue desarrollado por el grupo de trabajo de Consulta XML del W3C El trabajo fue estrechamente coordinado con el desarrollo de XSLT 2 0 por el Grupo de trabajo XSL los dos grupos compartieron la responsabilidad del XPath 2 0 que es un subconjunto de XQuery 1 0 XQuery 1 0 es una Recomendacion del W3C desde el 23 de enero de 2007 Indice 1 Caracteristicas 2 Ejemplos 3 Aplicaciones 4 Vease tambien 5 Enlaces externosCaracteristicas EditarXQuery proporciona los medios para extraer y manipular informacion de documentos XML o de cualquier fuente de datos que pueda ser representada mediante XML como por ejemplo bases de datos relacionales o documentos ofimaticos XQuery utiliza expresiones XPath para acceder a determinadas partes del documento XML Anade ademas expresiones similares a las usadas en SQL conocidas como expresiones FLWOR Las expresiones FLWOR toman su nombre de los 5 tipos de sentencias de las que pueden estar compuestas FOR LET WHERE ORDER BY y RETURN Tambien incluye la posibilidad de construir nuevos documentos XML a partir de los resultados de la consulta Se puede usar una sintaxis similar a XML si la estructura elementos y atributos es conocida con antelacion o usar expresiones de construccion dinamica de nodos en caso contrario Todos estos constructores se definen como expresiones dentro del lenguaje y se pueden anidar arbitrariamente El lenguaje se basa en el modelo en arbol de la informacion contenida en el documento XML que consiste en siete tipos distintos de nodo elementos atributos nodos de texto comentarios instrucciones de procesamiento espacios de nombres y nodos de documentos El sistema de tipos usado por el lenguaje considera todos los valores como secuencias asumiendose un valor simple como una secuencia de un solo elemento Los elementos de una secuencia pueden ser valores atomicos o nodos Los valores atomicos pueden ser numeros enteros cadenas de texto valores booleanos etc La lista completa de los tipos disponibles esta basada en las primitivas definidas en XML Schema XQuery 1 0 no incluye capacidad de actualizar los documentos XML Tampoco puede realizar busquedas textuales Estas dos capacidades estan siendo objeto de desarrollo para su posible incorporacion en la siguiente version del lenguaje Ejemplos EditarEl siguiente ejemplo de codigo XQuery lista los personajes que aparecen en cada acto del Hamlet de Shakespeare obtenidas a partir del documento hamlet xml lt html gt lt head gt lt body gt for act in doc hamlet xml ACT let speakers distinct values act SPEAKER return lt span gt lt h1 gt act TITLE text lt h1 gt lt ul gt for speaker in speakers return lt li gt speaker lt li gt lt ul gt lt span gt lt body gt lt html gt XQuery es un lenguaje de programacion funcional que consta en su totalidad de expresiones No hay sentencias aun cuando algunas de las palabras claves utilizadas puede sugerir un comportamiento similar al de una sentencia Para ejecutar una funcion la expresion dentro del cuerpo de la misma se evalua y se retorna el resultado obtenido Por ejemplo para escribir una funcion que duplique el valor suministrado como argumento escribiriamos declare function local doubler x x 2 Para escribir una consulta XQuery que retorne el texto Hola Mundo escribimos la expresion Hola Mundo Aplicaciones EditarUna relacion de algunos ejemplos de uso de XQuery Extraer informacion de una base de datos para usarla en un Servicio Web Generar un resumen de la informacion almacenada en una base de datos XML Realizar busquedas textuales en la web y compilar los resultados de la misma Seleccionar y transformar datos de XML a XHTML de forma que se puedan publicar en la Web Obtener datos desde diferentes fuentes con vistas a ser integradas por la aplicacion Dividir un documento XML que representa una serie de multiples transacciones en varios documentos XML uno por cada transaccion Vease tambien EditarXML XPath SQLEnlaces externos EditarRecomendacion W3C de enero de 2007 Live Demo basado en el base de datos BaseX Datos Q850661 Multimedia XQueryObtenido de https es wikipedia org w index php title XQuery amp oldid 130729033, wikipedia, wiki, leyendo, leer, libro, biblioteca,

español

, española, descargar, gratis, descargar gratis, mp3, video, mp4, 3gp, jpg, jpeg, gif, png, imagen, música, canción, película, libro, juego, juegos