Difference between revisions of "Index Module"

From BaseX Documentation
Jump to navigation Jump to search
m (Text replace - "assigned to the {{Code|http://basex.org/errors}} namespace" to "assigned to the <code><nowiki>http://basex.org/errors</nowiki></code> namespace")
(10 intermediate revisions by 2 users not shown)
Line 1: Line 1:
 
This [[Module Library|XQuery Module]] provides functions for displaying information stored in the database index structures.
 
This [[Module Library|XQuery Module]] provides functions for displaying information stored in the database index structures.
 +
 +
For functions that use the indexes to return nodes see [[Database_Module#Value_Indexes|Value Indexes]] in the [[Database Module]] and {{Function|Full-Text|ft:search}} in the [[Full-Text Module]].
  
 
=Conventions=
 
=Conventions=
  
All functions in this module are assigned to the {{Code|http://basex.org/modules/index}} namespace, which is statically bound to the {{Code|index}} prefix.<br/>
+
All functions and errors in this module are assigned to the <code><nowiki>http://basex.org/modules/index</nowiki></code> namespace, which is statically bound to the {{Code|index}} prefix.<br/>
All errors are assigned to the <code><nowiki>http://basex.org/errors</nowiki></code> namespace, which is statically bound to the {{Code|bxerr}} prefix.
 
  
 
=Functions=
 
=Functions=
  
 
==index:facets==
 
==index:facets==
 +
 
{| width='100%'
 
{| width='100%'
 
|-
 
|-
Line 18: Line 20:
 
|-
 
|-
 
|'''Errors'''
 
|'''Errors'''
|{{Error|BXDB0002|XQuery Errors#BaseX Errors}} The addressed database does not exist or could not be opened.
+
|{{Error|db:open|Database Module#Errors}} The addressed database does not exist or could not be opened.
 
|-
 
|-
 
|'''Examples'''
 
|'''Examples'''
Line 37: Line 39:
 
|-
 
|-
 
|'''Errors'''
 
|'''Errors'''
|{{Error|BXDB0002|XQuery Errors#BaseX Errors}} The addressed database does not exist or could not be opened.<br/>{{Error|BXDB0004|Database Module#Errors}} the text index is not available.
+
|{{Error|db:open|Database Module#Errors}} The addressed database does not exist or could not be opened.<br/>{{Error|db:no-index|Database Module#Errors}} the index is not available.
 
|}
 
|}
  
 
==index:attributes==
 
==index:attributes==
 +
 
{| width='100%'
 
{| width='100%'
 
|-
 
|-
Line 50: Line 53:
 
|-
 
|-
 
|'''Errors'''
 
|'''Errors'''
|{{Error|BXDB0002|XQuery Errors#BaseX Errors}} The addressed database does not exist or could not be opened.<br/>{{Error|BXDB0004|Database Module#Errors}} the attribute index is not available.
+
|{{Error|db:open|Database Module#Errors}} The addressed database does not exist or could not be opened.<br/>{{Error|db:no-index|Database Module#Errors}} the index is not available.
 +
|}
 +
 
 +
==index:tokens==
 +
 
 +
{| width='100%'
 +
|-
 +
| width='120' | '''Signatures'''
 +
|{{Func|index:tokens|$db as xs:string|element(value)*}}
 +
|-
 +
|'''Summary'''
 +
|Returns all strings stored in the [[Indexes#Token Index|Token Index]] of the database {{Code|$db}}, along with their number of occurrences.
 +
|-
 +
|'''Errors'''
 +
|{{Error|db:open|Database Module#Errors}} The addressed database does not exist or could not be opened.<br/>{{Error|db:no-index|Database Module#Errors}} the index is not available.
 
|}
 
|}
  
 
==index:element-names==
 
==index:element-names==
 +
 
{| width='100%'
 
{| width='100%'
 
|-
 
|-
Line 63: Line 81:
 
|-
 
|-
 
|'''Errors'''
 
|'''Errors'''
|{{Error|BXDB0002|XQuery Errors#BaseX Errors}} The addressed database does not exist or could not be opened.
+
|{{Error|db:open|Database Module#Errors}} The addressed database does not exist or could not be opened.
 
|}
 
|}
  
 
==index:attribute-names==
 
==index:attribute-names==
 +
 
{| width='100%'
 
{| width='100%'
 
|-
 
|-
Line 76: Line 95:
 
|-
 
|-
 
|'''Errors'''
 
|'''Errors'''
|{{Error|BXDB0002|XQuery Errors#BaseX Errors}} The addressed database does not exist or could not be opened.
+
|{{Error|db:open|Database Module#Errors}} The addressed database does not exist or could not be opened.
 
|}
 
|}
  
 
=Changelog=
 
=Changelog=
 +
 +
;Version 8.4
 +
 +
* Added: [[#index:tokens|index:token]]
  
 
;Version 7.7
 
;Version 7.7
Line 90: Line 113:
  
 
The module was introduced with Version 7.1.
 
The module was introduced with Version 7.1.
 
[[Category:XQuery]]
 

Revision as of 12:48, 7 June 2018

This XQuery Module provides functions for displaying information stored in the database index structures.

For functions that use the indexes to return nodes see Value Indexes in the Database Module and ft:search in the Full-Text Module.

Conventions

All functions and errors in this module are assigned to the http://basex.org/modules/index namespace, which is statically bound to the index prefix.

Functions

index:facets

Signatures index:facets($db as xs:string) as xs:string
index:facets($db as xs:string, $type as xs:string) as xs:string
Summary Returns information about all facets and facet values of the database $db in document structure format.
If $type is specified as flat, the function returns this information in a flat summarized version. The returned data is derived from the Path Index.
Errors db:open: The addressed database does not exist or could not be opened.
Examples
  • index:facets("DB") returns information about facets and facet values on the database DB in document structure.
  • index:facets("DB", "flat") returns information about facets and facet values on the database DB in a summarized flat structure.

index:texts

Signatures index:texts($db as xs:string) as element(value)*
index:texts($db as xs:string, $prefix as xs:string) as element(value)*
index:texts($db as xs:string, $start as xs:string, $ascending as xs:boolean) as element(value)*
Summary Returns all strings stored in the Text Index of the database $db, along with their number of occurrences.
If $prefix is specified, the returned entries will be refined to the ones starting with that prefix.
If $start and $ascending are specified, all nodes will be returned after or before the specified start entry.
Errors db:open: The addressed database does not exist or could not be opened.
db:no-index: the index is not available.

index:attributes

Signatures index:attributes($db as xs:string) as element(value)*
index:attributes($db as xs:string, $prefix as xs:string) as element(value)*
index:attributes($db as xs:string, $start as xs:string, $ascending as xs:boolean) as element(value)*
Summary Returns all strings stored in the Attribute Index of the database $db, along with their number of occurrences.
If $prefix is specified, the returned entries will be refined to the ones starting with that prefix.
If $start and $ascending are specified, all nodes will be returned after or before the specified start entry.
Errors db:open: The addressed database does not exist or could not be opened.
db:no-index: the index is not available.

index:tokens

Signatures index:tokens($db as xs:string) as element(value)*
Summary Returns all strings stored in the Token Index of the database $db, along with their number of occurrences.
Errors db:open: The addressed database does not exist or could not be opened.
db:no-index: the index is not available.

index:element-names

Signatures index:element-names($db as xs:string) as element(value)*
Summary Returns all element names stored in the Name Index of the database $db, along with their number of occurrences.
Errors db:open: The addressed database does not exist or could not be opened.

index:attribute-names

Signatures index:attribute-names($db as xs:string) as element(value)*
Summary Returns all attribute names stored in the Name Index of the database $db, along with their number of occurrences.
Errors db:open: The addressed database does not exist or could not be opened.

Changelog

Version 8.4
Version 7.7
  • Updated: the functions no longer accept Database Nodes as reference. Instead, the name of a database must now be specified.
Version 7.3

The module was introduced with Version 7.1.