versión 11 (Modificado)
DOM Find XML element (refElement; xRuta{; arrRefElement}) refElement
Parámetro | Tipo | Descripción | |
refElement | Cadena | Referencia del elemento XML | |
xRuta | Texto | BLOB | Ruta XPath del elemento a buscar | |
arrRefElement | Array cadena 16 | Lista de referencias de los elementos encontrados (si aplica) | |
Resultado | refElement | Referencia del elemento encontrado (si aplica) |
Descripción
El comando DOM Find XML element permite buscar los elementos XML específicos en una estructura XML. La búsqueda comienza por el elemento designado por el parámetro refElement.
El nodo XML a buscar está definido por el parámetro xRuta, expresado en notación XPath (ver el párrafo "Uso de la notación XPath" en la sección Presentación de los comandos XML). Es posible utilizar elementos indexados.
Nota: conforme a la norma XML, la búsqueda diferencia las mayúsculas y las minúsculas.
El comando devuelve la referencia XML del elemento encontrado.
Cuando se pasa el array cadena arrRefElement, el comando lo llena con la lista de las referencias XML encontradas. En este caso, el comando devuelve el primer elemento del array arrRefElement. Este parámetro es útil cuando existen varios elementos con el mismo nombre en la ubicación designada por el parámetro xRuta.
Ejemplos
1. Este ejemplo permite buscar rápidamente un elemento XML y mostrar su valor:
vEncontrado:=DOM Find XML element(vRefElem;"Items/Book[15]/Title") DOM GET XML ELEMENT VALUE(vEncontrado;valor) ALERT("El valor del elemento es: \""+valor+"\"")
La misma búsqueda también puede efectuarse de esta forma:
vEncontrado:=DOM Find XML element(vElemRef;"Items/Book[15]") vEncontrado:=DOM Find XML element(vEncontrado;"Book/Title") DOM GET XML ELEMENT VALUE(vEncontrado;valor) ALERT("El valor del elemento es: \""+valor+"\"")
Nota: como se muestra en el ejemplo anterior, la ruta XPath debe siempre comenzar por el nombre del elemento actual. Esta precisión es importante cuando maneja rutas XPath relativas.
2. Dada la siguiente estructura XML:
<Root> <Elem1> <Elem2>aaa</Elem2> <Elem2>bbb</Elem2> <Elem2>ccc</Elem2> </Elem1> </Root>
El siguiente código permite recuperar la referencia de cada elemento Elem2 en el array arrEncontrados:
ARRAY STRING(16;arrEncontrados;0) vEncontrado:=DOM Find XML element(vRefElem;"/Raiz/Elem1/Elem2";arrEncontrados)
Ver también
DOM Count XML elements, DOM Create XML element.
Variables y conjuntos sistema
Si el comando se ejecutó correctamente, la variable sistema OK toma el valor 1. De lo contrario, toma el valor 0 y se genera un error.
Gestión de errores
Se genera un error cuando:
La referencia del elemento no es válida
La ruta xPath especificada no es válida.