AYUDA EN LÍNEA
 WINDEVWEBDEV Y WINDEV MOBILE

Este contenido se ha traducido automáticamente.  Haga clic aquí  para ver la versión en inglés.
Ayuda / WLanguage / Funciones WLanguage / Funciones estándar / Funciones de archivos XML
  • Sintaxis 2: Ejecutando una consulta XPATH en un XML Document: Lectura del resultado de la consulta
  • Limitaciones
  • Funciones y subprocesos XML
WINDEV
WindowsLinuxUniversal Windows 10 AppJavaReportes y ConsultasCódigo de Usuario (UMC)
WEBDEV
WindowsLinuxPHPWEBDEV - Código Navegador
WINDEV Mobile
AndroidWidget Android iPhone/iPadIOS WidgetApple WatchMac CatalystUniversal Windows 10 App
Otros
Procedimientos almacenados
Ejecuta una consulta del XPATH:
  • en una variable de tipo xmlDocument.
    WEBDEV - Código NavegadorPHP No disponible.
  • en un XML Document.
    AndroidWidget Android No disponible.
PHP Sólo las consultas de cálculo realizadas en un Document XML están soportadas en PHP.
Ejemplo
clDoc is xmlDocument = XMLOpen(n, fromString)
c is xpathResult = XMLExecuteXPath(clDoc, "/root/text()")
IF c.IsValue THEN
Trace(c.Value)
ELSE
FOR EACH ANode OF c.Node
Trace("Node: " + ANode..Text)
END
FOR EACH attrib OF c.Attribute
Trace("Node: " + attrib.Name)
END
END
// Load the XML file
MyDoc is string
MyDoc = fLoadText("example.xml")
// Text of query: Find the Index tag
XPATHQuery is string = "Help/Function/Index"
// Create the document
XMLDocument("Example", MyDoc)
IF ErrorOccurred = True THEN
Error("The file is not in XML format.")
RETURN
END
b is boolean
b = XMLExecuteXPath("Example", XPATHQuery)
// Is it a calculation query?
IF b = True AND XMLOut("Example") = True THEN
 // The calculation result is as follows
 Trace("XMLResult=" + XMLResult("Example"))
END
// Is it a selection XPath query?
IF XMLFound("Example") = True THEN
// Browse the result selection
WHILE XMLFound("Example") = True
Trace(XMLPath("Example"))
XMLNext("Example")
END
// Browse completed, end the query
XMLCancelSearch("Example")
END
Sintaxis
WEBDEV - Código NavegadorPHP La sintaxis no está disponible en PHP y el código del navegador

Ejecutando una consulta del XPATH en una xmlDocument Variable Ocultar los detalles

<Result> = XMLExecuteXPath(<XML document> , <Text of XPath query>)
<Result>: xpathResult Variable
xpathResult Variable que contiene el resultado de la consulta XPATH.
Lectura del resultado:
  • El IsValue Property permite saber si el resultado es un valor.
  • Para una consulta de selección (el resultado no es un valor), hay que recorrer la xpathResult Variable.
  • Para una consulta de cálculo (el resultado es un valor), el Valor Property lee el resultado.
<XML document>: Variable de tipo xmlDocument
Nombre de la xmlDocument Variable que contiene el código XML a analizar.
<Text of XPath query>: Cadena de caracteres
Texto de la consulta XPath a ejecutar.
AndroidWidget Android Sintaxis no disponible en Android y Android Widget

Ejecutando una consulta XPATH en un XML Document (sintaxis guardada para compatibilidad con versiones anteriores) Ocultar los detalles

<Result> = XMLExecuteXPath(<Name of the XML document> , <Text of XPath query>)
<Result>: booleano
  • True si la consulta fue ejecutada,
  • False en caso contrario o si ningún elemento corresponde a la consulta.
Lectura del resultado:
  • En el caso de una consulta de selección, si se ha ejecutado la consulta XPATH, se utilizan las funciones de búsqueda XML para examinar el resultado de la consulta XPATH.
  • Para una consulta de cálculo, se utiliza XMLResultado para leer el resultado.
<Name of the XML document>: Cadena de caracteres
Nombre del XML Document utilizado. Este Document contiene el código XML a estudiar y fue creado por XMLDocument.
<Text of XPath query>: Cadena de caracteres
Texto de la consulta XPath a ejecutar.
Observaciones
WINDEVUniversal Windows 10 AppiPhone/iPadCódigo de Usuario (UMC)

Sintaxis 2: Ejecutando una consulta XPATH en un XML Document: Lectura del resultado de la consulta

Si XMLExecuteXPath devuelve True, la consulta se ha ejecutado con éxito.. El resultado de la consulta puede leerse de la siguiente manera:
  • Consulta de cálculo: La función XMLFound devuelve False.
    El resultado puede ser leído por XMLResultado.
    Algunos ejemplos de consultas de cálculo:
    Contar el número de etiquetas cuyo nombre es "ITEM", lo que significa el número de artículos diferentes que se encuentran en el pedido.Count(//ITEM)
    Número de etiquetas que contienen un subelemento llamado <PRICE>.count(//*[PRICE])
    Total de la facturasuma(//ITEM[ PRECIO])- suma(//COUPON[ PRECIO])
  • Consulta para la selección de registros: XMLFound devuelve True.
    En una consulta de selección, XMLExecuteXPath cambia la posición actual en el documento XML a set la posición en el primer elemento del resultado de la selección. A continuación, XMLNext le permite navegar por la selección.
    Algunos ejemplos de consultas de selección:
    Busque todas las etiquetas cuyo nombre sea "ITEM".//TEMA
    Examinar todos los elementos con un atributo "unitario".//*[@unit]

    Para cancelar la consulta y volver a navegar por toda la Document, utilice XMLCancelSearch.

Limitaciones

  • Varias consultas de exploración de XPath no pueden ser anidadas.
  • Sintaxis 1: Ejecución de una consulta XPATH en una Variable de tipo xmlDocument:
    • La lista de nodos no está clasificada.
    • El estándar utilizado para la consulta XPath es XPath 1.0.
  • Sintaxis 2: Ejecutando una consulta XPATH en un XML Document:
    XMLSavePosition y XMLRestorePosition no pueden utilizarse para guardar/restablecer una posición cuando se examina el resultado de una consulta select XPath.

Funciones y subprocesos XML

Si su aplicación utiliza hilos, el XML Document se comparte entre todos estos hilos. Para más detalles sobre los hilos, véase Gestión de hilos.

Si la posición actual en un XML Document se modifica en un thread, la posición actual en este XML Document se modifica para todos los thread s.
Clasificación Lógica de negocio / UI: Lógica de negocio
Componente: wd290xml.dll
Versión mínima requerida
  • Versión 9
Esta página también está disponible para…
Comentarios
Haga clic en [Agregar] para publicar un comentario

Última modificación: 27/05/2022

Señalar un error o enviar una sugerencia | Ayuda local