Pasos de contexto y pasos de expresión de función

El paso de contexto y el paso de expresión de función forman parte del patrón de índice XML especificado al crear índices funcionales sobre datos XML. El paso de contexto define el patrón de índice XML del conjunto de elementos o nodos de atributo que se van a indexar. El paso de expresión de función especifica la función que define los valores de clave que se almacenarán en el índice.

En general, cuando crea índices funcionales sobre datos XML, por ejemplo utilizando las funciones fn: exists y fn:upper-case, la expresión de patrón XML que especifique en la cláusula GENERATE KEYS USING XMLPATTERN tiene dos partes.

La primera parte se denomina paso de contexto. El paso de contexto especifica la vía de acceso XML de los nodos de elemento o nodos de atributo para los que se crearán entradas de índice. La sintaxis del paso de contexto sigue la misma sintaxis que la expresión de patrón de índice para índices XML en general, pero tiene ciertas restricciones cuando se utiliza junto con funciones específicas, como fn:upper-case y fn:exists. Consulte la información sobre cómo utilizar la sentencia CREATE INDEX para obtener detalles.

La segunda parte se denomina paso de expresión de función. El paso de expresión de función especifica la función, como fn: exists o fn:upper-case, y sus parámetros. El paso de expresión de función genera el valor de clave real que se almacenará en el índice para cada nodo especificado por el paso de contexto.

Por ejemplo, para el patrón XML de índice /a/b/fn:upper-case(.):
  • El paso de contexto es /a/b
  • El paso de expresión de función es fn:upper-case(.)
Como otro ejemplo, para el patrón XML de índice /a/b/fn:exists(c):
  • El paso de contexto es /a/b
  • El paso de expresión de función fn:exists(c)