Difference between revisions of "XQuery"

From BaseX Documentation
Jump to navigation Jump to search
 
(61 intermediate revisions by 2 users not shown)
Line 1: Line 1:
Welcome to the Query Portal, which is one of the [[Main Page|main]] sections of this documentation. Here you can find more information on performing XPath and XQuery requests. Apart from standard features, BaseX offers numerous extensions, which are listed on this page.
+
Welcome to the Query Portal, which is one of the [[Main Page|Main Sections]] of this documentation. BaseX provides an implementation of the W3 [https://www.w3.org/TR/xpath-30/ XPath] and [https://www.w3.org/TR/xquery-30 XQuery] languages, which are tightly coupled with the underlying database store. The processor is also a flexible general purpose processor, which can access and process local and remote sources and output results in various formats. BaseX is [https://dev.w3.org/2006/xquery-test-suite/PublicPagesStagingArea/XQTSReportSimple_XQTS_1_0_2.html highly compliant] with the official specifications. This section contains information on the query processor and its extensions:
  
==Overview==
+
<div style="float:left; width:48%;">
* [[Full-Text]]: full-text features of XQuery
+
;[[XQuery 3.0]] and [[XQuery 3.1]]
* [[Update]]: update mechanism of XQuery
+
Features of the new XQuery Recommendations.
* [[XQuery 3.0]]: supported features of the upcoming [http://www.w3.org/TR/xquery-30/ W3C XQuery 3.0] Recommendation
 
* [[Java Bindings]]: how to call Java code from XQuery
 
* [[XQuery Errors|Errors]]: errors raised by XQuery expressions
 
  
==XQuery Functions==
+
;[[XQuery Extensions]] and [[XQuery Optimizations]]
 +
Specifics of the BaseX XQuery processor.
  
<onlyinclude>
+
;[[Module Library]]
{| class="wikitable"
+
Additional functions included in the internal modules.
|-
 
! Module
 
! Description
 
! Prefix
 
! Namespace URI
 
|-
 
| [[Database Functions|Database]]
 
| Accessing the database and indexes.
 
| <code>db</code>
 
| <code><nowiki>http://basex.org/db</nowiki></code>
 
|-
 
| [[Full-Text Functions|Full-Text]]
 
| Performing full-text operations.
 
| <code>ft</code>
 
| <code><nowiki>http://basex.org/ft</nowiki></code>
 
|-
 
| [[Utility Functions|Utility]]
 
| Testing and profiling functions.
 
| <code>util</code>
 
| <code><nowiki>http://basex.org/util</nowiki></code>
 
|-
 
| [[File Functions|File]]
 
| File handling, inspired by the [http://expath.org/spec/file EXPath File] module.
 
| <code>file</code>
 
| <code><nowiki>http://basex.org/file</nowiki></code>
 
|-
 
| [[ZIP Functions|ZIP]]
 
| ZIP, based on the [http://expath.org/spec/zip EXPath ZIP] module. <font color="orange">Version 6.5.2</font>
 
| <code>zip</code>
 
| <code><nowiki>http://expath.org/ns/zip</nowiki></code>
 
|-
 
| [[HTTP Functions|HTTP]]
 
| Sending HTTP requests, based on the [http://expath.org/spec/http-client EXPath HTTP] module.
 
| <code>http</code>
 
| <code><nowiki>http://expath.org/ns/http-client</nowiki></code>
 
|-
 
| [[Math Functions|Math]]
 
| Mathematical operations, extending the [http://www.w3.org/TR/xpath-functions-30/ W3C Working Draft].
 
| <code>math</code>
 
| <code><nowiki>http://www.w3.org/2005/xpath-functions/math</nowiki></code>
 
|}
 
  
Note that all namespace URIs are statically bound in BaseX, i.e., they need not be declared in the query prolog.
+
;[[Java Bindings]]
All XQuery 3.0 functions are listed in the [http://www.w3.org/TR/xpath-functions-30/ XQuery 3.0 Functions and Operators] draft;
+
Accessing and calling Java code from XQuery.
we have added a [[XQuery_3.0#Functions|list of all new functions]] that are already supported by BaseX.
 
  
==Indexes==
+
;[[Repository]]
Queries will be analyzed and optimized for index access on the fly.
+
Install and manage XQuery and Java modules.
 +
</div><div style="float:left; width:4%;">&nbsp;
 +
</div><div style="float:left; width:48%;">
 +
;[[Full-Text]]
 +
How to use BaseX as a full-fledged full-text processor.
  
*[[Indexes|Overview]]: All indexes and their functionality
+
;[[XQuery Update|Update]]
*[[Execution Plan]]: Execution plans of the queries
+
Updating databases and local resources via XQuery Update.
  
[[Category:XQuery]]
+
;[[Indexes]]
 +
Available index structures and their utilization.
 +
 
 +
;[[Serialization]]
 +
Serialization parameters supported by BaseX.
 +
 
 +
;[[XQuery Errors|Errors]]
 +
Errors raised by XQuery expressions.
 +
</div>
 +
<div>&nbsp;</div>
 +
 
 +
 
 +
__NOTOC__

Latest revision as of 12:59, 13 July 2020

Welcome to the Query Portal, which is one of the Main Sections of this documentation. BaseX provides an implementation of the W3 XPath and XQuery languages, which are tightly coupled with the underlying database store. The processor is also a flexible general purpose processor, which can access and process local and remote sources and output results in various formats. BaseX is highly compliant with the official specifications. This section contains information on the query processor and its extensions:

XQuery 3.0 and XQuery 3.1

Features of the new XQuery Recommendations.

XQuery Extensions and XQuery Optimizations

Specifics of the BaseX XQuery processor.

Module Library

Additional functions included in the internal modules.

Java Bindings

Accessing and calling Java code from XQuery.

Repository

Install and manage XQuery and Java modules.

 
Full-Text

How to use BaseX as a full-fledged full-text processor.

Update

Updating databases and local resources via XQuery Update.

Indexes

Available index structures and their utilization.

Serialization

Serialization parameters supported by BaseX.

Errors

Errors raised by XQuery expressions.