XQuery(XML Query, XML 쿼리)는 일반적으로 XML, 텍스트, 벤더 특정 확장 데이터 포맷(JSON, 바이너리 등)으로 되어 있는, 정형, 비정형 데이터를 질의하고 변환하는 질의, 함수형 프로그래밍 언어이다. 이 언어는 W3C의 XML 쿼리 워킹 그룹에 의해 개발되었다. 작업은 XSL 워킹 그룹의 XSLT의 개발과 긴밀히 조율되었다. 이 두 단체는 XQuery의 하위 집합인 XPath을 함께 책임지고 있다.
XQuery 1.0은 2007년 1월 23일, W3C 권고안이 되었다.[4]
XQuery 3.0은 2014년 4월 8일 W3C 권고안이 되었다.[5]
XQuery 3.1은 2017년 3월 21일 W3C 권고안이 되었다.[6]
아래의 샘플 XQuery 코드는 셰익스피어의 연극 햄릿마다 고유한 화자를 나열하며 hamlet.xml에 인코딩되어 있다.
<html><body> { for $act in doc("hamlet.xml")//ACT let $speakers := distinct-values($act//SPEAKER) return <div> <h1>{ string($act/TITLE) }</h1> <ul> { for $speaker in $speakers return <li>{ $speaker }</li> } </ul> </div> } </body></html>