4D v16.3

DOM Find XML element

Inicio

 
4D v16.3
DOM Find XML element

DOM Find XML element 


 

DOM Find XML element ( elementRef ; xRuta {; arrRefElement} ) -> Resultado 
Parámetro Tipo   Descripción
elementRef  Cadena in Referencia del elemento XML
xRuta  Texto in Ruta XPath del elemento a buscar
arrRefElement  Array cadena in Lista de referencias de los elementos encontrados (si aplica)
Resultado  Cadena in Referencia del elemento encontrado (si aplica)

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 DOM). 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.

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.

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 TEXT(arrEncontrados;0)
 vFound:=DOM Find XML element(vElemRef;"/Root/Elem1/Elem2";arrEncontrados)

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.

Se genera un error cuando:

  • La referencia del elemento no es válida
  • La ruta xPath especificada no es válida.



Ver también 

DOM Count XML elements
DOM Create XML element

 
PROPIEDADES 

Producto: 4D
Tema: XML DOM
Número 864

Este comando modifica la variable sistema OKEste comando modifica la variable sistema ErrorThis command can be run in preemptive processes

 
HISTORIA 

Modificado: 4D v11 SQL

 
ARTICLE USAGE

Manual de lenguaje 4D ( 4D v16)
Manual de lenguaje 4D ( 4D v16.1)
Manual de lenguaje 4D ( 4D v16.2)
Manual de lenguaje 4D ( 4D v16.3)