XQuery: Difference between revisions
m (using an external editor) |
m (→XQuery Engines) |
||
(15 intermediate revisions by 2 users not shown) | |||
Line 1: | Line 1: | ||
{{Incomplete}} | |||
== Definition == | == Definition == | ||
Line 5: | Line 6: | ||
Xqupdate, (XQuery Update Facility) is a recent (2007) language for updating xml data. There is an older proposal, XUpdate | Xqupdate, (XQuery Update Facility) is a recent (2007) language for updating xml data. There is an older proposal, XUpdate | ||
See also [[XML | See also [[XML database]]s, servers in which you can plug XML "as is" and get it back with Xquery. Such DBMS also may support [[XPath]], [[XSLT]] and other means. | ||
This is just a page with links. | This is just a page with links. | ||
See | See [[XQuery tutorial - basics]] | ||
== Documentation == | == Documentation == | ||
Line 20: | Line 21: | ||
** [http://www.w3.org/TR/query-datamodel/ XML Query 1.0 and XPath 2.0 Data Model] | ** [http://www.w3.org/TR/query-datamodel/ XML Query 1.0 and XPath 2.0 Data Model] | ||
** [http://www.w3.org/TR/xquery-semantics/ XQuery 1.0 and XPath 2.0 Formal Semantics]. Easy bedtime reading ;) | ** [http://www.w3.org/TR/xquery-semantics/ XQuery 1.0 and XPath 2.0 Formal Semantics]. Easy bedtime reading ;) | ||
* [http://www.w3.org/TR/xqupdate/ | * [http://www.w3.org/TR/xquery-operators/ XQuery 1.0 and XPath 2.0 Functions and Operators] | ||
* [http://www.w3.org/TR/xqupdate/ XQuery Update Facility]. (W3C Candidate Recommendation 09 June 2009) | |||
* [http://www.w3.org/TR/xpath20/ Xpath 2.0] is used both by XSLT 2.0 and XQuery. XQuery is an extension of XPath 2.0 and both XSLT 2.0 and XQuery 2.0 share the same data model. | * [http://www.w3.org/TR/xpath20/ Xpath 2.0] is used both by XSLT 2.0 and XQuery. XQuery is an extension of XPath 2.0 and both XSLT 2.0 and XQuery 2.0 share the same data model. | ||
* [http://xmldb-org.sourceforge.net/xupdate/index.html Xupdate]. Not a W3C standard, can be used to update some XML databases (not updated since 2000 an will be replaced by XML Query Update). Xupdate looks a lot like XSLT. | * [http://xmldb-org.sourceforge.net/xupdate/index.html Xupdate]. Not a W3C standard, can be used to update some XML databases (not updated since 2000 an will be replaced by XML Query Update). Xupdate looks a lot like XSLT. | ||
=== XQuery Tutorials === | === XQuery Tutorials === | ||
See [[XQuery tutorial - basics]] ! | |||
* [http://en.wikipedia.org/wiki/XQuery XQuery] (Wikipedia article) | * [http://en.wikipedia.org/wiki/XQuery XQuery] (Wikipedia article) | ||
=== Other === | === Other === | ||
Line 41: | Line 37: | ||
== Software == | == Software == | ||
See also [http://www.sqlsummit.com/XQueryProv.htm XQuery Engines, Processors, Providers] at SQLSummit, retr. Jan 2010. | |||
=== XML databases === | === XML databases === | ||
Line 50: | Line 48: | ||
* [http://www.sqlsummit.com/XQueryProv.htm XQuery Engines, Processors, Providers] A list of products by SQL Summit.com | * [http://www.sqlsummit.com/XQueryProv.htm XQuery Engines, Processors, Providers] A list of products by SQL Summit.com | ||
* [http://www.zorba-xquery.com/ Zorba] ships with a PHP language binding that provides some basic features in order to prepare and execute queries with Zorba (2013) | |||
* [http://saxon.sourceforge.net/ SAXON] XSLT and XQuery Processor. There is a free version. (works). | * [http://saxon.sourceforge.net/ SAXON] XSLT and XQuery Processor. There is a free version. (works). | ||
* [http://sourceforge.net/projects/xqengine/ XQEngine - XML Query Engine] implements XQuery - sourceforge project. | * [http://sourceforge.net/projects/xqengine/ XQEngine - XML Query Engine] implements XQuery - sourceforge project. | ||
Line 55: | Line 54: | ||
* [http://www.galaxquery.org/ Galax]. open-source implementation of XQuery 1.0. | * [http://www.galaxquery.org/ Galax]. open-source implementation of XQuery 1.0. | ||
* [http://safariguide.net/ Safari Guide ] Safari Guide is a free application for Mac OS X Tiger that allows developers to evaluate arbitrary XPath and XQuery expressions against the current frontmost Safari webpage. [10/2005] | * [http://safariguide.net/ Safari Guide ] Safari Guide is a free application for Mac OS X Tiger that allows developers to evaluate arbitrary XPath and XQuery expressions against the current frontmost Safari webpage. [10/2005] | ||
* [https://addons.mozilla.org/de/firefox/addon/5515 XQuery USE ME (XqUSEme)] Firefox add-on (based on Saxon-B, Java 1.6 update 12+ is needed). Tested, works as advertized. I used it when I teach some XQuery - [[User:Daniel K. Schneider|Daniel K. Schneider]] 20:00, 19 February 2010 (UTC) | |||
* [http://www.xqib.org/ XQIB] XQuery in the browser (IE / FF 3.5, Windows) (Feb 2010). Not tested. May need administrator rights to install on Windows, security is not guaranteed... | |||
=== XML Editors with XQuery support === | === XML Editors with XQuery support === | ||
Line 66: | Line 67: | ||
; For eXist: | ; For eXist: | ||
* [http://query-exist.sourceforge.net/ PheXist] is a set of classes for PHP 5. (older version also for PHP4 & Perl) to query and manipulate XML documents in eXist XML:DB. (Version 0.5, april 2007). PHP 5 needs the soap extension enabled. | * [http://query-exist.sourceforge.net/ PheXist] is a set of classes for PHP 5. (older version also for PHP4 & Perl) to query and manipulate XML documents in eXist XML:DB. (Version 0.5, april 2007). PHP 5 needs the soap extension enabled. | ||
* [http:// | |||
; PHP | |||
* [http://www.pecl.php.net/package/Zorba Zorba] PHP extension for [http://www.zorba-xquery.com/index.php/24/ Zorba], an XQuery processor. | |||
=== Examples === | |||
* [http://xml-dev.markmail.org/ MarkMail]. Mailing list archive that stores messages in XML. Search (under the hood) is done with Xquery. | |||
== Links == | == Links == | ||
Line 74: | Line 81: | ||
[[Category: XML]] | [[Category: XML]] | ||
[[Category: databases]] | [[Category: databases]] | ||
[[Category:web standards]] |
Latest revision as of 00:41, 3 April 2013
Definition
Xquery, XML Query Language, is a query language that uses the structure of XML intelligently can express queries across all these kinds of data, whether physically stored in XML or viewed as XML via middleware. In other words, you can use it to retrieve things from files, from XML representations made from SQL databases, from native XML databases like eXist. In addition, Xquery is quite a real programming language.
Xqupdate, (XQuery Update Facility) is a recent (2007) language for updating xml data. There is an older proposal, XUpdate
See also XML databases, servers in which you can plug XML "as is" and get it back with Xquery. Such DBMS also may support XPath, XSLT and other means.
This is just a page with links.
Documentation
Standards
- XQuery 1.0: An XML Query Language (the central document). XQuery can only query (not update). There are some other parts, e.g.
- XQuery 1.0 and XPath 2.0 Functions and Operators
- XQuery Update Facility. (W3C Candidate Recommendation 09 June 2009)
- Xpath 2.0 is used both by XSLT 2.0 and XQuery. XQuery is an extension of XPath 2.0 and both XSLT 2.0 and XQuery 2.0 share the same data model.
- Xupdate. Not a W3C standard, can be used to update some XML databases (not updated since 2000 an will be replaced by XML Query Update). Xupdate looks a lot like XSLT.
XQuery Tutorials
See XQuery tutorial - basics !
- XQuery (Wikipedia article)
Other
- XML:DB XUpdate Use Cases by Kimbro Staken. This document outlines a basic set of uses cases for the XUpdate specification from the XML:DB Initiative.
Software
See also XQuery Engines, Processors, Providers at SQLSummit, retr. Jan 2010.
XML databases
See XML database
XQuery Engines
- XQuery Engines, Processors, Providers A list of products by SQL Summit.com
- Zorba ships with a PHP language binding that provides some basic features in order to prepare and execute queries with Zorba (2013)
- SAXON XSLT and XQuery Processor. There is a free version. (works).
- XQEngine - XML Query Engine implements XQuery - sourceforge project.
- MXQuery. low-footprint, extensible XQuery Engine (Java). Includes support for update
- Galax. open-source implementation of XQuery 1.0.
- Safari Guide Safari Guide is a free application for Mac OS X Tiger that allows developers to evaluate arbitrary XPath and XQuery expressions against the current frontmost Safari webpage. [10/2005]
- XQuery USE ME (XqUSEme) Firefox add-on (based on Saxon-B, Java 1.6 update 12+ is needed). Tested, works as advertized. I used it when I teach some XQuery - Daniel K. Schneider 20:00, 19 February 2010 (UTC)
- XQIB XQuery in the browser (IE / FF 3.5, Windows) (Feb 2010). Not tested. May need administrator rights to install on Windows, security is not guaranteed...
XML Editors with XQuery support
See XML editor for a list of XML editors
Many, e.g. XML Exchanger lite.
Libraries
- For eXist
- PheXist is a set of classes for PHP 5. (older version also for PHP4 & Perl) to query and manipulate XML documents in eXist XML:DB. (Version 0.5, april 2007). PHP 5 needs the soap extension enabled.
- PHP
Examples
- MarkMail. Mailing list archive that stores messages in XML. Search (under the hood) is done with Xquery.
Links
- XML Database Products by Ronald Bourret