Difference between revisions of "Index Module"
Jump to navigation
Jump to search
(20 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 | + | 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/> |
− | |||
=Functions= | =Functions= | ||
==index:facets== | ==index:facets== | ||
+ | |||
{| width='100%' | {| width='100%' | ||
|- | |- | ||
− | | width=' | + | | width='120' | '''Signatures''' |
|{{Func|index:facets|$db as xs:string|xs:string}}<br/>{{Func|index:facets|$db as xs:string, $type as xs:string|xs:string}} | |{{Func|index:facets|$db as xs:string|xs:string}}<br/>{{Func|index:facets|$db as xs:string, $type as xs:string|xs:string}} | ||
|- | |- | ||
|'''Summary''' | |'''Summary''' | ||
− | |Returns information about | + | |Returns information about all facets and facet values of the database {{Code|$db}} in document structure format.<br/>If {{Code|$type}} is specified as {{Code|flat}}, the function returns this information in a flat summarized version. The returned data is derived from the [[Indexes#Path Index|Path Index]]. |
+ | |- | ||
+ | |'''Errors''' | ||
+ | |{{Error|db:open|Database Module#Errors}} The addressed database does not exist or could not be opened. | ||
|- | |- | ||
|'''Examples''' | |'''Examples''' | ||
Line 27: | Line 32: | ||
{| width='100%' | {| width='100%' | ||
|- | |- | ||
− | | width=' | + | | width='120' | '''Signatures''' |
|{{Func|index:texts|$db as xs:string|element(value)*}}<br/>{{Func|index:texts|$db as xs:string, $prefix as xs:string|element(value)*}}<br/>{{Func|index:texts|$db as xs:string, $start as xs:string, $ascending as xs:boolean|element(value)*}} | |{{Func|index:texts|$db as xs:string|element(value)*}}<br/>{{Func|index:texts|$db as xs:string, $prefix as xs:string|element(value)*}}<br/>{{Func|index:texts|$db as xs:string, $start as xs:string, $ascending as xs:boolean|element(value)*}} | ||
|- | |- | ||
|'''Summary''' | |'''Summary''' | ||
− | |Returns all strings stored in the | + | |Returns all strings stored in the [[Indexes#Text Index|Text Index]] of the database {{Code|$db}}, along with their number of occurrences.<br/>If {{Code|$prefix}} is specified, the returned entries will be refined to the ones starting with that prefix.<br/>If {{Code|$start}} and {{Code|$ascending}} are specified, all nodes will be returned after or before the specified start entry. |
|- | |- | ||
|'''Errors''' | |'''Errors''' | ||
− | |{{Error| | + | |{{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%' | ||
|- | |- | ||
− | | width=' | + | | width='120' | '''Signatures''' |
|{{Func|index:attributes|$db as xs:string|element(value)*}}<br/>{{Func|index:attributes|$db as xs:string, $prefix as xs:string|element(value)*}}<br/>{{Func|index:attributes|$db as xs:string, $start as xs:string, $ascending as xs:boolean|element(value)*}} | |{{Func|index:attributes|$db as xs:string|element(value)*}}<br/>{{Func|index:attributes|$db as xs:string, $prefix as xs:string|element(value)*}}<br/>{{Func|index:attributes|$db as xs:string, $start as xs:string, $ascending as xs:boolean|element(value)*}} | ||
|- | |- | ||
|'''Summary''' | |'''Summary''' | ||
− | |Returns all strings stored in the | + | |Returns all strings stored in the [[Indexes#Attribute Index|Attribute Index]] of the database {{Code|$db}}, along with their number of occurrences.<br/>If {{Code|$prefix}} is specified, the returned entries will be refined to the ones starting with that prefix.<br/>If {{Code|$start}} and {{Code|$ascending}} are specified, all nodes will be returned after or before the specified start entry. |
|- | |- | ||
|'''Errors''' | |'''Errors''' | ||
− | |{{Error| | + | |{{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%' | ||
|- | |- | ||
− | | width=' | + | | width='120' | '''Signatures''' |
|{{Func|index:element-names|$db as xs:string|element(value)*}} | |{{Func|index:element-names|$db as xs:string|element(value)*}} | ||
|- | |- | ||
|'''Summary''' | |'''Summary''' | ||
− | |Returns all element names stored in the | + | |Returns all element names stored in the [[Indexes#Name Index|Name 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. | ||
|} | |} | ||
==index:attribute-names== | ==index:attribute-names== | ||
+ | |||
{| width='100%' | {| width='100%' | ||
|- | |- | ||
− | | width=' | + | | width='120' | '''Signatures''' |
|{{Func|index:attribute-names|$db as xs:string|element(value)*}} | |{{Func|index:attribute-names|$db as xs:string|element(value)*}} | ||
|- | |- | ||
|'''Summary''' | |'''Summary''' | ||
− | |Returns all attribute names stored in the | + | |Returns all attribute names stored in the [[Indexes#Name Index|Name 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. | ||
|} | |} | ||
=Changelog= | =Changelog= | ||
+ | |||
+ | ;Version 8.4 | ||
+ | |||
+ | * Added: [[#index:tokens|index:token]] | ||
;Version 7.7 | ;Version 7.7 | ||
Line 81: | Line 113: | ||
The module was introduced with Version 7.1. | The module was introduced with Version 7.1. | ||
− | |||
− |
Revision as of 13: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.
Contents
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: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
- Added: index:token
- 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
- Updated: index:texts, index:attributes: signature with three arguments added.
The module was introduced with Version 7.1.