Ciao @Antonio_Rinaldi, ma ciao anche a tutti.
Approfitto di te Antonio perché ho visto che hai risposto a domande riguardo XML su questo forum italiano, per cui ne approfitto anche io
In realtà ho già creato una propria funzione che si muove all’interno del xml utilizzando XMLNode.NextSibling, .FirstChild, e per leggere utilizzo .GetAttribute e .Value .
Funziona tutto bene, però leggendo su Internet e poi anche la documentazione di XoJo ho “scoperto” che XQL permette di fare delle query.
XMLNodeList come risultato da una lista di nodi per cui nel mio caso la seguente sarebbe la procedura corretta:
Var nodes As XmlNodeList
nodes = xml.XQL("/SimBase/FlightPlan")
Var ilNodo As XmlNode
ilNodo = nodes.Item(0) 'Zero perché tanto /SimBase/FlightPlan è unico
..
Però se voglio posizionare il mio ilNodo (Var ilNodo As XmlNode), in un nodo ben preciso, devo per forza scomodare NodeList ?
Mi spiego meglio. Ho la seguente:
<?xml version="1.0" encoding="UTF-8"?><SimBaseType=“AceXML” version=“1,30”>
. . < Descr>AceXML Document< /Descr>
. . < FlightPlan>
. . . . < Title>Pisa< /Title>
. . . . < FPType>IFR< /FPType>
. . . . . ecc…
. . < /FlightPlan>
< /SimBaseType
Il nodo FlightPlan è un nodo unico, ma può trovarsi come primo Child, come secondo, … terzo, …
Fatto sta che è sempre unico.
DOMANDA
E’ possibile posizionare ilNodo direttamente su un preciso nodo evitando XMLNodeList, MA SEMPRE UTILIZZANDO UNA QUERY ? Esempio con una sorta del seguente codice:
Var ilNodo As XmlNode
ilNodo = xml.XQL("/SimBase/FlightPlan") '-> so che questo è un errore perché XQL restituisce un NodeList, ma..
…ma appunto chiedevo se vi fosse un modo per utilizzare la query e far posizionare ilNodo direttamente sulla posizione.
Grazie.