Difference between revisions of "RESTXQ Module"

From BaseX Documentation
Jump to navigation Jump to search
(3 intermediate revisions by the same user not shown)
Line 3: Line 3:
 
=Conventions=
 
=Conventions=
  
* The {{Code|basex-api}} package must be included in the classpath. This is always the case if you use one of the complete distributions (zip, exe, war) of BaseX.
+
* The module will be available if the {{Code|basex-api}} library is found in the classpath. This is the case if you use one of the complete distributions of BaseX (zip, exe, war).
* All functions are assigned to the <code><nowiki>http://exquery.org/ns/restxq</nowiki></code> namespace. The module must be imported in the query prolog:
+
* All functions are assigned to the <code><nowiki>http://exquery.org/ns/restxq</nowiki></code> namespace, which is statically bound to the {{Code|rest}} prefix. Prior to {{Version|9.2}}, the module needed to be imported in the query prolog:
 
<pre class="brush:xquery">
 
<pre class="brush:xquery">
 
import module namespace rest = "http://exquery.org/ns/restxq";
 
import module namespace rest = "http://exquery.org/ns/restxq";
Line 10: Line 10:
 
</pre>
 
</pre>
 
* The <code><nowiki>http://wadl.dev.java.net/2009/02</nowiki></code> namespace is bound to the {{Code|wadl}} prefix.
 
* The <code><nowiki>http://wadl.dev.java.net/2009/02</nowiki></code> namespace is bound to the {{Code|wadl}} prefix.
* If any of the functions is called outside the servlet context, the error {{Error|basex:http|XQuery Errors#BaseX Errors}} is raised.
+
* If any of the functions is called outside the servlet context, <code>[[XQuery Errors#BaseX Errors|basex:http]]</code> is raised.
  
 
=General Functions=
 
=General Functions=

Revision as of 12:49, 30 January 2019

This XQuery Module contains helper functions for the RESTXQ API, some of which are defined in the RESTXQ Draft.

Conventions

  • The module will be available if the basex-api library is found in the classpath. This is the case if you use one of the complete distributions of BaseX (zip, exe, war).
  • All functions are assigned to the http://exquery.org/ns/restxq namespace, which is statically bound to the rest prefix. Prior to Version 9.2, the module needed to be imported in the query prolog:
import module namespace rest = "http://exquery.org/ns/restxq";
...
  • The http://wadl.dev.java.net/2009/02 namespace is bound to the wadl prefix.
  • If any of the functions is called outside the servlet context, basex:http is raised.

General Functions

rest:base-uri

Signatures rest:base-uri() as xs:anyURI
Summary Returns the implementation-defined base URI of the resource function.

rest:uri

Signatures rest:uri() as xs:anyURI
Summary Returns the complete URI that addresses the Resource Function. This is the result of rest:base-uri appended with the path from the path annotation of the resource function.

rest:wadl

Signatures rest:wadl() as element(wadl:application)
Summary Returns a WADL description of all available REST services.

rest:init

Signatures rest:init() as empty-sequence()
Summary Initializes the RESTXQ module cache. This function should be called after RESTXQ modules have been replaced while the web server is running, and if PARSERESTXQ is not set to 0.

Changelog

Version 8.6

This module was introduced with Version 7.7.