Grupo cniSearchElement

Busca en los hermanos anteriores del elemento especificado un elemento que coincida con criterios especificados. La búsqueda se realiza empezando en el elemento de sintaxis especificado en el parámetro targetElement y cada una de las cuatro funciones proporciona una búsqueda en una dirección diferente del árbol:
  1. cniSearchFirstChild realiza la búsqueda en los elementos hijo inmediatos del elemento de inicio a partir del primer hijo, hasta que se encuentra una coincidencia o hasta que se alcanza el final de la cadena de elementos hijo.
  2. cniSearchLastChild realiza la búsqueda en los elementos hijo inmediatos del elemento de inicio a partir del último hijo, hasta que se encuentra una coincidencia o hasta que se alcanza el final de la cadena de elementos hijo.
  3. cniSearchNextSibling realiza la búsqueda del elemento de inicio a los hermanos siguientes, hasta que se encuentra una coincidencia o hasta que se alcanza el final de la cadena de hermanos.
  4. cniSearchPreviousSibling realiza la búsqueda a partir del elemento de inicio hasta los hermanos anteriores, hasta que se encuentra una coincidencia o hasta que se alcanza el inicio de la cadena de hermanos.

Si utiliza este mandato para buscar un elemento en un mensaje que pertenece a un dominio preparado para espacios de nombres, la búsqueda sólo se realiza en los elementos cuyo espacio de nombres es una serie de caracteres vacía. Si desea realizar una búsqueda de elementos en cualquier espacio de nombres, utilice uno de los mandatos cniSearchElementNamespace.

Sintaxis

CciElement* cniSearchFirstChild(
  int*            returnCode,
  CciElement*     targetElement,
  CciCompareMode* mode,
  CciElementType  type,
  CciChar         name);
CciElement* cniSearchLastChild(
  int*            returnCode,
  CciElement*     targetElement,
  CciCompareMode* mode,
  CciElementType  type,
  CciChar         name);
CciElement* cniSearchNextSibling(
  int*            returnCode,
  CciElement*     targetElement,
  CciCompareMode* mode,
  CciElementType  type,
  CciChar         name);
CciElement* cniSearchPreviousSibling(
  int*            returnCode,
  CciElement*     targetElement,
  CciCompareMode* mode,
  CciElementType  type,
  CciChar         name);

Parámetros

returnCode
Código de retorno de la función (salida).
Los códigos de retorno posibles son:
  • CCI_SUCCESS
  • CCI_EXCEPTION
  • CCI_INV_ELEMENT_OBJECT
targetElement
Dirección del objeto de elemento de sintaxis desde el que se inicia la búsqueda (entrada).
mode
Modalidad de búsqueda que se debe utilizar (entrada). Indica qué combinación de tipo de elemento y nombre de elemento se debe buscar. Los valores posibles son:
  • CCI_COMPARE_MODE_FULL
  • CCI_COMPARE_MODE_FULL_TYPE
  • CCI_COMPARE_MODE_GENERIC_TYPE
  • CCI_COMPARE_MODE_SPECIFIC_TYPE
  • CCI_COMPARE_MODE_NAME
  • CCI_COMPARE_MODE_NAME_SPECIFIC_TYPE
  • CCI_COMPARE_MODE_NAME_GENERIC_TYPE
  • CCI_COMPARE_MODE_NAME_FULL_TYPE
  • CCI_COMPARE_MODE_NULL
type
Tipo de elemento que se debe buscar (entrada). Sólo se utiliza si la modalidad de búsqueda implica una coincidencia en el tipo.
name
Nombre de elemento que se debe buscar (entrada). Sólo se utiliza si la modalidad de búsqueda implica una coincidencia en el nombre.

Ejemplo

  int rc;
  CciElement* firstChild = cniSearchFirstChild(
                                              &rc, 
                                               inRootElement, 
                                               CCI_COMPARE_MODE_NAME, 
                                               elementName, 
                                               0);

Valores de retorno

  • Si la ejecución se realiza satisfactoriamente, se devuelve la dirección del objeto de elemento de sintaxis solicitado.
  • Si no hay ningún elemento coincidente, se devuelve cero.
  • Si se produce un error, se devuelve cero (CCI_NULL_ADDR) y el parámetro returnCode indica la razón del error.
Avisos | Marcas registradas | Descargas | Biblioteca | Soporte | Su opinión
Copyright IBM Corporation 1999, 2006 Última actualización: 22/08/2006
as07740_