XmlIndexSpecification::replaceIndex

API Ref

#include <DbXml.hpp>

void XmlIndexSpecification::replaceIndex(const std::string &uri, const std::string &name, const std::string &index);


Description: XmlIndexSpecification::replaceIndex

The XmlIndexSpecification interface provides methods for specifying the indexing of a container. Indexing is specified by providing the name of a node and a list of indexing strategies for that node. The node name can be either that of an element or attribute node. For example, in the XML fragment "<art title='...'/>" there are two node names that index strategies could be specified for, the element node name is 'art', and the attribute node name is 'title'. See the Indexing section of the reference guide for detailed information on designing an indexing strategy for your application.

Applications can specify a default indexing strategy for all nodes in a container by declaring an indexing strategy for the default document node. The name of the node is "default" and its namespace URI is "http://www.sleepycat.com/2002/dbxml". These can be referenced using the Berkeley DB XML constants DbXml::metaDataName_default and DbXml::metaDataNamespace_uri. When a container is first created the indexing strategy specified for the default document node is 'none-none-none-none'.

The XmlIndexSpecification::replaceIndex method replaces the indexing strategies for a named document node. All the existing indexing strategies are deleted, and replaced with the new list of indexing strategies.

Parameters

uri
The namespace of the node to be indexed. The default namespace is selected by passing an empty string for the namespace.

name
The name of the element or attribute node to be indexed.

index
A space-separated list of the following indexing strategy names:

  • none-none-none-none
  • node-element-presence-none
  • node-attribute-presence-none
  • node-element-equality-string
  • node-element-equality-number
  • node-element-substring-string
  • node-attribute-equality-string
  • node-attribute-equality-number
  • node-attribute-substring-string
  • edge-element-presence-none
  • edge-attribute-presence-none
  • edge-element-equality-string
  • edge-element-equality-number
  • edge-element-substring-string
  • edge-attribute-equality-string
  • edge-attribute-equality-number
  • edge-attribute-substring-string

Class

XmlContainer, XmlDocument, XmlException, XmlIndexSpecification, XmlQueryContext, XmlQueryExpression, XmlResults, XmlUpdateContext, XmlValue

APIRef

Copyright (c) 1996-2003 Sleepycat Software, Inc. - All rights reserved.